From e0a31f7013898540948f4d4d86ade1a5414b44d4 Mon Sep 17 00:00:00 2001 From: pengwei <2071057782@qq.com> Date: 星期四, 20 三月 2025 17:32:42 +0800 Subject: [PATCH] 优化数据大屏页面 --- 项目代码/client/src/views/tts/CraftCenter/Craftcenter.vue | 733 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 623 insertions(+), 110 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/client/src/views/tts/CraftCenter/Craftcenter.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/client/src/views/tts/CraftCenter/Craftcenter.vue" index d1bb6f1..ad852c4 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/client/src/views/tts/CraftCenter/Craftcenter.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/client/src/views/tts/CraftCenter/Craftcenter.vue" @@ -33,8 +33,12 @@ > <span>姝や负浠诲姟浣滅敤涓數姘旂殑鐨勮鎯呮楠ゅ伐鑹恒��</span> <div style="display: flex; margin-top: 0.81rem"> - <span style="margin-right: 1.25rem">姝ラ锛�12</span> - <span>濂楃瓛鏁伴噺锛�34</span> + <span style="margin-right: 1.25rem" + >姝ラ锛歿{ electric ? electric.maxNodal : "0" }}</span + > + <span + >濂楃瓛鏁伴噺锛歿{ electric ? electric.sumTorqueSum : "0" }}</span + > </div> </div> </div> @@ -59,7 +63,7 @@ font-size: 0.88rem; cursor: pointer; " - @click="addcraft()" + @click="addcraft('鐢垫皵')" > 鏂板宸ヨ壓 </div> @@ -97,8 +101,14 @@ > <span>姝や负浠诲姟浣滅敤涓満姊扮殑鐨勮鎯呮楠ゅ伐鑹恒��</span> <div style="display: flex; margin-top: 0.81rem"> - <span style="margin-right: 1.25rem">姝ラ锛�12</span> - <span>濂楃瓛鏁伴噺锛�34</span> + <span style="margin-right: 1.25rem" + >姝ラ锛歿{ mechanical ? mechanical.maxNodal : "0" }}</span + > + <span + >濂楃瓛鏁伴噺锛歿{ + mechanical ? mechanical.sumTorqueSum : "0" + }}</span + > </div> </div> </div> @@ -123,7 +133,7 @@ font-size: 0.88rem; cursor: pointer; " - @click="addcraft()" + @click="addcraft('鏈烘')" > 鏂板宸ヨ壓 </div> @@ -161,8 +171,10 @@ > <span>姝や负浠诲姟浣滅敤涓湴娌熺殑鐨勮鎯呮楠ゅ伐鑹恒��</span> <div style="display: flex; margin-top: 0.81rem"> - <span style="margin-right: 1.25rem">姝ラ锛�12</span> - <span>濂楃瓛鏁伴噺锛�34</span> + <span style="margin-right: 1.25rem" + >姝ラ锛歿{ trench ? trench.maxNodal : "0" }}</span + > + <span>濂楃瓛鏁伴噺锛歿{ trench ? trench.sumTorqueSum : "0" }}</span> </div> </div> </div> @@ -187,7 +199,7 @@ font-size: 0.88rem; cursor: pointer; " - @click="addcraft()" + @click="addcraft('鍦版矡')" > 鏂板宸ヨ壓 </div> @@ -213,7 +225,9 @@ > {{ title }} </h4> - <el-icon size="25" @click="close"><CloseBold /></el-icon> + <el-icon size="25" @click="close"> + <CloseBold /> + </el-icon> </div> </template> <div> @@ -244,9 +258,23 @@ /> </div> <div class="serch_box"> - <div class="serchb">鍏ㄥ眬鎼滅储</div> + <div class="serchb"> + <el-select + v-model="queryForm.selectType" + placeholder="璇烽�夋嫨" + size="small" + style="width: 100%; height: 100%; font-size: 0.15rem" + > + <el-option + v-for="item in selectoptions" + :key="item.value" + :label="item.label" + :value="item.value" + /> + </el-select> + </div> <input - v-model="queryForm.selectName" + v-model="queryForm.selectInput" placeholder="璇疯緭鍏ュ叧閿瘝鎼滅储" style="border-left: 0.06rem solid #e2e2e2" /> @@ -255,17 +283,19 @@ type="primary" size="small" style="height: 2rem; margin-left: 0.98rem" - @click="clicksearch" + @click="handleQuery" >鏌ヨ</el-button > <el-button size="small" - @click="clickreset" + @click="resetQuery" style="height: 2rem; font-size: 0.88rem" >閲嶇疆</el-button > </div> - <el-button style="width: 5rem; height: 2rem; margin-top: 1.13rem" + <el-button + style="width: 5rem; height: 2rem; margin-top: 1.13rem" + @click="printExcel" >鎵归噺瀵煎嚭</el-button > </div> @@ -290,16 +320,28 @@ border: '0.01rem solid #eee', }" > - <el-table-column prop="date" label="搴忓彿" min-width="2%" /> - <el-table-column prop="date" label="宸ヨ壓椤剁偣/姝ラ" min-width="3%" /> - <el-table-column prop="date" label="宸ヨ壓鍐呭" min-width="5%" /> - <el-table-column prop="date" label="宸ュ叿" min-width="2%" /> + <el-table-column prop="nodal" label="搴忓彿" min-width="2%" /> + <el-table-column + prop="craftsStep" + label="宸ヨ壓椤剁偣/姝ラ" + min-width="3%" + /> + <el-table-column + prop="craftContent" + label="宸ヨ壓鍐呭" + min-width="5%" + /> + <el-table-column prop="tools" label="宸ュ叿" min-width="2%" /> <el-table-column prop="date" label="鐗╂枡" min-width="1%" /> - <el-table-column prop="date" label="鍥剧墖瑙嗛" min-width="2%" /> - <el-table-column prop="date" label="鏄惁娑夊強" min-width="2%" /> - <el-table-column prop="date" label="鎺掑簭" min-width="1%" /> - <el-table-column prop="date" label="鍒涘缓浜�" min-width="1%" /> - <el-table-column prop="date" label="鍒涘缓鏃ユ湡" min-width="2%" /> + <!-- <el-table-column prop="date" label="鍥剧墖瑙嗛" min-width="2%" /> --> + <el-table-column prop="" label="鏄惁娑夊強" min-width="2%" /> + <el-table-column prop="setpNum" label="鎺掑簭" min-width="1%" /> + <el-table-column prop="date" label="鍒涘缓浜�" min-width="2%"> + <template #default=""> + {{ user }} + </template> + </el-table-column> + <el-table-column prop="createTime" label="鍒涘缓鏃ユ湡" min-width="2%" /> <el-table-column label="鎿嶄綔" min-width="3%"> <template #default="scope"> <el-button @@ -308,7 +350,9 @@ @click="Editcraft(scope.row, '缂栬緫')" >缂栬緫</el-button > - <el-button type="text" size="small">鍒犻櫎</el-button> + <el-button type="text" size="small" @click="delProcess(scope.row)" + >鍒犻櫎</el-button + > </template> </el-table-column> </el-table> @@ -321,8 +365,8 @@ v-model="craftdialogVisible" title="宸ヨ壓淇℃伅" width="50%" - :before-close="handleClose" :show-close="false" + @close="resetForm(ruleFormRef)" > <template #header="{ titleId, titleClass }"> <div class="my-craftheader"> @@ -340,10 +384,11 @@ label-width="auto" label-position="top" :rules="rules" + ref="ruleFormRef" > <el-row :gutter="10"> <el-col :span="16" - ><el-form-item prop="DeviceName"> + ><el-form-item prop="craftsStep"> <template #label> <span style="font-size: 0.88rem; color: black" >宸ヨ壓椤剁偣/姝ラ</span @@ -351,7 +396,7 @@ </template> <el-input size="small" - v-model="form.DeviceName" + v-model="form.craftsStep" placeholder="璇疯緭鍏�" style="height: 2rem" /> </el-form-item @@ -362,13 +407,17 @@ <span style="font-size: 0.88rem; color: black">鐗╂枡</span> </template> <el-select - v-model="value" + v-model="WLvalue" placeholder="璇烽�夋嫨" + multiple + filterable + :remote-method="remoteMethod" + :loading="loading" size="small" style="width: 240px" > <el-option - v-for="item in options" + v-for="item in WLoptions" :key="item.value" :label="item.label" :value="item.value" @@ -378,18 +427,18 @@ </el-row> <el-row :gutter="10"> <el-col :span="8" - ><el-form-item prop="Unit"> + ><el-form-item prop="isinvolved"> <template #label> <span style="font-size: 0.88rem; color: black">鏄惁娑夊強</span> </template> <el-select - v-model="value" + v-model="form.isinvolved" placeholder="璇烽�夋嫨" size="small" style="width: 240px" > <el-option - v-for="item in options" + v-for="item in isoptions" :key="item.value" :label="item.label" :value="item.value" @@ -397,35 +446,55 @@ </el-select> </el-form-item ></el-col> <el-col :span="8" - ><el-form-item prop="Description"> + ><el-form-item prop="setnum"> <template #label> <span style="font-size: 0.88rem; color: black">鎺掑簭</span> </template> - <el-select - v-model="value" - placeholder="璇烽�夋嫨" + <el-input size="small" - style="width: 240px" - > - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value" - /> - </el-select> </el-form-item + v-model.number="form.setnum" + placeholder="璇疯緭鍏�" + style="height: 2rem" + /> </el-form-item ></el-col> <el-col :span="8" - ><el-form-item prop="Description"> + ><el-form-item prop="tools"> <template #label> - <span style="font-size: 0.88rem; color: black">宸ュ叿</span> + <div style="display: flex; align-items: center"> + <span style="font-size: 0.88rem; color: black">宸ュ叿</span> + </div> </template> - <el-cascader + <el-select + v-model="tools" + placeholder="璇烽�夋嫨" + multiple + filterable + :remote-method="GJremoteMethod" + :loading="GJloading" size="small" style="width: 240px" - :options="options" - :props="props" - clearable /></el-form-item + value-key="id" + > + <el-option + v-for="item in GJoptions" + :key="item.id" + :label="item.toolName" + :value="item" + /> </el-select></el-form-item + ></el-col> + </el-row> + <el-row :gutter="10"> + <el-col :span="8" + ><el-form-item prop="nodal"> + <template #label> + <span style="font-size: 0.88rem; color: black">搴忓彿</span> + </template> + <el-input + size="small" + v-model.number="form.nodal" + placeholder="璇疯緭鍏�" + style="height: 2rem" + /> </el-form-item ></el-col> </el-row> <!-- <el-row> @@ -490,18 +559,20 @@ </el-row> <el-row> <el-col> - <el-form-item prop="Unit"> + <el-form-item prop="craftContent"> <template #label> <span style="font-size: 0.88rem; color: black">鍐呭鎻忚堪</span> </template> - <el-input v-model="input" placeholder="璇疯緭鍏�" /> + <el-input v-model="form.craftContent" placeholder="璇疯緭鍏�" /> </el-form-item> </el-col> </el-row> <el-row> - <el-form-item prop="Unit"> + <el-form-item prop="checkList"> <template #label> - <span style="font-size: 0.88rem; color: black">鍐呭鎻忚堪</span> + <div style="display: flex; align-items: center"> + <span style="font-size: 0.88rem; color: black">閫夋嫨濂楃瓛</span> + </div> </template> <div style=" @@ -519,29 +590,48 @@ " > <el-input - placeholder="璇疯緭鍏ュ唴瀹�" - style="height: 2rem" + placeholder="鎼滅储" + style="height: 2rem; background: #f5f5f5; border: none" + :prefix-icon="Search" + v-model="value" ></el-input> <div style="height: 1.25rem; display: flex; align-items: center" > <span style="color: rgba(28, 31, 35, 0.8); font-size: 0.75rem" - >鍏�0椤�</span - ><span + >鍏眥{ checkList.length }}椤�</span + > + <!-- <span + @click="handleCheckAllChange" style=" color: rgba(28, 31, 35, 0.8); font-size: 0.75rem; margin-left: 0.38rem; + cursor: pointer; " >鍏ㄩ��</span - > + > --> </div> </div> <el-scrollbar height="20rem" style="padding-left: 0.88rem"> - <p v-for="item in 0" :key="item" class="scrollbar-demo-item"> - {{ item }} - </p> + <el-checkbox-group + :indeterminate="isIndeterminate" + @change="checkChange" + v-model="checkList" + style="display: flex; flex-direction: column" + > + <el-checkbox + :max="2" + v-for="item in sleeveData" + :key="item.id" + :label="item.articleName" + :value="{ + ...item, + num: 1, + }" + /> + </el-checkbox-group> </el-scrollbar> </div> <div style="width: 50%; height: 100%"> @@ -549,13 +639,15 @@ style="padding: 0.88rem 0 0 0.88rem; box-sizing: border-box" > <span style="color: rgb(167, 171, 176); font-size: 0.88rem" - >宸查��0椤�</span + >宸查�墈{ checkList.length }}椤�</span > <span + @click="clear" style=" color: rgb(65, 70, 76); font-size: 0.88rem; margin-left: 1rem; + cursor: pointer; " >娓呯┖</span > @@ -564,8 +656,29 @@ height="calc(25rem - 44.15px)" style="padding-left: 0.88rem" > - <p v-for="item in 0" :key="item" class="scrollbar-demo-item"> - {{ item }} + <p + style=" + display: flex; + justify-content: space-between; + margin: 0.5rem 0; + " + v-for="item in checkList" + :key="item.id" + class="scrollbar-demo-item" + > + <span> + {{ item.articleName }} + </span> + <span> + <el-input-number + size="small" + style="width: 7rem" + v-model="item.num" + :min="1" + :max="100" + @change="handleChange" + /> + </span> </p> </el-scrollbar> </div> @@ -580,7 +693,7 @@ > <el-button type="primary" - @click="craftdialogVisible = false" + @click="addprocess(ruleFormRef)" style="height: 2rem" > 淇濆瓨 @@ -591,76 +704,461 @@ </div> </template> <script setup> -import { ref, reactive, onMounted } from "vue"; -import { GetSleeveandStep } from "@/api/newapi/Process"; -//宸ヨ壓鏄庣粏寮瑰嚭妗� -const detailsDialogVisible = ref(false); -// -const gridData = ref([]); -//鐢垫皵鏁伴噺 -// const -//鎼滅储 -const queryForm = reactive({ +import { ref, reactive, onMounted, toRef } from "vue"; +import { Search } from "@element-plus/icons-vue"; +import { + GetSleeveandStep, + GetProcess, + AddProcess, + GetPageData, + ArticleInfom, + GetTool, + ExportApi, + DelProcess, + AddOrUpdateProcess, +} from "@/api/newapi/Process"; +import { ElMessage } from "element-plus"; +import { formatTime } from "@/utils/index.js"; + +// 鍒濆鍖栨暟鎹� +const obj = { selectName: "", selectTime: [], // 鏃堕棿鑼冨洿 -}); -const title = ref("鐢垫皵"); -const showdetails = (val) => { - detailsDialogVisible.value = true; - title.value = val; + selectType: "", //閫夋嫨鐨勭被鍨� + selectInput: "", //杈撳叆鐨勬暟鎹� }; +//宸ヨ壓鏄庣粏鏁版嵁 +const gridData = ref([]); +//濂楃瓛鏁版嵁 +const sleeveData = ref([]); +//閫夋嫨鐨勫绛掓暟鎹� +const checkList = ref([]); +//鐢垫皵鏁伴噺 +const electric = ref(null); +//鏈烘鏁伴噺 +const mechanical = ref(null); +//鍦版矡 +const trench = ref(null); //鏂板宸ヨ壓/缂栬緫宸ヨ壓 -const craftdialogVisible = ref(false); const type = ref("鏂板"); -const form = reactive({ - DeviceName: "", - DeviceCode: "", - Spec: "", - Unit: "", - Description: "", +//鑾峰彇鏁版嵁 +const title = ref("鐢垫皵"); +//琛ㄥ崟ref鍊� +const ruleFormRef = ref(); +//鐢ㄦ埛鏁版嵁 +const user = ref(null); + +const tools = ref([]); +//鎼滅储 +const queryForm = toRef({ ...obj }); +const isIndeterminate = ref(true); +//宸ヨ壓鏄庣粏寮瑰嚭妗� +const detailsDialogVisible = ref(false); +//鏂板宸ヨ壓寮瑰嚭妗� +const craftdialogVisible = ref(false); +//鎼滅储瀛楁閫夋嫨 +const selectoptions = ref([ + { + value: "setpNum", + label: "搴忓彿", + }, + { + value: "tools", + label: "宸ュ叿", + }, +]); +//鏄惁娑夊強 +const isoptions = reactive([ + { label: "鏄�", value: "鏄�" }, + { label: "鍚�", value: "鍚�" }, +]); + +//琛ㄥ崟瑙勫垯 +const rules = reactive({ + craftstype: [ + { required: true, message: "璇烽�夋嫨宸ヨ壓绫诲瀷", trigger: "change" }, + ], + craftsStep: [{ required: true, message: "璇疯緭鍏ュ伐鑹烘楠�", trigger: "blur" }], + craftContent: [ + { required: true, message: "璇疯緭鍏ュ伐鑹哄唴瀹�", trigger: "blur" }, + ], + nodal: [{ required: true, message: "璇疯緭鍏ュ簭鍙�", trigger: "blur" }], + setnum: [{ required: true, message: "璇疯緭鍏ユ帓搴忓彿", trigger: "blur" }], }); + +// isinvolved: "", //鏄惁娑夊強 +//鏂板宸ヨ壓/缂栬緫宸ヨ壓琛ㄥ崟鏁版嵁 +const form = ref({ + craftstype: "", //宸ヨ壓绫诲瀷锛堢粍锛� + nodal: null, //鑺傜偣 + craftsStep: "", //宸ヨ壓姝ラ + craftContent: "", //宸ヨ壓鍐呭 + sleeveNum: "", //濂楃瓛鏁伴噺 + tools: "", //宸ュ叿 + setnum: null, + torqueOne: 0, + torqueOneQuantity: 0, + articleOne: "", + articleOneid: "", + articleTowid: "", + articleTwo: "", + torqueSum: 0, + torqueTwo: 0, + torqueTwoQuantity: 0, + creater: localStorage.getItem("user") + ? JSON.parse(localStorage.getItem("user")).userName + : "", + createDate: formatTime(new Date()), +}); + const props = { multiple: true }; +const userName = ref(""); //鏂板宸ヨ壓 const addcraft = (row) => { type.value = "鏂板"; + title.value = row; craftdialogVisible.value = true; - console.log(row, type); + ArticleInfom({ + page: 1, + rows: 100, + total: 0, + tableName: "", + sort: "", + order: "", + wheres: "", + export: true, + value: "", + filter: [ + { + name: "", + value: "", + displayType: "", + }, + ], + }).then((res) => { + sleeveData.value = res.rows; + }); + GetTool({ + page: 1, + rows: 100, + total: 0, + tableName: "", + sort: "", + order: "", + wheres: "", + export: true, + value: "", + filter: [ + { + name: "", + value: "", + displayType: "", + }, + ], + }).then((res) => { + GJoptions.value = res.rows; + }); }; + //缂栬緫宸ヨ壓 const Editcraft = (row) => { + let data = Object.assign({}, row); type.value = "缂栬緫"; detailsDialogVisible.value = false; craftdialogVisible.value = true; - console.log(row, type); -}; -//鍥剧墖涓婁紶 -const dialogImageUrl = ref(""); -const dialogVisible = ref(false); -const disabled = ref(false); - -const handleRemove = (file) => { - console.log(file); + form.value = data; + tools.value = row.tools ? row.tools.split(",") : ""; + ArticleInfom({ + page: 1, + rows: 100, + total: 0, + tableName: "", + sort: "", + order: "", + wheres: "", + export: true, + value: "", + filter: [ + { + name: "", + value: "", + displayType: "", + }, + ], + }).then((res) => { + sleeveData.value = res.rows; + }); + GetTool({ + page: 1, + rows: 100, + total: 0, + tableName: "", + sort: "", + order: "", + wheres: "", + export: true, + value: "", + filter: [ + { + name: "", + value: "", + displayType: "", + }, + ], + }).then((res) => { + GJoptions.value = res.rows; + }); }; -const handlePictureCardPreview = (file) => { - dialogImageUrl.value = file.url; - dialogVisible.value = true; +const showdetails = (val) => { + detailsDialogVisible.value = true; + title.value = val; + initData(title.value); + // GetProcess(val).then((res) => { + // gridData.value = res.data; + // }); +}; +//淇濆瓨 +const addprocess = async (formEl) => { + userName.value = JSON.parse(localStorage.getItem("user")).userName; + let string = ""; + // if (tools.value.length == 0) { + // ElMessage({ + // message: "璇烽�夋嫨宸ュ叿", + // type: "warning", + // }); + // return; + // } + string = tools.value + .map((item) => { + return item.toolName; + }) + .join(","); + // if (checkList.value.length == 0) { + // ElMessage({ + // message: "璇烽�夋嫨濂楃瓛", + // type: "warning", + // }); + // return; + // } + if (form.value.nodal == 0) { + ElMessage({ + message: "搴忓彿鏈�灏忎负1", + type: "warning", + }); + return; + } + + form.value.articleOneid = checkList.value[0].id; + form.value.articleOne = checkList.value[0].num; + form.value.articleTowid = checkList.value[1].id; + form.value.articleTwo = checkList.value[1].num; + form.value.creater = userName.value; + form.value.tools = string; + form.value.craftstype = title.value; + form.value.torqueOneQuantity = tools.value.length; + form.value.id = form.value.craftID ? form.value.craftID : 0; + console.log(form.value); + + if (!formEl) return; + await formEl.validate((valid, fields) => { + if (valid) { + AddOrUpdateProcess(form.value).then((res) => { + ElMessage({ + message: form.value.craftID ? "淇敼鎴愬姛" : "鍒涘缓鎴愬姛", + type: "success", + }); + craftdialogVisible.value = false; + }); + } else { + console.log("error submit!", fields); + } + }); +}; +//鐗╂枡妯$硦鏌ヨ +const WLvalue = ref(null); +const loading = ref(false); +const WLoptions = ref([]); +const remoteMethod = (query) => { + if (query) { + loading.value = true; + setTimeout(() => { + loading.value = false; + WLoptions.value = list.value.filter((item) => { + return item.label.toLowerCase().includes(query.toLowerCase()); + }); + }, 200); + } else { + WLoptions.value = []; + } +}; +//宸ュ叿妯$硦鏌ヨ +const GJvalue = ref(null); +const GJloading = ref(false); +const GJoptions = ref([]); +const GJremoteMethod = (query) => { + if (query) { + GJloading.value = true; + setTimeout(() => { + GJloading.value = false; + GJoptions.value = list.value.filter((item) => { + return item.label.toLowerCase().includes(query.toLowerCase()); + }); + }, 200); + } else { + GJoptions.value = []; + } }; -const handleDownload = (file) => { - console.log(file); +//鍒嗛〉璇锋眰鍙傛暟 +const pageQuery = ref({ + page: 1, //褰撳墠椤甸潰 + rows: 100, //姣忛〉鏄剧ず鏉℃暟 + order: "desc", //鎺掑簭鏂瑰紡 + sort: "", //鎺掑簭瀛楁 + wheres: "", //鏉′欢鏌ヨ +}); +//椤甸潰鍒濆鍖栨暟鎹� +const initData = (val) => { + // 鏌ヨ鏉′欢 + const startTime = formatTime(queryForm.value.selectTime[0]); + const endTime = formatTime(queryForm.value.selectTime[1]); + const filter = [ + { + name: "CraftType", + value: val, + displayType: "String", + }, + { + name: queryForm.value.selectType, + value: queryForm.value.selectInput, + displayType: "like", + }, + { + name: "pustatus", + value: queryForm.value.selectName, + displayType: "Contains", + }, + { name: "createTime", value: startTime, displayType: "ThanOrEqual" }, + { name: "createTime", value: endTime, displayType: "LessOrEqual" }, + ]; + GetPageData({ + ...pageQuery.value, + filter, + }).then((res) => { + gridData.value = res.rows; + }); }; +//鏁版嵁妫�绱簨浠� +const handleQuery = () => { + pageQuery.value.page = 1; + initData(title.value); +}; +// 閲嶇疆鏂规硶 +const resetQuery = () => { + queryForm.value = Object.assign({}, obj); + pageQuery.value.page = 1; + initData(title.value); +}; +//閲嶇疆琛ㄥ崟 +const resetForm = (formEl) => { + if (!formEl) return; + formEl.resetFields(); + form.value = Object.assign( + {}, + { + craftstype: "", //宸ヨ壓绫诲瀷锛堢粍锛� + nodal: 0, //鑺傜偣 + craftsStep: "", //宸ヨ壓姝ラ + craftContent: "", //宸ヨ壓鍐呭 + sleeveNum: "", //濂楃瓛鏁伴噺 + tools: "", //宸ュ叿 + isinvolved: "", //鏄惁娑夊強 + setpNum: "", + torqueOne: 0, + torqueOneQuantity: 0, + articleOne: "", + articleOneid: "", + articleTowid: "", + articleTwo: "", + torqueSum: 0, + torqueTwo: 0, + torqueTwoQuantity: 0, + creater: "", + createDate: formatTime(new Date()), + } + ); +}; +//瀵煎嚭鏂规硶 +const printExcel = () => { + // 鏌ヨ鏉′欢 + const startTime = formatTime(queryForm.value.selectTime[0]); + const endTime = formatTime(queryForm.value.selectTime[1]); + const filter = [ + { + name: "gruop", + value: title.value, + displayType: "String", + }, + { + name: queryForm.value.selectType, + value: queryForm.value.selectInput, + displayType: "String", + }, + { + name: "pustatus", + value: queryForm.value.selectName, + displayType: "String", + }, + { name: "createTime", value: startTime, displayType: "ThanOrEqual" }, + { name: "createTime", value: endTime, displayType: "LessOrEqual" }, + ]; + ExportApi({ + ...pageQuery.value, + filter, + }); +}; +//娓呯┖ +const clear = () => { + checkList.value = []; +}; +const checkChange = (e) => { + console.log(e, checkList.value); +}; +const handleChange = () => { + console.log(checkList.value); +}; +const handleCheckAllChange = (val) => { + console.log(val); + checkList.value = val ? sleeveData.value : []; + isIndeterminate.value = false; + console.log(checkList.value); +}; +// 鍒犻櫎宸ヨ壓 +const delProcess = (val) => { + console.log(val); + + DelProcess([val.craftID]).then((res) => { + ElMessage({ + message: "鍒犻櫎鎴愬姛", + type: "success", + }); + initData(title.value); + }); +}; + onMounted(() => { GetSleeveandStep("鐢垫皵").then((res) => { - console.log("123", res); + electric.value = res.data[0]; }); GetSleeveandStep("鏈烘").then((res) => { - console.log("123", res); + mechanical.value = res.data[0]; }); GetSleeveandStep("鍦版矡").then((res) => { - console.log("123", res); + trench.value = res.data[0]; }); + user.value = JSON.parse(localStorage.getItem("user")).userName; }); </script> <style lang="scss" scoped> @@ -668,12 +1166,14 @@ display: flex; justify-content: center; background-color: rgba(0, 0, 0, 0.3); + .content { display: flex; justify-content: space-between; margin-top: 5.88rem; width: 75rem; + .content-list { display: flex; flex-direction: column; @@ -681,14 +1181,17 @@ width: 22.69rem; height: 11.44rem; background-color: #fff; + .list_top { display: flex; padding: 1.38rem 1.38rem; box-sizing: border-box; + .list_top_left { margin-right: 0.94rem; } } + .list_bottom { height: 3.06rem; display: flex; @@ -700,6 +1203,7 @@ } } } + .my-header { height: 3.94rem; display: flex; @@ -709,9 +1213,11 @@ padding-left: 2.06rem; border-bottom: 0.06rem solid rgba(233, 233, 233, 1); } + .serch { display: flex; align-items: center; + .time_box { display: flex; align-items: center; @@ -730,24 +1236,26 @@ justify-content: center; } } + .serch_box { display: flex; align-items: center; text-align: center; margin-left: 0.98rem; border-radius: 0.38rem; + .serchb { box-sizing: border-box; width: 6.88rem; height: 2rem; text-align: center; - border: 0.06rem solid rgba(222, 222, 222, 1); - border-radius: 0.25rem 0 0 0.25rem; + font-size: 0.75rem; display: flex; align-items: center; justify-content: center; } + input { box-sizing: border-box; outline: none; @@ -760,6 +1268,7 @@ } } } + .my-craftheader { height: 3.94rem; display: flex; @@ -769,11 +1278,13 @@ border-bottom: 0.06rem solid rgba(233, 233, 233, 1); } } + .avatar-uploader .avatar { width: 7rem; height: 7rem; display: block; } + :deep(.avatar-uploader .el-upload) { width: 7rem; height: 7rem; @@ -784,10 +1295,12 @@ overflow: hidden; transition: var(--el-transition-duration-fast); } + :deep(.el-upload-list__item) { width: 7rem; height: 7rem; } + .avatar-uploader .el-upload:hover { border-color: var(--el-color-primary); } -- Gitblit v1.9.3