Browse Source

销售订单-bug修改

jingbb 4 tháng trước cách đây
mục cha
commit
0de867768c

+ 19 - 6
src/views/publicComponents/SelectContractModal.vue

@@ -329,7 +329,7 @@
         if(fatherProject.value&&fatherProject.value!==''){
             queryParams.value.quotationProject = fatherProject.value
         }else {
-            queryParams.value.quotationProject = ''
+            queryParams.value.quotationProject = params.quotationProject
         }
         return filterObj(params);
     }
@@ -337,11 +337,6 @@
         pagination.value.total = paginations.total;
         pagination.value.current = paginations.current;
         pagination.value.pageSize = paginations.pageSize;
-        if(fatherProject.value&&fatherProject.value!==''){
-            queryParams.value.quotationProjectName = fatherProject.value
-        }else {
-            queryParams.value.quotationProjectName = ''
-        }
         loadData()
     };
     function getOptiom(){
@@ -415,6 +410,24 @@
       visible.value = false
       selectedRowKeys.value = []
       selectedRows.value=[]
+      billDate.value = []
+      queryParams.value = {
+            billCode:'',
+            quotationProject:'',
+            quotationProjectName:'',
+            productionClass:'',
+            priority:'',
+            quotationCustomer:'',
+            quotationCustomerName:'',
+            headModel:'',
+            englishName:'',
+            productCode:'',
+            childModel:'',
+            saleDepartment:'',
+            salesman:'',
+            billDate_begin:'',
+            billDate_end:'',
+        }
     }
     function getTable(formData){
         visible.value = true

+ 20 - 4
src/views/publicComponents/SelectQuotationModal.vue

@@ -315,7 +315,7 @@
         if(fatherProject.value&&fatherProject.value!==''){
             queryParams.value.quotationProject = fatherProject.value
         }else {
-            queryParams.value.quotationProject = ''
+            queryParams.value.quotationProject = params.quotationProject
         }
         return filterObj(params);
     }
@@ -391,9 +391,25 @@
         }
     }
     function handleCancel(){
-      visible.value = false
-      selectedRowKeys.value = []
-      selectedRows.value=[]
+        visible.value = false
+        selectedRowKeys.value = []
+        selectedRows.value=[]
+        billDate.value = []
+        queryParams.value = {
+            billCode:'',
+            quotationProject:'',
+            quotationProjectName:'',
+            productionClass:'',
+            priority:'',
+            quotationCustomerName:'',
+            quotationCustomer:'',
+            headModel:'',
+            englishName:'',
+            productCode:'',
+            childModel:'',
+            billDate_begin:'',
+            billDate_end:'',
+        }
     }
     function getTable(formData){
         visible.value = true

+ 64 - 29
src/views/saleCode/salesOrder/components/SlaeOrderFormForm.vue

@@ -5,7 +5,7 @@
         <a-form v-bind="formItemLayout" name="SaleOrderForm" ref="formRef">
           <a-row>
             <a-col :span="12">
-							<a-form-item label="订单编号(bill code)" v-bind="validateInfos.billCode" id="SaleOrderForm-billCode" name="billCode">
+							<a-form-item label="订单编号(bill code)" v-bind="validateInfos.billCode" id="SaleOrderForm-billCode" name="billCode" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.billCode" placeholder="订单编号(bill code)" disabled></a-input>
 							</a-form-item>
 						</a-col>
@@ -16,8 +16,8 @@
 						</a-col>
 						
 						<a-col :span="12">
-							<a-form-item label="项目(project)" v-bind="validateInfos.projectName" id="SaleOrderForm-projectName" name="projectName">
-								<a-input-search v-model:value="formData.projectName" placeholder="请输入项目(project)" :disabled="SaleOrderFormShipFormProductTable.dataSource.length!==0"  allow-clear enter-button="Search" @search="onSearchProject"></a-input-search>
+							<a-form-item label="项目(project)" v-bind="validateInfos.projectName" id="SaleOrderForm-projectName" name="projectName" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
+								<a-input-search v-model:value="formData.projectName" placeholder="请输入项目(project)" :disabled="notAllowEdit"  allow-clear enter-button="Search" @search="onSearchProject"></a-input-search>
 							</a-form-item>
 						</a-col>
 						<a-col :span="12">
@@ -26,7 +26,7 @@
 							</a-form-item>
 						</a-col>
             <a-col :span="12">
-							<a-form-item label="中间人(intermediator)" v-bind="validateInfos.intermediator" id="SaleOrderForm-intermediator" name="intermediator">
+							<a-form-item label="中间人(intermediator)" v-bind="validateInfos.intermediator" id="SaleOrderForm-intermediator" name="intermediator" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
                   <a-input   v-model:value="formData.intermediatorName"  placeholder="请选择" allow-clear  disabled></a-input>
 							</a-form-item>
 						</a-col>
@@ -36,7 +36,7 @@
 							</a-form-item>
 						</a-col>
 						<a-col :span="12">
-							<a-form-item label="产品分类(production class)" v-bind="validateInfos.productionClass" id="SaleOrderForm-productionClass" name="productionClass">
+							<a-form-item label="产品分类(production class)" v-bind="validateInfos.productionClass" id="SaleOrderForm-productionClass" name="productionClass" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.productionClass" placeholder="请输入"  allow-clear disabled ></a-input>
 							</a-form-item>
 						</a-col>
@@ -46,7 +46,7 @@
 							</a-form-item>
 						</a-col>
 						<a-col :span="12">
-							<a-form-item label="厂家(maker)" v-bind="validateInfos.maker" id="SaleOrderForm-maker" name="maker">
+							<a-form-item label="厂家(maker)" v-bind="validateInfos.maker" id="SaleOrderForm-maker" name="maker" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.maker" placeholder="请输入厂家(maker)"  allow-clear disabled></a-input>
 							</a-form-item>
 						</a-col>
@@ -56,7 +56,7 @@
 							</a-form-item>
 						</a-col>
 						<a-col :span="12">
-							<a-form-item label="汇率(exchange rate)" v-bind="validateInfos.exchangeRate" id="SaleOrderForm-exchangeRate" name="exchangeRate">
+							<a-form-item label="汇率(exchange rate)" v-bind="validateInfos.exchangeRate" id="SaleOrderForm-exchangeRate" name="exchangeRate" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.exchangeRate" placeholder="请输入厂家(maker)"  allow-clear ></a-input>
 							</a-form-item>
 						</a-col>
@@ -77,7 +77,7 @@
 							</a-form-item>
 						</a-col>
             <a-col :span="12">
-							<a-form-item label="发货方式(delivery)" v-bind="validateInfos.delivery" id="SaleOrderForm-delivery" name="delivery">
+							<a-form-item label="发货方式(delivery)" v-bind="validateInfos.delivery" id="SaleOrderForm-delivery" name="delivery" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
                 <JDictSelectTag v-model:value="formData.delivery" placeholder="请选择" dictCode="delivery_sale_order" />
 							</a-form-item>
 						</a-col>
@@ -87,7 +87,7 @@
 							</a-form-item>
 						</a-col>
             <a-col :span="12">
-							<a-form-item label="开票抬头(invoice header)" v-bind="validateInfos.invoiceHeader" id="SaleOrderForm-invoiceHeader" name="invoiceHeader">
+							<a-form-item label="开票抬头(invoice header)" v-bind="validateInfos.invoiceHeader" id="SaleOrderForm-invoiceHeader" name="invoiceHeader" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
                 <a-input v-model:value="formData.invoiceHeader" placeholder="请输入"/>
 							</a-form-item>
 						</a-col>
@@ -96,18 +96,19 @@
                 <a-input v-model:value="formData.warrantyPeriod" placeholder="请输入" style="width: 85%;margin-right: 1%;"/>月(month)
 							</a-form-item>
 						</a-col>
+               
             <a-col :span="12">
-							<a-form-item label="是否出口(export)" v-bind="validateInfos.isExport" id="SaleOrderForm-isExport" name="isExport">
-                <JDictSelectTag v-model:value="formData.isExport" placeholder="请选择" dictCode="yes_or_no" />
-							</a-form-item>
-						</a-col>     
-            <a-col :span="12">
-							<a-form-item label="包装要求(package requirement)" v-bind="validateInfos.packagebRequirement" id="SaleOrderForm-packagebRequirement" name="packagebRequirement">
+							<a-form-item label="包装要求(package requirement)" v-bind="validateInfos.packagebRequirement" id="SaleOrderForm-packagebRequirement" name="packagebRequirement" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.packagebRequirement" placeholder="请输入包装要求(package requirement)"  allow-clear ></a-input>
 							</a-form-item>
 						</a-col>   
             <a-col :span="12">
-							<a-form-item label="销售部门(sale department)" v-bind="validateInfos.saleDepartment" id="SaleOrderForm-saleDepartment" name="saleDepartment">
+							<a-form-item label="是否出口(export)" v-bind="validateInfos.isExport" id="SaleOrderForm-isExport" name="isExport">
+                <JDictSelectTag v-model:value="formData.isExport" placeholder="请选择" dictCode="yes_or_no" />
+							</a-form-item>
+						</a-col> 
+            <a-col :span="12">
+							<a-form-item label="销售部门(sale department)" v-bind="validateInfos.saleDepartment" id="SaleOrderForm-saleDepartment" name="saleDepartment" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.saleDepartment" placeholder="请输入"  allow-clear disabled></a-input>
 							</a-form-item>
 						</a-col>   
@@ -117,7 +118,7 @@
 							</a-form-item>
 						</a-col> 
             <a-col :span="12">
-							<a-form-item label="客户订单号(custormer order number)" v-bind="validateInfos.customerOrder" id="SaleOrderForm-customerOrder" name="customerOrder">
+							<a-form-item label="客户订单号(custormer order)" v-bind="validateInfos.customerOrder" id="SaleOrderForm-customerOrder" name="customerOrder" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<a-input v-model:value="formData.customerOrder" placeholder="请输入客户订单号(custormer order number)"  allow-clear ></a-input>
 							</a-form-item>
 						</a-col> 
@@ -127,7 +128,7 @@
 							</a-form-item>
 						</a-col>     
             <a-col :span="12">
-							<a-form-item label="折后金额(converted amount)" v-bind="validateInfos.convertedAmount" id="SaleOrderForm-convertedAmount" name="convertedAmount">
+							<a-form-item label="折后金额(converted amount)" v-bind="validateInfos.convertedAmount" id="SaleOrderForm-convertedAmount" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1" name="convertedAmount">
 								<a-input v-model:value="formData.convertedAmount" placeholder="请输入折后金额(converted amount)"  allow-clear disabled></a-input>
 							</a-form-item>
 						</a-col>     
@@ -137,8 +138,8 @@
 							</a-form-item>
 						</a-col> 
             <a-col :span="12">
-							<a-form-item label="预付比例(advance ratio)" v-bind="validateInfos.advanceRatio" id="SaleOrderForm-advanceRatio" name="advanceRatio">
-								<a-input v-model:value="formData.advanceRatio" placeholder="请输入质保条款(warranty terms)"  allow-clear ></a-input>
+							<a-form-item label="预付比例(advance ratio)" v-bind="validateInfos.advanceRatio" id="SaleOrderForm-advanceRatio" name="advanceRatio" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
+								<a-input v-model:value="formData.advanceRatio" placeholder="请输入"  allow-clear ></a-input>
 							</a-form-item>
 						</a-col>
 						<a-col :span="12">
@@ -147,7 +148,7 @@
 							</a-form-item>
 						</a-col>
             <a-col :span="12">
-							<a-form-item label="附件(attachs)" v-bind="validateInfos.attachs" id="SaleOrderForm-attachs" name="attachs">
+							<a-form-item label="附件(attachs)" v-bind="validateInfos.attachs" id="SaleOrderForm-attachs" name="attachs" :labelCol="formItemLayout.labelCol1" :wrapperCol="formItemLayout.wrapperCol1">
 								<JUpload v-model:value="formData.attachs"></JUpload>
 							</a-form-item>
 						</a-col>
@@ -275,6 +276,7 @@
         dataSource: []
       });
       const activeKey = ref('SaleOrderFormShipFormShip');
+      var notAllowEdit = ref(false);
       const formData = reactive<Record<string, any>>({
         id: '',
         status: undefined,
@@ -324,6 +326,8 @@
       const formItemLayout = {
         labelCol: {xs: {span: 24}, sm: {span: 5}},
         wrapperCol: {xs: {span: 24}, sm: {span: 16}},
+        labelCol1: {xs: {span: 24}, sm: {span: 6}},
+        wrapperCol1: {xs: {span: 24}, sm: {span: 16}},
       };
 
       // 表单禁用
@@ -357,8 +361,34 @@
         const SaleOrderFormShipFormShipDataList = await querySaleOrderFormShipFormShippTable(id);
         SaleOrderFormShipFormShipTable.dataSource = [...SaleOrderFormShipFormShipDataList];
         SaleOrderFormShipFormProductTable.dataSource = [...data];
+        isSelect()
+      }
+      // 判断有没有参照的子表
+      function isSelect(){
+        var arrQuo = [],
+            arrCon=[]
+        if(SaleOrderFormShipFormProductTable.dataSource)
+        SaleOrderFormShipFormProductTable.dataSource.map(item=>{
+            var sign = ''
+            sign = item.sourceId?(item.sourceId).substring(0, 3):''
+            if(item.sourceId&&sign=='Quo'){
+              arrQuo.push(item.sourceId)
+            }else if(item.sourceId&&sign=='Con'){
+              arrCon.push(item.sourceId)
+            }
+        })
+        if(arrQuo.length==0&&arrCon.length==0){
+          formData.sourceCode2 = ''
+          formData.sourceCode = ''
+          notAllowEdit.value=false
+        }else if(arrQuo.length==0){
+          formData.sourceCode = ''
+          notAllowEdit.value=true
+        }else if(arrCon.length==0){
+          formData.sourceCode2 = ''
+          notAllowEdit.value=true
+        }
       }
-
       async function edit(row) {
         //主表数据
         await queryMainData(row.id);
@@ -367,6 +397,7 @@
         SaleOrderFormShipFormShipTable.dataSource = [...SaleOrderFormShipFormShipDataList];
         const SaleOrderFormShipFormProductDataList = await querySaleOrderFormProductListByMainId(row['id']);
         SaleOrderFormShipFormProductTable.dataSource = [...SaleOrderFormShipFormProductDataList];
+        notAllowEdit.value=true
       }
 
       async function queryMainData(id) {
@@ -471,12 +502,13 @@
         SaleOrderFormShipFormProductTable.dataSource=arrProduct  
       }
       function addQuotation(data){
-        var arrProduct = data.concat(SaleOrderFormShipFormProductTable.dataSource)
-        arrProduct.map(item=>{
+        data.map(item=>{
           item.model = item.childModel
           item.deliveryTime = formData.deliveryTime
-          item.sourceId = item.childId
+          item.sourceId = 'Quo'+item.childId
         })
+        var arrProduct = data.concat(SaleOrderFormShipFormProductTable.dataSource)
+        notAllowEdit.value=true
         SaleOrderFormShipFormProductTable.dataSource=arrProduct  
         formData.sourceCode =data[0].billCode
         if(!formData.sourceCode2&&formData.sourceCode2==''){
@@ -496,12 +528,13 @@
         }
       }
       function addContract(data){
-          var arrProduct = data.concat(SaleOrderFormShipFormProductTable.dataSource)
-          arrProduct.map(item=>{
+         data.map(item=>{
             item.model = item.childModel
             item.deliveryTime = formData.deliveryTime
-            item.sourceId = item.childId
+            item.sourceId = 'Con'+item.childId
           })
+          var arrProduct = data.concat(SaleOrderFormShipFormProductTable.dataSource)
+          notAllowEdit.value=true
           SaleOrderFormShipFormProductTable.dataSource=arrProduct  
           formData.sourceCode2 =data[0].billCode
           if(!formData.sourceCode&&formData.sourceCode==''){
@@ -554,6 +587,7 @@
         var newArray = [...SaleOrderFormShipFormProductTable.dataSource]
         newArray.splice(prop.rowIndex, 1)
         SaleOrderFormShipFormProductTable.dataSource = newArray  
+        isSelect()
       }
       /**
        * 值改变事件触发-树控件回调
@@ -599,7 +633,8 @@
         handleDelete,
         BaseShipArchiveAccessoriesModalRef,
         viewAccessory,
-        VersionDetail
+        VersionDetail,
+        notAllowEdit
       }
     }
   });