@isTest
|
private class NFM701ControllerHandlerTest {
|
|
@testSetup
|
static void makeTestRepair() {
|
|
|
List < RecordType > rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account'
|
and Name = '病院'
|
];
|
if (rectCo.size() == 0) {
|
throw new ControllerUtil.myException('not found 病院 recodetype');
|
}
|
List < RecordType > rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account'
|
and Name = '戦略科室分類 消化科'
|
];
|
if (rectSct.size() == 0) {
|
throw new ControllerUtil.myException('not found 戦略科室分類 呼吸科 recodetype');
|
}
|
List < RecordType > rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account'
|
and Name = '診療科 消化科'
|
];
|
if (rectDpt.size() == 0) {
|
throw new ControllerUtil.myException('not found 診療科 消化科 recodetype');
|
}
|
// テストデータ
|
Account company = new Account();
|
company.RecordTypeId = rectCo[0].Id;
|
company.Is_Active__c = '有効';
|
company.Name = 'NFM105TestCompany';
|
company.AwaitToSendAWS__c = true;
|
upsert company;
|
|
Account section = [Select Management_Code__c, Management_Code_Auto__c, Name, Id from Account where ParentId =: company.Id and RecordTypeId =: rectSct[0].Id];
|
|
Account depart = new Account();
|
depart.RecordTypeId = rectDpt[0].Id;
|
depart.Name = '*';
|
depart.Department_Name__c = 'NFM105TestDepart';
|
depart.ParentId = section.Id;
|
depart.Department_Class__c = section.Id;
|
depart.Hospital__c = company.Id;
|
upsert depart;
|
|
company.Site = '测试变更别名1';
|
|
upsert company;
|
|
List < RecordType > rectDpt2 = [select Id from RecordType where IsActive = true and SobjectType = 'Account'
|
and DeveloperName = 'Agency'
|
];
|
if (rectDpt.size() == 0) {
|
throw new ControllerUtil.myException('not found 診療科 消化科 recodetype');
|
}
|
ControllerUtil.EscapeNFM001Trigger = true;
|
StaticParameter.EscapeNFM001AgencyContractTrigger2 = true;
|
Account company2 = new Account();
|
company2.RecordTypeId = rectDpt2[0].Id;
|
company2.Name = 'NFM105TestCompany';
|
upsert company2;
|
|
License_Information__c lic = new License_Information__c();
|
lic.name = 'Test20181204';
|
lic.LicenseType__c = '医疗器械经营许可证';
|
lic.BusinessLicense__c = '20180522';
|
lic.ValidFrom__c = date.newinstance(2018, 05, 22);
|
lic.ValidTo__c = date.newinstance(2018, 05, 22);
|
lic.Scope3__c = '6815;6822;6823;6825';
|
lic.IsInquire__c = false;
|
lic.LicenseAndAccount__c = company2.Id;
|
insert lic;
|
License_Information__c lic1 = new License_Information__c();
|
lic1.name = 'Test20190111';
|
lic1.LicenseType__c = '第二类医疗器械经营备案凭证';
|
lic1.BusinessLicense__c = '20190522';
|
lic1.ValidFrom__c = date.newinstance(2018, 05, 21);
|
lic1.ValidTo__c = date.newinstance(2018, 05, 21);
|
lic.IsInquire__c = false;
|
lic1.Scope__c = '6815;6822;6823;6825';
|
lic1.LicenseAndAccount__c = company2.Id;
|
insert lic1;
|
|
List < RecordType > rectDptAgencyContract = [select Id from RecordType where IsActive = true and SobjectType = 'Account'
|
and DeveloperName = 'AgencyContract'
|
];
|
if (rectDptAgencyContract.size() == 0) {
|
return;
|
}
|
|
Account AagencyContractAccount = new Account();
|
AagencyContractAccount.RecordTypeId = rectDptAgencyContract[0].Id;
|
AagencyContractAccount.Contract_Decide_Start_Date__c = System.today();
|
AagencyContractAccount.Contract_Decide_End_Date__c = System.today();
|
AagencyContractAccount.Contract_End_Date__c = Date.today();
|
AagencyContractAccount.Name = '*';
|
AagencyContractAccount.Department_Name__c = 'NFM701TestDepart';
|
AagencyContractAccount.ParentId = company2.Id;
|
AagencyContractAccount.Agent_Ref__c = company2.Id;
|
AagencyContractAccount.ET_SP_Dealer__c = true;
|
// AagencyContractAccount.RecordType.DeveloperName = 'HP';
|
upsert AagencyContractAccount;
|
|
|
// List < BatchIF_Transfer__c > transfers = new List < BatchIF_Transfer__c > ();
|
// BatchIF_Transfer__c transfer = new BatchIF_Transfer__c();
|
// transfer.Table__c = 'Account';
|
// transfer.Column__c = 'RecordTypeId';
|
// transfer.External_Value__c = rectDpt[0].Id;
|
// transfer.Internal_Value__c = '消化科';
|
// insert transfer;
|
// BatchIF_Log__c iflog = new BatchIF_Log__c();
|
// iflog.Log__c = '{"GeDatas":{"Monitoring":{"TransmissionDateTime":"20211231104929","Text":"","Tag":"MSGH","Sender":"SFDC","Receiver":"OBPM","NumberOfRecord":"1","MessageType":"NFM701","MessageGroupNumber":"20211231104929"},"GeData":[{"StateMaster":"山西省","LinkedHospitalMCode":null,"IsMerge":false,"IsActive":true,"HospitalName":"夏县第二人民医院","HospitalMCode":"360437","Grade":"二级乙","DataType":"Hospital","CityMaster":"运城市","Address":"山西省运城市夏县运城地区夏县北街"}]}}';
|
// iflog.Type__c = '701test';
|
// insert iflog;
|
}
|
static testMethod void testMethod1() {
|
List < Account > userList = [select id from Account];
|
Test.startTest();
|
Integer i = 0;
|
List < Id > idList = new List < Id > ();
|
for (Account user: userList) {
|
idList.add(user.Id);
|
user.Is_Active__c = '有效';
|
user.Name = user.Name + i;
|
i++;
|
}
|
BatchIF_Log__c iflog = new BatchIF_Log__c();
|
iflog.Log__c = 'test start \n';
|
insert iflog;
|
upsert userList;
|
// NFM701Controller.callout(iflog.Id, idList);
|
|
|
Test.stopTest();
|
}
|
}
|