From 1949e7ccb3bfab67ad2b16d7e0172851c3f823bb Mon Sep 17 00:00:00 2001 From: 李彤 <litong@prec-tech.com> Date: 星期六, 02 四月 2022 14:06:49 +0800 Subject: [PATCH] 先款后修上线内容 --- force-app/main/default/classes/RepairTriggerTester.cls | 111 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 94 insertions(+), 17 deletions(-) diff --git a/force-app/main/default/classes/RepairTriggerTester.cls b/force-app/main/default/classes/RepairTriggerTester.cls index 426e847..368deaa 100644 --- a/force-app/main/default/classes/RepairTriggerTester.cls +++ b/force-app/main/default/classes/RepairTriggerTester.cls @@ -7,7 +7,7 @@ StaticParameter.EscapeNFM001Trigger = true; // 鐥呴櫌銈掍綔銈� Account hospital = new Account(); - hospital.recordtypeId = [Select Id FROM RecordType WHERE DeveloperName = 'HP'].id; + hospital.recordtypeId = [Select Id FROM RecordType WHERE DeveloperName = :'HP'].id; hospital.Name = hospitalName; insert hospital; StaticParameter.EscapeAccountTrigger = true; @@ -23,7 +23,7 @@ static Account createDep( Account hospital, Account strategicDep) { // 瑷虹檪绉戙倰浣溿倠 Account dep = new Account(); - dep.recordtypeId = [Select Id FROM RecordType WHERE DeveloperName = 'Department_GI'].id; + dep.recordtypeId = [Select Id FROM RecordType WHERE DeveloperName = :'Department_GI'].id; dep.Name = 'test dep'; dep.ParentId = strategicDep.Id; dep.Department_Class__c = strategicDep.Id; @@ -111,7 +111,9 @@ contract.Contract_Start_Date__c = Date.today().addDays( -10); // 10鏃ュ墠 contract.Contract_End_Date__c = Date.today().addDays( 5); // 5鏃ュ緦 contract.SalesOfficeCode_selection__c = '鍖椾含RC'; - contract.RecordTypeId='01210000000gTYv'; + ID RecordTypeId = Schema.SObjectType.Maintenance_Contract__c.getRecordTypeInfosByName().get('澶氬勾淇濆悎鍚�').getRecordTypeId(); + // contract.RecordTypeId='01210000000gTYv'; + contract.RecordTypeId=RecordTypeId; insert contract; return contract; @@ -146,14 +148,84 @@ } //闄愭鍚堝悓浜у搧淇℃伅缁存姢鐩稿叧娴嬭瘯 FXK 2021/3/8 Start static testMethod void test03(){ + Oly_TriggerHandler.bypass('AccountTrigger'); + Oly_TriggerHandler.bypass('RepairHandler'); + Oly_TriggerHandler.bypass('RepairBeforeInsertHandler'); + Oly_TriggerHandler.bypass('UpdateContractAimAmountHandler'); + Oly_TriggerHandler.bypass('PaymentMaintenanceContractTriggerHandler'); + Oly_TriggerHandler.bypass('SetContractEstimatePriceHandler'); + Oly_TriggerHandler.bypass('SyncRepairFromMCAETrigger'); + Oly_TriggerHandler.bypass('ContactTriggerHandler'); + StaticParameter.EscapeMaintenanceContractAfterUpdateTrigger = true; + StaticParameter.EscapeNFM001Trigger = true; + StaticParameter.EscapeNFM001AgencyContractTrigger = true; + StaticParameter.EscapeNFM001AgencyContractTrigger2 = true; + StaticParameter.EscapeSyncProduct2Trigger = true; + StaticParameter.EscapeContactInsUpdUser = true; + StaticParameter.EscapeContactToUser = true; + StaticParameter.EscapeNFM010UpsertStatuAchievementsTrigger = true; + StaticParameter.EscapeAccountTrigger = true; + StaticParameter.EscapeNFM106Trigger = true; //瀹㈡埛 - Account hospital = createHospital( 'test hospital'); - Account[] strategicDep = selectStrategicDep( hospital); - Account dep = createDep( hospital, strategicDep[0]); + // Account hospital = createHospital( 'test hospital'); + // Account[] strategicDep = selectStrategicDep( hospital); + // Account dep = createDep( hospital, strategicDep[0]); // 淇濇湁璁惧 - Asset asset = createAsset( hospital, strategicDep[0], dep); + // Asset asset = createAsset( hospital, strategicDep[0], strategicDep[0]); + // 鐥呴櫌銈掍綔銈� + // 鐪� + 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; + Asset asset = new Asset(); + asset.Name = '銉嗐偣銉堟鍣�'; + asset.AccountId = dep.Id; + asset.Department_Class__c = strategicDep[0].Id; + asset.Hospital__c = hospital.Id; + asset.SerialNumber = 'testserial'; + insert asset; + // 鍒涘缓缁翠慨鍚堝悓 Maintenance_Contract__c contract = new Maintenance_Contract__c(); + // ID RecordTypeId1 = Schema.SObjectType.Maintenance_Contract__c.getRecordTypeInfosByName().get('鏈嶅姟鍚堝悓').getRecordTypeId(); + // ID RecordTypeId2 = Schema.SObjectType.Maintenance_Contract_Estimate__c.getRecordTypeInfosByName().get('鏈嶅姟鍚堝悓鎶ヤ环').getRecordTypeId(); contract.Name = 'tect contract'; contract.status__c = '濂戠磩'; contract.URF_Contract__c=true; @@ -166,6 +238,7 @@ contract.Contract_End_Date__c = Date.today().addDays( 5); // 5鏃ュ緦 contract.SalesOfficeCode_selection__c = '鍖椾含RC'; contract.RecordTypeId='01210000000gTYq'; + // contract.RecordTypeId=RecordTypeId1; contract.URF_Contract__c = true; contract.agree_Upper_limit__c = true; insert contract; @@ -173,6 +246,7 @@ Maintenance_Contract_Estimate__c Estimate = new Maintenance_Contract_Estimate__c(); Estimate.Maintenance_Contract__c = contract.Id; Estimate.recordtypeId = '01210000000gTZA'; + // Estimate.recordtypeId = RecordTypeId2; Estimate.Name = '鎶ヤ环1'; insert Estimate; //鍒涘缓缁翠慨鍚堝悓鎶ヤ环/淇濇湁璁惧 @@ -192,9 +266,10 @@ middleTable.Maintenance_Contract_Asset_Estimate__c = Asset_Estimate.Id; insert middleTable; // 淇悊銈掍綔鎴愩仚銈�01 + Test.startTest(); Repair__c repair01 = new Repair__c(); - repair01.Account__c = dep.Id; - repair01.Department_Class__c = strategicDep[0].Id; + repair01.Account__c = strategicDep[0].Id; + repair01.Department_Class__c = dep.Id; repair01.Hospital__c = hospital.Id; repair01.SERVICE_CONTRACT_JUDEGE_DAY__C = Date.today(); // 缁翠慨鍚堝悓鍒ゆ柇鏃ュ湪鍚堝悓寮�濮嬫棩涓庡悎鍚岀粨鏉熸棩涔嬮棿 repair01.Failure_Occurrence_Date__c =Date.today(); @@ -202,14 +277,14 @@ repair01.Status__c = '鑽夋涓�'; repair01.SalesOfficeCode_selection__c = '瑗垮畨RC'; insert repair01; - + Repair__c checkRepair = null; checkRepair = [SELECT Id, Name , Maintenance_Contract__c,MaintenanceContractType__c FROM Repair__c WHERE ID = :repair01.id]; System.assertEquals( contract.Id, checkRepair.Maintenance_Contract__c); // 淇悊銈掍綔鎴愩仚銈�01 Repair__c repair02 = new Repair__c(); - repair02.Account__c = dep.Id; + repair02.Account__c = strategicDep[0].Id; repair02.Department_Class__c = strategicDep[0].Id; repair02.Hospital__c = hospital.Id; repair02.SERVICE_CONTRACT_JUDEGE_DAY__C = Date.today(); // 缁翠慨鍚堝悓鍒ゆ柇鏃ュ湪鍚堝悓寮�濮嬫棩涓庡悎鍚岀粨鏉熸棩涔嬮棿 @@ -217,30 +292,25 @@ repair02.Delivered_Product__c = asset.Id; insert repair02; delete repair02; - checkRepair.NewProductGuarante_Txt__c = '2: 鏈嶅姟澶氬勾淇濅慨'; update checkRepair; - checkRepair.NewProductGuarante_Txt__c = '8: 甯傚満澶氬勾淇濅慨'; checkRepair.On_site_repair__c = 'RC淇悊'; checkRepair.Maintenance_Contract__c = contract.Id; checkRepair.SalesOfficeCode_selection__c = '鏉窞RC'; update checkRepair; - contract.SalesOfficeCode_selection__c = '涓婃捣RC'; update contract; checkRepair.SalesOfficeCode_selection__c = '鏉窞RC'; update checkRepair; - checkRepair.SalesOfficeCode_selection__c = '鏉窞RC'; checkRepair.NewProductGuarante_Txt__c = '2: 鏈嶅姟澶氬勾淇濅慨'; update checkRepair; - + Test.stopTest(); asset.Order_No__c = '涓婃捣鍒嗗叕鍙�'; update asset; checkRepair.SalesOfficeCode_selection__c = '鏉窞'; update checkRepair; - asset.Order_No__c = '骞垮窞鍒嗗叕鍙�'; update asset; checkRepair.On_site_repair__c = '鍔炰簨澶勪慨鐞�'; @@ -250,6 +320,7 @@ contract.SalesOfficeCode_selection__c = '骞垮窞RC'; update contract; + } //闄愭鍚堝悓浜у搧淇℃伅缁存姢鐩稿叧娴嬭瘯 FXK 2021/3/8 End @@ -1348,6 +1419,8 @@ Asset asset = createAsset( hospital, strategicDep[0], dep); // 鍒涘缓缁翠慨鍚堝悓 Maintenance_Contract__c contract = new Maintenance_Contract__c(); + // ID RecordTypeId1 = Schema.SObjectType.Maintenance_Contract__c.getRecordTypeInfosByName().get('鏈嶅姟鍚堝悓').getRecordTypeId(); + // ID RecordTypeId2 = Schema.SObjectType.Maintenance_Contract_Estimate__c.getRecordTypeInfosByName().get('鏈嶅姟鍚堝悓鎶ヤ环').getRecordTypeId(); contract.Name = 'tect contract'; contract.status__c = '濂戠磩'; contract.URF_Contract__c=true; @@ -1360,6 +1433,7 @@ contract.Contract_End_Date__c = Date.today().addDays( 5); // 5鏃ュ緦 contract.SalesOfficeCode_selection__c = '鍖椾含RC'; contract.RecordTypeId='01210000000gTYq'; + // contract.RecordTypeId=RecordTypeId1; contract.URF_Contract__c = true; contract.agree_Upper_limit__c = true; insert contract; @@ -1367,6 +1441,7 @@ Maintenance_Contract_Estimate__c Estimate = new Maintenance_Contract_Estimate__c(); Estimate.Maintenance_Contract__c = contract.Id; Estimate.recordtypeId = '01210000000gTZA'; + // Estimate.recordtypeId = RecordTypeId2; Estimate.Name = '鎶ヤ环1'; insert Estimate; //鍒涘缓缁翠慨鍚堝悓鎶ヤ环/淇濇湁璁惧 @@ -1452,6 +1527,7 @@ // 鍒涘缓缁翠慨鍚堝悓 Maintenance_Contract__c contract = new Maintenance_Contract__c(); + // ID RecordTypeId1 = Schema.SObjectType.Maintenance_Contract__c.getRecordTypeInfosByName().get('鏈嶅姟鍚堝悓').getRecordTypeId(); contract.Name = 'tect contract'; contract.status__c = '濂戠磩'; contract.URF_Contract__c=true; @@ -1463,6 +1539,7 @@ contract.Contract_Start_Date__c = Date.today().addDays( -10); // 10鏃ュ墠 contract.Contract_End_Date__c = Date.today().addDays( 5); // 5鏃ュ緦 contract.SalesOfficeCode_selection__c = '鍖椾含RC'; + // contract.RecordTypeId=RecordTypeId1; contract.RecordTypeId='01210000000gTYq'; contract.URF_Contract__c = true; contract.agree_Upper_limit__c = true; -- Gitblit v1.9.1