@isTest(SeeAllData = false) public with sharing class NFM212RestTest { /* 目前只是作为接数据用,且数据中没有关联其他表字段 故直接捏造接口日志 * 未来如果增加逻辑,需要对应修改。 */ /* 测试固定折扣 正常+必填验证 */ static testMethod void testNFM212_01() { BatchIF_Log__c iflog = new BatchIF_Log__c(); iflog.MessageGroupNumber__c = '20210601'; iflog.Type__c ='NFM212' ; iflog.Log__c = '[{"SpoID":"","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":null,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":null,"Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"},{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":48,"Area":"测试地区","Province":"测试省份","ApplyStatus":""}]'; iflog.RowDataFlg__c = true; insert iflog; System.Test.startTest(); NFM212Rest.executefuture(iflog.id); System.Test.stopTest(); } /* 测试固定折扣 正常+必填验证 */ static testMethod void testNFM212_03() { BatchIF_Log__c iflog = new BatchIF_Log__c(); iflog.MessageGroupNumber__c = '20211028'; iflog.Type__c ='NFM212' ; iflog.Log__c = '[{"SpoID":"OCSMSH-8712","Province":"#39;上海市","ProductClass":"ET","GuaranteeDiscount":100,"Discount":45,"DepartmentClass":"KD/SD产品、K-201/203、MAJ-1351、NM-200L/U-0423及NM-400L/U-0423、FD-410LR/FD-430L/MAJ-233、MAJ-339、MAJ-249、MAJ-1058","DealerType":"产品","DealerNo":"20859","DateTo":"20220331","DateFrom":"20210401","ContractNo":"154P-HD014","Area":"华东","ApplyStatus":"同意"}]'; iflog.RowDataFlg__c = true; insert iflog; System.Test.startTest(); NFM212Rest.executefuture(iflog.id); System.Test.stopTest(); } /* 测试报错 */ static testMethod void testNFM212_02() { BatchIF_Log__c iflog = new BatchIF_Log__c(); iflog.MessageGroupNumber__c = '20210601'; iflog.Type__c ='NFM212' ; iflog.Log__c = '[{"SpoID":"SZZZZZZ","DealerNo":"20210601","ContractNo":"200202020","DateFrom":"2021-05-22","DateTo":"2022-05-31","DealerType":"测试一般折扣","DepartmentClass":"测试科室","ProductClass":"测试产品","GuaranteeDiscount":50,"Discount":"48","Area":"测试地区","Province":"测试省份","ApplyStatus":"完成"}]'; iflog.RowDataFlg__c = true; insert iflog; System.Test.startTest(); NFM212Rest.executefuture(iflog.id); System.Test.stopTest(); } /* 测试调用execute方法 */ @isTest static void test_method_execute() { Test.startTest(); RestRequest req = new RestRequest(); RestResponse res = new RestResponse(); String JsonMsg = '{"Monitoring":{"Tag":"MSGH","Sender":"SPO","Receiver":"SFDC","MessageType":"NFM212","MessageGroupNumber":"20210000004695","NumberOfRecord":"4","TransmissionDateTime":"2021-06-23","Text":""},"Header":[{"SpoID":"OCSMSH-7862","Province":"#157;河南省","ProductClass":null,"GuaranteeDiscount":23,"Discount":12,"DepartmentClass":"BF","DealerType":"区域","DealerNo":"13122121","DateTo":"20220330","DateFrom":"20210310","ContractNo":"153P-XB001","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7863","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":5,"Discount":10,"DepartmentClass":"GYN","DealerType":"区域","DealerNo":"31359","DateTo":"20220330","DateFrom":"20180302","ContractNo":"153P-HB016","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7864","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":5,"Discount":20,"DepartmentClass":"OTH","DealerType":"区域","DealerNo":"31359","DateTo":"20220330","DateFrom":"20180302","ContractNo":"153P-HB016","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7865","Province":"#157;河南省","ProductClass":null,"GuaranteeDiscount":20,"Discount":10,"DepartmentClass":"GS","DealerType":"区域","DealerNo":"31360","DateTo":"20220330","DateFrom":"20210307","ContractNo":"153P-XB002","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7883","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":2,"DepartmentClass":"奥辉(基层)-ENF","DealerType":"产品","DealerNo":"31385","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD015更2021-04-28更2021-04-28","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7884","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":2,"DepartmentClass":"奥辉(基层)-GI","DealerType":"产品","DealerNo":"31385","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD015更2021-04-28更2021-04-28","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7885","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":33,"DepartmentClass":"奥辉(基层)-OTH","DealerType":"产品","DealerNo":"31385","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD015更2021-04-28更2021-04-28","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7886","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":10,"Discount":10,"DepartmentClass":"能量主机-GYN","DealerType":"产品","DealerNo":"31387","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HB001","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7887","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":10,"Discount":10,"DepartmentClass":"能量主机-OTH","DealerType":"产品","DealerNo":"31387","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HB001","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7888","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":10,"Discount":10,"DepartmentClass":"能量主机-GS","DealerType":"产品","DealerNo":"31387","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HB001","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7889","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":10,"Discount":10,"DepartmentClass":"能量主机-URO","DealerType":"产品","DealerNo":"31387","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HB001","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7903","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":1,"Discount":1,"DepartmentClass":"OTH","DealerType":"区域","DealerNo":"31392","DateTo":"20220330","DateFrom":"20210512","ContractNo":"154P-HD021","Area":"西南","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7904","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":1,"Discount":1,"DepartmentClass":"GS","DealerType":"区域","DealerNo":"31392","DateTo":"20220330","DateFrom":"20210512","ContractNo":"154P-HD021","Area":"西南","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7905","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":1,"Discount":1,"DepartmentClass":"GI","DealerType":"区域","DealerNo":"31392","DateTo":"20220330","DateFrom":"20210512","ContractNo":"154P-HD021","Area":"西南","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7911","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":33,"DepartmentClass":"ET","DealerType":"产品","DealerNo":"31396","DateTo":"20220330","DateFrom":"20210504","ContractNo":"154P-HD029","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7912","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":3,"DepartmentClass":"奥辉(基层)-OTH","DealerType":"产品","DealerNo":"31388","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD030","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7913","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":4,"DepartmentClass":"奥辉(基层)-GI","DealerType":"产品","DealerNo":"31388","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD030","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7914","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":34,"DepartmentClass":"奥辉(基层)-URO","DealerType":"产品","DealerNo":"31388","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD030","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7928","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":1,"DepartmentClass":"奥辉(基层)-OTH","DealerType":"产品","DealerNo":"31397","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD037","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7929","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":2,"DepartmentClass":"奥辉(基层)-GI","DealerType":"产品","DealerNo":"31397","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD037","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7930","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":3,"DepartmentClass":"奥辉(基层)-ENF","DealerType":"产品","DealerNo":"31397","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD037","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7931","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-OTH","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD038","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7932","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":23,"DepartmentClass":"奥辉(基层)-GS","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD038","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7933","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":34,"DepartmentClass":"奥辉(基层)-ENF","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD038","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7934","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":45,"DepartmentClass":"奥辉(基层)-BF","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD038","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7938","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":2,"DepartmentClass":"奥辉(基层)-OTH","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD040","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7939","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":2,"DepartmentClass":"奥辉(基层)-ENF","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD040","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7940","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":123,"DepartmentClass":"奥辉(基层)-BF","DealerType":"产品","DealerNo":"31398","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD040","Area":"华北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7947","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-GYN","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7948","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-OTH","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7949","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-GS","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7950","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-GI","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7951","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-ENF","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7952","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-BF","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7953","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":12,"DepartmentClass":"奥辉(基层)-URO","DealerType":"产品","DealerNo":"31401","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HB006","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7954","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":2,"DepartmentClass":"ET","DealerType":"产品","DealerNo":"31403","DateTo":"20220330","DateFrom":"20210504","ContractNo":"154P-HD042","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7955","Province":"#142;北京市","ProductClass":null,"GuaranteeDiscount":0,"Discount":23232,"DepartmentClass":"ET","DealerType":"产品","DealerNo":"31404","DateTo":"20220330","DateFrom":"20200519","ContractNo":"154P-HB007","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7960","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":2,"Discount":2,"DepartmentClass":"奥辉-GYN","DealerType":"产品","DealerNo":"31405","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD044","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7961","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":2,"Discount":2,"DepartmentClass":"奥辉-OTH","DealerType":"产品","DealerNo":"31405","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD044","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7962","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":88,"Discount":99,"DepartmentClass":"GYN","DealerType":"区域","DealerNo":"31407","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HD049","Area":"西南","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7963","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":98,"Discount":89,"DepartmentClass":"OTH","DealerType":"区域","DealerNo":"31407","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HD049","Area":"西南","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7964","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":0,"Discount":99,"DepartmentClass":"SP耗材","DealerType":"产品","DealerNo":"31408","DateTo":"20220330","DateFrom":"20210506","ContractNo":"154P-HD050","Area":"西南","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7965","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":7,"Discount":1,"DepartmentClass":"奥辉-GYN","DealerType":"产品","DealerNo":"31405","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD053","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7966","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":8,"Discount":2,"DepartmentClass":"奥辉-OTH","DealerType":"产品","DealerNo":"31405","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD053","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7967","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":99,"Discount":3,"DepartmentClass":"奥辉-ENF","DealerType":"产品","DealerNo":"31405","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD053","Area":"西北","ApplyStatus":"同意"},{"SpoID":"OCSMSH-7980","Province":"#144;上海市","ProductClass":null,"GuaranteeDiscount":23,"Discount":3,"DepartmentClass":"ENF","DealerType":"区域","DealerNo":"31415","DateTo":"20230331","DateFrom":"20220401","ContractNo":"154P-HD060更2021-06-09","Area":"西北","ApplyStatus":"同意"}]}'; req.requestURI = 'services/apexrest/NFM212/execute'; req.httpMethod = 'POST'; req.requestBody = Blob.valueof(JsonMsg); RestContext.request = req; RestContext.response= res; NFM212Rest.execute(); Test.stopTest(); } }