From ba79bb0403f5347ba5c8cf73271521fa7aedbac6 Mon Sep 17 00:00:00 2001 From: 沙世明 <shashiming@prec-tech.com> Date: 星期六, 12 三月 2022 13:52:02 +0800 Subject: [PATCH] 1.707接口bug修正和test覆盖率提升 2.会议决裁申请触发器处理类的修改和新增test类 --- force-app/main/default/classes/NFM707Rest.cls | 122 +++++++++++++++++++++++++++------------- 1 files changed, 82 insertions(+), 40 deletions(-) diff --git a/force-app/main/default/classes/NFM707Rest.cls b/force-app/main/default/classes/NFM707Rest.cls index 124da8b..957446d 100644 --- a/force-app/main/default/classes/NFM707Rest.cls +++ b/force-app/main/default/classes/NFM707Rest.cls @@ -6,6 +6,8 @@ * { } + * @msg: + * 1.鎺ユ敹鍒颁細璁粨鏋滃悗锛屾洿鏂板浼氱殑鐘舵��(闈炶禐鍔╀細) *************************************************************************/ @RestResource(urlMapping='/NFM707/*') global with sharing class NFM707Rest { @@ -88,20 +90,21 @@ // upsert iflog; // continue; // } - if (String.isNotBlank(ged.Num)) { - // camMap.put(ged.Num, ged.MeetingApprovedNo); - camList.add(ged.MeetingApprovedNo); - } + // if (String.isNotBlank(ged.Num)) { + // camMap.put(ged.Num, ged.MeetingApprovedNo); + // camList.add(ged.MeetingApprovedNo); + // } + camList.add(ged.MeetingApprovedNo); meetingApprovedNoMap.put(ged.MeetingApprovedNo, ged); } if (meetingApprovedNoMap.size() > 0) { // 鏌ヨ绯荤粺閲岀殑 浼氳鍐宠鐢宠 Map<String,Application_for_Conference_Adjudication__c> acaMap = getAcaMap(meetingApprovedNoMap); // 鏌ヨ绯荤粺閲岀殑 甯傚満娲诲姩 - Map<String,Campaign> campaignMap = new Map<String,Campaign>(); - if (camList.size() > 0) { - campaignMap = getcampaignMap(camList); - } + // Map<String,Campaign> campaignMap = new Map<String,Campaign>(); + // if (camList.size() > 0) { + // campaignMap = getcampaignMap(camList); + // } for (String meetingApprovedNo : meetingApprovedNoMap.keySet()) { Result_for_Conference_Adjudication__c rca = new Result_for_Conference_Adjudication__c(); GeData ged = meetingApprovedNoMap.get(meetingApprovedNo); @@ -115,21 +118,60 @@ rca.Competitor__c = ged.Competitor; rca.Publicity__c = ged.Publicity; rca.SocietyHoldPlace__c = ged.SocietyHoldPlace; - if (campaignMap.containsKey(ged.Num)) { - rca.Campaign__c = campaignMap.get(ged.Num).Id; - // 鏇存柊浼氳鏃ョ▼ - Campaign cam = campaignMap.get(ged.Num); - cam.Meeting_Report__c = rca.Id; - cam.Society_Hold_Place__c = rca.SocietyHoldPlace__c; - cam.Report_approved_day__c = Date.today(); - } + rca.Campaign_Num__c = ged.Num; + // if (campaignMap.containsKey(ged.Num)) { + // rca.Campaign__c = campaignMap.get(ged.Num).Id; + // // 鏇存柊浼氳鏃ョ▼ + // Campaign cam = campaignMap.get(ged.Num); + // cam.Meeting_Report__c = rca.Id; + // cam.Society_Hold_Place__c = rca.SocietyHoldPlace__c; + // cam.Report_approved_day__c = Date.today(); + // } rcaList.add(rca); } if (rcaList.size() > 0) { insert rcaList; } - if (campaignMap.size() > 0) { - update campaignMap.values(); + // if (campaignMap.size() > 0) { + // update campaignMap.values(); + // } + List<Campaign> camNoList = [select id,Num__c,MeetingApprovedNo__c,Meeting_Approved_No__c, Meeting_Approved_No__r.MeetingApprovedNo__c, CampaignStatus__c + from Campaign + where Meeting_Approved_No__r.MeetingApprovedNo__c in: camList and CampaignStatus__c = '浼氳缁撴潫']; + // System.debug(camNoList); + if (camNoList != null && camNoList.size() > 0) { + List<String> cam_ids = new List<String>(); + for(Campaign cam : camNoList) { + // System.debug('cam: ' + cam.Num__c + '|' + cam.Meeting_Approved_No__c + '|' + cam.Meeting_Approved_No__r.MeetingApprovedNo__c); + Application_for_Conference_Adjudication__c app = acaMap.get(cam.Meeting_Approved_No__r.MeetingApprovedNo__c); + // System.debug('app: ' + (app != null ? app.Id : 'null')); + cam_ids.add(cam.id); + for (Result_for_Conference_Adjudication__c rca : rcaList) { + // System.debug('rca: ' + rca.Application_for_Conference_Adjudication__c); + if (cam.Meeting_Approved_No__c == rca.Application_for_Conference_Adjudication__c || (app != null && app.Id == rca.Application_for_Conference_Adjudication__c)) { + // 鏇存柊浼氳鏃ョ▼ + cam.Meeting_Report__c = rca.Id; + cam.Society_Hold_Place__c = rca.SocietyHoldPlace__c; + cam.Competitor__c = rca.Competitor__c; + // 鏇存柊鎶ュ憡鏃ユ湡鍜岀姸鎬� + cam.Report_approved_day__c = Date.today(); + cam.Approved_day__c = Date.today(); + cam.Status = '宸茬粨鏉�'; + } + break; + } + } + update camNoList; + + // 鏇存柊OPD璁″垝 + List<OPDPlan__c> opdlist = [select id,status__c from OPDPlan__c WHERE OPDType__c = '瀛︿細' and status__c != '瀹屾瘯' and Campaign__c in: cam_ids]; + //灏哋PD璁″垝鐨勭姸鎬佹洿鏂颁负 瀹屾瘯 + if (opdlist != null && opdlist.size() > 0) { + for (OPDPlan__c opdc : opdlist) { + opdc.Status__c= '瀹屾瘯'; + } + update opdlist; + } } } logstr += '\nend'; @@ -178,32 +220,32 @@ * @param camMap [description] * @return [description] */ - public static Map<String,Campaign> getcampaignMap(List<String> camList){ - Map<String,Campaign> campaignMap = new Map<String,Campaign>(); + // public static Map<String,Campaign> getcampaignMap(List<String> camList){ + // Map<String,Campaign> campaignMap = new Map<String,Campaign>(); - List<Campaign> camNoList = [select id,Num__c,MeetingApprovedNo__c - from Campaign - where MeetingApprovedNo__c in: camList]; - if (camNoList.size() > 0) { - for (Campaign cam : camNoList) { - campaignMap.put(cam.Num__c, cam); - } - } - return campaignMap; + // List<Campaign> camNoList = [select id,Num__c,MeetingApprovedNo__c + // from Campaign + // where MeetingApprovedNo__c in: camList]; + // if (camNoList.size() > 0) { + // for (Campaign cam : camNoList) { + // campaignMap.put(cam.Num__c, cam); + // } + // } + // return campaignMap; - } + // } // 蹇呭~瀛楁楠岃瘉 - private static String verify(GeData ged) { - String result = ''; - if (String.isBlank(ged.MeetingApprovedNo)) { - result += 'DataError: 浼氳鍐宠缂栫爜 [ MeetingApprovedNo ] is null!This data is skipped.\n'; - } - if (String.isBlank(ged.SocietyHoldPlace)) { - result += 'DataError: 浼氳鏃ョ▼ [ SocietyHoldPlace ] is null!This data is skipped.\n'; - } - return result; - } + // private static String verify(GeData ged) { + // String result = ''; + // if (String.isBlank(ged.MeetingApprovedNo)) { + // result += 'DataError: 浼氳鍐宠缂栫爜 [ MeetingApprovedNo ] is null!This data is skipped.\n'; + // } + // if (String.isBlank(ged.SocietyHoldPlace)) { + // result += 'DataError: 浼氳鏃ョ▼ [ SocietyHoldPlace ] is null!This data is skipped.\n'; + // } + // return result; + // } } \ No newline at end of file -- Gitblit v1.9.1