@isTest
|
private class OPDNoReportApplicationControllerTest {
|
|
private static integer FIELDMAX = 200;
|
//测试初始化、保存、提交待审批
|
static testMethod void setupTestData01() {
|
|
SS_Batch_Column_Mapping__c oppMapping = new SS_Batch_Column_Mapping__c(Name = 'targetKeyProduct', SS_TableName__c='targetKeyProduct__c');
|
oppMapping.From_Column_001__c = 'OPD_CV290__c';
|
oppMapping.SS_Column_001__c = 'CV-290';
|
oppMapping.From_Column_002__c = 'OPD_290Miro__c';
|
oppMapping.SS_Column_002__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_003__c = 'OPD_TB__c';
|
oppMapping.SS_Column_003__c = 'TB';
|
oppMapping.From_Column_101__c = 'Rental_Cnt_CV290__c';
|
oppMapping.SS_Column_101__c = 'CV-290';
|
oppMapping.From_Column_102__c = 'Rental_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_102__c = 'GI-290镜子';
|
oppMapping.From_Column_103__c = 'Rental_Cnt_TB__c';
|
oppMapping.SS_Column_103__c = 'TB';
|
|
|
oppMapping.From_Column_118__c = 'Sales_target_CV290__c';
|
oppMapping.SS_Column_118__c = 'CV-290';
|
oppMapping.From_Column_119__c = 'Sales_target_290Miro__c';
|
oppMapping.SS_Column_119__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_120__c = 'Sales_target_TB__c';
|
oppMapping.SS_Column_120__c = 'TB';
|
oppMapping.From_Column_129__c = 'Opp_cnt_290MiroBF__c';
|
oppMapping.SS_Column_129__c = 'BF-290镜子';
|
oppMapping.From_Column_130__c = 'Opp_cnt_290MiroGI__c';
|
oppMapping.SS_Column_130__c = 'GI-290镜子';
|
oppMapping.From_Column_131__c = 'Opp_cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_131__c = 'GI-290镜子CF';
|
oppMapping.From_Column_146__c = 'Asset_Cnt_290MiroBF__c';
|
oppMapping.SS_Column_146__c = 'BF-290镜子';
|
oppMapping.From_Column_147__c = 'Asset_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_147__c = 'GI-290镜子';
|
oppMapping.From_Column_148__c = 'Asset_Cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_148__c = 'GI-290镜子CF';
|
oppMapping.From_Column_163__c = 'OPD_amount_290MiroBF__c';
|
oppMapping.SS_Column_163__c = 'BF-290镜子';
|
oppMapping.From_Column_164__c = 'OPD_amount_290MiroGI__c';
|
oppMapping.SS_Column_164__c = 'GI-290镜子';
|
oppMapping.From_Column_165__c = 'OPD_amount_290MiroGI_CF__c';
|
oppMapping.SS_Column_165__c = 'GI-290镜子CF';
|
insert new SS_Batch_Column_Mapping__c[] {oppMapping};
|
|
|
//医院 记录类型
|
List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'];
|
if (rectHp.size() == 0) {
|
return;
|
}
|
//科室 记录类型
|
List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_GI'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
|
//简档
|
Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin];
|
|
//用户
|
User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner;
|
User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner2;
|
|
|
//医院
|
Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id);
|
hp.FSE_GI_Main_Leader__c = hpOwner.Id;
|
hp.FSE_SP_Main_Leader__c = hpOwner2.Id;
|
insert hp;
|
|
//战略科室
|
Account dc = [select Id, Name, RecordType_DeveloperName__c, Account2__c from Account where ParentId = :hp.Id and RecordType_DeveloperName__c = 'Department_Class_GI'];
|
//科室
|
Account dpt = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt.Name = '*';
|
dpt.Department_Name__c = 'TestDepart';
|
dpt.ParentId = dc.Id;
|
dpt.Department_Class__c = dc.Id;
|
dpt.Hospital__c = hp.Id;
|
insert dpt;
|
//科室1
|
Account dpt1 = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt1.Name = '123';
|
dpt1.Department_Name__c = 'TestDepart1';
|
dpt1.ParentId = dc.Id;
|
dpt1.Department_Class__c = dc.Id;
|
dpt1.Hospital__c = hp.Id;
|
insert dpt1;
|
|
|
|
|
//根据opd计划实施日期 算出本财年
|
Date dateToday = Date.today();
|
Integer year = dateToday.year();
|
Integer month = dateToday.month();
|
if (month < 4) {
|
year -= 1;
|
}
|
String selectedTab = String.valueOf(year - 1867 - 1 + 'P');
|
String selectedTab1 = String.valueOf(year - 1867 + 'P'); //今财年
|
|
//客户-目标客户 默认让opd计划和客户-目标客户的财年相同
|
Account_Number_of_target__c anot = new Account_Number_of_target__c();
|
anot.Account__c = dc.Id;
|
anot.Account_HP__c = hp.Id;
|
anot.OCM_Period__c = selectedTab;
|
anot.Target_amount_170_190__c =36597;
|
anot.OPD_amount_290MiroBF__c =1;
|
anot.OPD_amount_290MiroGI_CF__c =1;
|
insert anot;
|
|
Account_Number_of_target__c anot1 = new Account_Number_of_target__c();
|
anot1.Account__c = dc.Id;
|
anot1.Account_HP__c = hp.Id;
|
anot1.OCM_Period__c = selectedTab1;
|
anot1.Target_amount_170_190__c =36597;
|
anot1.OPD_CV290__c =1;
|
anot1.OPD_290Miro__c =1;
|
anot1.OPD_TB__c =1;
|
anot1.Rental_Cnt_CV290__c =1;
|
anot1.Rental_Cnt_TB__c =1;
|
anot1.Target_amount_CV290__c =1;
|
anot1.Target_amount_TB__c =1;//Sales_target_TB__c
|
anot1.Opp_cnt_290MiroGI__c =1;
|
anot1.Opp_cnt_290MiroGI_CF__c =1;
|
anot1.Asset_Cnt_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroGI_CF__c =1;
|
|
insert anot1;
|
|
// 产品
|
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;
|
|
|
System.Test.StartTest();
|
OPDPlan__c oPDPlan0 = new OPDPlan__c();
|
oPDPlan0.Status__c = '草案中';
|
oPDPlan0.OPDType__c = '科室';
|
oPDPlan0.if_OPDTarget__c=1;
|
oPDPlan0.if_HaveSalestarget__c =1;
|
oPDPlan0.Cnt_OPD_ThisYear__c=1;
|
oPDPlan0.Cnt_OPD_LastYear__c=1;
|
oPDPlan0.if_HaveOpportunity__c=1;
|
oPDPlan0.if_HaveEquipment__c =1;
|
oPDPlan0.Cnt_Rentals__c =1;
|
oPDPlan0.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan0.Account_Laboratory__c =dpt.Id;
|
oPDPlan0.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan0.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan0.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan0.RentalReson__c = '无法进入手术室';
|
oPDPlan0.AttachmentCertificate__c = '0001.png';
|
oPDPlan0.ModelLendingProduct__c=pro5.id;
|
//oPDPlan0.CorrespondingRepairNo__c =anot1.id;
|
insert oPDPlan0;
|
|
Attachment attach1=new Attachment();
|
attach1.Name='Unit Test Attachment';
|
Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
|
attach1.body=bodyBlob1;
|
attach1.ContentType = 'application/pdf';
|
|
PageReference page = new PageReference('/apex/OPDNoReportApplication?id='+oPDPlan0.id+'&name=' + oPDPlan0.name);
|
System.Test.setCurrentPage(page);
|
OPDNoReportApplicationController opd = new OPDNoReportApplicationController();
|
//初始化测试
|
opd.init();
|
//获取选项列表测试
|
opd.getRentalReson();
|
//保存测试
|
opd.IsUpload =true;
|
oPDPlan0.RentalResonTemp__c = '无法进入手术室';
|
//oPDPlan0.ModelLendingProductCode__c = 'test0001';
|
|
opd.opdPlan = oPDPlan0;
|
opd.ModelLendingProductId = pro5.id;
|
//保存
|
opd.Save();
|
|
//提交待审批
|
opd.CommitNeedApproval();
|
System.Test.StopTest();
|
}
|
//测试上传附件
|
@isTest
|
static void setupTestData02() {
|
SS_Batch_Column_Mapping__c oppMapping = new SS_Batch_Column_Mapping__c(Name = 'targetKeyProduct', SS_TableName__c='targetKeyProduct__c');
|
oppMapping.From_Column_001__c = 'OPD_CV290__c';
|
oppMapping.SS_Column_001__c = 'CV-290';
|
oppMapping.From_Column_002__c = 'OPD_290Miro__c';
|
oppMapping.SS_Column_002__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_003__c = 'OPD_TB__c';
|
oppMapping.SS_Column_003__c = 'TB';
|
oppMapping.From_Column_101__c = 'Rental_Cnt_CV290__c';
|
oppMapping.SS_Column_101__c = 'CV-290';
|
oppMapping.From_Column_102__c = 'Rental_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_102__c = 'GI-290镜子';
|
oppMapping.From_Column_103__c = 'Rental_Cnt_TB__c';
|
oppMapping.SS_Column_103__c = 'TB';
|
|
|
oppMapping.From_Column_118__c = 'Sales_target_CV290__c';
|
oppMapping.SS_Column_118__c = 'CV-290';
|
oppMapping.From_Column_119__c = 'Sales_target_290Miro__c';
|
oppMapping.SS_Column_119__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_120__c = 'Sales_target_TB__c';
|
oppMapping.SS_Column_120__c = 'TB';
|
oppMapping.From_Column_129__c = 'Opp_cnt_290MiroBF__c';
|
oppMapping.SS_Column_129__c = 'BF-290镜子';
|
oppMapping.From_Column_130__c = 'Opp_cnt_290MiroGI__c';
|
oppMapping.SS_Column_130__c = 'GI-290镜子';
|
oppMapping.From_Column_131__c = 'Opp_cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_131__c = 'GI-290镜子CF';
|
oppMapping.From_Column_146__c = 'Asset_Cnt_290MiroBF__c';
|
oppMapping.SS_Column_146__c = 'BF-290镜子';
|
oppMapping.From_Column_147__c = 'Asset_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_147__c = 'GI-290镜子';
|
oppMapping.From_Column_148__c = 'Asset_Cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_148__c = 'GI-290镜子CF';
|
oppMapping.From_Column_163__c = 'OPD_amount_290MiroBF__c';
|
oppMapping.SS_Column_163__c = 'BF-290镜子';
|
oppMapping.From_Column_164__c = 'OPD_amount_290MiroGI__c';
|
oppMapping.SS_Column_164__c = 'GI-290镜子';
|
oppMapping.From_Column_165__c = 'OPD_amount_290MiroGI_CF__c';
|
oppMapping.SS_Column_165__c = 'GI-290镜子CF';
|
insert new SS_Batch_Column_Mapping__c[] {oppMapping};
|
|
|
//医院 记录类型
|
List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'];
|
if (rectHp.size() == 0) {
|
return;
|
}
|
//科室 记录类型
|
List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_GI'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
|
//简档
|
Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin];
|
|
//用户
|
User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner;
|
User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner2;
|
|
|
//医院
|
Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id);
|
hp.FSE_GI_Main_Leader__c = hpOwner.Id;
|
hp.FSE_SP_Main_Leader__c = hpOwner2.Id;
|
insert hp;
|
|
//战略科室
|
Account dc = [select Id, Name, RecordType_DeveloperName__c, Account2__c from Account where ParentId = :hp.Id and RecordType_DeveloperName__c = 'Department_Class_GI'];
|
//科室
|
Account dpt = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt.Name = '*';
|
dpt.Department_Name__c = 'TestDepart';
|
dpt.ParentId = dc.Id;
|
dpt.Department_Class__c = dc.Id;
|
dpt.Hospital__c = hp.Id;
|
insert dpt;
|
//科室1
|
Account dpt1 = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt1.Name = '123';
|
dpt1.Department_Name__c = 'TestDepart1';
|
dpt1.ParentId = dc.Id;
|
dpt1.Department_Class__c = dc.Id;
|
dpt1.Hospital__c = hp.Id;
|
insert dpt1;
|
|
|
|
|
//根据opd计划实施日期 算出本财年
|
Date dateToday = Date.today();
|
Integer year = dateToday.year();
|
Integer month = dateToday.month();
|
if (month < 4) {
|
year -= 1;
|
}
|
String selectedTab = String.valueOf(year - 1867 - 1 + 'P');
|
String selectedTab1 = String.valueOf(year - 1867 + 'P'); //今财年
|
|
//客户-目标客户 默认让opd计划和客户-目标客户的财年相同
|
Account_Number_of_target__c anot = new Account_Number_of_target__c();
|
anot.Account__c = dc.Id;
|
anot.Account_HP__c = hp.Id;
|
anot.OCM_Period__c = selectedTab;
|
anot.Target_amount_170_190__c =36597;
|
anot.OPD_amount_290MiroBF__c =1;
|
anot.OPD_amount_290MiroGI_CF__c =1;
|
insert anot;
|
|
Account_Number_of_target__c anot1 = new Account_Number_of_target__c();
|
anot1.Account__c = dc.Id;
|
anot1.Account_HP__c = hp.Id;
|
anot1.OCM_Period__c = selectedTab1;
|
anot1.Target_amount_170_190__c =36597;
|
anot1.OPD_CV290__c =1;
|
anot1.OPD_290Miro__c =1;
|
anot1.OPD_TB__c =1;
|
anot1.Rental_Cnt_CV290__c =1;
|
anot1.Rental_Cnt_TB__c =1;
|
anot1.Target_amount_CV290__c =1;
|
anot1.Target_amount_TB__c =1;//Sales_target_TB__c
|
anot1.Opp_cnt_290MiroGI__c =1;
|
anot1.Opp_cnt_290MiroGI_CF__c =1;
|
anot1.Asset_Cnt_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroGI_CF__c =1;
|
|
insert anot1;
|
|
System.Test.StartTest();
|
OPDPlan__c oPDPlan0 = new OPDPlan__c();
|
oPDPlan0.Status__c = '草案中';
|
oPDPlan0.OPDType__c = '科室';
|
oPDPlan0.if_OPDTarget__c=1;
|
oPDPlan0.if_HaveSalestarget__c =1;
|
oPDPlan0.Cnt_OPD_ThisYear__c=1;
|
oPDPlan0.Cnt_OPD_LastYear__c=1;
|
oPDPlan0.if_HaveOpportunity__c=1;
|
oPDPlan0.if_HaveEquipment__c =1;
|
oPDPlan0.Cnt_Rentals__c =1;
|
oPDPlan0.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan0.Account_Laboratory__c =dpt.Id;
|
oPDPlan0.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan0.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan0.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan0.RentalReson__c = 'OPD';
|
// oPDPlan0.OPD_Customers_Target_Last__c=anot.id;
|
// oPDPlan0.OPD_Customers_Target__c =anot1.id;
|
insert oPDPlan0;
|
|
Attachment attach=new Attachment();
|
attach.Name='Unit Test Attachment';
|
Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
|
attach.body=bodyBlob;
|
attach.parentId=oPDPlan0.id;
|
attach.ContentType = 'application/pdf';
|
String body = 'Unit Test Attachment Body';
|
String id = String.valueOf(oPDPlan0.id);
|
|
//Test.startTest();
|
PageReference page = new PageReference('/apex/OPDNoReportApplication?id='+oPDPlan0.id+'&name=' + oPDPlan0.name);
|
System.Test.setCurrentPage(page);
|
String expectedResult = '您已上传文件成功!';// or false, whatever you expect
|
String result = OPDNoReportApplicationController.testAddAttachment(attach.Name,attach.ContentType, body, id);
|
//Test.stopTest();
|
System.assertEquals(expectedResult, result);
|
}
|
@isTest
|
static void setupTestData03() {
|
SS_Batch_Column_Mapping__c oppMapping = new SS_Batch_Column_Mapping__c(Name = 'targetKeyProduct', SS_TableName__c='targetKeyProduct__c');
|
oppMapping.From_Column_001__c = 'OPD_CV290__c';
|
oppMapping.SS_Column_001__c = 'CV-290';
|
oppMapping.From_Column_002__c = 'OPD_290Miro__c';
|
oppMapping.SS_Column_002__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_003__c = 'OPD_TB__c';
|
oppMapping.SS_Column_003__c = 'TB';
|
oppMapping.From_Column_101__c = 'Rental_Cnt_CV290__c';
|
oppMapping.SS_Column_101__c = 'CV-290';
|
oppMapping.From_Column_102__c = 'Rental_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_102__c = 'GI-290镜子';
|
oppMapping.From_Column_103__c = 'Rental_Cnt_TB__c';
|
oppMapping.SS_Column_103__c = 'TB';
|
|
|
oppMapping.From_Column_118__c = 'Sales_target_CV290__c';
|
oppMapping.SS_Column_118__c = 'CV-290';
|
oppMapping.From_Column_119__c = 'Sales_target_290Miro__c';
|
oppMapping.SS_Column_119__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_120__c = 'Sales_target_TB__c';
|
oppMapping.SS_Column_120__c = 'TB';
|
oppMapping.From_Column_129__c = 'Opp_cnt_290MiroBF__c';
|
oppMapping.SS_Column_129__c = 'BF-290镜子';
|
oppMapping.From_Column_130__c = 'Opp_cnt_290MiroGI__c';
|
oppMapping.SS_Column_130__c = 'GI-290镜子';
|
oppMapping.From_Column_131__c = 'Opp_cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_131__c = 'GI-290镜子CF';
|
oppMapping.From_Column_146__c = 'Asset_Cnt_290MiroBF__c';
|
oppMapping.SS_Column_146__c = 'BF-290镜子';
|
oppMapping.From_Column_147__c = 'Asset_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_147__c = 'GI-290镜子';
|
oppMapping.From_Column_148__c = 'Asset_Cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_148__c = 'GI-290镜子CF';
|
oppMapping.From_Column_163__c = 'OPD_amount_290MiroBF__c';
|
oppMapping.SS_Column_163__c = 'BF-290镜子';
|
oppMapping.From_Column_164__c = 'OPD_amount_290MiroGI__c';
|
oppMapping.SS_Column_164__c = 'GI-290镜子';
|
oppMapping.From_Column_165__c = 'OPD_amount_290MiroGI_CF__c';
|
oppMapping.SS_Column_165__c = 'GI-290镜子CF';
|
insert new SS_Batch_Column_Mapping__c[] {oppMapping};
|
|
|
//医院 记录类型
|
List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'];
|
if (rectHp.size() == 0) {
|
return;
|
}
|
//科室 记录类型
|
List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_GI'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
|
//简档
|
Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin];
|
|
//用户
|
User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner;
|
User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner2;
|
|
|
//医院
|
Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id);
|
hp.FSE_GI_Main_Leader__c = hpOwner.Id;
|
hp.FSE_SP_Main_Leader__c = hpOwner2.Id;
|
insert hp;
|
|
//战略科室
|
Account dc = [select Id, Name, RecordType_DeveloperName__c, Account2__c from Account where ParentId = :hp.Id and RecordType_DeveloperName__c = 'Department_Class_GI'];
|
//科室
|
Account dpt = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt.Name = '*';
|
dpt.Department_Name__c = 'TestDepart';
|
dpt.ParentId = dc.Id;
|
dpt.Department_Class__c = dc.Id;
|
dpt.Hospital__c = hp.Id;
|
insert dpt;
|
//科室1
|
Account dpt1 = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt1.Name = '123';
|
dpt1.Department_Name__c = 'TestDepart1';
|
dpt1.ParentId = dc.Id;
|
dpt1.Department_Class__c = dc.Id;
|
dpt1.Hospital__c = hp.Id;
|
insert dpt1;
|
|
|
|
|
//根据opd计划实施日期 算出本财年
|
Date dateToday = Date.today();
|
Integer year = dateToday.year();
|
Integer month = dateToday.month();
|
if (month < 4) {
|
year -= 1;
|
}
|
String selectedTab = String.valueOf(year - 1867 - 1 + 'P');
|
String selectedTab1 = String.valueOf(year - 1867 + 'P'); //今财年
|
|
//客户-目标客户 默认让opd计划和客户-目标客户的财年相同
|
Account_Number_of_target__c anot = new Account_Number_of_target__c();
|
anot.Account__c = dc.Id;
|
anot.Account_HP__c = hp.Id;
|
anot.OCM_Period__c = selectedTab;
|
anot.Target_amount_170_190__c =36597;
|
anot.OPD_amount_290MiroBF__c =1;
|
anot.OPD_amount_290MiroGI_CF__c =1;
|
insert anot;
|
|
Account_Number_of_target__c anot1 = new Account_Number_of_target__c();
|
anot1.Account__c = dc.Id;
|
anot1.Account_HP__c = hp.Id;
|
anot1.OCM_Period__c = selectedTab1;
|
anot1.Target_amount_170_190__c =36597;
|
anot1.OPD_CV290__c =1;
|
anot1.OPD_290Miro__c =1;
|
anot1.OPD_TB__c =1;
|
anot1.Rental_Cnt_CV290__c =1;
|
anot1.Rental_Cnt_TB__c =1;
|
anot1.Target_amount_CV290__c =1;
|
anot1.Target_amount_TB__c =1;//Sales_target_TB__c
|
anot1.Opp_cnt_290MiroGI__c =1;
|
anot1.Opp_cnt_290MiroGI_CF__c =1;
|
anot1.Asset_Cnt_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroGI_CF__c =1;
|
|
insert anot1;
|
|
OPDPlan__c oPDPlan = new OPDPlan__c();
|
oPDPlan.Status__c = '草案中';
|
oPDPlan.OPDType__c = '学会';
|
oPDPlan.if_OPDTarget__c=1;
|
oPDPlan.if_HaveSalestarget__c =1;
|
oPDPlan.Cnt_OPD_ThisYear__c=1;
|
oPDPlan.Cnt_OPD_LastYear__c=1;
|
oPDPlan.if_HaveOpportunity__c=1;
|
oPDPlan.if_HaveEquipment__c =1;
|
oPDPlan.Cnt_Rentals__c =1;
|
oPDPlan.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan.Account_Laboratory__c =dpt.Id;
|
oPDPlan.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan.RentalReson__c = 'OPD';
|
//oPDPlan.AdditionalSupport__c=oPDPlan.id;
|
oPDPlan.OPD_Customers_Target__c =anot1.id;
|
insert oPDPlan;
|
|
System.Test.StartTest();
|
OPDPlan__c oPDPlan0 = new OPDPlan__c();
|
oPDPlan0.Status__c = '草案中';
|
oPDPlan0.OPDType__c = '学会';
|
oPDPlan0.if_OPDTarget__c=1;
|
oPDPlan0.if_HaveSalestarget__c =1;
|
oPDPlan0.Cnt_OPD_ThisYear__c=1;
|
oPDPlan0.Cnt_OPD_LastYear__c=1;
|
oPDPlan0.if_HaveOpportunity__c=1;
|
oPDPlan0.if_HaveEquipment__c =1;
|
oPDPlan0.Cnt_Rentals__c =1;
|
oPDPlan0.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan0.Account_Laboratory__c =dpt.Id;
|
oPDPlan0.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan0.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan0.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan0.RentalReson__c = 'OPD';
|
//oPDPlan0.AdditionalSupport__c=oPDPlan.id;
|
oPDPlan0.OPD_Customers_Target__c =anot1.id;
|
insert oPDPlan0;
|
|
Attachment attach=new Attachment();
|
attach.Name='Unit Test Attachment';
|
Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
|
attach.body=bodyBlob;
|
attach.parentId=oPDPlan0.id;
|
attach.ContentType = 'application/pdf';
|
String body = 'Unit Test Attachment Body';
|
String id = String.valueOf(oPDPlan0.id);
|
|
//Test.startTest();
|
PageReference page = new PageReference('/apex/OPDNoReportApplication?id='+oPDPlan0.id+'&name=' + oPDPlan0.name);
|
System.Test.setCurrentPage(page);
|
String expectedResult = '您已上传文件成功!';// or false, whatever you expect
|
String result = OPDNoReportApplicationController.testAddAttachment(attach.Name,attach.ContentType, body, id);
|
//Test.stopTest();
|
System.assertEquals(expectedResult, result);
|
}
|
|
@isTest
|
static void setupTestData04() {
|
SS_Batch_Column_Mapping__c oppMapping = new SS_Batch_Column_Mapping__c(Name = 'targetKeyProduct', SS_TableName__c='targetKeyProduct__c');
|
oppMapping.From_Column_001__c = 'OPD_CV290__c';
|
oppMapping.SS_Column_001__c = 'CV-290';
|
oppMapping.From_Column_002__c = 'OPD_290Miro__c';
|
oppMapping.SS_Column_002__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_003__c = 'OPD_TB__c';
|
oppMapping.SS_Column_003__c = 'TB';
|
oppMapping.From_Column_101__c = 'Rental_Cnt_CV290__c';
|
oppMapping.SS_Column_101__c = 'CV-290';
|
oppMapping.From_Column_102__c = 'Rental_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_102__c = 'GI-290镜子';
|
oppMapping.From_Column_103__c = 'Rental_Cnt_TB__c';
|
oppMapping.SS_Column_103__c = 'TB';
|
|
|
oppMapping.From_Column_118__c = 'Sales_target_CV290__c';
|
oppMapping.SS_Column_118__c = 'CV-290';
|
oppMapping.From_Column_119__c = 'Sales_target_290Miro__c';
|
oppMapping.SS_Column_119__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_120__c = 'Sales_target_TB__c';
|
oppMapping.SS_Column_120__c = 'TB';
|
oppMapping.From_Column_129__c = 'Opp_cnt_290MiroBF__c';
|
oppMapping.SS_Column_129__c = 'BF-290镜子';
|
oppMapping.From_Column_130__c = 'Opp_cnt_290MiroGI__c';
|
oppMapping.SS_Column_130__c = 'GI-290镜子';
|
oppMapping.From_Column_131__c = 'Opp_cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_131__c = 'GI-290镜子CF';
|
oppMapping.From_Column_146__c = 'Asset_Cnt_290MiroBF__c';
|
oppMapping.SS_Column_146__c = 'BF-290镜子';
|
oppMapping.From_Column_147__c = 'Asset_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_147__c = 'GI-290镜子';
|
oppMapping.From_Column_148__c = 'Asset_Cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_148__c = 'GI-290镜子CF';
|
oppMapping.From_Column_163__c = 'OPD_amount_290MiroBF__c';
|
oppMapping.SS_Column_163__c = 'BF-290镜子';
|
oppMapping.From_Column_164__c = 'OPD_amount_290MiroGI__c';
|
oppMapping.SS_Column_164__c = 'GI-290镜子';
|
oppMapping.From_Column_165__c = 'OPD_amount_290MiroGI_CF__c';
|
oppMapping.SS_Column_165__c = 'GI-290镜子CF';
|
insert new SS_Batch_Column_Mapping__c[] {oppMapping};
|
|
|
//医院 记录类型
|
List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'];
|
if (rectHp.size() == 0) {
|
return;
|
}
|
//科室 记录类型
|
List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_GI'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
|
//简档
|
Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin];
|
|
//用户
|
User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner;
|
User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner2;
|
|
|
//医院
|
Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id);
|
hp.FSE_GI_Main_Leader__c = hpOwner.Id;
|
hp.FSE_SP_Main_Leader__c = hpOwner2.Id;
|
insert hp;
|
|
//战略科室
|
Account dc = [select Id, Name, RecordType_DeveloperName__c, Account2__c from Account where ParentId = :hp.Id and RecordType_DeveloperName__c = 'Department_Class_GI'];
|
//科室
|
Account dpt = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt.Name = '*';
|
dpt.Department_Name__c = 'TestDepart';
|
dpt.ParentId = dc.Id;
|
dpt.Department_Class__c = dc.Id;
|
dpt.Hospital__c = hp.Id;
|
insert dpt;
|
//科室1
|
Account dpt1 = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt1.Name = '123';
|
dpt1.Department_Name__c = 'TestDepart1';
|
dpt1.ParentId = dc.Id;
|
dpt1.Department_Class__c = dc.Id;
|
dpt1.Hospital__c = hp.Id;
|
insert dpt1;
|
|
|
|
|
//根据opd计划实施日期 算出本财年
|
Date dateToday = Date.today();
|
Integer year = dateToday.year();
|
Integer month = dateToday.month();
|
if (month < 4) {
|
year -= 1;
|
}
|
String selectedTab = String.valueOf(year - 1867 - 1 + 'P');
|
String selectedTab1 = String.valueOf(year - 1867 + 'P'); //今财年
|
|
//客户-目标客户 默认让opd计划和客户-目标客户的财年相同
|
Account_Number_of_target__c anot = new Account_Number_of_target__c();
|
anot.Account__c = dc.Id;
|
anot.Account_HP__c = hp.Id;
|
anot.OCM_Period__c = selectedTab;
|
anot.Target_amount_170_190__c =36597;
|
anot.OPD_amount_290MiroBF__c =1;
|
anot.OPD_amount_290MiroGI_CF__c =1;
|
insert anot;
|
|
Account_Number_of_target__c anot1 = new Account_Number_of_target__c();
|
anot1.Account__c = dc.Id;
|
anot1.Account_HP__c = hp.Id;
|
anot1.OCM_Period__c = selectedTab1;
|
anot1.Target_amount_170_190__c =36597;
|
anot1.OPD_CV290__c =1;
|
anot1.OPD_290Miro__c =1;
|
anot1.OPD_TB__c =1;
|
anot1.Rental_Cnt_CV290__c =1;
|
anot1.Rental_Cnt_TB__c =1;
|
anot1.Target_amount_CV290__c =1;
|
anot1.Target_amount_TB__c =1;//Sales_target_TB__c
|
anot1.Opp_cnt_290MiroGI__c =1;
|
anot1.Opp_cnt_290MiroGI_CF__c =1;
|
anot1.Asset_Cnt_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroGI_CF__c =1;
|
|
insert anot1;
|
|
OPDPlan__c oPDPlan = new OPDPlan__c();
|
oPDPlan.Status__c = '草案中';
|
oPDPlan.OPDType__c = '学会';
|
oPDPlan.if_OPDTarget__c=1;
|
oPDPlan.if_HaveSalestarget__c =1;
|
oPDPlan.Cnt_OPD_ThisYear__c=1;
|
oPDPlan.Cnt_OPD_LastYear__c=1;
|
oPDPlan.if_HaveOpportunity__c=1;
|
oPDPlan.if_HaveEquipment__c =1;
|
oPDPlan.Cnt_Rentals__c =1;
|
oPDPlan.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan.Account_Laboratory__c =dpt.Id;
|
oPDPlan.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan.RentalReson__c = 'OPD';
|
// oPDPlan.AdditionalSupport__c=anot.id;
|
// oPDPlan0.OPD_Customers_Target__c =anot1.id;
|
insert oPDPlan;
|
|
System.Test.StartTest();
|
OPDPlan__c oPDPlan0 = new OPDPlan__c();
|
oPDPlan0.Status__c = '草案中';
|
oPDPlan0.OPDType__c = '学会';
|
oPDPlan0.if_OPDTarget__c=1;
|
oPDPlan0.if_HaveSalestarget__c =1;
|
oPDPlan0.Cnt_OPD_ThisYear__c=1;
|
oPDPlan0.Cnt_OPD_LastYear__c=1;
|
oPDPlan0.if_HaveOpportunity__c=1;
|
oPDPlan0.if_HaveEquipment__c =1;
|
oPDPlan0.Cnt_Rentals__c =1;
|
oPDPlan0.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan0.Account_Laboratory__c =dpt.Id;
|
oPDPlan0.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan0.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan0.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan0.RentalReson__c = 'OPD';
|
// oPDPlan0.AdditionalSupport__c=oPDPlan.id;
|
oPDPlan0.RentalResonTemp__c = '对应修理';
|
oPDPlan0.CorrespondingRepairNo__c = null;
|
|
// oPDPlan0.OPD_Customers_Target__c =anot1.id;
|
insert oPDPlan0;
|
|
Attachment attach=new Attachment();
|
attach.Name='Unit Test Attachment';
|
Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
|
attach.body=bodyBlob;
|
attach.parentId=oPDPlan0.id;
|
attach.ContentType = 'application/pdf';
|
String body = 'Unit Test Attachment Body';
|
String id = String.valueOf(oPDPlan0.id);
|
|
//Test.startTest();
|
PageReference page = new PageReference('/apex/OPDNoReportApplication?id='+oPDPlan0.id+'&name=' + oPDPlan0.name);
|
System.Test.setCurrentPage(page);
|
String expectedResult = '您已上传文件成功!';// or false, whatever you expect
|
String result = OPDNoReportApplicationController.testAddAttachment(attach.Name,attach.ContentType, body, id);
|
//Test.stopTest();
|
System.assertEquals(expectedResult, result);
|
}
|
static testMethod void setupTestData05() {
|
|
SS_Batch_Column_Mapping__c oppMapping = new SS_Batch_Column_Mapping__c(Name = 'targetKeyProduct', SS_TableName__c='targetKeyProduct__c');
|
oppMapping.From_Column_001__c = 'OPD_CV290__c';
|
oppMapping.SS_Column_001__c = 'CV-290';
|
oppMapping.From_Column_002__c = 'OPD_290Miro__c';
|
oppMapping.SS_Column_002__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_003__c = 'OPD_TB__c';
|
oppMapping.SS_Column_003__c = 'TB';
|
oppMapping.From_Column_101__c = 'Rental_Cnt_CV290__c';
|
oppMapping.SS_Column_101__c = 'CV-290';
|
oppMapping.From_Column_102__c = 'Rental_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_102__c = 'GI-290镜子';
|
oppMapping.From_Column_103__c = 'Rental_Cnt_TB__c';
|
oppMapping.SS_Column_103__c = 'TB';
|
|
|
oppMapping.From_Column_118__c = 'Sales_target_CV290__c';
|
oppMapping.SS_Column_118__c = 'CV-290';
|
oppMapping.From_Column_119__c = 'Sales_target_290Miro__c';
|
oppMapping.SS_Column_119__c = 'GI-290镜子,GI-290镜子放大,GI-290镜子CF,BF-290镜子';
|
oppMapping.From_Column_120__c = 'Sales_target_TB__c';
|
oppMapping.SS_Column_120__c = 'TB';
|
oppMapping.From_Column_129__c = 'Opp_cnt_290MiroBF__c';
|
oppMapping.SS_Column_129__c = 'BF-290镜子';
|
oppMapping.From_Column_130__c = 'Opp_cnt_290MiroGI__c';
|
oppMapping.SS_Column_130__c = 'GI-290镜子';
|
oppMapping.From_Column_131__c = 'Opp_cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_131__c = 'GI-290镜子CF';
|
oppMapping.From_Column_146__c = 'Asset_Cnt_290MiroBF__c';
|
oppMapping.SS_Column_146__c = 'BF-290镜子';
|
oppMapping.From_Column_147__c = 'Asset_Cnt_290MiroGI__c';
|
oppMapping.SS_Column_147__c = 'GI-290镜子';
|
oppMapping.From_Column_148__c = 'Asset_Cnt_290MiroGI_CF__c';
|
oppMapping.SS_Column_148__c = 'GI-290镜子CF';
|
oppMapping.From_Column_163__c = 'OPD_amount_290MiroBF__c';
|
oppMapping.SS_Column_163__c = 'BF-290镜子';
|
oppMapping.From_Column_164__c = 'OPD_amount_290MiroGI__c';
|
oppMapping.SS_Column_164__c = 'GI-290镜子';
|
oppMapping.From_Column_165__c = 'OPD_amount_290MiroGI_CF__c';
|
oppMapping.SS_Column_165__c = 'GI-290镜子CF';
|
insert new SS_Batch_Column_Mapping__c[] {oppMapping};
|
|
|
//医院 记录类型
|
List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'];
|
if (rectHp.size() == 0) {
|
return;
|
}
|
//科室 记录类型
|
List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_GI'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
|
//简档
|
Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin];
|
|
//用户
|
User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner;
|
User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id);
|
insert hpOwner2;
|
|
|
//医院
|
Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id);
|
hp.FSE_GI_Main_Leader__c = hpOwner.Id;
|
hp.FSE_SP_Main_Leader__c = hpOwner2.Id;
|
insert hp;
|
|
//战略科室
|
Account dc = [select Id, Name, RecordType_DeveloperName__c, Account2__c from Account where ParentId = :hp.Id and RecordType_DeveloperName__c = 'Department_Class_GI'];
|
//科室
|
Account dpt = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt.Name = '*';
|
dpt.Department_Name__c = 'TestDepart';
|
dpt.ParentId = dc.Id;
|
dpt.Department_Class__c = dc.Id;
|
dpt.Hospital__c = hp.Id;
|
insert dpt;
|
//科室1
|
Account dpt1 = new Account(RecordTypeId = rectDpt[0].Id);
|
dpt1.Name = '123';
|
dpt1.Department_Name__c = 'TestDepart1';
|
dpt1.ParentId = dc.Id;
|
dpt1.Department_Class__c = dc.Id;
|
dpt1.Hospital__c = hp.Id;
|
insert dpt1;
|
|
|
|
|
//根据opd计划实施日期 算出本财年
|
Date dateToday = Date.today();
|
Integer year = dateToday.year();
|
Integer month = dateToday.month();
|
if (month < 4) {
|
year -= 1;
|
}
|
String selectedTab = String.valueOf(year - 1867 - 1 + 'P');
|
String selectedTab1 = String.valueOf(year - 1867 + 'P'); //今财年
|
|
//客户-目标客户 默认让opd计划和客户-目标客户的财年相同
|
Account_Number_of_target__c anot = new Account_Number_of_target__c();
|
anot.Account__c = dc.Id;
|
anot.Account_HP__c = hp.Id;
|
anot.OCM_Period__c = selectedTab;
|
anot.Target_amount_170_190__c =36597;
|
anot.OPD_amount_290MiroBF__c =1;
|
anot.OPD_amount_290MiroGI_CF__c =1;
|
insert anot;
|
|
Account_Number_of_target__c anot1 = new Account_Number_of_target__c();
|
anot1.Account__c = dc.Id;
|
anot1.Account_HP__c = hp.Id;
|
anot1.OCM_Period__c = selectedTab1;
|
anot1.Target_amount_170_190__c =36597;
|
anot1.OPD_CV290__c =1;
|
anot1.OPD_290Miro__c =1;
|
anot1.OPD_TB__c =1;
|
anot1.Rental_Cnt_CV290__c =1;
|
anot1.Rental_Cnt_TB__c =1;
|
anot1.Target_amount_CV290__c =1;
|
anot1.Target_amount_TB__c =1;//Sales_target_TB__c
|
anot1.Opp_cnt_290MiroGI__c =1;
|
anot1.Opp_cnt_290MiroGI_CF__c =1;
|
anot1.Asset_Cnt_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroBF__c =1;
|
anot1.OPD_amount_290MiroGI_CF__c =1;
|
|
insert anot1;
|
|
// 产品
|
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;
|
|
|
System.Test.StartTest();
|
OPDPlan__c oPDPlan0 = new OPDPlan__c();
|
oPDPlan0.Status__c = '草案中';
|
oPDPlan0.OPDType__c = '科室';
|
oPDPlan0.if_OPDTarget__c=1;
|
oPDPlan0.if_HaveSalestarget__c =1;
|
oPDPlan0.Cnt_OPD_ThisYear__c=1;
|
oPDPlan0.Cnt_OPD_LastYear__c=1;
|
oPDPlan0.if_HaveOpportunity__c=1;
|
oPDPlan0.if_HaveEquipment__c =1;
|
oPDPlan0.Cnt_Rentals__c =1;
|
oPDPlan0.PlanProdDetail__c ='CV-290*4; GI-290镜子*1; GI-290镜子CF*1;';
|
oPDPlan0.Account_Laboratory__c =dpt.Id;
|
oPDPlan0.OPDPlan_ImplementDate__c = Date.today();
|
oPDPlan0.OPDPlan_ImplementDate_temp__c = Date.today();
|
oPDPlan0.NoOpp_Reason__c = 'HCP对应';
|
oPDPlan0.RentalReson__c = '无法进入手术室';
|
oPDPlan0.AttachmentCertificate__c = '0001.png';
|
oPDPlan0.ModelLendingProduct__c=pro5.id;
|
//oPDPlan0.CorrespondingRepairNo__c =anot1.id;
|
insert oPDPlan0;
|
|
Attachment attach1=new Attachment();
|
attach1.Name='Unit Test Attachment';
|
Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
|
attach1.body=bodyBlob1;
|
attach1.ContentType = 'application/pdf';
|
|
PageReference page = new PageReference('/apex/OPDNoReportApplication?id='+oPDPlan0.id+'&name=' + oPDPlan0.name);
|
System.Test.setCurrentPage(page);
|
OPDNoReportApplicationController opd = new OPDNoReportApplicationController();
|
//初始化测试
|
opd.init();
|
//获取选项列表测试
|
opd.getRentalReson();
|
//保存测试
|
opd.IsUpload =false;
|
opd.IsHavFile =false;
|
oPDPlan0.RentalResonTemp__c = '无法进入手术室';
|
//oPDPlan0.ModelLendingProductCode__c = 'test0001';
|
|
opd.opdPlan = oPDPlan0;
|
opd.ModelLendingProductId = pro5.id;
|
//保存
|
opd.Save();
|
|
//提交待审批
|
opd.CommitNeedApproval();
|
System.Test.StopTest();
|
}
|
}
|