|
|
|
@ -486,33 +486,37 @@ |
|
|
|
<dict-data-select :site="$store.state.user.site" v-model="dataForm.department" dict-type="tool_application_department" disabled style="width: 130px"></dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item required="required"> |
|
|
|
<span slot="label" style="" @click="getBaseList(2002,1)"><a herf="#">报价员</a></span> |
|
|
|
<span v-if="changeApplyHeaderFlag('quoter') === 'N'" slot="label">报价员</span> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2002, 1)"><a herf="#">报价员</a></span> |
|
|
|
<el-input v-model="dataForm.quoterName" ref="quoterName" placeholder="请选择人员" readonly style="width: 130px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item required="required"> |
|
|
|
<span slot="label" style="" @click="getBaseList(2042,2)"><a herf="#">TP</a></span> |
|
|
|
<span v-if="changeApplyHeaderFlag('tp') === 'N'" slot="label">TP</span> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2042, 2)"><a herf="#">TP</a></span> |
|
|
|
<el-input v-model="dataForm.tpName" ref="tpName" placeholder="请选择人员" readonly style="width: 130px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item required="required"> |
|
|
|
<span slot="label" style="" @click="getBaseList(2000,3)"><a herf="#">采购员</a></span> |
|
|
|
<span v-if="changeApplyHeaderFlag('purchaser') === 'N'" slot="label">采购员</span> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2000, 3)"><a herf="#">采购员</a></span> |
|
|
|
<el-input v-model="dataForm.purchaserName" ref="purchaserName" placeholder="请选择人员" readonly style="width: 130px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item> |
|
|
|
<span slot="label" style="" @click="getBaseList(2051)"><a herf="#">CS</a></span> |
|
|
|
<el-form-item required="required"> |
|
|
|
<span v-if="changeApplyHeaderFlag('cs') === 'N'" slot="label">CS</span> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2051)"><a herf="#">CS</a></span> |
|
|
|
<el-input v-model="dataForm.csName" ref="csName" placeholder="请选择人员" readonly style="width: 130px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="费用抵消"> |
|
|
|
<dict-data-select v-model="dataForm.offsetOfExpenses" style="width: 330px" dict-type="tool_offset_of_expenses"></dict-data-select> |
|
|
|
<dict-data-select v-model="dataForm.offsetOfExpenses" :disabled="changeApplyHeaderFlag('offsetOfExpenses') === 'N'" style="width: 330px" dict-type="tool_offset_of_expenses"></dict-data-select> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" label-width="100px"> |
|
|
|
<el-form-item :label="'申请原因'"> |
|
|
|
<el-input type="textarea" style="width: 930px" resize="none" :autosize="{minRows: 3, maxRows: 3}" v-model="dataForm.applyReason"/> |
|
|
|
<el-input type="textarea" :disabled="changeApplyHeaderFlag('applyReason') === 'N'" resize="none" :autosize="{minRows: 3, maxRows: 3}" v-model="dataForm.applyReason" style="width: 930px"/> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: 45px"> |
|
|
|
<el-form-item :label="'备注'"> |
|
|
|
<el-input type="textarea" style="width: 930px" resize="none" :autosize="{minRows: 3, maxRows: 3}" v-model="dataForm.remark"/> |
|
|
|
<el-input type="textarea" :disabled="changeApplyHeaderFlag('remark') === 'N'" resize="none" :autosize="{minRows: 3, maxRows: 3}" v-model="dataForm.remark" style="width: 930px"/> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-tabs style="font-size: 12px;min-height: 330px;margin-top: 60px" class="customer-tab" v-model="activeModelName" type="border-card"> |
|
|
|
@ -558,7 +562,7 @@ |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span> |
|
|
|
</div> |
|
|
|
<div v-else-if=" (item.columnProp === 'standardCost')"> |
|
|
|
<el-input v-if="accessField('10601001')" v-model="scope.row.standardCost" type="number" @change="changeSum(scope.row)" placeholder="请输入成本" style="width:98%"></el-input> |
|
|
|
<el-input v-if="accessField('10601001')" v-model="scope.row.standardCost" type="number" :disabled="changeApplyDetailFlag('standardCost') === 'N'" @change="changeSum(scope.row)" placeholder="请输入成本" style="width:98%"></el-input> |
|
|
|
</div> |
|
|
|
<div v-else> |
|
|
|
<el-input v-model="scope.row.applyQty" type="number" @change="changeSum(scope.row)" :disabled="changeApplyDetailFlag('applyQty') === 'N'" placeholder="请输入数量" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')" style="width:98%"></el-input> |
|
|
|
@ -583,12 +587,12 @@ |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item label="IFS PR编号"> |
|
|
|
<el-input v-model="modelData.prNo" :disabled="$store.state.user.name !== dataForm.tp&&!superAdmin"></el-input> |
|
|
|
<el-input v-model="modelData.prNo" :disabled="changeApplyHeaderFlag('prNo') === 'N'"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="24"> |
|
|
|
<el-form-item label="备注" style="height: 240px"> |
|
|
|
<el-input type="textarea" v-model="modelData.remark1" :rows="3" :disabled="$store.state.user.name !== dataForm.tp&&!superAdmin"></el-input> |
|
|
|
<el-input type="textarea" v-model="modelData.remark1" :rows="3" :disabled="changeApplyHeaderFlag('remark1') === 'N'"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
@ -599,38 +603,39 @@ |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item label="采购订单号"> |
|
|
|
<el-input v-model="modelData.poNo" :disabled="$store.state.user.name !== dataForm.purchaser&&!superAdmin"></el-input> |
|
|
|
<el-input v-model="modelData.poNo" :disabled="changeApplyHeaderFlag('poNo') === 'N'"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item label="厂商名称"> |
|
|
|
<el-input v-model="modelData.supplierName" :disabled="$store.state.user.name !== dataForm.purchaser&&!superAdmin"></el-input> |
|
|
|
<el-input v-model="modelData.supplierName" :disabled="changeApplyHeaderFlag('supplierName') === 'N'"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item label="总成本(元)"> |
|
|
|
<el-input v-if="accessField('10601001')" v-model="modelData.allCost" type="number" :disabled="$store.state.user.name!==dataForm.purchaser&&!superAdmin"></el-input> |
|
|
|
<el-input v-if="!accessField('10601001')" v-model="valueNull" style="width: 130px" disabled></el-input> |
|
|
|
<el-input v-if="accessField('10601001')" v-model="modelData.allCost" :disabled="changeApplyHeaderFlag('allCost') === 'N'" type="number"></el-input> |
|
|
|
<el-input v-if="!accessField('10601001')" v-model="valueNull" disabled style="width: 130px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="24"> |
|
|
|
<el-form-item label="备注" style="height: 90px"> |
|
|
|
<el-input type="textarea" v-model="modelData.remark2" :rows="3" :disabled="$store.state.user.name!==dataForm.purchaser&&!superAdmin"></el-input> |
|
|
|
<el-input type="textarea" v-model="modelData.remark2" :rows="3" :disabled="changeApplyHeaderFlag('remark2') === 'N'"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
<el-row :gutter="15"> |
|
|
|
<el-col :span="4"> |
|
|
|
<el-form-item> |
|
|
|
<span slot="label" @click="getBaseList(2051)"><a herf="#">CS</a></span> |
|
|
|
<span v-if="changeApplyHeaderFlag('cs') === 'N'" slot="label">CS</span> |
|
|
|
<span v-else style="cursor: pointer" slot="label" @click="getBaseList(2051)"><a herf="#">CS</a></span> |
|
|
|
<el-input v-model="dataForm.csName" ref="csName" placeholder="请选择人员" readonly style="width: 130px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item label="CO"> |
|
|
|
<el-input v-model="modelData.co" :disabled="$store.state.user.name !== dataForm.purchaser && !superAdmin"></el-input> |
|
|
|
<el-input v-model="modelData.co" :disabled="changeApplyHeaderFlag('co') === 'N'"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
@ -905,7 +910,7 @@ |
|
|
|
<el-input readonly v-if="accessField('10601001')" v-model="scope.row.standardCost" type="number" @change="changeSum(scope.row)" placeholder="请输入成本" style="width:98%"></el-input> |
|
|
|
</div> |
|
|
|
<div v-else> |
|
|
|
<el-input readonly v-model="scope.row.applyQty" type="number" @change="changeSum(scope.row)" :disabled="changeApplyDetailFlag('applyQty') === 'N'" placeholder="请输入数量" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')" style="width:98%"></el-input> |
|
|
|
<el-input readonly v-model="scope.row.applyQty" type="number" @change="changeSum(scope.row)" placeholder="请输入数量" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')" style="width:98%"></el-input> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
@ -1069,7 +1074,8 @@ export default { |
|
|
|
if (!this.plmChangeApplyDetailArr) { |
|
|
|
return 'N' |
|
|
|
} |
|
|
|
let arr = this.plmChangeApplyDetailArr.filter(a => a.fieldId === value) |
|
|
|
let arr = this.plmChangeApplyDetailArr.filter(a => |
|
|
|
a.fieldId === value) |
|
|
|
if (arr.length > 0) { |
|
|
|
return arr[0].updateFlag |
|
|
|
} |
|
|
|
@ -2323,28 +2329,28 @@ export default { |
|
|
|
this.$nextTick(() => { |
|
|
|
let strVal = '' |
|
|
|
if (val === 2002) { |
|
|
|
if (this.changeApplyHeaderFlag('quoter') === 'N' && this.currentRow.status === '审批中') { |
|
|
|
this.$alert('没有权限在审批过程中修改!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
// if (this.changeApplyHeaderFlag('quoter') === 'N' && this.currentRow.status === '审批中') { |
|
|
|
// this.$alert('没有权限在审批过程中修改!', '错误', { |
|
|
|
// confirmButtonText: '确定' |
|
|
|
// }) |
|
|
|
// return false |
|
|
|
// } |
|
|
|
strVal = this.dataForm.quoter |
|
|
|
} else if (val === 2042) { |
|
|
|
if (this.changeApplyHeaderFlag('tp') === 'N' && this.currentRow.status === '审批中') { |
|
|
|
this.$alert('没有权限在审批过程中修改!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
// if (this.changeApplyHeaderFlag('tp') === 'N' && this.currentRow.status === '审批中') { |
|
|
|
// this.$alert('没有权限在审批过程中修改!', '错误', { |
|
|
|
// confirmButtonText: '确定' |
|
|
|
// }) |
|
|
|
// return false |
|
|
|
// } |
|
|
|
strVal = this.dataForm.tp |
|
|
|
} else if (val === 2000) { |
|
|
|
if (this.changeApplyHeaderFlag('purchaser') === 'N' && this.currentRow.status === '审批中') { |
|
|
|
this.$alert('没有权限在审批过程中修改!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
// if (this.changeApplyHeaderFlag('purchaser') === 'N' && this.currentRow.status === '审批中') { |
|
|
|
// this.$alert('没有权限在审批过程中修改!', '错误', { |
|
|
|
// confirmButtonText: '确定' |
|
|
|
// }) |
|
|
|
// return false |
|
|
|
// } |
|
|
|
strVal = this.dataForm.purchaser |
|
|
|
} |
|
|
|
this.$refs.baseList.init(val, strVal) |
|
|
|
@ -2788,7 +2794,6 @@ export default { |
|
|
|
linkNode.download = fileName // a标签的download属性规定下载文件的名称 |
|
|
|
linkNode.style.display = 'none' |
|
|
|
linkNode.href = URL.createObjectURL(blob) // 生成一个Blob URL |
|
|
|
console.log(linkNode) |
|
|
|
// if(val == 'Y'){ |
|
|
|
// this.pdfVisible = true |
|
|
|
// this.pdfUrl = linkNode.href |
|
|
|
@ -2983,6 +2988,36 @@ export default { |
|
|
|
|
|
|
|
// 提交 |
|
|
|
submitData() { |
|
|
|
if (this.plmChangeApplyHeaderArr) { |
|
|
|
for (let i = 0; i < this.plmChangeApplyHeaderArr.length; i++) { |
|
|
|
let fieldId = this.plmChangeApplyHeaderArr[i].fieldId; |
|
|
|
let isRequired = this.plmChangeApplyHeaderArr[i].required === 'Y'; |
|
|
|
|
|
|
|
let val = this.dataForm[fieldId]; |
|
|
|
if (val === undefined) { |
|
|
|
val = this.modelData[fieldId]; |
|
|
|
} |
|
|
|
|
|
|
|
if (isRequired && (val === undefined || val === null || val === '')) { |
|
|
|
this.$message.warning(this.plmChangeApplyHeaderArr[i].fieldName + '不能为空!') |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (this.plmChangeApplyDetailArr) { |
|
|
|
for (let i = 0; i < this.plmChangeApplyDetailArr.length; i++) { |
|
|
|
// 判断集合中的该属性是否都有值 |
|
|
|
let val = this.toolData.every(item => { |
|
|
|
const value = item[this.plmChangeApplyDetailArr[i].fieldId] |
|
|
|
return value !== null && value !== '' |
|
|
|
}) |
|
|
|
// 如果没有值 且该字段为必填 |
|
|
|
if (!val && this.plmChangeApplyDetailArr[i].required === 'Y') { |
|
|
|
this.$message.warning(this.plmChangeApplyDetailArr[i].fieldName + '不能为空!') |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
this.dataForm.userName = this.$store.state.user.name |
|
|
|
this.dataForm.menuId = this.$route.meta.menuId |
|
|
|
this.dataForm.detailList = this.toolData |
|
|
|
|