From 6339f41cfff5b9fdf33eb2f788658247430b5091 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期三, 19 十月 2022 17:19:52 +0800
Subject: [PATCH] 添加更新提醒

---
 src/views/project/index.vue |   76 ++++++++++++++++++++++++++++++-------
 1 files changed, 61 insertions(+), 15 deletions(-)

diff --git a/src/views/project/index.vue b/src/views/project/index.vue
index 6f7363d..c6b7321 100644
--- a/src/views/project/index.vue
+++ b/src/views/project/index.vue
@@ -74,7 +74,6 @@
       stripe
       :data="list"
       :element-loading-text="elementLoadingText"
-      :height="height"
       @selection-change="setSelectRows"
       @expand-change="expandChange"
     >
@@ -84,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>
@@ -100,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
@@ -110,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>
@@ -128,7 +143,8 @@
         prop="name"
         label="鍚嶇О"
         width="150"
-      ></el-table-column>
+      >
+      </el-table-column>
       <el-table-column
         show-overflow-tooltip
         prop="desc"
@@ -155,9 +171,15 @@
       <!-- <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'">{{
-            projectState[row.state]
-          }}</el-tag>
+          <el-badge
+            is-dot
+            :hidden="row.latestPkgShortSha1 == row.shortSha1"
+            style="margin-top: 6px"
+          >
+            <el-tag :type="row.state > 1 ? 'danger' : 'success'">{{
+              projectState[row.state]
+            }}</el-tag>
+          </el-badge>
         </template>
       </el-table-column>
       <el-table-column
@@ -185,7 +207,7 @@
     </el-table>
     <el-pagination
       :background="background"
-      :current-page="queryForm.pageNo"
+      :current-page="queryForm.pageIndex"
       :layout="layout"
       :page-size="queryForm.pageSize"
       :total="total"
@@ -198,7 +220,7 @@
 
 <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";
 
@@ -217,12 +239,18 @@
         arm64: "arm_64",
       },
       typeOptions: {
-        os: "OS鍩虹鍖�",
+        os: "AIOS",
         sys: "绯荤粺鍖�",
         app: "搴旂敤鍖�",
         algo: "绠楁硶鍖�",
       },
-      projectState: ["涓嬭浇涓�", "鍚屾瀹屾垚", "鍚屾澶辫触"],
+      projectState: [
+        "涓嬭浇涓�",
+        "鍚屾瀹屾垚",
+        "涓嬭浇澶辫触",
+        "浠g爜搴撻敊璇�",
+        "鍚屾澶辫触",
+      ],
       packageState: [
         "鎵撳寘瀹屾垚",
         "宸� 鎻� 浜�",
@@ -234,9 +262,10 @@
       total: 0,
       background: true,
       selectRows: "",
+      expandRow: "",
       elementLoadingText: "姝e湪鍔犺浇...",
       queryForm: {
-        pageNo: 1,
+        pageIndex: 1,
         pageSize: 20,
       },
     };
@@ -288,11 +317,11 @@
       this.fetchData();
     },
     handleCurrentChange(val) {
-      this.queryForm.pageNo = val;
+      this.queryForm.pageIndex = val;
       this.fetchData();
     },
     handleQuery() {
-      this.queryForm.pageNo = 1;
+      this.queryForm.pageIndex = 1;
       this.fetchData();
     },
     async fetchData() {
@@ -318,9 +347,12 @@
         return;
       }
 
-      const { data, total } = await getPkgList(row.id);
+      this.getPackageList(row.id);
+    },
+    async getPackageList(id) {
+      const { data, total } = await getPkgList(id);
       this.list.forEach((item, idx) => {
-        if (item.id === row.id) {
+        if (item.id === id) {
           this.list[idx].pkgList = data.reverse();
         }
       });
@@ -367,6 +399,20 @@
         }
       });
     },
+    handleDeletePkg(row) {
+      if (row.id) {
+        this.$baseConfirm("浣犵‘瀹氳鍒犻櫎褰撳墠椤瑰悧", null, async () => {
+          const { msg } = await deletePkg(row);
+          this.$baseMessage(msg, "success");
+          this.getPackageList(row.projectId);
+        });
+      }
+    },
   },
 };
 </script>
+<style>
+.el-table .expand-row {
+  background-color: oldlace;
+}
+</style>

--
Gitblit v1.8.0