From 9518d7d3173b233f45dcbe58ab5ae2fca143dfd8 Mon Sep 17 00:00:00 2001 From: 涂煌豪 <tuhuanghao@prec-tech.com> Date: 星期一, 16 五月 2022 10:41:51 +0800 Subject: [PATCH] 【委托】电子签收单RPA系统迁移 --- force-app/main/default/classes/NFM116BatchTest.cls-meta.xml | 5 force-app/main/default/classes/NFM116BatchSchedule.cls | 6 force-app/main/default/classes/NFMUtil.cls | 12 + force-app/main/default/classes/NFM116Controller.cls-meta.xml | 5 force-app/main/default/classes/NFM116BatchScheduleTest.cls-meta.xml | 5 force-app/main/default/classes/NFM116ControllerTest.cls-meta.xml | 5 force-app/main/default/classes/NFM116Batch.cls | 69 +++++++++ force-app/main/default/classes/NFM116ControllerTest.cls | 58 ++++++++ force-app/main/default/classes/NFM116Controller.cls | 150 +++++++++++++++++++++ force-app/main/default/classes/NFM116Batch.cls-meta.xml | 5 force-app/main/default/classes/NFM116BatchSchedule.cls-meta.xml | 5 force-app/main/default/classes/NFM116BatchTest.cls | 72 ++++++++++ force-app/main/default/classes/NFM116BatchScheduleTest.cls | 20 ++ 13 files changed, 417 insertions(+), 0 deletions(-) diff --git a/force-app/main/default/classes/NFM116Batch.cls b/force-app/main/default/classes/NFM116Batch.cls new file mode 100644 index 0000000..b19d9d4 --- /dev/null +++ b/force-app/main/default/classes/NFM116Batch.cls @@ -0,0 +1,69 @@ +global class NFM116Batch implements Database.Batchable<sObject>, Database.AllowsCallouts { + // 璁惧畾鍙戦�佹寚瀹氱鏀跺崟鐨処D + public String setId; + // 璁惧畾鎵ц鏃ユ湡 + public Date setDate; + // 鏄惁鍙戦�佹寚瀹氭棩鏈�30澶╀箣鍚庣殑绛炬敹鍗� + public Boolean isAfterDate = false; + // 鏄惁鍙戦�佹寚瀹氱殑绛炬敹鍗� + public Boolean isAppoint = false; + // 璁惧畾鍙戦�佺殑绛炬敹鍗曠殑IdList + public List<String> setIdList; + + // Default 鍙戦�佸綋鏃ョ鍚堟潯浠剁殑绛炬敹鍗� + global NFM116Batch() { + this.setDate = Date.today(); + } + // 鍙戦�佹寚瀹氭棩鏈熺鍚堟潯浠剁殑绛炬敹鍗�, eg: testDate = Date.newInstance(2022, 05, 02),鍙戦��20220501瀹屾垚绛炬敹鐨勭鏀跺崟 + global NFM116Batch(Date testDate) { + this.setDate = testDate; + } + // 鍙戦�佸湪鎸囧畾鏃ユ湡30澶╀箣鍚庣殑鎵�鏈夌鍚堟潯浠剁殑绛炬敹鍗�(isAfterDate涓簍rue鐨勬椂鍊�) + global NFM116Batch(Date testDate, Boolean isAfterDate) { + this.setDate = testDate; + this.isAppoint = true; + this.isAfterDate = isAfterDate; + } + // 鍙戦�佹寚瀹欼d鐨勭鏀跺崟 + global NFM116Batch(String setId) { + this.setId = setId; + this.isAppoint = true; + } + // 鍙戦�佹寚瀹欼dList鐨勭鏀跺崟 + global NFM116Batch(List<String> setIdList) { + this.setIdList = setIdList; + this.isAppoint = true; + } + + global Database.QueryLocator start(Database.BatchableContext bc) { + String query = 'select Id from eSignForm__c where agencyAcceptSAPResult__c != null and HPAcceptSAPResult__c != null '; + if(String.isNotBlank(setId)){ + query += ' and Id =: setId '; + } else if (setIdList != null && setIdList.size() > 0) { + query += ' and Id IN: setIdList '; + } else if(!isAppoint){ + query += ' and SAPReportDate__c = ' + setDate.addDays(-1).format().replace('/', '-') ; + } else if(isAfterDate){ + query += ' and SAPReportDate__c > ' + setDate.addDays(-30).format().replace('/', '-') ; + } + System.debug('thhquery:' + query); + return Database.getQueryLocator(query); + } + + global void execute(Database.BatchableContext BC, List<eSignForm__c> eSignFormList) { + List<String> eSignFormIdList = new List<String>(); + if(eSignFormList.size() > 0){ + for(eSignForm__c es : eSignFormList){ + eSignFormIdList.add(es.Id); + } + } + System.debug('eSignFormIdList1:' + eSignFormIdList); + if(eSignFormIdList.size() > 0){ + NFM116Controller.executeNotFuture(null, eSignFormIdList); + } + } + + global void finish(Database.BatchableContext BC) { + + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/NFM116Batch.cls-meta.xml b/force-app/main/default/classes/NFM116Batch.cls-meta.xml new file mode 100644 index 0000000..40d6793 --- /dev/null +++ b/force-app/main/default/classes/NFM116Batch.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>54.0</apiVersion> + <status>Active</status> +</ApexClass> diff --git a/force-app/main/default/classes/NFM116BatchSchedule.cls b/force-app/main/default/classes/NFM116BatchSchedule.cls new file mode 100644 index 0000000..8245183 --- /dev/null +++ b/force-app/main/default/classes/NFM116BatchSchedule.cls @@ -0,0 +1,6 @@ +global class NFM116BatchSchedule implements Schedulable { + + global void execute(SchedulableContext SC) { + Id execBTId = Database.executeBatch(new NFM116Batch(), 200); + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/NFM116BatchSchedule.cls-meta.xml b/force-app/main/default/classes/NFM116BatchSchedule.cls-meta.xml new file mode 100644 index 0000000..40d6793 --- /dev/null +++ b/force-app/main/default/classes/NFM116BatchSchedule.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>54.0</apiVersion> + <status>Active</status> +</ApexClass> diff --git a/force-app/main/default/classes/NFM116BatchScheduleTest.cls b/force-app/main/default/classes/NFM116BatchScheduleTest.cls new file mode 100644 index 0000000..0dd8a5e --- /dev/null +++ b/force-app/main/default/classes/NFM116BatchScheduleTest.cls @@ -0,0 +1,20 @@ +@isTest +private class NFM116BatchScheduleTest { + static testMethod void testExecute() { + // This test runs a scheduled job at midnight Sept. 3rd. 2022 + String CRON_EXP = '0 0 0 3 9 ? 2022'; + + System.Test.startTest(); + // Schedule the test job + String jobId = System.schedule('NFM116BatchScheduleTest', CRON_EXP, new NFM116BatchSchedule()); + // Get the information from the CronTrigger API object + CronTrigger ct = [SELECT Id, CronExpression, TimesTriggered, NextFireTime FROM CronTrigger WHERE id = :jobId]; + // Verify the expressions are the same + System.assertEquals(CRON_EXP, ct.CronExpression); + // Verify the job has not run + System.assertEquals(0, ct.TimesTriggered); + // Verify the next time the job will run + System.assertEquals('2022-09-03 00:00:00', String.valueOf(ct.NextFireTime)); + System.Test.StopTest(); + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/NFM116BatchScheduleTest.cls-meta.xml b/force-app/main/default/classes/NFM116BatchScheduleTest.cls-meta.xml new file mode 100644 index 0000000..40d6793 --- /dev/null +++ b/force-app/main/default/classes/NFM116BatchScheduleTest.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>54.0</apiVersion> + <status>Active</status> +</ApexClass> diff --git a/force-app/main/default/classes/NFM116BatchTest.cls b/force-app/main/default/classes/NFM116BatchTest.cls new file mode 100644 index 0000000..fa0efc4 --- /dev/null +++ b/force-app/main/default/classes/NFM116BatchTest.cls @@ -0,0 +1,72 @@ +@isTest +private class NFM116BatchTest { + @TestSetup + static void makeData(){ + Opportunity opp = new Opportunity(); + opp.Opportunity_No__c = 'XB-153P-06-S151289'; + opp.Opportunity_Category__c = 'ET'; + opp.StageName = '鐩'; + opp.Authorized_DB_No__c = 'XB-153P-06-S151289'; + opp.Name = '::XB-153P-06-S151289'; + opp.Close_Forecasted_Date__c = Date.today(); + opp.CloseDate = Date.today(); + opp.Opp_Confirmation_Day__c = Date.today(); + insert opp; + + Statu_Achievements__c Statu1 = new Statu_Achievements__c(); + Statu1.ContractNO__c = 'SH-ET-191025'; + Statu1.Opportunity__c = opp.Id; + Statu1.ContractAmount__c = 100; + insert Statu1; + + eSignForm__c es = new eSignForm__c(); + es.Statu_Achievements__c = Statu1.Id; + es.DNName__c = '11223344'; + es.agencyAutoSignUpStatus__c = '宸叉壒鍑�'; + es.agencySignUpDate__c = Date.today().addDays(-1); + es.salesManageConfirmDate__c = Date.today().addDays(-1); + es.HPSignUpStatus__c = '宸叉壒鍑�'; + es.HPSignUpDate__c = Date.today().addDays(-1); + es.HPConfirmDate__c = Date.today().addDays(-1); + es.end_User__c = '濂戠磩'; + insert es; + + eSignFormLineItem__c esi = new eSignFormLineItem__c(); + esi.Count__c = 2; + esi.agencyGoodStatus__c = '瀹屽ソ'; + esi.eSignForm__c = es.Id; + insert esi; + eSignFormLineItem__c esi2 = new eSignFormLineItem__c(); + esi2.Count__c = 2; + esi2.agencyGoodStatus__c = '瀹屽ソ'; + esi2.eSignForm__c = es.Id; + insert esi2; + } + static testMethod void testMethod1(){ + Test.startTest(); + Database.executeBatch(new NFM116Batch(), 200); + Test.stopTest(); + } + static testMethod void testMethod2(){ + Test.startTest(); + Database.executeBatch(new NFM116Batch(Date.today()), 200); + Test.stopTest(); + } + static testMethod void testMethod3(){ + Test.startTest(); + Database.executeBatch(new NFM116Batch(Date.today().addDays(-30), true), 200); + Test.stopTest(); + } + static testMethod void testMethod4(){ + Test.startTest(); + eSignForm__c es = [select Id from eSignForm__c]; + Database.executeBatch(new NFM116Batch(es.Id), 200); + Test.stopTest(); + } + static testMethod void testMethod5(){ + Test.startTest(); + eSignForm__c es = [select Id from eSignForm__c]; + Database.executeBatch(new NFM116Batch(new List<String>{es.id}), 200); + Test.stopTest(); + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/NFM116BatchTest.cls-meta.xml b/force-app/main/default/classes/NFM116BatchTest.cls-meta.xml new file mode 100644 index 0000000..40d6793 --- /dev/null +++ b/force-app/main/default/classes/NFM116BatchTest.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>54.0</apiVersion> + <status>Active</status> +</ApexClass> diff --git a/force-app/main/default/classes/NFM116Controller.cls b/force-app/main/default/classes/NFM116Controller.cls new file mode 100644 index 0000000..5f18438 --- /dev/null +++ b/force-app/main/default/classes/NFM116Controller.cls @@ -0,0 +1,150 @@ +public with sharing class NFM116Controller { + public static String status; + public class OnlineSigns { + public NFMUtil.Monitoring Monitoring; + public OnlineSign[] OnlineSign; + } + public class OnlineSign { + public String SoNo; + public String DeliveryNote; + public String DealerResult; + public String DealerDate; + public String HospitalResult; + public String HospitalDate; + } + + /** + * NFM116銇�佷俊鍑︾悊 + * + * @param iflog_Id //鏃ュ織琛ㄧ殑ID + * @param OnlineSignIdList //瑕佸彂閫佺殑绛炬敹鍗曠殑ID + */ + @future (callout=true) + public static void callout(String iflog_Id, List<String> OnlineSignIdList) { + executeNotFuture(iflog_Id, OnlineSignIdList); + } + + public static void executeNotFuture(String iflog_Id, List<String> OnlineSignIdList) { + if (OnlineSignIdList == null || OnlineSignIdList.size() == 0) { + return; + } + //MessageGroupNumber鐨勮幏鍙� + Datetime nowDT = Datetime.now(); + String nowStr = nowDT.format('yyyyMMddHHmm'); + BatchIF_Log__c iflog = new BatchIF_Log__c(); + if(String.isNotBlank(iflog_Id)){ + iflog = [Select Id, Name, Log__c, ErrorLog__c, MessageGroupNumber__c from BatchIF_Log__c where Id = :iflog_Id]; + } else{ + iflog.MessageGroupNumber__c = nowStr; + } + iflog.Log__c = 'callout start\n'; + iflog.Type__c = 'NFM116'; + iflog.ErrorLog__c = ''; + String logstr = iflog.Log__c + '\nNumberOfRecord=' + OnlineSignIdList.size(); + + //Monitoring鐨勮瀹� + OnlineSigns onlineSigns = new OnlineSigns(); + onlineSigns.Monitoring = new NFMUtil.Monitoring(); + onlineSigns.Monitoring.TransmissionDateTime = nowStr; + onlineSigns.Monitoring.Text = ''; + onlineSigns.Monitoring.Tag = 'MSGH'; + onlineSigns.Monitoring.Sender = 'SFDC'; + onlineSigns.Monitoring.Receiver = 'SAP'; + onlineSigns.Monitoring.NumberOfRecord = '' + OnlineSignIdList.size(); + onlineSigns.Monitoring.MessageType = 'NFM116'; + onlineSigns.Monitoring.MessageGroupNumber = iflog.Name; + + BatchIF_Log__c rowData = new BatchIF_Log__c(); + try { + List<eSignForm__c> eSignFormList = [select Id, SANumber__c, DNName__c, agencyAcceptSAPResult__c, HPAcceptSAPResult__c, agencyAccOrSAPConfirmDate__c, + hpAccOrSAPConfirmDate__c from eSignForm__c where Id IN :OnlineSignIdList]; + System.debug('eSignFormList1:' + eSignFormList); + onlineSigns.OnlineSign = new List<OnlineSign>(); + for(eSignForm__c eSignForm : eSignFormList){ + OnlineSign onlineSign = new OnlineSign(); + onlineSign.SoNo = eSignForm.SANumber__c; + onlineSign.DeliveryNote = eSignForm.DNName__c; + onlineSign.DealerResult = eSignForm.agencyAcceptSAPResult__c; + onlineSign.DealerDate = NFMUtil.formatDate2Str(eSignForm.agencyAccOrSAPConfirmDate__c); + onlineSign.HospitalResult = eSignForm.HPAcceptSAPResult__c; + onlineSign.HospitalDate = NFMUtil.formatDate2Str(eSignForm.hpAccOrSAPConfirmDate__c); + onlineSigns.OnlineSign.add(onlineSign); + } + if(onlineSigns.OnlineSign.size() > 0){ + NFMUtil.Monitoring Monitoring = new NFMUtil.Monitoring(); + Monitoring.Tag = onlineSigns.Monitoring.Tag; + Monitoring.Sender = onlineSigns.Monitoring.Sender; + Monitoring.Receiver = onlineSigns.Monitoring.Receiver; + Monitoring.MessageType = onlineSigns.Monitoring.MessageType; + Monitoring.MessageGroupNumber = onlineSigns.Monitoring.MessageGroupNumber; + Monitoring.NumberOfRecord = onlineSigns.Monitoring.NumberOfRecord; + Monitoring.TransmissionDateTime = onlineSigns.Monitoring.TransmissionDateTime; + Monitoring.Text = ''; + rowData = NFMUtil.makeRowData(Monitoring, 'NFM116', onlineSigns); + execute(rowData, iflog); + } + logstr += '\nend'; + } catch(Exception ex) { + System.debug(Logginglevel.ERROR, 'NFM116_' + iflog.Name + ':' + ex.getMessage()); + System.debug(Logginglevel.ERROR, 'NFM116_' + iflog.Name + ':' + ex.getStackTraceString()); + logstr += ex.getMessage(); + iflog.ErrorLog__c += ex.getMessage() + '\n'; + iflog.ErrorLog__c += ex.getStackTraceString() + '\n'; + } + System.debug('thhrowData--->'+rowData); + if (rowData != null) { + upsert rowData; + } + iflog.Log__c = logstr; + upsert iflog; + } + + public static void execute(BatchIF_Log__c rowData, BatchIF_Log__c iflog) { + Integer batch_retry_max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt); + String rowDataStr = NFMUtil.getRowDataStr(rowData); + OnlineSigns onlineSigns = (OnlineSigns) JSON.deserialize(rowDataStr, OnlineSigns.class); + String logstr = onlineSigns.Monitoring.MessageGroupNumber + ' start\n'; + Boolean needUpdateIflog = false; + if (iflog == null) { + needUpdateIflog = true; + iflog = new BatchIF_Log__c(); + iflog.Log__c = logstr; + iflog.ErrorLog__c = ''; + } else { + logstr = iflog.Log__c; + } + iflog.Type__c = 'NFM116'; + iflog.MessageGroupNumber__c = onlineSigns.Monitoring.MessageGroupNumber; + + try{ + //鍙戦�佹帴鍙� + status = NFMUtil.sendToSapRet(rowDataStr, NFMUtil.NFM116_ENDPOINT); + System.debug('NFM116Log--status->' + status); + if ('Accepted'.equals(status)) { + logstr += 'status:' + status + '\n'; + rowData.retry_cnt__c = 0; + } + } catch (Exception ex) { + System.debug(Logginglevel.ERROR, 'NFM116_' + iflog.Name + ':' + ex.getMessage()); + System.debug(Logginglevel.ERROR, 'NFM116_' + iflog.Name + ':' + ex.getStackTraceString()); + logstr += ex.getMessage(); + iflog.ErrorLog__c += ex.getMessage() + '\n'; + iflog.ErrorLog__c += ex.getStackTraceString() + '\n'; + + if (rowData.retry_cnt__c == null) rowData.retry_cnt__c = 0; + if (rowData.retry_cnt__c < batch_retry_max_cnt) { + rowData.retry_cnt__c++; + LogAutoSendSchedule.assignOneMinute(); + } + if (rowData.retry_cnt__c >= batch_retry_max_cnt) { + rowData.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + rowData.ErrorLog__c+'閿欒娆℃暟宸茬粡瓒呰繃鑷姩閫佷俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄩ�佷俊'; + } + } + iflog.Log__c = logstr; + + if (needUpdateIflog) { + upsert iflog; + upsert rowData; + } + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/NFM116Controller.cls-meta.xml b/force-app/main/default/classes/NFM116Controller.cls-meta.xml new file mode 100644 index 0000000..40d6793 --- /dev/null +++ b/force-app/main/default/classes/NFM116Controller.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>54.0</apiVersion> + <status>Active</status> +</ApexClass> diff --git a/force-app/main/default/classes/NFM116ControllerTest.cls b/force-app/main/default/classes/NFM116ControllerTest.cls new file mode 100644 index 0000000..5c8883d --- /dev/null +++ b/force-app/main/default/classes/NFM116ControllerTest.cls @@ -0,0 +1,58 @@ +@isTest +private class NFM116ControllerTest { + @TestSetup + static void makeData(){ + Opportunity opp = new Opportunity(); + opp.Opportunity_No__c = 'XB-153P-06-S151289'; + opp.Opportunity_Category__c = 'ET'; + opp.StageName = '鐩'; + opp.Authorized_DB_No__c = 'XB-153P-06-S151289'; + opp.Name = '::XB-153P-06-S151289'; + opp.Close_Forecasted_Date__c = Date.today(); + opp.CloseDate = Date.today(); + opp.Opp_Confirmation_Day__c = Date.today(); + insert opp; + + Statu_Achievements__c Statu1 = new Statu_Achievements__c(); + Statu1.ContractNO__c = 'SH-ET-191025'; + Statu1.Opportunity__c = opp.Id; + Statu1.ContractAmount__c = 100; + insert Statu1; + + eSignForm__c es = new eSignForm__c(); + es.Statu_Achievements__c = Statu1.Id; + es.DNName__c = '11223344'; + es.agencyAutoSignUpStatus__c = '宸叉壒鍑�'; + es.agencySignUpDate__c = Date.today().addDays(-1); + es.agencyConfirmDate__c = Date.today().addDays(-1); + es.HPSignUpStatus__c = '宸叉壒鍑�'; + es.HPSignUpDate__c = Date.today().addDays(-1); + es.HPConfirmDate__c = Date.today().addDays(-1); + insert es; + + eSignFormLineItem__c esi = new eSignFormLineItem__c(); + esi.Count__c = 2; + esi.agencyGoodStatus__c = '瀹屽ソ'; + esi.eSignForm__c = es.Id; + insert esi; + eSignFormLineItem__c esi2 = new eSignFormLineItem__c(); + esi2.Count__c = 2; + esi2.agencyGoodStatus__c = '瀹屽ソ'; + esi2.eSignForm__c = es.Id; + insert esi2; + } + + static testMethod void testMethod1() { + List<eSignForm__c> eSignFormList = [select id from eSignForm__c]; + List<String> eSignFormIdList = new List<String>(); + for(eSignForm__c es : eSignFormList){ + eSignFormIdList.add(es.Id); + } + BatchIF_Log__c iflog = new BatchIF_Log__c(); + iflog.Log__c = 'test start \n'; + insert iflog; + Test.startTest(); + NFM116Controller.callout(iflog.Id, eSignFormIdList); + Test.stopTest(); + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/NFM116ControllerTest.cls-meta.xml b/force-app/main/default/classes/NFM116ControllerTest.cls-meta.xml new file mode 100644 index 0000000..40d6793 --- /dev/null +++ b/force-app/main/default/classes/NFM116ControllerTest.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>54.0</apiVersion> + <status>Active</status> +</ApexClass> diff --git a/force-app/main/default/classes/NFMUtil.cls b/force-app/main/default/classes/NFMUtil.cls index 22e8c7e..eca54fb 100644 --- a/force-app/main/default/classes/NFMUtil.cls +++ b/force-app/main/default/classes/NFMUtil.cls @@ -63,6 +63,9 @@ public static String NFM703_ENDPOINT = null; public static String NFM115_ENDPOINT = null; + // 鐢靛瓙绛炬敹鍗昐FDC2SAP thh 20220427 start + public static String NFM116_ENDPOINT = null; + // 鐢靛瓙绛炬敹鍗昐FDC2SAP thh 20220427 end public static String NFM112_ENDPOINT = null; @@ -126,6 +129,11 @@ NFM112_ENDPOINT = 'http://wdp.olympus.com.cn:8089/RESTAdapter/NFM112'; NFM115_ENDPOINT = 'https://wdp.olympus.com.cn:44301/RESTAdapter/NFM115'; + + // sanbox鐢靛瓙绛炬敹鍗昐FDC2SAP thh 20220427 start + NFM116_ENDPOINT = 'https://wdp.olympus.com.cn:44301/RESTAdapter/NFM116'; + // sanbox鐢靛瓙绛炬敹鍗昐FDC2SAP thh 20220427 end + // 鏂版湇鍔$郴缁� 娴嬭瘯鐜 AWS_DOMAIN = 'https://olympus.bqbot.com'; // 鏂版湇鍔$郴缁� 鏈湴鐜锛堜复鏃讹級 @@ -185,6 +193,10 @@ //鏍锋湰绠$悊 NFM115_ENDPOINT = 'https://wdp.olympus.com.cn:44302/RESTAdapter/NFM115'; + // 鐢靛瓙绛炬敹鍗昐FDC2SAP thh 20220427 start + NFM116_ENDPOINT = 'https://wdp.olympus.com.cn:44302/RESTAdapter/NFM116'; + // 鐢靛瓙绛炬敹鍗昐FDC2SAP thh 20220427 end + // 鏂版湇鍔$郴缁� AWS_DOMAIN = 'https://svc-elb.olympuschina.com'; -- Gitblit v1.9.1