Browse Source

销售管理-客户下拉框修改

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

+ 0 - 1
src/views/BasicData/productCassificationTree.vue

@@ -82,7 +82,6 @@
 
   // 重新加载树组件,防止无法默认展开数据
   async function reloadTree() {
-    debugger
     await nextTick();
     treeReloading.value = true;
     await nextTick();

+ 3 - 11
src/views/publicComponents/SelectContractModal.vue

@@ -60,16 +60,7 @@
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="客户(customer)">
-                                <ApiSelect
-                                    :api="CustomerOption"
-                                    showSearch
-                                    v-model:value="queryParams.quotationCustomer"
-                                    optionFilterProp="label"
-                                    resultField="records"
-                                    labelField="abbreviation"
-                                    valueField="id"
-                                    :params='{pageSize:-1}'
-                                    />
+                                <JSelect   v-model:value="queryParams.quotationCustomer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -154,10 +145,11 @@
     import { defHttp } from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag,ApiSelect,JInput} from '/@/components/Form';
+    import { JDictSelectTag,ApiSelect,JInput,JSelect} from '/@/components/Form';
     import {ProjectOption,CustomerOption,ClassList} from '../saleCode/salesOrder/SaleOrderyForm.api';
 
     const emit = defineEmits([ 'selectContract']); //定义emit
+    var showField = ref('currency+name');
     let classOption = ref([])
     var visible = ref(false)
     var fatherProject = ref('')

+ 3 - 12
src/views/publicComponents/SelectQuotationModal.vue

@@ -59,15 +59,7 @@
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="客户(customer)">
-                                <ApiSelect
-                                    :api="CustomerOption"
-                                    showSearch
-                                    v-model:value="queryParams.quotationCustomer"
-                                    optionFilterProp="label"
-                                    resultField="records"
-                                    labelField="abbreviation"
-                                    valueField="id"
-                                    />
+                                <JSelect   v-model:value="queryParams.quotationCustomer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -141,14 +133,13 @@
     import { defHttp} from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag,JInput} from '/@/components/Form';
-     import {  ApiSelect} from '/@/components/Form/index';
-    import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
+    import { ApiSelect,JDictSelectTag,JInput,JSelect} from '/@/components/Form';
     import {ProjectOption,CustomerOption,ClassList} from '../saleCode/saleContract/SaleContract.api';
     const emit = defineEmits([ 'selectQuotation']); //定义emit
     var visible = ref(false)
     var fatherProject = ref('')
     var fatherSourceCode = ref('')
+    var showField = ref('currency+name');
     const columns = [
         { 
             type: 'selection',

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

@@ -75,18 +75,7 @@
                         </a-col>
                         <a-col :md="6" :sm="8" v-if="showCustomer=='yes'">
                             <a-form-item label="客户(customer)">
-                                <ApiSelect
-                                    :api="CustomerOption"
-                                    showSearch
-                                    v-model:value="queryParams.customer"
-                                    optionFilterProp="label"
-                                    resultField="records"
-                                    labelField="name"
-                                    valueField="id"
-                                    :params='{pageSize:-1}'
-                                    allowClear
-                                    @change="changeCustmer"
-                                    />
+                                <JSelect   v-model:value="queryParams.customer" :get-option-url="CustomerOption" :showField="showField"  @change="changeCustmer"></JSelect>
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -171,10 +160,11 @@
     import { defHttp} from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag,ApiSelect,JInput} from '/@/components/Form';
+    import { JDictSelectTag,ApiSelect,JInput,JSelect} 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 showField = ref('currency+name');
     var visible = ref(false)
     var fatherProject = ref('')
     var fatherSourceCode = ref('')

+ 3 - 15
src/views/publicComponents/components/AddProjectModal.vue

@@ -15,21 +15,7 @@
                     <a-row :gutter="24">
                         <a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
                             <a-form-item  prop="customerId" label="客户(customer)" :labelCol="labelCol" :wrapperCol="wrapperCol">
-                                <ApiSelect
-                                    :api="CustomerOption"
-                                    :showSearch="true"
-                                    v-model:value="model.customerId"
-                                    :filterOption="true"
-                                    resultField="records"
-                                    labelField="name"
-                                    valueField="id"
-                                    optionFilterProp='label'
-                                    :params="{pageSize:-1}"
-                                />
-                                <!-- <a-select v-model:value="model.customerId"  showSearch :filterOption="filterOption">
-                                    <a-select-option v-for="item in customerOption" :key="item.id" :value="item.id">{{ item.label }}</a-select-option>
-                                </a-select> -->
-                                <!-- <a-input v-model:value="model.customer" placeholder="请输入客户(customer)" ></a-input> -->
+                                <JSelect   v-model:value="model.customerId" :get-option-url="CustomerOption" :showField="showField"></JSelect>
                             </a-form-item>
                         </a-col>
                         <a-col >
@@ -58,11 +44,13 @@
     import { defHttp } from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import {ApiSelect} from '/@/components/Form/index';
+    import {JSelect} from '/@/components/Form/index'
     import{CustomerOption} from '../../saleCode/saleInquiryForm/SaleInquiryForm.api';
     var customerOption = ref([])
     var visible = ref(false);
     var form = ref();
     var addProjectModalRef = ref()
+    var showField = ref('currency+name');
     const emit = defineEmits([ 'success']);
     var model = ref({
         customerId:'',

+ 6 - 14
src/views/purchase/freightPurchaseOrder/components/SelectDeliveryNoticeModal.vue

@@ -40,16 +40,7 @@
                         <a-col :md="6" :sm="8">
                             <a-form-item name="customer">
                             <template #label><span title="客户(customer)">客户(customer)</span></template>
-                            <ApiSelect
-                                :api="CustomerOption"
-                                showSearch
-                                v-model:value="queryParams.customer"
-                                optionFilterProp="label"
-                                resultField="records"
-                                labelField="abbreviation"
-                                valueField="id"
-                                :params='{pageSize:-1}'
-                            />
+                            <JSelect   v-model:value="queryParams.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -143,10 +134,11 @@
     import { defHttp} from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag,ApiSelect,JInput} from '/@/components/Form';
+    import { JDictSelectTag,ApiSelect,JInput,JSelect} from '/@/components/Form';
     import {CustomerOption,ProjectOption,ClassList} from '../FreightPurOrder.api';
     const emit = defineEmits([ 'addDelivery']); //定义emit
     var visible = ref(false)
+    var showField = ref('currency+name');
     const columns = [
         { 
             type: 'selection',
@@ -259,7 +251,7 @@
         deliveryDate_end:'',
         saleDepartment:'',
         salesman:'',
-        otherFee:'是',
+        customerFee:'是',
         carriageUsed:'否',
     });
     let pagination = ref({
@@ -322,7 +314,7 @@
             deliveryDate_end:'',
             saleDepartment:'',
             salesman:'',
-            otherFee:'是',
+            customerFee:'是',
             carriageUsed:'否',
         }
         pagination.value.current =1;
@@ -363,7 +355,7 @@
             deliveryDate_end:'',
             saleDepartment:'',
             salesman:'',
-            otherFee:'是',
+            customerFee:'是',
             carriageUsed:'否',
         }
         pagination.value.current =1;

+ 3 - 12
src/views/saleCode/advancePayment/advancePaymentList.vue

@@ -37,17 +37,7 @@
             <a-col :lg="8">
               <a-form-item name="customer">
                 <template #label><span title="客户(customer)">客户(customer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.customer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params="{ pageSize: -1 }"
-                  optionFilterProp="label"
-                />
+                <JSelect   v-model:value="queryParam.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -141,11 +131,12 @@
     CustomerOption,
   } from './advancePaymentForm.api';
   import { cloneDeep } from 'lodash-es';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect, JInput,JSelect } from '/@/components/Form';
   import advancePaymentFormModal from './components/advancePaymentFormModal.vue';
   import { message } from 'ant-design-vue';
   const formRef = ref();
   const queryParam = reactive<any>({});
+  var showField = ref('currency+name');
   //注册model
   const [registerModal, { openModal }] = useModal();
   //注册table数据

+ 9 - 5
src/views/saleCode/advancePayment/components/advancePaymentForm.vue

@@ -26,7 +26,8 @@
 						</a-col>
 						<a-col :span="24">
 							<a-form-item label="客户(customer)" v-bind="validateInfos.customer" id="saleInvoiceForm-customer" name="customer" >
-                <ApiSelect
+                <JSelect   v-model:value="formData.customer" :get-option-url="CustomerOption" :showField="showField" @change="changeCustomer"></JSelect>
+                <!-- <ApiSelect
                   :api="CustomerOption"
                   showSearch
                   v-model:value="formData.customer"
@@ -37,7 +38,7 @@
                   :params='{pageSize:-1}'
                   optionFilterProp='label'
                   @change="changeCustomer"
-                />
+                /> -->
 							</a-form-item>
 						</a-col>
 						<a-col :span="24">
@@ -84,13 +85,14 @@
   import SelectSaleOrderMianModal from '../../../publicComponents/SelectSaleOrderMianModal.vue';
   import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
   import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
-  import { JDictSelectTag,JSelectMultiple,ApiSelect} from '/@/components/Form';
+  import { JDictSelectTag,JSelectMultiple,ApiSelect,JSelect} from '/@/components/Form';
   import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
   import { Form,message } from 'ant-design-vue';
   import { useUserStore } from '/@/store/modules/user';
   import moment from 'moment';
   const userStore = useUserStore();
   const useForm = Form.useForm;
+  var showField = ref('currency+name');
   export default defineComponent({
     name: "advancePaymentForm",
     components:{
@@ -102,7 +104,8 @@
       JSelectInput,
       JSelectMultiple,
       SelectSaleOrderMianModal,
-      ApiSelect
+      ApiSelect,
+      JSelect
     },
     props:{
       formDisabled:{
@@ -298,7 +301,8 @@
         addSaleOrderMian,
         changeAdvanceAmount,
         CustomerOption,
-        changeCustomer
+        changeCustomer,
+        showField
       }
     }
   });

+ 3 - 12
src/views/saleCode/deliveryNotice/deliveryNoticeList.vue

@@ -36,17 +36,7 @@
             <a-col :lg="8">
               <a-form-item name="customer">
                 <template #label><span title="客户(customer)">客户(customer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.customer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params="{ pageSize: -1 }"
-                  optionFilterProp="label"
-                />
+                <JSelect   v-model:value="queryParam.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -188,7 +178,7 @@
     getExportXlsInvoice,
     getExportXlsMark
   } from './delivertNoticeForm.api';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect, JInput,JSelect } from '/@/components/Form';
   import ViewFileListModal from './components/ViewFileListModal.vue';
   import deliveryNoticeFormModal from './components/deliveryNoticeFormModal.vue';
   import { message } from 'ant-design-vue';
@@ -198,6 +188,7 @@
   const formRef = ref();
   const ViewFileListModalRef = ref();
   const queryParam = reactive<any>({});
+  var showField = ref('currency+name');
   const checkedKeys = ref<Array<string | number>>([]);
   //注册model
   const [registerModal, { openModal }] = useModal();

+ 3 - 14
src/views/saleCode/quotation/quotation.vue

@@ -37,17 +37,7 @@
             <a-col :lg="8">
               <a-form-item name="quotationCustomer">
                 <template #label><span title="报价客户(quotation customer)">报价客户(quotation customer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.quotationCustomer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params="{ pageSize: -1 }"
-                  optionFilterProp="label"
-                />
+                <JSelect   v-model:value="queryParam.quotationCustomer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -176,8 +166,7 @@
     CustomerOption,
   } from './quotationForm.api';
   import { cloneDeep } from 'lodash-es';
-  import { useUserStore } from '/@/store/modules/user';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect, JInput ,JSelect} from '/@/components/Form';
   import quotationFormModal from './components/quotationFormModal.vue';
   import ViewHistoryVersionModal from './components/ViewHistoryVersionModal.vue';
   import { message } from 'ant-design-vue';
@@ -188,7 +177,7 @@
   const checkedKeys = ref<Array<string | number>>([]);
   //注册model
   const [registerModal, { openModal }] = useModal();
-  const userStore = useUserStore();
+  var showField = ref('currency+name');
   var ViewHistoryVersionModalRef = ref();
   //注册table数据
   const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({

+ 7 - 15
src/views/saleCode/receiptOrder/components/receiptOrderForm.vue

@@ -31,18 +31,7 @@
 						</a-col>
             <a-col :span="24">
 							<a-form-item label="购方(buyer)" v-bind="validateInfos.customer" id="saleInvoiceForm-customer" name="customer" >
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="formData.customer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params='{pageSize:-1}'
-                  optionFilterProp='label'
-                  @change="changeCustomer"
-                />
+                <JSelect   v-model:value="formData.customer" :get-option-url="CustomerOption" :showField="showField" @change="changeCustomer"></JSelect>
 							</a-form-item>
 						</a-col>
 						<a-col :span="24">
@@ -84,12 +73,13 @@
   import SelectInvoiceModal from './SelectInvoiceModal.vue';
   import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
   import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
-  import { JDictSelectTag,JSelectMultiple,ApiSelect} from '/@/components/Form';
+  import { JDictSelectTag,JSelectMultiple,ApiSelect,JSelect} from '/@/components/Form';
   import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
   import { Form,message } from 'ant-design-vue';
   import { useUserStore } from '/@/store/modules/user';
   import moment from 'moment';
   const userStore = useUserStore();
+  var showField = ref('currency+name');
   const useForm = Form.useForm;
   export default defineComponent({
     name: "advancePaymentForm",
@@ -102,7 +92,8 @@
       JSelectInput,
       JSelectMultiple,
       SelectInvoiceModal,
-      ApiSelect
+      ApiSelect,
+      JSelect
     },
     props:{
       formDisabled:{
@@ -285,7 +276,8 @@
         SelectInvoiceModalRef,
         addInvoice,
         CustomerOption,
-        changeCustomer
+        changeCustomer,
+        showField
       }
     }
   });

+ 3 - 12
src/views/saleCode/receiptOrder/receiptOrdertList.vue

@@ -36,17 +36,7 @@
             <a-col :lg="8">
               <a-form-item name="customer">
                 <template #label><span title="购方(buyer)">购方(buyer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.customer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params="{ pageSize: -1 }"
-                  optionFilterProp="label"
-                />
+                <JSelect   v-model:value="queryParam.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -133,11 +123,12 @@
   } from './receiptOrderForm.api';
   import { cloneDeep } from 'lodash-es';
   import { defHttp } from '/@/utils/http/axios';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect, JInput,JSelect } from '/@/components/Form';
   import receiptOrderFormModal from './components/receiptOrderFormModal.vue';
   import { message } from 'ant-design-vue';
   const formRef = ref();
   const queryParam = reactive<any>({});
+  var showField = ref('currency+name');
   //注册model
   const [registerModal, { openModal }] = useModal();
   //注册table数据

+ 3 - 17
src/views/saleCode/rfp/SaleRfp.data.ts

@@ -99,25 +99,11 @@ export const searchFormSchema: FormSchema[] = [
   {
     label: '客户(customer)',
     field: 'customerId',
-    component: 'ApiSelect',
+    component: 'JSelect',
     labelWidth: 150,
     componentProps: {
-      // mode: 'multiple',//multiple: 多选;不填写为单选
-      //请求api,返回结果{ result: { records: [{'id':'1',name:'scott'},{'id':'2',name:'小张'}] }}
-      api: () => defHttp.get({ url: '/cuspCode/cuspCustomerProfile/list',params:{pageSize: -1}}),
-      //数值转成String
-      numberToString: false,
-      //标题字段
-      labelField: 'name',
-      //值字段
-      valueField: 'id',
-      //请求参数
-      params: { pageSize: -1 },
-      //返回结果字段
-      resultField: 'records',
-      filterOption: 'true',
-      optionFilterProp: 'label',
-      showSearch: 'true',
+      getOptionUrl: () => defHttp.get({ url: '/cuspCode/cuspCustomerProfile/list?pageSize=-1'}),
+      showField:"currency+name"
     },
     //colProps: {span: 6},
   },

+ 3 - 12
src/views/saleCode/saleContract/SaleContract.data.ts

@@ -133,24 +133,15 @@ export const searchFormSchema: FormSchema[] = [
     label: '客户(Customer)',
     field: 'quotationCustomer',
     labelWidth: 150,
-    component: 'ApiSelect',
+    component: 'JSelect',
     componentProps: {
       // mode: 'multiple',//multiple: 多选;不填写为单选
       //请求api,返回结果{ result: { records: [{'id':'1',name:'scott'},{'id':'2',name:'小张'}] }}
-      api: CustomerOption,
+      getOptionUrl: CustomerOption,
       //数值转成String
-      numberToString: false,
+      showField: 'currency+name',
       //标题字段
       labelField: 'abbreviation',
-      //值字段
-      valueField: 'id',
-      //请求参数
-      params: { pageSize: -1 },
-      //返回结果字段
-      resultField: 'records',
-      filterOption: 'true',
-      showSearch: 'true',
-      optionFilterProp: 'label',
     },
     //colProps: {span: 6},
   },

+ 3 - 15
src/views/saleCode/saleInquiryForm/SaleInquiryFormList.vue

@@ -36,16 +36,7 @@
             <a-col :lg="8">
               <a-form-item name="inquiryCustomer" :label-col="{ style: 'width: 200px' }">
                 <template #label><span title="询价客户(inquiry customer)">询价客户(inquiry customer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.inquiryCustomer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  optionFilterProp="label"
-                />
+                <JSelect   v-model:value="queryParam.inquiryCustomer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <!-- <a-col :lg="8">
@@ -217,12 +208,9 @@
     CustomerOption,
     ClassOption,
   } from './SaleInquiryForm.api';
-  import { downloadFile } from '/@/utils/common/renderUtils';
   import { cloneDeep } from 'lodash-es';
-  import { useUserStore } from '/@/store/modules/user';
   import { defHttp } from '/@/utils/http/axios';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
-  import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
+  import { JDictSelectTag, ApiSelect, JInput ,JSelect} from '/@/components/Form';
   import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue';
   import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue';
   import SetOtherStatus from './components/SetOtherStatus.vue';
@@ -232,7 +220,7 @@
   const checkedKeys = ref<Array<string | number>>([]);
   //注册model
   const [registerModal, { openModal }] = useModal();
-  const userStore = useUserStore();
+  var showField = ref('currency+name');
   var classOption = ref([]);
   var SetOtherStatusRef = ref();
   //注册table数据

+ 2 - 1
src/views/saleCode/saleInquiryForm/components/SaleInquiryFormForm.vue

@@ -22,6 +22,7 @@
 						</a-col>
 						<a-col :span="12">
 							<a-form-item label="询价客户(inquiry customer)" v-bind="validateInfos.inquiryCustomer" id="SaleInquiryFormForm-inquiryCustomer" name="inquiryCustomer">
+                <!-- <JSelect   v-model:value="formData.inquiryCustomer" :get-option-url="customerOption" :showField="showField" ></JSelect> -->
                 <JSelectInput   v-model:value="formData.inquiryCustomer"  placeholder="请选择" :options="customerOption" disabled></JSelectInput>
 							</a-form-item>
 						</a-col>
@@ -171,7 +172,7 @@
   import SelectProjectModal from '../../../publicComponents/SelectProjectModal.vue';
   import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
   import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
-  import { JDictSelectTag} from '/@/components/Form';
+  import { JDictSelectTag,JSelect} from '/@/components/Form';
   import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
   import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue';
   import { Form,message } from 'ant-design-vue';

+ 4 - 17
src/views/saleCode/salesInvoice/components/SelectCommissionOrderModal.vue

@@ -38,15 +38,7 @@
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="客户(customer)">
-                                 <ApiSelect
-                                    :api="customerListList"
-                                    showSearch
-                                    v-model:value="queryParams.customer"
-                                    optionFilterProp="label"
-                                    resultField="records"
-                                    labelField="name"
-                                    valueField="id"
-                                    />
+                                <JSelect   v-model:value="queryParams.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
                             </a-form-item>
                         </a-col>                     
                         <a-col :md="6" :sm="8">
@@ -109,13 +101,12 @@
     import { defHttp} from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag,JInput} from '/@/components/Form';
-    import {  ApiSelect, } from '/@/components/Form/index';
-    import {listSupplier} from '../salesInvoiceForm.api'
-    import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
+    import { JDictSelectTag,JInput,JSelect,ApiSelect} from '/@/components/Form';
+    import {listSupplier,CustomerOption} from '../salesInvoiceForm.api'
     const emit = defineEmits([ 'addDelivery']); //定义emit
     let classOption = ref([])
     var visible = ref(false)
+    var showField = ref('currency+name');
     const columns = [
         { 
             type: 'selection',
@@ -339,10 +330,6 @@
        }
        
     }
-    function customerListList(){
-        let params = {pageSize:-1}
-        return defHttp.get({url:'/cuspCode/cuspCustomerProfile/list',params});
-    }
     defineExpose({
       getTable
     });

+ 3 - 11
src/views/saleCode/salesInvoice/components/SelectDeliveryNoticeModal.vue

@@ -39,15 +39,7 @@
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="客户(customer)">
-                                <ApiSelect
-                                    :api="CustomerOption"
-                                    showSearch
-                                    v-model:value="queryParams.customer"
-                                    optionFilterProp="label"
-                                    resultField="records"
-                                    labelField="name"
-                                    valueField="id"
-                                    />
+                                <JSelect   v-model:value="queryParams.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
                             </a-form-item>
                         </a-col>
                         
@@ -140,12 +132,12 @@
     import { defHttp} from '/@/utils/http/axios';
     import { message } from 'ant-design-vue';
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag,JInput} from '/@/components/Form';
+    import { JDictSelectTag,JInput,JSelect} from '/@/components/Form';
     import {  ApiSelect, } from '/@/components/Form/index';
     import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
     import {ProjectOption,CustomerOption,ClassList} from '../salesInvoiceForm.api';
     const emit = defineEmits([ 'addDelivery']); //定义emit
-
+    var showField = ref('currency+name');
     var visible = ref(false)
     const columns = [
         { 

+ 4 - 13
src/views/saleCode/salesInvoice/salesInvoiceList.vue

@@ -36,18 +36,8 @@
             </a-col>
             <a-col :lg="8">
               <a-form-item name="customer">
-                <template #label><span title="购方(buyer)">购方(buyer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.customer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params="{ pageSize: -1 }"
-                  optionFilterProp="label"
-                />
+                <template #label><span title="购方(buyer)">购方(buyer)</span></template> 
+                <JSelect   v-model:value="queryParam.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -157,7 +147,7 @@
   } from './salesInvoiceForm.api';
   import { cloneDeep } from 'lodash-es';
   import { defHttp } from '/@/utils/http/axios';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect, JInput,JSelect } from '/@/components/Form';
   import saleInvoiceFormModal from './components/saleInvoiceFormModal.vue';
   import SaleOrderFormList from '../salesOrder/components/SaleOrderFormModal.vue';
   import PurchaseOrderFormList from '../../purchase/purchaseOrder/components/PurchaseOrderFormModal.vue';
@@ -177,6 +167,7 @@
   const [registerModal, { openModal }] = useModal();
   var classOption = ref([]);
   var viewType = ref('');
+  var showField = ref('currency+name');
   //注册table数据
   const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
     tableProps: {

+ 3 - 12
src/views/saleCode/salesOrder/SaleOrderFormList.vue

@@ -36,17 +36,7 @@
             <a-col :lg="8">
               <a-form-item name="customer">
                 <template #label><span title="客户(customer)">客户(customer)</span></template>
-                <ApiSelect
-                  :api="CustomerOption"
-                  showSearch
-                  v-model:value="queryParam.customer"
-                  :filterOption="true"
-                  resultField="records"
-                  labelField="abbreviation"
-                  valueField="id"
-                  :params="{ pageSize: -1 }"
-                  optionFilterProp="label"
-                />
+                <JSelect   v-model:value="queryParam.customer" :get-option-url="CustomerOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
@@ -202,7 +192,7 @@
     getExportUrlRow
   } from './SaleOrderyForm.api';
   import { cloneDeep } from 'lodash-es';
-  import { JDictSelectTag, ApiSelect, JInput } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect, JInput,JSelect } from '/@/components/Form';
   import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue';
   import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue';
   import ViewFileListModal from './components/ViewFileListModal.vue';
@@ -212,6 +202,7 @@
   import { useMethods } from '/@/hooks/system/useMethods';
   const { handleExportXlsx, } = useMethods();
   const formRef = ref();
+  var showField = ref('currency+name');
   const ViewFileListModalRef = ref();
   const SelectSaleOrderModalRef = ref();
   const ViewHistoryVersionModallRef = ref();