@isTest
|
private class OpdPlan_CreatePlanRentalEquipmentTest {
|
private static Id pricebookId = ControllerUtil.getStandardPricebook().Id;
|
static testMethod void init() {
|
RecordType rectCam = [SELECT Id FROM RecordType
|
WHERE IsActive = true AND SobjectType = 'Campaign'
|
AND DeveloperName = 'Training_event'];
|
|
Campaign cam = new Campaign();
|
cam.Name = 'cam';
|
cam.Name2__c = '1234';
|
cam.RecordTypeId = rectCam.Id;
|
cam.StartDate = Date.today().addDays(-15);
|
cam.EndDate = Date.today().addDays(18);
|
cam.Mailflg_after45__c = true;
|
cam.Mailflg_cancel__c = true;
|
cam.Mailflg_before15__c = true;
|
cam.Mailflg_before7__c = true;
|
cam.Mailflg_after3__c = true;
|
cam.Is_LendProduct__c = '是';
|
insert cam;
|
|
Opportunity opp = new Opportunity(
|
Name='Opp',
|
StageName='引合',
|
CloseDate=Date.today().addDays(10),
|
Close_Forecasted_Date__c=Date.today(),
|
|
CurrencyIsoCode = 'CNY'
|
);
|
insert opp;
|
|
Quote q = new Quote(
|
Name = 'quote',
|
OpportunityId = opp.Id,
|
Pricebook2Id = pricebookId
|
);
|
insert q;
|
|
opp.Estimation_Id__c = q.Id;
|
update opp;
|
|
Product2 prd1 = new Product2();
|
prd1.Name = 'Prd1';
|
prd1.ProductCode_Ext__c = 'Prd1';
|
prd1.ProductCode = 'Prd1';
|
prd1.Asset_Model_No__c = '1001';
|
prd1.Important_product__c = true;
|
prd1.Important_Rroduct_1GI__c = true;
|
prd1.RentalSubject__c = true;
|
insert prd1;
|
|
PricebookEntry entry = new PricebookEntry( Pricebook2Id = pricebookId, Product2Id = prd1.Id);
|
entry.UnitPrice = 0;
|
entry.IsActive = true;
|
entry.UseStandardPrice = false;
|
entry.CurrencyIsoCode = 'CNY';
|
insert entry;
|
|
QuoteLineItem quoteItem = new QuoteLineItem();
|
quoteItem.Name__c = 'テスト商品';
|
quoteItem.QuoteId = q.id;
|
quoteItem.Quantity = 1;
|
quoteItem.Cost_Subtotal__c = 0;
|
quoteItem.Cost__c = 200;
|
quoteItem.Item_Order__c = 3;
|
quoteItem.UnitPrice = 10;
|
quoteItem.Product2Id = prd1.id;
|
quoteItem.PricebookEntryId = entry.Id;
|
quoteItem.OppIsLendMark__c = true;
|
insert quoteItem;
|
|
|
Id planRERecordTypeCampaign = Schema.SObjectType.Plan_Rental_Equipment__c.getRecordTypeInfosByDeveloperName().get('campaign').getRecordTypeId();
|
Plan_Rental_Equipment__c planRE2 = new Plan_Rental_Equipment__c();
|
planRE2.Campaign__c = cam.Id;
|
planRE2.Rental_Equipment__c = 'CF-H170I';
|
planRE2.Name = 'CF-H170I';
|
planRE2.Rental_Quantity__c = '10';
|
planRE2.ProductCode__c = 'N4480080';
|
planRE2.MDM_Model_No__c = 'CF-H170I';
|
planRE2.RecordTypeId = planRERecordTypeCampaign;
|
insert planRE2;
|
|
//OPD计划
|
OPDPlan__c oPDPlan = new OPDPlan__c();
|
oPDPlan.Status__c = '草案中';
|
oPDPlan.OPDPlan_ImplementDate__c = Date.today().addMonths(1);
|
oPDPlan.NoOpp_Reason__c = 'HCP对应'; //无询价理由
|
oPDPlan.OPDLendSortDraft__c = 1; //备品借出优先度
|
oPDPlan.OPDType__c = '询价';
|
oPDPlan.Related_Opportunity1_ID__c = opp.Id;
|
oPDPlan.NoOpp_Reason__c = null;
|
insert oPDPlan;
|
|
oPDPlan.Status__c = '计划中';
|
update oPDPlan;
|
|
OPDPlan__c oPDPlan1 = new OPDPlan__c();
|
oPDPlan1.Status__c = '取消';
|
oPDPlan1.OPDPlan_ImplementDate__c = Date.today().addMonths(1);
|
oPDPlan1.NoOpp_Reason__c = 'HCP对应'; //无询价理由
|
oPDPlan1.OPDLendSortDraft__c = 1; //备品借出优先度
|
oPDPlan1.OPDType__c = '学会';
|
oPDPlan1.Campaign__c = cam.Id;
|
// oPDPlan1.NoOpp_Reason__c = 'HCP对应';
|
insert oPDPlan1;
|
|
Plan_Rental_Equipment__c planRE1 = new Plan_Rental_Equipment__c();
|
planRE1.OPD_Plan__c = oPDPlan.Id;
|
planRE1.Rental_Equipment__c = 'CF-H170I';
|
planRE1.Name = 'CF-H170I';
|
planRE1.Rental_Quantity__c = '10';
|
planRE1.ProductCode__c = 'N4480080';
|
planRE1.MDM_Model_No__c = 'CF-H170I';
|
insert planRE1;
|
|
Test.startTest();
|
|
cam.Status = '公开中';
|
update cam;
|
// oPDPlan.Status__c = '提交';
|
// update oPDPlan;
|
|
|
Test.stopTest();
|
|
|
}
|
}
|