| | |
| | | import FormTemplate from "./FormTemplate"; |
| | | import ResembleQuery from "./ResembleQuery"; |
| | | export default { |
| | | name: "FormTemplateDialog", |
| | | name: "FormTemplateDialog", |
| | | components: { ResembleQuery, FormTemplate }, |
| | | props: { |
| | | visible: { |
| | |
| | | showCodeApply: false, |
| | | showResembleQuery: false, |
| | | selfColumnType: { |
| | | codefixedsec: "combox", |
| | | codeclassifysec: "refer", |
| | | codevariablesec: "text", |
| | | coderefersec: "refer", |
| | | codefixedsec: "combox",//固定码段 |
| | | codeclassifysec: "refer",//分类码段 |
| | | codevariablesec: "text",//可变码段 |
| | | coderefersec: "refer"//引用码段 |
| | | }, |
| | | selfColumnConfig: { |
| | | function: { |
| | |
| | | label: "name", |
| | | maxlength: "codeSecLength", |
| | | data: "fixedValueVOList", |
| | | dateFormate: "codeDateFormatStr" |
| | | }, |
| | | directVoluation: { |
| | | search: true, |
| | |
| | | if (res.data && res.data.code === 200) { |
| | | this.codeRuleOid = res.data.data.oid; |
| | | const typeList = [ |
| | | //固定码段 |
| | | "codefixedsec", |
| | | //分类码段 |
| | | "codeclassifysec", |
| | | //可变码段 |
| | | "codevariablesec", |
| | | "coderefersec", |
| | | //引用码段 |
| | | "coderefersec" |
| | | ]; |
| | | this.secVOList = (res.data.data.secVOList || []).filter((item) => |
| | | typeList.includes(item.secType) |
| | |
| | | this.showCodeApply = false; |
| | | } |
| | | } |
| | | console.log(' this.secVOList',this.secVOList) |
| | | console.log(' res.data.data.secVOList',res.data.data.secVOList) |
| | | }); |
| | | }, |
| | | getFormData(form) { |
| | |
| | | if (item.parentClassifySecOid === field) { |
| | | this.$refs.CodeApply.form[item.oid] = undefined; |
| | | this.$refs.CodeApply.form[item.name] = undefined; |
| | | item.readOnly=false; |
| | | item.referConfig.extraParams.parentClassifyValueOid=data.value; |
| | | } |
| | | return item; |
| | | }); |
| | |
| | | this.form |
| | | ); |
| | | } |
| | | if (resembleQueryList.length === 0) { |
| | | let resForm = {}; |
| | | const { defaultValue, formValue } = this.getDefaultValueAndFormValues( |
| | | this.form |
| | | ); |
| | | const noData = [ |
| | | "jiliangdwname", |
| | | "materialtypeText", |
| | | "morengongysname", |
| | | "$caigouwl", |
| | | "$xiaoshouwl", |
| | | "$shifoupihaoguanli", |
| | | "lcstatus_text", |
| | | "hesuanfenleiname", |
| | | "$kucunwl", |
| | | ]; |
| | | noData.forEach((item) => { |
| | | this.$delete(formValue, item); |
| | | }); |
| | | resForm.data = formValue; |
| | | resForm = Object.assign({}, resForm, defaultValue); |
| | | resForm.secDTOList = []; |
| | | for (const key in this.codeApplyForm) { |
| | | if (Object.hasOwnProperty.call(this.codeApplyForm, key)) { |
| | | const value = this.codeApplyForm[key]; |
| | | if (value) { |
| | | resForm.secDTOList.push({ secOid: key, secValue: value }); |
| | | } |
| | | } |
| | | } |
| | | resForm.codeClassifyOid = this.codeClassifyOid; |
| | | resForm.codeRuleOid = this.codeRuleOid; |
| | | resForm.templateOid = this.templateOid; |
| | | this.$emit("submit", resForm); |
| | | } else { |
| | | this.$confirm( |
| | | if (resembleQueryList.length > 0) { |
| | | await this.$confirm( |
| | | `该物料已有${resembleQueryList.length}条相似数据,是否继续保存?`, |
| | | "需要您确认", |
| | | { |
| | |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | } |
| | | ) |
| | | .then(() => { |
| | | // 排除一些字段 |
| | | const noData = [ |
| | | "jiliangdwname", |
| | | "materialtypeText", |
| | | "morengongysname", |
| | | "$caigouwl", |
| | | "$xiaoshouwl", |
| | | "$shifoupihaoguanli", |
| | | "lcstatus_text", |
| | | "hesuanfenleiname", |
| | | "$kucunwl", |
| | | ]; |
| | | let resForm = {}; |
| | | const { defaultValue, formValue } = |
| | | this.getDefaultValueAndFormValues(this.form); |
| | | noData.forEach((item) => { |
| | | this.$delete(formValue, item); |
| | | }); |
| | | resForm.data = formValue; |
| | | resForm = Object.assign({}, resForm, defaultValue); |
| | | resForm.secDTOList = this.secVOList.map((item) => { |
| | | return { |
| | | secOid: item.oid, |
| | | secValue: this.codeApplyForm[item.oid], |
| | | }; |
| | | }); |
| | | resForm.codeClassifyOid = this.codeClassifyOid; |
| | | resForm.codeRuleOid = this.codeRuleOid; |
| | | resForm.templateOid = this.templateOid; |
| | | this.$emit("submit", resForm); |
| | | }) |
| | | .catch(() => {}); |
| | | ); |
| | | } |
| | | // 排除一些字段 |
| | | const noData = [ |
| | | "jiliangdwname", |
| | | "materialtypeText", |
| | | "morengongysname", |
| | | "$caigouwl", |
| | | "$xiaoshouwl", |
| | | "$shifoupihaoguanli", |
| | | "lcstatus_text", |
| | | "hesuanfenleiname", |
| | | "$kucunwl", |
| | | "oldcode", |
| | | "lastmodifier" |
| | | ]; |
| | | let resForm = {}; |
| | | const { defaultValue, formValue } = this.getDefaultValueAndFormValues( |
| | | this.form |
| | | ); |
| | | noData.forEach((item) => { |
| | | this.$delete(formValue, item); |
| | | }); |
| | | const keys = Object.keys(formValue); |
| | | debugger |
| | | keys.forEach((item, index) => { |
| | | keys.forEach((itm, idx) => { |
| | | if ((item === ('$' + itm)) && idx !== index) { |
| | | this.$delete(formValue, keys[index]); |
| | | } |
| | | }) |
| | | }); |
| | | |
| | | resForm.data = formValue; |
| | | resForm = Object.assign({}, resForm, defaultValue); |
| | | resForm.secDTOList = this.secVOList.map((item) => { |
| | | return { |
| | | secOid: item.oid, |
| | | secValue: this.codeApplyForm[item.oid], |
| | | }; |
| | | }); |
| | | resForm.codeClassifyOid = this.codeClassifyOid; |
| | | resForm.codeRuleOid = this.codeRuleOid; |
| | | resForm.templateOid = this.templateOid; |
| | | this.$emit("submit", resForm); |
| | | }, |
| | | getDefaultValueAndFormValues(form) { |
| | | let defaultValue = {}; |
| | |
| | | getReferConfig(item) { |
| | | let params = {}; |
| | | if (item.secType == "codeclassifysec") { |
| | | //分类码段 |
| | | params = { |
| | | isMuti: false, |
| | | type: "grid", |
| | |
| | | }, |
| | | }; |
| | | } else if (item.secType == "coderefersec") { |
| | | //引用码段 |
| | | params = JSON.parse(item.referValueInfo); |
| | | } |
| | | return params; |