|
|
@@ -52,7 +52,7 @@
|
|
|
dictName="记录规则事项类型"
|
|
|
v-model="form.itemType"
|
|
|
@change="itemTypeChange"
|
|
|
- :disabled="reportWorkType == 4"
|
|
|
+ :disabled="form.reportWorkType == 4"
|
|
|
>
|
|
|
</DictSelection>
|
|
|
</el-form-item>
|
|
|
@@ -123,11 +123,11 @@
|
|
|
|
|
|
<header-title
|
|
|
title="基本信息"
|
|
|
- v-if="form.itemType != 1 && reportWorkType != 4"
|
|
|
+ v-if="form.itemType != 1 && form.reportWorkType != 4"
|
|
|
style="margin-top: 20px"
|
|
|
></header-title>
|
|
|
|
|
|
- <template v-if="form.itemType != 1 && reportWorkType != 4">
|
|
|
+ <template v-if="form.itemType != 1 && form.reportWorkType != 4">
|
|
|
<el-row>
|
|
|
<el-col v-if="form.itemType == 2" :span="8">
|
|
|
<el-form-item
|
|
|
@@ -302,7 +302,7 @@
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col v-if="reportWorkType == 2" :span="8">
|
|
|
+ <el-col v-if="form.reportWorkType == 2" :span="8">
|
|
|
<el-form-item label="产出物">
|
|
|
<el-select
|
|
|
v-model="form.outputType"
|
|
|
@@ -348,7 +348,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
- v-if="reportWorkType != 4"
|
|
|
+ v-if="form.reportWorkType != 4"
|
|
|
label="工序名称"
|
|
|
prop="produceTaskId"
|
|
|
>
|
|
|
@@ -378,9 +378,9 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="产品编码"
|
|
|
- :required="form.recordTemplateStyle != '3' && reportWorkType != 4"
|
|
|
+ :required="form.recordTemplateStyle != '3' && form.reportWorkType != 4"
|
|
|
:prop="
|
|
|
- form.recordTemplateStyle != '3' && reportWorkType != 4
|
|
|
+ form.recordTemplateStyle != '3' && form.reportWorkType != 4
|
|
|
? 'productCode'
|
|
|
: ''
|
|
|
"
|
|
|
@@ -400,9 +400,9 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="产品名称"
|
|
|
- :required="form.recordTemplateStyle != '3' && reportWorkType != 4"
|
|
|
+ :required="form.recordTemplateStyle != '3' && form.reportWorkType != 4"
|
|
|
:prop="
|
|
|
- form.recordTemplateStyle != '3' && reportWorkType != 4
|
|
|
+ form.recordTemplateStyle != '3' && form.reportWorkType != 4
|
|
|
? 'productName'
|
|
|
: ''
|
|
|
"
|
|
|
@@ -452,7 +452,7 @@
|
|
|
<el-form-item
|
|
|
label="要求生产数量"
|
|
|
:prop="
|
|
|
- form.recordTemplateStyle != '3' && reportWorkType != 4
|
|
|
+ form.recordTemplateStyle != '3' && form.reportWorkType != 4
|
|
|
? 'formingNum'
|
|
|
: ''
|
|
|
"
|
|
|
@@ -475,7 +475,7 @@
|
|
|
form.produceTaskId &&
|
|
|
form.produceTaskInstanceId &&
|
|
|
workOrderInfo &&
|
|
|
- reportWorkType == 2 &&
|
|
|
+ form.reportWorkType == 2 &&
|
|
|
form.itemType == 2
|
|
|
"
|
|
|
ref="materialRef"
|
|
|
@@ -526,7 +526,7 @@
|
|
|
</template>
|
|
|
|
|
|
<ele-pro-table
|
|
|
- v-if="form.itemType == 2 && reportWorkType != 4"
|
|
|
+ v-if="form.itemType == 2 && form.reportWorkType != 4"
|
|
|
v-loading="loading"
|
|
|
ref="table"
|
|
|
row-key="id"
|
|
|
@@ -679,7 +679,7 @@
|
|
|
<selectReleaseRules
|
|
|
ref="selectReleaseRulesRef"
|
|
|
@chooseRules="chooseReleaseRules"
|
|
|
- :notProduceTaskConfig="reportWorkType == 2"
|
|
|
+ :notProduceTaskConfig="form.reportWorkType == 2"
|
|
|
></selectReleaseRules>
|
|
|
|
|
|
<programRulesDialog
|
|
|
@@ -808,6 +808,13 @@
|
|
|
}
|
|
|
},
|
|
|
deep: true
|
|
|
+ },
|
|
|
+ reportWorkType: {
|
|
|
+ handler(newVal, oldVal) {
|
|
|
+ console.log('reportWorkType~~~', newVal, oldVal);
|
|
|
+ },
|
|
|
+ immediate: true,
|
|
|
+ deep: true
|
|
|
}
|
|
|
},
|
|
|
data() {
|
|
|
@@ -1072,6 +1079,7 @@
|
|
|
},
|
|
|
computed: {
|
|
|
reportWorkTypeName() {
|
|
|
+ console.log('reportWorkType~~~', this.reportWorkType);
|
|
|
switch (this.reportWorkType) {
|
|
|
case 1:
|
|
|
return '产前准备';
|
|
|
@@ -1171,12 +1179,14 @@
|
|
|
open(type, data, activeComp = 'main') {
|
|
|
console.log('data', type, data);
|
|
|
this.type = type;
|
|
|
- this.form.reportWorkType = this.reportWorkType;
|
|
|
+ // 优先使用传入数据中的 reportWorkType,否则使用 props 中的值
|
|
|
+ const currentReportWorkType = data.reportWorkType || this.reportWorkType;
|
|
|
+ this.form.reportWorkType = currentReportWorkType;
|
|
|
|
|
|
if (type == 'add') {
|
|
|
- this.title = `新增${this.reportWorkTypeName}事项`;
|
|
|
+ this.title = `新增${this.getReportWorkTypeName(currentReportWorkType)}事项`;
|
|
|
} else if (type == 'edit') {
|
|
|
- this.title = `编辑${this.reportWorkTypeName}事项`;
|
|
|
+ this.title = `编辑${this.getReportWorkTypeName(currentReportWorkType)}事项`;
|
|
|
this.form.workOrderId = data.workOrderId;
|
|
|
this.form.id = data.id;
|
|
|
console.log('this.form', this.form);
|
|
|
@@ -1190,7 +1200,7 @@
|
|
|
this.getRulesDetiasList(data.ruleId);
|
|
|
}
|
|
|
} else if (type == 'detail') {
|
|
|
- this.title = `${this.reportWorkTypeName}事项`;
|
|
|
+ this.title = `${this.getReportWorkTypeName(currentReportWorkType)}事项`;
|
|
|
this.form.workOrderId = data.workOrderId;
|
|
|
this.form.id = data.id;
|
|
|
if (data.processInstanceId) {
|
|
|
@@ -1209,6 +1219,21 @@
|
|
|
}
|
|
|
this.visible = true;
|
|
|
},
|
|
|
+ // 获取报工类型名称(辅助方法)
|
|
|
+ getReportWorkTypeName(type) {
|
|
|
+ switch (type) {
|
|
|
+ case 1:
|
|
|
+ return '产前准备';
|
|
|
+ case 2:
|
|
|
+ return '过程控制';
|
|
|
+ case 3:
|
|
|
+ return '产后检查';
|
|
|
+ case 4:
|
|
|
+ return '生产统计';
|
|
|
+ default:
|
|
|
+ return '';
|
|
|
+ }
|
|
|
+ },
|
|
|
// 查询详情
|
|
|
async getDetias() {
|
|
|
this.loading = true;
|
|
|
@@ -1329,7 +1354,7 @@
|
|
|
selectReleaseId() {
|
|
|
if (this.type == 'detail') return;
|
|
|
this.$refs.selectReleaseRulesRef.open(
|
|
|
- this.reportWorkType,
|
|
|
+ this.form.reportWorkType,
|
|
|
this.form.produceTaskId
|
|
|
);
|
|
|
},
|
|
|
@@ -1379,7 +1404,7 @@
|
|
|
// 获取工序列表
|
|
|
async getProductTaskList(id) {
|
|
|
// 生产统计不关联工序
|
|
|
- if (this.reportWorkType == 4) return;
|
|
|
+ if (this.form.reportWorkType == 4) return;
|
|
|
const data = await getTaskInstanceList(id);
|
|
|
console.log('data 工序列表', data);
|
|
|
this.produceTaskList = data.filter(
|
|
|
@@ -1468,12 +1493,12 @@
|
|
|
},
|
|
|
// 记录规则保存或者 一键报工
|
|
|
async releaseRulesSaveOrSubmit(type) {
|
|
|
- if (this.form.executeUsersIds.length == 0 && this.reportWorkType != 4) {
|
|
|
+ if (this.form.executeUsersIds.length == 0 && this.form.reportWorkType != 4) {
|
|
|
this.$message.warning('请选择执行人!');
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- if (this.form.duration <= 0 && this.reportWorkType != 4) {
|
|
|
+ if (this.form.duration <= 0 && this.form.reportWorkType != 4) {
|
|
|
this.$message.warning('工时必须大于0!');
|
|
|
return;
|
|
|
}
|
|
|
@@ -1482,7 +1507,7 @@
|
|
|
if (
|
|
|
type.includes('submit') &&
|
|
|
this.form.recordTemplateStyle != '3' &&
|
|
|
- this.reportWorkType != 4
|
|
|
+ this.form.reportWorkType != 4
|
|
|
) {
|
|
|
// 验证检查项目
|
|
|
const detailRequired = this.form.details.some((i) => {
|
|
|
@@ -1509,7 +1534,7 @@
|
|
|
}
|
|
|
|
|
|
//
|
|
|
- if (this.reportWorkType == 4) {
|
|
|
+ if (this.form.reportWorkType == 4) {
|
|
|
// 延迟 500ms 等待公式计算
|
|
|
await new Promise((resolve) => setTimeout(resolve, 700));
|
|
|
}
|
|
|
@@ -1675,7 +1700,7 @@
|
|
|
async getListByWorkOrderId(type = '') {
|
|
|
if (
|
|
|
!this.form.produceTaskId ||
|
|
|
- this.reportWorkType != 2 ||
|
|
|
+ this.form.reportWorkType != 2 ||
|
|
|
this.form.itemType != 2
|
|
|
)
|
|
|
return;
|