@isTest private class LexOverdueStockControllerTest { static testMethod void testMethod1() { user MyUser_Test; Account myAccount1; User thisUser = [SELECT Id FROM User WHERE Id = :UserInfo.getUserId()]; System.runAs(thisUser) { Profile prof1 = [SELECT Id FROM Profile WHERE Name = '901_经销商社区普通权限_2重验证(ET)']; List rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '販売店']; if (rectCo.size() == 0) { return; } StaticParameter.EscapeConsumableOrderDetail2Trigger = true; RecordType rectCoO = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '病院']; Account olympus = new Account(RecordTypeId = rectCoO.Id, AgentCode_Ext__c = '9999900', Name = 'olympus'); insert olympus; myAccount1 = new Account( name = 'Testaccount001', Dealer_discount__c = 10, RecordTypeId = rectCo[0].Id, AgentCode_Ext__c = '8888888' ); insert myAccount1; Contact core = new Contact( email = 'jplumber@salesforce.com', firstname = 'Joe', lastname = 'Plumber', accountid = myAccount1.id ); insert core; MyUser_Test = new User( ContactId = core.id, Alias = 'newUser', Email = 'newuser@testorg.com', EmailEncodingKey = 'UTF-8', LastName = 'TestUser', LanguageLocaleKey = 'zh_CN', LocaleSidKey = 'zh_CN', ProfileId = prof1.Id, TimeZoneSidKey = 'Asia/Shanghai', UserName = 'testUser@testorg.com', Work_Location__c = '重庆' ); insert MyUser_Test; } System.runAs(MyUser_Test) { //产品数据 Product2 prod07 = new Product2( Name = 'Test07', ProductCode = 'Test07', Asset_Model_No__c = 'Test07', SFDA_Status__c = '有効', Dealer_special_Object__c = true, Packing_list_manual__c = 1, Manual_Entry__c = false ); Product2 prod08 = new Product2( Name = 'Test08', ProductCode = 'Test08', Asset_Model_No__c = 'Test08', SFDA_Status__c = '有効', Dealer_special_Object__c = true, Packing_list_manual__c = 1, Manual_Entry__c = false ); Product2 prod09 = new Product2( Name = 'Test09', ProductCode = 'Test09', Asset_Model_No__c = 'Test09', SFDA_Status__c = '有効', Dealer_special_Object__c = true, Packing_list_manual__c = 1, Manual_Entry__c = false ); insert new List{ prod07, prod08, prod09 }; //制作产品 Product2__c proG = new Product2__c(Name = 'MH-155:白平衡帽', OT_CODE_Text__c = 'Test001', Product2__c = prod07.Id); insert proG; Product2__c proH = new Product2__c(Name = 'MB-677:BNC电缆', OT_CODE_Text__c = 'Test002', Product2__c = prod08.Id); insert proH; Product2__c proF = new Product2__c(Name = 'TooMAJ-643R:水囊鞘管003', OT_CODE_Text__c = 'Test003', Product2__c = prod09.Id); insert proF; //订单 Consumable_order__c order = new Consumable_order__c(); order.Name = 'testMing'; order.Order_status__c = '批准'; order.RecordTypeid = System.Label.RT_ConOrder_Order; order.Dealer_Info__c = myAccount1.id; order.Inventory_date__c = Date.today(); order.Order_type__c = '订单'; order.Order_ProType__c = 'ET'; insert order; //到货 Consumable_order__c order2 = new Consumable_order__c(); order2.Name = 'testMing1'; order2.Order_status__c = '批准'; order2.RecordTypeid = '01210000000c9dqAAA'; order2.Dealer_Info__c = myAccount1.id; order2.Order_type__c = '到货'; order2.Order_ProType__c = 'ET'; insert order2; List conList = new List(); //制作Consumable_order_details__c-------ProductCount // 销售 Consumable_order_details2__c dataForProductCount7 = new Consumable_order_details2__c(); dataForProductCount7.Bar_Code__c = '123456789298k250AAAAA'; dataForProductCount7.Sterilization_limit__c = Date.today().addDays(2); dataForProductCount7.Arrive_date__c = Date.today(); dataForProductCount7.RecordTypeid = System.Label.RT_ConOrderDetail2_Delivery; dataForProductCount7.Consumable_Product__c = proH.id; dataForProductCount7.Asset_Model_No__c = proH.Asset_Model_No__c; dataForProductCount7.Box_Piece__c = '盒'; dataForProductCount7.Used_date__c = Date.today(); dataForProductCount7.Consumable_order_minor__c = order.id; conList.add(dataForProductCount7); // 在库 过期 盒 Consumable_order_details2__c dataForProduct = new Consumable_order_details2__c(); dataForProduct.Bar_Code__c = '123456789498k250BBBBB'; dataForProduct.Sterilization_limit__c = Date.today().addDays(-2); dataForProduct.Arrive_date__c = Date.today(); dataForProduct.RecordTypeid = System.Label.RT_ConOrderDetail2_Delivery; dataForProduct.Consumable_Product__c = proF.id; dataForProduct.Asset_Model_No__c = proF.Asset_Model_No__c; dataForProduct.Box_Piece__c = '盒'; dataForProduct.Consumable_order_minor__c = order.id; conList.add(dataForProduct); // 在库 过期 个 Consumable_order_details2__c dataForProductCount3 = new Consumable_order_details2__c(); dataForProductCount3.Bar_Code__c = '123456788398k250CCCCC'; dataForProductCount3.Sterilization_limit__c = Date.today().addDays(-2); dataForProductCount3.Arrive_date__c = Date.today(); dataForProductCount3.RecordTypeid = System.Label.RT_ConOrderDetail2_Delivery; dataForProductCount3.Consumable_Product__c = proG.id; dataForProductCount3.Asset_Model_No__c = proG.Asset_Model_No__c; dataForProductCount3.Box_Piece__c = '个'; dataForProductCount3.RemoveBox_No__c = 1; dataForProductCount3.Consumable_order_minor__c = order.id; conList.add(dataForProductCount3); insert conList; //过期库存汇总信息 add by Wang Xueqin List conList1 = new List(); Consumable_order_details2__c dataForProductCount4 = new Consumable_order_details2__c(); dataForProductCount4.Bar_Code__c = '1001'; dataForProductCount4.Arrive_date__c = Date.today(); dataForProductCount4.Send_Date__c = null; dataForProductCount4.Used_date__c = null; dataForProductCount4.Return_date__c = null; dataForProductCount4.Lose_Flag__c = false; dataForProductCount4.Cancellation_Flag__c = false; dataForProductCount4.Consumable_Product__c = proG.Id; dataForProductCount4.Consumable_Arrived_order__c = order2.id; dataForProductCount4.Used_account__c = myAccount1.Id; dataForProductCount4.Sterilization_limit__c = Date.today().addDays(-2); dataForProductCount4.Box_Piece__c = '盒'; conList1.add(dataForProductCount4); System.debug('conList1==>' + conList1); //查询所有过期库存 Consumable_order_details2__c dataForProductCount5 = new Consumable_order_details2__c(); dataForProductCount5.Bar_Code__c = '1002'; dataForProductCount5.Arrive_date__c = Date.today(); dataForProductCount5.Send_Date__c = Date.today(); dataForProductCount5.Used_date__c = Date.today(); dataForProductCount5.Return_date__c = null; dataForProductCount5.Lose_Flag__c = false; dataForProductCount5.Cancellation_Flag__c = false; dataForProductCount5.Consumable_Product__c = proG.Id; dataForProductCount5.Consumable_Arrived_order__c = order2.id; dataForProductCount5.Used_account__c = myAccount1.Id; dataForProductCount5.Sterilization_limit__c = Date.today().addDays(-2); dataForProductCount5.Box_Piece__c = '盒'; conList1.add(dataForProductCount5); insert conList1; System.Test.startTest(); List overdueList = new List(); LexOverdueStockController overCon = new LexOverdueStockController(); LexOverdueStockController.init(); List cro = new List(); List croList = LexOverdueStockController.codPageRecords; for (LexOverdueStockController.orderBean i : croList) { i.check = true; } String codPageRecordsLWC = JSON.serialize(LexOverdueStockController.codPageRecords); System.debug('codPageRecordsLWC===>test' + LexOverdueStockController.codPageRecords); LexOverdueStockController.searchorderBean( 'ET', '重庆', 'Testaccount001', '123456789298k250AAAAA\n123456789498k250BBBBB\n123456788398k250CCCCC\n1001', codPageRecordsLWC ); LexOverdueStockController.searchorderBean('ET', '重庆', 'Testaccount001', '', codPageRecordsLWC); //barcode为空 LexOverdueStockController.save(true, codPageRecordsLWC, overdueList); // LexOverdueStockController.save(false,codPageRecordsLWC,overdueList); System.Test.stopTest(); } } }