Browse Source

2026-06-10

RoHs优化
master
fengyuan_yang 2 days ago
parent
commit
d38b0a2540
  1. 381
      src/views/modules/rohs/rohsRecord.vue

381
src/views/modules/rohs/rohsRecord.vue

@ -324,12 +324,61 @@
</div>
</el-tab-pane>
<!-- NPD 信息 -->
<el-tab-pane label="NPD 信息" name="npdInfo">
<div style="height: 635px; overflow-y: auto;">
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: -5px;">
<el-form-item label="现有材料不同规格/Same Material Diff Size">
<el-radio-group v-model="modalData.isSameMaterialDiffSize" :disabled="isRohsFieldDisabled('isSameMaterialDiffSize')" style="width: 190px">
<el-radio label="Y" @click.native.prevent="radioClick('isSameMaterialDiffSize', 'Y')"></el-radio>
<el-radio label="N" @click.native.prevent="radioClick('isSameMaterialDiffSize', 'N')"></el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label="材料描述/Material Desc." style="display: block;">
<el-input type="textarea" :rows="3" v-model="modalData.materialDesc" :disabled="isRohsFieldDisabled('materialDesc')" resize="none" style="width: 804px;height: 30px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: 50px">
<el-form-item label="备注说明/NPD Remark" style="display: block;">
<el-input type="textarea" :rows="3" v-model="modalData.npdRemark" :disabled="isRohsFieldDisabled('npdRemark')" resize="none" style="width: 804px;height: 30px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: 50px">
<el-form-item label="TDS属性/TDS Property" style="display: block;">
<oss-components
ref="modalTdsOss"
:save-visible="authFileSave"
:download-visible="authFileDownLoad"
:remove-visible="authFileRemove"
:preview-visible="authFilePreview"
:disabled="showModalFlag || modalData.status === '已完成'"
:enable-upgrade="!showModalFlag && modalData.status !== '已完成'"
:require-file-no-rev="true"
:auto-file-no="true"
:single-upload="true"
:row-click-select="true"
:show-order-ref2="false"
label="序列号"
:height="350"
style="margin-top: 2px"
:columns="tdsFileColumnList"
:order-ref1="modalData.site || ''"
:order-ref2="modalData.referenceNo || ''"
order-ref3="tdsProperty">
</oss-components>
</el-form-item>
</el-form>
</div>
</el-tab-pane>
<!-- HSF 填写信息 -->
<el-tab-pane label="HSF 填写信息" name="hsfInfo">
<div style="height: 635px">
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: -5px;">
<el-form-item label="SGS报告编号/SGS Report Number">
<el-input v-model="modalData.sgsReportNumber" :disabled="isRohsFieldDisabled('sgsReportNumber')" style="width: 230px"></el-input>
<el-input v-model="modalData.sgsReportNumber" :disabled="isRohsFieldDisabled('sgsReportNumber')" style="width: 252px"></el-input>
</el-form-item>
<el-form-item label="报告日期/Expired Date">
<el-date-picker v-model="modalData.expiredDate" type="date" value-format="yyyy-MM-dd" :disabled="isRohsFieldDisabled('expiredDate')" style="width: 180px" :editable=false></el-date-picker>
@ -351,16 +400,18 @@
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label="是否符合RoHS/Meet RoHS Req">
<el-radio-group v-model="modalData.isMeetRohsRequirement" :disabled="isRohsFieldDisabled('isMeetRohsRequirement')" style="width: 230px">
<el-radio-group v-model="modalData.isMeetRohsRequirement" :disabled="isRohsFieldDisabled('isMeetRohsRequirement')" style="width: 252px">
<el-radio label="Y" @click.native.prevent="radioClick('isMeetRohsRequirement', 'Y')"></el-radio>
<el-radio label="N" @click.native.prevent="radioClick('isMeetRohsRequirement', 'N')"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="材料属性是否是AH/Is AH Grade">
<el-radio-group v-model="modalData.isAhGrade" :disabled="isRohsFieldDisabled('isAhGrade')" style="width: 180px">
<el-radio label="Y" @click.native.prevent="radioClick('isAhGrade', 'Y')"></el-radio>
<el-radio label="N" @click.native.prevent="radioClick('isAhGrade', 'N')"></el-radio>
</el-radio-group>
<el-form-item label=" ">
<el-checkbox
v-model="modalData.isAhGrade"
true-label="Y"
false-label="N"
:disabled="isRohsFieldDisabled('isAhGrade')"
style="width: 200px">材料属性是否是AH/Is AH Grade</el-checkbox>
</el-form-item>
<el-form-item label="HSF供应商等级/Supplier Class">
<el-radio-group v-model="modalData.hsfSupplierClassification" :disabled="isRohsFieldDisabled('hsfSupplierClassification')" style="width: 200px">
@ -372,7 +423,7 @@
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label="Fiber报告信息/Fiber Information" style="display: block;">
<el-input type="textarea" :rows="3" v-model="modalData.fiberInformation" :disabled="isRohsFieldDisabled('fiberInformation')" resize="none" style="width: 802px;height: 30px"></el-input>
<el-input type="textarea" :rows="3" v-model="modalData.fiberInformation" :disabled="isRohsFieldDisabled('fiberInformation')" resize="none" style="width: 804px;height: 30px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: 45px">
@ -383,7 +434,7 @@
v-model="modalData.hsfApprover"
readonly
:disabled="isRohsFieldDisabled('hsfApprover')"
style="width: 420px"
style="width: 396px"
placeholder="请选择人员"
@focus="openHsfApproverChooseModal">
<span slot="suffix" v-show="modalData.hsfApprover && !isRohsFieldDisabled('hsfApprover')" @click.stop="clearHsfApproverSelection">
@ -391,77 +442,25 @@
</span>
</el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label="Inform Related people">
<el-select
<el-form-item>
<span style="cursor: pointer" v-if="!isRohsFieldDisabled('relatedPeople')" slot="label" @click="openRelatedPeopleChooseModal"><a herf="#">Inform Related people</a></span>
<span v-else slot="label">Inform Related people</span>
<el-input
v-model="modalData.relatedPeople"
clearable
filterable
readonly
:disabled="isRohsFieldDisabled('relatedPeople')"
style="width: 420px"
placeholder="请从HSF审批人中选择">
<el-option
v-for="item in (modalData.hsfApproverList || [])"
:key="item"
:label="item"
:value="item">
</el-option>
</el-select>
style="width: 396px"
placeholder="请从HSF审批人中选择"
@focus="openRelatedPeopleChooseModal">
<span slot="suffix" v-show="modalData.relatedPeople && !isRohsFieldDisabled('relatedPeople')" @click.stop="clearRelatedPeopleSelection">
<i class="el-icon-circle-close" style="margin-left: 5px;cursor: pointer;"></i>
</span>
</el-input>
</el-form-item>
</el-form>
<el-form v-if="shouldShowHsfStandard(modalData.endCustomer)" :inline="true" label-position="top" :model="modalData" style="margin-top: 0px">
<el-form-item label="HSF标准/HSF Standard" style="display: block;">
<el-input type="textarea" :rows="3" v-model="modalData.hsfStandard" :disabled="isRohsFieldDisabled('hsfStandard')" resize="none" style="width: 802px;height: 30px"></el-input>
</el-form-item>
</el-form>
</div>
</el-tab-pane>
<!-- NPD 信息 -->
<el-tab-pane label="NPD 信息" name="npdInfo">
<div style="height: 635px; overflow-y: auto;">
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: -5px;">
<el-form-item label="现有材料不同规格/Same Material Diff Size">
<el-radio-group v-model="modalData.isSameMaterialDiffSize" :disabled="isRohsFieldDisabled('isSameMaterialDiffSize')" style="width: 190px">
<el-radio label="Y" @click.native.prevent="radioClick('isSameMaterialDiffSize', 'Y')"></el-radio>
<el-radio label="N" @click.native.prevent="radioClick('isSameMaterialDiffSize', 'N')"></el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData">
<el-form-item label="材料描述/Material Desc." style="display: block;">
<el-input type="textarea" :rows="3" v-model="modalData.materialDesc" :disabled="isRohsFieldDisabled('materialDesc')" resize="none" style="width: 802px;height: 30px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: 50px">
<el-form-item label="备注说明/NPD Remark" style="display: block;">
<el-input type="textarea" :rows="3" v-model="modalData.npdRemark" :disabled="isRohsFieldDisabled('npdRemark')" resize="none" style="width: 802px;height: 30px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-top: 50px">
<el-form-item label="TDS属性/TDS Property" style="display: block;">
<oss-components
ref="modalTdsOss"
:save-visible="authFileSave"
:download-visible="authFileDownLoad"
:remove-visible="authFileRemove"
:preview-visible="authFilePreview"
:disabled="showModalFlag || modalData.status === '已完成'"
:enable-upgrade="!showModalFlag && modalData.status !== '已完成'"
:require-file-no-rev="true"
:auto-file-no="true"
:single-upload="true"
:row-click-select="true"
:show-order-ref2="false"
label="序列号"
:height="350"
style="margin-top: 2px"
:columns="tdsFileColumnList"
:order-ref1="modalData.site || ''"
:order-ref2="modalData.referenceNo || ''"
order-ref3="tdsProperty">
</oss-components>
<el-input type="textarea" :rows="3" v-model="modalData.hsfStandard" :disabled="isRohsFieldDisabled('hsfStandard')" resize="none" style="width: 804px;height: 30px"></el-input>
</el-form-item>
</el-form>
</div>
@ -658,6 +657,37 @@
</el-footer>
</el-dialog>
<el-dialog title="人员选择" @open="openRelatedPeopleDialog" @close="closeRelatedPeopleDialog" v-drag
:visible.sync="relatedPeopleFlag" width="40vw" :close-on-click-modal="false">
<el-form :inline="true" label-position="top" :model="relatedPeopleSearchData">
<el-form-item label="编码">
<el-input v-model="relatedPeopleSearchData.operatorId" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item label="名称">
<el-input v-model="relatedPeopleSearchData.operatorName" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item label=" ">
<el-button type="primary" @click="filterRelatedPeopleOptions">查询</el-button>
</el-form-item>
</el-form>
<el-table v-if="relatedPeopleFlag"
:height="300"
:data="relatedPeopleDisplayList"
highlight-current-row
@current-change="handleRelatedPeopleCurrentChange"
@row-click="handleRelatedPeopleTableClick"
ref="relatedPeopleTable"
border
style="width: 100%;">
<el-table-column label="编码" property="operatorId" align="left" header-align="center"/>
<el-table-column label="名称" property="operatorName" align="left" header-align="center"/>
</el-table>
<el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-button type="primary" @click="saveRelatedPeopleChooseModal">确定</el-button>
<el-button type="primary" @click="relatedPeopleFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
<el-dialog title="驳回" top="30vh" :close-on-click-modal="false" v-drag :visible.sync="submitModalFlag" width="500px">
<el-form label-position="top">
<el-form-item label="驳回意见/Reject Opinion">
@ -833,42 +863,6 @@
</div>
</el-tab-pane>
<el-tab-pane label="HSF 填写信息" name="hsfInfo">
<div :style="{height: secondHeight + 'px'}" style="margin-left: 5px;margin-top: 5px; overflow-y: auto;">
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="SGS报告编号/SGS Report Number">
<el-input :value="currentRow.sgsReportNumber || ''" disabled style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="报告日期/Expired Date">
<el-date-picker :value="currentRow.expiredDate" disabled type="date" value-format="yyyy-MM-dd" style="width: 180px"></el-date-picker>
</el-form-item>
<el-form-item label="有效期数值/Valid Until Value">
<el-input :value="currentRow.validUntilValue || ''" disabled style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="有效期单位/Valid Until Unit">
<el-input :value="currentRow.validUntil || ''" disabled style="width: 180px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="是否符合RoHS/Meet RoHS Req"><el-input :value="displayYesNo(currentRow.isMeetRohsRequirement)" disabled style="width: 230px"></el-input></el-form-item>
<el-form-item label="材料属性是否是AH/Is AH Grade"><el-input :value="displayYesNo(currentRow.isAhGrade)" disabled style="width: 180px"></el-input></el-form-item>
<el-form-item label="HSF供应商等级/Supplier Class"><el-input :value="currentRow.hsfSupplierClassification || ''" disabled style="width: 200px"></el-input></el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="HSF审批人/HSF Approver"><el-input :value="currentRow.hsfApprover || ''" disabled style="width: 420px"></el-input></el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="Inform Related people"><el-input :value="currentRow.relatedPeople || ''" disabled style="width: 420px"></el-input></el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="Fiber报告信息/Fiber Information" style="display: block;"><el-input type="textarea" :rows="3" :value="currentRow.fiberInformation || ''" disabled resize="none" style="width: 802px;height: 30px"></el-input></el-form-item>
</el-form>
<el-form v-if="shouldShowHsfStandard(currentRow.endCustomer)" :inline="true" label-position="top" :model="currentRow" style="margin-top: 50px">
<el-form-item label="HSF标准/HSF Standard" style="display: block;"><el-input type="textarea" :rows="3" :value="currentRow.hsfStandard || ''" disabled resize="none" style="width: 802px;height: 30px"></el-input></el-form-item>
</el-form>
</div>
</el-tab-pane>
<el-tab-pane label="NPD 信息" name="npdInfo">
<div :style="{height: secondHeight + 'px'}" style="margin-left: 5px;margin-top: 5px; overflow-y: auto;">
<el-form :inline="true" label-position="top" :model="currentRow">
@ -902,6 +896,40 @@
</div>
</el-tab-pane>
<el-tab-pane label="HSF 填写信息" name="hsfInfo">
<div :style="{height: secondHeight + 'px'}" style="margin-left: 5px;margin-top: 5px; overflow-y: auto;">
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="SGS报告编号/SGS Report Number">
<el-input :value="currentRow.sgsReportNumber || ''" disabled style="width: 230px"></el-input>
</el-form-item>
<el-form-item label="报告日期/Expired Date">
<el-date-picker :value="currentRow.expiredDate" disabled type="date" value-format="yyyy-MM-dd" style="width: 180px"></el-date-picker>
</el-form-item>
<el-form-item label="有效期数值/Valid Until Value">
<el-input :value="currentRow.validUntilValue || ''" disabled style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="有效期单位/Valid Until Unit">
<el-input :value="currentRow.validUntil || ''" disabled style="width: 180px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="是否符合RoHS/Meet RoHS Req"><el-input :value="displayYesNo(currentRow.isMeetRohsRequirement)" disabled style="width: 230px"></el-input></el-form-item>
<el-form-item label="材料属性是否是AH/Is AH Grade"><el-input :value="displayYesNo(currentRow.isAhGrade)" disabled style="width: 180px"></el-input></el-form-item>
<el-form-item label="HSF供应商等级/Supplier Class"><el-input :value="currentRow.hsfSupplierClassification || ''" disabled style="width: 200px"></el-input></el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="HSF审批人/HSF Approver"><el-input :value="currentRow.hsfApprover || ''" disabled style="width: 396px"></el-input></el-form-item>
<el-form-item label="Inform Related people"><el-input :value="currentRow.relatedPeople || ''" disabled style="width: 396px"></el-input></el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="currentRow">
<el-form-item label="Fiber报告信息/Fiber Information" style="display: block;"><el-input type="textarea" :rows="3" :value="currentRow.fiberInformation || ''" disabled resize="none" style="width: 802px;height: 30px"></el-input></el-form-item>
</el-form>
<el-form v-if="shouldShowHsfStandard(currentRow.endCustomer)" :inline="true" label-position="top" :model="currentRow" style="margin-top: 50px">
<el-form-item label="HSF标准/HSF Standard" style="display: block;"><el-input type="textarea" :rows="3" :value="currentRow.hsfStandard || ''" disabled resize="none" style="width: 802px;height: 30px"></el-input></el-form-item>
</el-form>
</div>
</el-tab-pane>
<el-tab-pane label="材料信息" name="materialInfo">
<div :style="{height: secondHeight + 'px'}" style="overflow-y: auto;">
<el-table
@ -1173,6 +1201,14 @@ export default {
operatorId: '',
operatorName: ''
},
relatedPeopleOptionList: [],
relatedPeopleDisplayList: [],
relatedPeopleSelection: null,
relatedPeopleFlag: false,
relatedPeopleSearchData: {
operatorId: '',
operatorName: ''
},
fileList: [],
approvalList: [],
plmRohsAuthorityArr: [],
@ -1239,7 +1275,7 @@ export default {
validUntilValue: 0,
validUntil: '',
isMeetRohsRequirement: '',
isAhGrade: '',
isAhGrade: 'N',
hsfSupplierClassification: '',
materialDesc: '',
npdRemark: '',
@ -1422,6 +1458,9 @@ export default {
getCurrentDateString () {
return this.normalizeDateOnly(new Date())
},
normalizeCheckboxFlag (value) {
return String(value || '').trim().toUpperCase() === 'Y' ? 'Y' : 'N'
},
normalizeValidUntilValue (value) {
if (value === null || value === undefined || value === '') {
return null
@ -1568,7 +1607,38 @@ export default {
})
this.$set(this.modalData, 'hsfApproverList', uniqueList)
this.$set(this.modalData, 'hsfApprover', uniqueList.join(';'))
if (!uniqueList.includes(this.modalData.relatedPeople)) {
this.buildRelatedPeopleOptions(uniqueList)
const relatedPeople = String(this.modalData.relatedPeople || '').trim()
if (relatedPeople && !uniqueList.includes(relatedPeople)) {
this.$set(this.modalData, 'relatedPeople', '')
}
},
buildRelatedPeopleOptions (selectedNames) {
const normalizedNames = (Array.isArray(selectedNames) ? selectedNames : (this.modalData.hsfApproverList || []))
.map(item => String(item || '').trim())
.filter(item => !!item)
const selectedSet = new Set(normalizedNames)
let optionList = (this.hsfApproverOptionList || [])
.filter(item => selectedSet.has(String(item.operatorName || '').trim()))
.map(item => ({
operatorId: item.operatorId,
operatorName: item.operatorName
}))
const existingNameSet = new Set(optionList.map(item => String(item.operatorName || '').trim()))
normalizedNames.forEach(name => {
if (existingNameSet.has(name)) {
return
}
optionList.push({
operatorId: name,
operatorName: name
})
existingNameSet.add(name)
})
this.relatedPeopleOptionList = optionList
this.filterRelatedPeopleOptions()
const selectedRelatedPeople = String(this.modalData.relatedPeople || '').trim()
if (selectedRelatedPeople && !optionList.some(item => String(item.operatorName || '').trim() === selectedRelatedPeople)) {
this.$set(this.modalData, 'relatedPeople', '')
}
},
@ -1601,6 +1671,17 @@ export default {
return matchOperatorId && matchOperatorName
})
},
filterRelatedPeopleOptions () {
const operatorIdKeyword = String(this.relatedPeopleSearchData.operatorId || '').trim().toUpperCase()
const operatorNameKeyword = String(this.relatedPeopleSearchData.operatorName || '').trim().toUpperCase()
this.relatedPeopleDisplayList = (this.relatedPeopleOptionList || []).filter(item => {
const operatorId = String(item.operatorId || '').toUpperCase()
const operatorName = String(item.operatorName || '').toUpperCase()
const matchOperatorId = !operatorIdKeyword || operatorId.includes(operatorIdKeyword)
const matchOperatorName = !operatorNameKeyword || operatorName.includes(operatorNameKeyword)
return matchOperatorId && matchOperatorName
})
},
openHsfApproverChooseModal () {
if (this.isRohsFieldDisabled('hsfApprover')) {
return
@ -1663,6 +1744,61 @@ export default {
this.$set(this.modalData, 'hsfApproverList', [])
this.syncHsfApproverFields()
},
openRelatedPeopleChooseModal () {
if (this.isRohsFieldDisabled('relatedPeople')) {
return
}
if (!this.modalData || !Array.isArray(this.modalData.hsfApproverList) || this.modalData.hsfApproverList.length === 0) {
this.$message.warning('请先选择HSF审批人')
return
}
this.buildRelatedPeopleOptions(this.modalData.hsfApproverList)
if (!this.relatedPeopleOptionList || this.relatedPeopleOptionList.length === 0) {
this.$message.warning('未查询到可选Inform Related people')
return
}
this.relatedPeopleFlag = true
},
openRelatedPeopleDialog () {
this.relatedPeopleSearchData = {
operatorId: '',
operatorName: ''
}
this.filterRelatedPeopleOptions()
const relatedPeople = String(this.modalData.relatedPeople || '').trim()
const selectedRow = (this.relatedPeopleOptionList || []).find(item => String(item.operatorName || '').trim() === relatedPeople) || null
this.relatedPeopleSelection = selectedRow
this.$nextTick(() => {
if (!this.$refs.relatedPeopleTable) {
return
}
this.$refs.relatedPeopleTable.setCurrentRow(selectedRow || null)
})
},
closeRelatedPeopleDialog () {
this.relatedPeopleSelection = null
},
handleRelatedPeopleCurrentChange (row) {
this.relatedPeopleSelection = row || null
},
handleRelatedPeopleTableClick (row) {
this.relatedPeopleSelection = row || null
if (this.$refs.relatedPeopleTable) {
this.$refs.relatedPeopleTable.setCurrentRow(row)
}
},
saveRelatedPeopleChooseModal () {
const selectedName = this.relatedPeopleSelection ? String(this.relatedPeopleSelection.operatorName || '').trim() : ''
this.$set(this.modalData, 'relatedPeople', selectedName)
this.relatedPeopleFlag = false
},
clearRelatedPeopleSelection () {
this.$set(this.modalData, 'relatedPeople', '')
this.relatedPeopleSelection = null
if (this.$refs.relatedPeopleTable) {
this.$refs.relatedPeopleTable.setCurrentRow(null)
}
},
clearHsfApproverFields (clearBuNo = false) {
if (clearBuNo) {
this.$set(this.modalData, 'buNo', '')
@ -1670,10 +1806,18 @@ export default {
this.hsfApproverOptionList = []
this.hsfApproverDisplayList = []
this.hsfApproverSelectionCache = []
this.relatedPeopleOptionList = []
this.relatedPeopleDisplayList = []
this.relatedPeopleSelection = null
this.relatedPeopleFlag = false
this.hsfApproverSearchData = {
operatorId: '',
operatorName: ''
}
this.relatedPeopleSearchData = {
operatorId: '',
operatorName: ''
}
this.$set(this.modalData, 'hsfApproverList', [])
this.$set(this.modalData, 'hsfApprover', '')
this.$set(this.modalData, 'relatedPeople', '')
@ -2183,6 +2327,14 @@ export default {
operatorName: ''
}
this.hsfApproverFlag = false
this.relatedPeopleOptionList = []
this.relatedPeopleDisplayList = []
this.relatedPeopleSelection = null
this.relatedPeopleSearchData = {
operatorId: '',
operatorName: ''
}
this.relatedPeopleFlag = false
this.plmRohsAuthorityArr = []
this.nodeAuthorityLoaded = !row
this.isEditMode = !!row
@ -2207,6 +2359,7 @@ export default {
this.$set(this.modalData, 'materialList', Array.isArray(this.modalData.materialList) ? this.modalData.materialList : [])
this.$set(this.modalData, 'hsfApproverList', this.modalData.hsfApprover ? this.modalData.hsfApprover.split(';').filter(item => item) : [])
this.$set(this.modalData, 'buNo', this.modalData.process || '')
this.$set(this.modalData, 'isAhGrade', this.normalizeCheckboxFlag(this.modalData.isAhGrade))
this.$set(this.modalData, 'validUntilValue', this.normalizeValidUntilValue(this.modalData.validUntilValue))
this.syncHsfApproverFields()
this.fillDisplayFields(this.modalData, row || {})
@ -2288,7 +2441,7 @@ export default {
validUntilValue: 0,
validUntil: '',
isMeetRohsRequirement: '',
isAhGrade: '',
isAhGrade: 'N',
hsfSupplierClassification: '',
materialDesc: '',
npdRemark: '',
@ -2312,6 +2465,7 @@ export default {
this.$message.warning('当前状态不允许保存')
return
}
this.$set(this.modalData, 'isAhGrade', this.normalizeCheckboxFlag(this.modalData.isAhGrade))
this.normalizeHsfStandardByCustomer(this.modalData)
this.syncHsfApproverFields()
if (!this.validateValidUntilPair()) {
@ -2382,6 +2536,7 @@ export default {
this.$message.warning('单据主键信息缺失,无法提交审批')
return
}
this.$set(this.modalData, 'isAhGrade', this.normalizeCheckboxFlag(this.modalData.isAhGrade))
this.normalizeHsfStandardByCustomer(this.modalData)
this.syncHsfApproverFields()
if (!this.validateValidUntilPair()) {

Loading…
Cancel
Save