|
|
|
@ -6,7 +6,7 @@
|
|
|
|
|
</el-divider>
|
|
|
|
|
<el-row :gutter="10">
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="工单号:">{{ form.orderCode }}</el-form-item>
|
|
|
|
|
<el-form-item label="任务编号:">{{ form.orderCode }}</el-form-item>
|
|
|
|
|
<el-form-item label="成品编码:">{{ form.materialCode }}</el-form-item>
|
|
|
|
|
<el-form-item label="计划开始时间:">{{ parseTime(form.planBeginTime) }}</el-form-item>
|
|
|
|
|
<el-form-item label="计划数量/已派工数量/完成数量:" label-width="220px">
|
|
|
|
@ -21,6 +21,13 @@
|
|
|
|
|
<el-form-item label="工艺路线:">{{ form.dispatchName }}</el-form-item>
|
|
|
|
|
<el-form-item label="成品名称:">{{ form.materialName }}</el-form-item>
|
|
|
|
|
<el-form-item label="计划结束时间:">{{ parseTime(form.planEndTime) }}</el-form-item>
|
|
|
|
|
<el-form-item label="任务状态:">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<dict-tag :options="dict.type.plan_status" :value="form.orderStatus"/>
|
|
|
|
|
</template>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
|
|
|
|
@ -29,7 +36,9 @@
|
|
|
|
|
|
|
|
|
|
<el-row :gutter="10" class="mb8">
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
<el-button icon="el-icon-plus" size="mini" type="primary" @click="handleAddMesProductPlan">新增
|
|
|
|
|
<el-button icon="el-icon-plus" size="mini" type="primary" @click="handleAddMesProductPlan"
|
|
|
|
|
v-if="form.orderStatus!==ORDER_STATUS.FINISHED && form.orderStatus!=ORDER_STATUS.RECALLED && form.orderStatus!=ORDER_STATUS.DELETED">
|
|
|
|
|
新增
|
|
|
|
|
</el-button>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
@ -48,7 +57,7 @@
|
|
|
|
|
>
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button type="danger" icon="el-icon-delete" @click="handleDeleteMesProductPlan(scope)"
|
|
|
|
|
v-if="scope.row.deleteFlag != null && scope.row.deleteFlag == '1'"></el-button>
|
|
|
|
|
v-if="scope.row.deleteFlag != null && scope.row.deleteFlag === '1'"></el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
@ -56,9 +65,14 @@
|
|
|
|
|
width="80"
|
|
|
|
|
type=""
|
|
|
|
|
>
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<template slot-scope="scope" v-if="">
|
|
|
|
|
<el-button type="primary" icon="el-icon-plus" @click="addProcessUser(scope)"
|
|
|
|
|
v-if="scope.row.children != null && scope.row.children !== undefined"></el-button>
|
|
|
|
|
v-if="(scope.row.children != null && scope.row.children !== undefined)
|
|
|
|
|
&& scope.row.processType!== PROCESS_TYPE.AUTO && scope.row.displayFlag !== DISPLAY_FLAG.NO"
|
|
|
|
|
:disabled="scope.row.addFlag !=='1'
|
|
|
|
|
|| form.orderStatus===ORDER_STATUS.FINISHED || form.orderStatus===ORDER_STATUS.RECALLED || form.orderStatus===ORDER_STATUS.DELETED" >
|
|
|
|
|
|
|
|
|
|
</el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
@ -116,13 +130,15 @@
|
|
|
|
|
<el-table-column align="center" label="派工标准工时(小时)" prop="productionTime" width="180">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-input-number style="width:150px;" :min="0" v-model="scope.row.productionTime"
|
|
|
|
|
:disabled="scope.row.processType === PROCESS_TYPE.MANUAL && scope.row.children != null && scope.row.children !== undefined"/>
|
|
|
|
|
:disabled="(scope.row.processType === PROCESS_TYPE.MANUAL && scope.row.children != null && scope.row.children !== undefined)
|
|
|
|
|
|| scope.row.planStatus=== PLAN_STATUS.FINISHED"/>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column align="center" label="计划开始时间" prop="planBeginTime" width="230">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-date-picker v-model="scope.row.planBeginTime" style="width:200px;"
|
|
|
|
|
:disabled="scope.row.processType === PROCESS_TYPE.MANUAL && scope.row.children != null && scope.row.children !== undefined"
|
|
|
|
|
:disabled="(scope.row.processType === PROCESS_TYPE.MANUAL && scope.row.children != null && scope.row.children !== undefined)
|
|
|
|
|
|| scope.row.planStatus=== PLAN_STATUS.FINISHED"
|
|
|
|
|
clearable
|
|
|
|
|
placeholder="请选择计划开始时间"
|
|
|
|
|
type="datetime" value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
@ -132,7 +148,8 @@
|
|
|
|
|
<el-table-column align="center" label="计划完成时间" prop="planEndTime" width="230">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-date-picker v-model="scope.row.planEndTime" style="width:200px;"
|
|
|
|
|
:disabled="scope.row.processType === PROCESS_TYPE.MANUAL && scope.row.children != null && scope.row.children !== undefined"
|
|
|
|
|
:disabled="(scope.row.processType === PROCESS_TYPE.MANUAL && scope.row.children != null && scope.row.children !== undefined)
|
|
|
|
|
|| scope.row.planStatus=== PLAN_STATUS.FINISHED"
|
|
|
|
|
clearable
|
|
|
|
|
placeholder="请选择计划完成时间"
|
|
|
|
|
type="datetime" value-format="yyyy-MM-dd HH:mm:ss"/>
|
|
|
|
@ -141,7 +158,8 @@
|
|
|
|
|
|
|
|
|
|
<el-table-column align="center" label="状态" prop="planStatus" width="150">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-select v-model="scope.row.planStatus" :disabled="true" placeholder="请选择状态">
|
|
|
|
|
<el-select v-model="scope.row.planStatus" :disabled="true" placeholder="请选择状态"
|
|
|
|
|
v-if="scope.row.children == null || scope.row.children === undefined">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.product_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
@ -172,13 +190,23 @@
|
|
|
|
|
>SOP
|
|
|
|
|
</el-button>
|
|
|
|
|
|
|
|
|
|
<el-button
|
|
|
|
|
icon="el-icon-lock"
|
|
|
|
|
size="mini"
|
|
|
|
|
type="primary"
|
|
|
|
|
@click="handleApplyRawOutstock(scope.row)"
|
|
|
|
|
v-if="scope.row.processType === PROCESS_TYPE.AUTO && scope.row.planId!=null && scope.row.planId!==''"
|
|
|
|
|
>投料
|
|
|
|
|
</el-button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-button
|
|
|
|
|
icon="el-icon-delete"
|
|
|
|
|
size="mini"
|
|
|
|
|
type="danger"
|
|
|
|
|
@click="handleDeleteDispatchUser(scope.row)"
|
|
|
|
|
v-if="(scope.row.children == null || scope.row.children == undefined)
|
|
|
|
|
&& (scope.row.planStatus === PLAN_STATUS.STARTED || scope.row.planStatus === PLAN_STATUS.DISPATCHED)"
|
|
|
|
|
v-if="(scope.row.children == null || false) "
|
|
|
|
|
:disabled = "(scope.row.planStatus !== PLAN_STATUS.TO_DISPATCH && scope.row.planStatus !== PLAN_STATUS.DISPATCHED) || form.orderStatus===ORDER_STATUS.FINISHED || form.orderStatus===ORDER_STATUS.RECALLED || form.orderStatus===ORDER_STATUS.DELETED"
|
|
|
|
|
>删除
|
|
|
|
|
</el-button>
|
|
|
|
|
|
|
|
|
@ -190,7 +218,10 @@
|
|
|
|
|
</el-form>
|
|
|
|
|
<el-form label-width="100px">
|
|
|
|
|
<el-form-item style="text-align: center;margin-left:-100px;margin-top:10px;">
|
|
|
|
|
<el-button type="primary" @click="submitForm()">提交</el-button>
|
|
|
|
|
<el-button type="primary" @click="submitForm()"
|
|
|
|
|
v-if="form.orderStatus!==ORDER_STATUS.FINISHED && form.orderStatus!==ORDER_STATUS.RECALLED && form.orderStatus!==ORDER_STATUS.DELETED">
|
|
|
|
|
提交
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button @click="close()">返回</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
@ -331,6 +362,12 @@
|
|
|
|
|
/>
|
|
|
|
|
</el-dialog>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 投料信息对话框 -->
|
|
|
|
|
<el-dialog title="投料" :visible.sync="applyRawOutstockOpen" append-to-body>
|
|
|
|
|
<apply-raw-outstock ref="applyRawOutstockRef" :defineData="productPlanData"
|
|
|
|
|
v-if="applyRawOutstockOpen"></apply-raw-outstock>
|
|
|
|
|
</el-dialog>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
@ -347,7 +384,7 @@ import {
|
|
|
|
|
} from "@//api/mes/productplan";
|
|
|
|
|
import {deepClone} from "@//utils/index";
|
|
|
|
|
import {getToken} from "@//utils/auth";
|
|
|
|
|
|
|
|
|
|
import applyRawOutstock from '@//views/wms/common/applyRawOutstock.vue';
|
|
|
|
|
|
|
|
|
|
let id = 0
|
|
|
|
|
let deepSearch = (arr, target) => {
|
|
|
|
@ -372,7 +409,10 @@ let deepSearch = (arr, target) => {
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
name: "productPlanEdit",
|
|
|
|
|
dicts: ['product_status', 'mes_dispatch_flag'],
|
|
|
|
|
dicts: ['plan_status','product_status', 'mes_dispatch_flag'],
|
|
|
|
|
components: {
|
|
|
|
|
'apply-raw-outstock': applyRawOutstock,
|
|
|
|
|
},
|
|
|
|
|
props: {
|
|
|
|
|
value: [String, Object, Array, Number],
|
|
|
|
|
// 文件数量限制
|
|
|
|
@ -421,10 +461,14 @@ export default {
|
|
|
|
|
//待删除的生产计划ID
|
|
|
|
|
toDeletedPlanIds: [],
|
|
|
|
|
|
|
|
|
|
applyRawOutstockOpen: false,
|
|
|
|
|
productPlanData: {},
|
|
|
|
|
// 表详细信息
|
|
|
|
|
info: {},
|
|
|
|
|
// 表单参数
|
|
|
|
|
form: {},
|
|
|
|
|
//自动化工序标识(2楼和3楼)
|
|
|
|
|
autoProcessFlag: false,
|
|
|
|
|
// 表单校验
|
|
|
|
|
rules: {
|
|
|
|
|
productOrderId: [
|
|
|
|
@ -478,7 +522,10 @@ export default {
|
|
|
|
|
MANUAL: '1',
|
|
|
|
|
AUTO: '3',
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
DISPLAY_FLAG: {
|
|
|
|
|
YES: '1',
|
|
|
|
|
NO: '0',
|
|
|
|
|
},
|
|
|
|
|
PLAN_STATUS: {
|
|
|
|
|
TO_DISPATCH: '0',//待派工
|
|
|
|
|
DISPATCHED: '1',//已派工
|
|
|
|
@ -486,8 +533,17 @@ export default {
|
|
|
|
|
FINISHED: '3' //已完成
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
SALE_TYPE:{
|
|
|
|
|
INTERNAL:'2',//对内生产
|
|
|
|
|
ORDER_STATUS: {
|
|
|
|
|
TO_PUBLISHED: '0',//待发布
|
|
|
|
|
PUBLISHED: '1',//已发布
|
|
|
|
|
FINISHED: '2',//已完成
|
|
|
|
|
STARTED: '3',//已开始
|
|
|
|
|
PAUSE: '4',//已暂停
|
|
|
|
|
RECALLED: '8',//已撤回
|
|
|
|
|
DELETED: '9',//已删除
|
|
|
|
|
},
|
|
|
|
|
SALE_TYPE: {
|
|
|
|
|
INTERNAL: '2',//对内生产
|
|
|
|
|
},
|
|
|
|
|
id: 1,
|
|
|
|
|
|
|
|
|
@ -524,10 +580,7 @@ export default {
|
|
|
|
|
// this.mesProductPlanList.push(e);
|
|
|
|
|
// })
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
groupProductPlans(productPlans) {
|
|
|
|
@ -548,6 +601,7 @@ export default {
|
|
|
|
|
// console.log(processId + ": " + JSON.stringify(groupedProductPlans[processId]));
|
|
|
|
|
let obj = {};
|
|
|
|
|
|
|
|
|
|
//每个派工单第一个工序才显示删除按钮
|
|
|
|
|
let dispatchCode = dispatchCodeProcessId.split("-")[0];
|
|
|
|
|
if (!firstDispatch[dispatchCode]) {
|
|
|
|
|
firstDispatch[dispatchCode] = "1";
|
|
|
|
@ -556,24 +610,33 @@ export default {
|
|
|
|
|
|
|
|
|
|
obj.id = this.id
|
|
|
|
|
this.id = this.id + 1;
|
|
|
|
|
obj.addFlag = "0";
|
|
|
|
|
let i = 0;
|
|
|
|
|
let processType;
|
|
|
|
|
productPlansByDispatch.forEach(groupedProductPlan => {
|
|
|
|
|
if(groupedProductPlan.planStatus !== this.PLAN_STATUS.FINISHED){
|
|
|
|
|
obj.addFlag = "1";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
processType = groupedProductPlan.processType;
|
|
|
|
|
groupedProductPlan.id = this.id;
|
|
|
|
|
this.id = this.id + 1;
|
|
|
|
|
groupedProductPlan.productionTime = groupedProductPlan.productionTime / 60 / 60;
|
|
|
|
|
groupedProductPlan.productionTime = parseFloat((groupedProductPlan.productionTime / 60 / 60).toFixed(1));
|
|
|
|
|
obj.sopId = groupedProductPlan.sopId;
|
|
|
|
|
obj.attachId = groupedProductPlan.attachId;
|
|
|
|
|
obj.productionTime = parseFloat((groupedProductPlan.processProductionTime / 60 / 60).toFixed(1));
|
|
|
|
|
|
|
|
|
|
if (i === 0 || groupedProductPlan.processType !== this.PROCESS_TYPE.MANUAL) {
|
|
|
|
|
obj.dispatchCode = groupedProductPlan.dispatchCode;
|
|
|
|
|
obj.planCode = groupedProductPlan.planCode;
|
|
|
|
|
obj.dispatchAmount = groupedProductPlan.dispatchAmount;
|
|
|
|
|
obj.processId = groupedProductPlan.processId;
|
|
|
|
|
obj.processName = groupedProductPlan.processName;
|
|
|
|
|
obj.lastProcessId = groupedProductPlan.lastProcessId;
|
|
|
|
|
obj.processType = groupedProductPlan.processType;
|
|
|
|
|
obj.processOrder = groupedProductPlan.processOrder;
|
|
|
|
|
obj.displayFlag = groupedProductPlan.displayFlag;
|
|
|
|
|
obj.finalProcessFlag = groupedProductPlan.finalProcessFlag;
|
|
|
|
|
|
|
|
|
|
obj.planBeginTime = this.form.planBeginTime;
|
|
|
|
|
obj.planEndTime = this.form.planEndTime;
|
|
|
|
@ -592,7 +655,7 @@ export default {
|
|
|
|
|
let cloneObj = deepClone(obj);
|
|
|
|
|
cloneObj.id = this.id
|
|
|
|
|
cloneObj.planId = groupedProductPlan.planId;
|
|
|
|
|
cloneObj.productionTime = groupedProductPlan.productionTime / 60 / 60;
|
|
|
|
|
cloneObj.productionTime = parseFloat((groupedProductPlan.productionTime / 60 / 60).toFixed(1));
|
|
|
|
|
this.id = this.id + 1;
|
|
|
|
|
cloneObj.children = [];
|
|
|
|
|
this.mesProductPlanList.push(cloneObj);
|
|
|
|
@ -619,7 +682,19 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
addProcessUser(scope) {
|
|
|
|
|
let finishStatus = this.PLAN_STATUS.FINISHED
|
|
|
|
|
const filterPlanList = this.mesProductPlanList.filter(function (item) {
|
|
|
|
|
return scope.row.dispatchCode + "-" + scope.row.processId === item.dispatchCode + "-" + item.processId
|
|
|
|
|
&& item.planStatus !== finishStatus;
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
if (filterPlanList.length <= 0) {
|
|
|
|
|
this.$modal.msgError("此工序已经完成,不能添加");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
let data = deepSearch(this.mesProductPlanList, scope.row.id)?.[0]
|
|
|
|
|
let id = this.id + 1
|
|
|
|
|
this.id += 1;
|
|
|
|
@ -628,6 +703,7 @@ export default {
|
|
|
|
|
this.$set(data.children, data.children.length, {
|
|
|
|
|
id: id,
|
|
|
|
|
processId: scope.row.processId,
|
|
|
|
|
productionTime: scope.row.productionTime,
|
|
|
|
|
planStatus: this.PLAN_STATUS.DISPATCHED,
|
|
|
|
|
userId: ""
|
|
|
|
|
})
|
|
|
|
@ -636,6 +712,7 @@ export default {
|
|
|
|
|
{
|
|
|
|
|
id: id,
|
|
|
|
|
processId: scope.row.processId,
|
|
|
|
|
productionTime: scope.row.productionTime,
|
|
|
|
|
planStatus: this.PLAN_STATUS.DISPATCHED,
|
|
|
|
|
userId: "",
|
|
|
|
|
}
|
|
|
|
@ -680,11 +757,13 @@ export default {
|
|
|
|
|
for (let j = 0; j < e.children.length; j++) {
|
|
|
|
|
let processUser = e.children[j];
|
|
|
|
|
let toUpdatedProductPlan = deepClone(e);
|
|
|
|
|
|
|
|
|
|
if (processUser.userId && processUser.userId !== '') {
|
|
|
|
|
toUpdatedProductPlan.userId = processUser.userId;
|
|
|
|
|
toUpdatedProductPlan.planBeginTime = processUser.planBeginTime;
|
|
|
|
|
toUpdatedProductPlan.planEndTime = processUser.planEndTime;
|
|
|
|
|
toUpdatedProductPlan.planId = processUser.planId;
|
|
|
|
|
toUpdatedProductPlan.planStatus = processUser.planStatus;
|
|
|
|
|
toUpdatedProductPlan.attachId = e.attachId;
|
|
|
|
|
toUpdatedProductPlan.sopId = e.sopId;
|
|
|
|
|
toUpdatedProductPlan.children = null;
|
|
|
|
@ -697,7 +776,7 @@ export default {
|
|
|
|
|
dispatchFlag = true;
|
|
|
|
|
} else {
|
|
|
|
|
this.$modal.msgError(undispathDesc);
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
@ -710,7 +789,6 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 校验派工数量(已派工数量 + 派工数量 <= 计划数量)
|
|
|
|
|
// 按照processId分组,所有分组的planAmount之和是否相等,相等后输出planAmount之和的值
|
|
|
|
|
let dispatchAmountErrorMsg = "";
|
|
|
|
@ -780,6 +858,22 @@ export default {
|
|
|
|
|
this.$modal.confirm('是否确认删除生产派工单号为"' + dispatchCode + '"的数据项?').then(function () {
|
|
|
|
|
return true;
|
|
|
|
|
}).then(() => {
|
|
|
|
|
if(this.form.orderStatus === this.ORDER_STATUS.RECALLED){
|
|
|
|
|
this.$modal.msgError("此生产任务已经撤回,不能删除") ;
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(this.form.orderStatus === this.ORDER_STATUS.FINISHED){
|
|
|
|
|
this.$modal.msgError("此生产任务已经完成,不能删除") ;
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(this.form.orderStatus === this.ORDER_STATUS.DELETED){
|
|
|
|
|
this.$modal.msgError("此生产任务已经删除,不能删除") ;
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (scope.row.newFlag != null || scope.row.newFlag === '1') {
|
|
|
|
|
//新增删除
|
|
|
|
|
this.mesProductPlanList = this.mesProductPlanList.filter(function (item) {
|
|
|
|
@ -862,16 +956,17 @@ export default {
|
|
|
|
|
obj.processType = e.processType;
|
|
|
|
|
obj.processOrder = e.processOrder;
|
|
|
|
|
obj.finalProcessFlag = e.finalProcessFlag;
|
|
|
|
|
obj.productionTime = 0;
|
|
|
|
|
obj.productionTime = e.productionTime ? parseFloat((e.productionTime / 60 / 60).toFixed(1)) : 0;
|
|
|
|
|
|
|
|
|
|
obj.planBeginTime = this.form.planBeginTime;
|
|
|
|
|
obj.planEndTime = this.form.planEndTime;
|
|
|
|
|
obj.planStatus = '1';
|
|
|
|
|
// obj.dispatchAmount = this.form.planAmount - this.form.dispatchAmount;
|
|
|
|
|
obj.dispatchFlag = null;
|
|
|
|
|
|
|
|
|
|
if(this.form.saleType === this.SALE_TYPE.INTERNAL){
|
|
|
|
|
if (this.form.saleType === this.SALE_TYPE.INTERNAL) {
|
|
|
|
|
obj.materialId = this.form.produceMaterialId;
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
obj.materialId = this.form.materialId;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -896,7 +991,8 @@ export default {
|
|
|
|
|
obj.children = [{
|
|
|
|
|
id: this.id,
|
|
|
|
|
processId: obj.processId,
|
|
|
|
|
planStatus: this.PLAN_STATUS.DISPATCHED
|
|
|
|
|
planStatus: this.PLAN_STATUS.DISPATCHED,
|
|
|
|
|
productionTime: obj.productionTime
|
|
|
|
|
}]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1039,7 +1135,7 @@ export default {
|
|
|
|
|
(res) => {
|
|
|
|
|
// 存储附件信息主键
|
|
|
|
|
let groupAttachFile = {};
|
|
|
|
|
groupAttachFile.dispatchCode = this.addProductPlanObject.dispatchCode;
|
|
|
|
|
groupAttachFile.dispatchCode = this.addProductPlanObject.dispatchCode;
|
|
|
|
|
groupAttachFile.processId = this.addProductPlanObject.processId;
|
|
|
|
|
groupAttachFile.attachId = res.attachId;
|
|
|
|
|
groupAttachFile.attachPath = res.imgUrl;
|
|
|
|
@ -1149,8 +1245,16 @@ export default {
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
,
|
|
|
|
|
handleApplyRawOutstock(row) {
|
|
|
|
|
if (row.processType === this.PROCESS_TYPE.AUTO) {
|
|
|
|
|
this.applyRawOutstockOpen = true;
|
|
|
|
|
this.productPlanData.planCode = row.planCode;
|
|
|
|
|
this.productPlanData.planId = row.planId;
|
|
|
|
|
this.productPlanData.dispatchAmount = row.dispatchAmount;
|
|
|
|
|
this.productPlanData.saleOrderId = this.form.saleOrderId;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
mounted() {
|
|
|
|
|
}
|
|
|
|
|