工艺任务编制问题修改

dev-scheduling
zhangdi 4 weeks ago
parent 3148c89f60
commit 258e37fa55
  1. 6
      src/views/processManagement/components/processMainte/partDetails.vue
  2. 267
      src/views/processManagement/components/processMainte/processPlanning.vue
  3. 1
      src/views/processManagement/components/processMainte/reworkProcessPlanning.vue
  4. 2
      src/views/processManagement/taskProcessing.vue

@ -9,8 +9,8 @@
工艺版本<el-select
v-model="version"
placeholder="请输入"
filterable
@change="versionChange()"
style="width:150px"
>
<el-option
v-for="(item, index) in versionOptions"
@ -1121,10 +1121,12 @@ export default {
float: right;
}
.version_select {
float: left;
float: right;
height: 50px;
display: flex;
line-height: 35px;
z-index: 99;
position: relative;
.el-select {
flex: 1;
}

@ -27,7 +27,7 @@
node-key="id"
@node-click="handleNodeClick"
@node-contextmenu="handleNodeRightClick"
:default-expand-all="true"
:default-expand-all="false"
:expand-on-click-node="false"
/>
<div
@ -372,10 +372,6 @@
placeholder="请输入"
style="width: 100%"
></el-input>
<!-- <el-select v-model="scope.row.tool" placeholder="请选择" clearable filterable>
<el-option label="是" value="1"></el-option>
<el-option label="否" value="2"></el-option>
</el-select> -->
</el-form-item>
</template>
</el-table-column>
@ -585,7 +581,9 @@ export default {
formRules4: {
moldCode: [{ required: true, message: '请输入', trigger: ['change', 'submit'] }],
},
treeNodes: {}, //
treeNodes: {
rawData: {},
}, //
parentData: {}, //
partInfoData: {}, //
tempId: 0,
@ -765,20 +763,48 @@ export default {
getModelDetailList({ Id: this.modelLevel }).then(res => {
const templateData = res.data.data.proDetailVOList;
const existing = [...this.form1.tableData1];
const baseIndex = existing.length;
//
const mappedData = templateData.map((item, index) => {
// 使
if (item.modelProjectList.length > 0) {
item.modelProjectList = item.modelProjectList.map(project => {
project.id = null;
return project;
});
}
//
const projectList = (item.modelProjectList || []).map(project => ({
id: null,
trialNo: this.getProcessNo([], index),
projectCode: project.projectCode,
projectName: project.projectName,
projectStandard: project.projectStandard,
projectStandardName: project.projectStandardName,
proHours: project.proHours || 0,
prepareHours: project.prepareHours || 0,
}));
//
const measuringToolList = (item.measuringToolList || []).map(tool => ({
id: null,
trialNo: this.getProcessNo([], index),
testType: tool.testType,
tool: tool.tool,
toolSize: tool.toolSize,
toolInfo: tool.toolInfo,
}));
//
const moldToolList = (item.moldToolList || []).map(mold => ({
id: null,
trialNo: this.getProcessNo([], index),
moldCode: mold.moldCode,
moldName: mold.moldName,
isPrint: mold.isPrint,
printNo: mold.printNo,
testFixtureNo: mold.testFixtureNo,
}));
return {
id: null, // null
processNo: this.getProcessNo(this.form1.tableData1), //
// processNo: item.processNo,
ppsId: item.ppsId + '', // ppsId id
id: null,
_tempId: `temp_${Date.now()}_${index}`, //
processNo: this.getProcessNo(existing, index),
ppsId: item.ppsId + '',
processName: item.processName,
caId: item.caId + '',
craftName: item.craftName,
@ -786,34 +812,65 @@ export default {
proHours: item.proHours || '',
setoutHours: item.setoutHours || '',
isMain: item.isMain || '0',
processProjectList: item.modelProjectList || [],
// ...
//
processProjectList: projectList,
measuringToolList: measuringToolList,
moldToolList: moldToolList,
};
});
// 12
this.form1.tableData1 = [...existing, ...mappedData]; //
//
this.form1.tableData1 = [...existing, ...mappedData];
this.modelLevelLoading = false;
let query_ = {
dsPart: this.partInfoData, //
craft: this.treeNodes.rawData, //
processList: this.form1.tableData1, //
processDeleteIds: this.form1.deleteIds, //ids
};
authorizedAccomplish2(query_)
.then(res => {
this.$message.success('保存成功');
this.craftLoading = false;
this.getDetails();
})
.catch(err => {
this.craftLoading = false;
});
//
this.updateTreeStructure(mappedData);
// this.$message.success('');
this.$message.success('模板导入成功,请检查后手动保存');
});
},
//
updateTreeStructure(mappedData) {
// 1. processList
if (this.treeLeave === 2) {
this.treeNodes.processList = this.form1.tableData1;
}
// 2. data
const updateTreeNode = nodes => {
for (let node of nodes) {
if (node.level === 2 && node.id === this.treeNodes.id) {
// processList
node.processList = this.form1.tableData1;
//
node.children = this.form1.tableData1.map(process => ({
id: process.id || process._tempId || `process_${Date.now()}_${Math.random()}`,
label: process.processName || '未知工序',
level: 3,
rawData: {
processInfo: process,
projectList: process.processProjectList || [],
measuringToolList: process.measuringToolList || [],
moldToolList: process.moldToolList || [],
},
children: (process.processProjectList || []).map(project => ({
id: project.id || `project_${Date.now()}_${Math.random()}`,
label: project.projectName || '未知项目',
level: 4,
disabled: true,
rawData: project,
})),
}));
break;
}
if (node.children && node.children.length > 0) {
updateTreeNode(node.children);
}
}
};
updateTreeNode(this.data);
},
//
async getDetails() {
this.treeLoading = true;
@ -879,7 +936,7 @@ export default {
};
const formatCraftLabel = craftInfo => {
return `${craftInfo.roamNo || '临时工艺'}-${craftInfo.craftNo || '工艺文件'}`;
return `${craftInfo.roamNo || '临时工艺'}-${craftInfo.craftNo || 'C000000'}`;
};
const tree = [
@ -1096,9 +1153,9 @@ export default {
}
},
//
getProcessNo(table) {
const len = table;
let processNo = (len.length + 1) * 5;
getProcessNo(table, index = 0) {
const len = table.length;
let processNo = (len + index + 1) * 5;
if (processNo.toString().length === 1) {
processNo = '000' + processNo;
@ -1445,7 +1502,11 @@ export default {
.then(res => {
this.$message.success('保存成功');
this.craftLoading = false;
this.getDetails();
if (this.treeLeave == 1) {
this.getDetails();
}
this.updateTreeAfterSave(res.data.data);
})
.catch(err => {
this.craftLoading = false;
@ -1481,7 +1542,12 @@ export default {
saveProcessProjectSave(query_).then(res => {
this.$message.success('保存成功');
this.craftLoading = false;
this.getDetails();
//
if (this.treeLeave === 3) {
this.treeNodes.rawData.projectList = this.form2.tableData2;
this.updateTreeNodeProject();
this.refreshTableData(); //
}
});
}
});
@ -1498,7 +1564,12 @@ export default {
saveProcessMeasuringTool(query_).then(res => {
this.$message.success('保存成功');
this.craftLoading = false;
this.getDetails();
//
if (this.treeLeave === 3) {
this.treeNodes.rawData.measuringToolList = this.form3.tableData3;
this.updateTreeNodeProject();
this.refreshTableData(); //
}
});
}
});
@ -1515,12 +1586,118 @@ export default {
saveProcessMoldTool(query_).then(res => {
this.$message.success('保存成功');
this.craftLoading = false;
this.getDetails();
//
if (this.treeLeave === 3) {
this.treeNodes.rawData.moldToolList = this.form4.tableData4;
this.updateTreeNodeProject();
this.refreshTableData(); //
}
});
}
});
}
},
//
updateTreeAfterSave(saveData) {
// 1. rawData
if (this.treeLeave === 1 && saveData) {
console.log('updateTreeAfterSave', this.treeNodes);
// this.treeNodes.rawData = { ...this.treeNodes.rawData, ...saveData };
}
if (this.treeLeave === 2 && saveData) {
this.treeNodes.rawData = { ...this.treeNodes.rawData, ...saveData };
this.treeNodes.processList = this.form1.tableData1;
}
// 2. data
const updateTreeNode = nodes => {
for (let node of nodes) {
if (node.level === 2 && node.id === this.treeNodes.id) {
//
if (saveData) {
node.rawData = { ...node.rawData, ...saveData };
node.label = `${saveData.roamNo || '临时工艺'}-${saveData.craftNo || '工艺文件'}`;
}
//
node.processList = this.form1.tableData1;
node.children = this.form1.tableData1.map(process => ({
id: process.id || `process_${Date.now()}_${Math.random()}`,
label: process.processName || '未知工序',
level: 3,
rawData: {
processInfo: process,
projectList: process.processProjectList || [],
measuringToolList: process.measuringToolList || [],
moldToolList: process.moldToolList || [],
},
children: (process.processProjectList || []).map(project => ({
id: project.id || `project_${Date.now()}_${Math.random()}`,
label: project.projectName || '未知项目',
level: 4,
disabled: true,
rawData: project,
})),
}));
break;
}
if (node.children && node.children.length > 0) {
updateTreeNode(node.children);
}
}
};
updateTreeNode(this.data);
// 3.
this.refreshTableData();
},
refreshTableData() {
this.$nextTick(() => {
if (this.treeLeave === 2) {
//
this.form1.tableData1 = [...(this.treeNodes.processList || [])];
} else if (this.treeLeave === 3) {
//
const { projectList, measuringToolList, moldToolList } = this.treeNodes.rawData;
this.form2.tableData2 = [...(projectList || [])];
this.form3.tableData3 = [...(measuringToolList || [])];
this.form4.tableData4 = [...(moldToolList || [])];
}
});
},
//
updateTreeNodeProject() {
const updateTreeNode = nodes => {
for (let node of nodes) {
if (node.level === 3 && node.id === this.treeNodes.id) {
node.rawData = {
...node.rawData,
projectList: this.form2.tableData2,
measuringToolList: this.form3.tableData3,
moldToolList: this.form4.tableData4,
};
//
node.children = (this.form2.tableData2 || []).map(project => ({
id: project.id || `project_${Date.now()}_${Math.random()}`,
label: project.projectName || '未知项目',
level: 4,
disabled: true,
rawData: project,
}));
break;
}
if (node.children && node.children.length > 0) {
updateTreeNode(node.children);
}
}
};
updateTreeNode(this.data);
//
this.refreshTableData();
},
},
};
</script>

@ -952,7 +952,6 @@ export default {
}),
},
];
console.log(909090, tree);
return tree;
},
//

@ -53,7 +53,7 @@
type="primary"
link
@click="setBathCrew(scope.row)"
v-if="scope.row.taskStatus == 1 && !scope.row.completed"
v-if="scope.row.taskStatus == 1"
>转派</el-button
>
</template>

Loading…
Cancel
Save