From 4872a9409f4428d55c896a4f53d42500f6c805a2 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期四, 25 四月 2024 12:01:47 +0800 Subject: [PATCH] 销售订单隶属品牌必填校验 --- src/views/plan/customerorder/sample-customerorder-form.vue | 136 +++++++++++++++++++++++++++++++-------------- 1 files changed, 93 insertions(+), 43 deletions(-) diff --git a/src/views/plan/customerorder/sample-customerorder-form.vue b/src/views/plan/customerorder/sample-customerorder-form.vue index 8b895f7..765dc1a 100644 --- a/src/views/plan/customerorder/sample-customerorder-form.vue +++ b/src/views/plan/customerorder/sample-customerorder-form.vue @@ -1,7 +1,7 @@ <template> <el-dialog width="75%" - top="10vh" + top="5vh" :fullscreen="isFullScreen" :close-on-click-modal="false" :visible.sync="visible" @@ -34,7 +34,7 @@ <el-input v-model="dataForm.contractNo" placeholder="" - disabled + ></el-input> </el-form-item> </el-col> @@ -60,9 +60,11 @@ <el-row> <el-col :span="6"> <el-form-item label="涓氬姟鍛�" prop="salesMan"> - <el-select @change="selsctionSales" clearable filterable v-model="salesSelectData" style="width:100%"> + <!-- salesMan --> + <el-input v-model="dataForm.salesMan" placeholder=""></el-input> + <!-- <el-select @change="selsctionSales" clearable filterable v-model="salesSelectData" style="width:100%"> <el-option v-for="(item,index) in staffOptions" :key="index" :value="item.staffNo+','+item.staffName" :label="item.staffName"/> - </el-select> + </el-select> --> </el-form-item> </el-col> <el-col :span="6"> @@ -230,7 +232,8 @@ } </style> <script> -import { addObj } from '@/api/plan/customer' +import { saveOrUpdate } from '@/api/plan/customer' +import { getCustomerMainAndOrderBycNo } from '@/api/plan/customerorder' import { remote } from '@/api/admin/dict' import PartDialog from '@/views/common/part.vue' import {dateFormat} from '@/util/date' @@ -267,18 +270,19 @@ currentSelectRow: 0, option: tableOption, tableData: [{ - "$cellEdit": true, - "$index": 0, - "partNo": "", - "customerPartSpec": "", - "manufactureAttr": "", - "productName": "", - "productType": "", - "otcUnit": "", - "buyQtyDue": "", - "shippingAddress": "", - "remark": "", - "isTrusted": true + id: null, + $cellEdit: true, + $index: 0, + partNo: "", + customerPartSpec: "", + manufactureAttr: "", + productName: "", + productType: "", + otcUnit: "", + buyQtyDue: "", + shippingAddress: "", + remark: "", + isTrusted: true }], staffOptions: [], title: '', @@ -287,6 +291,7 @@ buttonDisable: false, showPart: false, dataForm: { + id: null, contractNo: null, customerName: null, customerNo: null, @@ -327,12 +332,46 @@ this.staffOptions = response.data.data }) }, - init(id) { - this.initDataForm() - this.visible = true - this.$nextTick(() => { - this.title = '鏂板' - }) + init(contractNo) { + if(contractNo){ + getCustomerMainAndOrderBycNo(contractNo).then(res=>{ + if(res.status===200){ + let data = res.data.data + this.dataForm.id = data.id + this.dataForm.contractNo = data.contractNo + this.dataForm.customerName = data.customerName + this.dataForm.entityName = data.entityName + this.dataForm.province = data.province + this.salesSelectData = data.salesMan + this.dataForm.salesMan = data.salesMan + this.dataForm.originalContractStatus = data.originalContractStatus + this.dataForm.isCp = data.isCp + this.dataForm.customerNo = data.customerNo + this.dataForm.returnStatus = data.returnStatus + this.dataForm.placeOrderDate = data.placeOrderDate + this.dataForm.factoryPlaceOrderDate = data.factoryPlaceOrderDate + this.dataForm.deliveryDate = data.deliveryDate + this.dataForm.comment = data.comment + data.customerOrderVOList.forEach(e=>{ + e.$cellEdit = true + }) + this.tableData = data.customerOrderVOList + console.log(this.dataForm); + } + }).catch(error=>{ + console.error(error) + }) + this.visible = true + this.$nextTick(() => { + this.title = '缂栬緫' + }) + }else{ + this.initDataForm() + this.visible = true + this.$nextTick(() => { + this.title = '鏂板' + }) + } }, initDataForm() { this.dataForm.contractNo = null @@ -349,18 +388,19 @@ this.dataForm.deliveryDate = null this.dataForm.comment = null this.dataForm.customerOrderVOList = [{ - "$cellEdit": true, - "$index": 0, - "partNo": "", - "customerPartSpec": "", - "manufactureAttr": "", - "productName": "", - "productType": "", - "otcUnit": "", - "buyQtyDue": "", - "shippingAddress": "", - "remark": "", - "isTrusted": true + id: null, + $cellEdit: true, + $index: 0, + partNo: "", + customerPartSpec: "", + manufactureAttr: "", + productName: "", + productType: "", + otcUnit: "", + buyQtyDue: "", + shippingAddress: "", + remark: "", + isTrusted: true }] }, // 琛ㄥ崟鎻愪氦 @@ -369,6 +409,10 @@ let isError = false _than.buttonDisable = true _than.tableData.forEach(ele=>{ + if(ele.productType==null || ele.productType=='' || ele.productType==undefined){ + _than.$message.error("浜у搧鐨勯毝灞炲搧鐗屼笉鑳戒负绌�!") + isError = true + } if(ele.buyQtyDue==null || ele.buyQtyDue=='' || ele.buyQtyDue==undefined){ _than.$message.error("闆朵欢鏁伴噺涓嶈兘涓虹┖!") isError = true @@ -387,12 +431,18 @@ _than.$refs.dataForm.validate((valid) => { if (valid) { _than.dataForm.customerOrderVOList = _than.tableData - addObj(_than.dataForm).then((data) => { - _than.$message.success('娣诲姞鎴愬姛') - _than.initDataForm(); - _than.visible = false - _than.buttonDisable = false - _than.$emit('refreshDataList', 1) + saveOrUpdate(_than.dataForm).then((res) => { + if(res.status===200){ + if(_than.dataForm.id){ + _than.$message.success('鏇存柊鎴愬姛') + }else{ + _than.$message.success('娣诲姞鎴愬姛') + } + _than.initDataForm(); + _than.visible = false + _than.buttonDisable = false + _than.$emit('refreshDataList', 1) + } }).catch((error) => { _than.buttonDisable = false }) @@ -410,8 +460,8 @@ const index = this.currentSelectRow if (part) { this.tableData[index].partNo = part.partNo - this.tableData[index].customerPartSpec = part.specs - this.tableData[index].productName = part.partName + // this.tableData[index].customerPartSpec = part.specs + // this.tableData[index].productName = part.partName } }, // 鍏ㄥ睆 -- Gitblit v1.9.3