| | |
| | | @click="setUrl" |
| | | ></span> |
| | | <span |
| | | class="font el-icon-s-tools set-title" |
| | | style="float: right;margin-right: 6px" |
| | | @click="openParamsConfigModal" |
| | | ></span> |
| | | <span |
| | | style="float: right;margin-right:20px;font-size:28px;line-height:25px;" |
| | | @click="taskClick" |
| | | > |
| | |
| | | > |
| | | <template v-if="taskData"> |
| | | <div class="gong-date"> |
| | | 工序运行时间:{{ getFormatTime(taskData.Procedure.startTime) }} |
| | | 工序运行时间:{{ getTaskRunningTime(taskData.Procedure.realStartTime,taskData.Procedure.realEndTime) }} |
| | | </div> |
| | | <div class="statelist"> |
| | | <span class="title-item" |
| | |
| | | :listData="listData" |
| | | @updateGet="updateGet" |
| | | /> |
| | | <ParamsConfigModal :visible="paramsConfigIsShow" @close="closeParamsConfigModal"></ParamsConfigModal> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | import TaskControlModal from "@/components/TaskControlModal.vue"; |
| | | import {channelNameConfig} from "@/common/constants"; |
| | | import _ from 'lodash' |
| | | import ParamsConfigModal from "@/components/ParamsConfigModal.vue"; |
| | | export default { |
| | | components: { |
| | | ParamsConfigModal, |
| | | TaskControlModal, |
| | | Card, |
| | | Knowledge, |
| | |
| | | resprocInfoTimer:null, |
| | | channelNameConfig: channelNameConfig, |
| | | index:null, |
| | | paramsConfigIsShow:false |
| | | }; |
| | | }, |
| | | mounted() { |
| | |
| | | } |
| | | } |
| | | this.resResult[i]=res; |
| | | console.log( this.resResult[i],'===res111') |
| | | // console.log( this.resResult[i],'===res111') |
| | | }) |
| | | } |
| | | } |
| | |
| | | let now = new Date(); |
| | | this.formatTime2 = this.getDateObj(now, "yyyy年MM月dd日"); |
| | | }, |
| | | getFormatTime(date){ |
| | | const getCha=()=>{ |
| | | let now=new Date().getTime() |
| | | let String=now-date*1000; |
| | | let seconds=Math.floor(String/1000) |
| | | let minutes=Math.floor(seconds/60) |
| | | |
| | | let days=Math.floor(String/1000/60/60/24) |
| | | let hours=Math.floor(minutes/60)-days*24 |
| | | let m=minutes-days*24*60-hours*60 |
| | | return days+'天'+hours+'时'+m+'分' |
| | | /** |
| | | * 计算时间段, 注意参数要求时间戳为 JS Date 的13位时间戳 |
| | | * @param {number} startTime |
| | | * @param {number} endTime |
| | | * @return {string} |
| | | */ |
| | | calcRunningDuration(startTime,endTime){ |
| | | let timeDuration=endTime-startTime; |
| | | if (timeDuration<0){ |
| | | return '0天0时0分' |
| | | } |
| | | let d= getCha() |
| | | |
| | | let seconds=Math.floor(timeDuration/1000) |
| | | let minutes=Math.floor(seconds/60) |
| | | |
| | | let days=Math.floor(timeDuration/1000/60/60/24) |
| | | let hours=Math.floor(minutes/60)-days*24 |
| | | let m=minutes-days*24*60-hours*60 |
| | | return `${days}天${hours}时${m}分` |
| | | }, |
| | | |
| | | /** |
| | | * 工序运行时间 |
| | | * 根据接口返回 realStartTime realEndTime 判断如何展示 |
| | | * 如果 realEndTime 为 0 则 用当前时间 - realStartTime |
| | | * 如果 存在 realEndTime, 则 realEndTime - realStartTime |
| | | * 注意 realStartTime realEndTime 是接口返回的10位时间戳 |
| | | * @param realStartTime |
| | | * @param realEndTime |
| | | * @return {string} |
| | | */ |
| | | getTaskRunningTime(realStartTime,realEndTime){ |
| | | const getInfo = ()=>{ |
| | | if (!realStartTime && !realEndTime){ |
| | | return '--' |
| | | } |
| | | if(!realEndTime){ |
| | | const now = Math.floor(new Date().getTime()/1000) * 1000 |
| | | return this.calcRunningDuration(realStartTime*1000,now) |
| | | } |
| | | |
| | | return this.calcRunningDuration(realStartTime*1000,realEndTime*1000) |
| | | } |
| | | |
| | | let result = getInfo() |
| | | setInterval(() => { |
| | | d= getCha(); |
| | | result = getInfo(); |
| | | }, 6000); |
| | | return date?d:'--'; |
| | | return result; |
| | | }, |
| | | setInterCard(value, name, i) { |
| | | if (this.TasksCopy[i].Procedure.procedure[value]!=null) { |
| | |
| | | getProgressInfo() { |
| | | this.resprocInfoTimer=null |
| | | for (let i in this.TasksCopy){ |
| | | if(this.TasksCopy[i].Procedure.ID){ |
| | | getProgress({ |
| | | channel: Number(i), |
| | | procedureId: this.TasksCopy[i].Procedure.ID, |
| | | }).then((res) => { |
| | | if (res.code == 200) { |
| | | this.TasksCopy[i].finishNumber = res.data?.finishNumber ?? 0; |
| | |
| | | } |
| | | this.resprocInfoTimer=res; |
| | | }); |
| | | } |
| | | } |
| | | }, |
| | | // 设置 |
| | |
| | | path: "/set", |
| | | }); |
| | | }, |
| | | openParamsConfigModal(){ |
| | | this.paramsConfigIsShow=true |
| | | }, |
| | | closeParamsConfigModal(){ |
| | | this.paramsConfigIsShow=false |
| | | }, |
| | | // 右侧控制 |
| | | controlClick() { |
| | | if (this.Tasks.length > 0) { |