From e79fb2bc7a30c6526478c5f09047b6ce91caa423 Mon Sep 17 00:00:00 2001 From: ljx <864490211@qq.com> Date: Thu, 16 May 2024 15:12:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=AB=E5=90=8D=EF=BC=8C=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=88=90=E6=B0=B8=E4=B9=85=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/editors/MkFormDataSelector.vue | 8 +- .../TrainNumber/TrainNumber/Edit.vue | 171 ++++++++++-------- 2 files changed, 103 insertions(+), 76 deletions(-) diff --git a/src/application/mk/components/editors/MkFormDataSelector.vue b/src/application/mk/components/editors/MkFormDataSelector.vue index d68c57b..4b7ff84 100644 --- a/src/application/mk/components/editors/MkFormDataSelector.vue +++ b/src/application/mk/components/editors/MkFormDataSelector.vue @@ -189,7 +189,6 @@ export default { this.actionParams = params.actionParams; } } - if (params.dataType == "string") { this.textboxValue = this.value || ""; } else if (params.dataType == "object") { @@ -219,8 +218,6 @@ export default { getData(key) { // 获取数据 var params = JSON.parse(JSON.stringify(this.params.actionParams || {})) - - params.page = this.tablePage.currentPage; // 当前页码 params.limit = this.tablePage.pageSize; // 每页条数 params.order_bys = params.order_bys || []; // 排序信息 @@ -228,6 +225,7 @@ export default { if (key) { key = this.$mk.trim(key); } + if (key) { for (let i = 0; i < this.searchFieldNames.length; i++) { let field = this.searchFieldNames[i]; @@ -333,7 +331,9 @@ export default { return false; } const cellValue = this.textboxValue; + console.log('+++',cellValue) if (!cellValue) { + console.log('---',cellValue) if (params.dataType == "string") { this.$emit('input', ""); if (params.onDataChanged) { @@ -353,6 +353,7 @@ export default { } + console.log(cellValue,'zheli') this.loading = true // 加载 let f = params.listdataFieldName || "Records"; this.getData(cellValue).then(data => { @@ -425,7 +426,6 @@ export default { if (params.onDataChanged) { - console.log(e) params.onDataChanged({value: [e.row.id, e.row[textField]], data: e.row}) } this.$refs.xDown.hidePanel() diff --git a/src/pages/Middle/transport/TrainNumber/TrainNumber/Edit.vue b/src/pages/Middle/transport/TrainNumber/TrainNumber/Edit.vue index 85ebb6b..398e3b5 100644 --- a/src/pages/Middle/transport/TrainNumber/TrainNumber/Edit.vue +++ b/src/pages/Middle/transport/TrainNumber/TrainNumber/Edit.vue @@ -499,7 +499,10 @@ export default { textField: "name", listdataFieldName: 'Truck', dataUrl: `${BASE_URL.BASE_URL}/Truck/v1/truck/list`, - onDataChanged: ({data}) => { + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } this.formOptions.data.truck_id = data.id; this.formOptions.data.current_distance = data.current_distance; this.formOptions.data.end_mileage = data.current_distance; @@ -518,7 +521,10 @@ export default { textField: "name", listdataFieldName: 'MesStaff', dataUrl: `${BASE_URL.BASE_URL}/MesStaff/v1/mes/staff/list`, - onDataChanged: ({data}) => { + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } this.formOptions.data.driver_id = data.id; } } @@ -550,30 +556,6 @@ export default { // {field: 'outbound_mileage',isNeedOutbound:true,title: '出车公里数',span: 6,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, {field:'',title:'',span:24,isTitle:true,needAdd:true,Htitle:'车次信息',itemRender:{}},//分割线 - {field: 'custom_name', title: '选择客户', span: 8, itemRender: { - name: 'MkFormDataSelector', props: { - params: { - dataType: "string", - valueField: "id", - textField: "name", - listdataFieldName: 'Custom', - dataUrl: `${BASE_URL.BASE_URL}/Custom/v1/custom/list`, - actionParams:{ - search_rules: [ - { - "column": "type", - "mode": "=", - "value": "0" - } - ], - }, - onDataChanged: ({data}) => { - this.formOptions.data.custom_id = data.id; - this.handleSoilName(); - } - } - } - }}, {field: 'supplier_name', title: '选择供应商', span: 8, itemRender: { name: 'MkFormDataSelector', props: { params: { @@ -591,13 +573,44 @@ export default { ], }, dataUrl: `${BASE_URL.BASE_URL}/Custom/v1/custom/list`, - onDataChanged: ({data}) => { + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } this.formOptions.data.supplier_id = data.id; this.handleSoilName(); } } } }}, + {field: 'custom_name', title: '选择客户', span: 8, itemRender: { + name: 'MkFormDataSelector', props: { + params: { + dataType: "string", + valueField: "id", + textField: "name", + listdataFieldName: 'Custom', + dataUrl: `${BASE_URL.BASE_URL}/Custom/v1/custom/list`, + actionParams:{ + search_rules: [ + { + "column": "type", + "mode": "=", + "value": "0" + } + ], + }, + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } + this.formOptions.data.custom_id = data.id; + this.handleSoilName(); + } + } + } + }}, + {field: 'soil_quality_material', title: '选择运输物品', span: 8, itemRender: { name: 'MkFormDataSelector', props: { params: { @@ -615,7 +628,10 @@ export default { // ], // }, dataUrl: `${BASE_URL.BASE_URL}/SoilQualityMaterial/v1/soil/quality/material/list`, - onDataChanged: ({data}) => { + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } this.formOptions.data.soil_quality_material_id = data.id; this.formOptions.data.buy_unit_price = data.price; this.formOptions.data.unit_price = data.price; @@ -624,21 +640,21 @@ export default { } } }}, - {field: 'soil_name_1', title: '物料别名(客户)', span: 8,isSoil1:true, itemRender: {name: '$input', props: {type: "",readonly:true}}}, - {field: 'soil_name_2', title: '物料别名(供应商)', span: 8,isSoil2:true, itemRender: {name: '$input', props: {type: "",readonly:true}}}, + + {field: 'soil_name_2', title: '物料别名(供应商)', span: 6,itemRender: {name: '$input', props: {type: "",readonly:true}}}, // {field: 'outbound_soil_quality_material_id', title: '出库物料土质', span: 8, itemRender: {name: '$input'}}, - {field: 'supplier_outbound_tonnage',title: '供应商出库吨位',span: 8,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice }}}, - {field: 'buy_unit_price', title: '购入单价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice } }}, - {field: 'buy_total_price', title: '购入总价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber}}}, + {field: 'supplier_outbound_tonnage',title: '供应商出库吨位',span: 6,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice }}}, + {field: 'buy_unit_price', title: '购入单价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice } }}, + {field: 'buy_total_price', title: '购入总价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber}}}, - + {field: 'soil_name_1', title: '物料别名(客户)', span: 6, itemRender: {name: '$input', props: {type: "",readonly:true}}}, // {field: 'warehousing_soil_quality_material_id',title: '入库物料土质',span: 8, itemRender: {name: '$input'}}, - {field: 'customer_warehousing_tonnage',title: '客户入库吨位',span: 8,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice }}}, - {field: 'unit_price', title: '单价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice } }}, - {field: 'total_price', title: '总价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, + {field: 'customer_warehousing_tonnage',title: '客户入库吨位',span: 6,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice }}}, + {field: 'unit_price', title: '单价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice } }}, + {field: 'total_price', title: '总价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, // {field: 'is_customer_settlement', title: '客户直接结算', span: 24, itemRender: { name: '$switch', props: { openLabel: '是', openValue: 1, closeValue: 0, closeLabel: '否' } }}, // {field: 'is_supplier_settlement', title: '供应商直接结算', span: 24, itemRender: { name: '$switch', props: { openLabel: '是', openValue: 1, closeValue: 0, closeLabel: '否' } }}, @@ -685,6 +701,33 @@ export default { }, train_numberOptions: { items: [ + {field: 'supplier_name', title: '选择供应商', span: 8, itemRender: { + name: 'MkFormDataSelector', props: { + params: { + dataType: "string", + valueField: "id", + textField: "name", + listdataFieldName: 'Custom', + actionParams:{ + search_rules: [ + { + "column": "type", + "mode": "=", + "value": "1" + } + ], + }, + dataUrl: `${BASE_URL.BASE_URL}/Custom/v1/custom/list`, + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } + this.formOptions.data.train_number[this.nowIndex].supplier_id = data.id; + this.handleSoilName1(); + } + } + } + }}, {field: 'custom_name', title: '选择客户', span: 8, itemRender: { name: 'MkFormDataSelector', props: { params: { @@ -702,37 +745,17 @@ export default { } ], }, - onDataChanged: ({data}) => { + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } this.formOptions.data.train_number[this.nowIndex].custom_id = data.id; this.handleSoilName1(); } } } }}, - {field: 'supplier_name', title: '选择供应商', span: 8, itemRender: { - name: 'MkFormDataSelector', props: { - params: { - dataType: "string", - valueField: "id", - textField: "name", - listdataFieldName: 'Custom', - actionParams:{ - search_rules: [ - { - "column": "type", - "mode": "=", - "value": "1" - } - ], - }, - dataUrl: `${BASE_URL.BASE_URL}/Custom/v1/custom/list`, - onDataChanged: ({data}) => { - this.formOptions.data.train_number[this.nowIndex].supplier_id = data.id; - this.handleSoilName1(); - } - } - } - }}, + {field: 'soil_quality_material', title: '选择运输物品', span: 8, itemRender: { name: 'MkFormDataSelector', props: { params: { @@ -741,7 +764,10 @@ export default { textField: "name", listdataFieldName: 'SoilQualityMaterial', dataUrl: `${BASE_URL.BASE_URL}/SoilQualityMaterial/v1/soil/quality/material/list`, - onDataChanged: ({data}) => { + onDataChanged: ({value,data}) => { + if(value == ''){ + return + } this.formOptions.data.train_number[this.nowIndex].soil_quality_material_id = data.id; this.formOptions.data.train_number[this.nowIndex].buy_unit_price = data.price; this.formOptions.data.train_number[this.nowIndex].unit_price = data.price; @@ -750,15 +776,16 @@ export default { } } }}, - {field: 'soil_name_1', title: '物料别名(客户)', span: 8,isSoil1:true, itemRender: {name: '$input', props: {type: "",readonly:true} }}, - {field: 'soil_name_2', title: '物料别名(供应商)', span: 8,isSoil2:true, itemRender: {name: '$input', props: {type: "",readonly:true}}}, - {field: 'supplier_outbound_tonnage',title: '供应商出库吨位',span: 8,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice1 }}}, - {field: 'buy_unit_price', title: '购入单价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice1 } }}, - {field: 'buy_total_price', title: '购入总价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, - {field: 'customer_warehousing_tonnage',title: '客户入库吨位',span: 8,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice1}}}, - {field: 'unit_price', title: '单价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice1 } }}, - {field: 'total_price', title: '总价', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, - {field: 'freight', title: '运费', span: 8, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, + + {field: 'soil_name_2', title: '物料别名(供应商)', span: 6, itemRender: {name: '$input', props: {type: "",readonly:true}}}, + {field: 'supplier_outbound_tonnage',title: '供应商出库吨位',span: 6,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice1 }}}, + {field: 'buy_unit_price', title: '购入单价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleBuyTotalPrice1 } }}, + {field: 'buy_total_price', title: '购入总价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, + {field: 'soil_name_1', title: '物料别名(客户)', span: 6, itemRender: {name: '$input', props: {type: "",readonly:true} }}, + {field: 'customer_warehousing_tonnage',title: '客户入库吨位',span: 6,itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice1}}}, + {field: 'unit_price', title: '单价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber,blur:this.handleTotalPrice1 } }}, + {field: 'total_price', title: '总价', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, + {field: 'freight', title: '运费', span: 6, itemRender: {name: '$input', props: {type: "number"}, events: { input: this.handleInputNumber }}}, ]}, // 司机补贴 driver_subsidyOptions: {