From 80a3f59e2d3df07805bc67e329300b8de90a5b3a Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期二, 11 七月 2023 14:13:08 +0800
Subject: [PATCH] Merge branch 'LEXCommunityLiJun' into LEXUpgrade2023-Deloitte

---
 force-app/main/default/classes/LexConInvoiceViewControllerTest.cls | 7709 ++++++++++++++++++++++++++++-------------------------------
 1 files changed, 3,640 insertions(+), 4,069 deletions(-)

diff --git a/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls b/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls
index 132a36a..82f618f 100644
--- a/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls
+++ b/force-app/main/default/classes/LexConInvoiceViewControllerTest.cls
@@ -1,4125 +1,3696 @@
 @isTest
 private class LexConInvoiceViewControllerTest { //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ invoiceId<>null
-  public static user myUser_test;
-  public static Account myAccount1;
-  public static Account hosp1;
-  public static Account agency1;
-  public static List<RecordType> rectHos;
-  public static Account agency2;
-  @testSetup
-  static void setupTestData() {
-    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;
+    public static user myUser_test;
+    public static Account myAccount1;
+    public static Account hosp1;
+    public static Account agency1;
+    public static List<RecordType> rectHos;
+    public static Account agency2;
+    @testSetup
+    static void setupTestData() {
+        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;
+            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;
+            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 List<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 List<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 List<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 List<Product2>{ prod01 };
-
-      Product2__c pro1 = new Product2__c(
-        Name = 'Pro001',
-        OT_CODE_Text__c = 'Test001',
-        Product2__c = prod01.Id
-      );
-      insert new List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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);
-      System.Test.stopTest();
-    }
-  }
-
-  //鎻愪氦
-  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 List<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 List<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;
-      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 = invoiceorder.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 List<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
-          );
+            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;
         }
-      }
-      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
-          );
+
+    }
+    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 List<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 List<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 List<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();
         }
-      }
-
-      System.debug('tempCocMap===>' + tempCocMap);
-      //闄勪欢
-      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;
-
-      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
-      );
-      System.Test.stopTest();
     }
-  }
 
-  //鎻愪氦鍙戠エ
-  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 List<Product2>{ prod01, prod02 };
+    //鏂板缓鍙戠エ invoiceId=null
 
-      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 List<Product2__c>{ pro1, pro2 };
+    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;
 
-      //鍑哄簱鍗�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;
+            invoiceorder = [
+                SELECT id, Name
+                FROM Consumable_order__c
+                WHERE id = :invoiceorder.id
+            ];
 
-      //鍑哄簱鍗�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 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 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;
+            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;
 
-      //鍙戠エ鏄庣粏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;
 
-      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', 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();
         }
-      }
-
-      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();
     }
-  }
+    //鏂板缓鍙戠エ invoiceId=null error check
 
-  //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 List<Product2>{ prod01, prod02 };
+    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 List<Product2>{ prod01 };
 
-      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 List<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;
+            Product2__c pro1 = new Product2__c(Name = 'Pro001', OT_CODE_Text__c = 'Test001', Product2__c = prod01.Id);
+            insert new List<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
-      ];
-      //鍑哄簱鍗�
+            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 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 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__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;
+            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;
+            PageReference page = new PageReference('/apex/ConInvoiceView?invoiceId=' + invoiceorder.Id + '&KeyWords=Redirect');
+            page.setRedirect(true);
+            System.Test.setCurrentPage(page);
+            System.Test.startTest();
 
-      //鍑哄簱鍗�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 List<Consumable_orderdetails__c>{ orderdet1, orderdet2 };
+            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);
 
-      //鍑哄簱鍗�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;
+            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
+            );
 
-      //鍑哄簱鍗�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;
+            // LexConInvoiceViewController.init();
 
-      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 List<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 List<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;
-
-      //鍑哄簱鍗�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 List<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 List<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 List<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;
-      testList3.Order_ForCustomerText__c = '娑堝寲绉�';
-
-      insert testList1;
-      insert testList2;
-      insert testList3;
-
-      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 List<Consumable_orderdetails__c>{
-        orderdet1,
-        orderdet2,
-        orderdet3
-      };
-
-      //鍙戠エ闄勪欢
-      Consumable_accessories_invoice__c cai = new Consumable_accessories_invoice__c();
-      cai.Invoice_code__c = invoiceorder.Id;
-      insert cai;
-
-      System.Test.startTest();
-
-      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
-      );
-
-      //淇濆瓨
-      // LexConInvoiceViewController.save(testList1,'娴嬭瘯鍖婚櫌',hosp1.Id,agency1.Id,'',testList1.Id,invoiceorder.Id,myAccount1.Id,'ET');
-      System.Test.stopTest();
-    }
-  }
-  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
-      );
-    }
-  }
-  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
-      );
+            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
+        ];
 
-  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 List<Product2>{ prod01, prod02 };
+        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 List<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 List<Product2__c>{ pro1, pro2 };
+            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 List<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;
 
-      //鍙戠エ淇℃伅
-      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;
+            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);
 
-      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);
+            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};
 
-      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
-      );
+            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;
 
-      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
-      );
+            //鍑哄簱鍗�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 List<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 List<Product2>{ prod01, prod02 };
 
-  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;
+            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 List<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 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()
-      );
+            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);
 
-      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
-      );
+            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};
 
-      //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);
+            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 List<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();
+        }
     }
-  }
 
-  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 List<Product2>{ prod01, prod02 };
+    //鏂板缓鍙戠エ 浠ュ強缂栬緫鍙戠エ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 List<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 List<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);
+            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 List<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;
 
-      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);
+            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 List<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 List<Product2>{ prod01, prod02 };
 
-  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 List<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 List<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;
 
-      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 List<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);
+            invoiceorder = [
+                SELECT id, Name
+                FROM Consumable_order__c
+                WHERE id = :invoiceorder.id
+            ];
+            //鍑哄簱鍗�
 
-      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"}]'
-      );
+            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 List<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 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 List<Product2>{ prod01, prod02 };
+    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 List<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 List<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);
+            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 List<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;
 
-      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"}]');
+            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 List<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 List<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 List<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 List<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);
+            System.Test.stopTest();
+        }
+    }
+
+    //鎻愪氦
+    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 List<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 List<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;
+            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 = invoiceorder.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 List<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();
+            caic.Attachment_ID__c = acc.Id;
+            caic.Accessories_type__c = '鍙戠エ鍜屾槑缁�';
+            caic.Invoice_code__c = invoiceorder.id;
+            insert caic;
+
+            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);
+            System.Test.stopTest();
+        }
+    }
+
+    //鎻愪氦鍙戠エ
+    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 List<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 List<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 List<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 List<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;
+
+            //鍑哄簱鍗�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 List<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 List<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 List<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;
+
+            //鍑哄簱鍗�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 List<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 List<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 List<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;
+            testList3.Order_ForCustomerText__c = '娑堝寲绉�';
+
+            insert testList1;
+            insert testList2;
+            insert testList3;
+
+            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 List<Consumable_orderdetails__c>{ orderdet1, orderdet2, orderdet3 };
+
+            //鍙戠エ闄勪欢
+            Consumable_accessories_invoice__c cai = new Consumable_accessories_invoice__c();
+            cai.Invoice_code__c = invoiceorder.Id;
+            insert cai;
+
+            System.Test.startTest();
+
+            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
+            );
+
+            //淇濆瓨
+            // LexConInvoiceViewController.save(testList1,'娴嬭瘯鍖婚櫌',hosp1.Id,agency1.Id,'',testList1.Id,invoiceorder.Id,myAccount1.Id,'ET');
+            System.Test.stopTest();
+        }
+    }
+    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);
+        }
+    }
+    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 List<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 List<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 List<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 List<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 List<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 List<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 List<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 List<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"}]');
+        }
+    }
 }

--
Gitblit v1.9.1