19626
2023-10-31 fd9df05c48c09b4d7f39a3b401882bda226dedea
force-app/main/default/classes/RepairHandlerTest.cls
@@ -349,7 +349,7 @@
                Username = 'Test' + timenow + '@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP',
                TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja',
                ProfileId = System.Label.ProfileId_SystemAdmin,
                Dept__c = '医疗华北营业本部', Province__c = '北京',Employee_No__c = '12345'); // 2022-04-25   zhangyuheng   update  'Employee_No__c = '12345''
                Dept__c = '医疗华北营业本部', Province__c = '北京',Employee_No__c = '12345111'); // 2022-04-25   zhangyuheng   update  'Employee_No__c = '12345''
        List<Profile> p = [Select Id From Profile Where Name = '2S1_销售医院担当'];
        System.assertEquals(p.size(), 1);
@@ -368,12 +368,15 @@
        }
        return us;
    }
    @isTest static void testHuiShouNGXiuLi1111() {
    }
    //上架前检查NG修理
    @isTest static void testHuiShouNGXiuLi() {
        List<User> us = getUser();
        //防止权限不够的用户执行TestClass报错
        system.runAs(us[0]) {
        System.runAs(us[0]) {
            setupTestData(false);
            FixtureDeliverySlip__c ds1 = new FixtureDeliverySlip__c();
            ds1.Name = 'Test2';
@@ -478,6 +481,167 @@
            }
        }
    }
    //删除修理测试
    @isTest static void testHuiShouNGXiuLi2_1() {
        ControllerUtil.EscapeNFM001Trigger = true;
        StaticParameter.EscapeNFM001Trigger = true;
        StaticParameter.EscapeQISTrigger = false;
        StaticParameter.EscapeNFM001AgencyContractTrigger = true;
        StaticParameter.EscapeNFM001AgencyContractTrigger2 = true;
        StaticParameter.EscapeOppandStaTrigger = true;
        List<User> us = getUser();
        //防止权限不够的用户执行TestClass报错
        system.runAs(us[0]) {
            setupTestData(false);
            // FixtureDeliverySlip__c ds1 = new FixtureDeliverySlip__c();
            // ds1.Name = 'Test2';
            // ds1.Wh_Staff__c = UserInfo.getUserId();
            // ds1.DeliveryCompany__c = '利讯';
            // ds1.Shippment_loaner_time__c = Datetime.now();
            // ds1.Distributor_method__c = '陆运';
            // ds1.DeliveryType__c = '回寄';
            // ds1.DeliveryCompany_SlipNo__c = 'XXX';
            // insert ds1;
            System.assertNotEquals(depId, null);
            QIS_Report__c qisObj = new QIS_Report__c();
            qisObj.Name = '001';
            qisObj.Hospital__c = hospitalId;
            qisObj.Department_Class__c = strategicDepId;
            qisObj.Hospital_Department__c = depId;
            qisObj.Responsible_Person_HP__c = 'test姓名';
            qisObj.Caller_phone__c = '12345678901';
            qisObj.capital_or_consumable__c = '主机';
            qisObj.usage_frequence__c = 1;
            qisObj.cleanning__c = '123';
            qisObj.cds_methods__c = '没有';
            qisObj.Faliour_date__c = Date.today();
            qisObj.failuer_situation__c = '手术-使用后';
            qisObj.problem_detail__c = '11211';
            qisObj.Comment__c = '111';
            qisObj.OCM_judgement__c = '质量问题';
            qisObj.next_action__c = '有偿维修';
            qisObj.Special_follow__c = false;
            qisObj.nonyushohin__c = Assetss[0].Id;
            qisObj.RecordTypeId = '01210000000RLgY';
            Oly_TriggerHandler.bypass('QISTrigger');
            insert qisObj;
            String qisId = qisObj.Id;
            System.debug('qisId============' + qisId);
            Repair__c repairObj1 = new Repair__c();
            repairObj1.Delivered_Product__c = Assetss[0].Id;
            repairObj1.Hospital__c = hospitalId;
            repairObj1.Department_Class__c = strategicDepId;
            repairObj1.Account__c = depId;
            repairObj1.SalesOfficeCode_selection__c = '北京石景山';
            repairObj1.On_site_repair__c = 'RC修理';
            repairObj1.Failure_Occurrence_Date__c = Date.today();
            repairObj1.Return_Without_Repair__c = false;
            repairObj1.QIS_ID__c = qisId;
            System.debug('QIS_ID__c===========================================' + repairObj1.QIS_ID__c);
            Oly_TriggerHandler.clearAllBypasses();
            // insert new Repair__c[]{repairObj1};
            // repairObj1.Return_Without_Repair__c = false;
            // update repairObj1;
            // List<Repair__c> repList = [SELECT Id FROM Repair__c];
            // delete repList;
        }
    }
    //报修子单新建修理
    @isTest static void testHuiShouNGXiuLi2_2() {
        ControllerUtil.EscapeNFM001Trigger = true;
        StaticParameter.EscapeNFM001Trigger = true;
        StaticParameter.EscapeQISTrigger = false;
        StaticParameter.EscapeNFM001AgencyContractTrigger = true;
        StaticParameter.EscapeNFM001AgencyContractTrigger2 = true;
        StaticParameter.EscapeOppandStaTrigger = true;
        List<User> us = getUser();
        //防止权限不够的用户执行TestClass报错
        system.runAs(us[0]) {
            setupTestData(false);
            FixtureDeliverySlip__c ds1 = new FixtureDeliverySlip__c();
            ds1.Name = 'Test2';
            ds1.Wh_Staff__c = UserInfo.getUserId();
            ds1.DeliveryCompany__c = '利讯';
            ds1.Shippment_loaner_time__c = Datetime.now();
            ds1.Distributor_method__c = '陆运';
            ds1.DeliveryType__c = '回寄';
            ds1.DeliveryCompany_SlipNo__c = 'XXX';
            insert ds1;
            System.assertNotEquals(depId, null);
            QIS_Report__c qisObj = new QIS_Report__c();
            qisObj.Name = '001';
            qisObj.Hospital__c = hospitalId;
            qisObj.Department_Class__c = strategicDepId;
            qisObj.Hospital_Department__c = depId;
            qisObj.Responsible_Person_HP__c = 'test姓名';
            qisObj.Caller_phone__c = '12345678901';
            qisObj.capital_or_consumable__c = '主机';
            qisObj.usage_frequence__c = 1;
            qisObj.cleanning__c = '123';
            qisObj.cds_methods__c = '没有';
            qisObj.Faliour_date__c = Date.today();
            qisObj.failuer_situation__c = '手术-使用后';
            qisObj.problem_detail__c = '11211';
            qisObj.Comment__c = '111';
            qisObj.OCM_judgement__c = '质量问题';
            qisObj.next_action__c = '有偿维修';
            qisObj.Special_follow__c = false;
            qisObj.nonyushohin__c = Assetss[0].Id;
            qisObj.RecordTypeId = '01210000000RLgY';
            Oly_TriggerHandler.bypass('QISTrigger');
            insert qisObj;
            String qisId = qisObj.Id;
            RepairSubOrder__c subOrder = new RepairSubOrder__c();
            subOrder.AttachmentDownload__c = true;
            subOrder.AttachmentLink__c = 'https://albsylfw.s3.cn-northwest-1.amazonaws.com.cn/20211220/14/11/30/lessthan12/5e8cb69e-f935-48f5-825e-b8344d60f6d4.zip';
            subOrder.AttachmentName__c = '测试附件下载';
            subOrder.Status__c = '待处理';// 20230201 ljh
            insert subOrder;
            Repair__c repairObj1 = new Repair__c();
            repairObj1.Delivered_Product__c = Assetss[0].Id;
            repairObj1.Hospital__c = hospitalId;
            repairObj1.Department_Class__c = strategicDepId;
            repairObj1.Account__c = depId;
            repairObj1.SalesOfficeCode_selection__c = '北京石景山';
            repairObj1.On_site_repair__c = 'RC修理';
            repairObj1.Send_To_RC_Date__c = Date.today();
            repairObj1.RepairSubOrder__c = subOrder.Id;
            repairObj1.DeliveryLogisticsMode__c = '其他';
            repairObj1.Failure_Occurrence_Date__c = Date.today();
            repairObj1.Return_Without_Repair__c = false;
            Oly_TriggerHandler.clearAllBypasses();
            insert new Repair__c[]{repairObj1};
            repairObj1.SAP_Transfer_time__c = Datetime.now();
            repairObj1.QIS_ID__c = qisId;
            update repairObj1;
            List<Repair__c> repList = [SELECT Id FROM Repair__c];
            delete repList;
        }
    }
    //上架前检查NG修理