yuansh преди 6 дни
родител
ревизия
949c906664

+ 17 - 7
src/views/saleCode/quotation/components/quotationFormForm.vue

@@ -392,6 +392,7 @@
     queryVersonHistoryById,
     queryRate,
     LinkOption,
+    queryByProject,
   } from '../quotationForm.api';
   import { JVxeTable } from '/@/components/jeecg/JVxeTable';
   import { saleQuotationFormShipColumns, saleQuotationFormProductColumns } from '../quotationForm.data';
@@ -582,7 +583,7 @@
         quotationPeriod.value[0] = formData.quotationPeriodBegin ? dayjs(formData.quotationPeriodBegin, 'YYYY/MM/DD') : '';
         quotationPeriod.value[1] = formData.quotationPeriodEnd ? dayjs(formData.quotationPeriodEnd, 'YYYY/MM/DD') : '';
         notAllowEdit.value = true;
-        getLinkOptionsArr(formData.quotationCustomer);
+        getLinkOptionsArr(formData.quotationCustomer,null);
       }
       //获取主表
       async function queryMainData(id) {
@@ -751,7 +752,7 @@
             saleQuotationFormProductTable.dataSource = newArr;
           }
           changeExchangeRate();
-          getLinkOptionsArr(formData.quotationCustomer);
+          getLinkOptionsArr(formData.quotationCustomer,formData.quotationProject);
         }
       }
       //获取客户列表
@@ -914,7 +915,7 @@
         // formData.currency = '美元';
         // formData.exchangeRate = '1';
         await getShipList(data[0].headId);
-        await getLinkOptionsArr(formData.quotationCustomer);
+        await getLinkOptionsArr(formData.quotationCustomer,formData.quotationProject);
         await changeExchangeRate();
         // countGrossMargin()
         // await changeDiscountOrExchangeRate()
@@ -1083,13 +1084,21 @@
           (salePriceAll - customerCommisionAll - platformCommisionAll - purchasePriceAll / Number(formData.exchangeRate)) / salePriceAll || 0;
         formData.grossMarginHead = (Number(formData.grossMarginHead) * 100).toFixed(2);
       }
-      async function getLinkOptionsArr(customerId) {
+      async function getLinkOptionsArr(customerId,project) {
         var obj = await LinkOption({ id: customerId });
         linkOption.value = obj;
-        if (obj.lenght !== 0 && typeof obj === 'undefined') {
-          formData.liaisonId = obj[0].id;
-          formData.liaisonInfo = obj[0].name;
+        
+         var objProject = await queryByProject({ project: project });
+        if (objProject != null) {
+         const jsonString = JSON.stringify(objProject);
+         const parsedData = JSON.parse(jsonString);
+         formData.liaisonId = parsedData.liaisonId;
+         formData.liaisonInfo = parsedData.liaisonInfo;
         }
+        // if (obj.lenght !== 0 && typeof obj === 'undefined') {
+        //   formData.liaisonId = obj[0].id;
+        //   formData.liaisonInfo = obj[0].name;
+        // }
       }
       function onChangeLiaison(data) {
         if (data && data !== undefined) {
@@ -1157,6 +1166,7 @@
         SetSonListRef,
         setSonListFiled,
         setBatchDiscount,
+        queryByProject,
         linkOption,
         getLinkOptionsArr,
         onChangeLiaison,

+ 2 - 0
src/views/saleCode/quotation/quotationForm.api.ts

@@ -28,6 +28,7 @@ enum Api {
   getRate='/baseCode/baseExchangeRate/getRateByUsd',
   editExamine = '/baseCode/baseApproverHead/actionApprove',
   linkOption = '/cuspCode/cuspCustomerProfile/queryCuspCustomerProfileManByMainId',
+  queryByProject = '/saleCode/saleInquiryForm/queryByProject',
 }
 /**
  * 导出api
@@ -163,3 +164,4 @@ export const CustomerOption = (params) => defHttp.get({ url: Api.customerList, p
 export const ProjectOption = (params) => defHttp.get({ url: Api.projectList, params });
 export const queryRate = (params) => defHttp.get({url: Api.getRate, params});
 export const LinkOption = (params) => defHttp.get({ url: Api.linkOption, params });
+export const queryByProject = (params) => defHttp.get({ url: Api.queryByProject, params });

+ 9 - 4
src/views/saleCode/saleInterfaceSync/SaleInterfaceSyncList.vue

@@ -71,7 +71,7 @@
     <a-modal v-model:open="syncVisiable" title="获取接口数据" centered @ok="handleSyncOk">
       <div style="padding: 20px">
         <a-form ref="syncFormRef" :model="syncForm" :rules="syncRules" :label-col="labelCol" :wrapper-col="wrapperCol">
-          <a-form-item label="开始时间" required name="requestedDeliveryDate">
+           <a-form-item label="开始时间" required name="requestedDeliveryDate">
             <a-date-picker
               v-model:value="syncForm.requestedDeliveryDate"
               type="date"
@@ -82,7 +82,7 @@
               show-time
             />
           </a-form-item>
-          <a-form-item label="结束时间" required name="adviseBeforeDate">
+         <!-- <a-form-item label="结束时间" required name="adviseBeforeDate">
             <a-date-picker
               v-model:value="syncForm.adviseBeforeDate"
               type="date"
@@ -92,7 +92,7 @@
               format="YYYY-MM-DD"
               show-time
             />
-          </a-form-item>
+          </a-form-item> -->
         </a-form>
       </div>
     </a-modal>
@@ -282,7 +282,7 @@
   const syncForm = ref({});
   const syncRules = {
     requestedDeliveryDate: [{ required: true, message: '请选择开始时间', trigger: 'blur' }],
-    adviseBeforeDate: [{ required: true, message: '请选择结束时间', trigger: 'blur' }],
+    // adviseBeforeDate: [{ required: true, message: '请选择结束时间', trigger: 'blur' }],
   };
   const closeRules = {
     closeInfo: [{ required: true, message: '请填写关闭原因', trigger: 'blur' }]
@@ -300,7 +300,12 @@
     closeVisiable.value = true;
   };
   const handleSyncOk = () => {
+    
     syncFormRef.value.validate().then(() => {
+      
+      message.info('数据信息获取中,请稍后!');
+      syncVisiable.value = false;
+      
       getData(syncForm.value).then((res) => {
         syncVisiable.value = false;
         handleSuccess();