Browse Source

销售订单-筛选条件修改

jingbb 3 tháng trước cách đây
mục cha
commit
8e5f1776a3

+ 27 - 13
src/views/publicComponents/SelectContractModal.vue

@@ -27,21 +27,30 @@
                         <a-col :md="6" :sm="8">
                             <a-form-item label="项目(project)">
                                 <ApiSelect
-                                    :api="projectListList"
+                                    :api="ProjectOption"
                                     showSearch
                                     v-model:value="queryParams.quotationProject"
                                     optionFilterProp="label"
                                     resultField="records"
                                     labelField="name"
                                     valueField="id"
+                                    :params='{pageSize:-1}'
                                     :disabled="fatherProject!==''"
                                     />
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="产品分类(production class)" :label-col="labelCol1" :wrapper-col="wrapperCol1">
-                                <!-- <a-input placeholder="请输入" v-model:value="queryParams.classId"></a-input> -->
-                                <JSelectInput   v-model:value="queryParams.productionClass"  placeholder="请选择" :options="classOption" ></JSelectInput>
+                                <ApiSelect
+                                    :api="ClassList"
+                                    showSearch
+                                    v-model:value="queryParams.productionClass"
+                                    optionFilterProp="label"
+                                    resultField="records"
+                                    labelField="name"
+                                    valueField="id"
+                                    :params='{pageSize:-1}'
+                                    />
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -51,12 +60,21 @@
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="客户(customer)">
-                                <a-input placeholder="请输入" v-model:value="queryParams.quotationCustomer"></a-input>
+                                <ApiSelect
+                                    :api="CustomerOption"
+                                    showSearch
+                                    v-model:value="queryParams.quotationCustomer"
+                                    optionFilterProp="label"
+                                    resultField="records"
+                                    labelField="abbreviation"
+                                    valueField="id"
+                                    :params='{pageSize:-1}'
+                                    />
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="机型(model)">
-                                <a-input placeholder="请输入" v-model:value="queryParams.headModel"></a-input>
+                                <JDictSelectTag v-model:value="queryParams.headModel" placeholder="请选择" dictCode="model_typer" style="width: 100%;"/>
                             </a-form-item>
                         </a-col>
                         
@@ -78,7 +96,7 @@
                         
                         <a-col :md="6" :sm="8">
                             <a-form-item label="业务员(salesman)" >
-                                <JDictSelectTag v-model:value="queryParams.salesman" placeholder="请选择" dictCode="yes_or_no"/>
+                                <a-input placeholder="请输入" v-model:value="queryParams.salesman"></a-input>
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -136,9 +154,9 @@
     import { defHttp } from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag} from '/@/components/Form';
-    import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
-    import {  ApiSelect, } from '/@/components/Form/index';
+    import { JDictSelectTag,ApiSelect} from '/@/components/Form';
+    import {ProjectOption,CustomerOption,ClassList} from '../saleCode/salesOrder/SaleOrderyForm.api';
+
     const emit = defineEmits([ 'selectContract']); //定义emit
     let classOption = ref([])
     var visible = ref(false)
@@ -467,10 +485,6 @@
        }
        
     }
-    function projectListList(){
-        let params = {pageSize:-1}
-        return defHttp.get({url:'/baseCode/baseProjectArchive/list',params});
-    }
     defineExpose({
       getTable
     });

+ 33 - 31
src/views/saleCode/salesOrder/SaleOrderFormList.vue

@@ -20,13 +20,31 @@
             <a-col :lg="8">
               <a-form-item name="project">
                 <template #label><span title="系统项目(project)">系统项目(project)</span></template>
-                <a-input v-model:value="queryParam.project" placeholder="请输入" AutoComplete="off"/>
+                <ApiSelect
+                    :api="ProjectOption"
+                    showSearch
+                    v-model:value="queryParam.project"
+                    :filterOption="false"
+                    resultField="records"
+                    labelField="name"
+                    valueField="id"
+                    :params='{pageSize:-1}'
+                  />
               </a-form-item>
             </a-col>
             <a-col :lg="8">
               <a-form-item name="customerName">
                 <template #label><span title="客户(customer)">客户(customer)</span></template>
-                <a-input placeholder="请输入" v-model:value="queryParam.customerName" allow-clear AutoComplete="off"></a-input>
+                <ApiSelect
+                  :api="CustomerOption"
+                  showSearch
+                  v-model:value="queryParam.customer"
+                  :filterOption="false"
+                  resultField="records"
+                  labelField="abbreviation"
+                  valueField="id"
+                  :params='{pageSize:-1}'
+                />
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -38,7 +56,16 @@
             <a-col :lg="8">
               <a-form-item name="productionClass" >
                 <template #label><span title="产品分类(production class)">产品分类(production class)</span></template>
-                <JSelectInput   v-model:value="queryParam.productionClass"  placeholder="请选择" :options="classOption" style="width: 100%;"></JSelectInput>
+                <ApiSelect
+                  :api="ClassList"
+                  showSearch
+                  v-model:value="queryParam.productionClass"
+                  :filterOption="false"
+                  resultField="records"
+                  labelField="name"
+                  valueField="id"
+                  :params='{pageSize:-1}'
+                />
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -50,7 +77,7 @@
             <a-col :lg="8">
               <a-form-item name="maker">
                 <template #label><span title="厂家(maker)">厂家(maker)</span></template>
-                <a-input placeholder="请输入厂家(maker)" v-model:value="queryParam.maker" allow-clear AutoComplete="off"></a-input>
+                <JDictSelectTag v-model:value="queryParam.maker" placeholder="请选择" dictCode="factory"/>
               </a-form-item>
             </a-col>            
             <a-col :lg="8">
@@ -152,10 +179,10 @@
   import {useModal} from '/@/components/Modal';
   import SaleInquiryFormModal from './components/SaleOrderFormModal.vue'
   import {columns, superQuerySchema} from './SaleOrderForm.data';
-  import {list, deleteOne, batchDelete, getImportUrl,getExportUrl,batchSubmit,cancelBatchSubmit,bacthClose,cancelBatchClose,bacthConfirm,cancelBatchConfirm} from './SaleOrderyForm.api';
+  import {list, deleteOne, batchDelete, getImportUrl,getExportUrl,batchSubmit,cancelBatchSubmit,bacthClose,cancelBatchClose,bacthConfirm,cancelBatchConfirm,ProjectOption,CustomerOption,ClassList} from './SaleOrderyForm.api';
   import { cloneDeep } from "lodash-es";
   import { defHttp } from '/@/utils/http/axios';
-  import { JDictSelectTag} from '/@/components/Form';
+  import { JDictSelectTag,ApiSelect} from '/@/components/Form';
   import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
   import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue';
   import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue';
@@ -170,7 +197,6 @@
   const queryParam = reactive<any>({});
   //注册model
   const [registerModal, {openModal}] = useModal();
-  var classOption = ref([]);
    //注册table数据
   const { prefixCls,tableContext,onExportXls,onImportXls } = useListPage({
       tableProps:{
@@ -216,10 +242,6 @@
     });
     reload();
   }
-   // 自动请求并暴露内部方法
-   onMounted(() => {
-    getOptiom()
-  });
 
    /**
     * 新增事件
@@ -273,26 +295,6 @@
    function handleExportInvoice(){
 
    }
-  //  产品分类
-  function getOptiom(){
-        defHttp
-            .get({ url: 'baseCode/baseProductClass/list'}, { isTransformResponse: false })
-            .then((res) => {
-                if (res.success) {
-                  classOption.value = []
-                  res.result.records.forEach(element => {
-                      var obj = {
-                        label: element.name?element.name:'无名称请维护',
-                        value: element.id?element.id:''
-                      };
-                      classOption.value.push( obj)
-                  });    
-                }
-            })
-            .finally(() => {
-                // loading.value = false;
-            });
-  }
    /**
     * 详情
    */

+ 11 - 2
src/views/saleCode/salesOrder/SaleOrderyForm.api.ts

@@ -24,7 +24,9 @@ enum Api {
   cancelBatchClose = '/saleCode/saleOrder/returnClose',
   confirmBatch='/saleCode/saleOrder/submitConfirm',
   cancelBatchConfirm = '/saleCode/saleOrder/returnSubmitConfirm',
-  classList='baseCode/baseProductClass/list'
+  classList='baseCode/baseProductClass/list',
+  customerList='/cuspCode/cuspCustomerProfile/list',
+  projectList='/baseCode/baseProjectArchive/list'
 }
 /**
  * 导出api
@@ -210,4 +212,11 @@ export const cancelBatchConfirm = (params, handleSuccess) => {
       });
     }
   });
-}
+}
+
+
+//获取客户下拉框列表
+export const CustomerOption = (params) => defHttp.get({ url: Api.customerList, params });
+
+//获取项目下拉框列表
+export const ProjectOption = (params) => defHttp.get({ url: Api.projectList, params });

+ 2 - 2
src/views/saleCode/salesOrder/components/SelectSaleOrderModal.vue

@@ -8,7 +8,7 @@
     @ok = "handleOk"
     @cancel="handleCancel">
       <div>
-        <a-card  :body-style="{ padding: '10px' }" :bordered="false" style="margin: 10px;">
+        <!-- <a-card  :body-style="{ padding: '10px' }" :bordered="false" style="margin: 10px;">
           <div class="table-page-search-wrapper">
               <a-form :model="queryParams" :label-col="labelCol" :wrapper-col="wrapperCol" @keyup.enter.native="searchQuery">
               <a-row :gutter="24">
@@ -48,7 +48,7 @@
               </a-row>
           </a-form>
          </div>
-        </a-card>
+        </a-card> -->
 
       <a-card  >
           <a-alert type="info" show-icon class="alert" style="margin-bottom: 8px">