浏览代码

选择销售订单-按需显示

jingbb 3 月之前
父节点
当前提交
d798bd433f

+ 76 - 13
src/views/publicComponents/SelectSaleOrderModal.vue

@@ -58,8 +58,8 @@
                                 <JDictSelectTag v-model:value="queryParams.priority" placeholder="请选择" dictCode="priority"/>
                             </a-form-item>
                         </a-col>
-                        <a-col :md="6" :sm="8">
-                            <a-form-item label="供应商(supplier)">
+                        <a-col :md="6" :sm="8" v-if="showCustomer=='no'">
+                            <a-form-item label="供应商(supplier)" >
                                 <ApiSelect
                                     :api="supplierOption"
                                     showSearch
@@ -72,6 +72,19 @@
                                     />
                             </a-form-item>
                         </a-col>
+                        <a-col :md="6" :sm="8" v-if="showCustomer=='yes'">
+                            <a-form-item label="客户(supplier)">
+                                <ApiSelect
+                                    :api="CustomerOption"
+                                    showSearch
+                                    v-model:value="queryParams.customerName"
+                                    optionFilterProp="label"
+                                    resultField="records"
+                                    labelField="abbreviation"
+                                    valueField="name"
+                                    />
+                            </a-form-item>
+                        </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="机型(model)">
                                 <JDictSelectTag v-model:value="queryParams.headModel" placeholder="请选择" dictCode="model_typer" style="width: 100%;"/>
@@ -156,13 +169,17 @@
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
     import { JDictSelectTag,ApiSelect} from '/@/components/Form';
     import {ProjectOption,ClassList,supplierOption} from '../saleCode/deliveryNotice/delivertNoticeForm.api';
+    import {CustomerOption} from '../saleCode/saleContract/SaleContract.api';
     const emit = defineEmits([ 'selectSaleOrder']); //定义emit
     var visible = ref(false)
     var fatherProject = ref('')
     var fatherSourceCode = ref('')
     var fatherSupplierName =ref('')
     var fatherType = ref('')
-    const columns = [
+    var fatherCustomerName=ref('')
+    var showCustomer = ref('no')
+    var columns=[]
+    var columns1 = [
         {
             title: '订单编号号(bill code)',
             dataIndex: 'billCode',
@@ -191,6 +208,16 @@
             key: 'supplierName',
             align:"center",
             ellipsis: true,
+            ifShow:showCustomer.value=='no'?true:false,
+            // className:showCustomer.value=='no'?'tableShow':'tableHiddle'
+        },
+        {
+            title: '客户(customer)',
+            dataIndex: 'customerName',
+            key: 'customerName',
+            align:"center",
+            ellipsis: true,
+            // className:showCustomer.value=='yes'?'tableShow':'tableHiddl
         },
         {
             title: '优先级(priority)',
@@ -316,6 +343,8 @@
         billDate_end:'',
         saleDepartment:'',
         salesman:'',
+        customer:'',
+        customerName:''
     });
     let pagination = ref({
       current: 1,
@@ -359,6 +388,11 @@
         }else {
             queryParams.value.supplierName = params.supplierName
         }
+        if(fatherCustomerName.value&&fatherCustomerName.value!==''){
+            queryParams.value.customerName = fatherCustomerName.value
+        }else {
+            queryParams.value.customerName = params.customerName
+        }
         return filterObj(params);
     }
     function handleTableChange(paginations, filters, sorter){
@@ -388,6 +422,8 @@
             billDate_end:'',
             saleDepartment:'',
             salesman:'',
+            customer:'',
+            customerName:''
         }
         pagination.value.current =1;
         pagination.value.pageSize = 10; 
@@ -451,9 +487,11 @@
             billDate_end:'',
             saleDepartment:'',
             salesman:'',
+            customer:'',
+            customerName:''
         }
     }
-    function getTable(formData){
+    function getTable(formData,data){
         visible.value = true
         if(formData.projectName&&formData.projectName!==''){
             fatherProject.value = formData.project
@@ -470,19 +508,43 @@
         }else{
             fatherSourceCode.value = ''
         }
-        if(formData.supplierName&&formData.supplierName!==''){
-            fatherSupplierName.value = formData.supplierName
+       
+        fatherType.value='other'
+        if(data=='delivery'){
+            debugger
+            showCustomer.value = 'yes'
+            columns= columns1.filter(function(value, i) {
+                return i !== 3;
+            });
+            if(formData.supplierName&&formData.supplierName!==''){
+                fatherCustomerName.value = formData.supplierName
+            }else{
+                fatherCustomerName.value = ''
+            }
         }else{
-            fatherSupplierName.value = ''
+            debugger
+            showCustomer.value = 'no'
+            columns= columns1.filter(function(value, i) {
+                return i !== 4;
+            });
+            if(formData.supplierName&&formData.supplierName!==''){
+                fatherSupplierName.value = formData.supplierName
+            }else{
+                fatherSupplierName.value = ''
+            }
         }
-        fatherType.value='other'
         loadData()
     }
     function getTableFromSalePayRequestForm(){
+        debugger
         visible.value = true
         fatherProject.value = ''
         fatherSourceCode.value = ''
         fatherType.value='payRequest'
+        showCustomer.value = 'no'
+        columns= columns1.filter(function(value, i) {
+            return i !== 4;
+        });
         loadData()
     }
 
@@ -498,10 +560,6 @@
        }
        
     }
-    function projectListList(){
-        let params = {pageSize:-1}
-        return defHttp.get({url:'/baseCode/baseProjectArchive/list',params});
-    }
     defineExpose({
       getTable,
       getTableFromSalePayRequestForm
@@ -514,5 +572,10 @@
 // /deep/.ant-table-wrapper .ant-table-thead > tr > th, .ant-table-wrapper .ant-table-thead > tr > td{
 //     padding: 8px !important;
 // }
-
+/deep/.tableHiddle {
+  display: none;
+}
+/deep/.tableShow{
+  display: revert;
+}
 </style>

+ 1 - 1
src/views/saleCode/deliveryNotice/components/deliveryNoticeForm.vue

@@ -488,7 +488,7 @@
       function selectSaleOrderList(){
         var obj = formData
         obj.sourceCode2 = formData.sourceCode
-        SelectSaleOrderModalRef.value.getTable(obj)
+        SelectSaleOrderModalRef.value.getTable(obj,'delivery')
       }
       function addFormSaleOrder(data){
         data.map((item)=>{