| | |
| | | <template> |
| | | <el-dialog |
| | | width="75%" |
| | | top="10vh" |
| | | top="5vh" |
| | | :fullscreen="isFullScreen" |
| | | :close-on-click-modal="false" |
| | | :visible.sync="visible" |
| | |
| | | <el-input v-model="dataForm.entityName" placeholder=""></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <!-- <el-col :span="6"> |
| | | <el-form-item label="事业部" prop="salesDepartment"> |
| | | <el-input |
| | | v-model="dataForm.salesDepartment" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | </el-col> --> |
| | | <el-col :span="6"> |
| | | <el-form-item label="省份" prop="province"> |
| | | <el-input v-model="dataForm.province" placeholder=""></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="6"> |
| | | <el-form-item label="业务员" prop="salesMan"> |
| | | <el-input v-model="dataForm.salesMan" placeholder=""></el-input> |
| | | <el-select @change="selsctionSales" v-model="salesSelectData" style="width:100%"> |
| | | <el-option v-for="(item,index) in staffOptions" :key="index" :value="item" :label="item.staffName"/> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item label="正本状态" prop="originalContractStatus"> |
| | | <el-input |
| | | v-model="dataForm.originalContractStatus" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item label="合同正本状态" prop="returnStatus"> |
| | | <el-input |
| | | v-model="dataForm.returnStatus" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-form-item> |
| | |
| | | <el-col :span="6"> |
| | | <el-form-item label="客户编码" prop="customerNo"> |
| | | <el-input v-model="dataForm.customerNo" placeholder=""></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item label="合同正本状态" prop="returnStatus"> |
| | | <el-input |
| | | v-model="dataForm.returnStatus" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item label="交货日期" prop="deliveryDate"> |
| | | <el-date-picker |
| | | v-model="dataForm.deliveryDate" |
| | | style="width: 100%" |
| | | type="datetime" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="订单备注" prop="comment"> |
| | | <el-input |
| | | v-model="dataForm.comment" |
| | | style="width: 100%" |
| | | type="textarea" |
| | | :rows="2" |
| | | > |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </div> |
| | |
| | | <el-divider> |
| | | <span style="font-weight:bold;font-size:16px;">订单行</span> |
| | | </el-divider> |
| | | <div class="l-mes normal-form"> |
| | | <div> |
| | | <avue-crud ref="crud" |
| | | show-hide="false" |
| | | :option="option" |
| | |
| | | :value="item.value" /> |
| | | </el-select> |
| | | </template> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button :disabled="tableData.length<2" @click="delRow(scope.row,scope.$index)" |
| | | icon="el-icon-circle-close" type="text" size="small">取消</el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <!-- <div class="l-mes normal-form"> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="2"> |
| | | <span>零件号</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.partNo" |
| | | placeholder="" |
| | | readonly |
| | | > |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="openPartDialog()" |
| | | ></el-button> |
| | | </el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>单位</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-select |
| | | v-model="dataForm.customerOrder.unit" |
| | | placeholder="" |
| | | style="width: 100%" |
| | | > |
| | | <el-option |
| | | v-for="item in units" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>数量</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.buyQtyDue" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="2"> |
| | | <span>电压等级</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.voltAgeClass" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>产品名称</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.productName" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>制造属性</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-select |
| | | v-model="dataForm.customerOrder.manufactureAttr" |
| | | placeholder="" |
| | | style="width: 100%" |
| | | disabled |
| | | > |
| | | <el-option |
| | | v-for="item in manufactureAttrs" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="2"> |
| | | <span>外护颜色</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.outerColor" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>零件规格</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.customerPartSpec" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>包装要求</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.packageRequire" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="2"> |
| | | <span>质量要求</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.qualityRequire" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>生产需求说明</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.otherProductRequire" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>系统</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.divisionSystem" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="2"> |
| | | <span>收货地址</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.shippingAddress" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>业务员</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-select v-model="dataForm.customerOrder.salesmanName" style="width:100%"> |
| | | <el-option v-for="(item,index) in staffOptions" :key="index" :value="item.staff_no" :label="item.staffName"/> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>盘长要求</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.lengthRequirement" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="2"> |
| | | <span>备注</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.remark" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="2"> |
| | | <span>产品类型</span> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-input |
| | | v-model="dataForm.customerOrder.productType" |
| | | placeholder="" |
| | | ></el-input> |
| | | </el-col> |
| | | </el-row> |
| | | </div> --> |
| | | |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="visible = false">取消</el-button> |
| | |
| | | import { remote } from '@/api/admin/dict' |
| | | import PartDialog from '@/views/common/part.vue' |
| | | import { validateSixDecimal } from '@/util/validate' |
| | | import {dateFormat} from '@/util/date' |
| | | // import { chooseStaff } from '@/api/admin/productType' |
| | | import { tableOption } from '@/const/crud/customerOrder/customerOrderForm' |
| | | |
| | | export default { |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | currentSelectRow: null, |
| | | salesSelectData: null, |
| | | currentSelectRow: 0, |
| | | option: tableOption, |
| | | tableData: [{ |
| | | "$cellEdit": true, |
| | |
| | | "remark": "", |
| | | "isTrusted": true |
| | | }], |
| | | staffOptions: [], |
| | | title: '', |
| | | isFullScreen: false, |
| | | visible: false, |
| | | buttonDisable: false, |
| | | showPart: false, |
| | | dataForm: { |
| | | id: 0, |
| | | contractNo: null, |
| | | customerName: null, |
| | | entityName: null, |
| | | salesDepartment: null, |
| | | province: null, |
| | | salesMan: null, |
| | | originalContractStatus: null, |
| | | isCp: null, |
| | | customerNo: null, |
| | | returnStatus: null, |
| | | placeOrderDate: null, |
| | | customerOrderVOList: [], |
| | | deliveryDate: null, |
| | | entityName: null, |
| | | factoryPlaceOrderDate: null, |
| | | customerOrder: { |
| | | partNo: null, |
| | | unit: null, |
| | | buyQtyDue: null, |
| | | voltAgeClass: null, |
| | | productName: null, |
| | | manufactureAttr: 'S', |
| | | outerColor: null, |
| | | customerPartSpec: null, |
| | | printType: null, |
| | | printingRequirements: null, |
| | | packageRequire: null, |
| | | qualityRequire: null, |
| | | otherProductRequire: null, |
| | | divisionSystem: null, |
| | | shippingAddress: null, |
| | | salesmanName: null, |
| | | lengthRequirement: null, |
| | | remark: null |
| | | } |
| | | salesDepartment: null, |
| | | isCp: null, |
| | | originalContractStatus: null, |
| | | placeOrderDate: null, |
| | | province: null, |
| | | returnStatus: null, |
| | | salesMan: null, |
| | | salerWorkCode: null, |
| | | comment: null |
| | | }, |
| | | dataRule: {}, |
| | | units: [], |
| | |
| | | mounted: function() { |
| | | this.getDicUnit('unit') // 获取单位 |
| | | this.getManufactureAttrs('manufacture_attr_type') |
| | | this.getStaffOptions(); |
| | | }, |
| | | methods: { |
| | | delRow(row,index) { |
| | | this.tableData.splice(index,1) |
| | | selsctionSales(data){ |
| | | this.dataForm.salesMan = data.staffName |
| | | this.dataForm.salerWorkCode = data.staffNo |
| | | }, |
| | | getStaffOptions(){ |
| | | // chooseStaff().then((response)=>{ |
| | | // this.staffOptions = response.data.data |
| | | // }) |
| | | }, |
| | | init(id) { |
| | | this.initDataForm() |
| | |
| | | }) |
| | | }, |
| | | initDataForm() { |
| | | this.dataForm.id = 0 |
| | | this.dataForm.contractNo = null |
| | | this.dataForm.customerName = null |
| | | this.dataForm.entityName = null |
| | | this.dataForm.salesDepartment = null |
| | | this.dataForm.province = null |
| | | this.dataForm.salesMan = null |
| | | this.dataForm.originalContractStatus = null |
| | | this.dataForm.isCp = null |
| | | this.dataForm.customerNo = null |
| | | this.dataForm.returnStatus = null |
| | | this.dataForm.placeOrderDate = null |
| | | this.dataForm.factoryPlaceOrderDate = null |
| | | this.dataForm.customerOrder.partNo = null |
| | | this.dataForm.customerOrder.unit = null |
| | | this.dataForm.customerOrder.buyQtyDue = null |
| | | this.dataForm.customerOrder.voltAgeClass = null |
| | | this.dataForm.customerOrder.productName = null |
| | | this.dataForm.customerOrder.manufactureAttr = 'S' |
| | | this.dataForm.customerOrder.outerColor = null |
| | | this.dataForm.customerOrder.customerPartSpec = null |
| | | this.dataForm.customerOrder.printType = null |
| | | this.dataForm.customerOrder.printingRequirements = null |
| | | this.dataForm.customerOrder.packageRequire = null |
| | | this.dataForm.customerOrder.qualityRequire = null |
| | | this.dataForm.customerOrder.otherProductRequire = null |
| | | this.dataForm.customerOrder.divisionSystem = null |
| | | this.dataForm.customerOrder.shippingAddress = null |
| | | this.dataForm.customerOrder.salesmanName = null |
| | | this.dataForm.customerOrder.lengthRequirement = null |
| | | this.dataForm.customerOrder.remark = null |
| | | this.dataForm.placeOrderDate = dateFormat(new Date(),'yyyy-MM-dd hh:mm:ss') |
| | | this.dataForm.factoryPlaceOrderDate = dateFormat(new Date(),'yyyy-MM-dd hh:mm:ss') |
| | | 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 |
| | | }] |
| | | }, |
| | | // 表单提交 |
| | | dataFormSubmit() { |
| | | this.buttonDisable = true |
| | | this.$refs.dataForm.validate((valid) => { |
| | | this.dataForm.customerOrderVOList = this.tableData |
| | | if (valid) { |
| | | addObj(this.dataForm) |
| | | .then((data) => { |
| | | this.$message.success('添加成功') |
| | | this.initDataForm(); |
| | | this.visible = false |
| | | this.buttonDisable = false |
| | | this.$emit('refreshDataList', 1) |
| | |
| | | this.showPart = true |
| | | }, |
| | | selectPart(part) { |
| | | console.log(part); |
| | | const index = this.currentSelectRow |
| | | if (part) { |
| | | this.dataForm.customerOrder.partNo = part.partNo |
| | | const index = this.currentSelectRow |
| | | this.tableData[index].partNo = part.partNo |
| | | this.tableData[index].customerPartSpec = part.specs |
| | | this.tableData[index].productName = part.partName |
| | | this.tableData[index].partNo = part.partNo |
| | | this.tableData[index].customerPartSpec = part.specs |
| | | this.tableData[index].productName = part.partName |
| | | } |
| | | }, |
| | | // 全屏 |
| | |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | </script> |