From edb984edf95f9bb40d580d2a311c45f6ed9dd56d Mon Sep 17 00:00:00 2001 From: Thhto <997058689@qq.com> Date: 星期五, 11 三月 2022 17:50:40 +0800 Subject: [PATCH] OBPM页面修改和测试类 --- force-app/main/default/classes/CampaignCreateController.cls | 208 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 199 insertions(+), 9 deletions(-) diff --git a/force-app/main/default/classes/CampaignCreateController.cls b/force-app/main/default/classes/CampaignCreateController.cls index 6f30f50..4be57ec 100644 --- a/force-app/main/default/classes/CampaignCreateController.cls +++ b/force-app/main/default/classes/CampaignCreateController.cls @@ -1,21 +1,211 @@ public with sharing class CampaignCreateController { - public List<AdjudicationData> AdjudicationDataList{ get; set; } + // public List<AdjudicationData> AdjudicationDataList{ get; set; } + public AdjudicationData AdjudicationDataobj{ get; set; } + public boolean hasError { get; set; } + public String MeetingApprovedName{ get; set; } + public String flag{ get; set; } + public String CampaignTheme{ get; set; } + private String RecordTypeId{ get; set; } + private String CMRT{ get; set; } + private String retURL{ get; set; } + private String p8{ get; set; } + private String CF00N10000002DIsr{ get; set; } + private String ent{ get; set; } + private String CF00N10000002DIsr_lkid{ get; set; } public CampaignCreateController(ApexPages.StandardController controller) { - + RecordTypeId = ApexPages.currentPage().getParameters().get('RecordType'); + CMRT = ApexPages.currentPage().getParameters().get('CMRT'); + retURL = ApexPages.currentPage().getParameters().get('retURL'); + p8 = ApexPages.currentPage().getParameters().get('p8'); + CF00N10000002DIsr = ApexPages.currentPage().getParameters().get('CF00N10000002DIsr'); + ent = ApexPages.currentPage().getParameters().get('ent'); + CF00N10000002DIsr_lkid = ApexPages.currentPage().getParameters().get('CF00N10000002DIsr_lkid'); } - public void init(){ - AdjudicationDataList = new List<AdjudicationData>(); - AdjudicationData ad = new AdjudicationData(); - AdjudicationDataList.add(ad); + public Pagereference init(){ + hasError = false; + RecordType recordType = [select Id, Name, DeveloperName from RecordType where IsActive = true and id = :RecordTypeId]; + String RecordTypeName = recordType.DeveloperName; + //璁板綍绫诲瀷涓�1.瀛︿細/浼氳鎴栬��6.钀ヤ笟閮ㄤ笓鐢ㄤ細璁殑鏃跺�欐墠璺宠浆灏忛〉闈� + if(RecordTypeName == 'Society' || RecordTypeName == 'BusinessTraining'){ + // AdjudicationDataList = new List<AdjudicationData>(); + AdjudicationData ad = new AdjudicationData(); + ad.cam = new Campaign(); + // 榛樿閫変腑 + ad.cam.IF_Approved__c = true; + // AdjudicationDataList.add(ad); + AdjudicationDataobj = ad; + return null; + } else{ + String buildUrl = skipBuildPage(); + PageReference pg = new PageReference(buildUrl); + pg.setRedirect(true); + return pg; + } + } + + //鏍囧噯椤甸潰璺宠浆鏂板缓瀛︿細椤甸潰 + public String skipBuildPage(){ + String str = '/701/e?cpn1=*'; + if(RecordTypeId != null){ + str += '&RecordType=' + RecordTypeId; + } + if(CMRT != null){ + str += '&CMRT=' + CMRT; + } + if(retURL != null){ + str += '&retURL=' + retURL; + } + if(p8 != null){ + str += '&p8=' + p8; + } + if(CF00N10000002DIsr != null){ + str += '&CF00N10000002DIsr=' + CF00N10000002DIsr; + } + if(ent != null){ + str += '&ent=' + ent; + } + if(CF00N10000002DIsr_lkid != null){ + str += '&CF00N10000002DIsr_lkid=' + CF00N10000002DIsr_lkid; + } + str += '&nooverride=1'; + return str; + } + public void changeCheckboxs(){ + System.debug('flag++++'+flag); + if(flag=='0'){ + AdjudicationDataobj.cam.IF_Approved__c=false; + }else if(flag=='1'){ + AdjudicationDataobj.cam.IF_Approved__c=true; + } + } + //灏忛〉闈㈣烦杞浼氭柊寤洪〉闈� + public Pagereference skipPage(){ + List<String> MeetingApprovedIdList = new List<String>(); + Map<String, Application_for_Conference_Adjudication__c> MeetingApprovedMap = new Map<String, Application_for_Conference_Adjudication__c>(); + // for(AdjudicationData ad : AdjudicationDataList){ + // if(String.isNotBlank(ad.cam.Meeting_Approved_No__c)){ + // MeetingApprovedIdList.add(ad.cam.Meeting_Approved_No__c); + // } + // } + if(String.isNotBlank(AdjudicationDataobj.cam.Meeting_Approved_No__c)){ + MeetingApprovedIdList.add(AdjudicationDataobj.cam.Meeting_Approved_No__c); + } + List<Application_for_Conference_Adjudication__c> MeetingApprovedList = + [select Id, Name, StartDate__c, EndDate__c, BudgetType__c, OfficeCategory__c, MeetingType__c, WorkshopPlace__c, + HostName__c, CooperatorCompany__c, ConveningParticipantsNum__c, ExpectedOlympusAttendance__c,ExpectedHcpAttendance__c, + SponsorshipCategory__c, IsPaidToSponsor__c, ActivityTypeName__c, Type_of_adjudication_meeting__c + from Application_for_Conference_Adjudication__c where Id = :MeetingApprovedIdList]; + + for(Application_for_Conference_Adjudication__c afca : MeetingApprovedList){ + MeetingApprovedMap.put(afca.Id, afca); + } + String url = skipBuildPage(); + // for(AdjudicationData ad : AdjudicationDataList){ + system.debug('123321+++++++===='+AdjudicationDataobj.cam.IF_Approved__c); + if(AdjudicationDataobj.cam != null){ + if(AdjudicationDataobj.cam.IF_Approved__c || String.isNotBlank(AdjudicationDataobj.cam.Meeting_Approved_No__c)){ + url += '&00N1m000005tHDi=1'; + }else{ + url += '&00N1m000005tHDi=0'; + } + } + if(AdjudicationDataobj.cam != null && String.isNotBlank(AdjudicationDataobj.cam.Meeting_Approved_No__c)){ + Application_for_Conference_Adjudication__c mam = MeetingApprovedMap.get(AdjudicationDataobj.cam.Meeting_Approved_No__c); + //浼氳鍐宠缂栫爜鐨凬ame,鏌ユ壘瀛楁璧嬪�糔ame鍜孖D閮借璧嬪�� + if(String.isNotBlank(mam.Name)){ + url += '&CF00N1m000006G5NG=' + mam.Name; + } + //浼氳鍐宠缂栫爜鐨処D,濡傛灉鏍规嵁鍚嶅瓧鎵惧埌澶氫釜,灏辨牴鎹甀D纭畾鍞竴鐨勪竴涓�� + url += '&CF00N1m000006G5NG_lkid=' + AdjudicationDataobj.cam.Meeting_Approved_No__c; + //寮�濮嬫棩鏈熴�佺粨鏉熸棩鏈熴�佹椿鍔ㄦ�ц川銆佺瀹ゅ垎绫汇�佷細璁被鍨嬨�佷細鍦哄湴鐐广�佷細璁富鍔炴柟銆佷細璁壙鍔炴柟銆佸弬鍔犱汉鏁帮紙鍙紑锛夈�侀璁″弬浼歄lympus浜烘暟 + if(String.isNotBlank(String.valueOf(mam.StartDate__c))){ + url += '&cpn5=' + String.valueOf(mam.StartDate__c).replace('-','/'); + } + if(String.isNotBlank(String.valueOf(mam.EndDate__c))){ + url += '&cpn6=' + String.valueOf(mam.EndDate__c).replace('-','/'); + } + if(String.isNotBlank(mam.BudgetType__c)){ + url += '&00N100000098OEy=' + mam.BudgetType__c; + } + if(String.isNotBlank(mam.OfficeCategory__c)){ + url += '&00N10000006pwAg=' + mam.OfficeCategory__c; + } + if(String.isNotBlank(mam.MeetingType__c)){ + url += '&00N100000072rGE=' + mam.MeetingType__c; + } + if(String.isNotBlank(mam.WorkshopPlace__c)){ + url += '&00N10000002DGF0=' + mam.WorkshopPlace__c; + } + if(String.isNotBlank(mam.HostName__c)){ + url += '&00N10000008qcCO=' + mam.HostName__c; + } + if(String.isNotBlank(mam.CooperatorCompany__c)){ + url += '&00N10000008qcCT=' + mam.CooperatorCompany__c; + } + if(String.isNotBlank(String.valueOf(mam.ConveningParticipantsNum__c))){ + url += '&00N10000008ptmP=' + mam.ConveningParticipantsNum__c; + } + if(String.isNotBlank(String.valueOf(mam.ExpectedOlympusAttendance__c))){ + url += '&00N1m00000652oO=' + mam.ExpectedOlympusAttendance__c; + } + //棰勮鍙備細HCP浜烘暟銆佽禐鍔╃被鍒�佽禐鍔╂椤规槸鍚︽敮浠樼粰涓诲姙鏂广�佹椿鍔ㄥ舰寮� + if(String.isNotBlank(String.valueOf(mam.ExpectedHcpAttendance__c))){ + url += '&00N1m00000652oT=' + mam.ExpectedHcpAttendance__c; + } + if(String.isNotBlank(mam.SponsorshipCategory__c)){ + url += '&00N1m000006fdGn=' + mam.SponsorshipCategory__c; + } + if(String.isNotBlank(mam.IsPaidToSponsor__c)){ + url += '&00N1m000006fcjJ=' + mam.IsPaidToSponsor__c; + } + if(String.isNotBlank(mam.Type_of_adjudication_meeting__c)){ + url += '&00N1m00000652jY=' + mam.Type_of_adjudication_meeting__c; + } + } + // } + PageReference pg = new PageReference(url); + pg.setRedirect(true); + return pg; + } + + //璺宠浆鍥炲浼氫富椤甸潰 + public Pagereference returnPage(){ + PageReference pg = new PageReference('/701/o'); + pg.setRedirect(true); + return pg; + } + + //杩斿洖浼氳瑁佸喅涓婚 + public void displayDecisionTheme(){ + Savepoint sp = Database.setSavepoint(); + try { + String aid = ''; + // for(AdjudicationData ad : AdjudicationDataList){ + // if(String.isNotBlank(ad.cam.Meeting_Approved_No__c)){ + // aid = ad.cam.Meeting_Approved_No__c; + // break; + // } + // } + if(String.isNotBlank(AdjudicationDataobj.cam.Meeting_Approved_No__c)){ + aid = AdjudicationDataobj.cam.Meeting_Approved_No__c; + AdjudicationDataobj.cam.IF_Approved__c = true; + } + + Application_for_Conference_Adjudication__c afca = [select Id, CampaignTheme__c from Application_for_Conference_Adjudication__c + where id = :aid]; + //鏌ュ嚭鏉ュ搴旂殑浼氳涓婚浼犵粰鍏ㄥ眬鍙橀噺锛屽墠鍙版樉绀� + CampaignTheme = afca.CampaignTheme__c; + } catch (System.Exception e) { + Database.rollback(sp); + // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, e.getMessage())); + hasError = true; + } } public class AdjudicationData{ public Boolean isAdjudication{ get; set; } - public String MeetingReport{ get; set; } public Campaign cam{ get; set; } - public String MeetingApprovedNo{ get; set; } - public String MeetingApprovedNoText{ get; set; } } } \ No newline at end of file -- Gitblit v1.9.1