|
@@ -82,7 +82,7 @@
|
|
|
<template slot-scope="{ row }">
|
|
|
<div v-for="obj in jsuanTime(row, item.id)" :key="obj.id">
|
|
|
<!-- 背景色条(10个)-->
|
|
|
- <div class="timeDom">
|
|
|
+ <div class="timeDom">
|
|
|
<template v-for="child in obj.child">
|
|
|
<div
|
|
|
v-if="child.isFull"
|
|
@@ -91,33 +91,35 @@
|
|
|
? 'timeItem tiGyActive'
|
|
|
: obj.flag == '4'
|
|
|
? 'timeItem tiActive '
|
|
|
- : 'timeItem tiOgActive'
|
|
|
+ : obj.flag == '2' || obj.flag == '3'
|
|
|
+ ? 'timeItem tiOgActive'
|
|
|
+ : 'timeItem'
|
|
|
"
|
|
|
></div>
|
|
|
<div v-else class="timeItem"></div>
|
|
|
</template>
|
|
|
</div>
|
|
|
<!-- 备注文字 -->
|
|
|
- <el-tooltip
|
|
|
- v-if="obj.bomDesc"
|
|
|
+ <el-tooltip v-for="tip in obj.tooltip"
|
|
|
+ v-if="tip.bomDesc && obj.flag!='0'"
|
|
|
class="item"
|
|
|
:content="
|
|
|
- obj.bomDesc + ' / ' + obj.procedureNo + ' / ' + obj.planTime
|
|
|
+ `${tip.bomDesc}/${tip.procedureNo}/${tip.planTime}${obj.flag=='2'?'/左相交':(obj.flag=='3'?'/右相交':'')}`
|
|
|
"
|
|
|
effect="dark"
|
|
|
placement="top-start"
|
|
|
>
|
|
|
<div
|
|
|
class="timeItemDesc"
|
|
|
- :style="{ left: obj.leftNums + '%' }"
|
|
|
- >
|
|
|
- <span class="bomDesc" :title="obj.bomDesc"
|
|
|
+ :style="{ left: tip.leftNums + '%' }"
|
|
|
+ >
|
|
|
+ <span class="bomDesc" :title="tip.bomDesc"
|
|
|
>{{
|
|
|
- obj.bomDesc ? obj.bomDesc.replace("产品零件", "") : ""
|
|
|
- }}({{ obj.procedureNo ? obj.procedureNo : "" }})</span
|
|
|
+ tip.bomDesc ? tip.bomDesc.replace("产品零件", "") : ""
|
|
|
+ }}({{ tip.procedureNo ? tip.procedureNo : "" }})</span
|
|
|
>
|
|
|
<div v-show="false" class="splanTime">
|
|
|
- {{ obj.splanTime ? obj.splanTime : "" }}
|
|
|
+ {{ tip.splanTime ? tip.splanTime : "" }}
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-tooltip>
|
|
@@ -213,7 +215,8 @@ export default {
|
|
|
bomDesc: "", // 零件的名称
|
|
|
leftNums: 6.66, // 文字偏移量
|
|
|
child: [],
|
|
|
- flag: "3", // 是否已经开始
|
|
|
+ tooltip: [],
|
|
|
+ flag: "0", // 是否已经开始
|
|
|
},
|
|
|
];
|
|
|
arr[0].child = JSON.parse(JSON.stringify(this.timeDomList));
|
|
@@ -222,11 +225,11 @@ export default {
|
|
|
if (row.children && row.children.length > 0) {
|
|
|
// 时间去。年月日部分"yyyy-MM-dd"
|
|
|
//let ymd = row.children[0].expectStartTime.substr(0,10);
|
|
|
- let ymd2 = time.substr(0, 10);
|
|
|
+ let ymd2 = time.substr(0, 10)
|
|
|
// cell的区间节点
|
|
|
row.children.map((item) => {
|
|
|
// 背景模块,开始时间
|
|
|
- let ymd = item.expectStartTime.substr(0, 10);
|
|
|
+ let ymd = item.expectStartTime.substr(0, 10)
|
|
|
let filedTime = this.getHourSecend(ymd, time.substr(11, 5));
|
|
|
let expectStartTime = this.getHourSecend(
|
|
|
ymd,
|
|
@@ -244,18 +247,14 @@ export default {
|
|
|
[filedTime, filedTime + 30],
|
|
|
[expectStartTime, expectEndTime]
|
|
|
);
|
|
|
- // cell【包含-startEnd】在时间段中
|
|
|
- if(flag!="0"){
|
|
|
- console.log(filedTime)
|
|
|
- console.log(filedTime + 30)
|
|
|
- console.log(expectStartTime)
|
|
|
- console.log(expectEndTime)
|
|
|
- console.log(flag)
|
|
|
- }
|
|
|
+ // cell【包含-startEnd】在时间段中
|
|
|
+ if(flag=="2" || flag=="3"){
|
|
|
+ console.log("时间点:",[filedTime, filedTime + 30], [expectStartTime, expectEndTime], flag, item.planTime, item.procedureNo);
|
|
|
+ }
|
|
|
+ arr[0].flag = flag
|
|
|
if (flag == "1") {
|
|
|
// 文字偏移量
|
|
|
- let leftNums = 0;
|
|
|
- // console.log("时间点:",[filedTime, filedTime + 30], [expectStartTime, expectEndTime], flag, item);
|
|
|
+ let leftNums = 0;
|
|
|
arr[0].child.forEach((obj, index) => {
|
|
|
let modal = filedTime + (index + 1) * 2;
|
|
|
// 小模块,【被包含】在起止时间区间
|
|
@@ -267,16 +266,7 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
- arr[0].planTime = item.planTime;
|
|
|
- arr[0].splanTime =
|
|
|
- item.expectStartTime.substr(11, 5) +
|
|
|
- "到" +
|
|
|
- item.expectEndTime.substr(11, 5);
|
|
|
- arr[0].procedureNo = item.procedureNo;
|
|
|
- arr[0].bomDesc = item.bomDesc;
|
|
|
- arr[0].count = leftNums - 1;
|
|
|
- arr[0].leftNums = (leftNums - 1) * 6.66;
|
|
|
- arr[0].flag = flag;
|
|
|
+ arr[0].tooltip.push({planTime:item.planTime, splanTime: item.expectStartTime.substr(11, 5) + "到" + item.expectEndTime.substr(11, 5),procedureNo: item.procedureNo, bomDesc:item.bomDesc, count:leftNums - 1, leftNums : (leftNums - 1) * 6.66, flag:item.flag})
|
|
|
}
|
|
|
// interval【有交集】终止点,在cell中,
|
|
|
if (flag == "2") {
|
|
@@ -304,15 +294,7 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
- arr[0].planTime = item.planTime;
|
|
|
- arr[0].splanTime =
|
|
|
- item.expectStartTime.substr(11, 5) +
|
|
|
- "到" +
|
|
|
- item.expectEndTime.substr(11, 5);
|
|
|
- arr[0].procedureNo = item.procedureNo;
|
|
|
- arr[0].bomDesc = item.bomDesc;
|
|
|
- arr[0].leftNums = (leftNums - 1) * 6.66;
|
|
|
- arr[0].flag = flag;
|
|
|
+ arr[0].tooltip.push({planTime:item.planTime, splanTime: item.expectStartTime.substr(11, 5) + "到" + item.expectEndTime.substr(11, 5),procedureNo: item.procedureNo, bomDesc:item.bomDesc, count:leftNums - 1, leftNums : (leftNums - 1) * 6.66, flag:item.flag})
|
|
|
}
|
|
|
|
|
|
// cell【完全包含】,比cell大的多
|
|
@@ -322,9 +304,7 @@ export default {
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
- }
|
|
|
- // console.log("[核心算法]的数据feildTime: ",objList);
|
|
|
- //console.log(arr)
|
|
|
+ }
|
|
|
return arr;
|
|
|
},
|
|
|
|
|
@@ -376,10 +356,8 @@ export default {
|
|
|
},
|
|
|
|
|
|
getHourSecend2(date){
|
|
|
- let d = new Date(date);
|
|
|
- // 把日期,统一转化成分钟数
|
|
|
- let seconds = d.getHours() * 60 + d.getMinutes();
|
|
|
- return seconds;
|
|
|
+ let d = new Date(date);
|
|
|
+ return d.getTime();
|
|
|
},
|
|
|
|
|
|
setTenant(val) {
|
|
@@ -421,11 +399,11 @@ export default {
|
|
|
.then((response) => {
|
|
|
const res = response.data;
|
|
|
if (res.isSuccess) {
|
|
|
- this.tableData = res.data;
|
|
|
- this.titleData = res.data.titleList.filter(item => {
|
|
|
- return this.getHourSecend2(item.text) > this.getHourSecend2(this.tenant.createTime);
|
|
|
- })
|
|
|
- console.log(this.titleData)
|
|
|
+ this.tableData = res.data;
|
|
|
+ //this.titleData = res.data.titleList
|
|
|
+ this.titleData = res.data.titleList.filter(item => {
|
|
|
+ return this.getHourSecend2(item.text) > this.getHourSecend2(this.tenant.createTime);
|
|
|
+ })
|
|
|
}
|
|
|
// eslint-disable-next-line no-return-assign
|
|
|
})
|