From fec2ece4213cbf9ed43b0f969f9a05441f91aa22 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期四, 19 五月 2022 19:55:04 +0800 Subject: [PATCH] 添加package删除功能 --- src/views/project/index.vue | 113 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 84 insertions(+), 29 deletions(-) diff --git a/src/views/project/index.vue b/src/views/project/index.vue index b016eb0..a787dd6 100644 --- a/src/views/project/index.vue +++ b/src/views/project/index.vue @@ -23,10 +23,28 @@ size="mini" clearable="" > - <el-option key="os" label="鍩虹" value="os"></el-option> - <el-option key="sys" label="绯荤粺" value="sys"></el-option> - <el-option key="app" label="搴旂敤" value="app"></el-option> - <el-option key="algo" label="绠楁硶" value="algo"></el-option> + <el-option + v-for="(v, k) in typeOptions" + :key="k" + :label="v" + :value="k" + ></el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-select + v-model="queryForm.arch" + placeholder="鏋舵瀯" + class="handle-select mr10" + size="mini" + clearable="" + > + <el-option + v-for="(v, k) in archOptions" + :key="k" + :label="v" + :value="k" + ></el-option> </el-select> </el-form-item> <el-form-item> @@ -56,7 +74,6 @@ stripe :data="list" :element-loading-text="elementLoadingText" - :height="height" @selection-change="setSelectRows" @expand-change="expandChange" > @@ -66,7 +83,10 @@ :data="props.row.pkgList" :show-header="false" style="width: 100%" + row-class-name="expand-row" + :highlight-current-row="false" > + > <el-table-column prop="fileName"></el-table-column> <el-table-column prop="version" width="150"></el-table-column> <el-table-column prop="commit" width="150"></el-table-column> @@ -82,7 +102,7 @@ <el-table-column width="300"> <template #default="scope"> <el-button - v-show="props.row.type == 'os'" + v-show="props.row.type == 'os' || props.row.type == 'algo'" size="small" @click="handlePublish(scope.row)" >鍙戝竷</el-button @@ -92,9 +112,22 @@ > <el-button size="small" + type="warning" :disabled="scope.row.state === 0" @click="handleRebuild(scope.row)" >閲嶇疆</el-button + > + + <!-- 姝e湪鎵撳寘鐨勪换鍔′互鍙婅嚜鍔ㄦ墦鍖呯殑浠诲姟涓嶅厑璁稿垹闄� --> + <el-button + size="small" + type="danger" + :disabled=" + scope.row.createType == 0 || + (scope.row.state > 0 && scope.row.state < 3) + " + @click="handleDeletePkg(scope.row)" + >鍒犻櫎</el-button > </template> </el-table-column> @@ -102,38 +135,50 @@ </template> </el-table-column> <!-- <el-table-column show-overflow-tooltip type="selection" width="55"></el-table-column> --> - <el-table-column show-overflow-tooltip label="搴忓彿" width="95"> + <el-table-column show-overflow-tooltip label="搴忓彿" width="50"> <template #default="scope">{{ scope.$index + 1 }}</template> </el-table-column> <el-table-column show-overflow-tooltip prop="name" - label="椤圭洰鍚嶇О" + label="鍚嶇О" + width="150" + ></el-table-column> + <el-table-column + show-overflow-tooltip + prop="desc" + label="鎻忚堪" ></el-table-column> <el-table-column show-overflow-tooltip prop="srcUrl" - label="椤圭洰鍦板潃" + label="鍦板潃" + width="500" ></el-table-column> + <el-table-column show-overflow-tooltip prop="branch" label="鍒嗘敮"> + </el-table-column> <el-table-column show-overflow-tooltip prop="type" label="绫诲瀷"> <template #default="{ row }"> - <el-tag>{{ row.type | typeFilter }}</el-tag> + <el-tag>{{ typeOptions[row.type] }}</el-tag> </template> </el-table-column> <el-table-column show-overflow-tooltip prop="arch" label="鏋舵瀯"> + <template #default="{ row }"> + <el-tag>{{ archOptions[row.arch] }}</el-tag> + </template> </el-table-column> <!-- <el-table-column show-overflow-tooltip label="褰撳墠鐗堟湰" prop="latestVersion"></el-table-column> --> <el-table-column label="鐘舵��"> <template #default="{ row }"> <el-tag :type="row.state == 2 ? 'danger' : 'success'">{{ - row.state | stateFilter + projectState[row.state] }}</el-tag> </template> </el-table-column> <el-table-column label="鍒涘缓鏃堕棿" prop="createdAt" - width="200" + width="150" ></el-table-column> <el-table-column label="鎿嶄綔" width="180px"> <template #default="{ row }"> @@ -168,35 +213,31 @@ <script> import { getList, deletePrj, getPkgList, buildPkg } from "@/api/project"; -import { publish, download, rebuild } from "@/api/package"; +import { publish, download, rebuild, deletePkg } from "@/api/package"; import TableEdit from "./components/ProjectEdit.vue"; + export default { name: "ComprehensiveTable", components: { TableEdit, - }, - filters: { - stateFilter(state) { - const stateMap = ["涓嬭浇涓�", "鍚屾瀹屾垚", "鍚屾澶辫触"]; - - return stateMap[state]; - }, - typeFilter(type) { - const typeMap = { - os: "OS鍩虹鍖�", - sys: "绯荤粺鍖�", - app: "搴旂敤鍖�", - algo: "绠楁硶鍖�", - }; - return typeMap[type]; - }, }, data() { return { list: [], listLoading: true, layout: "total, sizes, prev, pager, next, jumper", + archOptions: { + amd64: "x86_64", + arm64: "arm_64", + }, + typeOptions: { + os: "AIOS", + sys: "绯荤粺鍖�", + app: "搴旂敤鍖�", + algo: "绠楁硶鍖�", + }, + projectState: ["涓嬭浇涓�", "鍚屾瀹屾垚", "鍚屾澶辫触"], packageState: [ "鎵撳寘瀹屾垚", "宸� 鎻� 浜�", @@ -341,6 +382,20 @@ } }); }, + handleDeletePkg(row) { + if (row.id) { + this.$baseConfirm("浣犵‘瀹氳鍒犻櫎褰撳墠椤瑰悧", null, async () => { + const { msg } = await deletePkg(row); + this.$baseMessage(msg, "success"); + this.fetchData(); + }); + } + }, }, }; </script> +<style> +.el-table .expand-row { + background-color: oldlace; +} +</style> -- Gitblit v1.8.0