@@ -192,3 +192,12 @@ export async function updateDatasetUse(data) { | |||||
}) | }) | ||||
return res | 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 | 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> | <template> | ||||
<div> | <div> | ||||
<div class="searchForm"> | <div class="searchForm"> | ||||
<searchForm | |||||
:search-form="searchForm" | |||||
:blur-name="'数据集名称 搜索'" | |||||
@searchData="getSearchData" | |||||
/> | |||||
<searchForm :search-form="searchForm" :blur-name="'数据集名称 搜索'" @searchData="getSearchData" /> | |||||
</div> | </div> | ||||
<el-button | |||||
type="primary" | |||||
size="medium" | |||||
class="create" | |||||
@click="create" | |||||
> | |||||
<el-button type="primary" size="medium" class="create" @click="create"> | |||||
创建 | 创建 | ||||
</el-button> | </el-button> | ||||
<div class="index"> | <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="数据集名称"> | <el-table-column label="数据集名称"> | ||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<span>{{ scope.row.name }}</span> | <span>{{ scope.row.name }}</span> | ||||
@@ -57,41 +43,21 @@ | |||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<el-button type="text" @click="getVersionList(scope.$index, scope.row)">版本列表</el-button> | <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 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> | <el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | ||||
</template> | </template> | ||||
</el-table-column> | </el-table-column> | ||||
</el-table> | </el-table> | ||||
</div> | </div> | ||||
<div class="block"> | <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> | </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> | </div> | ||||
</template> | </template> | ||||
@@ -99,6 +65,7 @@ | |||||
import versionList from "./components/versionList.vue" | import versionList from "./components/versionList.vue" | ||||
import newVersion from "./components/newVersion.vue" | import newVersion from "./components/newVersion.vue" | ||||
import preDatasetCreation from "./components/preDatasetCreation.vue"; | import preDatasetCreation from "./components/preDatasetCreation.vue"; | ||||
import dataSetEdite from "./components/dataSetEdite.vue"; | |||||
import searchForm from '@/components/search/index.vue' | import searchForm from '@/components/search/index.vue' | ||||
import { deleteDataset, getPresetDatasetList } from "@/api/dataManager" | import { deleteDataset, getPresetDatasetList } from "@/api/dataManager" | ||||
import { parseTime } from '@/utils/index' | import { parseTime } from '@/utils/index' | ||||
@@ -109,17 +76,19 @@ | |||||
versionList, | versionList, | ||||
newVersion, | newVersion, | ||||
preDatasetCreation, | preDatasetCreation, | ||||
searchForm | |||||
searchForm, | |||||
dataSetEdite | |||||
}, | }, | ||||
props: { | props: { | ||||
payload: { type: Array, default: () => [] }, | |||||
dataTabType: { type: Number, default: undefined } | |||||
payload: { type: Array, default: () => [] }, | |||||
dataTabType: { type: Number, default: undefined } | |||||
}, | }, | ||||
data() { | data() { | ||||
return { | return { | ||||
input: "", | input: "", | ||||
data: undefined, | data: undefined, | ||||
versionListVisible: false, | versionListVisible: false, | ||||
editeDataSet: false, | |||||
versionListType: 1, | versionListType: 1, | ||||
total: undefined, | total: undefined, | ||||
newVersionVisible: false, | newVersionVisible: false, | ||||
@@ -183,11 +152,6 @@ | |||||
this.data = row; | this.data = row; | ||||
this.newVersionVisible = true; | this.newVersionVisible = true; | ||||
}, | }, | ||||
confirm(val) { | |||||
this.preDatasetVisible = val | |||||
this.newVersionVisible = val | |||||
this.getDataList(this.searchData) | |||||
}, | |||||
confirmDelete(row) { | confirmDelete(row) { | ||||
this.$confirm('是否删除此数据集??', '提示', { | this.$confirm('是否删除此数据集??', '提示', { | ||||
confirmButtonText: '确定', | confirmButtonText: '确定', | ||||
@@ -210,24 +174,32 @@ | |||||
this.$message.success("删除成功"); | this.$message.success("删除成功"); | ||||
this.loading = false | this.loading = false | ||||
this.getDataList(this.searchData) | 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) { | 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) { | cancel(val) { | ||||
this.editeDataSet = val; | |||||
this.newVersionVisible = val; | this.newVersionVisible = val; | ||||
this.preDatasetVisible = 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) { | getVersionList(index, row) { | ||||
this.data = row; | this.data = row; | ||||
@@ -237,6 +209,10 @@ | |||||
// 时间戳转换日期 | // 时间戳转换日期 | ||||
parseTime(val) { | parseTime(val) { | ||||
return parseTime(val) | return parseTime(val) | ||||
}, | |||||
handleEdite(val) { | |||||
this.editeDataSet = true | |||||
this.data = val | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -246,10 +222,12 @@ | |||||
.create { | .create { | ||||
float: right; | float: right; | ||||
} | } | ||||
.block { | .block { | ||||
float: right; | float: right; | ||||
margin: 20px; | margin: 20px; | ||||
} | } | ||||
.searchForm { | .searchForm { | ||||
display: inline-block; | display: inline-block; | ||||
} | } |
@@ -1,20 +1,11 @@ | |||||
<template> | <template> | ||||
<div> | <div> | ||||
<div class="searchForm"> | <div class="searchForm"> | ||||
<searchForm | |||||
:search-form="searchForm" | |||||
:blur-name="'数据集名称 搜索'" | |||||
@searchData="getSearchData" | |||||
/> | |||||
<searchForm :search-form="searchForm" :blur-name="'数据集名称 搜索'" @searchData="getSearchData" /> | |||||
</div> | </div> | ||||
<div class="index"> | <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="数据集名称"> | <el-table-column label="数据集名称"> | ||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<span>{{ scope.row.name }}</span> | <span>{{ scope.row.name }}</span> | ||||
@@ -63,23 +54,12 @@ | |||||
</el-table> | </el-table> | ||||
</div> | </div> | ||||
<div class="block"> | <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> | </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> | </div> | ||||
</template> | </template> | ||||
@@ -96,8 +76,8 @@ | |||||
searchForm | searchForm | ||||
}, | }, | ||||
props: { | props: { | ||||
payload: { type: Array, default: () => [] }, | |||||
dataTabType: { type: Number, default: undefined } | |||||
payload: { type: Array, default: () => [] }, | |||||
dataTabType: { type: Number, default: undefined } | |||||
}, | }, | ||||
data() { | data() { | ||||
return { | return { | ||||
@@ -158,8 +138,8 @@ | |||||
this.getDataList(this.searchData) | this.getDataList(this.searchData) | ||||
}, | }, | ||||
close(val) { | close(val) { | ||||
this.editeDataSet = val; | |||||
this.versionListVisible = val; | this.versionListVisible = val; | ||||
this.getDataList(this.searchData) | |||||
}, | }, | ||||
getVersionList(index, row) { | getVersionList(index, row) { | ||||
this.row = row; | this.row = row; | ||||
@@ -169,7 +149,7 @@ | |||||
// 时间戳转换日期 | // 时间戳转换日期 | ||||
parseTime(val) { | parseTime(val) { | ||||
return parseTime(val) | return parseTime(val) | ||||
} | |||||
} | |||||
} | } | ||||
} | } | ||||
</script> | </script> | ||||
@@ -179,6 +159,7 @@ | |||||
float: right; | float: right; | ||||
margin: 20px; | margin: 20px; | ||||
} | } | ||||
.searchForm { | .searchForm { | ||||
display: inline-block; | 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> | <template> | ||||
<div> | <div> | ||||
<div class="searchForm"> | <div class="searchForm"> | ||||
<searchForm | |||||
:search-form="searchForm" | |||||
:blur-name="'算法名称/描述 搜索'" | |||||
@searchData="getSearchData" | |||||
/> | |||||
<searchForm :search-form="searchForm" :blur-name="'算法名称/描述 搜索'" @searchData="getSearchData" /> | |||||
</div> | </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="算法名称"> | <el-table-column label="算法名称"> | ||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<span>{{ scope.row.algorithmName }}</span> | <span>{{ scope.row.algorithmName }}</span> | ||||
@@ -56,201 +43,194 @@ | |||||
<el-button type="text" @click="getAlgorithmVersionList(scope.row)">版本列表</el-button> | <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" 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="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> | <el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | ||||
</template> | </template> | ||||
</el-table-column> | </el-table-column> | ||||
</el-table> | </el-table> | ||||
<div class="block"> | <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> | </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> | </div> | ||||
</template> | </template> | ||||
<script> | <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); | 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({ | 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> | </script> | ||||
<style lang="scss" scoped> | <style lang="scss" scoped> | ||||
.Wrapper { | .Wrapper { | ||||
margin: 15px!important; | |||||
margin: 15px !important; | |||||
} | } | ||||
.create { | .create { | ||||
float: right; | float: right; | ||||
} | } | ||||
.block { | .block { | ||||
float: right; | float: right; | ||||
margin: 20px; | margin: 20px; | ||||
} | } | ||||
.searchForm { | .searchForm { | ||||
display: inline-block; | display: inline-block; | ||||
} | } |
@@ -174,3 +174,12 @@ export async function datasetUse(params) { | |||||
}) | }) | ||||
return res | 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 | params: params | ||||
}) | }) | ||||
return res | 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> | <template> | ||||
<div> | <div> | ||||
<div class="searchForm"> | <div class="searchForm"> | ||||
<searchForm | |||||
:search-form="searchForm" | |||||
:blur-name="'数据集名称 搜索'" | |||||
@searchData="getSearchData" | |||||
/> | |||||
<searchForm :search-form="searchForm" :blur-name="'数据集名称 搜索'" @searchData="getSearchData" /> | |||||
</div> | </div> | ||||
<el-button type="primary" size="medium" class="create" @click="create"> | <el-button type="primary" size="medium" class="create" @click="create"> | ||||
创建 | 创建 | ||||
</el-button> | </el-button> | ||||
<div class="index"> | <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="数据集名称"> | <el-table-column label="数据集名称"> | ||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<span>{{ scope.row.name }}</span> | <span>{{ scope.row.name }}</span> | ||||
@@ -53,6 +44,7 @@ | |||||
<!-- <el-button type="text">预览</el-button> --> | <!-- <el-button type="text">预览</el-button> --> | ||||
<el-button type="text" @click="createNewVersion(scope.row)">创建新版本 | <el-button type="text" @click="createNewVersion(scope.row)">创建新版本 | ||||
</el-button> | </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 type="text" style="padding-right:10px" @click="getVersionList(scope.$index, scope.row)">版本列表 | ||||
</el-button> | </el-button> | ||||
<el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | <el-button slot="reference" type="text" @click="confirmDelete(scope.row)">删除</el-button> | ||||
@@ -61,34 +53,17 @@ | |||||
</el-table> | </el-table> | ||||
</div> | </div> | ||||
<div class="block"> | <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> | </div> | ||||
<myDatasetCreation v-if="myDatasetVisible" @confirm="confirm" @cancel="cancel" @close="close" /> | <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> | </div> | ||||
</template> | </template> | ||||
@@ -96,6 +71,7 @@ | |||||
import newVersionCreation from "./components/newVersionCreation.vue"; | import newVersionCreation from "./components/newVersionCreation.vue"; | ||||
import myDatasetCreation from "./components/myDatasetCreation.vue" | import myDatasetCreation from "./components/myDatasetCreation.vue" | ||||
import versionList from "./components/versionList.vue"; | import versionList from "./components/versionList.vue"; | ||||
import dataSetEdite from "./components/dataSetEdite.vue"; | |||||
import searchForm from '@/components/search/index.vue' | import searchForm from '@/components/search/index.vue' | ||||
import { deleteDataset, getMyDatasetList } from "@/api/datasetManager"; | import { deleteDataset, getMyDatasetList } from "@/api/datasetManager"; | ||||
import { parseTime } from '@/utils/index' | import { parseTime } from '@/utils/index' | ||||
@@ -106,10 +82,11 @@ | |||||
newVersionCreation, | newVersionCreation, | ||||
versionList, | versionList, | ||||
myDatasetCreation, | myDatasetCreation, | ||||
dataSetEdite, | |||||
searchForm | searchForm | ||||
}, | }, | ||||
props: { | props: { | ||||
dataType: { | |||||
dataType: { | |||||
type: Number, | type: Number, | ||||
default: undefined | default: undefined | ||||
}, | }, | ||||
@@ -124,6 +101,7 @@ | |||||
input: "", | input: "", | ||||
data: undefined, | data: undefined, | ||||
newVersionCreationVisible: false, | newVersionCreationVisible: false, | ||||
editeDataSet: false, | |||||
formLabelWidth: "120px", | formLabelWidth: "120px", | ||||
versionListVisible: false, | versionListVisible: false, | ||||
myDatasetVisible: false, | myDatasetVisible: false, | ||||
@@ -161,17 +139,17 @@ | |||||
}, | }, | ||||
getDataList(param) { | getDataList(param) { | ||||
this.typeChange = this.dataType | 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) { | getSearchData(val) { | ||||
this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | this.searchData = { pageIndex: 1, pageSize: this.searchData.pageSize } | ||||
@@ -195,17 +173,20 @@ | |||||
this.myDatasetVisible = true; | this.myDatasetVisible = true; | ||||
}, | }, | ||||
cancel(val) { | cancel(val) { | ||||
this.editeDataSet = val; | |||||
this.newVersionCreationVisible = val; | this.newVersionCreationVisible = val; | ||||
this.versionListVisible = val; | this.versionListVisible = val; | ||||
this.myDatasetVisible = val | this.myDatasetVisible = val | ||||
}, | }, | ||||
confirm(val) { | confirm(val) { | ||||
this.editeDataSet = val; | |||||
this.newVersionCreationVisible = val; | this.newVersionCreationVisible = val; | ||||
this.versionListVisible = val; | this.versionListVisible = val; | ||||
this.myDatasetVisible = val | this.myDatasetVisible = val | ||||
this.getDataList(this.searchData) | this.getDataList(this.searchData) | ||||
}, | }, | ||||
close(val) { | close(val) { | ||||
this.editeDataSet = val; | |||||
this.newVersionCreationVisible = val; | this.newVersionCreationVisible = val; | ||||
this.versionListVisible = val; | this.versionListVisible = val; | ||||
this.myDatasetVisible = val | this.myDatasetVisible = val | ||||
@@ -245,6 +226,10 @@ | |||||
// 时间戳转换日期 | // 时间戳转换日期 | ||||
parseTime(val) { | parseTime(val) { | ||||
return parseTime(val) | return parseTime(val) | ||||
}, | |||||
handleEdite(val) { | |||||
this.editeDataSet = true | |||||
this.data = val | |||||
} | } | ||||
} | } | ||||
}; | }; | ||||
@@ -259,6 +244,7 @@ | |||||
float: right; | float: right; | ||||
margin: 20px; | margin: 20px; | ||||
} | } | ||||
.searchForm { | .searchForm { | ||||
display: inline-block; | 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> | <template> | ||||
<div> | <div> | ||||
<div class="searchForm"> | <div class="searchForm"> | ||||
<searchForm | |||||
:search-form="searchForm" | |||||
:blur-name="'算法名称/描述 搜索'" | |||||
@searchData="getSearchData" | |||||
/> | |||||
<searchForm :search-form="searchForm" :blur-name="'算法名称/描述 搜索'" @searchData="getSearchData" /> | |||||
</div> | </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-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="算法名称"> | <el-table-column label="算法名称"> | ||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<span>{{ scope.row.algorithmName }}</span> | <span>{{ scope.row.algorithmName }}</span> | ||||
@@ -52,136 +38,113 @@ | |||||
<span>{{ parseTime(scope.row.createdAt) }}</span> | <span>{{ parseTime(scope.row.createdAt) }}</span> | ||||
</template> | </template> | ||||
</el-table-column> | </el-table-column> | ||||
<el-table-column label="操作"> | |||||
<el-table-column label="操作" width="350"> | |||||
<template slot-scope="scope"> | <template slot-scope="scope"> | ||||
<el-button type="text" @click="getAlgorithmVersionList(scope.row)">版本列表</el-button> | <el-button type="text" @click="getAlgorithmVersionList(scope.row)">版本列表</el-button> | ||||
<el-button type="text" @click="copyAlgorithm(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 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> | </template> | ||||
</el-table-column> | </el-table-column> | ||||
</el-table> | </el-table> | ||||
<div class="pagination"> | <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> | </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> | </div> | ||||
</template> | </template> | ||||
<script> | <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 => { | getMyAlgorithmList(param).then(response => { | ||||
if (response.success) { | if (response.success) { | ||||
this.algorithmList = response.data.algorithms; | 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({ | 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> | </script> | ||||
<style lang="scss" scoped> | <style lang="scss" scoped> | ||||
@@ -271,9 +241,11 @@ export default { | |||||
float: right; | float: right; | ||||
margin: 20px; | margin: 20px; | ||||
} | } | ||||
.create { | .create { | ||||
float: right; | float: right; | ||||
} | } | ||||
.searchForm { | .searchForm { | ||||
display: inline-block; | display: inline-block; | ||||
} | } |
@@ -109,13 +109,13 @@ service DatasetService { | |||||
}; | }; | ||||
} | } | ||||
// 修改我的数据集 | // 修改我的数据集 | ||||
rpc UpdatePreDataset (UpdateMyDatasetRequest) returns (UpdateMyDatasetReply) { | |||||
rpc UpdateMyDataset (UpdateMyDatasetRequest) returns (UpdateMyDatasetReply) { | |||||
option (google.api.http) = { | option (google.api.http) = { | ||||
put: "/v1/datasetmanage/mydataset/{datasetId}" | put: "/v1/datasetmanage/mydataset/{datasetId}" | ||||
}; | }; | ||||
} | } | ||||
// 修改我的数据集版本 | // 修改我的数据集版本 | ||||
rpc UpdatePreDatasetVersion (UpdateMyDatasetVersionRequest) returns (UpdateMyDatasetVersionReply) { | |||||
rpc UpdateMyDatasetVersion (UpdateMyDatasetVersionRequest) returns (UpdateMyDatasetVersionReply) { | |||||
option (google.api.http) = { | option (google.api.http) = { | ||||
put: "/v1/datasetmanage/mydataset/{datasetId}/version/{version}" | 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》