From 36d15f189de2e83ce2576715dac30c3c260388dd Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 14 七月 2023 14:47:50 +0800
Subject: [PATCH] fixconflict

---
 force-app/main/default/classes/LexConInvoiceViewControllerTest.cls | 2311 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 2,311 insertions(+), 0 deletions(-)

diff --git a/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls b/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls
index 82f618f..869060a 100644
--- a/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls
+++ b/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls
@@ -1,5 +1,10 @@
 @isTest
+<<<<<<< HEAD
 private class LexConInvoiceViewControllerTest { //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ invoiceId<>null
+=======
+private class LexConInvoiceViewControllerTest
+{     //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ invoiceId<>null
+>>>>>>> LEXCommunityLiJun
     public static user myUser_test;
     public static Account myAccount1;
     public static Account hosp1;
@@ -8,6 +13,7 @@
     public static Account agency2;
     @testSetup
     static void setupTestData() {
+<<<<<<< HEAD
         User thisUser = [SELECT Id FROM User WHERE Id = :UserInfo.getUserId()];
         System.runAs(thisUser) {
             // Profile prof = [select Id from Profile where Name ='901_缁忛攢鍟嗙ぞ鍖烘櫘閫氭潈闄恄2閲嶉獙璇�'];
@@ -440,10 +446,945 @@
             invoiceorder.Name = 'invoice01';
             invoiceorder.Order_type__c = '鍙戠エ';
             invoiceorder.Invoice_status__c = '鑽夋涓�';
+=======
+        User thisUser = [ select Id from User where Id = :UserInfo.getUserId()];
+        System.runAs(thisUser){
+        // Profile prof = [select Id from Profile where Name ='901_缁忛攢鍟嗙ぞ鍖烘櫘閫氭潈闄恄2閲嶉獙璇�'];
+        Profile prof = [select Id from Profile where Name ='901_缁忛攢鍟嗙ぞ鍖烘櫘閫氭潈闄恄2閲嶉獙璇�(ET)'];
+        List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '璨╁2搴�'];
+        if (rectCo.size() == 0) {
+            return;
+        }
+        List<RecordType> rectHos = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+        if (rectHos.size() == 0) {
+            return;
+        }
+        //浜岀骇缁忛攢鍟哠econdDealer
+        agency1 = new Account(name='Testhosp001',Dealer_discount__c =10,RecordTypeId = rectCo[0].Id);
+        agency2 = new Account(name='Testhosp002',Dealer_discount__c =10,RecordTypeId = rectCo[0].Id);
+        //缁忛攢鍟�
+        myAccount1 = new Account(name='Testaccount002',Dealer_discount__c =20,RecordTypeId = rectCo[0].Id);
+        insert agency1;
+        insert agency2;
+        insert myAccount1;
+        //瀹㈡埛鍚岺ospitalInfo
+        hosp1 = new Account(name='Testhosp001',Dealer_discount__c =10,RecordTypeId = rectHos[0].Id);
+        Account hosp2 = new Account(name='Testhosp002',Dealer_discount__c =10,RecordTypeId = rectHos[0].Id);
+        insert hosp1;
+
+       Dealer_elationship__c dealerelationship = new Dealer_elationship__c(Dealer_principal__c = myAccount1.id,Dealer_subordinate__c = agency1.id);
+        insert dealerelationship;
+        Dealer_elationship__c dealerelationship1 = new Dealer_elationship__c(Dealer_principal__c = myAccount1.id,Dealer_subordinate__c = agency2.id);
+        insert dealerelationship1;
+        
+        Agency_Hospital_Link__c agencyHospitalLink1 = new Agency_Hospital_Link__c(Hospital__c = hosp1.id,Agency__c = myAccount1.id);
+         insert agencyHospitalLink1;
+
+        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 = prof.Id,TimeZoneSidKey='Asia/Shanghai', UserName='testUser@testorg.com',Work_Location__c ='閲嶅簡');
+        insert MyUser_Test;
+    }
+
+
+    }
+    static testMethod void conInvoiceViewTestedit_1(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+    
+
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            // invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            
+            Consumable_order__c testList1 = new Consumable_order__c(
+            Name='Test1',
+            Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',
+            SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='鑽夋涓�',
+            Order_type__c='浼犵エ',
+            Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+            Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            System.Test.startTest();
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = invoiceorder.Id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Consumable_product__c = pro1.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2,orderdet3};
+
+        
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.saveAttachment(JSON.serialize(LexConInvoiceViewController.attachmentRecoeds),invoiceorder.Id);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            LexConInvoiceViewController.deleteButton(testList1.Id,testList1);
+            LexConInvoiceViewController.deleteButton('234567',testList1);
+            // LexConInvoiceViewController.saveFile(invoiceorder.Id,'Test','TmFtZSxTdW1tb25zRm9yRGlyY3Rpb25fX2MsSG9zcGl0YWxDb2RlLE9yZGVyX0Zvckhvc3BpdGFsX19jLE9yZGVyX0ZvckN1c3RvbWVyVGV4dF9fYyxPcmRlcl9Gb3JEZWFsZXJfX2MsQmFyX0NvZGVfX2MsU2hpcG1lbnRfQ291bnRfX2MsRGVsaXZlcnlfTGlzdF9STUJfX2MsQm94X1BpZWNlX19jLFVuaXRwcmljZV9Ub19hZ2VuY3lfX2MsT3V0Ym91bmRfRGF0ZV9fYyxMb3NlX3JlYXNvbl9fYw0KREItRlkyMDI0LTA2LVozMTAwMDIs55u05o6l6ZSA5ZSu57uZ5Yy76ZmiLDgxMDU2NDAs5a6955S45Lic5qGl5bq35aSN5Yy76ZmiLOa2iOWMluenkSwsMTY4NjIwMzI1NDQ2ODI1MFZWR0lVLDEsMjAwMCznm5IsMjAsMjAyMy82Lzgs5Lii5aSx5Y6f5ZugDQpEQi1GWTIwMjQtMDYtWjMxMDAwMyznm7TmjqXplIDllK7nu5nljLvpmaIsODEwNTY0MCzlrr3nlLjkuJzmoaXlurflpI3ljLvpmaIs5raI5YyW56eRLCwxNjg2MjAzMjU2MDk4MjUwUkVKT1EsMSwzMDAwLOebkiwyMCwyMDIzLzYvOCzkuKLlpLHljp%2Flm6ANCkRCLUZZMjAyNC0wNi1aMzEwMDA0LOebtOaOpemUgOWUrue7meWMu%2BmZoiw4MTA1NjQwLOWuveeUuOS4nOahpeW6t%2BWkjeWMu%2BmZoizmtojljJbnp5EsLDE2ODYyMDMyNTc2NTcyNTBHU0ZTQiwxLDQwMDAs55uSLDIwLDIwMjMvNi84LOS4ouWkseWOn%2BWboA0K');
+            try{
+                LexConInvoiceViewController.saveFile(invoiceorder.Id,'Test','');
+            }catch(Exception e){
+                system.debug('Test');
+
+            }
+            LexConInvoiceViewController.outbound = testList2;
+            LexConInvoiceViewController.getInvoiceName();
+            // LexConInvoiceViewController.shipmentAccount = '222';
+            Map<String, Decimal> ordermx1defaultMap = new Map<String, Decimal>();
+            LexConInvoiceViewController.ordermx1defaultMap = ordermx1defaultMap;
+            Map<String, String> deleteMap = new Map<String, String>();
+            LexConInvoiceViewController.deleteOutboundorder(deleteMap,'');
+            // LexConInvoiceViewController.invoiceOrderRecoedsCount
+            LexConInvoiceViewController.orderby = new List<String>{ 'Outbound_Date__c', 'Name', 'ShipmentAccount__c' };
+            LexConInvoiceViewController.sortKey  = 'test';
+            LexConInvoiceViewController.preSortKey = 'test';
+            LexConInvoiceViewController.sortOrderAsc = false;
+            LexConInvoiceViewController.sortOrder = new List<String>{ 'Outbound_Date__c', 'Name', 'ShipmentAccount__c' };
+            List<LexConInvoiceViewController.InvoiceOrderInfo> test1 = new List<LexConInvoiceViewController.InvoiceOrderInfo>();
+            List<String> chukudanID = new List<String>();
+            chukudanID.add(testList2.Id);
+            chukudanID.add(testList1.Id);
+            LexConInvoiceViewController.newinvoicedetails1(chukudanID);
+            Map<String, String> insertDetMap = new Map<String, String>();
+            insertDetMap.put('Outboundorder_Code_link__c',testList1.Id);
+            // LexConInvoiceViewController.outOrderchange(insertDetMap);
+            LexConInvoiceViewController.getdefaultMapinfo(chukudanID);
+        
+
+
+
+            System.Test.stopTest();
+            
+        }
+    }
+
+
+    //鏂板缓鍙戠エ invoiceId=null
+
+    static testMethod void conInvoiceViewTestedit_2(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            // invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+
+            Consumable_order__c testList1 = new Consumable_order__c(
+                Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+            Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+
+            System.Test.startTest();
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+
+
+            // LexConInvoiceViewController.HospitalInfo = hosp1.id;
+            System.Test.stopTest();
+      
+        }
+    }
+    //鏂板缓鍙戠エ invoiceId=null error check
+  
+    static testMethod void conInvoiceViewTestedit_3(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            insert new Product2__c[] {pro1};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
             invoiceorder.Invoice_Date__c = Date.today();
             invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
             //invoiceorder.Order_ForHospital__c =hosp1.Id;
             //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+
+            Consumable_order__c testList1 = new Consumable_order__c(
+                Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+
+            PageReference page = new PageReference('/apex/ConInvoiceView?invoiceId='+invoiceorder.Id+'&KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+            System.Test.startTest();
+
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+
+
+
+            // LexConInvoiceViewController.init();
+
+            LexConInvoiceViewController.invoiceId =invoiceorder.Id;
+            // LexConInvoiceViewController.coc.SummonsForDirction__c = '鐩存帴閿�鍞粰鍖婚櫌';
+            LexConInvoiceViewController.HospitalInfo = hosp1.id;
+            System.debug('===>hosp1.id'+hosp1.id);
+            LexConInvoiceViewController.invoiceId =null;
+            System.Test.stopTest();
+
+      
+        }
+    }
+
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エinvoiceId== NULL and deliveryId== NULL
+    static testMethod void conInvoiceViewTestinit(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+    
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            //Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='鑽夋涓�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            //Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            
+            Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            //insert new Consumable_order__c[]{testList1,testList2};
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable2',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable2;
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+            //鍑哄簱鍗�2鏄庣粏1
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test1_002001';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = testList2.id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Shipment_Count__c = 1;
+            orderdet3.Consumable_product__c = pro2.Id;
+
+             //鍑哄簱鍗�2鏄庣粏2
+            Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+            orderdet4.Name = 'Test1_002002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet4.Consumable_order__c = testList2.id;
+            orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet4.Consumable_count__c = 1;
+            orderdet4.Shipment_Count__c = 1;
+            orderdet4.Consumable_product__c = pro2.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2,orderdet3,orderdet4};
+             //闄勪欢
+            Consumable_accessories_invoice__c caic= new Consumable_accessories_invoice__c();
+            caic.Attachment_ID__c = acc.Id;
+            caic.Accessories_type__c = '鍙戠エ鍜屾槑缁�';
+            caic.Invoice_code__c = invoiceorder.id;
+            insert caic;
+            PageReference page = new PageReference('/apex/ConInvoiceView?KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+
+            //contest.deliveryId=testList1.id;
+            System.Test.startTest();
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            System.Test.stopTest();
+        }
+    }
+
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エinvoiceId== NULL and deliveryId<> NULL
+    static testMethod void conInvoiceViewTestinit_1(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            //Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='鑽夋涓�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            //Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            
+            Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            //insert new Consumable_order__c[]{testList1,testList2};
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable2',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable2;
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+            //鍑哄簱鍗�2鏄庣粏1
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test1_002001';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = testList2.id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Shipment_Count__c = 1;
+            orderdet3.Consumable_product__c = pro2.Id;
+
+             //鍑哄簱鍗�2鏄庣粏2
+            Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+            orderdet4.Name = 'Test1_002002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet4.Consumable_order__c = testList2.id;
+            orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet4.Consumable_count__c = 1;
+            orderdet4.Shipment_Count__c = 1;
+            orderdet4.Consumable_product__c = pro2.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2,orderdet3,orderdet4};
+             //闄勪欢
+            Consumable_accessories_invoice__c caic= new Consumable_accessories_invoice__c();
+            caic.Attachment_ID__c = acc.Id;
+            caic.Accessories_type__c = '鍙戠エ鍜屾槑缁�';
+            caic.Invoice_code__c = invoiceorder.id;
+            insert caic;
+            PageReference page = new PageReference('/apex/ConInvoiceView?invoiceId='+invoiceorder.id);
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+
+          
+            // contest.deliveryId=testList1.id;
+            System.Test.startTest();
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            System.Test.stopTest();
+   
+        }
+    }
+
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エinvoiceId<> NULL
+    static testMethod void conInvoiceViewTestinit_2(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            //Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='鑽夋涓�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            //Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            
+            Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            //insert new Consumable_order__c[]{testList1,testList2};
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable2',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable2;
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+            //鍑哄簱鍗�2鏄庣粏1
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test1_002001';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = testList2.id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Shipment_Count__c = 1;
+            orderdet3.Consumable_product__c = pro2.Id;
+
+             //鍑哄簱鍗�2鏄庣粏2
+            Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+            orderdet4.Name = 'Test1_002002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet4.Consumable_order__c = testList2.id;
+            orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet4.Consumable_count__c = 1;
+            orderdet4.Shipment_Count__c = 1;
+            orderdet4.Consumable_product__c = pro2.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2,orderdet3,orderdet4};
+             //闄勪欢
+            Consumable_accessories_invoice__c caic= new Consumable_accessories_invoice__c();
+            caic.Attachment_ID__c = acc.Id;
+            caic.Accessories_type__c = '鍙戠エ鍜屾槑缁�';
+            caic.Invoice_code__c = invoiceorder.id;
+            insert caic;
+            // PageReference page = new PageReference('/apex/ConInvoiceView?KeyWords=Redirect');
+            // page.setRedirect(true);
+            // System.Test.setCurrentPage(page);
+
+            // ConInvoiceViewController conTest = new ConInvoiceViewController();
+            // contest.deliveryId=testList1.id;
+            // conTest.invoiceId =invoiceorder.Id;
+            System.Test.startTest();
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+
+
+
+
+            // conTest.init();
+
+            //System.assertEquals(false, conTest.getdone());
+            //System.assertEquals(false, conTest.getExistOutbound());
+            //System.assertEquals('invoice01', conTest.getInvoiceName());
+            //System.assertEquals(2, conTest.invoiceOrderRecoedsCount);
+            // conTest.InvoiceorderSearch();
+    
+            // conTest.SortLimited();
+            System.Test.stopTest();
+   
+        }
+    }
+    static testMethod void conInvoiceViewTestoutOrderchange(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            
+            Consumable_order__c testList1 = new Consumable_order__c(
+                Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            System.Test.startTest();
+            insert testList1;
+            insert testList2;
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2};
+
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            System.Test.stopTest();
+      
+        }
+    }
+
+    static testMethod void conInvoiceViewTestgetdefaultMapinfo(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            // invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            
+            Consumable_order__c testList1 = new Consumable_order__c(
+                Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            System.Test.startTest();
+            insert testList1;
+            insert testList2;
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2};
+
+            PageReference page = new PageReference('/apex/ConInvoiceView?invoiceId='+invoiceorder.Id+'&KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+
+
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            System.Test.stopTest();
+        }
+    }
+
+   //浠庡嚭搴撳崟鐩存帴寮�绁�
+   static testMethod void conInvoiceViewRedirectTest(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+    system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+>>>>>>> LEXCommunityLiJun
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+<<<<<<< HEAD
             invoiceorder.Dealer_Info__c = acc.Id;
             //invoiceorder.Order_ProType__c = 'ET';
             insert invoiceorder;
@@ -535,10 +1476,107 @@
             LexConInvoiceViewController.HospitalInfo = hosp1.id;
             System.debug('===>hosp1.id' + hosp1.id);
             LexConInvoiceViewController.invoiceId = null;
+=======
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            //Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='鑽夋涓�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            //Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            
+            Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            testList1.Order_date__c = Date.today().addDays(2);
+            testList2.Order_date__c = Date.today().addDays(2);
+            testList1.Deliver_date__c = Date.today();
+            testList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            //insert new Consumable_order__c[]{testList1,testList2};
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable2',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable2;
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_orderdetails__c orderdet2 = new Consumable_orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = testList1.Id;
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet2.Consumable_count__c = 1;
+            orderdet2.Consumable_product__c = pro1.Id;
+            //鍑哄簱鍗�2鏄庣粏1
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test1_002001';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = testList2.id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Shipment_Count__c = 1;
+            orderdet3.Consumable_product__c = pro2.Id;
+
+             //鍑哄簱鍗�2鏄庣粏2
+            Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+            orderdet4.Name = 'Test1_002002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet4.Consumable_order__c = testList2.id;
+            orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet4.Consumable_count__c = 1;
+            orderdet4.Shipment_Count__c = 1;
+            orderdet4.Consumable_product__c = pro2.Id;
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2,orderdet3,orderdet4};
+             //闄勪欢
+            Consumable_accessories_invoice__c caic= new Consumable_accessories_invoice__c();
+            caic.Attachment_ID__c = acc.Id;
+            caic.Accessories_type__c = '鍙戠エ鍜屾槑缁�';
+            caic.Invoice_code__c = invoiceorder.id;
+            insert caic;
+            PageReference page = new PageReference('/apex/ConInvoiceView?deliveryId='+testList1.Id+'&KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+
+           
+            System.Test.startTest();
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            LexConInvoiceViewController.saveAttachment(JSON.serialize(LexConInvoiceViewController.attachmentRecoeds),invoiceorder.Id);
+            // LexConInvoiceViewController.saveAttachment(JSON.serialize(caic),invoiceorder.Id);
+>>>>>>> LEXCommunityLiJun
             System.Test.stopTest();
         }
     }
 
+<<<<<<< HEAD
     //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エinvoiceId== NULL and deliveryId== NULL
     static testMethod void conInvoiceViewTestinit() {
         user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
@@ -659,21 +1697,130 @@
             orderdet2.Name = 'Test1_001002';
             //orderdet2.Consumable_principal__c = testList2.Id;
             orderdet2.Consumable_order__c = testList1.Id;
+=======
+    
+    //鎻愪氦
+    static testMethod void conInvoiceViewTestapproval(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false,Packing_list_manual__c = 5);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            //Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='鑽夋涓�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            //Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',SummonsStatus_c__c='宸插畬鎴�',Order_ForHospital__c =hosp1.Id,SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ',Order_ForDealer__c = agency1.Id, Dealer_info__c=myAccount1.Id,ConInvoice_Code__c = invoiceorder.id);
+            
+            Consumable_order__c testList1 = new Consumable_order__c(Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                RecordTypeId = System.Label.RT_ConOrder_Sale,
+                Dealer_info__c=acc.Id);
+            Consumable_order__c testList2 = new Consumable_order__c(
+                Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                RecordTypeId = System.Label.RT_ConOrder_Sale,
+                Dealer_info__c=acc.Id);
+            testList1.Order_date__c = Date.today().addDays(2);
+            testList2.Order_date__c = Date.today().addDays(2);
+            testList1.Deliver_date__c = Date.today();
+            testList2.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            //insert new Consumable_order__c[]{testList1,testList2};
+       
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable2',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable2;
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_Orderdetails__c orderdet1 = new Consumable_Orderdetails__c();
+            orderdet1.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet1.Consumable_count__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+            orderdet1.Invoiced_Count__c = 10;
+            orderdet1.Delivery_List_RMB__c = 200;
+            orderdet1.Box_Piece__c = '鐩�';
+            orderdet1.Invoice_Unit__c = '涓�';
+            // orderdet1.Shipment_Count__c = 50;
+            // orderdet1.Invoiced_Procount__c = 5;
+            // orderdet1.RrturnPro_count__c = 5;
+           
+
+
+
+            Consumable_Orderdetails__c orderdet12 = new Consumable_Orderdetails__c();
+            orderdet12.Name = 'Test1_001001';
+            //orderdet1.Consumable_principal__c = testList1.Id;
+            orderdet12.Consumable_order__c = testList1.Id;
+            orderdet12.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet12.Consumable_count__c = 1;
+            orderdet12.Consumable_product__c = pro1.Id;
+            orderdet12.Invoiced_Count__c = 30;
+            orderdet12.Delivery_List_RMB__c = 200;
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_Orderdetails__c orderdet2 = new Consumable_Orderdetails__c();
+            orderdet2.Name = 'Test1_001002';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet2.Consumable_order__c = invoiceorder.Id;
+>>>>>>> LEXCommunityLiJun
             orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
             orderdet2.Consumable_count__c = 1;
             orderdet2.Consumable_product__c = pro1.Id;
             //鍑哄簱鍗�2鏄庣粏1
+<<<<<<< HEAD
             Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
             orderdet3.Name = 'Test1_002001';
             //orderdet2.Consumable_principal__c = testList2.Id;
             orderdet3.Consumable_order__c = testList2.id;
+=======
+            Consumable_Orderdetails__c orderdet3 = new Consumable_Orderdetails__c();
+            orderdet3.Name = 'Test1_002001';
+            //orderdet2.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = invoiceorder.Id;
+>>>>>>> LEXCommunityLiJun
             orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
             orderdet3.Consumable_count__c = 1;
             orderdet3.Shipment_Count__c = 1;
             orderdet3.Consumable_product__c = pro2.Id;
 
+<<<<<<< HEAD
             //鍑哄簱鍗�2鏄庣粏2
             Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+=======
+             //鍑哄簱鍗�2鏄庣粏2
+             Consumable_Orderdetails__c orderdet4 = new Consumable_Orderdetails__c();
+>>>>>>> LEXCommunityLiJun
             orderdet4.Name = 'Test1_002002';
             //orderdet2.Consumable_principal__c = testList2.Id;
             orderdet4.Consumable_order__c = testList2.id;
@@ -681,13 +1828,92 @@
             orderdet4.Consumable_count__c = 1;
             orderdet4.Shipment_Count__c = 1;
             orderdet4.Consumable_product__c = pro2.Id;
+<<<<<<< HEAD
             insert new List<Consumable_orderdetails__c>{ orderdet1, orderdet2, orderdet3, orderdet4 };
             //闄勪欢
             Consumable_accessories_invoice__c caic = new Consumable_accessories_invoice__c();
+=======
+            insert new Consumable_Orderdetails__c[]{orderdet1,orderdet2,orderdet3,orderdet4,orderdet12};
+          
+            List<String> conorList = new List<String>();
+            conorList.add(testList1.Id);
+
+            // List<Consumable_Orderdetails__c> outOrderdet1List1 = new List<Consumable_Orderdetails__c>();
+            // outOrderdet1List1.add(orderdet1);
+          
+            List<Consumable_Orderdetails__c> outOrderdet1List = [
+                SELECT
+                    Id,
+                    Name,
+                    Consumable_order__c,
+                    Consumable_order__r.Name,
+                    Asset_Model_No__c,
+                    Consumable_Product__r.Asset_Model_No__c,
+                    Shipment_Count__c,
+                    RrturnPro_count__c,
+                    Delivery_List_RMB__c,
+                    InvoicedProCost_RMB__c,
+                    Invoiced_Procount__c,
+                    Invoiced_Count__c,
+                    Invoice_Unitprice__c,
+                    InvoiceProNot_count__c,
+                    Invoice_Cost_RMB__c,
+                    Invoice_No__c,
+                    Box_Piece__c,
+                    Invoice_Unit__c,
+                    ProductPacking_list_manual__c
+                FROM Consumable_Orderdetails__c
+                WHERE Id = :orderdet1.Id
+            ];
+          
+            System.debug('outOrderdet1List'+outOrderdet1List);
+            List<Consumable_Orderdetails__c> outOrderdet1List1 = [
+                SELECT
+                    Id,
+                    Name,
+                    Consumable_order__c,
+                    Consumable_order__r.Name,
+                    Asset_Model_No__c,
+                    Consumable_Product__r.Asset_Model_No__c,
+                    Shipment_Count__c,
+                    RrturnPro_count__c,
+                    Delivery_List_RMB__c,
+                    InvoicedProCost_RMB__c,
+                    Invoiced_Procount__c,
+                    Invoiced_Count__c,
+                    Invoice_Unitprice__c,
+                    InvoiceProNot_count__c,
+                    Invoice_Cost_RMB__c,
+                    Invoice_No__c,
+                    Box_Piece__c,
+                    Invoice_Unit__c,
+                    ProductPacking_list_manual__c
+                FROM Consumable_Orderdetails__c
+                WHERE Id = :orderdet12.Id
+            ];
+
+            Map<String, Consumable_Orderdetails__c> tempCocMap = new Map<String, Consumable_Orderdetails__c>();
+            Map<String, Consumable_Orderdetails__c> tempCocMap1 = new Map<String, Consumable_Orderdetails__c>();
+            for (Consumable_Orderdetails__c cocTemp : outOrderdet1List) {
+                if(cocTemp.Consumable_order__c + cocTemp.Asset_Model_No__c!=null){
+                    tempCocMap.put(cocTemp.Consumable_order__c + cocTemp.Asset_Model_No__c, cocTemp);
+                }
+            }
+            for (Consumable_Orderdetails__c cocTemp : outOrderdet1List1) {
+                if(cocTemp.Consumable_order__c + cocTemp.Asset_Model_No__c!=null){
+                    tempCocMap1.put(cocTemp.Consumable_order__c + cocTemp.Asset_Model_No__c, cocTemp);
+                }
+            }
+
+            System.debug('tempCocMap===>'+tempCocMap);
+             //闄勪欢
+            Consumable_accessories_invoice__c caic= new Consumable_accessories_invoice__c();
+>>>>>>> LEXCommunityLiJun
             caic.Attachment_ID__c = acc.Id;
             caic.Accessories_type__c = '鍙戠エ鍜屾槑缁�';
             caic.Invoice_code__c = invoiceorder.id;
             insert caic;
+<<<<<<< HEAD
             PageReference page = new PageReference('/apex/ConInvoiceView?KeyWords=Redirect');
             page.setRedirect(true);
             System.Test.setCurrentPage(page);
@@ -729,10 +1955,33 @@
                 agency1.id,
                 invoiceOrderRecoeds
             );
+=======
+
+        
+            System.Test.startTest();
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            LexConInvoiceViewController.approval(conorList,tempCocMap,invoiceorder.id);
+            LexConInvoiceViewController.approval(conorList,tempCocMap1,invoiceorder.id);
+>>>>>>> LEXCommunityLiJun
             System.Test.stopTest();
         }
     }
 
+<<<<<<< HEAD
     //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エinvoiceId== NULL and deliveryId<> NULL
     static testMethod void conInvoiceViewTestinit_1() {
         user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
@@ -976,10 +2225,185 @@
             invoiceorder.Name = 'invoice01';
             invoiceorder.Order_type__c = '鍙戠エ';
             invoiceorder.Invoice_status__c = '鑽夋涓�';
+=======
+    //鎻愪氦鍙戠エ
+    static testMethod void conInvoice_approval(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        Account hosp1 = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Oly_TriggerHandler.bypass('ConsumableAssetHander');
+        Oly_TriggerHandler.bypass('Oly_TriggerHandler');
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+
+
+            //鍑哄簱鍗�1
+            Consumable_order__c testList1 = new Consumable_order__c(
+            Name='Test1',
+            recordtypeid = System.Label.RT_ConOrder_Sale,
+            Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',
+            SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='鑽夋涓�',
+            Order_type__c='浼犵エ',
+            // Order_ForHospital__c=hosp1.Id,
+            Dealer_Info__c = acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            insert testList1;
+
+            //鍑哄簱鍗�1鏄庣粏1
+            Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+            orderdet1.Name = 'Test1_001';
+            orderdet1.Consumable_order__c = testList1.Id;
+            orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Sale;
+            orderdet1.Shipment_Count__c = 1;
+            orderdet1.Delivery_List_RMB__c = 1;
+            orderdet1.Consumable_product__c = pro1.Id;
+            orderdet1.Shipment_Count__c = 50;
+            orderdet1.Invoiced_Procount__c = 5;
+            orderdet1.RrturnPro_count__c = 5;  
+            insert orderdet1;
+            List<String> conorList = new List<String>();
+            conorList.add(testList1.Id);
+            //鍑哄簱鍗�1鏄庣粏2
+            Consumable_order_details2__c orderdet2 = new Consumable_order_details2__c();
+            orderdet2.Name = 'Test1_001001';
+            orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+            orderdet2.Consumable_Sale_order__c = testList1.Id;
+            orderdet2.Deliver_date__c = Date.today();
+            orderdet2.Arrive_date__c = Date.today();
+            orderdet2.Used_date__c = Date.today();
+            orderdet2.Consumable_product__c = pro1.Id;
+            insert orderdet2;
+
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            // invoiceorder.Order_ForHospital__c =hosp1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            insert invoiceorder;
+
+            //鍙戠エ鏄庣粏1
+            Consumable_orderdetails__c invoicedet1 = new Consumable_orderdetails__c();
+            invoicedet1.Name = 'invoice01_01';
+            invoicedet1.Consumable_order__c = invoiceorder.Id;
+            invoicedet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            invoicedet1.Invoiced_Count__c = 1;
+            invoicedet1.Invoice_Unitprice__c = 1;
+            invoicedet1.Consumable_product__c = pro1.Id;
+            invoicedet1.Invoicedet1_OD_link__c = testList1.Id;
+            insert invoicedet1;
+
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            List<Consumable_Orderdetails__c> outOrderdet1List = [
+                SELECT
+                    Id,
+                    Name,
+                    Consumable_order__c,
+                    Consumable_order__r.Name,
+                    Asset_Model_No__c,
+                    Consumable_Product__r.Asset_Model_No__c,
+                    Shipment_Count__c,
+                    RrturnPro_count__c,
+                    Delivery_List_RMB__c,
+                    InvoicedProCost_RMB__c,
+                    Invoiced_Procount__c,
+                    Invoiced_Count__c,
+                    Invoice_Unitprice__c,
+                    InvoiceProNot_count__c,
+                    Invoice_Cost_RMB__c,
+                    Invoice_No__c,
+                    Box_Piece__c,
+                    Invoice_Unit__c,
+                    ProductPacking_list_manual__c
+                FROM Consumable_Orderdetails__c
+                WHERE Id = :orderdet1.Id
+            ];
+            Map<String, Consumable_Orderdetails__c> tempCocMap1 = new Map<String, Consumable_Orderdetails__c>();
+            for (Consumable_Orderdetails__c cocTemp : outOrderdet1List) {
+                if(cocTemp.Consumable_order__c + cocTemp.Asset_Model_No__c!=null){
+                    tempCocMap1.put(cocTemp.Consumable_order__c + cocTemp.Asset_Model_No__c, cocTemp);
+                }
+            }
+          
+    
+            System.Test.startTest();
+          
+
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',orderdet1.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  acc.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,acc.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,acc.id,invoiceOrderRecoeds);
+            LexConInvoiceViewController.approval(conorList,tempCocMap1,invoiceorder.id);
+            LexConInvoiceViewController.approval(conorList,tempCocMap1,'2345678');
+
+
+
+
+
+            // conTest.init();
+
+            // System.assertEquals(1, conTest.invoiceOrderRecoeds.size());
+            // conTest.approval();
+            System.Test.stopTest();
+
+        }
+    }
+
+    //CHAN-BSS5SQ    update by rentongxiao 2020-08-26  start
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ invoiceId<>null
+    static testMethod void rentestreopen(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鎻愪氦';
+>>>>>>> LEXCommunityLiJun
             invoiceorder.Invoice_Date__c = Date.today();
             invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
             //invoiceorder.Order_ForHospital__c =hosp1.Id;
             //invoiceorder.Order_ForDealer__c = agency1.Id;
+<<<<<<< HEAD
             invoiceorder.Dealer_Info__c = acc.Id;
             insert invoiceorder;
 
@@ -1030,6 +2454,50 @@
                 Invoice_Code_link__c = invoiceorder.Id
             );
             insert order_LinkTable2;
+=======
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            
+            Consumable_order__c testList1 = new Consumable_order__c(
+                Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList3 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList3.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            TestList3.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            insert testList3;
+            System.Test.startTest();
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            Consumable_order_LinkTable__c order_LinkTable3 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList3.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            insert order_LinkTable2;
+            insert order_LinkTable3;
+
+>>>>>>> LEXCommunityLiJun
             //鍑哄簱鍗�1鏄庣粏1
             Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
             orderdet1.Name = 'Test1_001001';
@@ -1047,6 +2515,7 @@
             orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
             orderdet2.Consumable_count__c = 1;
             orderdet2.Consumable_product__c = pro1.Id;
+<<<<<<< HEAD
             //鍑哄簱鍗�2鏄庣粏1
             Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
             orderdet3.Name = 'Test1_002001';
@@ -1226,6 +2695,169 @@
                 Invoice_Code_link__c = invoiceorder.Id
             );
             insert order_LinkTable1;
+=======
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2};
+
+            //鍑哄簱鍗�2鏄庣粏1
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test3_001002';
+            //orderdet3.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = testList2.Id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Consumable_product__c = pro1.Id;
+            insert orderdet3;
+
+            //鍑哄簱鍗�3鏄庣粏1
+            Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+            orderdet4.Name = 'Test3_001002';
+            //orderdet4.Consumable_principal__c = testList2.Id;
+            orderdet4.Consumable_order__c = testList3.Id;
+            orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet4.Consumable_count__c = 1;
+            orderdet4.Consumable_product__c = pro1.Id;
+            insert orderdet4;
+
+            PageReference page = new PageReference('/apex/ConInvoiceView?invoiceId='+invoiceorder.Id+'&reopen=isreopen&KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+
+
+
+
+            // ConInvoiceViewController conTest = new ConInvoiceViewController();
+            
+            // conTest.init();
+ 
+            // conTest.invoiceId =invoiceorder.Id;
+            // conTest.coc.SummonsForDirction__c = '鐩存帴閿�鍞粰鍖婚櫌';
+            // conTest.HospitalInfo = hosp1.id;
+            // //conTest.SecondDealer = agency1.id;
+            // //conTest.coc.Order_ForDealer__c = agency1.id;
+            // conTest.coc.Name = 'invoice002';
+            // conTest.coc.Order_ForCustomerText__c = 'AA';
+            // conTest.coc.Order_ForHospital__c = hosp1.id;
+            // conTest.coc.Invoice_Date__c = Date.today();
+
+            
+            // //conTest.SortLimited();
+            // //conTest.InvoiceorderSearch();
+            // System.assertEquals(3, conTest.invoiceOrderRecoeds.size());
+            // conTest.invoiceOrderRecoeds[0].esd.Order_ForCustomerText__c = 'AA';
+            // conTest.invoiceOrderRecoeds[0].esd.Order_ForHospital__c =hosp1.Id;
+            // conTest.invoiceOrderRecoeds[0].esd.Order_ForDealer__c = agency1.id;
+
+            // conTest.invoiceOrderRecoeds[1].esd.Order_ForCustomerText__c = 'AA';
+            // conTest.invoiceOrderRecoeds[1].esd.Order_ForHospital__c =hosp1.Id;
+            // conTest.invoiceOrderRecoeds[1].esd.Order_ForDealer__c = agency1.id;
+
+
+            // conTest.invoiceOrderRecoeds[2].esd.Order_ForCustomerText__c = 'AA';
+            // conTest.invoiceOrderRecoeds[2].esd.Order_ForHospital__c =hosp1.Id;
+            // conTest.invoiceOrderRecoeds[2].esd.Order_ForDealer__c = agency1.id;
+            
+            // conTest.invoiceOrderRecoeds[0].check= true;
+            // conTest.invoiceOrderRecoeds[1].check= false;
+            // conTest.invoiceOrderRecoeds[2].check= true;
+
+            // conTest.save();
+            // //System.assertEquals('123',conTest.testTmp);
+            // conTest.nvoiceorderremind();
+            // conTest.saveAttachment();
+
+            // conTest.getdone();
+            // conTest.getExistOutbound();
+            // conTest.getInvoiceName();
+            System.Test.stopTest();
+      
+        }
+    }
+
+    //CHAN-BSS5SQ    update by rentongxiao 2020-08-26  end
+     //CHAN-BSS5SQ    update by rentongxiao 2020-08-26  start
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ invoiceId<>null
+    static testMethod void rentestreopen001(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+            //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鎻愪氦';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            //invoiceorder.Order_ForHospital__c =hosp1.Id;
+            //invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            
+            Consumable_order__c testList1 = new Consumable_order__c(
+                Name='Test1',
+                Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',
+                SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='鑽夋涓�',
+                Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList3 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+                SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+                Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+                Dealer_info__c=acc.Id);
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList3.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+            TestList3.Deliver_date__c = Date.today();
+            insert testList1;
+            insert testList2;
+            insert testList3;
+            System.Test.startTest();
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+            Consumable_order_LinkTable__c order_LinkTable2 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList2.Id,Invoice_Code_link__c =invoiceorder.Id);
+            Consumable_order_LinkTable__c order_LinkTable3 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList3.Id,Invoice_Code_link__c =invoiceorder.Id);
+            insert order_LinkTable1;
+            insert order_LinkTable2;
+            insert order_LinkTable3;
+>>>>>>> LEXCommunityLiJun
 
             //鍑哄簱鍗�1鏄庣粏1
             Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
@@ -1244,6 +2876,7 @@
             orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
             orderdet2.Consumable_count__c = 1;
             orderdet2.Consumable_product__c = pro1.Id;
+<<<<<<< HEAD
             insert new List<Consumable_orderdetails__c>{ orderdet1, orderdet2 };
 
             LexConInvoiceViewController.init(invoiceorder.id, 'Redirect', testList2.Id);
@@ -2680,17 +4313,129 @@
             testList3.Order_status__c = '鑽夋涓�';
             testList3.Order_type__c = '浼犵エ';
             testList3.Dealer_info__c = acc.Id;
+=======
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2};
+
+            //鍑哄簱鍗�2鏄庣粏1
+            Consumable_orderdetails__c orderdet3 = new Consumable_orderdetails__c();
+            orderdet3.Name = 'Test3_001002';
+            //orderdet3.Consumable_principal__c = testList2.Id;
+            orderdet3.Consumable_order__c = testList2.Id;
+            orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet3.Consumable_count__c = 1;
+            orderdet3.Consumable_product__c = pro1.Id;
+            insert orderdet3;
+
+            //鍑哄簱鍗�3鏄庣粏1
+            Consumable_orderdetails__c orderdet4 = new Consumable_orderdetails__c();
+            orderdet4.Name = 'Test3_001002';
+            //orderdet4.Consumable_principal__c = testList2.Id;
+            orderdet4.Consumable_order__c = testList3.Id;
+            orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+            orderdet4.Consumable_count__c = 1;
+            orderdet4.Consumable_product__c = pro1.Id;
+            insert orderdet4;
+
+            PageReference page = new PageReference('/apex/ConInvoiceView?invoiceId='+invoiceorder.Id+'&reopen=isreopen&KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+
+            LexConInvoiceViewController.init(invoiceorder.id,'Redirect',testList2.Id);
+            LexConInvoiceViewController conTest = new LexConInvoiceViewController();
+            LexConInvoiceViewController.HospitalInfo =  hosp1.id;
+            LexConInvoiceViewController.SecondDealer =  agency1.id;
+            LexConInvoiceViewController.invoiceId    =  invoiceorder.Id;
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'娴庡畞浠诲煄鍎掓祹鍖婚櫌',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.InvoiceorderSearch(testList1,invoiceorder.Id,acc.Id,'閲嶅簡','ET',hosp1.id,agency1.id,invoiceOrderRecoeds);
+            System.Test.stopTest();
+      
+        }
+    }
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ invoiceId<>null
+    static testMethod void allinit(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+            //鍑嗗鏁版嵁
+            // Consumable_order__c  Id = deliveryId  //鍑哄簱鍗�
+            // Consumable_order__c
+            // WHERE Id = :invoiceId AND Order_type__c = '鍙戠エ'
+             //浜у搧淇℃伅
+            Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+            insert new Product2[] {prod01, prod02};
+ 
+            Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+            Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+            insert new Product2__c[] {pro1, pro2};
+             //鍙戠エ淇℃伅
+            Consumable_order__c invoiceorder = new Consumable_order__c();
+            invoiceorder.Name='invoice01';
+            invoiceorder.Order_type__c = '鍙戠エ';
+            invoiceorder.Invoice_status__c='鑽夋涓�';
+            invoiceorder.Invoice_Date__c = Date.today();
+            invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+            // invoiceorder.Order_ForHospital__c =hosp1.Id;
+            // invoiceorder.Order_ForDealer__c = agency1.Id;
+            invoiceorder.Dealer_Info__c=acc.Id;
+            //invoiceorder.Order_ProType__c = 'ET';
+            insert invoiceorder;
+
+            invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+            //鍑哄簱鍗�
+            
+            Consumable_order__c testList1 = new Consumable_order__c(
+            Name='Test1',
+            Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',
+            SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='鑽夋涓�',
+            Order_type__c='浼犵エ',
+            Dealer_info__c=acc.Id);
+
+            Consumable_order__c testList2 = new Consumable_order__c(Name='Test2',Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='宸叉彁浜�',Order_type__c='浼犵エ', 
+            Dealer_info__c=acc.Id,Order_ForCustomerText__c = '');
+            TestList1.Order_date__c = Date.today().addDays(2);
+            TestList2.Order_date__c = Date.today().addDays(2);
+            TestList1.Deliver_date__c = Date.today();
+            TestList2.Deliver_date__c = Date.today();
+
+            Consumable_order__c testList3 = new Consumable_order__c();
+            testList3.Summons_Sale_Status__c='鍑鸿揣';
+            testList3.SummonsStatus_c__c='宸插畬鎴�';
+            testList3.SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌';
+            testList3.Order_status__c='鑽夋涓�';
+            testList3.Order_type__c='浼犵エ';
+            testList3.Dealer_info__c=acc.Id;
+>>>>>>> LEXCommunityLiJun
             testList3.Order_ForCustomerText__c = '娑堝寲绉�';
 
             insert testList1;
             insert testList2;
             insert testList3;
 
+<<<<<<< HEAD
             Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(
                 Name = 'order_LinkTable1',
                 Outboundorder_Code_link__c = testList1.Id,
                 Invoice_Code_link__c = invoiceorder.Id
             );
+=======
+            Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder.Id);
+>>>>>>> LEXCommunityLiJun
             insert order_LinkTable1;
 
             //鍑哄簱鍗�1鏄庣粏1
@@ -2718,7 +4463,11 @@
             orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
             orderdet3.Consumable_count__c = 1;
             orderdet3.Consumable_product__c = pro1.Id;
+<<<<<<< HEAD
             insert new List<Consumable_orderdetails__c>{ orderdet1, orderdet2, orderdet3 };
+=======
+            insert new Consumable_orderdetails__c[]{orderdet1,orderdet2,orderdet3};
+>>>>>>> LEXCommunityLiJun
 
             //鍙戠エ闄勪欢
             Consumable_accessories_invoice__c cai = new Consumable_accessories_invoice__c();
@@ -2727,6 +4476,7 @@
 
             System.Test.startTest();
 
+<<<<<<< HEAD
             LexConInvoiceViewController.init(invoiceorder.Id, '', testList1.Id);
             LexConInvoiceViewController.init('', '', testList1.Id);
             LexConInvoiceViewController.init(invoiceorder.Id, '', '');
@@ -2790,11 +4540,30 @@
                 '',
                 invoiceOrderRecoedschangeLwc
             );
+=======
+            LexConInvoiceViewController.init(invoiceorder.Id,'',testList1.Id);
+            LexConInvoiceViewController.init('','',testList1.Id);
+            LexConInvoiceViewController.init(invoiceorder.Id,'','');
+            LexConInvoiceViewController.init('','','');
+            LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+            LexConInvoiceViewController.init('','Redirect','');
+            LexConInvoiceViewController.init('','Redirect',testList1.Id);
+            System.debug('order==>'+LexConInvoiceViewController.invoiceOrderRecoeds);
+
+
+            String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+            String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+            LexConInvoiceViewController.save(testList1,'Testhosp001',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.save(testList2,'Testhosp001','','',invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.save(testList3,'Testhosp001',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+            LexConInvoiceViewController.save(testList2,'Testhosp001',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+>>>>>>> LEXCommunityLiJun
 
             //淇濆瓨
             // LexConInvoiceViewController.save(testList1,'娴嬭瘯鍖婚櫌',hosp1.Id,agency1.Id,'',testList1.Id,invoiceorder.Id,myAccount1.Id,'ET');
             System.Test.stopTest();
         }
+<<<<<<< HEAD
     }
     static testMethod void allsave() {
         user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
@@ -3693,4 +5462,546 @@
             // LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]','',invoiceorder1.Id,myAccount1.Id,'ET','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]');
         }
     }
+=======
+    }
+    static testMethod void allsave(){
+        user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+        Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+        Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+
+        //鍙戠エ淇℃伅
+        Consumable_order__c invoiceorder = new Consumable_order__c();
+        invoiceorder.Name='invoice01';
+        invoiceorder.Order_type__c = '鍙戠エ';
+        invoiceorder.Invoice_status__c='鑽夋涓�';
+        invoiceorder.Invoice_Date__c = Date.today();
+        invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+        // invoiceorder.Order_ForHospital__c = '';
+        // invoiceorder.Order_ForDealer__c = '';
+        invoiceorder.Dealer_Info__c=acc.Id;
+        //invoiceorder.Order_ProType__c = 'ET';
+        insert invoiceorder;
+
+
+        Consumable_order__c testList1 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today());
+        String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+        String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+        // LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList1.Id);
+        LexConInvoiceViewController.save(testList1,'Testhosp001',null,null,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+        LexConInvoiceViewController.save(testList1,'Testhosp001',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+        LexConInvoiceViewController.saveAttachment(JSON.serialize(LexConInvoiceViewController.attachmentRecoeds),invoiceorder.Id);
+        }
+>>>>>>> LEXCommunityLiJun
 }
+static testMethod void allsave1(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+
+    //鍙戠エ淇℃伅
+    Consumable_order__c invoiceorder = new Consumable_order__c();
+    invoiceorder.Name='invoice01';
+    invoiceorder.Order_type__c = '鍙戠エ';
+    invoiceorder.Invoice_status__c='鑽夋涓�';
+    invoiceorder.Invoice_Date__c = Date.today();
+    invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+    // invoiceorder.Order_ForHospital__c = '';
+    // invoiceorder.Order_ForDealer__c = '';
+    invoiceorder.Dealer_Info__c=acc.Id;
+    //invoiceorder.Order_ProType__c = 'ET';
+    insert invoiceorder;
+
+
+    Consumable_order__c testList1 = new Consumable_order__c(
+    Name='Test1',
+    Summons_Sale_Status__c='鍑鸿揣',
+    SummonsStatus_c__c='宸插畬鎴�',
+    SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+    Order_status__c='鑽夋涓�',
+    Order_type__c='浼犵エ',
+    Dealer_info__c=acc.Id,
+    Invoice_Date__c = Date.today(),Order_ForCustomerText__c = '娑堝寲绉�');
+    insert testList1;
+    Consumable_order__c testList2 = new Consumable_order__c(
+    Name='Test1',
+    Summons_Sale_Status__c='鍑鸿揣',
+    SummonsStatus_c__c='宸插畬鎴�',
+    SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+    Order_status__c='鑽夋涓�',
+    Order_type__c='浼犵エ',
+    Dealer_info__c=acc.Id,
+    Invoice_Date__c = Date.today(),Order_ForDealerText__c = 'Test');
+    insert testList2;
+        
+
+    LexConInvoiceViewController.init(invoiceorder.Id,'Redirect',testList2.Id);
+    String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+    String invoiceOrderRecoeds = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoeds);
+    List<LexConInvoiceViewController.InvoiceOrderInfo> test1 = new  List<LexConInvoiceViewController.InvoiceOrderInfo>();
+    for(LexConInvoiceViewController.InvoiceOrderInfo ass:LexConInvoiceViewController.invoiceOrderRecoeds){
+        ass.check = true;
+        test1.add(ass);
+    }
+    System.debug('test1==>'+test1);
+    System.debug('invoiceOrderRecoedschangeLwc==>'+invoiceOrderRecoedschangeLwc);
+    LexConInvoiceViewController.save(testList1,'Testhosp001',hosp1.id,agency1.id,invoiceOrderRecoeds,testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    LexConInvoiceViewController.save(testList1,'Testhosp001','','',JSON.serialize(test1),testList1.Id,invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    LexConInvoiceViewController.save(testList1,'Testhosp001','','',JSON.serialize(test1),'',invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    LexConInvoiceViewController.save(testList1,'闈掑矝鐩堟捣鍖婚櫌',hosp1.id,agency1.id,'[{"check": true,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false}]','',invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    LexConInvoiceViewController.save(testList1,'闈掑矝鐩堟捣鍖婚櫌',hosp1.id,agency1.id,'[{"check": true,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false}]','',invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+  
+    }
+}
+
+
+static testMethod void allsave2(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+
+    //鍙戠エ淇℃伅
+    Consumable_order__c invoiceorder = new Consumable_order__c();
+    invoiceorder.Name='invoice01';
+    invoiceorder.Order_type__c = '鍙戠エ';
+    invoiceorder.Invoice_status__c='鑽夋涓�';
+    invoiceorder.Invoice_Date__c = Date.today();
+    invoiceorder.RecordTypeid = System.Label.RT_ConOrder_Invoice;
+    // invoiceorder.Order_ForHospital__c = '';
+    // invoiceorder.Order_ForDealer__c = '';
+    invoiceorder.Dealer_Info__c=acc.Id;
+    //invoiceorder.Order_ProType__c = 'ET';
+    insert invoiceorder;
+
+    Consumable_order__c testList2 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today(),Order_ForDealerText__c = 'Test');
+        insert testList2;
+        Consumable_order__c testList1 = new Consumable_order__c(
+            Name='Test1',
+            Summons_Sale_Status__c='鍑鸿揣',
+            SummonsStatus_c__c='宸插畬鎴�',
+            SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+            Order_status__c='鑽夋涓�',
+            Order_type__c='浼犵エ',
+            Dealer_info__c=acc.Id);
+            insert testList1;
+        String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+        //閫夋嫨寮�绁ㄥ崟
+        LexConInvoiceViewController.save(testList2,'闈掑矝鐩堟捣鍖婚櫌','',agency2.id,'[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false}]','',invoiceorder.Id,acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    }
+
+}
+
+
+
+static testMethod void allsave3(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+    system.runAs(curUser){
+    Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+    Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+    insert new Product2[] {prod01, prod02};
+
+    Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+    Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+    insert new Product2__c[] {pro1, pro2};
+
+    //鍙戠エ淇℃伅
+    Consumable_order__c invoiceorder = new Consumable_order__c();
+    invoiceorder.Name='202306164590';
+    invoiceorder.Invoice_Date__c = Date.today();
+    invoiceorder.Order_ForCustomerText__c = '娑堝寲绉�';
+    invoiceorder.Invoice_Note__c = '4444';
+    invoiceorder.RecordTypeid = '012100000006JxEAAU';
+    invoiceorder.Invoice_status__c='鑽夋涓�';
+    invoiceorder.Order_type__c = '鍙戠エ';
+    // invoiceorder.Order_ForHospital__c = hosp1.Id;
+    insert invoiceorder;
+    // invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+    Consumable_order__c testList2 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today());
+        insert testList2;
+
+        List<Consumable_orderdetails__c> conList = new List<Consumable_orderdetails__c>();
+        //鍑哄簱鍗�1鏄庣粏1
+         Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+         orderdet1.Name = 'Test1_001001';
+         //orderdet1.Consumable_principal__c = testList1.Id;
+         orderdet1.Consumable_order__c = invoiceorder.Id;
+         orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+         orderdet1.Consumable_count__c = 1;
+         orderdet1.Consumable_product__c = pro1.Id;
+         orderdet1.Shipment_Count__c = 10;
+         orderdet1.Invoiced_Procount__c = 4;
+         orderdet1.RrturnPro_count__c = 2;
+         conList.add(orderdet1);
+
+    String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+    LexConInvoiceViewController.save(invoiceorder,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001g0uyhAAA','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}, {"check": true,"esd": {"Id": "a2K0l000000xAnwEAE","Order_ForHospital__c": "0011000001g0uyhAAA","Name": "a2K0l000000xAnw","Outbound_Date__c": "2023-05-12","ShipmentAccount__c": "娼嶅煄鐜颁唬闂ㄨ瘖閮�", "Shipment_total_amount__c": 2300,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 2300,"InvoiceNotPro_money__c": 2300,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "娼嶅煄鐜颁唬闂ㄨ瘖閮�","Id": "0011000001g0uyhAAA"} }, "needInvoiceCount": 0,"oldCheck": false, "Id": "a2K0l000000xAnwEAE"}]','','',acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    LexConInvoiceViewController.save(invoiceorder,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001g0uyhAAA',agency1.Id,'[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}, {"check": true,"esd": {"Id": "a2K0l000000xAnwEAE","Order_ForHospital__c": "0011000001g0uyhAAA","Name": "a2K0l000000xAnw","Outbound_Date__c": "2023-05-12","ShipmentAccount__c": "娼嶅煄鐜颁唬闂ㄨ瘖閮�", "Shipment_total_amount__c": 2300,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 2300,"InvoiceNotPro_money__c": 2300,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "娼嶅煄鐜颁唬闂ㄨ瘖閮�","Id": "0011000001g0uyhAAA"} }, "needInvoiceCount": 0,"oldCheck": false, "Id": "a2K0l000000xAnwEAE"}]',testList2.Id,'',acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+
+    List<LexConInvoiceViewController.InvoiceOrderInfo> test1 = new  List<LexConInvoiceViewController.InvoiceOrderInfo>();
+    for(LexConInvoiceViewController.InvoiceOrderInfo ass:LexConInvoiceViewController.invoiceOrderRecoeds){
+        ass.check = true;
+        test1.add(ass);
+    }
+    System.debug('test1==>'+test1);
+    LexConInvoiceViewController.save(invoiceorder,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001g0uyhAAA','',JSON.serialize(test1),'','',acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+    }
+
+}
+
+
+static testMethod void allsave4(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    Account hosp1  = [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency1 =  [SELECT Id FROM Account WHERE name='Testhosp001' LIMIT 1];
+    Account agency2 =  [SELECT Id FROM Account WHERE name='Testhosp002' LIMIT 1];
+        system.runAs(curUser){
+
+    //鍙戠エ淇℃伅
+    Consumable_order__c invoiceorder = new Consumable_order__c();
+    invoiceorder.Name='202306164590';
+    invoiceorder.Invoice_Date__c = Date.today();
+    // invoiceorder.Order_ForCustomerText__c = '娑堝寲绉�';
+    invoiceorder.Invoice_Note__c = '4444';
+    invoiceorder.RecordTypeid = '012100000006JxEAAU';
+    invoiceorder.Invoice_status__c='鑽夋涓�';
+    invoiceorder.Order_type__c = '鍙戠エ';
+    // invoiceorder.Order_ForHospital__c = hosp1.Id;
+    insert invoiceorder;
+     //鍙戠エ淇℃伅
+     Consumable_order__c invoiceorder1 = new Consumable_order__c();
+     invoiceorder1.Name='202306164590';
+     invoiceorder1.Invoice_Date__c = Date.today();
+     invoiceorder1.Order_ForCustomerText__c = '娑堝寲绉�';
+     invoiceorder1.Invoice_Note__c = '4444';
+     invoiceorder1.RecordTypeid = '012100000006JxEAAU';
+     invoiceorder1.Invoice_status__c='鑽夋涓�';
+     invoiceorder1.Order_type__c = '鍙戠エ';
+     // invoiceorder.Order_ForHospital__c = hosp1.Id;
+     insert invoiceorder1;
+
+
+
+    // invoiceorder = [select id,Name from Consumable_order__c where id =:invoiceorder.id];
+    Consumable_order__c testList2 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today());
+        
+        insert testList2;
+        String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+        //涓嶉渶瑕佽緭鍏ョ瀹�
+         LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','',agency1.Id,'[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}, {"check": true,"esd": {"Id": "a2K0l000000xAnwEAE","Order_ForHospital__c": "0011000001g0uyhAAA","Name": "a2K0l000000xAnw","Outbound_Date__c": "2023-05-12","ShipmentAccount__c": "娼嶅煄鐜颁唬闂ㄨ瘖閮�", "Shipment_total_amount__c": 2300,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 2300,"InvoiceNotPro_money__c": 2300,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "娼嶅煄鐜颁唬闂ㄨ瘖閮�","Id": "0011000001g0uyhAAA"} }, "needInvoiceCount": 0,"oldCheck": false, "Id": "a2K0l000000xAnwEAE"}]',testList2.Id,'',acc.Id,'ET','',invoiceOrderRecoedschangeLwc);
+      
+
+
+        
+        //LexConInvoiceViewController.save(invoiceorder,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','',agency2.Id,'[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}, {"check": false,"esd": {"Id": "a2K0l000000xAnwEAE","Order_ForHospital__c": "0011000001g0uyhAAA","Name": "a2K0l000000xAnw","Outbound_Date__c": "2023-05-12","ShipmentAccount__c": "娼嶅煄鐜颁唬闂ㄨ瘖閮�", "Shipment_total_amount__c": 2300,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 2300,"InvoiceNotPro_money__c": 2300,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "娼嶅煄鐜颁唬闂ㄨ瘖閮�","Id": "0011000001g0uyhAAA"} }, "needInvoiceCount": 0,"oldCheck": false, "Id": "a2K0l000000xAnwEAE"}]',testList2.Id,invoiceorder.Id,myAccount1.Id,'ET','isreopen',invoiceOrderRecoedschangeLwc);
+        //  LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','',agency2.Id,'[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}, {"check": false,"esd": {"Id": "a2K0l000000xAnwEAE","Order_ForHospital__c": "0011000001g0uyhAAA","Name": "a2K0l000000xAnw","Outbound_Date__c": "2023-05-12","ShipmentAccount__c": "娼嶅煄鐜颁唬闂ㄨ瘖閮�", "Shipment_total_amount__c": 2300,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 2300,"InvoiceNotPro_money__c": 2300,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "娼嶅煄鐜颁唬闂ㄨ瘖閮�","Id": "0011000001g0uyhAAA"} }, "needInvoiceCount": 0,"oldCheck": false, "Id": "a2K0l000000xAnwEAE"}]',testList2.Id,invoiceorder1.Id,myAccount1.Id,'ET','isreopen',invoiceOrderRecoedschangeLwc);
+
+    }
+}
+
+static testMethod void allsave5(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+        system.runAs(curUser){
+         //浜у搧淇℃伅
+         Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+         Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+         insert new Product2[] {prod01, prod02};
+
+         Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+         Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+         insert new Product2__c[] {pro1, pro2};
+List<Consumable_order__c> orderList = new List<Consumable_order__c>();
+    //鍙戠エ淇℃伅
+    Consumable_order__c invoiceorder = new Consumable_order__c();
+    invoiceorder.Name='202306164590';
+    invoiceorder.Invoice_Date__c = Date.today();
+    // invoiceorder.Order_ForCustomerText__c = '娑堝寲绉�';
+    invoiceorder.Invoice_Note__c = '4444';
+    invoiceorder.RecordTypeid = '012100000006JxEAAU';
+    invoiceorder.Invoice_status__c='鑽夋涓�';
+    invoiceorder.Order_type__c = '鍙戠エ';
+    // invoiceorder.Order_ForHospital__c = hosp1.Id;
+    orderList.add(invoiceorder);
+     //鍙戠エ淇℃伅
+     Consumable_order__c invoiceorder1 = new Consumable_order__c();
+     invoiceorder1.Name='202306164590';
+     invoiceorder1.Invoice_Date__c = Date.today();
+     invoiceorder1.Order_ForCustomerText__c = '娑堝寲绉�';
+     invoiceorder1.Invoice_Note__c = '4444';
+     invoiceorder1.RecordTypeid = '012100000006JxEAAU';
+     invoiceorder1.Invoice_status__c='鑽夋涓�';
+     invoiceorder1.Order_type__c = '鍙戠エ';
+     // invoiceorder.Order_ForHospital__c = hosp1.Id;
+     orderList.add(invoiceorder1);
+     Consumable_order__c testList2 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today());
+        orderList.add(testList2);
+         //鍑哄簱鍗�
+        Consumable_order__c testList1 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id);
+        orderList.add(testList1);
+       insert orderList;
+        List<Consumable_orderdetails__c> conList = new List<Consumable_orderdetails__c>();
+        //鍑哄簱鍗�1鏄庣粏1
+         Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+         orderdet1.Name = 'Test1_001001';
+         //orderdet1.Consumable_principal__c = testList1.Id;
+         orderdet1.Consumable_order__c = invoiceorder1.Id;
+         orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+         orderdet1.Consumable_count__c = 1;
+         orderdet1.Consumable_product__c = pro1.Id;
+         orderdet1.Shipment_Count__c = 10;
+         orderdet1.Invoiced_Procount__c = 4;
+         orderdet1.RrturnPro_count__c = 2;
+         conList.add(orderdet1);
+
+        Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c = testList1.Id,Invoice_Code_link__c =invoiceorder1.Id);
+        insert order_LinkTable1;
+        Consumable_Orderdetails__c upDateform = new Consumable_Orderdetails__c();
+        upDateform.Name = 'Test1_001001';
+        upDateform.Consumable_order__c = invoiceorder1.Id;
+        upDateform.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+        upDateform.Consumable_count__c = 1;
+        upDateform.Consumable_product__c = pro1.Id;
+        upDateform.Consumable_order__c = order_LinkTable1.Outboundorder_Code_link__c;
+        conList.add(upDateform);
+        insert conList;
+        String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+        LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": true,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]',testList1.Id,invoiceorder1.Id,acc.Id,'ET','isreopen',invoiceOrderRecoedschangeLwc);
+        // LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": true,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]',testList1.Id,'',myAccount1.Id,'ET','isreopen',invoiceOrderRecoedschangeLwc);
+    }
+}
+
+static testMethod void allsave6(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    system.runAs(curUser){
+         //浜у搧淇℃伅
+         Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+         Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+         insert new Product2[] {prod01, prod02};
+
+         Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+         Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+         insert new Product2__c[] {pro1, pro2};
+        List<Consumable_order__c> orderList = new List<Consumable_order__c>();
+        //鍙戠エ淇℃伅
+        Consumable_order__c invoiceorder = new Consumable_order__c();
+        invoiceorder.Name='202306164590';
+        invoiceorder.Invoice_Date__c = Date.today();
+        // invoiceorder.Order_ForCustomerText__c = '娑堝寲绉�';
+        invoiceorder.Invoice_Note__c = '4444';
+        invoiceorder.RecordTypeid = '012100000006JxEAAU';
+        invoiceorder.Invoice_status__c='鑽夋涓�';
+        invoiceorder.Order_type__c = '鍙戠エ';
+        // invoiceorder.Order_ForHospital__c = hosp1.Id;
+        orderList.add(invoiceorder);
+        //鍙戠エ淇℃伅
+        Consumable_order__c invoiceorder1 = new Consumable_order__c();
+        invoiceorder1.Name='202306164590';
+        invoiceorder1.Invoice_Date__c = Date.today();
+        invoiceorder1.Order_ForCustomerText__c = '娑堝寲绉�';
+        invoiceorder1.Invoice_Note__c = '4444';
+        invoiceorder1.RecordTypeid = '012100000006JxEAAU';
+        invoiceorder1.Invoice_status__c='鑽夋涓�';
+        invoiceorder1.Order_type__c = '鍙戠エ';
+        // invoiceorder.Order_ForHospital__c = hosp1.Id;
+        orderList.add(invoiceorder1);
+        Consumable_order__c testList2 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today());
+        orderList.add(testList2);
+         //鍑哄簱鍗�
+        Consumable_order__c testList1 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id);
+        orderList.add(testList1);
+       insert orderList;
+        List<Consumable_orderdetails__c> conList = new List<Consumable_orderdetails__c>();
+        //鍑哄簱鍗�1鏄庣粏1
+         Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+         orderdet1.Name = 'Test1_001001';
+         //orderdet1.Consumable_principal__c = testList1.Id;
+         orderdet1.Consumable_order__c = testList1.Id;
+         orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+         orderdet1.Consumable_count__c = 1;
+         orderdet1.Consumable_product__c = pro1.Id;
+         conList.add(orderdet1);
+
+        Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c =invoiceorder1.Id,Invoice_Code_link__c =invoiceorder1.Id);
+        insert order_LinkTable1;
+        Consumable_Orderdetails__c upDateform = new Consumable_Orderdetails__c();
+        upDateform.Name = 'Test1_001001';
+        //orderdet1.Consumable_principal__c = testList1.Id;
+        upDateform.Consumable_order__c = invoiceorder1.Id;
+        upDateform.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+        upDateform.Consumable_count__c = 1;
+        upDateform.Consumable_product__c = pro1.Id;
+        upDateform.Consumable_order__c = order_LinkTable1.Outboundorder_Code_link__c;
+        upDateform.RrturnPro_count__c = 10;
+        conList.add(upDateform);
+        insert conList;
+        String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+        LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]',testList1.Id,invoiceorder1.Id,acc.Id,'ET','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]');
+        LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": true,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]','',invoiceorder1.Id,acc.Id,'ET','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]');
+        LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]','',invoiceorder1.Id,acc.Id,'ET','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]');
+    }
+}
+
+static testMethod void allsave7(){
+    user curUser = [SELECT Id FROM User WHERE LastName = 'TestUser' LIMIT 1];
+    Account acc = [SELECT Id FROM Account WHERE name='Testaccount002' LIMIT 1];
+    system.runAs(curUser){
+         //浜у搧淇℃伅
+         Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+         Product2 prod02 = new Product2(Name='Test02',ProductCode='Test02',Asset_Model_No__c = 'Test02',SFDA_Status__c = '鏈夊姽',Dealer_special_Object__c = true,Manual_Entry__c = false);
+         insert new Product2[] {prod01, prod02};
+
+         Product2__c pro1 = new Product2__c(Name='Pro001',OT_CODE_Text__c='Test001',Product2__c = prod01.Id);
+         Product2__c pro2 = new Product2__c(Name='Pro002',OT_CODE_Text__c='Test002',Product2__c = prod02.Id);
+         insert new Product2__c[] {pro1, pro2};
+        List<Consumable_order__c> orderList = new List<Consumable_order__c>();
+        //鍙戠エ淇℃伅
+        Consumable_order__c invoiceorder = new Consumable_order__c();
+        invoiceorder.Name='202306164590';
+        invoiceorder.Invoice_Date__c = Date.today();
+        // invoiceorder.Order_ForCustomerText__c = '娑堝寲绉�';
+        invoiceorder.Invoice_Note__c = '4444';
+        invoiceorder.RecordTypeid = '012100000006JxEAAU';
+        invoiceorder.Invoice_status__c='鑽夋涓�';
+        invoiceorder.Order_type__c = '鍙戠エ';
+        // invoiceorder.Order_ForHospital__c = hosp1.Id;
+        orderList.add(invoiceorder);
+        //鍙戠エ淇℃伅
+        Consumable_order__c invoiceorder1 = new Consumable_order__c();
+        invoiceorder1.Name='202306164590';
+        invoiceorder1.Invoice_Date__c = Date.today();
+        invoiceorder1.Order_ForCustomerText__c = '娑堝寲绉�';
+        invoiceorder1.Invoice_Note__c = '4444';
+        invoiceorder1.RecordTypeid = '012100000006JxEAAU';
+        invoiceorder1.Invoice_status__c='鑽夋涓�';
+        invoiceorder1.Order_type__c = '鍙戠エ';
+        // invoiceorder.Order_ForHospital__c = hosp1.Id;
+        orderList.add(invoiceorder1);
+        Consumable_order__c testList2 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id,
+        Invoice_Date__c = Date.today());
+        orderList.add(testList2);
+         //鍑哄簱鍗�
+        Consumable_order__c testList1 = new Consumable_order__c(
+        Name='Test1',
+        Summons_Sale_Status__c='鍑鸿揣',
+        SummonsStatus_c__c='宸插畬鎴�',
+        SummonsForDirction__c='鐩存帴閿�鍞粰鍖婚櫌',
+        Order_status__c='鑽夋涓�',
+        Order_type__c='浼犵エ',
+        Dealer_info__c=acc.Id);
+        orderList.add(testList1);
+       insert orderList;
+        List<Consumable_orderdetails__c> conList = new List<Consumable_orderdetails__c>();
+        //鍑哄簱鍗�1鏄庣粏1
+         Consumable_orderdetails__c orderdet1 = new Consumable_orderdetails__c();
+         orderdet1.Name = 'Test1_001001';
+         //orderdet1.Consumable_principal__c = testList1.Id;
+         orderdet1.Consumable_order__c = testList1.Id;
+         orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+         orderdet1.Consumable_count__c = 1;
+         orderdet1.Consumable_product__c = pro1.Id;
+         conList.add(orderdet1);
+
+        Consumable_order_LinkTable__c order_LinkTable1 = new Consumable_order_LinkTable__c(Name='order_LinkTable1',Outboundorder_Code_link__c =invoiceorder1.Id,Invoice_Code_link__c =invoiceorder1.Id);
+        insert order_LinkTable1;
+        Consumable_Orderdetails__c upDateform = new Consumable_Orderdetails__c();
+        upDateform.Name = 'Test1_001001';
+        //orderdet1.Consumable_principal__c = testList1.Id;
+        upDateform.Consumable_order__c = invoiceorder1.Id;
+        upDateform.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+        upDateform.Consumable_count__c = 1;
+        upDateform.Consumable_product__c = pro1.Id;
+        upDateform.Consumable_order__c = order_LinkTable1.Outboundorder_Code_link__c;
+        upDateform.RrturnPro_count__c = 10;
+        conList.add(upDateform);
+        insert conList;
+        String invoiceOrderRecoedschangeLwc = JSON.serialize(LexConInvoiceViewController.invoiceOrderRecoedschange);
+        LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": true,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"},{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848,"Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false}]','',invoiceorder1.Id,acc.Id,'ET','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]');
+        // LexConInvoiceViewController.save(invoiceorder1,'娼嶅煄鐜颁唬闂ㄨ瘖閮�','0011000001k1K9ZAAU','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]','',invoiceorder1.Id,myAccount1.Id,'ET','','[{"check": false,"esd": {"Id": "a2K0l000000x1KXEAY","Order_ForHospital__c": "0011000001k1K9ZAAU","Name": "DB-FY2024-04-Z316244","Outbound_Date__c": "2023-06-09","ShipmentAccount__c": "闈掑矝鐩堟捣鍖婚櫌","Shipment_total_amount__c": 848,"RrturnPro_total_amount__c": 0,"Total_Invoiced_Procount__c": 0,"InvoiceNotPro_total_amount__c": 848,"InvoiceNotPro_money__c": 848, "Invoice_total_amount__c": 0,"Billed_Status__c": "杩樻病寮�绁�","Order_ForHospital__r": {"Name": "闈掑矝鐩堟捣鍖婚櫌","Id": "0011000001k1K9ZAAU"}},"needInvoiceCount": 0,"oldCheck": false,"Id": "a2K0l000000x1KXEAY"}]');
+    }
+}
+
+
+}
\ No newline at end of file

--
Gitblit v1.9.1