From 3c75ba788897a524771bfde12feddcc94aaf14c6 Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期二, 22 四月 2025 11:26:02 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiXinLaiRui/LunDuiYa --- 项目代码/WMS/WIDESEA_WMSClient/src/extension/taskinfo/extend/taskExecuteDetail.vue | 259 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 259 insertions(+), 0 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/taskinfo/extend/taskExecuteDetail.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/taskinfo/extend/taskExecuteDetail.vue" new file mode 100644 index 0000000..ced7068 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/taskinfo/extend/taskExecuteDetail.vue" @@ -0,0 +1,259 @@ +<template> + <div> + <vol-box + v-model="showDetialBox" + :lazy="true" + width="1200px" + :padding="15" + title="浠诲姟璇︽儏" + > + <el-row height="50"> + <el-col :span="24"> + <div class="grid-content right-text"> + <el-link type="primary" @click="switchView">鍒囨崲瑙嗗浘</el-link> + </div> + </el-col> + </el-row> + <div :style="{ height: height }"> + <div v-if="viewType == 1"> + <el-row height="50"> + <el-col :span="8"> + <div + class="grid-content content-text" + style="font-weight: bold; font-size: 18px" + > + <span>浠诲姟缂栧彿锛歿{ row.taskNum }}</span> + </div> + </el-col> + <el-col :span="8"> + <div + class="grid-content content-text" + style="font-weight: bold; font-size: 18px" + > + <span>鎵樼洏缂栧彿锛歿{ row.palletCode }}</span> + </div> + </el-col> + <el-col :span="8"> + <div + class="grid-content content-text" + style="font-weight: bold; font-size: 18px" + > + <span>浠诲姟鐘舵�侊細{{ row.taskState }}</span> + </div> + </el-col> + </el-row> + <div style="height: 100px; margin-top: 3%"> + <el-steps :active="active" align-center finish-status="success"> + <el-step + v-for="item in steps" + :key="item.title" + :title="item.title" + :description="item.description" + ></el-step> + </el-steps> + </div> + <el-row height="50" v-show="previousShow || nextShow"> + <el-col :span="8"> + <div v-show="previousShow" class="grid-content content-text"> + <el-button type="danger" @click="previous" + >鍥炴粴鍒颁笂涓�姝�</el-button + > + </div> + </el-col> + <el-col :span="8"> + <div v-show="recoveryShow" class="grid-content content-text"> + <el-button type="primary" @click="recovery">浠诲姟鎸傝捣鎭㈠</el-button> + </div> + </el-col> + <el-col :span="8"> + <div v-show="nextShow" class="grid-content content-text"> + <el-button type="warning" @click="next">璺宠浆鍒颁笅涓�姝�</el-button> + </div> + </el-col> + </el-row> + </div> + <div v-else> + <el-table + :data="tableData" + style="width: 100%" + :row-class-name="tableRowClassName" + > + <el-table-column type="index" width="50"> </el-table-column> + <el-table-column prop="taskNum" label="浠诲姟鍙�" width="90"> + </el-table-column> + <el-table-column prop="taskState" label="浠诲姟鐘舵��" width="90"> + </el-table-column> + <el-table-column prop="currentAddress" label="褰撳墠浣嶇疆" width="90"> + </el-table-column> + <el-table-column prop="nextAddress" label="涓嬩竴浣嶇疆" width="90"> + </el-table-column> + <el-table-column prop="isManual" label="鏄惁浜哄伐鎿嶄綔" width="120"> + </el-table-column> + <el-table-column prop="isNormal" label="鏄惁姝e父" width="90"> + </el-table-column> + <el-table-column prop="description" label="鎻忚堪"> </el-table-column> + <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" width="180"> + </el-table-column> + <el-table-column prop="remark" label="澶囨敞" width="180"> + </el-table-column> + </el-table> + </div> + </div> + </vol-box> + </div> +</template> + +<script> +import VolBox from "@/components/basic/VolBox.vue"; +export default { + components: { VolBox }, + data() { + return { + active: 0, + showDetialBox: false, + row: {}, + steps: [], + viewType: 1, + height: "200px", + tableData: [], + previousShow: false, + nextShow: false, + recoveryShow: true, + }; + }, + methods: { + open(row) { + this.row = row; + this.showDetialBox = true; + if (this.viewType == 1) { + this.getSteps(); + } else { + this.getDetailDatas(); + } + + this.$emit("parentCall", ($vue) => { + var previousButton = $vue.buttons.find((x) => x.value == "Previous"); + this.previousShow = previousButton != null; + + var nextButton = $vue.buttons.find((x) => x.value == "Next"); + this.nextShow = nextButton != null; + }); + }, + getSteps() { + this.http + .post( + "/api/TaskExecuteDetail/GetDetailInfo?taskNum=" + this.row.taskNum, + {}, + true + ) + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.steps = x.data.list; + this.active = x.data.active; + }); + }, + getDetailDatas() { + this.http + .post( + "/api/TaskExecuteDetail/GetDetailDatas?taskNum=" + this.row.taskNum, + {}, + true + ) + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.tableData = x.data; + }); + }, + previous() { + this.http + .post( + "/api/Task/RollbackTaskStatusToLast?taskNum=" + this.row.taskNum, + {}, + true + ) + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.$message.success("鎿嶄綔鎴愬姛"); + this.getSteps(); + }); + }, + recovery(){ + this.http + .post( + "/api/Task/TaskStatusRecovery?taskNum=" + this.row.taskNum, + {}, + true + ) + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.$message.success("鎿嶄綔鎴愬姛"); + this.getSteps(); + }); + }, + next() { + this.http + .post( + "/api/Task/UpdateTaskStatusToNext?taskNum=" + this.row.taskNum, + {}, + true + ) + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.$message.success("鎿嶄綔鎴愬姛"); + this.getSteps(); + }); + }, + switchView() { + this.viewType = this.viewType == 1 ? 2 : 1; + if (this.viewType == 2) { + this.height = "600px"; + this.getDetailDatas(); + } else { + this.height = "200px"; + } + }, + tableRowClassName({ row, rowIndex }) { + if (!row.isNormal) { + return "error-row"; + } else if (row.isManual) { + return "warning-row"; + } + return "success-row"; + }, + }, + created() {}, +}; +</script> + +<style scoped> +.el-col { + border-radius: 4px; +} +.grid-content { + border-radius: 4px; + min-height: 36px; +} +.content-text { + display: flex; + align-items: center; + justify-content: center; +} +.right-text { + display: flex; + align-items: center; + justify-content: flex-end; +} +</style> +<style> +.el-table .warning-row { + background: #fcf1e2; +} + +.el-table .success-row { + background: #f0f9eb; +} + +.el-table .error-row { + background: #fde2e2; +} +</style> \ No newline at end of file -- Gitblit v1.9.3