From bf8f755535e07b59116fced6dab7e2b53e78ff50 Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期五, 22 十二月 2023 17:15:23 +0800
Subject: [PATCH] modified: src/views/common/qrCodeApp.vue modified: src/views/product/workbench/productInDialog.vue modified: src/views/quality/Packaging_ledger/index.vue modified: vue.config.js
---
src/views/plan/customerorder/sample-customerorder-form.vue | 338 +++++++++++++++++++------------------------------------
1 files changed, 117 insertions(+), 221 deletions(-)
diff --git a/src/views/plan/customerorder/sample-customerorder-form.vue b/src/views/plan/customerorder/sample-customerorder-form.vue
index 737f3ca..8b895f7 100644
--- a/src/views/plan/customerorder/sample-customerorder-form.vue
+++ b/src/views/plan/customerorder/sample-customerorder-form.vue
@@ -51,14 +51,6 @@
<el-input v-model="dataForm.entityName" placeholder=""></el-input>
</el-form-item>
</el-col>
- <!-- <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-col :span="6">
<el-form-item label="鐪佷唤" prop="province">
<el-input v-model="dataForm.province" placeholder=""></el-input>
@@ -68,8 +60,8 @@
<el-row>
<el-col :span="6">
<el-form-item label="涓氬姟鍛�" prop="salesMan">
- <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 @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-form-item>
</el-col>
@@ -135,6 +127,19 @@
</el-form-item>
</el-col>
</el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="璁㈠崟澶囨敞" prop="comment">
+ <el-input
+ v-model="dataForm.comment"
+ style="width: 100%"
+ type="textarea"
+ :rows="1"
+ >
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
</el-form>
</div>
@@ -143,15 +148,17 @@
</el-divider>
<div>
<avue-crud ref="crud"
+ class="l-mes"
+ show-hide="false"
:option="option"
:data="tableData">
<template slot="partNo" slot-scope="scope">
- <el-input v-model="scope.row.partNo" placeholder="" readonly>
+ <el-input v-model="scope.row.partNo" placeholder="鏌ヨ闆朵欢鍙�" readonly>
<el-button slot="append" icon="el-icon-search" @click="openPartDialog(scope.row.$index)"></el-button>
</el-input>
</template>
<template slot="otcUnit" slot-scope="scope">
- <el-select v-model="scope.row.otcUnit" placeholder="" style="width: 100%">
+ <el-select v-model="scope.row.otcUnit" placeholder="璇烽�夋嫨鍗曚綅" style="width: 100%">
<el-option
v-for="item in units"
:key="item.value"
@@ -161,196 +168,6 @@
</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>
@@ -387,18 +204,62 @@
color: #c0c4cc;
margin: -1px 0;
}
+.l-mes .el-input-group__append,
+.l-mes .el-input-group__prepend {
+ padding: 0;
+ border-top: none;
+ border-right: none;
+ border-left: none;
+ border-radius: 0;
+ background-color: transparent;
+}
+
+.l-mes .el-input-group__append .el-button,
+.l-mes .el-input-group__prepend .el-button {
+ padding: 0;
+ width: 25px;
+ border: none !important;
+ line-height: 28px;
+ color: #c0c4cc;
+ margin: -1px 0;
+}
+
+.l-mes .el-input-group__append .el-button i,
+.l-mes .el-input-group__prepend .el-button i {
+ vertical-align: middle;
+}
</style>
<script>
import { addObj } from '@/api/plan/customer'
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 {
components: {
PartDialog
+ },
+ watch:{
+ visible(newVal){
+ if(!newVal){
+ this.tableData = [{
+ "$cellEdit": true,
+ "$index": 0,
+ "partNo": "",
+ "customerPartSpec": "",
+ "manufactureAttr": "",
+ "productName": "",
+ "productType": "",
+ "otcUnit": "",
+ "buyQtyDue": "",
+ "shippingAddress": "",
+ "remark": "",
+ "isTrusted": true
+ }]
+ }
+ }
},
data() {
return {
@@ -441,6 +302,7 @@
returnStatus: null,
salesMan: null,
salerWorkCode: null,
+ comment: null
},
dataRule: {},
units: [],
@@ -454,8 +316,11 @@
},
methods: {
selsctionSales(data){
- this.dataForm.salesMan = data.staffName
- this.dataForm.salerWorkCode = data.staffNo
+ if(data){
+ let arr = data.split(",")
+ this.dataForm.salesMan = arr[1]
+ this.dataForm.salerWorkCode = arr[0]
+ }
},
getStaffOptions(){
chooseStaff().then((response)=>{
@@ -479,28 +344,60 @@
this.dataForm.isCp = null
this.dataForm.customerNo = null
this.dataForm.returnStatus = null
- this.dataForm.placeOrderDate = null
- this.dataForm.factoryPlaceOrderDate = 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
+ const _than = this
+ let isError = false
+ _than.buttonDisable = true
+ _than.tableData.forEach(ele=>{
+ if(ele.buyQtyDue==null || ele.buyQtyDue=='' || ele.buyQtyDue==undefined){
+ _than.$message.error("闆朵欢鏁伴噺涓嶈兘涓虹┖!")
+ isError = true
+ }else{
+ var reg = /^\d+$/
+ if(!reg.test(ele.buyQtyDue)){
+ _than.$message.error("闆朵欢鏁伴噺绫诲瀷蹇呴』鏄暟瀛�!")
+ isError = true
+ }
+ }
+ })
+ if(isError){
+ _than.buttonDisable = false
+ return
+ }
+ _than.$refs.dataForm.validate((valid) => {
if (valid) {
- addObj(this.dataForm)
- .then((data) => {
- this.$message.success('娣诲姞鎴愬姛')
- this.visible = false
- this.buttonDisable = false
- this.$emit('refreshDataList', 1)
- })
- .catch((error) => {
- this.buttonDisable = false
+ _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)
+ }).catch((error) => {
+ _than.buttonDisable = false
})
} else {
- this.buttonDisable = false
+ _than.buttonDisable = false
}
})
},
@@ -510,7 +407,6 @@
this.showPart = true
},
selectPart(part) {
- console.log(part);
const index = this.currentSelectRow
if (part) {
this.tableData[index].partNo = part.partNo
--
Gitblit v1.9.3