From 00fa40050801614c079026fc629c0ea0b807ed5d Mon Sep 17 00:00:00 2001 From: liuying <1427574514@qq.com> Date: 周四, 25 4月 2024 16:07:04 +0800 Subject: [PATCH] bug --- iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsMaterial/tabForm.vue | 275 ++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 194 insertions(+), 81 deletions(-) diff --git a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsMaterial/tabForm.vue b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsMaterial/tabForm.vue index 3377cf6..8c7c415 100644 --- a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsMaterial/tabForm.vue +++ b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsMaterial/tabForm.vue @@ -1,13 +1,12 @@ <template> - <a-modal title="鏂板鍩虹鐗╂枡淇℃伅" :width="900" :visible="visible" :confirmLoading="confirmLoading" @ok="handleSubmit" + <a-modal :title="title" :width="1300" :visible="visible" :confirmLoading="confirmLoading" @ok="handleSubmit" @cancel="handleCancel"> <a-spin :spinning="confirmLoading"> <!-- tab --> <a-tabs default-active-key="1" @change="callbacktab"> <a-tab-pane key="1" tab="鍩烘湰淇℃伅"> <!-- <add-form ref="addFormRef" @ok="handleOk" /> --> - - <!-- 鍩烘湰淇℃伅 --> + <!-- 鍩烘湰淇℃伅 layout="inline" layout="vertical" --> <a-form :form="form"> <a-form-item label="鐗╂枡鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> <a-input placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" @@ -30,16 +29,10 @@ <a-form-item label="鐗╂枡绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-select style="width: 100%" placeholder="璇烽�夋嫨鐗╂枡绫诲瀷" v-decorator="['materialType']"> - <a-select-option v-for="(item, index) in materialTypeData" :key="index" - :value="Number(item.materialTypeCode)">{{ item.materialTypeName }}</a-select-option> + <a-select-option v-for="(item, index) in materialTypeData" :key="index" :value="item.materialTypeCode">{{ + item.materialTypeName }}</a-select-option> </a-select> </a-form-item> - - <!-- <a-col :md="8" :sm="24"> - - </a-col> --> - - <a-form-item label="鐗╂枡缁�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> <a-input placeholder="璇疯緭鍏ョ墿鏂欑粍" v-decorator="['materialGroup']" /> @@ -48,7 +41,15 @@ <a-input placeholder="璇疯緭鍏BC鍒嗙被鍚嶇О" v-decorator="['aBCClassName']" /> </a-form-item> --> <a-form-item label="ABC鍒嗙被" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> - <a-input-number placeholder="璇疯緭鍏BC鍒嗙被" style="width: 100%" v-decorator="['aBCClass']" /> + <!-- <a-input-number placeholder="璇疯緭鍏BC鍒嗙被" style="width: 100%" v-decorator="['aBCClass']" /> --> + + <a-select style="width: 100%" placeholder="璇烽�夋嫨ABC鍒嗙被" v-decorator="['abcClass']"> + <a-select-option v-for="(item, index) in materialTypeData2" :key="index" :value="Number(item.code)">{{ + item.name }}</a-select-option> + </a-select> + + + </a-form-item> <a-form-item label="鐗╂枡瑙勬牸" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> <a-input placeholder="璇疯緭鍏ョ墿鏂欒鏍�" v-decorator="['materialSpec']" /> @@ -57,10 +58,24 @@ <a-input placeholder="璇疯緭鍏ラ粯璁ゅ叆搴撳簱浣�" v-decorator="['inPlaceCode']" /> </a-form-item> <a-form-item label="搴撳瓨鍗曚綅" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> - <a-input placeholder="璇疯緭鍏ュ簱瀛樺崟浣�" v-decorator="['materialUnit']" /> + <!-- <a-input placeholder="璇疯緭鍏ュ簱瀛樺崟浣�" v-decorator="['materialUnit']" /> --> + + <a-select style="width: 100%" placeholder="璇烽�夋嫨搴撳瓨鍗曚綅" v-decorator="['materialUnit']"> + <a-select-option v-for="(item, index) in selectTypeData1" :key="index" :value="item.unitCode">{{ + item.unitName }}</a-select-option> + </a-select> + + </a-form-item> <a-form-item label="閲囪喘鍗曚綅" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> - <a-input placeholder="璇疯緭鍏ラ噰璐崟浣�" v-decorator="['pOUnit']" /> + <!-- <a-input placeholder="璇疯緭鍏ラ噰璐崟浣�" v-decorator="['pOUnit']" /> --> + + <a-select style="width: 100%" placeholder="璇烽�夋嫨閲囪喘鍗曚綅" v-decorator="['pOUnit']"> + <a-select-option v-for="(item, index) in selectTypeData2" :key="index" :value="item.unitCode">{{ + item.unitName }}</a-select-option> + </a-select> + + </a-form-item> <a-form-item label="棰滆壊" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> <a-input placeholder="璇疯緭鍏ラ鑹�" v-decorator="['color']" /> @@ -89,34 +104,37 @@ </a-form> </a-tab-pane> <a-tab-pane key="2" tab="鎺у埗灞炴��" force-render> - <add-control-rule ref="WmsControlRule" @ok="handleOk" /> + <add-control-rule v-if="visible" ref="WmsControlRuleRef" /> </a-tab-pane> <a-tab-pane key="3" tab="鎵规灞炴��"> 闇�姹傚緟瀹� </a-tab-pane> <a-tab-pane key="4" tab="鏇夸唬鍝佺鐞�"> - <add-form-sub ref="addFormWmsSubstituteGoodRef" @ok="handleOk" /> + <add-form-sub v-if="visible" ref="addFormWmsSubstituteGoodRef" /> </a-tab-pane> <a-tab-pane key="5" tab="瀹㈡埛"> - <add-form-base-customer ref="addFormBaseCustomer" @ok="handleOk" /> + <add-form-base-customer v-if="visible" ref="addFormBaseCustomer" /> </a-tab-pane> - <a-tab-pane key="6" tab="鍖呰鍏崇郴"> + <!-- <a-tab-pane key="6" tab="鍖呰鍏崇郴"> <add-form-container-packaging ref="addFormContainerPackagingRef" @ok="handleOk" /> - </a-tab-pane> + </a-tab-pane> --> </a-tabs> </a-spin> </a-modal> </template> <script> -import { WmsMaterialAdd, GetAreas, GetStations, materialTypeDataList } from '@/api/modular/main/WmsMaterialManage' + +import { + WmsMaterialAdd, WmsMaterialEdit, WmsMaterialDetailList, materialTypeDataList +} from '@/api/modular/main/WmsBase/WmsMaterialManage' import addForm from './tabItem/addForm.vue' import addFormBaseCustomer from './tabItem/addFormBaseCustomer/addFormBaseCustomer.vue' import addFormContainerPackaging from './tabItem/WmsContainerPackaging/addFormContainerPackaging.vue' import addFormSub from './tabItem/WmsSubstituteGood/addFormWmsSubstituteGood.vue' -import addControlRule from './tabItem/WmsControlRule/index.vue' - +import addControlRule from './tabItem/WmsControlRule/addForm.vue' +import { WmsUnitPage } from '@/api/modular/main/WmsBase/WmsUnitManage' export default { components: { addForm, @@ -127,9 +145,12 @@ }, created() { this.materialTypeDataList() + const materialTypeOption = this.$options + this.materialTypeData2 = materialTypeOption.filters['dictData']('abc_class_type') }, data() { return { + title: '', labelCol: { // xs: { span: 24 }, // sm: { span: 5 } @@ -146,46 +167,97 @@ stationNameParameterData: [], visible: false, confirmLoading: false, - form: this.$form.createForm(this) + form: this.$form.createForm(this), + materialTypeData2: [], + selectTypeData2: [], + selectTypeData1: [] } }, methods: { + // 鐗╂枡绫诲瀷 materialTypeDataList() { materialTypeDataList().then((d) => { this.materialTypeData = d.data || [] }).catch(() => { }) + // 搴撳瓨鍗曚綅 + WmsUnitPage().then((d) => { + this.selectTypeData1 = d.data.rows || [] + }).catch(() => { + + }) + + // 閲囪喘鍗曚綅 + WmsUnitPage().then((d) => { + this.selectTypeData2 = d.data.rows || [] + }).catch(() => { + + }) + }, callbacktab(e) { //鍖呰鍏崇郴 - if (e == 6) { - this.$nextTick(() => { - let materialType = this.form.getFieldValue('materialType'); - // 璋冩帴鍙� 浼犵墿鏂欑被鍨� - this.$refs.addFormContainerPackagingRef.initShow(materialType) - - }) - } + // if (e == 6) { + // this.$nextTick(() => { + // let materialType = this.form.getFieldValue('materialType'); + // // 璋冩帴鍙� 浼犵墿鏂欑被鍨� + // this.$refs.addFormContainerPackagingRef.initShow(materialType) + // }) + // } // 鏇夸唬鍝� if (e == 4) { - let materialCode = this.form.getFieldValue('materialCode'); - let materialName = this.form.getFieldValue('materialName'); - this.$refs.addFormWmsSubstituteGoodRef.initShow(materialCode, materialName) + this.$nextTick(() => { + // let materialCode = this.form.getFieldValue('materialCode'); + // let materialName = this.form.getFieldValue('materialName'); + this.$refs.addFormWmsSubstituteGoodRef.initShowSubstituteGood() + }) } }, handleOk() { }, // 鍒濆鍖栨柟娉� - add(record) { + add(record, type) { this.visible = true - this.$nextTick(() => { - this.getSelects() - }) - // const materialTypeOption = this.$options - // this.materialTypeData = materialTypeOption.filters['dictData']('material_type') - const inspectionMethodOption = this.$options - this.inspectionMethodData = inspectionMethodOption.filters['dictData']('material_inspection') + if (record) {//缂栬緫 + if (type == '璇︽儏') { + this.title = '璇︽儏鐗╂枡淇℃伅璇︽儏';// 璇︽儏 + } else { + this.title = '缂栬緫鍩虹鐗╂枡淇℃伅'; + } + this.$nextTick(() => { + this.form.setFieldsValue({ + ...record + }) + }) + WmsMaterialDetailList({ + id: record.id + }) + .then(res => { + if (res.success) { + + console.log(res) + this.$nextTick(() => { + if (res.data.controlRuleDetailList && res.data.controlRuleDetailList.length > 0) { + this.$refs.WmsControlRuleRef.form.setFieldsValue({ + ...res.data.controlRuleDetailList[0] + }) + } + this.$refs.addFormWmsSubstituteGoodRef.list = res.data.substituteGoodList || [] + this.$refs.addFormBaseCustomer.list = res.data.baseCustomerList || [] + }) + + } else { + this.$message.error('璇︽儏澶辫触锛�' + JSON.stringify(res.message)) + } + }) + .finally(res => { + this.confirmLoading = false + }) + + } else { + this.title = '鏂板鍩虹鐗╂枡淇℃伅';// 鏂板 + } }, getSelects() { if (this.areaNameParameterData.length <= 0 || this.stationNameParameterData.length <= 0) { @@ -208,58 +280,88 @@ const { form: { validateFields } } = this - this.confirmLoading = true + validateFields((errors, values) => { if (!errors) { - if (this.$getObjectType(values.areas) === 'array') { - values.areaIds = values.areas.join(',') - values.areaNameParameterArr = values.areas.map(val => { - return this.parseSelectName(val, 'areaId', 'areaName', 'areaNameParameterData') - }) - values.areaNameParameter = values.areaNameParameterArr.join(',') - } - if (this.$getObjectType(values.stations) === 'array') { - values.stationIds = values.stations.join(',') - values.stationNameParameterArr = values.stations.map(val => { - return this.parseSelectName(val, 'stationId', 'stationName', 'stationNameParameterData') - }) - values.stationNameParameter = values.stationNameParameterArr.join(',') - } + // if (this.$getObjectType(values.areas) === 'array') { + // values.areaIds = values.areas.join(',') + // values.areaNameParameterArr = values.areas.map(val => { + // return this.parseSelectName(val, 'areaId', 'areaName', 'areaNameParameterData') + // }) + // values.areaNameParameter = values.areaNameParameterArr.join(',') + // } + // if (this.$getObjectType(values.stations) === 'array') { + // values.stationIds = values.stations.join(',') + // values.stationNameParameterArr = values.stations.map(val => { + // return this.parseSelectName(val, 'stationId', 'stationName', 'stationNameParameterData') + // }) + // values.stationNameParameter = values.stationNameParameterArr.join(',') + // } console.log(6666666666666 + '鎺у埗灞炴��') - console.log(this.$refs.WmsControlRule.selectedRows) - var ControlRuleld = this.$refs.WmsControlRule.selectedRows[0].id + var ControlRuleld = this.$refs.WmsControlRuleRef.form.getFieldValue('id') || '' + let SubstituteGoodList = [] + if (this.$refs.addFormWmsSubstituteGoodRef && this.$refs.addFormWmsSubstituteGoodRef.list.length > 0) { + SubstituteGoodList = this.$refs.addFormWmsSubstituteGoodRef.list + SubstituteGoodList.forEach(item => { + item.materialName = this.form.getFieldValue('materialName') + item.materialCode = this.form.getFieldValue('materialCode') + }) + } console.log(6666666666666 + '鏇夸唬鍝�') - console.log(this.$refs.addFormWmsSubstituteGoodRef.list) - - console.log(6666666666666 + '瀹㈡埛妗f闆嗗悎') - console.log(this.$refs.addFormBaseCustomer.list) - console.log(6666666666666 + '鍖呰鍏崇郴') - console.log(this.$refs.addFormContainerPackagingRef.list) + let BaseCustomerList = []; + if (this.$refs.addFormBaseCustomer && this.$refs.addFormBaseCustomer.list.length > 0) { + BaseCustomerList = this.$refs.addFormBaseCustomer.list + + } + console.log(6666666666666 + '寰�鏉ュ叧绯婚泦鍚�') + + // console.log(6666666666666 + '鍖呰鍏崇郴') + // console.log(this.$refs.addFormContainerPackagingRef.list) + var param = { MaterialInput: values, ControlRuleld: ControlRuleld, //鎺у埗灞炴�� - SubstituteGoodLis: this.$refs.addFormWmsSubstituteGoodRef.list, //鏇夸唬鍝� - BaseCustomerList: this.$refs.addFormBaseCustomer.list, //瀹㈡埛妗f闆嗗悎 - ContainerPackagingList: this.$refs.addFormContainerPackagingRef.list //鍖呰鍏崇郴 + SubstituteGoodList: SubstituteGoodList, //鏇夸唬鍝� + BaseCustomerList: BaseCustomerList, //寰�鏉ュ叧绯婚泦鍚� + // ContainerPackagingList: this.$refs.addFormContainerPackagingRef.list //鍖呰鍏崇郴 } - WmsMaterialAdd(param) - .then(res => { - if (res.success) { - this.$message.success('鏂板鎴愬姛') + this.confirmLoading = true + if (this.title == '鏂板鍩虹鐗╂枡淇℃伅') { + WmsMaterialAdd(param) + .then(res => { + if (res.success) { + this.$message.success('鏂板鎴愬姛') + this.confirmLoading = false + this.$emit('ok', values) + this.handleCancel() + } else { + this.$message.error('鏂板澶辫触锛�' + JSON.stringify(res.message)) + } + }) + .finally(res => { this.confirmLoading = false - this.$emit('ok', values) - this.handleCancel() - } else { - this.$message.error('鏂板澶辫触锛�' + JSON.stringify(res.message)) - } - }) - .finally(res => { - this.confirmLoading = false - }) + }) + } else { + WmsMaterialEdit(param) + .then(res => { + if (res.success) { + this.$message.success('缂栬緫鎴愬姛') + this.confirmLoading = false + this.$emit('ok', values) + this.handleCancel() + } else { + this.$message.error('缂栬緫澶辫触锛�' + JSON.stringify(res.message)) + } + }) + .finally(res => { + this.confirmLoading = false + }) + } + } else { this.confirmLoading = false } @@ -278,7 +380,18 @@ handleCancel() { this.form.resetFields() this.visible = false + // this.$refs.WmsControlRule.form.resetFields() + // this.$refs.addFormWmsSubstituteGoodRef.list =[] + // this.$refs.addFormWmsSubstituteGoodRef.list =[] + } } } </script> + +<style lang="less" scoped> +.ant-row.ant-form-item { + width: 50% !important; + display: inline-block; +} +</style> -- Gitblit v1.9.3