From 0ff14f558473544c9145735524fb671743c716bb Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期五, 22 九月 2023 19:05:29 +0800 Subject: [PATCH] 看板改版 --- src/views/visualization.vue | 208 +++++++++++++++++++++++++++++---------------------- 1 files changed, 118 insertions(+), 90 deletions(-) diff --git a/src/views/visualization.vue b/src/views/visualization.vue index 33b594a..9c48cd3 100644 --- a/src/views/visualization.vue +++ b/src/views/visualization.vue @@ -13,9 +13,17 @@ <img style="width:32px;" v-if="activeName == 1" src="../../public/one-blue.png" /> <img style="width:32px;" v-else src="../../public/one.png" /> </span> - <span class="font set-title" style="float: left" @click="cutClick(2)"> + <span class="font set-title" style="float: left;margin-right: 15px;" @click="cutClick(2)"> <img style="width:32px;" v-if="activeName == 2" src="../../public/two-blue.png" /> <img style="width:32px;" v-else src="../../public/two.png" /> + </span> + <span + class="font set-title" + style="float: left; " + @click="cutClick(3)" + > + <img style="width:32px;" v-if="activeName == 3" src="../../public/one-blue.png" /> + <img style="width:32px;" v-else src="../../public/one.png" /> </span> 鐢熶骇绠$悊鐪嬫澘 <span @@ -33,7 +41,7 @@ </span> </p> <div - :class="activeName == 1 ? 'active-one' : 'active-two'" + :class="(activeName == 1||activeName == 3) ? 'active-one' : 'active-two'" v-for="(taskData, index) in Tasks" :key="index" > @@ -110,7 +118,7 @@ </div> </div> <div class="content_right"> - <el-descriptions :column="activeName == 1 ? 2 : 1" :colon="true"> + <el-descriptions :column="(activeName == 1||activeName == 3) ? 2 : 1" :colon="true"> <el-descriptions-item label="浜у搧鍚嶇О">{{ taskData.Order.productName || "" }}</el-descriptions-item> @@ -143,8 +151,8 @@ <el-descriptions-item label="瀹屾垚搴�" style="width: 100%"> <!--:text-format="format" --> <el-progress - define-back-color="#133EAF" - color="#09E5ED" + define-back-color="#132f6e" + color="#00cc66" text-color="#fff" :text-inside="true" :stroke-width="30" @@ -223,7 +231,7 @@ <i class="el-icon-phone-outline" />鐗╂枡鍛煎彨</el-button > </div> - <i class="el-icon-arrow-right font-arrow-20 color_4efefa"></i> + <i class="el-icon-arrow-right font-arrow-20 color_318583"></i> <div class="bottom_list"> <div class="bottom-title"> 褰撳墠宸ュ簭:{{ taskData.Procedure.procedure.procedureName || "" }} @@ -274,8 +282,8 @@ > <span class="card-top-r-b"> <el-progress - define-back-color="#133EAF" - color="#09E5ED" + define-back-color="#132f6e" + color="#00cc66" text-color="#fff" :text-inside="true" :stroke-width="10" @@ -308,7 +316,7 @@ <!-- <div class="card_content"> </div> --> - <div :class="activeName==1?'card_top-4 font_size_20px':'card_top-4'"> + <div :class="(activeName==1||activeName == 3)?'card_top-4 font_size_20px':'card_top-4'"> <div>宸ヨ壓缂栧彿锛�<div >{{ list.number }}</div></div> <!-- <div style=" @@ -337,7 +345,7 @@ v-model="finishShow['finishShow&'+index]" trigger="click" > - <p>璇风‘璁ゆ槸鍚﹀凡瀹屾垚璇ョ敓浜т换鍔�?</p> + <p><i class="el-icon-error" style="color:red;margin-right:5px;"/>璇风‘璁ゆ槸鍚﹀凡瀹屾垚璇ョ敓浜т换鍔�?</p> <div style="text-align: right; margin: 0"> <el-button size="mini" @click="finishShow['finishShow&'+index] = false"> 鍙栨秷</el-button @@ -345,6 +353,7 @@ <el-button type="primary" size="mini" + class="color_f70f83" @click="finishClick(index, taskData)" > 纭畾</el-button @@ -354,7 +363,7 @@ </el-popover> </div> </div> - <i class="el-icon-arrow-right font-arrow-20 color_4efefa"></i> + <i class="el-icon-arrow-right font-arrow-20 color_318583"></i> <div class="bottom_list"> <div class="bottom-title"> <span>杈撳嚭璧勬簮</span> @@ -407,7 +416,7 @@ </template> <!-- 2涓换鍔$殑鏃跺�欙紝绗簩涓换鍔′负绌虹殑鏃跺�欐樉绀� --> <template - v-if="activeName == 2 &&(!taskData||Object.keys(taskData).length==0)" + v-if="activeName == 2 &&(!taskData||Object.keys(taskData).length==0||(Tasks.length<2))" > <el-empty description="鏆傛棤浠诲姟..."></el-empty> </template> @@ -485,7 +494,7 @@ </div> --> </div> <div class="right_base"> - <div class="right-small-title" style="line-height: 40px">鐭ヨ瘑搴�</div> + <div class="right-small-title" style="line-height: 40px;margin-top:20px;">鐭ヨ瘑搴�</div> <Knowledge /> <div class="right-base-btn call"> <el-button type="primary" @@ -664,6 +673,7 @@ TaskCount:0, plcStatus:0, isTipShow:false, + isFinsh:0, }; }, mounted() { @@ -679,6 +689,13 @@ this.getDate2(); }, 5000); this.getTaskInfo(); + }, + watch:{ + isFinsh(){ + if(this.isFinsh==this.Tasks.length){ + this.getStartArr() + } + } }, methods: { taskClick(){ @@ -831,14 +848,14 @@ }, inputMaterials: [], outputMaterials: [ - [ - { - materialId:11111, - materialName:'272澶у鍟婃斁鍋囦簡鍗¤壈鑻﹀鏂楀瀮鍦惧彂蹇�掑瀮鍦惧弽棣堟潵寰楀強鍏嬮殕', - amount:100, - unit:'浠�' - } - ] + // [ + // { + // materialId:11111, + // materialName:'272澶у鍟婃斁鍋囦簡鍗¤壈鑻﹀鏂楀瀮鍦惧彂蹇�掑瀮鍦惧弽棣堟潵寰楀強鍏嬮殕', + // amount:100, + // unit:'浠�' + // } + // ] ], procedureList: [ // [ @@ -861,48 +878,7 @@ this.Tasks = res.data.Tasks ? res.data.Tasks : []; this.TaskCount=res.data.TaskCount?res.data.TaskCount:0 - this.workers=res.data.workers?res.data.workers:[] - for (let i in this.Tasks) { - this.Tasks[i].procedureList = []; - this.Tasks[i].inputMaterials = []; - this.Tasks[i].outputMaterials = []; - this.Tasks[i].finishNumber = 0; - this.finishShow['finishShow&'+i]=false - this.Tasks[i].Procedure.procedure.workers = this.Tasks[i].Procedure - .procedure.workers - ? this.Tasks[i].Procedure.procedure.workers - : []; - this.Tasks[i].procedureList.push([ - { - name: "宸ュ簭", - ...this.Tasks[i].Procedure.procedure, - }, - ]); - - if (this.Tasks[i].Procedure.ID) { - startTask({ id: this.Tasks[i].Procedure.ID }).then((res) => { - if (res.code == 200) { - // res.data.number - this.Tasks[i].procedureList[0].push({ - number: res.data.Number, - name: "宸ヨ壓", - Arr:res.data.Params ? res.data.Params : [], - }); - } - }); - } - this.setInterCard("inputMaterials", "cardBox1&" + i, i); - this.setInterCard("outputMaterials", "cardBox3&" + i, i); - } - this.getStartArr() - this.getProgressInfo(); - if (!this.procInfoTimer) { - this.procInfoTimer = setInterval(() => { - this.getProgressInfo(); - }, 3000); - } - } - if (this.Tasks.length == 0) { + if (this.Tasks.length == 0&&this.TaskCount==0) { if (this.activeName == 1) { this.Tasks.push(object); } else { @@ -910,6 +886,47 @@ this.Tasks.push(object); } } + this.workers=res.data.workers?res.data.workers:[] + for (let i in this.Tasks) { + this.Tasks[i].procedureList = []; + this.Tasks[i].inputMaterials = []; + this.Tasks[i].outputMaterials = []; + this.finishShow['finishShow&'+i]=false + this.Tasks[i].Procedure.procedure.workers = this.Tasks[i].Procedure + .procedure.workers + ? this.Tasks[i].Procedure.procedure.workers + : []; + + this.Tasks[i].procedureList.push([ + { + name: "宸ュ簭", + ...this.Tasks[i].Procedure.procedure, + }, + ]); + + if (this.Tasks[i].Procedure.ID) { + startTask({ id: this.Tasks[i].Procedure.ID }).then((res) => { + if (res.code == 200) { + // res.data.number + this.Tasks[i].procedureList[0].push({ + number: res.data.Number, + }); + this.Tasks[i].Arr=res.data.Params ? res.data.Params : [] + this.isFinsh=Number(i)+1 + } + }); + } + this.setInterCard("inputMaterials", "cardBox1&" + i, i); + this.setInterCard("outputMaterials", "cardBox3&" + i, i); + } + + this.getProgressInfo(); + if (!this.procInfoTimer) { + this.procInfoTimer = setInterval(() => { + this.getProgressInfo(); + }, 3000); + } + } if (res.code != 200 || this.Tasks.length == 0) { this.getcountdown(); // 鎺у埗閲嶆柊璇锋眰getTaskInfo, 鍙紑鍚竴涓畾鏃跺櫒 @@ -921,13 +938,13 @@ } }); - this.Tasks.push(object) - this.Tasks.push(object) + // this.Tasks.push(object) + // this.Tasks.push(object) }, getStartArr(){ for (let i in this.Tasks) { if (this.Tasks[i].Procedure.Status==1) { - this.Arr = this.Tasks[i].procedureList[0].Arr ?this.Tasks[i].procedureList[0].Arr: []; + this.Arr = this.Tasks[i].Arr ?this.Tasks[i].Arr: []; this.taskData=this.Tasks[i]; break; } @@ -936,6 +953,7 @@ getProgressInfo() { for (let i in this.Tasks){ if(this.Tasks[i].Procedure.ID){ + this.Tasks[i].finishNumber = 0; getProgress({ position: Number(i), procedureId: this.Tasks[i].Procedure.ID, @@ -961,19 +979,7 @@ path: "/set", }); }, - // 鍙充晶鎺у埗 - controlClick() { - if (this.Tasks.length > 0) { - for(let i in this.Tasks){ - if(this.Tasks[i].Procedure.Status==1){ - this.$refs.control.islook = true; - break; - } - } - } else { - this.$message.error("褰撳墠璁惧娌℃湁宸ュ簭锛�"); - } - }, + // 鍙充晶瀹屾垚 finishClick(i, taskData) { if (Object.keys(taskData).length > 0 && taskData.Procedure.ID) { @@ -1003,8 +1009,20 @@ width:200px; line-height:1.3!important; } +.el-popover{ + background:#12234a!important; + color:#fff!important; + border-color: #09e5ed !important; + + .popper__arrow::after{ + border-top-color:#09e5ed !important; + } +} .color_yellow{ color:yellow; +} +.color_318583{ + color:#318583; } .el-empty{ height:100%; @@ -1024,10 +1042,10 @@ margin-bottom: 20px; } .content { - height: 240px; + height: 300px; } .bottom { - height: calc(100% - 410px); + height: calc(100% - 470px); } .font_size_20px{ font-size:20px!important; @@ -1059,18 +1077,18 @@ line-height: 20px; } .content { - height: 370px; + height: 430px; .content-top { - height: calc(50% - 20px) !important; - padding-top: 10px !important; + height: calc(50% - 30px) !important; + padding-top: 20px !important; } .el-descriptions__body { font-size: 16px !important; } } .bottom { - height: calc(100% - 560px); + height: calc(100% - 610px); } .bottom_list .bottom-title { font-size: 16px; @@ -1424,6 +1442,9 @@ background: rgb(22 72 173); border-radius: 6px; // background: #233b9e; + .el-descriptions-row{ + height:45px; + } .el-descriptions__body { background: transparent; font-size: 18px; @@ -1463,15 +1484,22 @@ margin-top: 10px; color: #333; position: relative; + .card_top-2{ + width:35%; + } + .card-top-input-out-r, + .card_top-3 { + width:65%; + } .card_top-2,.card-top-input-out-r, .card_top-3 { - width: 50%; height: 45px; border-radius: 5px; background: #6b83ff; - font-size: 12px; + font-size: 13px; color: #fff; float: left; + font-weight: 700; .card-top-r-t { width: 100%; text-align: center; @@ -1680,7 +1708,7 @@ .right_dutyLst { width: calc(106% - 20px); // height: 270px; - height: 310px; + height: 370px; border-radius: 4px; line-height: 30px; overflow: hidden; @@ -1699,7 +1727,7 @@ } .right-person-box { width: 100%; - height: calc(100% - 40px); + height: calc(100% - 60px); overflow: auto; margin-top: -10px; } @@ -1729,7 +1757,7 @@ } .right_base { width: 100%; - height: calc(100% - 520px); + height: calc(100% - 580px); min-height: 200px; // overflow-y:auto; position: relative; -- Gitblit v1.8.0