工艺管理问题修改

dev-scheduling
jinna 3 months ago
parent 6d4de39606
commit 507b7c0bd5
  1. 9
      src/api/processManagement/specialProcess.js
  2. 6
      src/api/processManagement/taskProcessing.js
  3. 65
      src/views/processManagement/components/inPlantMaintenance.vue
  4. 2
      src/views/processManagement/components/processMainte/dsPartBasicInfo.vue
  5. 52
      src/views/processManagement/components/processMainte/partDetails.vue
  6. 1
      src/views/processManagement/components/processMainte/processPlanning.vue
  7. 188
      src/views/processManagement/procepssPlanning.vue
  8. 3
      src/views/processManagement/taskDispatch.vue
  9. 13
      src/views/processManagement/taskProcessing.vue

@ -42,4 +42,13 @@ export const remove = ids => {
ids, ids,
}, },
}); });
};
// 获取设备数据
export const getEquipmentList = (params) => {
return request({
url: '/blade-desk/equipment/page',
method: 'get',
params
});
}; };

@ -45,13 +45,11 @@ export const getVersion = params => {
} }
// 查询任务零件详情dsTasking/partDetail // 查询任务零件详情dsTasking/partDetail
export const getPartDetail = (taskId) => { export const getPartDetail = (params) => {
return request({ return request({
url: '/blade-desk/dsTasking/partDetail', url: '/blade-desk/dsTasking/partDetail',
method: 'get', method: 'get',
params: { params:params,
taskId
},
}); });
} }

@ -39,7 +39,13 @@
</div> </div>
</template> </template>
<script> <script>
import { getList, remove, add, update } from '@/api/processManagement/specialProcess'; import {
getList,
remove,
add,
update,
getEquipmentList,
} from '@/api/processManagement/specialProcess';
import basicImport from '@/components/basic-import/main.vue'; import basicImport from '@/components/basic-import/main.vue';
export default { export default {
components: { components: {
@ -102,6 +108,7 @@ export default {
{ {
label: '作业中心', label: '作业中心',
prop: 'wcId', prop: 'wcId',
cascader: ['equipmentId'],
search: true, search: true,
sortable: true, sortable: true,
filter: true, filter: true,
@ -109,7 +116,7 @@ export default {
headerAlign: 'center', headerAlign: 'center',
align: 'left', align: 'left',
type: 'select', type: 'select',
filterable:true, filterable: true,
clearable: true, clearable: true,
dicUrl: '/blade-desk/bsWorkCenter/getList', dicUrl: '/blade-desk/bsWorkCenter/getList',
props: { props: {
@ -126,7 +133,7 @@ export default {
}, },
{ {
label: '产线', label: '产线',
prop: 'equipmentName', prop: 'equipmentId',
search: true, search: true,
sortable: true, sortable: true,
filter: true, filter: true,
@ -134,18 +141,34 @@ export default {
headerAlign: 'center', headerAlign: 'center',
align: 'left', align: 'left',
type: 'select', type: 'select',
filterable:true, filterable: true,
clearable: true, clearable: true,
dicData: [ hide:true,
{ dicUrl: `/blade-desk/equipment/page?used=1&workstationId={{wcId}}&size=99999`,
label: '产线1', props: {
value: 1, label: 'deviceName',
}, value: 'id',
{ res: 'data.records',
label: '产线2', },
value: 2, change: (val) =>{
}, this.equipmentChange(val.item,'equipmentId')
], },
},
{
label: '产线',
prop: 'equipmentName',
search: true,
sortable: true,
filter: true,
span: 12,
headerAlign: 'center',
align: 'left',
filterable: true,
clearable: true,
addDisplya:false,
editDisplay:false,
}, },
{ {
label: '确认名称', label: '确认名称',
@ -228,13 +251,12 @@ export default {
headerAlign: 'center', headerAlign: 'center',
align: 'center', align: 'center',
type: 'select', type: 'select',
filterable:true, filterable: true,
clearable: true, clearable: true,
dicUrl: '/blade-system/user/list-process-engineer', dicUrl: '/blade-system/user/list-process-engineer',
props: { props: {
label: 'realName', label: 'realName',
value: 'id', value: 'id',
}, },
rules: [ rules: [
{ {
@ -267,6 +289,13 @@ export default {
}; };
}, },
methods: { methods: {
equipmentChange(val,type){
console.log(val,'val')
if(val&&type=='equipmentId'){
this.form.equipmentName = val.deviceName
this.form.equipmentCode = val.deviceCode
}
},
// //
handleImport() { handleImport() {
this.isShowImport = true; this.isShowImport = true;
@ -342,7 +371,7 @@ export default {
// //
done(); done();
this.onLoad(this.page); this.onLoad(this.page);
this.$message({ this.$message({
type: 'success', type: 'success',
message: '操作成功!', message: '操作成功!',
}); });

@ -569,7 +569,7 @@ export default {
}, },
// //
getPartDetails() { getPartDetails() {
getPartDetail(this.updateRow.id).then(res => { getPartDetail({taskId:this.updateRow.id,version:this.updateRow.version}).then(res => {
this.formData = res.data.data.dsPartEntity; this.formData = res.data.data.dsPartEntity;
this.data = res.data.data.dsPartEntities; this.data = res.data.data.dsPartEntities;

@ -1,6 +1,6 @@
<template> <template>
<el-dialog title="详情" v-model="setCrewShow" :before-close="cancel" fullscreen> <el-dialog title="详情" v-model="setCrewShow" :before-close="cancel" fullscreen>
<div class="tabs-container"> <div class="tabs-container" v-loading="tabLoading">
<el-tabs v-if="setCrewShow" v-model="activeNameTab"> <el-tabs v-if="setCrewShow" v-model="activeNameTab">
<el-tab-pane label="零件信息" name="1"> </el-tab-pane> <el-tab-pane label="零件信息" name="1"> </el-tab-pane>
<el-tab-pane label="工艺编制" name="2"> </el-tab-pane> <el-tab-pane label="工艺编制" name="2"> </el-tab-pane>
@ -8,12 +8,18 @@
<div class="content-right"> <div class="content-right">
<p v-if="this.detailsType == 'taskProcessing'">工艺版本{{ version }}</p> <p v-if="this.detailsType == 'taskProcessing'">工艺版本{{ version }}</p>
<div class="version_select" v-else> <div class="version_select" v-else>
工艺版本<el-select v-model="version" placeholder="请输入" clearable filterable> 工艺版本<el-select
v-model="version"
placeholder="请输入"
clearable
filterable
@change="versionChange()"
>
<el-option <el-option
v-for="(item, index) in versionOptions" v-for="(item, index) in versionOptions"
:key="index" :key="index"
:label="item.partVersions" :label="item.partVersion"
:value="item.partVersions" :value="item.partVersion"
/> />
</el-select> </el-select>
</div> </div>
@ -671,19 +677,19 @@ export default {
plateList: [], // plateList: [], //
projectOptions: [], projectOptions: [],
standardList: [], // standardList: [], //
tabLoading: false, //
}; };
}, },
mounted() { mounted() {
this.setCrewShow = this.isOpen; this.setCrewShow = this.isOpen;
if (this.detailsType == 'processPlanning') {
this.version = this.rowData.partVersion;
this.partChange(this.rowData.id);
}
this.getCcraftInfo(); this.getCcraftInfo();
this.getPartInfo(); this.getPartInfo();
this.getPlatingList(); this.getPlatingList();
this.getStandardList(); this.getStandardList();
if (this.detailsType == 'processPlanning') {
console.log(9999,this.rowData)
// this.partChange()
}
// //
}, },
@ -704,11 +710,18 @@ export default {
}); });
}, },
// //
partChange(partId) { partChange(id) {
getVersion({ partId: partId }).then(res => { getVersion({ partId: id }).then(res => {
this.versionOptions = res.data.data; this.versionOptions = res.data.data;
}); });
}, // },
//
versionChange() {
this.tabLoading = true;
this.getCcraftInfo();
this.getPartInfo();
},
//
handleNodeClick(nodes, node, self) { handleNodeClick(nodes, node, self) {
if (nodes.disabled) { if (nodes.disabled) {
return false; return false;
@ -765,7 +778,7 @@ export default {
this.$setItem('零件信息信息验证', this.validateObj); this.$setItem('零件信息信息验证', this.validateObj);
}, },
leavelChange(value) { leavelChange(value) {
console.log('工艺级别', value); this.tabLoading = true;
this.getCcraftInfo(); this.getCcraftInfo();
this.getPartInfo(); this.getPartInfo();
}, },
@ -775,38 +788,40 @@ export default {
if (this.detailsType == 'processPlanning') { if (this.detailsType == 'processPlanning') {
let query = { let query = {
partId: this.rowData.id, partId: this.rowData.id,
partVersion: '1.3', partVersion: this.version,
rank: this.rank, rank: this.rank,
}; };
getProcessManagementAuthorized(query).then(res => { getProcessManagementAuthorized(query).then(res => {
this.data = this.transformCraftTree(res.data.data); this.data = this.transformCraftTree(res.data.data);
this.tabLoading = false;
}); });
} else if (this.detailsType === 'taskProcessing') { } else if (this.detailsType === 'taskProcessing') {
let query = { let query = {
partId: this.partId, partId: this.partId,
rank: this.rank, rank: this.rank,
taskId: this.rowData.id, taskId: this.rowData.id,
version: this.rowData.version,
}; };
getProcessAuthorized(query).then(res => { getProcessAuthorized(query).then(res => {
this.craftData = res.data.data; this.craftData = res.data.data;
this.data = this.transformCraftTree(res.data.data); this.data = this.transformCraftTree(res.data.data);
this.tabLoading = false;
}); });
} }
}, },
// //
getPartInfo() { getPartInfo() {
console.log('获取零件信息', this.rowData);
// - // -
if (this.detailsType == 'processPlanning') { if (this.detailsType == 'processPlanning') {
let query = { let query = {
partId: this.rowData.id, partId: this.rowData.id,
partVersion: '1.3', partVersion: this.version,
rank: this.rank, rank: this.rank,
}; };
getPartManagementDetail(query).then(res => { getPartManagementDetail(query).then(res => {
this.formData = res.data.data.dsPartEntity; this.formData = res.data.data.dsPartEntity;
this.dataTable = res.data.data.dsPartEntities; this.dataTable = res.data.data.dsPartEntities;
this.version = res.data.data.partVersion; this.tabLoading = false;
if (this.dataTable.length > 0) { if (this.dataTable.length > 0) {
this.dataTable.forEach(item => { this.dataTable.forEach(item => {
item.totalArea = (item.quota * item.area).toFixed(5); // 5 item.totalArea = (item.quota * item.area).toFixed(5); // 5
@ -819,10 +834,11 @@ export default {
} }
}); });
} else if (this.detailsType === 'taskProcessing') { } else if (this.detailsType === 'taskProcessing') {
getPartDetail(this.rowData.id).then(res => { getPartDetail({ taskId: this.rowData.id, version: this.rowData.version }).then(res => {
this.formData = res.data.data.dsPartEntity; this.formData = res.data.data.dsPartEntity;
this.dataTable = res.data.data.dsPartEntities; this.dataTable = res.data.data.dsPartEntities;
this.version = res.data.data.partVersion; this.version = res.data.data.partVersion;
this.tabLoading = false;
if (this.formData.isSintering != '1') { if (this.formData.isSintering != '1') {
this.partType = '热表'; this.partType = '热表';
} else { } else {

@ -719,6 +719,7 @@ export default {
partId: this.partId, partId: this.partId,
taskId: this.updateRow.id, taskId: this.updateRow.id,
rank: this.rank, rank: this.rank,
version:this.updateRow.version
}).then(res => { }).then(res => {
this.data = this.transformCraftTree(res.data.data); this.data = this.transformCraftTree(res.data.data);
this.partInfoData = res.data.data.partInfo; this.partInfoData = res.data.data.partInfo;

@ -104,7 +104,7 @@ export default {
tip: false, tip: false,
simplePage: true, simplePage: true,
searchShow: true, searchShow: true,
searchMenuSpan: 6, searchMenuSpan: 18,
searchIcon: true, searchIcon: true,
searchIndex: 3, searchIndex: 3,
tree: false, tree: false,
@ -142,100 +142,96 @@ export default {
searchMenuPosition: 'right', searchMenuPosition: 'right',
align: 'center', align: 'center',
column: [ column: [
{ // {
label: '镀种', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
searchLabelWidth: 60, // searchLabelWidth: 60,
}, // },
{ // {
label: '物料编码', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
}, // },
{ // {
label: '子件类型', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
}, // },
{ // {
label: '材料', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
searchLabelWidth: 60, // searchLabelWidth: 60,
}, // },
{ // {
label: '粉重', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
searchLabelWidth: 60, // searchLabelWidth: 60,
}, // },
{ // {
label: '成型厚度', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
}, // },
{ // {
label: '检验项目', // label: '',
prop: 'partCode', // prop: 'partCode',
search: true, // search: true,
sortable: true, // sortable: true,
overHidden: true, // overHidden: true,
width: 210, // width: 210,
hide: true, // hide: true,
headerAlign: 'center', // headerAlign: 'center',
align: 'center', // align: 'center',
type: 'select', // type: 'select',
filterable:true, // filterable:true,
clearable: true, // clearable: true,
multiple: true, // multiple: true,
dicData: [ // dicUrl:'/blade-desk/QA/InspectionItem/list?size=999999&current=1',
{ // props: {
label: '项目1', // label: 'name',
value: 1, // value: 'id',
}, // res:'res.records'
{ // },
label: '项目2', // },
value: 2,
},
],
},
{ {
label: '零件号', label: '零件号',
prop: 'partCode', prop: 'partCode',
@ -244,7 +240,7 @@ export default {
overHidden: true, overHidden: true,
width: 210, width: 210,
headerAlign: 'center', headerAlign: 'center',
align: 'center', align: 'left',
searchLabelWidth: 60, searchLabelWidth: 60,
}, },
{ {

@ -76,7 +76,6 @@ export default {
height: 'auto', height: 'auto',
calcHeight: 32, calcHeight: 32,
tip: false, tip: false,
size: 'medium',
simplePage: true, simplePage: true,
searchShow: true, searchShow: true,
searchMenuSpan: 12, searchMenuSpan: 12,
@ -124,7 +123,7 @@ export default {
sortable: true, sortable: true,
overHidden: true, overHidden: true,
headerAlign: 'center', headerAlign: 'center',
align: 'center', align: 'left',
searchLabelWidth: 60, searchLabelWidth: 60,
}, },
{ {

@ -21,6 +21,7 @@
<template #menu-right="{ size }"> </template> <template #menu-right="{ size }"> </template>
<template #menu="scope"> <template #menu="scope">
{{ scope.$index }}
<el-button type="primary" link @click="viewDetails(scope.row.partId, scope.row)" <el-button type="primary" link @click="viewDetails(scope.row.partId, scope.row)"
>详情</el-button >详情</el-button
> >
@ -42,8 +43,11 @@
<el-button <el-button
type="primary" type="primary"
link link
@click="completedFn(scope.row)" @click="completedFn(scope)"
v-if="scope.row.taskStatus == 2&& (!scope.row.children || scope.row.children.length === 0)" v-if="
scope.row.taskStatus == 2 &&
(!scope.row.completed )
"
>完成</el-button >完成</el-button
> >
<el-button <el-button
@ -203,7 +207,7 @@ export default {
overHidden: true, overHidden: true,
width: 210, width: 210,
headerAlign: 'center', headerAlign: 'center',
align: 'center', align: 'left',
searchLabelWidth: 60, searchLabelWidth: 60,
fixed: 'left', fixed: 'left',
}, },
@ -364,11 +368,9 @@ export default {
isTestOpen: false, // isTestOpen: false, //
detailsRow: {}, detailsRow: {},
updateRow: [], // updateRow: [], //
}; };
}, },
methods: { methods: {
// //
addFn() { addFn() {
this.isTestOpen = true; this.isTestOpen = true;
@ -387,6 +389,7 @@ export default {
}, },
// //
completedFn(row) { completedFn(row) {
// console.log(898989, row.row._parent);
this.$confirm('确认任务是否完成?', { this.$confirm('确认任务是否完成?', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',

Loading…
Cancel
Save