浏览代码

到货单-筛选条件修改

jingbb 5 月之前
父节点
当前提交
d8269ba9c7

+ 23 - 30
src/views/publicComponents/SelectPurchaseOrderModal.vue

@@ -26,26 +26,44 @@
                         <a-col :md="6" :sm="8">
                             <a-form-item label="项目(project)">
                                 <ApiSelect
-                                    :api="projectListList"
+                                    :api="ProjectOption"
                                     showSearch
                                     v-model:value="queryParams.project"
                                     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"
+                                :filterOption="false"
+                                resultField="records"
+                                labelField="name"
+                                valueField="id"
+                                :params='{pageSize:-1}'
+                                />
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
                             <a-form-item label="供应商(supplier)">
-                                <a-input placeholder="请输入" v-model:value="queryParams.supplierName"></a-input>
+                                <ApiSelect
+                                :api="supplierOption"
+                                showSearch
+                                v-model:value="queryParams.supplier"
+                                :filterOption="false"
+                                resultField="records"
+                                labelField="name"
+                                valueField="id"
+                                :params='{pageSize:-1}'
+                                />
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
@@ -117,8 +135,8 @@
     import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
     import { JDictSelectTag} from '/@/components/Form';
     import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
+    import {ProjectOption,supplierOption,ClassList} from '../purchase/arrivedGoods/ArriveGoodsForm.api';
     const emit = defineEmits([ 'selectPurchaseOrder']); //定义emit
-    let classOption = ref([])
     var visible = ref(false)
     var fatherProject = ref('')
     var fatherSourceCode = ref('')
@@ -312,25 +330,6 @@
         pagination.value.pageSize = paginations.pageSize;
         loadData()
     };
-    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;
-        });
-  }
     function searchQuery(){
         loadData();
     }
@@ -417,7 +416,6 @@
         }
         fatherType.value='arrive'
         loadData()
-        getOptiom()
     }
     function getTableFromPurPayRequestForm(){
         visible.value = true
@@ -425,7 +423,6 @@
         fatherSourceCode.value = ''
         fatherType.value='payRequest'
         loadData()
-        getOptiom()
     }
     function changeBillDate(prop){
        if(prop){
@@ -439,10 +436,6 @@
        }
        
     }
-    function projectListList(){
-        let params = {pageSize:-1}
-        return defHttp.get({url:'/baseCode/baseProjectArchive/list',params});
-    }
     defineExpose({
       getTable,
       getTableFromPurPayRequestForm

+ 10 - 11
src/views/purchase/arrivedGoods/ArriveGoodsForm.api.ts

@@ -5,7 +5,6 @@ const { createConfirm } = useMessage();
 
 enum Api {
   list = '/purCode/purDeliveryNote/list',
-  supplierList='/cuspCode/cuspSupplierProfile/list',
   save='/purCode/purDeliveryNote/add',
   edit='/purCode/purDeliveryNote/edit',
   deleteOne = '/purCode/purDeliveryNote/delete',
@@ -19,7 +18,9 @@ enum Api {
   cancelSubmitBatch='/purCode/purDeliveryNote/returnSubmitBatch',
   closeBatch='/purCode/purDeliveryNote/submitClose',
   cancelBatchClose = '/purCode/purDeliveryNote/returnClose',
-  classList='baseCode/baseProductClass/list'
+  classList='baseCode/baseProductClass/list',
+  supplierList='/cuspCode/cuspSupplierProfile/list',
+  projectList='/baseCode/baseProjectArchive/list',
 }
 /**
  * 导出api
@@ -57,14 +58,6 @@ export const ClassList = (params) =>
   defHttp.get({url: Api.classList, params});
 
 
-/**
- * 供应商列表接口
- * @param params
- */
-export const Supplierlist = (params) =>
-  defHttp.get({url: Api.supplierList, params});
-
-
 /**
  * 删除单个
  */
@@ -165,4 +158,10 @@ export const cancelBatchClose = (params, handleSuccess) => {
       });
     }
   });
-}
+}
+//获取供应商列表
+export const supplierOption = (params) => defHttp.get({url: Api.supplierList, params});
+
+
+//获取项目下拉框列表
+export const ProjectOption = (params) => defHttp.get({ url: Api.projectList, params });

+ 27 - 35
src/views/purchase/arrivedGoods/ArriveGoodsList.vue

@@ -18,8 +18,18 @@
           </a-col>           
           <template v-if="toggleSearchStatus">
             <a-col :lg="8">
-              <a-form-item name="projectName" :label-col="labelCol1" :wrapper-col="wrapperCol1">
-                <template #label><span title="项目(projectName)">项目(projectName)</span></template>
+              <a-form-item name="project" :label-col="labelCol1" :wrapper-col="wrapperCol1">
+                <template #label><span title="项目(project)">项目(project)</span></template>
+                <ApiSelect
+                  :api="ProjectOption"
+                  showSearch
+                  v-model:value="queryParam.project"
+                  :filterOption="false"
+                  resultField="records"
+                  labelField="name"
+                  valueField="id"
+                  :params='{pageSize:-1}'
+                />
                 <a-input placeholder="请输入项目(projectName)" v-model:value="queryParam.projectName" allow-clear AutoComplete="off"></a-input>
               </a-form-item>
             </a-col>
@@ -27,13 +37,14 @@
               <a-form-item name="supplier">
                 <template #label><span title="供应商(supplier)">供应商(supplierName)</span></template>
                 <ApiSelect
-                  :api="Supplierlist"
+                  :api="supplierOption"
                   showSearch
                   v-model:value="queryParam.supplier"
                   :filterOption="false"
                   resultField="records"
                   labelField="name"
                   valueField="id"
+                  :params='{pageSize:-1}'
                 />
               </a-form-item>
             </a-col>
@@ -46,7 +57,16 @@
             <a-col :lg="8">
               <a-form-item name="productionClass" :label-col="labelCol1" :wrapper-col="wrapperCol1">
                 <template #label><span title="产品分类(production class)">产品分类(production class)</span></template>
-                <JSelectInput   v-model:value="queryParam.productionClass"  placeholder="请选择" :options="classOption" ></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">
@@ -58,7 +78,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">
@@ -151,18 +171,15 @@
   import {useModal} from '/@/components/Modal';
   import ArriveGoodsFormModal from './components/ArriveGoodsFormModal.vue'
   import {columns,} from './ArriveGoodsForm.data';
-  import {list, deleteOne, batchDelete, getImportUrl,bacthClose,cancelBatchClose,getExportUrl,batchSubmit,cancelBatchSubmit,Supplierlist} from './ArriveGoodsForm.api';
+  import {list, deleteOne, batchDelete, getImportUrl,bacthClose,cancelBatchClose,getExportUrl,batchSubmit,cancelBatchSubmit,ProjectOption,supplierOption,ClassList} from './ArriveGoodsForm.api';
   import { cloneDeep } from "lodash-es";
   import { defHttp } from '/@/utils/http/axios';
-  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 { message } from 'ant-design-vue';
   const formRef = ref();
   const queryParam = reactive<any>({});
   //注册model
   const [registerModal, {openModal}] = useModal();
-  var classOption = ref([]);
    //注册table数据
   const { prefixCls,tableContext,onExportXls,onImportXls } = useListPage({
       tableProps:{
@@ -206,11 +223,6 @@
     });
     reload();
   }
-   // 自动请求并暴露内部方法
-   onMounted(() => {
-    getOptiom()
-  });
-
    /**
     * 新增事件
     */
@@ -230,26 +242,6 @@
        showFooter: true,
      });
    }
-  //  产品分类
-  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;
-            });
-  }
    /**
     * 详情
    */

+ 1 - 2
src/views/purchase/arrivedGoods/components/ArriveGoodsFormForm.vue

@@ -172,7 +172,7 @@
   import { defineComponent, ref, reactive, computed, toRaw} from 'vue';
   import { defHttp } from '/@/utils/http/axios';
   import { useValidateAntFormAndTable } from '/@/hooks/system/useJvxeMethods';
-  import { queryArriveGoodsShipTable, queryArriveGoodsDetailByMainId, queryDataById,ClassList, saveOrUpdate,Supplierlist} from '../ArriveGoodsForm.api';
+  import { queryArriveGoodsShipTable, queryArriveGoodsDetailByMainId, queryDataById,ClassList, saveOrUpdate} from '../ArriveGoodsForm.api';
   import { JVxeTable } from '/@/components/jeecg/JVxeTable';
   import {ArriveGoodsFormShipColumns, ArriveGoodsDetailColumns} from '../ArriveGoodsForm.data';
   import SelectProjectModal from '../../../publicComponents/SelectProjectModal.vue';
@@ -498,7 +498,6 @@
         SelectPurchaseOrderModalRef,
         selectPurchaseOrderList,
         addAddiveGoods,
-        Supplierlist,
         changeSupplier,
         supplierOption,
         ClassList