高章伟
2022-03-10 823b027c0decb82043c6e39f2d6ef1bb020220b1
force-app/main/default/classes/Product2TriggerHandlerTest.cls
@@ -44,10 +44,27 @@
        PRC.Stelsedag__c           = Date.today();
        insert PRC;                
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '2';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c      = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        PRC1.Stelsedag__c           = Date.today().addDays(1);
        insert PRC1;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c = prd.ID;
        prl.Product_Register__c = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c = prd.ID;
        prl1.Product_Register__c = PRC1.ID;
        insert prl1;
    }
    @isTest static void test_checkProduct2Level1() {
@@ -70,13 +87,30 @@
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today();
        PRC.Stelsedag__c           = Date.today().addDays(1);
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '1';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        PRC1.Stelsedag__c           = Date.today();
        insert PRC1;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
    }
    @isTest static void test_checkProduct2Level2() {
@@ -102,10 +136,44 @@
        PRC.Stelsedag__c           = Date.today();
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        insert PRC1;
        Product_Register__c PRC2 = new Product_Register__c();
        PRC2.Name                   = '国械注进20183222249';
        PRC2.MedPrdClass__c         = '';
        PRC2.RegisterNoClass_New__c = '';
        PRC2.RegisterNoClass_Old__c = '6822';
        PRC2.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC2.ClinicalProductCode__c = 'YYYY';
        PRC2.ValidTo__c             = Date.today().addDays(22);
        PRC2.ValidFrom__c           = Date.today().addDays(-22);
        PRC2.Stelsedag__c           = Date.today();
        insert PRC2;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
        Product_Register_Link__c prl2 = new Product_Register_Link__c();
        prl2.Product2__c              = prd.ID;
        prl2.Product_Register__c      = PRC2.ID;
        insert prl2;
    }
    @isTest static void test_checkProduct2Level3() {
@@ -115,37 +183,8 @@
        prd.Name                   = 'testSBG004';
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(3);
        prd.Diedatvanink__c        = Date.today().addDays(4);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
        PRC.Name                   = '国械注进20183222249';
        PRC.MedPrdClass__c         = '2';
        PRC.RegisterNoClass_New__c = '';
        PRC.RegisterNoClass_Old__c = '6822';
        PRC.PrdCompanyAddr__c      = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today();
        insert PRC;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
    }
    @isTest static void test_checkProduct2Level4() {
        Product2 prd = new Product2();
        prd.Product_ECCode__c      = 'testSBG004';
        prd.ProductCode            = 'testSBG004';
        prd.Name                   = 'testSBG004';
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(-3);
        prd.Diedatvanink__c        = Date.today().addDays(4);
        prd.Diedatvanink__c        = Date.today().addDays(5);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
@@ -157,16 +196,35 @@
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today();
        PRC.Stelsedag__c           = Date.today().addDays(1);
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '2';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        PRC1.Stelsedag__c           = Date.today();
        insert PRC1;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
    }
    @isTest static void test_checkProduct2Level5() {
    @isTest static void test_checkProduct2Level4() {
        Product2 prd = new Product2();
        prd.Product_ECCode__c      = 'testSBG004';
        prd.ProductCode            = 'testSBG004';
@@ -174,7 +232,7 @@
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(-3);
        prd.Diedatvanink__c        = Date.today().addDays(4);
        prd.Diedatvanink__c        = Date.today().addDays(5);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
@@ -186,16 +244,36 @@
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today();
        PRC.Stelsedag__c           = Date.today().addDays(1);
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '1';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        PRC1.Stelsedag__c           = Date.today();
        insert PRC1;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
    }
    @isTest static void test_checkProduct2Level6() {
    @isTest static void test_checkProduct2Level5() {
        Product2 prd = new Product2();
        prd.Product_ECCode__c      = 'testSBG004';
        prd.ProductCode            = 'testSBG004';
@@ -203,36 +281,7 @@
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(-3);
        prd.Diedatvanink__c        = Date.today().addDays(4);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
        PRC.Name                   = '国械注进20183222249';
        PRC.MedPrdClass__c         = '3';
        PRC.RegisterNoClass_New__c = '';
        PRC.RegisterNoClass_Old__c = '6822';
        PRC.PrdCompanyAddr__c      = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today();
        insert PRC;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
    }
    @isTest static void test_checkProduct2Level7() {
        Product2 prd = new Product2();
        prd.Product_ECCode__c      = 'testSBG004';
        prd.ProductCode            = 'testSBG004';
        prd.Name                   = 'testSBG004';
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(-3);
        prd.Diedatvanink__c        = Date.today().addDays(4);
        prd.Diedatvanink__c        = Date.today().addDays(5);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
@@ -244,13 +293,142 @@
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today();
        PRC.Stelsedag__c           = Date.today().addDays(1);
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        insert PRC1;
        Product_Register__c PRC2 = new Product_Register__c();
        PRC2.Name                   = '国械注进20183222249';
        PRC2.MedPrdClass__c         = '';
        PRC2.RegisterNoClass_New__c = '';
        PRC2.RegisterNoClass_Old__c = '6822';
        PRC2.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC2.ClinicalProductCode__c = 'YYYY';
        PRC2.ValidTo__c             = Date.today().addDays(22);
        PRC2.ValidFrom__c           = Date.today().addDays(-22);
        PRC2.Stelsedag__c           = Date.today();
        insert PRC2;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
        Product_Register_Link__c prl2 = new Product_Register_Link__c();
        prl2.Product2__c              = prd.ID;
        prl2.Product_Register__c      = PRC2.ID;
        insert prl2;
    }
    @isTest static void test_checkProduct2Level6() {
        Product2 prd = new Product2();
        prd.Product_ECCode__c      = 'testSBG004';
        prd.ProductCode            = 'testSBG004';
        prd.Name                   = 'testSBG004';
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(-3);
        prd.Diedatvanink__c        = Date.today().addDays(5);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
        PRC.Name                   = '国械注进20183222249';
        PRC.MedPrdClass__c         = '1';
        PRC.RegisterNoClass_New__c = '';
        PRC.RegisterNoClass_Old__c = '6822';
        PRC.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today().addDays(1);
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '1';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        insert PRC1;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
    }
    @isTest static void test_checkProduct2Level7() {
        Product2 prd = new Product2();
        prd.Product_ECCode__c      = 'testSBG004';
        prd.ProductCode            = 'testSBG004';
        prd.Name                   = 'testSBG004';
        prd.IsActive               = true;
        prd.Level_Category__c      = '';
        prd.demoteer_Sap__c        = Date.today().addDays(-3);
        prd.Diedatvanink__c        = Date.today().addDays(5);
        insert prd;
        Product_Register__c PRC = new Product_Register__c();
        PRC.Name                   = '国械注进20183222249';
        PRC.MedPrdClass__c         = '2';
        PRC.RegisterNoClass_New__c = '';
        PRC.RegisterNoClass_Old__c = '6822';
        PRC.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC.ClinicalProductCode__c = 'YYYY';
        PRC.ValidTo__c             = Date.today().addDays(22);
        PRC.ValidFrom__c           = Date.today().addDays(-22);
        PRC.Stelsedag__c           = Date.today().addDays(1);
        insert PRC;
        Product_Register__c PRC1 = new Product_Register__c();
        PRC1.Name                   = '国械注进20183222249';
        PRC1.MedPrdClass__c         = '2';
        PRC1.RegisterNoClass_New__c = '';
        PRC1.RegisterNoClass_Old__c = '6822';
        PRC1.PrdCompanyAddr__c = '名称:奥林巴斯医疗株式会社;住所:日本国东京都涩谷区幡之谷二丁目43番地2号;联系方式:0081-426-42-2667';
        PRC1.ClinicalProductCode__c = 'YYYY';
        PRC1.ValidTo__c             = Date.today().addDays(22);
        PRC1.ValidFrom__c           = Date.today().addDays(-22);
        PRC1.Stelsedag__c           = Date.today();
        insert PRC1;
        Product_Register_Link__c prl = new Product_Register_Link__c();
        prl.Product2__c              = prd.ID;
        prl.Product_Register__c      = PRC.ID;
        insert prl;
        Product_Register_Link__c prl1 = new Product_Register_Link__c();
        prl1.Product2__c              = prd.ID;
        prl1.Product_Register__c      = PRC1.ID;
        insert prl1;
    }
}