排产看板样式优化和排产异常字段调整

dev-scheduling
zhangdi 3 days ago
parent a488488a6d
commit f86eb11ff3
  1. 112
      src/views/productionSchedulingPlan/schedulingDashboard/index.vue
  2. 2
      src/views/productionSchedulingPlan/schedulingException/index.vue

@ -174,16 +174,20 @@
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<div class="info-item-txt info-item-info"> <div class="info-item-txt info-item-info">
<span style="font-weight: 600">{{ order.woCode }}</span <span class="order-code" style="font-weight: 600">{{ order.woCode }}</span>
>/ <span class="part-code">{{ order.partCode }}</span>
<span>{{ order.partCode }}</span>
</div> </div>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<div class="info-item-txt info-item-info"> <div class="info-item-txt info-item-orderInfo">
{{ order.batchNo }}<i>&nbsp;/&nbsp;</i>{{ order.makeQty }}<i>&nbsp;/&nbsp;</i <div class="info-item-content">
>{{ order.productIdent }}<i v-if="order.priorityAps != ''">&nbsp;/&nbsp;</i <span class="batch-no">{{ order.batchNo }}</span>
>{{ order.priorityAps }} <span class="make-qty">{{ order.makeQty }}</span>
<span class="product-ident">{{ order.productIdent }}</span>
<span v-if="order.priorityAps != ''" class="priority-aps">{{
order.priorityAps
}}</span>
</div>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
@ -333,14 +337,7 @@
v-if="getWidthPercent(task.planStartTime, task.planEndTime) < 1" v-if="getWidthPercent(task.planStartTime, task.planEndTime) < 1"
class="task-overlay-text" class="task-overlay-text"
:style="{ :style="{
top: `${ top: `${getNarrowTaskOffsetByLayer(layerIndex)}px`,
-20 -
getNarrowTaskOffset(
order.woCode,
layer.findIndex(t => t === task),
layerIndex
)
}px`,
}" }"
> >
{{ task.processName }} {{ task.processName }}
@ -511,6 +508,16 @@ export default {
handleLeftScrollBound: null, handleLeftScrollBound: null,
}; };
}, },
watch: {
//
'$route.query': {
handler(newQuery) {
console.log('参数变化:', newQuery);
this.handleParamsChange();
},
immediate: true,
},
},
computed: { computed: {
// Vue Router // Vue Router
tsId() { tsId() {
@ -708,21 +715,12 @@ export default {
} }
}, },
}, },
watch: {
//
'$route.query': {
handler(newQuery) {
console.log('参数变化:', newQuery);
this.handleParamsChange();
},
immediate: true
}
},
mounted() { mounted() {
this.getSelectTeam(); this.getSelectTeam();
this.getSelectEquip(); this.getSelectEquip();
this.getProcessSet(); this.getProcessSet();
this.updateTime(); // this.updateTime();
this.updateTimeAxis(); this.updateTimeAxis();
this.$nextTick(() => { this.$nextTick(() => {
this.calcCurrentTimePosition(); this.calcCurrentTimePosition();
@ -735,7 +733,6 @@ export default {
} }
}); });
// 线 // 线
// setInterval(() => { // setInterval(() => {
// this.calcCurrentTimePosition(); // this.calcCurrentTimePosition();
@ -756,18 +753,17 @@ export default {
} }
}, },
methods: { methods: {
//
getNarrowTaskOffsetByLayer(layerIndex) {
//
const offset = layerIndex % 2 === 0 ? -20 : 15; // -20px 5px
return offset;
},
handleParamsChange() { handleParamsChange() {
// //
console.log('接收到的参数:', { this.formLabelAlign.teamId = this.tsId;
tsId: this.tsId, this.formLabelAlign.teamName = this.tsName;
tsName: this.tsName, this.updateTime();
userId: this.userId,
userName: this.userName,
timestamp: this.timestamp
});
this.formLabelAlign.teamId = this.tsId
this.formLabelAlign.teamName = this.tsName
// //
this.getData(); this.getData();
}, },
@ -886,7 +882,6 @@ export default {
if (this.legendStatus.pending) { if (this.legendStatus.pending) {
this.formLabelAlign.planStatusList.push('1'); this.formLabelAlign.planStatusList.push('1');
} }
this.handleParamsChange()
this.getData(); this.getData();
}, },
@ -1896,4 +1891,45 @@ export default {
font-size: 10px; font-size: 10px;
white-space: nowrap; white-space: nowrap;
} }
.info-item-content {
display: flex;
width: 100%;
}
/* 左侧信息颜色区分 */
.order-code {
color: #1a73e8; /* 谷歌蓝 - 专业稳重 */
font-weight: bold;
}
.part-code {
color: #34a853; /* 谷歌绿 - 清新自然 */
font-weight: bold;
}
.batch-no {
color: #fbbc05; /* 谷歌黄 - 温暖明亮 */
font-weight: bold;
flex: 0 0 100px; /* 固定宽度80px,不伸缩 */
}
.make-qty {
color: #ea4335; /* 谷歌红 - 醒目突出 */
font-weight: bold;
flex: 1; /* 均匀分配剩余空间 */
}
.product-ident {
color: #9c27b0; /* 紫色 - 优雅独特 */
font-weight: bold;
flex: 1; /* 均匀分配剩余空间 */
}
.priority-aps {
color: #ff6d01; /* 橙色 - 温暖活力 */
font-weight: bold;
flex: 0 0 90px; /* 固定宽度80px,不伸缩 */
text-align:right;
padding-right:15px
}
</style> </style>

@ -114,7 +114,7 @@ export default {
// span: 12, // span: 12,
// }, // },
{ {
label: '调度员', label: '计划员',
prop: 'planUser', prop: 'planUser',
search: false, search: false,
sortable: true, sortable: true,

Loading…
Cancel
Save