@isTest
|
private class OpportunityBefInsUpdTriggerTest {
|
|
private static Product2 product = null;
|
private static Id pricebookId = ControllerUtil.getStandardPricebook().Id;
|
|
static {
|
product = new Product2( Name='テスト商品');
|
insert product;
|
}
|
|
private static PricebookEntry buildPB( String input) {
|
PricebookEntry entry = new PricebookEntry( Pricebook2Id=pricebookId, Product2Id=product.Id);
|
entry.UnitPrice = 0;
|
entry.IsActive = true;
|
entry.UseStandardPrice = false;
|
entry.CurrencyIsoCode = input;
|
insert entry;
|
return entry;
|
}
|
|
private static Opportunity buildOppInstance( String inputTrade, String CurrencyIsoCode) {
|
Opportunity target = new Opportunity( Name='aiueo', StageName='引合', CloseDate=Date.today());
|
target.Trade__c = inputTrade;
|
target.CurrencyIsoCode = CurrencyIsoCode;
|
return target;
|
}
|
|
private static void insertOppLineItem( Opportunity input, Pricebookentry entry) {
|
OpportunityLineItem target = new OpportunityLineItem();
|
target.OpportunityId = input.Id;
|
target.Quantity = 1;
|
target.UnitPrice = 100;
|
target.PricebookEntryId = entry.Id;
|
insert target;
|
}
|
|
static testMethod void test10() {
|
PricebookEntry entry = buildPB( 'USD');
|
|
List<Opportunity> opps = new List<Opportunity>();
|
opps.add( buildOppInstance( '外貿', 'USD'));
|
insert opps;
|
|
insertOppLineItem( opps[0], entry);
|
}
|
|
|
static testMethod void test01() {
|
|
// 商談を複数レコード insertしてみます
|
List<Opportunity> opps = new List<Opportunity>();
|
|
// テストデータ生成
|
opps.add( buildOppInstance( '外貿', 'USD'));
|
opps.add( buildOppInstance( '外貿', 'CNY'));
|
opps.add( buildOppInstance( '内貿', 'USD'));
|
opps.add( buildOppInstance( '内貿', 'CNY'));
|
insert opps;
|
|
// 結果発表
|
List<Opportunity> selected = [SElECT Id, Name, Trade__c, CurrencyIsoCode FROM Opportunity WHERE Id IN :opps];
|
System.assertEquals( '外貿', selected[0].Trade__c);
|
System.assertEquals( 'USD', selected[0].CurrencyIsoCode);
|
System.assertEquals( '外貿', selected[1].Trade__c);
|
//System.assertEquals( 'USD', selected[1].CurrencyIsoCode);
|
System.assertEquals( '内貿', selected[2].Trade__c);
|
//System.assertEquals( 'CNY', selected[2].CurrencyIsoCode);
|
System.assertEquals( '内貿', selected[3].Trade__c);
|
System.assertEquals( 'CNY', selected[3].CurrencyIsoCode);
|
|
// データを更新してみる
|
selected[0].Trade__c = '内貿';
|
selected[0].CurrencyIsoCode = 'USD';
|
selected[1].Trade__c = '内貿';
|
selected[1].CurrencyIsoCode = 'CNY';
|
selected[2].Trade__c = '外貿';
|
selected[2].CurrencyIsoCode = 'USD';
|
selected[3].Trade__c = '外貿';
|
selected[3].CurrencyIsoCode = 'CNY';
|
update selected;
|
|
// 結果発表
|
selected = [SElECT Id, Name, Trade__c, CurrencyIsoCode FROM Opportunity WHERE Id IN :opps];
|
System.assertEquals( '内貿', selected[0].Trade__c);
|
//System.assertEquals( 'CNY', selected[0].CurrencyIsoCode);
|
System.assertEquals( '内貿', selected[1].Trade__c);
|
System.assertEquals( 'CNY', selected[1].CurrencyIsoCode);
|
System.assertEquals( '外貿', selected[2].Trade__c);
|
System.assertEquals( 'USD', selected[2].CurrencyIsoCode);
|
System.assertEquals( '外貿', selected[3].Trade__c);
|
//System.assertEquals( 'USD', selected[3].CurrencyIsoCode);
|
|
// 子レコードを作ってみる
|
PricebookEntry entryUSD = buildPB( 'USD');
|
PricebookEntry entryCNY = buildPB( 'CNY');
|
//insertOppLineItem( selected[0], entryCNY);
|
//insertOppLineItem( selected[1], entryCNY);
|
//insertOppLineItem( selected[2], entryUSD);
|
//insertOppLineItem( selected[3], entryUSD);
|
|
// データを更新してみる
|
selected = [SElECT Id, Name, Trade__c, CurrencyIsoCode FROM Opportunity WHERE Id IN :opps];
|
selected[0].Trade__c = '外貿';
|
selected[0].CurrencyIsoCode = 'CNY';
|
selected[1].Trade__c = '外貿';
|
// selected[1].CurrencyIsoCode = 'USD';
|
selected[2].Trade__c = '内貿';
|
// selected[2].CurrencyIsoCode = 'CNY';
|
selected[3].Trade__c = '内貿';
|
selected[3].CurrencyIsoCode = 'USD';
|
update selected;
|
|
}
|
|
static testMethod void testOwner() {
|
Opportunity opp = new Opportunity(Name='testOwner', StageName='contact', CurrencyIsoCode='CNY', CloseDate=Date.today());
|
insert opp;
|
opp = [select id, ownerid, Owner_System__c from opportunity where id = :opp.id];
|
//system.assertequals(opp.ownerid, opp.Owner_System__c);
|
opp.Owner_System__c = null;
|
update opp;
|
opp = [select id, ownerid, Owner_System__c from opportunity where id = :opp.id];
|
//system.assertequals(opp.ownerid, opp.Owner_System__c);
|
}
|
|
static testMethod void testCity() {
|
RecordType rt1 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院'];
|
RecordType rt2 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 呼吸科'];
|
RecordType rt3 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 呼吸科'];
|
|
Address_Level__c al1 = new Address_Level__c(
|
Name = '四川省'
|
);
|
insert al1;
|
Address_Level2__c al2 = new Address_Level2__c(
|
Name = '成都市',
|
Address_Level__c = al1.Id
|
);
|
insert al2;
|
|
Account company = new Account();
|
company.Name = 'aiueo病院';
|
company.RecordTypeId = rt1.Id;
|
company.State_Master__c = al1.Id;
|
company.City_Master__c = al2.Id;
|
insert company;
|
|
Account sct = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company.Id and RecordTypeId = :rt2.Id];
|
|
Account depart = new Account();
|
depart.RecordTypeId = rt3.Id;
|
depart.Name = '*';
|
depart.Department_Name__c = 'aiueo診療科';
|
depart.ParentId = sct.Id;
|
depart.Department_Class__c = sct.Id;
|
depart.Hospital__c = company.Id;
|
insert depart;
|
|
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', 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);
|
hpOwner.Province__c = '四川省';
|
insert hpOwner;
|
|
Opportunity opp = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), AccountId = depart.Id);
|
opp.OwnerId = hpOwner.Id;
|
insert opp;
|
|
opp = [select City__c, City_Text__c from Opportunity where Id = :opp.Id];
|
//System.assertequals('成都市', opp.City_Text__c);
|
//System.assertequals('成都市', opp.City__c);
|
}
|
|
static testMethod void testShippingDate() {
|
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', 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);
|
hpOwner.Province__c = '浙江省';
|
hpOwner.Job_Category__c = '销售推广';
|
insert hpOwner;
|
Opportunity opp = new Opportunity(Name='testOwner', StageName='contact', CurrencyIsoCode='CNY', CloseDate=Date.today(),Shipping_Finished_Day__c =Date.today().addDays(-2));
|
opp.OwnerId = hpOwner.Id;
|
insert opp;
|
opp = [select id, ownerid, Owner_System__c,ShippingDate_For_Report__c,StageName,Shipping_Finished_Day__c from opportunity where id = :opp.id];
|
System.assertEquals('contact',opp.StageName);
|
//System.assertEquals(Date.today(),opp.ShippingDate_For_Report__c);
|
//System.assertEquals(Date.today().addDays(-2),opp.Shipping_Finished_Day__c);
|
opp.StageName = '出荷';
|
opp.CloseDate = Date.today().addDays(+1);
|
update opp;
|
opp = [select id, ownerid, Owner_System__c,ShippingDate_For_Report__c,StageName,Shipping_Finished_Day__c from opportunity where id = :opp.id];
|
System.assertEquals('出荷',opp.StageName);
|
System.assertEquals(Date.today().addDays(-2),opp.Shipping_Finished_Day__c);
|
//System.assertEquals(Date.today().addDays(-2),opp.ShippingDate_For_Report__c);
|
}
|
|
// static testMethod void testQuote() {
|
// Opportunity opp = new Opportunity(Name='testOwner', StageName='contact', CurrencyIsoCode='CNY', CloseDate=Date.today(),Shipping_Finished_Day__c =Date.today().addDays(-2));
|
// insert opp;
|
// Quote q = new Quote(
|
// Name = 'quote',
|
// OpportunityId = opp.Id
|
// );
|
// insert q;
|
// opp = [select id, ownerid, Owner_System__c,ShippingDate_For_Report__c,StageName,Shipping_Finished_Day__c from opportunity where id = :opp.id];
|
// System.assertEquals('contact',opp.StageName);
|
// //System.assertEquals(Date.today(),opp.ShippingDate_For_Report__c);
|
// //System.assertEquals(Date.today().addDays(-2),opp.Shipping_Finished_Day__c);
|
// opp.StageName = '引合';
|
// opp.CloseDate = Date.today().addDays(+1);
|
// opp.Estimation_Id__c = q.id;
|
// opp.Estimation_Decision__c = true;
|
// opp.SAP_Send_OK__c = true;
|
// opp.Authorized_DB_No__c = '11111';
|
// opp.Contract_DB_SalesDept_complite_day__c = Date.today();
|
// opp.NotesApprovedNo__c = '11111';
|
// //update opp;
|
// opp = [select id, ownerid, Owner_System__c,ShippingDate_For_Report__c,StageName,Shipping_Finished_Day__c from opportunity where id = :opp.id];
|
// //System.assertEquals('引合',opp.StageName);
|
// System.assertEquals(Date.today().addDays(-2),opp.Shipping_Finished_Day__c);
|
// //System.assertEquals(Date.today().addDays(-2),opp.ShippingDate_For_Report__c);
|
// }
|
|
static testMethod void testConsumable() {
|
RecordType rt1 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '契約'];
|
RecordType rt2 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '販売店'];
|
//RecordType rt3 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 呼吸科'];
|
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', 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);
|
hpOwner.Province__c = '辽宁省';
|
hpOwner.Job_Category__c = '销售推广';
|
insert hpOwner;
|
Address_Level__c al1 = new Address_Level__c(
|
Name = '四川省'
|
);
|
insert al1;
|
Address_Level2__c al2 = new Address_Level2__c(
|
Name = '成都市',
|
Address_Level__c = al1.Id
|
);
|
insert al2;
|
|
Account company = new Account(name='aiueo经销商',RecordTypeId = rt2.Id,State_Master__c = al1.Id,City_Master__c = al2.Id);
|
insert company;
|
Account contact = new Account(name='aiueo契约',RecordTypeId = rt1.Id,SpecialDealerName__c = 'aiueo经销商',ParentId = company.Id,Agent_Ref__c = company.Id,Delete_Flag__c = false,Contract_Department_Class__c = 'ET',Contract_Decide_Start_Date__c = Date.today().addDays(-1),Contract_Decide_End_Date__c = Date.today().addDays(1));
|
insert contact;
|
contact.ownerId = hpOwner.Id;
|
update contact;
|
|
contact = [select ownerId from Account WHERE Id = :contact.Id];
|
System.assertequals(contact.ownerId, hpOwner.Id);
|
|
Opportunity opp = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), AccountId = contact.Id);
|
opp.OwnerId = hpOwner.Id;
|
insert opp;
|
|
opp = [select ownerid,Account.RecordType.DeveloperName, City__c, City_Text__c,Custmor_pic_ID__c from Opportunity where Id = :opp.Id];
|
System.assertequals(hpOwner.Id, opp.Custmor_pic_ID__c);
|
//System.assertequals(hpOwner.Id, opp.ownerid);
|
}
|
|
static testMethod void testConsumableupdate() {
|
RecordType rt1 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '契約'];
|
RecordType rt2 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '販売店'];
|
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', 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);
|
hpOwner.Province__c = '河南省';
|
hpOwner.Job_Category__c = '销售推广';
|
insert hpOwner;
|
Address_Level__c al1 = new Address_Level__c(
|
Name = '四川省'
|
);
|
insert al1;
|
Address_Level2__c al2 = new Address_Level2__c(
|
Name = '成都市',
|
Address_Level__c = al1.Id
|
);
|
insert al2;
|
|
Account company = new Account(name='aiueo经销商',RecordTypeId = rt2.Id,State_Master__c = al1.Id,City_Master__c = al2.Id);
|
insert company;
|
Account contact = new Account(name='aiueo契约',RecordTypeId = rt1.Id,SpecialDealerName__c = 'aiueo经销商',ParentId = company.Id,Agent_Ref__c = company.Id,Delete_Flag__c = false,Contract_Department_Class__c = 'ET',Contract_Decide_Start_Date__c = Date.today().addDays(-1),Contract_Decide_End_Date__c = Date.today().addDays(1));
|
insert contact;
|
|
System.Test.startTest();
|
Opportunity opp = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), AccountId = contact.Id);
|
opp.OwnerId = hpOwner.Id;
|
insert opp;
|
contact.ownerId = hpOwner.Id;
|
update contact;
|
|
contact = [select ownerId from Account WHERE Id = :contact.Id];
|
System.assertequals(hpOwner.Id, contact.ownerId);
|
opp.Name = 'aiueo商談1';
|
update opp;
|
|
opp = [select ownerid,Account.RecordType.DeveloperName, City__c, City_Text__c,Custmor_pic_ID__c from Opportunity where Id = :opp.Id];
|
System.assertequals(hpOwner.Id, opp.Custmor_pic_ID__c);
|
System.assertequals(hpOwner.Id, opp.ownerid);
|
System.Test.StopTest();
|
}
|
|
static testMethod void testHosptil() {
|
RecordType rt1 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院'];
|
RecordType rt2 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 呼吸科'];
|
RecordType rt3 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 呼吸科'];
|
|
Address_Level__c al1 = new Address_Level__c(
|
Name = '四川省'
|
);
|
insert al1;
|
Address_Level2__c al2 = new Address_Level2__c(
|
Name = '成都市',
|
Address_Level__c = al1.Id
|
);
|
insert al2;
|
|
Account company = new Account();
|
company.Name = 'aiueo病院';
|
company.RecordTypeId = rt1.Id;
|
company.State_Master__c = al1.Id;
|
company.City_Master__c = al2.Id;
|
insert company;
|
|
Account sct = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company.Id and RecordTypeId = :rt2.Id];
|
|
Account depart = new Account();
|
depart.RecordTypeId = rt3.Id;
|
depart.Name = '*';
|
depart.Department_Name__c = 'aiueo診療科';
|
depart.ParentId = sct.Id;
|
depart.Department_Class__c = sct.Id;
|
depart.Hospital__c = company.Id;
|
insert depart;
|
|
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', 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);
|
hpOwner.Province__c = '海南省';
|
hpOwner.Job_Category__c = '销售推广';
|
insert hpOwner;
|
|
Opportunity opp = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), AccountId = depart.Id,Hospital__c = company.Id);
|
opp.OwnerId = hpOwner.Id;
|
insert opp;
|
|
opp = [select ownerid,owner_not_automatically_update__c, City__c, City_Text__c,Custmor_pic_ID__c from Opportunity where Id = :opp.Id];
|
// System.assertequals('00510000005sEEM', opp.ownerid);
|
// System.assertequals(false, opp.owner_not_automatically_update__c);
|
// System.assertequals('00510000005sEEM', opp.Custmor_pic_ID__c);
|
//System.assertequals('成都市', opp.City_Text__c);
|
//System.assertequals('成都市', opp.City__c);
|
}
|
|
//付晓坤 2021-1-15 测试:询价借用备品提醒修改客户将影响回库 Start
|
static testMethod void testOpportunityUpdate(){
|
// Opportunity opIds = [Select Id From Opportunity];
|
//Rental_Apply__c ra = [Select Id,Follow_UP_Opp__c From Rental_Apply__c Where Status__c != '取消' and Follow_UP_Opp__c IN :opIds];
|
|
//询价的创建
|
//1、记录类型
|
List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院'];
|
if (rectCo.size() == 0) {
|
return;
|
}
|
List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 呼吸科'];
|
if (rectSct.size() == 0) {
|
return;
|
}
|
List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 消化科'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
|
//2.创建医院
|
Account company = new Account();
|
company.RecordTypeId = rectCo[0].Id;
|
company.Name = 'NFM007TestCompany';
|
upsert company;
|
//3.创建科室
|
Account section = new Account();
|
section.RecordTypeId = rectSct[0].Id;
|
section.Name = '*';
|
section.Department_Class_Label__c = '消化科';
|
section.ParentId = company.Id;
|
section.Hospital_Department_Class__c = company.Id;
|
upsert section;
|
//4.创建部门
|
Account depart = new Account();
|
depart.RecordTypeId = rectDpt[0].Id;
|
depart.Name = '*';
|
depart.Department_Name__c = 'NFM007TestDepart';
|
depart.ParentId = section.Id;
|
depart.Department_Class__c = section.Id;
|
depart.Hospital__c = company.Id;
|
upsert depart;
|
|
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', 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);
|
hpOwner.Province__c = '四川省';
|
hpOwner.Job_Category__c = '销售推广';
|
insert hpOwner;
|
|
//5.创建询价(业务机会)
|
Opportunity opp = new Opportunity();
|
opp.AccountId = depart.Id;//客户名
|
opp.Department_Class__c = section.Id;//战略科室分类
|
opp.Hospital__c = company.Id;//医院
|
opp.SAP_Send_OK__c = false;//SAP上传(WIN)
|
opp.Name = 'GZ-SP-NFM007_1';//业务机会名
|
opp.Trade__c = '内貿';//内贸/外贸
|
opp.StageName = '引合';//阶段
|
opp.CloseDate = Date.today();// 结束日期
|
opp.Stock_apply_status__c = '申请中';//备货申请状态
|
opp.OwnerId = hpOwner.Id;
|
insert opp;
|
|
// 创建备品
|
//1.取OPD的Id
|
OPDPlan__c opd = new OPDPlan__c();
|
opd.Account_Laboratory__c = depart.Id;
|
opd.OPDPlan_ImplementDate__c = Date.today()+60;
|
opd.NoOpp_Reason__c = 'HCP对应';
|
opd.Status__c = '计划中';
|
//insert opd;
|
//2.添加一条状态为取消的备品
|
/*Rental_Apply__c ra = new Rental_Apply__c();
|
ra.Follow_UP_Opp__c = opp.Id;
|
ra.Status__c = '取消';
|
ra.Cancel_Reason__c = '主动取消';
|
ra.Name = 'aaa';
|
ra.Person_In_Charge__c= UserInfo.getUserId();
|
ra.applyUser__c = UserInfo.getUserId();
|
ra.Demo_purpose1__c = '产品试用';
|
ra.demo_purpose2__c = '试用(无询价)';
|
ra.Product_category__c = 'GI';
|
ra.Demo_purpose_text__c = '111';
|
ra.Request_shipping_day__c = date.newinstance(2022, 11, 30);
|
ra.Loaner_received_staff__c = 'www';
|
ra.direct_send__c = '上门自提';
|
ra.pickup_time__c = date.newinstance(2022, 11, 30);
|
ra.Loaner_received_staff_phone__c = '12312312312';
|
//ra.OPDPlan__c = opd.Id;
|
ra.Account__c = depart.Id;
|
ra.Strategic_dept__c = section.Id;
|
ra.Hospital__c = company.Id;//医院
|
insert ra;*/
|
|
//2.1 添加一条状态不为取消的备品
|
/*Rental_Apply__c ra1 = new Rental_Apply__c();
|
ra1.Follow_UP_Opp__c = opp.Id;
|
ra1.Status__c = '草案中';
|
ra1.Name = 'aaa';
|
ra1.Person_In_Charge__c= UserInfo.getUserId();
|
ra1.applyUser__c = UserInfo.getUserId();
|
ra1.Demo_purpose1__c = '产品试用';
|
ra1.demo_purpose2__c = '试用(无询价)';
|
ra1.Product_category__c = 'GI';
|
ra1.Demo_purpose_text__c = '111';
|
ra1.Request_shipping_day__c = Date.today();
|
ra1.Loaner_received_staff__c = 'www';
|
ra1.direct_send__c = '上门自提';
|
ra1.pickup_time__c = Date.today();
|
ra1.Loaner_received_staff_phone__c = '12312312312';
|
ra1.OPDPlan__c = opd.Id;
|
ra1.Account__c = depart.Id;
|
ra1.Strategic_dept__c = section.Id;
|
ra1.Hospital__c = company.Id;//医院
|
insert ra1;*/
|
//更新询价客户名
|
//1、记录类型
|
List<RecordType> rectSct1 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 泌尿科'];
|
if (rectSct.size() == 0) {
|
return;
|
}
|
List<RecordType> rectDpt1 = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 泌尿科'];
|
if (rectDpt.size() == 0) {
|
return;
|
}
|
//2.创建科室
|
Account section1 = new Account();
|
section1.RecordTypeId = rectSct1[0].Id;
|
section1.Name = 'aaa';
|
section1.Department_Class_Label__c = '泌尿科';
|
section1.ParentId = company.Id;
|
section1.Hospital_Department_Class__c = company.Id;
|
upsert section1;
|
//3.创建部门
|
Account depart1 = new Account();
|
depart1.RecordTypeId = rectDpt1[0].Id;
|
depart1.Name = 'aaa';
|
depart1.Department_Name__c = 'NFM006TestDepart';
|
depart1.ParentId = section1.Id;
|
depart1.Department_Class__c = section1.Id;
|
depart1.Hospital__c = company.Id;
|
upsert depart1;
|
//4.修改客户
|
opp.AccountId = depart1.Id;//客户名
|
opp.Close_Forecasted_Date__c = date.newinstance(2022, 11, 30);
|
opp.CloseDate = date.newinstance(2022, 12, 30);
|
update opp;
|
//测试
|
List<Rental_Apply__c> raList = [Select Id,Follow_UP_Opp__c From Rental_Apply__c Where Status__c != '取消' and Follow_UP_Opp__c = :opp.Id];
|
|
System.assertEquals(0, raList.size());
|
|
|
|
}
|
|
//付晓坤 2021-1-15 测试:询价借用备品提醒修改客户将影响回库 End
|
}
|