Browse Source

2025-10-11

订单排产-排产优化 样式优化
master
fengyuan_yang 3 months ago
parent
commit
d40ce101f9
  1. 88
      src/views/modules/schedule/com_schedule_order_expand.vue

88
src/views/modules/schedule/com_schedule_order_expand.vue

@ -3,51 +3,66 @@
<el-dialog v-drag width="1000px" class="customer-dialog" :title="titleCon" v-bind="$attrs" v-on="$listeners"> <el-dialog v-drag width="1000px" class="customer-dialog" :title="titleCon" v-bind="$attrs" v-on="$listeners">
<!-- 显示信息 --> <!-- 显示信息 -->
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: -5px;" > <el-form :inline="true" label-position="top" label-width="100px" style="margin-top: -5px;" >
<el-row style="width: 560px;">
<el-form-item :label=labels.orderNo>
<el-input v-model="pageData.orderNo" readonly="readonly" style="width: 120px"></el-input>
<!-- 第一行 -->
<el-row style="width: 960px;">
<el-form-item label="生产订单">
<el-input v-model="pageData.orderNo" readonly="readonly" style="width: 150px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label=labels.needDate> <el-form-item :label=labels.needDate>
<el-input v-model="pageData.needDate" readonly="readonly" style="width: 120px"></el-input>
<el-input v-model="pageData.needDate" readonly="readonly" style="width: 110px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label=labels.siteNo>
<el-input v-model="pageData.site" readonly="readonly" style="width: 120px"></el-input>
<el-form-item label="加工中心编码">
<el-input v-model="pageData.workCenterNo" readonly="readonly" style="width: 80px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label=labels.workCenterNo>
<el-input v-model="pageData.workCenterNo" readonly="readonly" style="width: 120px"></el-input>
<el-form-item label="加工中心名称">
<el-input v-model="pageData.workCenterDesc" readonly="readonly" style="width: 150px"></el-input>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row style="width: 560px;">
<el-form-item :label=labels.itemNo>
<el-input v-model="pageData.itemNo" readonly="readonly" style="width: 120px"></el-input>
<!-- 第二行 -->
<el-row style="width: 960px;">
<el-form-item label="工序号">
<el-input v-model="pageData.itemNo" readonly="readonly" style="width: 45px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label=labels.itemDesc>
<el-input v-model="pageData.itemDesc" readonly="readonly" style="width: 120px"></el-input>
<el-form-item label="工序名称" style="margin-left: -10px">
<el-input v-model="pageData.itemDesc" readonly="readonly" style="width: 100px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label=labels.waitScheduleQty>
<el-input v-model="pageData.qtyToSchedule" readonly="readonly" style="width: 120px"></el-input>
</el-form-item>
</el-row>
<el-row style="width: 560px;">
<el-form-item :label=labels.scheduledDate> <el-form-item :label=labels.scheduledDate>
<el-date-picker class="el-time-width" v-model="pageData.scheduleDate" value-format="yyyy-MM-dd">
<el-date-picker class="el-time-width" v-model="pageData.scheduleDate" value-format="yyyy-MM-dd" style="width: 110px">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item :label="''" style="margin-top: -5px;">
<el-form-item :label="''" style="margin-top: -5px;margin-left: 5px">
<el-checkbox v-model="pageData.specifiedTime" true-label="Y" false-label="N" style="margin-top: 28px; margin-right: -20px;" ></el-checkbox> <el-checkbox v-model="pageData.specifiedTime" true-label="Y" false-label="N" style="margin-top: 28px; margin-right: -20px;" ></el-checkbox>
<el-time-picker <el-time-picker
format="HH:mm" format="HH:mm"
arrow-control arrow-control
style="margin-top: 30px; width: 65px"
style="margin-top: 30px; width: 80px"
v-model="pageData.scheduleTime" v-model="pageData.scheduleTime"
value-format="HH:mm"> value-format="HH:mm">
</el-time-picker> </el-time-picker>
</el-form-item> </el-form-item>
<el-form-item label="已排产数" style="margin-left: -3px">
<el-input-number :controls="false" :step="0" v-model="pageData.qtyScheduled" readonly="readonly" style="width: 67px"></el-input-number>
</el-form-item>
<el-form-item label="可排产数">
<el-input-number :controls="false" :step="0" v-model="availableQty" readonly="readonly" class="available-qty-input" style="width: 67px"></el-input-number>
</el-form-item>
</el-row>
<!-- 第三行 -->
<el-row style="width: 960px;">
<el-form-item label="产品编码">
<el-input v-model="pageData.partNo" readonly="readonly" style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="产品名称">
<el-input v-model="pageData.partDesc" readonly="readonly" style="width: 287px"></el-input>
</el-form-item>
<el-form-item label="规格型号">
<el-input v-model="pageData.spec" readonly="readonly" style="width: 67px"></el-input>
</el-form-item>
</el-row> </el-row>
</el-form> </el-form>
<!-- 机台班次信息 --> <!-- 机台班次信息 -->
<el-main style="margin-left: 520px; margin-top: -150px; width: 452px;">
<el-main style="margin-left: 520px; margin-top: -155px; width: 452px;">
<el-table <el-table
height="130" height="130"
:data="resourceShiftList" :data="resourceShiftList"
@ -428,15 +443,20 @@ export default {
itemDesc: '', itemDesc: '',
resourceId: '', resourceId: '',
workCenterNo: '', workCenterNo: '',
workCenterDesc: '',
scheduleDate: this.dayjs(new Date()).format('YYYY-MM-DD'), scheduleDate: this.dayjs(new Date()).format('YYYY-MM-DD'),
scheduleTime: '08:30', scheduleTime: '08:30',
specifiedTime: 'N', specifiedTime: 'N',
needDate: '', needDate: '',
qtyToSchedule: 0, qtyToSchedule: 0,
qtyScheduled: 0,
scheduledQty: 0, scheduledQty: 0,
closeModal: 'Y', closeModal: 'Y',
calendarId: '', calendarId: '',
checkFlag: true
checkFlag: true,
partNo: '',
partDesc: '',
spec: ''
}, },
resourceShiftList: [], resourceShiftList: [],
orderScheduleList: [], orderScheduleList: [],
@ -1243,6 +1263,16 @@ export default {
mounted() { mounted() {
},
computed: {
// = -
availableQty() {
let totalScheduled = 0;
this.scheduleDetailList.forEach(item => {
totalScheduled += parseFloat(item.qtyRequired) || 0;
});
return parseFloat(this.pageData.qtyToSchedule || 0) - totalScheduled;
}
}, },
methods: { methods: {
@ -1272,9 +1302,14 @@ export default {
getShopOrderByCon(this.pageData).then(({data}) => { getShopOrderByCon(this.pageData).then(({data}) => {
// //
this.pageData.qtyToSchedule = data.row.qtyToSchedule; this.pageData.qtyToSchedule = data.row.qtyToSchedule;
this.pageData.qtyScheduled = data.row.qtyScheduled || 0;
this.pageData.needDate = data.row.needDate; this.pageData.needDate = data.row.needDate;
this.pageData.workCenterNo = data.row.workCenterNo; this.pageData.workCenterNo = data.row.workCenterNo;
this.pageData.workCenterDesc = data.row.workCenterDesc || '';
this.pageData.itemDesc = data.row.itemDesc; this.pageData.itemDesc = data.row.itemDesc;
this.pageData.partNo = data.row.partNo || '';
this.pageData.partDesc = data.row.partDesc || '';
this.pageData.spec = data.row.spec || '';
// //
this.getOrderAvailableResourceData(); this.getOrderAvailableResourceData();
}); });
@ -1740,4 +1775,11 @@ div.customer-el-card-blue {
margin: 0 10px; margin: 0 10px;
} }
/*可排产数样式 - 绿色加粗12号字体*/
.available-qty-input /deep/ .el-input__inner {
color: #67C23A !important;
font-weight: bold !important;
font-size: 12px !important;
}
</style> </style>
Loading…
Cancel
Save