|
|
|
@ -4,15 +4,25 @@ |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="18"> |
|
|
|
<el-form-item label="工艺/Process"> |
|
|
|
<dict-data-select :site="searchData.site" v-if="searchData.site" v-model="sheetData.process" :use-default-value="false" dict-type="bm_process" style="width: 120px"></dict-data-select> |
|
|
|
<dict-data-select |
|
|
|
v-if="searchData.site" |
|
|
|
:site="searchData.site" |
|
|
|
v-model="sheetData.process" |
|
|
|
:use-default-value="false" |
|
|
|
dict-type="bm_process" |
|
|
|
style="width: 120px" |
|
|
|
:disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('process') === 'N'"> |
|
|
|
</dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item> |
|
|
|
<span slot="label" @click="getBaseList(1)"><a herf="#">热转移打印人员/Technician</a></span> |
|
|
|
<el-input v-model="sheetData.overPrintOperatorName" ref="overPrintOperatorName" placeholder="请选择人员" readonly style="width: 160px" ></el-input> |
|
|
|
<span slot="label" v-if="ifDisableFlag || plmTechnicalSpecificationSheetFlag('overPrintOperator') === 'N'">热转移打印人员/Technician</span> |
|
|
|
<span slot="label" v-else @click="getBaseList(1)"><a herf="#">热转移打印人员/Technician</a></span> |
|
|
|
<el-input v-model="sheetData.overPrintOperatorName" ref="overPrintOperatorName" placeholder="请选择人员" readonly style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item> |
|
|
|
<span slot="label" @click="getBaseList(2)"><a herf="#">印刷人员/Technician</a></span> |
|
|
|
<el-input v-model="sheetData.printOperatorName" ref="printOperatorName" placeholder="请选择人员" readonly style="width: 160px" ></el-input> |
|
|
|
<span slot="label" v-if="ifDisableFlag || plmTechnicalSpecificationSheetFlag('printOperator') === 'N'">印刷人员/Technician</span> |
|
|
|
<span slot="label" v-else @click="getBaseList(2)"><a herf="#">印刷人员/Technician</a></span> |
|
|
|
<el-input v-model="sheetData.printOperatorName" ref="printOperatorName" placeholder="请选择人员" readonly style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label=" "> |
|
|
|
<el-button type="primary" @click="searchTable(true)">刷新</el-button> |
|
|
|
@ -41,14 +51,14 @@ |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
|
<el-form label-position="top" style="margin-top: 1px; margin-left: 0px;" v-if="searchData.buNo === 'RDC'"> |
|
|
|
<el-form label-position="top" style="margin-top: 1px" v-if="searchData.buNo === 'RDC'"> |
|
|
|
<el-row :gutter="20" > |
|
|
|
<el-col :span="24"> |
|
|
|
<div class="grid-content bg-purple"> |
|
|
|
<el-form-item :label="'过程及过程控制/Process and Production Control'"> |
|
|
|
<el-input |
|
|
|
type="textarea" |
|
|
|
v-model="dataForm.processDetail " |
|
|
|
v-model="dataForm.processDetail" |
|
|
|
:rows="3" |
|
|
|
resize='none' |
|
|
|
maxlength="255" |
|
|
|
@ -208,78 +218,111 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
|
|
|
|
<el-form label-position="top" style="margin-top: 1px; margin-left: 0px;" v-if="searchData.buNo!='RDC'"> |
|
|
|
<el-form :inline="true" label-position="top" style="margin-top: 1px; margin-left: 0px;" > |
|
|
|
<el-form label-position="top" style="margin-top: 1px" v-else> |
|
|
|
<el-form :inline="true" label-position="top" style="margin-top: 1px; margin-left: 0px;"> |
|
|
|
<el-form-item label="物料信息/Material"> |
|
|
|
<el-input v-model="routeData.partNo" readonly style="width: 120px"></el-input> |
|
|
|
<el-input v-model="routeData.partNo" disabled style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="工艺路线类型/Routing Type"> |
|
|
|
<el-input v-model="routeData.routingType" readonly style="width: 160px"></el-input> |
|
|
|
<el-input v-model="routeData.routingType" disabled style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="工艺路线版本/Routing Rev."> |
|
|
|
<el-input v-model="routeData.routingRevision" readonly style="width: 160px"></el-input> |
|
|
|
<el-input v-model="routeData.routingRevision" disabled style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="替代编码/Alternative No."> |
|
|
|
<el-input v-model="routeData.alternativeNo" readonly style="width: 140px"></el-input> |
|
|
|
<el-input v-model="routeData.alternativeNo" disabled style="width: 140px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" style="margin-top: 1px; margin-left: 0px;" > |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="18"> |
|
|
|
<el-form-item label="单双面印刷/Simplex/Duplex"> |
|
|
|
<dict-data-select :site="searchData.site" v-if="searchData.site" clearable v-model="sheetData.simplexDuplex" :use-default-value="false" dict-type="bm_simplex_duplex" style="width: 160px"></dict-data-select> |
|
|
|
<dict-data-select |
|
|
|
:site="searchData.site" |
|
|
|
v-if="searchData.site" |
|
|
|
clearable |
|
|
|
v-model="sheetData.simplexDuplex" |
|
|
|
:use-default-value="false" |
|
|
|
dict-type="bm_simplex_duplex" |
|
|
|
style="width: 160px" |
|
|
|
:disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('simplexDuplex') === 'N'"> |
|
|
|
</dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="周长/Repeat"> |
|
|
|
<dict-data-select :site="searchData.site" v-if="searchData.site" clearable v-model="sheetData.repeat" dict-type="bm_repeat" style="width: 120px"></dict-data-select> |
|
|
|
<dict-data-select |
|
|
|
:site="searchData.site" |
|
|
|
v-if="searchData.site" |
|
|
|
clearable |
|
|
|
v-model="sheetData.repeat" |
|
|
|
dict-type="bm_repeat" |
|
|
|
style="width: 120px" |
|
|
|
:disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('repeat') === 'N'"> |
|
|
|
</dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<!-- <el-form-item label="标签尺寸/Label Size">--> |
|
|
|
<!-- <el-input v-model="sheetData.labelSize" style="width: 120px" ></el-input>--> |
|
|
|
<!-- </el-form-item>--> |
|
|
|
<el-form-item label="标签长度/Label Length"> |
|
|
|
<el-input v-model="sheetData.labelLength" style="width: 120px" ></el-input> |
|
|
|
<el-input v-model="sheetData.labelLength" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('labelLength') === 'N'" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="标签宽度/Label Width"> |
|
|
|
<el-input v-model="sheetData.labelWidth" style="width: 120px" ></el-input> |
|
|
|
<el-input v-model="sheetData.labelWidth" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('labelWidth') === 'N'" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="横向跳距/HP"> |
|
|
|
<el-input v-model="sheetData.hp" style="width: 120px" ></el-input> |
|
|
|
<el-input v-model="sheetData.hp" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('hp') === 'N'" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="竖向跳距/VP"> |
|
|
|
<el-input v-model="sheetData.vp" style="width: 120px" ></el-input> |
|
|
|
<el-input v-model="sheetData.vp" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('vp') === 'N'" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="横排数/Across"> |
|
|
|
<el-input v-model="sheetData.across" style="width: 120px" ></el-input> |
|
|
|
<el-input v-model="sheetData.across" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('across') === 'N'" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
|
<div style="width: 100%;"> |
|
|
|
<el-form :inline="true" label-position="top" style="margin-top: 1px; margin-left: 0px;" > |
|
|
|
<el-form :inline="true" label-position="top" style="margin-top: 1px; margin-left: 0px;"> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="24"> |
|
|
|
<el-form-item label="竖排数/Down"> |
|
|
|
<el-input v-model="sheetData.down" style="width: 120px" ></el-input> |
|
|
|
<el-input v-model="sheetData.down" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('down') === 'N'" style="width: 120px" ></el-input> |
|
|
|
</el-form-item> |
|
|
|
<!-- <el-form-item label="实际数目/Actual Number">--> |
|
|
|
<!-- <el-input v-model="sheetData.actualNumber" style="width: 160px"></el-input>--> |
|
|
|
<!-- </el-form-item>--> |
|
|
|
<el-form-item label="印刷出纸方向/Feeding Direction"> |
|
|
|
<dict-data-select :site="searchData.site" v-if="searchData.site" clearable v-model="sheetData.printCopyPosition" dict-type="bm_print_copy_position" style="width: 170px"></dict-data-select> |
|
|
|
<dict-data-select |
|
|
|
:site="searchData.site" |
|
|
|
v-if="searchData.site" |
|
|
|
clearable |
|
|
|
v-model="sheetData.printCopyPosition" |
|
|
|
dict-type="bm_print_copy_position" |
|
|
|
style="width: 170px" |
|
|
|
:disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('printCopyPosition') === 'N'"> |
|
|
|
</dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="成品卷边宽度/FG Roll Width"> |
|
|
|
<el-input v-model="sheetData.goodsRollWidth" style="width: 160px"></el-input> |
|
|
|
<el-input v-model="sheetData.goodsRollWidth" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('goodsRollWidth') === 'N'" style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="新刀具(是/否)/New Cutter(Y/N)"> |
|
|
|
<dict-data-select :site="searchData.site" v-if="searchData.site" clearable v-model="sheetData.newCutter" dict-type="bm_new_cutter" style="width: 170px"></dict-data-select> |
|
|
|
<dict-data-select |
|
|
|
:site="searchData.site" |
|
|
|
v-if="searchData.site" |
|
|
|
clearable |
|
|
|
v-model="sheetData.newCutter" |
|
|
|
dict-type="bm_new_cutter" |
|
|
|
style="width: 170px" |
|
|
|
:disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('newCutter') === 'N'"> |
|
|
|
</dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="印刷刀模公差/P2C Tolerance"> |
|
|
|
<el-input v-model="sheetData.p2cTolerance" style="width: 160px"></el-input> |
|
|
|
<el-input v-model="sheetData.p2cTolerance" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('p2cTolerance') === 'N'" style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="尺寸公差/Dimension Tolerance"> |
|
|
|
<el-input v-model="sheetData.dimensionTolerance" style="width: 170px"></el-input> |
|
|
|
<el-input v-model="sheetData.dimensionTolerance" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('dimensionTolerance') === 'N'" style="width: 170px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="修边公差(+/-)/Slitting Tolerance"> |
|
|
|
<el-input v-model="sheetData.slittingTolerance" style="width: 170px"></el-input> |
|
|
|
<el-input v-model="sheetData.slittingTolerance" :disabled="ifDisableFlag || plmTechnicalSpecificationSheetFlag('slittingTolerance') === 'N'" style="width: 170px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
@ -669,27 +712,41 @@ |
|
|
|
printFlexo, |
|
|
|
printIndigo, |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
plmTechnicalSpecificationSheetFlag () { |
|
|
|
return (value) => { |
|
|
|
if (!this.plmTechnicalSpecificationSheetArr) { |
|
|
|
return 'N' |
|
|
|
} |
|
|
|
let arr = this.plmTechnicalSpecificationSheetArr.filter(a => a.fieldId === value) |
|
|
|
if (arr.length > 0) { |
|
|
|
return arr[0].updateFlag |
|
|
|
} |
|
|
|
return 'N' |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
data() { |
|
|
|
return { |
|
|
|
spForm:{ |
|
|
|
sp:'', |
|
|
|
nodeName:'', |
|
|
|
spForm: { |
|
|
|
sp: '', |
|
|
|
nodeName: '', |
|
|
|
}, |
|
|
|
nowRoute:{}, |
|
|
|
nowRoute: {}, |
|
|
|
//动态组件 |
|
|
|
selectedComponent: null, |
|
|
|
routeData:{ |
|
|
|
routeData: { |
|
|
|
site: '', |
|
|
|
partNo:'', |
|
|
|
alternativeNo:'', |
|
|
|
routingType:'', |
|
|
|
routingRevision:'', |
|
|
|
partNo: '', |
|
|
|
alternativeNo: '', |
|
|
|
routingType: '', |
|
|
|
routingRevision: '', |
|
|
|
}, |
|
|
|
componentKey:0, |
|
|
|
routeFlag:false, |
|
|
|
routeModelFlag:false, |
|
|
|
height:200, |
|
|
|
componentKey: 0, |
|
|
|
routeFlag: false, |
|
|
|
routeModelFlag: false, |
|
|
|
height: 200, |
|
|
|
searchData: { |
|
|
|
site: '', |
|
|
|
username: this.$store.state.user.name, |
|
|
|
@ -1085,7 +1142,8 @@ |
|
|
|
tagNo1:'', |
|
|
|
rejectOpinion: '', |
|
|
|
submitModalFlag: false, |
|
|
|
submitLoading: false |
|
|
|
submitLoading: false, |
|
|
|
plmTechnicalSpecificationSheetArr: [] |
|
|
|
} |
|
|
|
}, |
|
|
|
mounted () { |
|
|
|
@ -1096,9 +1154,6 @@ |
|
|
|
methods: { |
|
|
|
// 获取基础数据列表S |
|
|
|
getBaseList (type) { |
|
|
|
if (this.ifDisableFlag) { |
|
|
|
return false |
|
|
|
} |
|
|
|
this.tagNo1 = type |
|
|
|
this.$nextTick(() => { |
|
|
|
let strVal = '' |
|
|
|
@ -1602,58 +1657,58 @@ |
|
|
|
break; |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
searchDetailTable(){ |
|
|
|
searchRouteDetail(this.routeData).then(({data}) => { |
|
|
|
this.routeDetailList=data.rows; |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
changeRouteRev(){ |
|
|
|
this.searchDetailTable() |
|
|
|
this.currentRoute=null |
|
|
|
this.modalFlag=true; |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
getRow(row){ |
|
|
|
this.currentRoute=row |
|
|
|
}, |
|
|
|
updateBMProcess(){ |
|
|
|
|
|
|
|
updateBMProcess () { |
|
|
|
updateBMProcess(this.sheetData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.$clearHighLight() |
|
|
|
tsdBasicInformationSearch(this.searchData).then(({data}) => { |
|
|
|
if(data.row){ |
|
|
|
this.sheetData=data.row |
|
|
|
}else { |
|
|
|
|
|
|
|
if (data.row) { |
|
|
|
this.sheetData = data.row |
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
}) |
|
|
|
this.$message.success('操作成功') |
|
|
|
} else { |
|
|
|
this.$message.error(data.msg) |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
updateBMRouteRev(){ |
|
|
|
|
|
|
|
if(this.currentRoute==null){ |
|
|
|
updateBMRouteRev () { |
|
|
|
if (this.currentRoute == null) { |
|
|
|
this.$alert('请点击选择Route版本!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false; |
|
|
|
} |
|
|
|
if(this.currentRoute.status!=='Buildable'){ |
|
|
|
if (this.currentRoute.status!=='Buildable') { |
|
|
|
this.$alert('只有Buildable状态的可以保存!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false; |
|
|
|
} |
|
|
|
let inData={ |
|
|
|
site:this.routeData.site, |
|
|
|
codeNo:this.searchData.codeNo, |
|
|
|
routingType:this.currentRoute.routingType, |
|
|
|
routingRevision:this.currentRoute.routingRevision, |
|
|
|
routingAlternativeNo:this.currentRoute.alternativeNo |
|
|
|
let inData = { |
|
|
|
site: this.routeData.site, |
|
|
|
codeNo: this.searchData.codeNo, |
|
|
|
routingType: this.currentRoute.routingType, |
|
|
|
routingRevision: this.currentRoute.routingRevision, |
|
|
|
routingAlternativeNo: this.currentRoute.alternativeNo |
|
|
|
} |
|
|
|
this.$confirm("更改工艺路线后,之前填写的工艺信息都将覆盖,是否继续?", '保存提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
@ -1661,8 +1716,8 @@ |
|
|
|
}).then(() => { |
|
|
|
updateBMRouteRev(inData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.searchTable(); |
|
|
|
this.modalFlag = false; |
|
|
|
this.searchTable() |
|
|
|
this.modalFlag = false |
|
|
|
this.$message.success('操作成功') |
|
|
|
} else { |
|
|
|
this.$message.error(data.msg) |
|
|
|
@ -1670,7 +1725,8 @@ |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
jumpRoute(){ |
|
|
|
|
|
|
|
jumpRoute () { |
|
|
|
if (this.routeData.routingRevision != null || this.routeData.routingRevision !== '') { |
|
|
|
this.$message.error("route明细不存在") |
|
|
|
} |
|
|
|
@ -1683,11 +1739,12 @@ |
|
|
|
localStorage.setItem('routeData', JSON.stringify(inData)) |
|
|
|
window.open('#/part-routingManagement'); |
|
|
|
}, |
|
|
|
|
|
|
|
// 获取流程的配置权限 |
|
|
|
getNodeAuthority (row) { |
|
|
|
getBMStatusDesc(this.searchData).then(({data}) => { |
|
|
|
this.superAdmin=data.superAdmin |
|
|
|
if(data.superAdmin){ |
|
|
|
this.superAdmin = data.superAdmin |
|
|
|
if (data.superAdmin) { |
|
|
|
this.ifDisableFlag = false |
|
|
|
return false |
|
|
|
} |
|
|
|
@ -1703,18 +1760,19 @@ |
|
|
|
} |
|
|
|
getNodeAuthority(tempData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.ifDisableFlag = true |
|
|
|
let plmStepRoleBaseBm = data.rows.plm_stepRole_base_bm |
|
|
|
let arr = plmStepRoleBaseBm.filter(a => a.fieldId === this.searchData.fieldId) |
|
|
|
if (arr.length > 0) { |
|
|
|
if (arr[0].updateFlag === 'N') { |
|
|
|
this.ifDisableFlag = true |
|
|
|
} else { |
|
|
|
this.ifDisableFlag = false |
|
|
|
} |
|
|
|
} else { |
|
|
|
this.ifDisableFlag = true |
|
|
|
} |
|
|
|
// this.ifDisableFlag = true |
|
|
|
// let plmStepRoleBaseBm = data.rows.plm_stepRole_base_bm |
|
|
|
// let arr = plmStepRoleBaseBm.filter(a => a.fieldId === this.searchData.fieldId) |
|
|
|
// if (arr.length > 0) { |
|
|
|
// if (arr[0].updateFlag === 'N') { |
|
|
|
// this.ifDisableFlag = true |
|
|
|
// } else { |
|
|
|
// this.ifDisableFlag = false |
|
|
|
// } |
|
|
|
// } else { |
|
|
|
// this.ifDisableFlag = true |
|
|
|
// } |
|
|
|
this.plmTechnicalSpecificationSheetArr = data.rows.plm_technical_specification_sheet |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
|