|  | @@ -18,15 +18,33 @@
 | 
	
		
			
				|  |  |            </a-col>           
 | 
	
		
			
				|  |  |            <template v-if="toggleSearchStatus">
 | 
	
		
			
				|  |  |              <a-col :lg="8">
 | 
	
		
			
				|  |  | -              <a-form-item name="quotatioProject">
 | 
	
		
			
				|  |  | +              <a-form-item name="quotationProject">
 | 
	
		
			
				|  |  |                  <template #label><span title="报价项目(quotation project)">报价项目(quotation project)</span></template>
 | 
	
		
			
				|  |  | -                <a-input placeholder="请输入询价项目(inquiry project)" v-model:value="queryParam.quotatioProject" allow-clear AutoComplete="off"></a-input>
 | 
	
		
			
				|  |  | +                <ApiSelect
 | 
	
		
			
				|  |  | +                    :api="ProjectOption"
 | 
	
		
			
				|  |  | +                    showSearch
 | 
	
		
			
				|  |  | +                    v-model:value="queryParam.quotationProject"
 | 
	
		
			
				|  |  | +                    :filterOption="false"
 | 
	
		
			
				|  |  | +                    resultField="records"
 | 
	
		
			
				|  |  | +                    labelField="name"
 | 
	
		
			
				|  |  | +                    valueField="id"
 | 
	
		
			
				|  |  | +                    :params='{pageSize:-1}'
 | 
	
		
			
				|  |  | +                  />
 | 
	
		
			
				|  |  |                </a-form-item>
 | 
	
		
			
				|  |  |              </a-col>
 | 
	
		
			
				|  |  |              <a-col :lg="8">
 | 
	
		
			
				|  |  |                <a-form-item name="quotationSuppiler">
 | 
	
		
			
				|  |  |                  <template #label><span title="报价供应商(quotation supplier)">报价供应商(quotation supplier)</span></template>
 | 
	
		
			
				|  |  | -                <JSelectInput   v-model:value="queryParam.quotationSuppiler"  placeholder="请选择" :options="supplierOption" ></JSelectInput>
 | 
	
		
			
				|  |  | +                <ApiSelect
 | 
	
		
			
				|  |  | +                  :api="supplierOption"
 | 
	
		
			
				|  |  | +                  showSearch
 | 
	
		
			
				|  |  | +                  v-model:value="queryParam.quotationSuppiler"
 | 
	
		
			
				|  |  | +                  :filterOption="false"
 | 
	
		
			
				|  |  | +                  resultField="records"
 | 
	
		
			
				|  |  | +                  labelField="name"
 | 
	
		
			
				|  |  | +                  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" ></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">
 | 
	
	
		
			
				|  | @@ -133,11 +160,10 @@
 | 
	
		
			
				|  |  |    import {useModal} from '/@/components/Modal';
 | 
	
		
			
				|  |  |    import PurchaseQuotationFormModal from './components/PurchaseQuotationFormModal.vue'
 | 
	
		
			
				|  |  |    import {columns,} from './PurchaseQuotationForm.data';
 | 
	
		
			
				|  |  | -  import {list, deleteOne, batchDelete, getImportUrl,getExportUrl,batchSubmit,cancelBatchSubmit} from './PurchaseQuotationForm.api';
 | 
	
		
			
				|  |  | +  import {list, deleteOne, batchDelete, getImportUrl,getExportUrl,batchSubmit,cancelBatchSubmit,ProjectOption,supplierOption,ClassList} from './PurchaseQuotationForm.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 { JDictSelectTag,ApiSelect} from '/@/components/Form';
 | 
	
		
			
				|  |  |    import { message } from 'ant-design-vue';
 | 
	
		
			
				|  |  |    import { useGlobSetting } from '/@/hooks/setting';
 | 
	
		
			
				|  |  |    const { domainUrl } = useGlobSetting();
 | 
	
	
		
			
				|  | @@ -146,8 +172,6 @@
 | 
	
		
			
				|  |  |    const queryParam = reactive<any>({});
 | 
	
		
			
				|  |  |    //注册model
 | 
	
		
			
				|  |  |    const [registerModal, {openModal}] = useModal();
 | 
	
		
			
				|  |  | -  var classOption = ref([]);
 | 
	
		
			
				|  |  | -  var supplierOption = ref([])
 | 
	
		
			
				|  |  |     //注册table数据
 | 
	
		
			
				|  |  |    const { tableContext,onExportXls } = useListPage({
 | 
	
		
			
				|  |  |        tableProps:{
 | 
	
	
		
			
				|  | @@ -181,11 +205,6 @@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    const [registerTable, {reload},{ rowSelection, selectedRowKeys }] = tableContext
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -   // 自动请求并暴露内部方法
 | 
	
		
			
				|  |  | -   onMounted(() => {
 | 
	
		
			
				|  |  | -    getOptiom()
 | 
	
		
			
				|  |  | -    getSupplierOption()
 | 
	
		
			
				|  |  | -  });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 新增事件
 | 
	
	
		
			
				|  | @@ -205,48 +224,8 @@
 | 
	
		
			
				|  |  |         isUpdate: true,
 | 
	
		
			
				|  |  |         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;
 | 
	
		
			
				|  |  | -            });
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  // 供应商档案
 | 
	
		
			
				|  |  | -  function getSupplierOption(){
 | 
	
		
			
				|  |  | -        defHttp
 | 
	
		
			
				|  |  | -            .get({ url: '/cuspCode/cuspSupplierProfile/list'}, { isTransformResponse: false })
 | 
	
		
			
				|  |  | -            .then((res) => {
 | 
	
		
			
				|  |  | -                if (res.success) {
 | 
	
		
			
				|  |  | -                  supplierOption.value = []
 | 
	
		
			
				|  |  | -                  res.result.records.forEach(element => {
 | 
	
		
			
				|  |  | -                      var obj = {
 | 
	
		
			
				|  |  | -                        label: element.name?element.name:'无名称请维护',
 | 
	
		
			
				|  |  | -                        value: element.id?element.id:''
 | 
	
		
			
				|  |  | -                      };
 | 
	
		
			
				|  |  | -                      supplierOption.value.push( obj)
 | 
	
		
			
				|  |  | -                  });    
 | 
	
		
			
				|  |  | -                }
 | 
	
		
			
				|  |  | -            })
 | 
	
		
			
				|  |  | -            .finally(() => {
 | 
	
		
			
				|  |  | -                // loading.value = false;
 | 
	
		
			
				|  |  | -            });
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -   /**
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +      /**
 | 
	
		
			
				|  |  |      * 详情
 | 
	
		
			
				|  |  |     */
 | 
	
		
			
				|  |  |    function handleDetail(record: Recordable) {
 |