@Istest public class LexLoanerArrangedEmailControllerTest { static testMethod void testMethod01(){ Oly_TriggerHandler.bypass('RentalApplyOtherTrigger'); // 省 Address_Level__c al = new Address_Level__c(); al.Name = '東京'; al.Level1_Code__c = 'CN-99'; al.Level1_Sys_No__c = '999999'; insert al; // 市 Address_Level2__c al2 = new Address_Level2__c(); al2.Level1_Code__c = 'CN-99'; al2.Level1_Sys_No__c = '999999'; al2.Level1_Name__c = '東京'; al2.Name = '渋谷区'; al2.Level2_Code__c = 'CN-9999'; al2.Level2_Sys_No__c = '9999999'; al2.Address_Level__c = al.id; insert al2; // 病院を作る Account hospital = new Account(); hospital.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'].id; hospital.Name = 'test hospital'; hospital.Is_Active__c = '有効'; hospital.Attribute_Type__c = '卫生部'; hospital.Speciality_Type__c = '综合医院'; hospital.Grade__c = '一级'; hospital.OCM_Category__c = 'SLTV'; hospital.Is_Medical__c = '医疗机构'; hospital.State_Master__c = al.id; hospital.City_Master__c = al2.id; hospital.Town__c = '东京'; insert hospital; // 戦略科室を得る Account[] strategicDep = [SELECT ID, Name FROM Account WHERE parentId = :hospital.Id AND recordType.DeveloperName = 'Department_Class_OTH']; // 診療科を作る Account dep = new Account(); dep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_OTH'].id; dep.Name = 'test dep'; dep.AgentCode_Ext__c = '9999998'; dep.ParentId = strategicDep[0].Id; dep.Department_Class__c = strategicDep[0].Id; dep.Hospital__c = hospital.Id; insert dep; // 产品 Product2 pro5 = new Product2(Name='name05',IsActive=true,Family='SP', Fixture_Model_No__c='n05',Serial_Lot_No__c='S/N tracing', Fixture_Model_No_T__c = 'n05', ProductCode_Ext__c='pc05',Manual_Entry__c=false); insert pro5; Application_for_Conference_Adjudication__c aca = new Application_for_Conference_Adjudication__c(); aca.MeetingApprovedNo__c = 'ME154P03-0012'; aca.Name = 'ME154P03-0012'; // 用决裁编号替代名称 aca.CampaignTheme__c = 'obpm发起赞助决裁'; aca.Num__c = 'test1'; aca.StartDate__c = NFMUtil.parseDateTimeStr2Date('2022-04-19'); aca.EndDate__c = NFMUtil.parseDateTimeStr2Date('2022-04-22'); aca.Implementation_Purpose1__c = '其他'; aca.OfficeCategory__c = '1.消化科'; aca.MeetingType__c = '主办会'; aca.StateMaster__c = '北京市'; aca.CityMaster__c = '北京市'; aca.WorkshopPlace__c = 'CTEC'; aca.HostName__c = '医学会'; aca.CooperatorCompany__c = '中华医学会'; aca.ConveningParticipantsNum__c = 0; aca.IsPaidToSponsor__c = '否'; aca.SponsorshipCategory__c = '资金'; aca.ExpectedOlympusAttendance__c = 0; aca.ActivityTypeName__c = '自主主办会'; aca.ExpectedHcpAttendance__c = 0; aca.ProcessState__c = '草稿'; aca.Type_of_adjudication_meeting__c = '线下'; aca.Activities_of_a_share__c = '否'; aca.IsSupplemental__c = true; insert aca; Campaign cam = new Campaign(); Id RtId = Schema.SObjectType.Campaign.getRecordTypeInfosByDeveloperName().get('Society').getRecordTypeId(); // Id RtId2 = Schema.SObjectType.CampaignMember.getRecordTypeInfosByDeveloperName().get('WorkShop').getRecordTypeId(); cam.RecordTypeId = RtId; // cam.CampaignMemberRecordTypeId = RtId2; cam.Name = aca.MeetingApprovedNo__c; cam.Name2__c = aca.MeetingApprovedNo__c; cam.MeetingApprovedNo__c = aca.MeetingApprovedNo__c; cam.Meeting_Approved_No__c = aca.Id; cam.StartDate = aca.StartDate__c; cam.EndDate = aca.EndDate__c; cam.Implementation_Purpose__c = aca.Implementation_Purpose1__c; cam.OfficeCategory__c = aca.OfficeCategory__c; cam.Meeting_Type__c = aca.MeetingType__c; cam.Activity_Type_Name__c = aca.ActivityTypeName__c; cam.WorkshopPlace__c = aca.WorkshopPlace__c; cam.HostName__c = aca.HostName__c; cam.cooperatorCompany__c = aca.CooperatorCompany__c; cam.Convening_Participants_Num__c = aca.ConveningParticipantsNum__c; cam.IF_Approved__c = true; // OBPM对接 新增字段 cam.Expected_Olympus_Attendance__c = aca.ExpectedOlympusAttendance__c; cam.Expected_Hcp_Attendance__c = aca.ExpectedHcpAttendance__c; cam.SponsorshipCategory__c = aca.SponsorshipCategory__c; cam.IsPaidToSponsor__c = aca.IsPaidToSponsor__c; cam.Activity_Type_Name__c = aca.ActivityTypeName__c; cam.Is_LendProduct__c = '是'; cam.PlanBackData__c = NFMUtil.parseDateTimeStr2Date('2022-04-30'); cam.LoadNum__c = 'CV-290*1; GI-290镜子*1;'; insert cam; //备品借出申请 Rental_Apply__c raObj = new Rental_Apply__c(); raObj.Name = 'testra'; raObj.Product_category__c = 'GI'; raObj.Demo_purpose1__c = '产品试用'; raObj.demo_purpose2__c = FixtureUtil.raDemo_purpose2MAP.get('shiyongwuxunjia'); raObj.direct_send__c = '医疗机构'; raObj.Loaner_received_staff__c = '王五'; raObj.Loaner_received_staff_phone__c = '110'; raObj.direct_shippment_address__c = '北京市'; raObj.Hospital__c = hospital.Id; raObj.Campaign__c = cam.id; raObj.Strategic_dept__c = strategicDep[0].Id; raObj.Account__c = dep.Id; raObj.Request_shipping_day__c = Date.toDay(); // 希望到货日 raObj.Hope_Lonaer_date_Num__c = 1; // 希望借用天数 // 预定归还日自动生成 预定归还日=(希望到货日+希望借用天数)-1 // raObj.Request_return_day__c = Date.toDay(); // 预定归还日 // B.OLY_OCM-669 入力规则: 希望借用天数不能为空 raObj.Phone_number__c = '1234567890'; insert raObj; LexLoanerArrangedEmailController.init(raObj.id); LexLoanerArrangedEmailController.getRentalApplyEquipmentSet(raObj.id); } }