排产代码提交

dev-scheduling
zhangdi 6 days ago
parent 0e1b713742
commit 90c6031f56
  1. 57
      src/views/productionSchedulingPlan/schedulingDashboard/index.vue

@ -35,7 +35,12 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="时间:"> <el-form-item label="时间:">
<el-date-picker v-model="formLabelAlign.startTime" type="date" placeholder="选择日期"> <el-date-picker
v-model="formLabelAlign.startTime"
type="date"
value-format="YYYY-MM-DD"
placeholder="选择日期"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -248,9 +253,7 @@
<li class="detail-item"> <li class="detail-item">
<span class="label">状态</span> <span class="label">状态</span>
<span class="value"> <span class="value">
<el-tag :type="tooltipData.status">{{ <el-tag :type="tooltipData.status">{{ tooltipData.status || '未知' }}</el-tag>
tooltipData.status || '未知'
}}</el-tag>
</span> </span>
</li> </li>
</ul> </ul>
@ -270,7 +273,7 @@ export default {
searchType: '', searchType: '',
formLabelAlign: { formLabelAlign: {
type: '1', // type: '1', //
startTime: '', // startTime: null, //
teamName: '', // teamName: '', //
equipName: '', // equipName: '', //
woCode: '', // woCode: '', //
@ -313,6 +316,7 @@ export default {
}, },
mounted() { mounted() {
this.searchType = this.formLabelAlign.type; this.searchType = this.formLabelAlign.type;
this.formLabelAlign.startTime = new Date().toISOString().substr(0, 10);
this.getData(); this.getData();
}, },
methods: { methods: {
@ -474,6 +478,49 @@ export default {
hideTooltip() { hideTooltip() {
this.tooltipVisible = false; this.tooltipVisible = false;
}, },
// methods
getLayeredTasks(device) {
const tasks = this.getDeviceTasks(device);
if (!tasks.length) return [];
//
const sortedTasks = [...tasks].sort((a, b) => {
return this.timeToMinutes(a.startTime) - this.timeToMinutes(b.startTime);
});
const layers = [];
sortedTasks.forEach(task => {
//
let placed = false;
for (let i = 0; i < layers.length; i++) {
const lastTask = layers[i][layers[i].length - 1];
if (this.timeToMinutes(task.startTime) >= this.timeToMinutes(lastTask.endTime)) {
layers[i].push(task);
placed = true;
break;
}
}
if (!placed) {
layers.push([task]);
}
});
return layers;
},
//
getLayerOffset(layerIndex, totalLayers) {
if (totalLayers <= 1) return 0;
// = /
const layerHeight = this.rowHeight / totalLayers;
return layerIndex * layerHeight + 2; // 2px
},
//
getLayerTaskHeight(totalLayers) {
if (totalLayers <= 1) return this.rowHeight - 4; // 4px
return this.rowHeight / totalLayers - 4;
},
}, },
}; };
</script> </script>

Loading…
Cancel
Save