@@ -192,3 +192,12 @@ export async function updateDatasetUse(data) { | |||
}) | |||
return res | |||
} | |||
// 修改数据集 | |||
export async function editeDataSet(params) { | |||
const res = await request({ | |||
url: `/v1/datasetmanage/predataset/${params.datasetId}`, | |||
method: "put", | |||
params: { typeId: params.typeId, applyId: params.applyId, desc: params.desc } | |||
}) | |||
return res | |||
} |
@@ -208,3 +208,12 @@ export async function updateFrameType(data) { | |||
}) | |||
return res | |||
} | |||
// 修改我的算法 | |||
export async function editeAlgorithm(params) { | |||
const res = await request({ | |||
url: `/v1/algorithmmanage/prealgorithm/${params.algorithmId}`, | |||
method: "put", | |||
params: { applyId: params.applyId, frameworkId: params.frameworkId, algorithmDescript: params.algorithmDescript } | |||
}) | |||
return res | |||
} |
@@ -0,0 +1,117 @@ | |||
<template> | |||
<div> | |||
<el-dialog title="编辑" :visible.sync="dialogFormVisible" width="30%" :before-close="handleDialogClose" | |||
:close-on-click-modal="false"> | |||
<el-form :model="form"> | |||
<el-form-item label="数据类型:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.typeId" placeholder="请选择"> | |||
<el-option v-for="item in typeOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="标注类型:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.applyId" placeholder="请选择"> | |||
<el-option v-for="item in useOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="数据集描述:" :label-width="formLabelWidth"> | |||
<el-input v-model="form.desc" autocomplete="off" width="100px"></el-input> | |||
</el-form-item> | |||
</el-form> | |||
<div slot="footer" class="dialog-footer"> | |||
<el-button @click="cancel">取 消</el-button> | |||
<el-button type="primary" @click="submit">确 定</el-button> | |||
</div> | |||
</el-dialog> | |||
</div> | |||
</template> | |||
<script> | |||
import { editeDataSet, datasetType, datasetUse } from "@/api/dataManager.js" | |||
import { getErrorMsg } from '@/error/index' | |||
export default { | |||
name: "dataSetEdite", | |||
props: { | |||
data: { | |||
type: Object, | |||
default: {} | |||
} | |||
}, | |||
created() { | |||
this.form.datasetId = this.data.id | |||
this.form.typeId = this.data.typeId | |||
this.form.applyId = this.data.applyId | |||
this.form.desc = this.data.desc | |||
this.datasetType() | |||
this.datasetUse() | |||
}, | |||
data() { | |||
return { | |||
form: { datasetId: '', typeId: '', applyId: '', desc: '' }, | |||
dialogFormVisible: true, | |||
formLabelWidth: '120px', | |||
typeOptions: [], | |||
useOptions: [] | |||
}; | |||
}, | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
cancel() { | |||
this.$emit("cancel", false); | |||
}, | |||
handleDialogClose() { | |||
this.$emit('close', false) | |||
}, | |||
confirm(val) { | |||
this.$emit("confirm", val); | |||
}, | |||
// 获取数据集类型 | |||
datasetType() { | |||
datasetType({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.typeOptions = response.data.lables | |||
} else { | |||
// this.showUpload = false | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 获取数据集用途 | |||
datasetUse() { | |||
datasetUse({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.useOptions = response.data.lables | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
submit() { | |||
editeDataSet(this.form).then(response => { | |||
if (response.success) { | |||
this.$message({ | |||
message: '编辑成功', | |||
type: 'success' | |||
}); | |||
this.$emit('confirm', false) | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
} | |||
} | |||
}; | |||
</script> |
@@ -1,28 +1,14 @@ | |||
<template> | |||
<div> | |||
<div class="searchForm"> | |||
<searchForm | |||
:search-form="searchForm" | |||
:blur-name="'数据集名称 搜索'" | |||
@searchData="getSearchData" | |||
/> | |||
<searchForm :search-form="searchForm" :blur-name="'数据集名称 搜索'" @searchData="getSearchData" /> | |||
</div> | |||
<el-button | |||
type="primary" | |||
size="medium" | |||
class="create" | |||
@click="create" | |||
> | |||
<el-button type="primary" size="medium" class="create" @click="create"> | |||
创建 | |||
</el-button> | |||
<div class="index"> | |||
<el-table | |||
v-loading="loading" | |||
:data="datasetList" | |||
style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" | |||
:cell-style="{'text-align':'left'}" | |||
> | |||
<el-table v-loading="loading" :data="datasetList" style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" :cell-style="{'text-align':'left'}"> | |||
<el-table-column label="数据集名称"> | |||
<template slot-scope="scope"> | |||
<span>{{ scope.row.name }}</span> | |||
@@ -57,41 +43,21 @@ | |||
<template slot-scope="scope"> | |||
<el-button type="text" @click="getVersionList(scope.$index, scope.row)">版本列表</el-button> | |||
<el-button style="padding-right:10px" type="text" @click="createNewVersion(scope.row)">创建新版本</el-button> | |||
<el-button type="text" @click="handleEdite(scope.row)">编辑</el-button> | |||
<el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | |||
</template> | |||
</el-table-column> | |||
</el-table> | |||
</div> | |||
<div class="block"> | |||
<el-pagination | |||
:current-page="searchData.pageIndex" | |||
:page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" | |||
:total="total" | |||
layout="total, sizes, prev, pager, next, jumper" | |||
@size-change="handleSizeChange" | |||
@current-change="handleCurrentChange" | |||
/> | |||
<el-pagination :current-page="searchData.pageIndex" :page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" :total="total" layout="total, sizes, prev, pager, next, jumper" | |||
@size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |||
</div> | |||
<preDatasetCreation | |||
v-if="preDatasetVisible" | |||
@cancel="cancel" | |||
@close="close" | |||
@confirm="confirm" | |||
/> | |||
<versionList | |||
v-if="versionListVisible" | |||
:data="data" | |||
:version-list-type="versionListType" | |||
@close="close" | |||
/> | |||
<newVersion | |||
v-if="newVersionVisible" | |||
:row="data" | |||
@cancel="cancel" | |||
@confirm="confirm" | |||
@close="close" | |||
/> | |||
<preDatasetCreation v-if="preDatasetVisible" @cancel="cancel" @close="close" @confirm="confirm" /> | |||
<versionList v-if="versionListVisible" :data="data" :version-list-type="versionListType" @close="close" /> | |||
<newVersion v-if="newVersionVisible" :row="data" @cancel="cancel" @confirm="confirm" @close="close" /> | |||
<dataSetEdite v-if="editeDataSet" :data="data" @cancel="cancel" @confirm="confirm" @close="close" /> | |||
</div> | |||
</template> | |||
@@ -99,6 +65,7 @@ | |||
import versionList from "./components/versionList.vue" | |||
import newVersion from "./components/newVersion.vue" | |||
import preDatasetCreation from "./components/preDatasetCreation.vue"; | |||
import dataSetEdite from "./components/dataSetEdite.vue"; | |||
import searchForm from '@/components/search/index.vue' | |||
import { deleteDataset, getPresetDatasetList } from "@/api/dataManager" | |||
import { parseTime } from '@/utils/index' | |||
@@ -109,17 +76,19 @@ | |||
versionList, | |||
newVersion, | |||
preDatasetCreation, | |||
searchForm | |||
searchForm, | |||
dataSetEdite | |||
}, | |||
props: { | |||
payload: { type: Array, default: () => [] }, | |||
dataTabType: { type: Number, default: undefined } | |||
payload: { type: Array, default: () => [] }, | |||
dataTabType: { type: Number, default: undefined } | |||
}, | |||
data() { | |||
return { | |||
input: "", | |||
data: undefined, | |||
versionListVisible: false, | |||
editeDataSet: false, | |||
versionListType: 1, | |||
total: undefined, | |||
newVersionVisible: false, | |||
@@ -183,11 +152,6 @@ | |||
this.data = row; | |||
this.newVersionVisible = true; | |||
}, | |||
confirm(val) { | |||
this.preDatasetVisible = val | |||
this.newVersionVisible = val | |||
this.getDataList(this.searchData) | |||
}, | |||
confirmDelete(row) { | |||
this.$confirm('是否删除此数据集??', '提示', { | |||
confirmButtonText: '确定', | |||
@@ -210,24 +174,32 @@ | |||
this.$message.success("删除成功"); | |||
this.loading = false | |||
this.getDataList(this.searchData) | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
this.loading = false | |||
} | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
this.loading = false | |||
} | |||
}) | |||
}, | |||
close(val) { | |||
this.newVersionVisible = val; | |||
this.preDatasetVisible = val; | |||
this.versionListVisible = val; | |||
this.getDataList(this.searchData) | |||
this.editeDataSet = val; | |||
this.preDatasetVisible = val | |||
this.newVersionVisible = val | |||
this.versionListVisible = val | |||
}, | |||
cancel(val) { | |||
this.editeDataSet = val; | |||
this.newVersionVisible = val; | |||
this.preDatasetVisible = val; | |||
this.getDataList(this.searchData) | |||
}, | |||
confirm(val) { | |||
this.editeDataSet = val; | |||
this.preDatasetVisible = val | |||
this.newVersionVisible = val | |||
this.getDataList(this.searchData) | |||
}, | |||
getVersionList(index, row) { | |||
this.data = row; | |||
@@ -237,6 +209,10 @@ | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
}, | |||
handleEdite(val) { | |||
this.editeDataSet = true | |||
this.data = val | |||
} | |||
} | |||
} | |||
@@ -246,10 +222,12 @@ | |||
.create { | |||
float: right; | |||
} | |||
.block { | |||
float: right; | |||
margin: 20px; | |||
} | |||
.searchForm { | |||
display: inline-block; | |||
} |
@@ -1,20 +1,11 @@ | |||
<template> | |||
<div> | |||
<div class="searchForm"> | |||
<searchForm | |||
:search-form="searchForm" | |||
:blur-name="'数据集名称 搜索'" | |||
@searchData="getSearchData" | |||
/> | |||
<searchForm :search-form="searchForm" :blur-name="'数据集名称 搜索'" @searchData="getSearchData" /> | |||
</div> | |||
<div class="index"> | |||
<el-table | |||
v-loading="loading" | |||
:data="datasetList" | |||
style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" | |||
:cell-style="{'text-align':'left'}" | |||
> | |||
<el-table v-loading="loading" :data="datasetList" style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" :cell-style="{'text-align':'left'}"> | |||
<el-table-column label="数据集名称"> | |||
<template slot-scope="scope"> | |||
<span>{{ scope.row.name }}</span> | |||
@@ -63,23 +54,12 @@ | |||
</el-table> | |||
</div> | |||
<div class="block"> | |||
<el-pagination | |||
:current-page="searchData.pageIndex" | |||
:page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" | |||
:total="total" | |||
layout="total, sizes, prev, pager, next, jumper" | |||
@size-change="handleSizeChange" | |||
@current-change="handleCurrentChange" | |||
/> | |||
<el-pagination :current-page="searchData.pageIndex" :page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" :total="total" layout="total, sizes, prev, pager, next, jumper" | |||
@size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |||
</div> | |||
<versionList | |||
v-if="versionListVisible" | |||
:data="row" | |||
:version-list-type="versionListType" | |||
@close="close" | |||
/> | |||
<versionList v-if="versionListVisible" :data="row" :version-list-type="versionListType" @close="close" /> | |||
</div> | |||
</template> | |||
@@ -96,8 +76,8 @@ | |||
searchForm | |||
}, | |||
props: { | |||
payload: { type: Array, default: () => [] }, | |||
dataTabType: { type: Number, default: undefined } | |||
payload: { type: Array, default: () => [] }, | |||
dataTabType: { type: Number, default: undefined } | |||
}, | |||
data() { | |||
return { | |||
@@ -158,8 +138,8 @@ | |||
this.getDataList(this.searchData) | |||
}, | |||
close(val) { | |||
this.editeDataSet = val; | |||
this.versionListVisible = val; | |||
this.getDataList(this.searchData) | |||
}, | |||
getVersionList(index, row) { | |||
this.row = row; | |||
@@ -169,7 +149,7 @@ | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
} | |||
} | |||
} | |||
} | |||
</script> | |||
@@ -179,6 +159,7 @@ | |||
float: right; | |||
margin: 20px; | |||
} | |||
.searchForm { | |||
display: inline-block; | |||
} |
@@ -0,0 +1,117 @@ | |||
<template> | |||
<div> | |||
<el-dialog title="编辑" :visible.sync="dialogFormVisible" width="30%" :before-close="handleDialogClose" | |||
:close-on-click-modal="false"> | |||
<el-form :model="form"> | |||
<el-form-item label="模型类别:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.applyId" placeholder="请选择"> | |||
<el-option v-for="item in typeOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="框架类型:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.frameworkId" placeholder="请选择"> | |||
<el-option v-for="item in useOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="算法描述:" :label-width="formLabelWidth"> | |||
<el-input v-model="form.algorithmDescript" autocomplete="off"></el-input> | |||
</el-form-item> | |||
</el-form> | |||
<div slot="footer" class="dialog-footer"> | |||
<el-button @click="cancel">取 消</el-button> | |||
<el-button type="primary" @click="submit">确 定</el-button> | |||
</div> | |||
</el-dialog> | |||
</div> | |||
</template> | |||
<script> | |||
import { editeAlgorithm, algorithmType, frameType } from "@/api/modelDev"; | |||
import { getErrorMsg } from '@/error/index' | |||
export default { | |||
name: "dataSetEdite", | |||
props: { | |||
row: { | |||
type: Object, | |||
default: {} | |||
} | |||
}, | |||
created() { | |||
this.form.algorithmId = this.row.algorithmId | |||
this.form.applyId = this.row.applyId | |||
this.form.frameworkId = this.row.frameworkId | |||
this.form.desc = this.row.desc | |||
this.algorithmType() | |||
this.frameType() | |||
}, | |||
data() { | |||
return { | |||
form: { algorithmId: '', frameworkId: '', applyId: '', desc: '' }, | |||
dialogFormVisible: true, | |||
formLabelWidth: '120px', | |||
typeOptions: [], | |||
useOptions: [] | |||
}; | |||
}, | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
cancel() { | |||
this.$emit("cancel", false); | |||
}, | |||
handleDialogClose() { | |||
this.$emit('close', false) | |||
}, | |||
confirm(val) { | |||
this.$emit("confirm", val); | |||
}, | |||
// 获取算法类型 | |||
algorithmType() { | |||
algorithmType({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.typeOptions = response.data.lables | |||
} else { | |||
// this.showUpload = false | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 获取算法框架 | |||
frameType() { | |||
frameType({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.useOptions = response.data.lables | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
submit() { | |||
editeAlgorithm(this.form).then(response => { | |||
if (response.success) { | |||
this.$message({ | |||
message: '编辑成功', | |||
type: 'success' | |||
}); | |||
this.$emit('confirm', false) | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
} | |||
} | |||
}; | |||
</script> |
@@ -1,26 +1,13 @@ | |||
<template> | |||
<div> | |||
<div class="searchForm"> | |||
<searchForm | |||
:search-form="searchForm" | |||
:blur-name="'算法名称/描述 搜索'" | |||
@searchData="getSearchData" | |||
/> | |||
<searchForm :search-form="searchForm" :blur-name="'算法名称/描述 搜索'" @searchData="getSearchData" /> | |||
</div> | |||
<el-button | |||
type="primary" | |||
size="medium" | |||
class="create" | |||
@click="create" | |||
> | |||
创建 | |||
</el-button> | |||
<el-table | |||
:data="algorithmList" | |||
style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" | |||
:cell-style="{'text-align':'left'}" | |||
> | |||
<el-button type="primary" size="medium" class="create" @click="create"> | |||
创建 | |||
</el-button> | |||
<el-table :data="algorithmList" style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" :cell-style="{'text-align':'left'}"> | |||
<el-table-column label="算法名称"> | |||
<template slot-scope="scope"> | |||
<span>{{ scope.row.algorithmName }}</span> | |||
@@ -56,201 +43,194 @@ | |||
<el-button type="text" @click="getAlgorithmVersionList(scope.row)">版本列表</el-button> | |||
<el-button type="text" style="padding-right:10px" @click="createNewVersion(scope.row)">创建新版本</el-button> | |||
<!-- <el-button type="text" @click="editAlgorithm(scope.row)" v-if="algorithmTabType === 1 ? false : true">编辑</el-button> --> | |||
<el-button type="text" @click="handleEdite(scope.row)">编辑</el-button> | |||
<el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | |||
</template> | |||
</el-table-column> | |||
</el-table> | |||
<div class="block"> | |||
<el-pagination | |||
:current-page="searchData.pageIndex" | |||
:page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" | |||
:total="total" | |||
layout="total, sizes, prev, pager, next, jumper" | |||
@size-change="handleSizeChange" | |||
@current-change="handleCurrentChange" | |||
/> | |||
<el-pagination :current-page="searchData.pageIndex" :page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" :total="total" layout="total, sizes, prev, pager, next, jumper" | |||
@size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |||
</div> | |||
<versionList | |||
v-if="versionListVisible" | |||
:row="row" | |||
:algorithm-type="typeChange" | |||
@close="close" | |||
/> | |||
<preAlgorithmVersionCreation | |||
v-if="standardDialogVisible" | |||
:row="row" | |||
:dialog-type="dialogType" | |||
@close="close" | |||
@cancel="cancel" | |||
@confirm="confirm" | |||
/> | |||
<preAlgorithmCreation | |||
v-if="creationVisible" | |||
@cancel="cancel" | |||
@close="close" | |||
@confirm="confirm" | |||
/> | |||
<versionList v-if="versionListVisible" :row="row" :algorithm-type="typeChange" @close="close" /> | |||
<preAlgorithmVersionCreation v-if="standardDialogVisible" :row="row" :dialog-type="dialogType" @close="close" | |||
@cancel="cancel" @confirm="confirm" /> | |||
<preAlgorithmCreation v-if="creationVisible" @cancel="cancel" @close="close" @confirm="confirm" /> | |||
<algotithmEdite v-if="editeAlgorithm" :row="row" @cancel="cancel" @confirm="confirm" @close="close" /> | |||
</div> | |||
</template> | |||
<script> | |||
import { getPresetAlgorithmList, deletePreAlgorithm } from "@/api/modelDev" | |||
import versionList from "./versionList.vue" | |||
import preAlgorithmVersionCreation from "./preAlgorithmVersionCreation.vue" | |||
import preAlgorithmCreation from './preAlgorithmCreation.vue' | |||
import searchForm from '@/components/search/index.vue' | |||
import { parseTime } from '@/utils/index' | |||
import { getErrorMsg } from '@/error/index' | |||
export default { | |||
name: "TemplateList", | |||
components: { | |||
versionList, | |||
preAlgorithmVersionCreation, | |||
preAlgorithmCreation, | |||
searchForm | |||
}, | |||
props: { | |||
algorithmTabType: { type: Number, default: undefined } | |||
}, | |||
data() { | |||
return { | |||
row: {}, | |||
total: undefined, | |||
versionListVisible: false, | |||
standardDialogVisible: false, | |||
algorithmName: "", | |||
dialogType: false, | |||
creationVisible: false, | |||
typeChange: undefined, | |||
algorithmList: [], | |||
searchForm: [ | |||
{ type: 'Time', label: '创建时间', prop: 'time', placeholder: '请选择创建时间' } | |||
], | |||
searchData: { | |||
pageIndex: 1, | |||
pageSize: 10 | |||
} | |||
} | |||
}, | |||
created() { | |||
this.getAlgorithmList(this.searchData); | |||
}, | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
handleSizeChange(val) { | |||
this.searchData.pageSize = val | |||
this.getAlgorithmList(this.searchData) | |||
import { getPresetAlgorithmList, deletePreAlgorithm } from "@/api/modelDev" | |||
import versionList from "./versionList.vue" | |||
import preAlgorithmVersionCreation from "./preAlgorithmVersionCreation.vue" | |||
import preAlgorithmCreation from './preAlgorithmCreation.vue' | |||
import searchForm from '@/components/search/index.vue' | |||
import { parseTime } from '@/utils/index' | |||
import { getErrorMsg } from '@/error/index' | |||
import algotithmEdite from "./algotithmEdite.vue"; | |||
export default { | |||
name: "TemplateList", | |||
components: { | |||
versionList, | |||
preAlgorithmVersionCreation, | |||
preAlgorithmCreation, | |||
searchForm, | |||
algotithmEdite | |||
}, | |||
handleCurrentChange(val) { | |||
this.searchData.pageIndex = val | |||
this.getAlgorithmList(this.searchData) | |||
props: { | |||
algorithmTabType: { type: Number, default: undefined } | |||
}, | |||
getAlgorithmList(param) { | |||
this.typeChange = this.algorithmTabType | |||
getPresetAlgorithmList(param).then(response => { | |||
if (response.success) { | |||
this.algorithmList = response.data.algorithms; | |||
this.total = response.data.totalSize | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
data() { | |||
return { | |||
row: {}, | |||
total: undefined, | |||
versionListVisible: false, | |||
standardDialogVisible: false, | |||
algorithmName: "", | |||
dialogType: false, | |||
creationVisible: false, | |||
editeAlgorithm: false, | |||
typeChange: undefined, | |||
algorithmList: [], | |||
searchForm: [ | |||
{ type: 'Time', label: '创建时间', prop: 'time', placeholder: '请选择创建时间' } | |||
], | |||
searchData: { | |||
pageIndex: 1, | |||
pageSize: 10 | |||
} | |||
}) | |||
}, | |||
getSearchData(val) { | |||
this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | |||
this.searchData = Object.assign(val, this.searchData) | |||
if (this.searchData.time) { | |||
this.searchData.createdAtGte = this.searchData.time[0] / 1000 | |||
this.searchData.createdAtLt = this.searchData.time[1] / 1000 | |||
delete this.searchData.time | |||
} | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
getAlgorithmVersionList(row) { | |||
this.versionListVisible = true; | |||
this.row = row | |||
}, | |||
create() { | |||
this.creationVisible = true; | |||
}, | |||
close(val) { | |||
this.versionListVisible = val | |||
this.standardDialogVisible = val | |||
this.creationVisible = val | |||
created() { | |||
this.getAlgorithmList(this.searchData); | |||
}, | |||
createNewVersion(row) { | |||
this.row = row | |||
this.standardDialogVisible = true; | |||
}, | |||
editAlgorithm(row) { | |||
this.algorithmName = row.AlgorithmName | |||
this.standardDialogVisible = true; | |||
this.dialogType = true | |||
}, | |||
cancel(val) { | |||
this.standardDialogVisible = val | |||
this.creationVisible = val | |||
}, | |||
confirm(val) { | |||
this.standardDialogVisible = val | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData); | |||
}, | |||
confirmDelete(row) { | |||
this.$confirm('是否删除此算法?', '提示', { | |||
confirmButtonText: '确定', | |||
cancelButtonText: '取消', | |||
type: 'warning', | |||
center: true | |||
}).then(() => { | |||
this.handleDelete(row) | |||
}).catch(() => { | |||
this.$message({ | |||
type: 'info', | |||
message: '已取消' | |||
}); | |||
}); | |||
}, | |||
handleDelete(row) { | |||
deletePreAlgorithm(row.algorithmId).then(response => { | |||
if (response.success) { | |||
this.$message.success("删除成功"); | |||
this.getAlgorithmList(this.searchData); | |||
} else { | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
handleSizeChange(val) { | |||
this.searchData.pageSize = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
handleCurrentChange(val) { | |||
this.searchData.pageIndex = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
getAlgorithmList(param) { | |||
this.typeChange = this.algorithmTabType | |||
getPresetAlgorithmList(param).then(response => { | |||
if (response.success) { | |||
this.algorithmList = response.data.algorithms; | |||
this.total = response.data.totalSize | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
getSearchData(val) { | |||
this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | |||
this.searchData = Object.assign(val, this.searchData) | |||
if (this.searchData.time) { | |||
this.searchData.createdAtGte = this.searchData.time[0] / 1000 | |||
this.searchData.createdAtLt = this.searchData.time[1] / 1000 | |||
delete this.searchData.time | |||
} | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
getAlgorithmVersionList(row) { | |||
this.versionListVisible = true; | |||
this.row = row | |||
}, | |||
create() { | |||
this.creationVisible = true; | |||
}, | |||
close(val) { | |||
this.editeAlgorithm = val | |||
this.versionListVisible = val | |||
this.standardDialogVisible = val | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData); | |||
}, | |||
createNewVersion(row) { | |||
this.row = row | |||
this.standardDialogVisible = true; | |||
}, | |||
editAlgorithm(row) { | |||
this.algorithmName = row.AlgorithmName | |||
this.standardDialogVisible = true; | |||
this.dialogType = true | |||
}, | |||
cancel(val) { | |||
this.editeAlgorithm = val | |||
this.standardDialogVisible = val | |||
this.creationVisible = val | |||
}, | |||
confirm(val) { | |||
this.editeAlgorithm = val | |||
this.standardDialogVisible = val | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData); | |||
}, | |||
confirmDelete(row) { | |||
this.$confirm('是否删除此算法?', '提示', { | |||
confirmButtonText: '确定', | |||
cancelButtonText: '取消', | |||
type: 'warning', | |||
center: true | |||
}).then(() => { | |||
this.handleDelete(row) | |||
}).catch(() => { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
type: 'info', | |||
message: '已取消' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
}); | |||
}, | |||
handleDelete(row) { | |||
deletePreAlgorithm(row.algorithmId).then(response => { | |||
if (response.success) { | |||
this.$message.success("删除成功"); | |||
this.getAlgorithmList(this.searchData); | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
}, | |||
handleEdite(val) { | |||
this.editeAlgorithm = true | |||
this.row = val | |||
} | |||
} | |||
} | |||
} | |||
</script> | |||
<style lang="scss" scoped> | |||
.Wrapper { | |||
margin: 15px!important; | |||
margin: 15px !important; | |||
} | |||
.create { | |||
float: right; | |||
} | |||
.block { | |||
float: right; | |||
margin: 20px; | |||
} | |||
.searchForm { | |||
display: inline-block; | |||
} |
@@ -174,3 +174,12 @@ export async function datasetUse(params) { | |||
}) | |||
return res | |||
} | |||
// 修改数据集 | |||
export async function editeDataSet(params) { | |||
const res = await request({ | |||
url: `/v1/datasetmanage/mydataset/${params.datasetId}`, | |||
method: "put", | |||
params: { typeId: params.typeId, applyId: params.applyId, desc: params.desc } | |||
}) | |||
return res | |||
} |
@@ -241,4 +241,13 @@ export async function algorithmFrame(params) { | |||
params: params | |||
}) | |||
return res | |||
} | |||
// 修改我的算法 | |||
export async function editeAlgorithm(params) { | |||
const res = await request({ | |||
url: `/v1/algorithmmanage/myalgorithm/${params.algorithmId}`, | |||
method: "put", | |||
params: { applyId: params.applyId, frameworkId: params.frameworkId, algorithmDescript: params.algorithmDescript } | |||
}) | |||
return res | |||
} |
@@ -0,0 +1,117 @@ | |||
<template> | |||
<div> | |||
<el-dialog title="编辑" :visible.sync="dialogFormVisible" width="30%" :before-close="handleDialogClose" | |||
:close-on-click-modal="false"> | |||
<el-form :model="form"> | |||
<el-form-item label="数据类型:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.typeId" placeholder="请选择"> | |||
<el-option v-for="item in typeOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="标注类型:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.applyId" placeholder="请选择"> | |||
<el-option v-for="item in useOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="数据集描述:" :label-width="formLabelWidth"> | |||
<el-input v-model="form.desc" autocomplete="off" width="100px"></el-input> | |||
</el-form-item> | |||
</el-form> | |||
<div slot="footer" class="dialog-footer"> | |||
<el-button @click="cancel">取 消</el-button> | |||
<el-button type="primary" @click="submit">确 定</el-button> | |||
</div> | |||
</el-dialog> | |||
</div> | |||
</template> | |||
<script> | |||
import { editeDataSet, datasetType, datasetUse } from "@/api/datasetManager.js" | |||
import { getErrorMsg } from '@/error/index' | |||
export default { | |||
name: "dataSetEdite", | |||
props: { | |||
data: { | |||
type: Object, | |||
default: {} | |||
} | |||
}, | |||
created() { | |||
this.form.datasetId = this.data.id | |||
this.form.typeId = this.data.typeId | |||
this.form.applyId = this.data.applyId | |||
this.form.desc = this.data.desc | |||
this.datasetType() | |||
this.datasetUse() | |||
}, | |||
data() { | |||
return { | |||
form: { datasetId: '', typeId: '', applyId: '', desc: '' }, | |||
dialogFormVisible: true, | |||
formLabelWidth: '120px', | |||
typeOptions: [], | |||
useOptions: [] | |||
}; | |||
}, | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
cancel() { | |||
this.$emit("cancel", false); | |||
}, | |||
handleDialogClose() { | |||
this.$emit('close', false) | |||
}, | |||
confirm(val) { | |||
this.$emit("confirm", val); | |||
}, | |||
// 获取数据集类型 | |||
datasetType() { | |||
datasetType({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.typeOptions = response.data.lables | |||
} else { | |||
// this.showUpload = false | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 获取数据集用途 | |||
datasetUse() { | |||
datasetUse({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.useOptions = response.data.lables | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
submit() { | |||
editeDataSet(this.form).then(response => { | |||
if (response.success) { | |||
this.$message({ | |||
message: '编辑成功', | |||
type: 'success' | |||
}); | |||
this.$emit('confirm', false) | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
} | |||
} | |||
}; | |||
</script> |
@@ -1,23 +1,14 @@ | |||
<template> | |||
<div> | |||
<div class="searchForm"> | |||
<searchForm | |||
:search-form="searchForm" | |||
:blur-name="'数据集名称 搜索'" | |||
@searchData="getSearchData" | |||
/> | |||
<searchForm :search-form="searchForm" :blur-name="'数据集名称 搜索'" @searchData="getSearchData" /> | |||
</div> | |||
<el-button type="primary" size="medium" class="create" @click="create"> | |||
创建 | |||
</el-button> | |||
<div class="index"> | |||
<el-table | |||
v-loading="loading" | |||
:data="datasetList" | |||
style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" | |||
:cell-style="{'text-align':'left'}" | |||
> | |||
<el-table v-loading="loading" :data="datasetList" style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" :cell-style="{'text-align':'left'}"> | |||
<el-table-column label="数据集名称"> | |||
<template slot-scope="scope"> | |||
<span>{{ scope.row.name }}</span> | |||
@@ -53,6 +44,7 @@ | |||
<!-- <el-button type="text">预览</el-button> --> | |||
<el-button type="text" @click="createNewVersion(scope.row)">创建新版本 | |||
</el-button> | |||
<el-button type="text" @click="handleEdite(scope.row)">编辑</el-button> | |||
<el-button type="text" style="padding-right:10px" @click="getVersionList(scope.$index, scope.row)">版本列表 | |||
</el-button> | |||
<el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | |||
@@ -61,34 +53,17 @@ | |||
</el-table> | |||
</div> | |||
<div class="block"> | |||
<el-pagination | |||
:current-page="searchData.pageIndex" | |||
:page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" | |||
layout="total, sizes, prev, pager, next, jumper" | |||
:total="total" | |||
@size-change="handleSizeChange" | |||
@current-change="handleCurrentChange" | |||
/> | |||
<el-pagination :current-page="searchData.pageIndex" :page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total" | |||
@size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |||
</div> | |||
<myDatasetCreation v-if="myDatasetVisible" @confirm="confirm" @cancel="cancel" @close="close" /> | |||
<newVersionCreation | |||
v-if="newVersionCreationVisible" | |||
:row="data" | |||
@cancel="cancel" | |||
@confirm="confirm" | |||
@close="close" | |||
/> | |||
<versionList | |||
v-if="versionListVisible" | |||
:data="data" | |||
:type-change="typeChange" | |||
@cancel="cancel" | |||
@confirm="confirm" | |||
@close="close" | |||
/> | |||
<newVersionCreation v-if="newVersionCreationVisible" :row="data" @cancel="cancel" @confirm="confirm" | |||
@close="close" /> | |||
<versionList v-if="versionListVisible" :data="data" :type-change="typeChange" @cancel="cancel" @confirm="confirm" | |||
@close="close" /> | |||
<dataSetEdite v-if="editeDataSet" :data="data" @cancel="cancel" @confirm="confirm" @close="close" /> | |||
</div> | |||
</template> | |||
@@ -96,6 +71,7 @@ | |||
import newVersionCreation from "./components/newVersionCreation.vue"; | |||
import myDatasetCreation from "./components/myDatasetCreation.vue" | |||
import versionList from "./components/versionList.vue"; | |||
import dataSetEdite from "./components/dataSetEdite.vue"; | |||
import searchForm from '@/components/search/index.vue' | |||
import { deleteDataset, getMyDatasetList } from "@/api/datasetManager"; | |||
import { parseTime } from '@/utils/index' | |||
@@ -106,10 +82,11 @@ | |||
newVersionCreation, | |||
versionList, | |||
myDatasetCreation, | |||
dataSetEdite, | |||
searchForm | |||
}, | |||
props: { | |||
dataType: { | |||
dataType: { | |||
type: Number, | |||
default: undefined | |||
}, | |||
@@ -124,6 +101,7 @@ | |||
input: "", | |||
data: undefined, | |||
newVersionCreationVisible: false, | |||
editeDataSet: false, | |||
formLabelWidth: "120px", | |||
versionListVisible: false, | |||
myDatasetVisible: false, | |||
@@ -161,17 +139,17 @@ | |||
}, | |||
getDataList(param) { | |||
this.typeChange = this.dataType | |||
getMyDatasetList(param).then(response => { | |||
if (response.success) { | |||
this.datasetList = response.data.datasets; | |||
this.total = response.data.totalSize | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
getMyDatasetList(param).then(response => { | |||
if (response.success) { | |||
this.datasetList = response.data.datasets; | |||
this.total = response.data.totalSize | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
getSearchData(val) { | |||
this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | |||
@@ -195,17 +173,20 @@ | |||
this.myDatasetVisible = true; | |||
}, | |||
cancel(val) { | |||
this.editeDataSet = val; | |||
this.newVersionCreationVisible = val; | |||
this.versionListVisible = val; | |||
this.myDatasetVisible = val | |||
}, | |||
confirm(val) { | |||
this.editeDataSet = val; | |||
this.newVersionCreationVisible = val; | |||
this.versionListVisible = val; | |||
this.myDatasetVisible = val | |||
this.getDataList(this.searchData) | |||
}, | |||
close(val) { | |||
this.editeDataSet = val; | |||
this.newVersionCreationVisible = val; | |||
this.versionListVisible = val; | |||
this.myDatasetVisible = val | |||
@@ -245,6 +226,10 @@ | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
}, | |||
handleEdite(val) { | |||
this.editeDataSet = true | |||
this.data = val | |||
} | |||
} | |||
}; | |||
@@ -259,6 +244,7 @@ | |||
float: right; | |||
margin: 20px; | |||
} | |||
.searchForm { | |||
display: inline-block; | |||
} |
@@ -0,0 +1,117 @@ | |||
<template> | |||
<div> | |||
<el-dialog title="编辑" :visible.sync="dialogFormVisible" width="30%" :before-close="handleDialogClose" | |||
:close-on-click-modal="false"> | |||
<el-form :model="form"> | |||
<el-form-item label="模型类别:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.applyId" placeholder="请选择"> | |||
<el-option v-for="item in typeOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="框架类型:" :label-width="formLabelWidth"> | |||
<el-select v-model="form.frameworkId" placeholder="请选择"> | |||
<el-option v-for="item in useOptions" :key="item.id" :label="item.lableDesc" :value="item.id"> | |||
</el-option> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item label="算法描述:" :label-width="formLabelWidth"> | |||
<el-input v-model="form.algorithmDescript" autocomplete="off"></el-input> | |||
</el-form-item> | |||
</el-form> | |||
<div slot="footer" class="dialog-footer"> | |||
<el-button @click="cancel">取 消</el-button> | |||
<el-button type="primary" @click="submit">确 定</el-button> | |||
</div> | |||
</el-dialog> | |||
</div> | |||
</template> | |||
<script> | |||
import { editeAlgorithm, algorithmType, algorithmFrame } from "@/api/modelDev"; | |||
import { getErrorMsg } from '@/error/index' | |||
export default { | |||
name: "dataSetEdite", | |||
props: { | |||
row: { | |||
type: Object, | |||
default: {} | |||
} | |||
}, | |||
created() { | |||
this.form.algorithmId = this.row.algorithmId | |||
this.form.applyId = this.row.applyId | |||
this.form.frameworkId = this.row.frameworkId | |||
this.form.desc = this.row.desc | |||
this.algorithmType() | |||
this.algorithmFrame() | |||
}, | |||
data() { | |||
return { | |||
form: { algorithmId: '', frameworkId: '', applyId: '', desc: '' }, | |||
dialogFormVisible: true, | |||
formLabelWidth: '120px', | |||
typeOptions: [], | |||
useOptions: [] | |||
}; | |||
}, | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
cancel() { | |||
this.$emit("cancel", false); | |||
}, | |||
handleDialogClose() { | |||
this.$emit('close', false) | |||
}, | |||
confirm(val) { | |||
this.$emit("confirm", val); | |||
}, | |||
// 获取算法类型 | |||
algorithmType() { | |||
algorithmType({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.typeOptions = response.data.lables | |||
} else { | |||
// this.showUpload = false | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 获取算法框架 | |||
algorithmFrame() { | |||
algorithmFrame({ pageIndex: 1, pageSize: 20 }).then(response => { | |||
if (response.success) { | |||
this.useOptions = response.data.lables | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
submit() { | |||
editeAlgorithm(this.form).then(response => { | |||
if (response.success) { | |||
this.$message({ | |||
message: '编辑成功', | |||
type: 'success' | |||
}); | |||
this.$emit('confirm', false) | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
} | |||
} | |||
}; | |||
</script> |
@@ -1,27 +1,13 @@ | |||
<template> | |||
<div> | |||
<div class="searchForm"> | |||
<searchForm | |||
:search-form="searchForm" | |||
:blur-name="'算法名称/描述 搜索'" | |||
@searchData="getSearchData" | |||
/> | |||
<searchForm :search-form="searchForm" :blur-name="'算法名称/描述 搜索'" @searchData="getSearchData" /> | |||
</div> | |||
<el-button | |||
v-if="algorithmTabType === 1 ? true : false" | |||
type="primary" | |||
size="medium" | |||
class="create" | |||
@click="create" | |||
> | |||
<el-button v-if="algorithmTabType === 1 ? true : false" type="primary" size="medium" class="create" @click="create"> | |||
创建 | |||
</el-button> | |||
<el-table | |||
:data="algorithmList" | |||
style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" | |||
:cell-style="{'text-align':'left'}" | |||
> | |||
<el-table :data="algorithmList" style="width: 100%;font-size: 15px;" | |||
:header-cell-style="{'text-align':'left','color':'black'}" :cell-style="{'text-align':'left'}"> | |||
<el-table-column label="算法名称"> | |||
<template slot-scope="scope"> | |||
<span>{{ scope.row.algorithmName }}</span> | |||
@@ -52,136 +38,113 @@ | |||
<span>{{ parseTime(scope.row.createdAt) }}</span> | |||
</template> | |||
</el-table-column> | |||
<el-table-column label="操作"> | |||
<el-table-column label="操作" width="350"> | |||
<template slot-scope="scope"> | |||
<el-button type="text" @click="getAlgorithmVersionList(scope.row)">版本列表</el-button> | |||
<el-button type="text" @click="copyAlgorithm(scope.row)">复制算法</el-button> | |||
<el-button type="text" style="padding-right:10px" @click="createNewVersion(scope.row)">创建新版本</el-button> | |||
<el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | |||
<el-button type="text" @click="handleEdite(scope.row)">编辑</el-button> | |||
<el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | |||
</template> | |||
</el-table-column> | |||
</el-table> | |||
<div class="pagination"> | |||
<el-pagination | |||
:current-page="searchData.pageIndex" | |||
:page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" | |||
layout="total, sizes, prev, pager, next, jumper" | |||
:total="total" | |||
@size-change="handleSizeChange" | |||
@current-change="handleCurrentChange" | |||
/> | |||
<el-pagination :current-page="searchData.pageIndex" :page-sizes="[10, 20, 50, 80]" | |||
:page-size="searchData.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total" | |||
@size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |||
</div> | |||
<myAlgorithmCreation | |||
v-if="creationVisible" | |||
@cancel="cancel" | |||
@close="close" | |||
@confirm="confirm" | |||
/> | |||
<newVersionCreation | |||
v-if="newVersionVisible" | |||
:row="row" | |||
@close="close" | |||
@cancel="cancel" | |||
@confirm="confirm" | |||
/> | |||
<algorithmCopy | |||
v-if="algorithmCopyVisible" | |||
:row="row" | |||
:algorithm-tab-type="typeChange" | |||
@close="close" | |||
@cancel="cancel" | |||
@confirm="confirm" | |||
/> | |||
<versionList | |||
v-if="versionListVisible" | |||
:algorithm-tab-type="typeChange" | |||
:data="row" | |||
@close="close" | |||
/> | |||
<myAlgorithmCreation v-if="creationVisible" @cancel="cancel" @close="close" @confirm="confirm" /> | |||
<newVersionCreation v-if="newVersionVisible" :row="row" @close="close" @cancel="cancel" @confirm="confirm" /> | |||
<algorithmCopy v-if="algorithmCopyVisible" :row="row" :algorithm-tab-type="typeChange" @close="close" | |||
@cancel="cancel" @confirm="confirm" /> | |||
<versionList v-if="versionListVisible" :algorithm-tab-type="typeChange" :data="row" @close="close" /> | |||
<algotithmEdite v-if="editeAlgorithm" :row="row" @cancel="cancel" @confirm="confirm" @close="close" /> | |||
</div> | |||
</template> | |||
<script> | |||
import newVersionCreation from "./newVersionCreation.vue"; | |||
import algorithmCopy from "./algorithmCopy.vue"; | |||
import versionList from "./versionList.vue"; | |||
import myAlgorithmCreation from "./myAlgorithmCreation.vue" | |||
import searchForm from '@/components/search/index.vue' | |||
import { getMyAlgorithmList, deleteMyAlgorithm } from "@/api/modelDev" | |||
import { parseTime } from '@/utils/index' | |||
import { getErrorMsg } from '@/error/index' | |||
export default { | |||
name: "MyList", | |||
components: { | |||
newVersionCreation, | |||
algorithmCopy, | |||
versionList, | |||
myAlgorithmCreation, | |||
searchForm | |||
}, | |||
props: { | |||
algorithmTabType: { | |||
type: Number, | |||
default: undefined | |||
import newVersionCreation from "./newVersionCreation.vue"; | |||
import algorithmCopy from "./algorithmCopy.vue"; | |||
import versionList from "./versionList.vue"; | |||
import myAlgorithmCreation from "./myAlgorithmCreation.vue" | |||
import searchForm from '@/components/search/index.vue' | |||
import { getMyAlgorithmList, deleteMyAlgorithm } from "@/api/modelDev" | |||
import { parseTime } from '@/utils/index' | |||
import { getErrorMsg } from '@/error/index' | |||
import algotithmEdite from "./algotithmEdite.vue"; | |||
export default { | |||
name: "MyList", | |||
components: { | |||
newVersionCreation, | |||
algorithmCopy, | |||
versionList, | |||
myAlgorithmCreation, | |||
searchForm, | |||
algotithmEdite | |||
}, | |||
algorithm: { | |||
type: Boolean, | |||
default: false | |||
} | |||
}, | |||
data() { | |||
return { | |||
row: {}, | |||
newVersionVisible: false, | |||
algorithmCopyVisible: false, | |||
versionListVisible: false, | |||
creationVisible: false, | |||
newVersionName: "", | |||
total: undefined, | |||
typeChange: undefined, | |||
algorithmList: [], | |||
searchForm: [ | |||
{ type: 'Time', label: '创建时间', prop: 'time', placeholder: '请选择创建时间' }, | |||
{ type: 'Input', label: '算法名称', prop: 'nameLike', placeholder: '请输入算法名称' } | |||
], | |||
searchData: { | |||
pageIndex: 1, | |||
pageSize: 10 | |||
props: { | |||
algorithmTabType: { | |||
type: Number, | |||
default: undefined | |||
}, | |||
algorithm: { | |||
type: Boolean, | |||
default: false | |||
} | |||
} | |||
}, | |||
created() { | |||
this.getAlgorithmList(this.searchData); | |||
if (this.algorithm) { | |||
this.creationVisible = true | |||
} | |||
}, | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
getSearchData(val) { | |||
this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | |||
this.searchData = Object.assign(val, this.searchData) | |||
if (this.searchData.time) { | |||
this.searchData.createdAtGte = this.searchData.time[0] / 1000 | |||
this.searchData.createdAtLt = this.searchData.time[1] / 1000 | |||
delete this.searchData.time | |||
data() { | |||
return { | |||
row: {}, | |||
newVersionVisible: false, | |||
algorithmCopyVisible: false, | |||
versionListVisible: false, | |||
creationVisible: false, | |||
editeAlgorithm: false, | |||
newVersionName: "", | |||
total: undefined, | |||
typeChange: undefined, | |||
algorithmList: [], | |||
searchForm: [ | |||
{ type: 'Time', label: '创建时间', prop: 'time', placeholder: '请选择创建时间' }, | |||
{ type: 'Input', label: '算法名称', prop: 'nameLike', placeholder: '请输入算法名称' } | |||
], | |||
searchData: { | |||
pageIndex: 1, | |||
pageSize: 10 | |||
} | |||
} | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
handleSizeChange(val) { | |||
this.searchData.pageSize = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
handleCurrentChange(val) { | |||
this.searchData.pageIndex = val | |||
this.getAlgorithmList(this.searchData) | |||
created() { | |||
this.getAlgorithmList(this.searchData); | |||
if (this.algorithm) { | |||
this.creationVisible = true | |||
} | |||
}, | |||
getAlgorithmList(param) { | |||
this.typeChange = this.algorithmTabType | |||
methods: { | |||
getErrorMsg(code) { | |||
return getErrorMsg(code) | |||
}, | |||
getSearchData(val) { | |||
this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | |||
this.searchData = Object.assign(val, this.searchData) | |||
if (this.searchData.time) { | |||
this.searchData.createdAtGte = this.searchData.time[0] / 1000 | |||
this.searchData.createdAtLt = this.searchData.time[1] / 1000 | |||
delete this.searchData.time | |||
} | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
handleSizeChange(val) { | |||
this.searchData.pageSize = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
handleCurrentChange(val) { | |||
this.searchData.pageIndex = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
getAlgorithmList(param) { | |||
this.typeChange = this.algorithmTabType | |||
getMyAlgorithmList(param).then(response => { | |||
if (response.success) { | |||
this.algorithmList = response.data.algorithms; | |||
@@ -193,77 +156,84 @@ export default { | |||
}); | |||
} | |||
}) | |||
}, | |||
getAlgorithmVersionList(row) { | |||
this.versionListVisible = true; | |||
this.typeChange = this.algorithmTabType | |||
this.row = row | |||
}, | |||
createNewVersion(row) { | |||
this.newVersionName = row.algorithmName | |||
this.newVersionVisible = true; | |||
this.row = row | |||
}, | |||
create() { | |||
this.creationVisible = true; | |||
}, | |||
close(val) { | |||
this.newVersionVisible = val; | |||
this.algorithmCopyVisible = val; | |||
this.versionListVisible = val; | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
cancel(val) { | |||
this.newVersionVisible = val; | |||
this.algorithmCopyVisible = val; | |||
this.creationVisible = val; | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
copyAlgorithm(row) { | |||
this.algorithmCopyVisible = true; | |||
this.row = row | |||
}, | |||
confirm(val) { | |||
this.algorithmCopyVisible = val | |||
this.newVersionVisible = val | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
confirmDelete(row) { | |||
this.$confirm('此操作将永久删除此算法(如该算法已分享,则分享算法也将被删除),是否继续', '提示', { | |||
confirmButtonText: '确定', | |||
cancelButtonText: '取消', | |||
type: 'warning', | |||
center: true | |||
}).then(() => { | |||
this.handleDelete(row) | |||
}).catch(() => { | |||
this.$message({ | |||
type: 'info', | |||
message: '已取消' | |||
}); | |||
}); | |||
}, | |||
handleDelete(row) { | |||
deleteMyAlgorithm(row.algorithmId).then(response => { | |||
if (response.success) { | |||
this.$message.success("删除成功"); | |||
this.getAlgorithmList(this.searchData) | |||
} else { | |||
}, | |||
getAlgorithmVersionList(row) { | |||
this.versionListVisible = true; | |||
this.typeChange = this.algorithmTabType | |||
this.row = row | |||
}, | |||
createNewVersion(row) { | |||
this.newVersionName = row.algorithmName | |||
this.newVersionVisible = true; | |||
this.row = row | |||
}, | |||
create() { | |||
this.creationVisible = true; | |||
}, | |||
close(val) { | |||
this.editeAlgorithm = val | |||
this.newVersionVisible = val; | |||
this.algorithmCopyVisible = val; | |||
this.versionListVisible = val; | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
cancel(val) { | |||
this.editeAlgorithm = val | |||
this.newVersionVisible = val; | |||
this.algorithmCopyVisible = val; | |||
this.creationVisible = val; | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
copyAlgorithm(row) { | |||
this.algorithmCopyVisible = true; | |||
this.row = row | |||
}, | |||
confirm(val) { | |||
this.editeAlgorithm = val | |||
this.algorithmCopyVisible = val | |||
this.newVersionVisible = val | |||
this.creationVisible = val | |||
this.getAlgorithmList(this.searchData) | |||
}, | |||
confirmDelete(row) { | |||
this.$confirm('此操作将永久删除此算法(如该算法已分享,则分享算法也将被删除),是否继续', '提示', { | |||
confirmButtonText: '确定', | |||
cancelButtonText: '取消', | |||
type: 'warning', | |||
center: true | |||
}).then(() => { | |||
this.handleDelete(row) | |||
}).catch(() => { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
type: 'info', | |||
message: '已取消' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
}); | |||
}, | |||
handleDelete(row) { | |||
deleteMyAlgorithm(row.algorithmId).then(response => { | |||
if (response.success) { | |||
this.$message.success("删除成功"); | |||
this.getAlgorithmList(this.searchData) | |||
} else { | |||
this.$message({ | |||
message: this.getErrorMsg(response.error.subcode), | |||
type: 'warning' | |||
}); | |||
} | |||
}) | |||
}, | |||
// 时间戳转换日期 | |||
parseTime(val) { | |||
return parseTime(val) | |||
}, | |||
handleEdite(val) { | |||
this.editeAlgorithm = true | |||
this.row = val | |||
} | |||
} | |||
} | |||
} | |||
</script> | |||
<style lang="scss" scoped> | |||
@@ -271,9 +241,11 @@ export default { | |||
float: right; | |||
margin: 20px; | |||
} | |||
.create { | |||
float: right; | |||
} | |||
.searchForm { | |||
display: inline-block; | |||
} |
@@ -109,13 +109,13 @@ service DatasetService { | |||
}; | |||
} | |||
// 修改我的数据集 | |||
rpc UpdatePreDataset (UpdateMyDatasetRequest) returns (UpdateMyDatasetReply) { | |||
rpc UpdateMyDataset (UpdateMyDatasetRequest) returns (UpdateMyDatasetReply) { | |||
option (google.api.http) = { | |||
put: "/v1/datasetmanage/mydataset/{datasetId}" | |||
}; | |||
} | |||
// 修改我的数据集版本 | |||
rpc UpdatePreDatasetVersion (UpdateMyDatasetVersionRequest) returns (UpdateMyDatasetVersionReply) { | |||
rpc UpdateMyDatasetVersion (UpdateMyDatasetVersionRequest) returns (UpdateMyDatasetVersionReply) { | |||
option (google.api.http) = { | |||
put: "/v1/datasetmanage/mydataset/{datasetId}/version/{version}" | |||
}; | |||
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》