From a09f984cbe2369e13d8694e91c4f8165ec6c2ba9 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期三, 20 八月 2025 14:05:10 +0800 Subject: [PATCH] 动态溯源模块优化 --- src/components/mission/MissionManage.vue | 80 +++++++++++++++++++++++++++++++-------- 1 files changed, 63 insertions(+), 17 deletions(-) diff --git a/src/components/mission/MissionManage.vue b/src/components/mission/MissionManage.vue index 7e67122..9c1c51f 100644 --- a/src/components/mission/MissionManage.vue +++ b/src/components/mission/MissionManage.vue @@ -1,13 +1,13 @@ <template> - <el-button + <!-- <el-button type="primary" icon="Memo" class="el-button-custom p-events-auto" @click="dialogVisible = !dialogVisible" > 浠诲姟绠$悊 - </el-button> - <CardDialog v-model="dialogVisible" title="璧拌埅浠诲姟绠$悊"> + </el-button> --> + <CardDialog v-bind="$attrs" title="璧拌埅浠诲姟绠$悊"> <el-row class="mission-table"> <el-col :span="20"> <el-table @@ -17,7 +17,7 @@ :show-overflow-tooltip="true" border height="64vh" - row-class-name="t-row" + row-class-name="t-row-normal" cell-class-name="t-cell" header-row-class-name="t-header-row" header-cell-class-name="t-header-cell" @@ -34,41 +34,57 @@ label="寮�濮嬫椂闂�" align="center" :formatter="timeFormatter" + width="150" /> <el-table-column prop="endTime" label="缁撴潫鏃堕棿" align="center" :formatter="timeFormatter" + width="150" /> - <el-table-column label="绠$悊" width="140" align="center"> + <el-table-column label="绠$悊" width="160" align="center"> <template #default="{ row }"> + <!-- <MissionEdit mode="update"></MissionEdit> --> <el-button type="primary" size="small" + icon="EditPen" + class="el-button-custom" + @click="updateMission(row)" + ></el-button> + <el-button + type="primary" + size="small" + icon="Delete" class="el-button-custom" @click="deleteMission(row)" - >鍒犻櫎</el-button - > - <el-button + ></el-button> + <!-- <el-button :loading="row.downloadLoading" type="primary" size="small" + icon="Document" class="el-button-custom" @click="downloadReport(row)" - >鎶ュ憡</el-button - > + ></el-button> --> </template> </el-table-column> </el-table> </el-col> <el-col :span="4" class="flex-col"> - <div> - <!-- <el-button type="primary" class="el-button-custom"> + <!-- <div> --> + <!-- <el-button type="primary" class="el-button-custom"> 鏂板缓浠诲姟 </el-button> --> - <MissionCreate></MissionCreate> - </div> + <el-button + type="primary" + class="el-button-custom" + @click="createMission" + > + 鏂板缓浠诲姟 + </el-button> + <!-- </div> --> <!-- <div> <el-button type="primary" class="el-button-custom"> 鏁版嵁瀵煎叆 @@ -89,6 +105,12 @@ msg="纭鏄惁鍒犻櫎璇ヨ蛋鑸换鍔�" confirmText="鍒犻櫎" ></MessageBox> + <MissionEdit + v-model="dialogVisible" + width="30%" + :mode="editMode" + :mission="selectedMission" + ></MissionEdit> </template> <script> import moment from 'moment'; @@ -102,18 +124,37 @@ const { loading, fetchData } = useFetchData(); return { loading, fetchData }; }, - props: {}, + props: { + // modelValue: Boolean + }, + // emits: ['update:modelValue'], data() { return { dialogVisible: false, msgBoxVisible: false, - onConfirm: undefined + onConfirm: undefined, + // 浠诲姟缂栬緫妯″紡锛宑reate锛氬垱寤烘柊浠诲姟锛寀pdate锛氱紪杈戝凡鏈変换鍔� + editMode: 'create', + // 閫変腑鐨勫緟缂栬緫浠诲姟 + selectedMission: undefined }; }, computed: { ...mapStores(useMissionStore) }, methods: { + // handleChange(value) { + // this.$emit('update:modelValue', value); + // }, + createMission() { + this.editMode = 'create'; + this.dialogVisible = true; + }, + updateMission(row) { + this.editMode = 'update'; + this.selectedMission = row; + this.dialogVisible = true; + }, deleteMission(row) { this.onConfirm = () => { this.missionStore.deleteMission(row.missionCode); @@ -126,6 +167,7 @@ .downloadReport(row.missionCode) .finally(() => (row.downloadLoading = false)); }, + // eslint-disable-next-line no-unused-vars timeFormatter(row, col, cellValue, index) { return moment(cellValue).format('YYYY-MM-DD HH:mm:ss'); } @@ -153,6 +195,10 @@ } .mission-table { - height: 60vh; + /* height: 60vh; */ +} + +:deep(.t-row-normal) { + background-color: transparent !important; } </style> -- Gitblit v1.9.3