From 90fac0710272079084730d97f6467ce87cd82448 Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 07 七月 2023 14:29:21 +0800
Subject: [PATCH] ProdLEXCode0707

---
 force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.cmp          |  291 
 force-app/main/default/classes/DealerInquiryModifyStateController.cls                        | 1299 ++-
 force-app/main/default/classes/DealerInquiryModifyStateControllerTest.cls                    |    7 
 force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.css          |  168 
 force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger                        | 1441 ++-
 force-app/main/default/aura/CreateTarget/CreateTargetHelper.js                               | 1226 ++-
 force-app/main/default/pages/DealerInquiryModifyState.page-meta.xml                          |    4 
 force-app/main/default/aura/CreateTarget/CreateTarget.cmp-meta.xml                           |    4 
 force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportHelper.js     | 1236 ---
 .sf/config.json                                                                              |    2 
 force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js                               |  498 -
 force-app/main/default/classes/ArriveGoodsControllerTest.cls                                 |  430 
 force-app/main/default/aura/WeeklyReport/WeeklyReportController.js                           |   12 
 force-app/main/default/classes/ArriveGoodsController.cls                                     | 9619 ++++++++++++++++------------
 force-app/main/default/pages/DealerInquiryModifyState.page                                   | 1360 ++-
 force-app/main/default/aura/CreateTarget/CreateTarget.cmp                                    |  940 +
 force-app/main/default/aura/WeeklyReport/WeeklyReport.css                                    |   36 
 force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger-meta.xml               |    4 
 force-app/main/default/aura/CreateTarget/CreateTarget.css                                    |   10 
 force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportController.js |  690 +-
 force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp                                    |  169 
 21 files changed, 10,158 insertions(+), 9,288 deletions(-)

diff --git a/.sf/config.json b/.sf/config.json
index e8a7811..4c476fc 100644
--- a/.sf/config.json
+++ b/.sf/config.json
@@ -1,3 +1,3 @@
 {
-  "target-org": "OlympusStageEnv"
+  "target-org": "OlympusProd"
 }
diff --git a/force-app/main/default/aura/CreateTarget/CreateTarget.cmp b/force-app/main/default/aura/CreateTarget/CreateTarget.cmp
index a3de553..a093ee6 100644
--- a/force-app/main/default/aura/CreateTarget/CreateTarget.cmp
+++ b/force-app/main/default/aura/CreateTarget/CreateTarget.cmp
@@ -1,321 +1,635 @@
-<aura:component controller="CreateTargetCmp" implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,force:lightningQuickAction,forceCommunity:availableForAllPageTypes" access="global" >
-	<aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
-	<aura:attribute name="recordId" type="Id" />
-	<aura:attribute name="hospital" type="string" default=""/>
-	<aura:attribute name="test" type="string" default="1"/>
-	<aura:handler event="force:refreshView" action="{!c.isRefreshed}" />
-	<aura:attribute name="hospitalId" type="string" default=""/>
-	<aura:attribute name="GIAmount" type="string" default="0.00"/>
-	<aura:attribute name="BFAmount" type="string" default="0.00"/>
-	<aura:attribute name="ETAmount" type="string" default="0.00"/>
-	<aura:attribute name="GSAmount" type="string" default="0.00"/>
-	<aura:attribute name="UROAmount" type="string" default="0.00"/>
-	<aura:attribute name="GYNAmount" type="string" default="0.00"/>
-	<aura:attribute name="ENTAmount" type="string" default="0.00"/>
-	<aura:attribute name="OTHAmount" type="string" default="0.00"/>
-	<aura:attribute name="OCMTerm" type="string" default=""/>
-	<aura:attribute name="button_text" type="string" default="鏂板缓"/>
-	<aura:handler name="change" value="{!v.record.Agency_Hospital__c}" action="{!c.hosChange}"/>
-	<aura:attribute name="hospitalList" type="sobject[]" />
-	<aura:attribute name="record" type="Agency_Opportunity__c" default="{'sobjectType':'Agency_Opportunity__c'}"/>
-    <aura:handler name="change" value="{!v.recordET.Product_Category1__c}" action="{!c.productcategoryETChange1}"/>
-    <aura:handler name="change" value="{!v.recordET.Product_Category2__c}" action="{!c.productcategoryETChange2}"/>
-    <aura:handler name="change" value="{!v.recordET.Product_Category3__c}" action="{!c.productcategoryETChange3}"/>
-	
+<aura:component
+  controller="CreateTargetCmp"
+  implements="forceCommunity:availableForAllPageTypes,force:hasRecordId"
+  access="global"
+>
+  <aura:handler name="init" value="{!this}" action="{!c.doInit}" />
+  <aura:attribute name="recordId" type="Id" />
+  <aura:attribute name="hospital" type="string" default="" />
+  <aura:attribute name="test" type="string" default="1" />
+  <aura:handler event="force:refreshView" action="{!c.isRefreshed}" />
+  <aura:attribute name="hospitalId" type="string" default="" />
+  <aura:attribute name="GIAmount" type="string" default="0.00" />
+  <aura:attribute name="BFAmount" type="string" default="0.00" />
+  <aura:attribute name="ETAmount" type="string" default="0.00" />
+  <aura:attribute name="GSAmount" type="string" default="0.00" />
+  <aura:attribute name="UROAmount" type="string" default="0.00" />
+  <aura:attribute name="GYNAmount" type="string" default="0.00" />
+  <aura:attribute name="ENTAmount" type="string" default="0.00" />
+  <aura:attribute name="OTHAmount" type="string" default="0.00" />
+  <aura:attribute name="OCMTerm" type="string" default="" />
+  <aura:attribute name="button_text" type="string" default="鏂板缓" />
+  <aura:handler
+    name="change"
+    value="{!v.record.Agency_Hospital__c}"
+    action="{!c.hosChange}"
+  />
+  <aura:attribute name="hospitalList" type="sobject[]" />
+  <aura:attribute
+    name="record"
+    type="Agency_Opportunity__c"
+    default="{'sobjectType':'Agency_Opportunity__c'}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordET.Product_Category1__c}"
+    action="{!c.productcategoryETChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordET.Product_Category2__c}"
+    action="{!c.productcategoryETChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordET.Product_Category3__c}"
+    action="{!c.productcategoryETChange3}"
+  />
 
-    <aura:handler name="change" value="{!v.recordBF.Product_Category1__c}" action="{!c.productcategoryBFChange1}"/>
-    <aura:handler name="change" value="{!v.recordBF.Product_Category2__c}" action="{!c.productcategoryBFChange2}"/>
-    <aura:handler name="change" value="{!v.recordBF.Product_Category3__c}" action="{!c.productcategoryBFChange3}"/>
-    <aura:handler name="change" value="{!v.recordGS.Product_Category1__c}" action="{!c.productcategoryGSChange1}"/>
-    <aura:handler name="change" value="{!v.recordGS.Product_Category2__c}" action="{!c.productcategoryGSChange2}"/>
-    <aura:handler name="change" value="{!v.recordGS.Product_Category3__c}" action="{!c.productcategoryGSChange3}"/>
-    <aura:handler name="change" value="{!v.recordURO.Product_Category1__c}" action="{!c.productcategoryUROChange1}"/>
-    <aura:handler name="change" value="{!v.recordURO.Product_Category2__c}" action="{!c.productcategoryUROChange2}"/>
-    <aura:handler name="change" value="{!v.recordURO.Product_Category3__c}" action="{!c.productcategoryUROChange3}"/>
-    <aura:handler name="change" value="{!v.recordGYN.Product_Category1__c}" action="{!c.productcategoryGYNChange1}"/>
-    <aura:handler name="change" value="{!v.recordGYN.Product_Category2__c}" action="{!c.productcategoryGYNChange2}"/>
-    <aura:handler name="change" value="{!v.recordGYN.Product_Category3__c}" action="{!c.productcategoryGYNChange3}"/>
-    <aura:handler name="change" value="{!v.recordENT.Product_Category1__c}" action="{!c.productcategoryENTChange1}"/>
-    <aura:handler name="change" value="{!v.recordENT.Product_Category2__c}" action="{!c.productcategoryENTChange2}"/>
-    <aura:handler name="change" value="{!v.recordENT.Product_Category3__c}" action="{!c.productcategoryENTChange3}"/>
-    <aura:handler name="change" value="{!v.recordOTH.Product_Category1__c}" action="{!c.productcategoryOTHChange1}"/>
-    <aura:handler name="change" value="{!v.recordOTH.Product_Category2__c}" action="{!c.productcategoryOTHChange2}"/>
-    <aura:handler name="change" value="{!v.recordOTH.Product_Category3__c}" action="{!c.productcategoryOTHChange3}"/>
-	<div class="button_area">
-		<ui:button label="{!v.button_text}" press="{!c.toggle_report}"/>
-    </div>
-    <div aura:id="modal_window" role="dialog" tabindex="-1" class="disp_none slds-modal slds-fade-in-open slds-modal--large" aria-labelledby="headerTarget">
-    	<div class="slds-modal__container">
-	    	<div class="slds-modal__header">
-	            <button class="slds-button slds-modal__close slds-button--icon-inverse" title="Close" onclick="{!c.toggle_report}">
-	                <lightning:icon iconName="utility:close" size="medium" alternative-text="close" variant="inverse"/>
-	                <span class="slds-assistive-text">Close</span>
-	            </button>
-	            <h2 id="headerTarget" class="slds-text-heading--medium">鐩爣({!v.OCMTerm})</h2>
-	        </div>
-	        <div class="slds-modal__content slds-grow slds-p-around--medium">
-	            <div class="slds-box slds-theme--shade ">
-	            	<fieldset class="slds-form--compound">
-						<div class="slds-form-element__group">
-							<div class="slds-form-element__row">
-							    <div class="slds-form-element slds-size--1-of-2">
-									<label class="slds-form-element__label" for="input-hos">鍖婚櫌</label>
-									<!-- <force:inputField value="{!v.record.Agency_Hospital__c}" aura:id="input-hos"/> -->
-									<lightning:recordEditForm objectApiName="Agency_Opportunity__c">
-										<lightning:inputField variant="label-hidden" fieldName="Agency_Hospital__c" value="{!v.record.Agency_Hospital__c}" aura:id="input-hos"/>
-									</lightning:recordEditForm>
-							    </div>
-						    </div>
-						    <!-- <h4 class="slds-section__title">璁块棶鐩爣</h4>
+  <aura:handler
+    name="change"
+    value="{!v.recordBF.Product_Category1__c}"
+    action="{!c.productcategoryBFChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordBF.Product_Category2__c}"
+    action="{!c.productcategoryBFChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordBF.Product_Category3__c}"
+    action="{!c.productcategoryBFChange3}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordGS.Product_Category1__c}"
+    action="{!c.productcategoryGSChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordGS.Product_Category2__c}"
+    action="{!c.productcategoryGSChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordGS.Product_Category3__c}"
+    action="{!c.productcategoryGSChange3}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordURO.Product_Category1__c}"
+    action="{!c.productcategoryUROChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordURO.Product_Category2__c}"
+    action="{!c.productcategoryUROChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordURO.Product_Category3__c}"
+    action="{!c.productcategoryUROChange3}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordGYN.Product_Category1__c}"
+    action="{!c.productcategoryGYNChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordGYN.Product_Category2__c}"
+    action="{!c.productcategoryGYNChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordGYN.Product_Category3__c}"
+    action="{!c.productcategoryGYNChange3}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordENT.Product_Category1__c}"
+    action="{!c.productcategoryENTChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordENT.Product_Category2__c}"
+    action="{!c.productcategoryENTChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordENT.Product_Category3__c}"
+    action="{!c.productcategoryENTChange3}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordOTH.Product_Category1__c}"
+    action="{!c.productcategoryOTHChange1}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordOTH.Product_Category2__c}"
+    action="{!c.productcategoryOTHChange2}"
+  />
+  <aura:handler
+    name="change"
+    value="{!v.recordOTH.Product_Category3__c}"
+    action="{!c.productcategoryOTHChange3}"
+  />
+  <div class="button_area">
+    <ui:button label="{!v.button_text}" press="{!c.toggle_report}" />
+  </div>
+  <div
+    aura:id="modal_window"
+    role="dialog"
+    tabindex="-1"
+    class="disp_none slds-modal slds-fade-in-open slds-modal--large"
+    aria-labelledby="headerTarget"
+  >
+    <div class="slds-modal__container">
+      <div class="slds-modal__header">
+        <button
+          class="slds-button slds-modal__close slds-button--icon-inverse"
+          title="Close"
+          onclick="{!c.toggle_report}"
+        >
+          <lightning:icon
+            class="close_icn"
+            iconName="utility:close"
+            size="medium"
+            alternativeText="Indicates approval"
+          />
+          <span class="slds-assistive-text">Close</span>
+        </button>
+        <h2 id="headerTarget" class="slds-text-heading--medium">
+          鐩爣({!v.OCMTerm})
+        </h2>
+      </div>
+      <div class="slds-modal__content slds-grow slds-p-around--medium">
+        <div class="slds-box slds-theme--shade">
+          <fieldset class="slds-form--compound">
+            <div class="slds-form-element__group">
+              <div class="slds-form-element__row">
+                <div class="slds-form-element slds-size--1-of-2">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >鍖婚櫌</label
+                  >
+                  <force:inputField
+                    value="{!v.record.Agency_Hospital__c}"
+                    aura:id="input-hos"
+                  />
+                </div>
+              </div>
+              <!-- <h4 class="slds-section__title">璁块棶鐩爣</h4>
 						    <div class="slds-form-element__row">
 							    <div class="slds-form-element slds-size-1-of-2">
 							    	<label class="slds-form-element__label" for="input-target">鐩爣鍖婚櫌</label>
 							        <force:inputField value="{!v.record2.TargetHospital__c}" aura:id="input-target"/>
 								</div>
 							</div> -->
-							<h4 class="slds-section__title">浜у搧鐩爣</h4>
-						    <div class="slds-form-element__row">
-								<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">娑堝寲绉�</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_GI1" class="slds-select" change="{!c.productcategoryGIChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GI4_1" class="slds-select"/>
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_GI2" class="slds-select" change="{!c.productcategoryGIChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GI4_2" class="slds-select"/>
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_GI3" class="slds-select" change="{!c.productcategoryGIChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GI4_3" class="slds-select"/>
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">ET鑰楁潗</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_ET1" class="slds-select" change="{!c.productcategoryETChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_ET4_1" class="slds-select"/>
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_ET2" class="slds-select" change="{!c.productcategoryETChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_ET4_2" class="slds-select"/>
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_ET3" class="slds-select" change="{!c.productcategoryETChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_ET4_3" class="slds-select" />
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">鍛煎惛绉�</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_BF1" class="slds-select" change="{!c.productcategoryBFChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_BF4_1" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_BF2" class="slds-select" change="{!c.productcategoryBFChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_BF4_2" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_BF3" class="slds-select" change="{!c.productcategoryBFChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_BF4_3" class="slds-select" />
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">鏅绉�</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_GS1" class="slds-select" change="{!c.productcategoryGSChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GS4_1" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_GS2" class="slds-select" change="{!c.productcategoryGSChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GS4_2" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_GS3" class="slds-select" change="{!c.productcategoryGSChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GS4_3" class="slds-select" />
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">娉屽翱绉�</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_URO1" class="slds-select" change="{!c.productcategoryUROChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_URO4_1" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_URO2" class="slds-select" change="{!c.productcategoryUROChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_URO4_2" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_URO3" class="slds-select" change="{!c.productcategoryUROChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_URO4_3" class="slds-select" />
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">濡囩</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_GYN1" class="slds-select" change="{!c.productcategoryGYNChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GYN4_1" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_GYN2" class="slds-select" change="{!c.productcategoryGYNChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GYN4_2" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_GYN3" class="slds-select" change="{!c.productcategoryGYNChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_GYN4_3" class="slds-select" />
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">鑰抽蓟鍠夌</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_ENT1" class="slds-select" change="{!c.productcategoryENTChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_ENT4_1" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_ENT2" class="slds-select" change="{!c.productcategoryENTChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_ENT4_2" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_ENT3" class="slds-select" change="{!c.productcategoryENTChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_ENT4_3" class="slds-select" />
-							    </div>
-						    </div>
-						    <div class="slds-form-element__row">
-						    	<div class="slds-size--1-of-7 slds-grid--align-center">
-									<div style="margin-top: 32px;">鍏朵粬</div>
-								</div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎1</label>
-							    	<ui:inputSelect aura:id="select_OTH1" class="slds-select" change="{!c.productcategoryOTHChange1}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_OTH4_1" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎2</label>
-							    	<ui:inputSelect aura:id="select_OTH2" class="slds-select" change="{!c.productcategoryOTHChange2}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_OTH4_2" class="slds-select" />
-							    </div>
-							    <div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">浜у搧鍖哄垎3</label>
-							    	<ui:inputSelect aura:id="select_OTH3" class="slds-select" change="{!c.productcategoryOTHChange3}"/>
-							    </div>
-								<div class="slds-form-element slds-size--1-of-7">
-							    	<label class="slds-form-element__label" for="input-hos">閲戦鐩爣(涓嶅惈绋�)</label>
-							    	<ui:inputText aura:id="select_OTH4_3" class="slds-select" />
-							    </div>
-						    </div>
-						</div>
-					</fieldset>
-	            </div>
-	        </div>
-	        <div class="slds-modal__footer slds-grid slds-grid--align-spread">
-	        	<div class="slds-order--1" />
-	        	<ui:button aura:id="save_button" label="淇濆瓨" class="slds-button slds-button--brand slds-order--2" press="{!c.createTarget}"/>
-	        	<div class="slds-order--3" />
-	        </div>
-    	</div>
+              <h4 class="slds-section__title">浜у搧鐩爣</h4>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">娑堝寲绉�</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GI1"
+                    class="slds-select"
+                    change="{!c.productcategoryGIChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GI4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GI2"
+                    class="slds-select"
+                    change="{!c.productcategoryGIChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GI4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GI3"
+                    class="slds-select"
+                    change="{!c.productcategoryGIChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GI4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">ET鑰楁潗</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_ET1"
+                    class="slds-select"
+                    change="{!c.productcategoryETChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_ET4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_ET2"
+                    class="slds-select"
+                    change="{!c.productcategoryETChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_ET4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_ET3"
+                    class="slds-select"
+                    change="{!c.productcategoryETChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_ET4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">鍛煎惛绉�</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_BF1"
+                    class="slds-select"
+                    change="{!c.productcategoryBFChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_BF4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_BF2"
+                    class="slds-select"
+                    change="{!c.productcategoryBFChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_BF4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_BF3"
+                    class="slds-select"
+                    change="{!c.productcategoryBFChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_BF4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">鏅绉�</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GS1"
+                    class="slds-select"
+                    change="{!c.productcategoryGSChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GS4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GS2"
+                    class="slds-select"
+                    change="{!c.productcategoryGSChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GS4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GS3"
+                    class="slds-select"
+                    change="{!c.productcategoryGSChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GS4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">娉屽翱绉�</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_URO1"
+                    class="slds-select"
+                    change="{!c.productcategoryUROChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_URO4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_URO2"
+                    class="slds-select"
+                    change="{!c.productcategoryUROChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_URO4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_URO3"
+                    class="slds-select"
+                    change="{!c.productcategoryUROChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_URO4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">濡囩</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GYN1"
+                    class="slds-select"
+                    change="{!c.productcategoryGYNChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GYN4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GYN2"
+                    class="slds-select"
+                    change="{!c.productcategoryGYNChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GYN4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_GYN3"
+                    class="slds-select"
+                    change="{!c.productcategoryGYNChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_GYN4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">鑰抽蓟鍠夌</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_ENT1"
+                    class="slds-select"
+                    change="{!c.productcategoryENTChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_ENT4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_ENT2"
+                    class="slds-select"
+                    change="{!c.productcategoryENTChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_ENT4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_ENT3"
+                    class="slds-select"
+                    change="{!c.productcategoryENTChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_ENT4_3" class="slds-select" />
+                </div>
+              </div>
+              <div class="slds-form-element__row">
+                <div class="slds-size--1-of-7 slds-grid--align-center">
+                  <div style="margin-top: 32px">鍏朵粬</div>
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎1</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_OTH1"
+                    class="slds-select"
+                    change="{!c.productcategoryOTHChange1}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_OTH4_1" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎2</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_OTH2"
+                    class="slds-select"
+                    change="{!c.productcategoryOTHChange2}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_OTH4_2" class="slds-select" />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >浜у搧鍖哄垎3</label
+                  >
+                  <ui:inputSelect
+                    aura:id="select_OTH3"
+                    class="slds-select"
+                    change="{!c.productcategoryOTHChange3}"
+                  />
+                </div>
+                <div class="slds-form-element slds-size--1-of-7">
+                  <label class="slds-form-element__label" for="input-hos"
+                    >閲戦鐩爣(涓嶅惈绋�)</label
+                  >
+                  <ui:inputText aura:id="select_OTH4_3" class="slds-select" />
+                </div>
+              </div>
+            </div>
+          </fieldset>
+        </div>
+      </div>
+      <div class="slds-modal__footer slds-grid slds-grid--align-spread">
+        <div class="slds-order--1" />
+        <ui:button
+          aura:id="save_button"
+          label="淇濆瓨"
+          class="slds-button slds-button--brand slds-order--2"
+          press="{!c.createTarget}"
+        />
+        <div class="slds-order--3" />
+      </div>
     </div>
-    <div aura:id="modal_bg" class="disp_none slds-backdrop slds-backdrop--open"></div>
-</aura:component>
\ No newline at end of file
+  </div>
+  <div
+    aura:id="modal_bg"
+    class="disp_none slds-backdrop slds-backdrop--open"
+  ></div>
+</aura:component>
diff --git a/force-app/main/default/aura/CreateTarget/CreateTarget.cmp-meta.xml b/force-app/main/default/aura/CreateTarget/CreateTarget.cmp-meta.xml
index e7c0133..6462fb8 100644
--- a/force-app/main/default/aura/CreateTarget/CreateTarget.cmp-meta.xml
+++ b/force-app/main/default/aura/CreateTarget/CreateTarget.cmp-meta.xml
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" ?>
 <AuraDefinitionBundle xmlns="http://soap.sforce.com/2006/04/metadata">
-    <apiVersion>42.0</apiVersion>
+    <apiVersion>39.0</apiVersion>
     <description>A Lightning Component Bundle</description>
 </AuraDefinitionBundle>
diff --git a/force-app/main/default/aura/CreateTarget/CreateTarget.css b/force-app/main/default/aura/CreateTarget/CreateTarget.css
index 68a877a..26df70d 100644
--- a/force-app/main/default/aura/CreateTarget/CreateTarget.css
+++ b/force-app/main/default/aura/CreateTarget/CreateTarget.css
@@ -1,12 +1,6 @@
 .THIS.button_area {
-    text-align: right;
+  text-align: right;
 }
 .THIS.disp_none {
-    display: none;
+  display: none;
 }
-.THIS select {
-    --lwc-lineHeightButton:36px;
-    --lwc-heightInput:36px;
-    min-height: 0px !important;
-    height: 36px !important;
-}
\ No newline at end of file
diff --git a/force-app/main/default/aura/CreateTarget/CreateTargetHelper.js b/force-app/main/default/aura/CreateTarget/CreateTargetHelper.js
index 39a5acc..001c393 100644
--- a/force-app/main/default/aura/CreateTarget/CreateTargetHelper.js
+++ b/force-app/main/default/aura/CreateTarget/CreateTargetHelper.js
@@ -1,593 +1,673 @@
 ({
-    doinit : function(component, event, helper) {
-        component.set("v.OCMTerm", this.getOCMTerm());
-        if (component.get("v.recordId")) {
-            component.set("v.button_text", "缂栬緫");
-            var recordId = component.get("v.recordId");
-            var action = component.get("c.getHospital");
-            action.setParams({"recordId": recordId});
-            action.setCallback(this, function(response) {
-            var state = response.getState();
-            console.log("state1:"+state);
-                if(state === "SUCCESS") {
-                    var ah = response.getReturnValue();
-                    var select_ah = ah.Id;
-                    var select_ah_name = ah.Name;
-                    // component.set('v.record.Agency_Hospital__c', select_ah);
-                    //add by Deloitte 2023-6-8
-                    let agency = component.get("v.record");
-                    agency.Agency_Hospital__c = select_ah;
-                    // component.set("v.record", agency);
-                    // alert(JSON.stringify(component.find('input-hos').get("v.body")[0].get('v.values')));
-                    if ($A.get("$Browser.formFactor") == 'DESKTOP') {
-                        console.log("flag1");
-                        var values = [{
-                            type: 'Agency_Hospital_Link__c',
-                            id: select_ah,
-                            label: select_ah_name, 
-                            icon : {
-                                url:'/img/icon/t4v35/custom/custom24_120.png',
-                                backgroundColor:'dc71d1',
-                                alt:'Agency_Hospital_Link__c'
-                            }
-                        }];
-                        // component.find('input-hos').get("v.body")[0].set('v.values', values);
-                        //add by Deloitte 2023-6-8
-                        if(component.find('input-hos').get("v.body") && component.find('input-hos').get("v.body").length>0){
-                            component.find('input-hos').get("v.body")[0].set('v.values', values);
-                        }                       
-                    } else {
-                        // component.find('input-hos').get("v.body")[0].set('v.selectedLabel', select_ah_name);
-                        //add by Deloitte 2023-6-8
-                        if(component.find('input-hos').get("v.body") && component.find('input-hos').get("v.body").length>0){
-                            component.find('input-hos').get("v.body")[0].set('v.selectedLabel', select_ah_name);
-                        }                            
-                    }
-                    
-                } else if (state === "ERROR") {
-                    var errors = response.getError();
-                    var toastEvent = $A.get("e.force:showToast");
-                    toastEvent.setParams({
-                        "title": "閿欒",
-                        "type":"error",
-                        "message": errors[0].message
-                    });
-                    toastEvent.fire();
-                    
+  doinit: function (component, event, helper) {
+    component.set("v.OCMTerm", this.getOCMTerm());
+    if (component.get("v.recordId")) {
+      component.set("v.button_text", "缂栬緫");
+      var recordId = component.get("v.recordId");
+      var action = component.get("c.getHospital");
+      action.setParams({ recordId: recordId });
+      action.setCallback(this, function (response) {
+        var state = response.getState();
+        if (state === "SUCCESS") {
+          var ah = response.getReturnValue();
+          var select_ah = ah.Id;
+          var select_ah_name = ah.Name;
+
+          component.set("v.record.Agency_Hospital__c", select_ah);
+          // alert(JSON.stringify(component.find('input-hos').get("v.body")[0].get('v.values')));
+          if ($A.get("$Browser.formFactor") == "DESKTOP") {
+            var values = [
+              {
+                type: "Agency_Hospital_Link__c",
+                id: select_ah,
+                label: select_ah_name,
+                icon: {
+                  url: "/img/icon/t4v35/custom/custom24_120.png",
+                  backgroundColor: "dc71d1",
+                  alt: "Agency_Hospital_Link__c"
                 }
-            });
-            $A.enqueueAction(action);
+              }
+            ];
+            component
+              .find("input-hos")
+              .get("v.body")[0]
+              .set("v.values", values);
+          } else {
+            component
+              .find("input-hos")
+              .get("v.body")[0]
+              .set("v.selectedLabel", select_ah_name);
+          }
+        } else if (state === "ERROR") {
+          var errors = response.getError();
+          var toastEvent = $A.get("e.force:showToast");
+          toastEvent.setParams({
+            title: "閿欒",
+            type: "error",
+            message: errors[0].message
+          });
+          toastEvent.fire();
         }
+      });
+      $A.enqueueAction(action);
+    }
 
-        var action = component.get("c.getProductList");
-        action.setCallback(this, function(response) {
-            var state = response.getState();
-            console.log("state2:"+state);
-            if(state === "SUCCESS") {
-                var opts = response.getReturnValue();
-                // alert(JSON.stringify(opts["GI"]));
-                component.find("select_GI1").set("v.options", JSON.parse(JSON.stringify(opts["GI"])));
-                component.find("select_GI2").set("v.options", JSON.parse(JSON.stringify(opts["GI"])));
-                component.find("select_GI3").set("v.options", JSON.parse(JSON.stringify(opts["GI"])));
+    var action = component.get("c.getProductList");
+    action.setCallback(this, function (response) {
+      var state = response.getState();
+      if (state === "SUCCESS") {
+        var opts = response.getReturnValue();
+        // alert(JSON.stringify(opts["GI"]));
+        component
+          .find("select_GI1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GI"])));
+        component
+          .find("select_GI2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GI"])));
+        component
+          .find("select_GI3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GI"])));
 
-                component.find("select_GS1").set("v.options", JSON.parse(JSON.stringify(opts["GS"])));
-                component.find("select_GS2").set("v.options", JSON.parse(JSON.stringify(opts["GS"])));
-                component.find("select_GS3").set("v.options", JSON.parse(JSON.stringify(opts["GS"])));
+        component
+          .find("select_GS1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GS"])));
+        component
+          .find("select_GS2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GS"])));
+        component
+          .find("select_GS3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GS"])));
 
-                component.find("select_GYN1").set("v.options", JSON.parse(JSON.stringify(opts["GYN"])));
-                component.find("select_GYN2").set("v.options", JSON.parse(JSON.stringify(opts["GYN"])));
-                component.find("select_GYN3").set("v.options", JSON.parse(JSON.stringify(opts["GYN"])));
+        component
+          .find("select_GYN1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GYN"])));
+        component
+          .find("select_GYN2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GYN"])));
+        component
+          .find("select_GYN3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["GYN"])));
 
-                component.find("select_URO1").set("v.options", JSON.parse(JSON.stringify(opts["URO"])));
-                component.find("select_URO2").set("v.options", JSON.parse(JSON.stringify(opts["URO"])));
-                component.find("select_URO3").set("v.options", JSON.parse(JSON.stringify(opts["URO"])));
+        component
+          .find("select_URO1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["URO"])));
+        component
+          .find("select_URO2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["URO"])));
+        component
+          .find("select_URO3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["URO"])));
 
-                component.find("select_ENT1").set("v.options", JSON.parse(JSON.stringify(opts["ENT"])));
-                component.find("select_ENT2").set("v.options", JSON.parse(JSON.stringify(opts["ENT"])));
-                component.find("select_ENT3").set("v.options", JSON.parse(JSON.stringify(opts["ENT"])));
+        component
+          .find("select_ENT1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["ENT"])));
+        component
+          .find("select_ENT2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["ENT"])));
+        component
+          .find("select_ENT3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["ENT"])));
 
-                component.find("select_OTH1").set("v.options", JSON.parse(JSON.stringify(opts["OTH"])));
-                component.find("select_OTH2").set("v.options", JSON.parse(JSON.stringify(opts["OTH"])));
-                component.find("select_OTH3").set("v.options", JSON.parse(JSON.stringify(opts["OTH"])));
+        component
+          .find("select_OTH1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["OTH"])));
+        component
+          .find("select_OTH2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["OTH"])));
+        component
+          .find("select_OTH3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["OTH"])));
 
-                component.find("select_ET1").set("v.options", JSON.parse(JSON.stringify(opts["ET"])));
-                component.find("select_ET2").set("v.options", JSON.parse(JSON.stringify(opts["ET"])));
-                component.find("select_ET3").set("v.options", JSON.parse(JSON.stringify(opts["ET"])));
+        component
+          .find("select_ET1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["ET"])));
+        component
+          .find("select_ET2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["ET"])));
+        component
+          .find("select_ET3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["ET"])));
 
-                component.find("select_BF1").set("v.options", JSON.parse(JSON.stringify(opts["BF"])));
-                component.find("select_BF2").set("v.options", JSON.parse(JSON.stringify(opts["BF"])));
-                component.find("select_BF3").set("v.options", JSON.parse(JSON.stringify(opts["BF"])));
-            } else if (state === "ERROR") {
-                var errors = response.getError();
-                var toastEvent = $A.get("e.force:showToast");
-                toastEvent.setParams({
-                    "title": "閿欒",
-                    "type":"error",
-                    "message": errors[0].message
-                });
-                toastEvent.fire();
-                
-            }
-        });
-        $A.enqueueAction(action);
-    },
-
-	toggle_report : function(component, event, helper) {
-        var modal_window = component.find('modal_window');
-        var modal_bg = component.find('modal_bg');
-        $A.util.toggleClass(modal_window, 'disp_none');
-        $A.util.toggleClass(modal_bg, 'disp_none');
-
-        if ($A.util.hasClass(modal_window, 'disp_none') && !component.get("v.recordId")) {
-            $A.get('e.force:refreshView').fire();
-        }
-    },
-
-    productcategoryChange : function(component, event, helper, dept, index) {
-        var cmpId = 'select_'+dept;
-        var myId;
-        var o1Id;
-        var o2Id;
-        if (index == 1) {
-            myId = cmpId + '1';
-            o1Id = cmpId + '2';
-            o2Id = cmpId + '3';
-        } else if (index == 2){
-            myId = cmpId + '2';
-            o1Id = cmpId + '1';
-            o2Id = cmpId + '3';
-        } else {
-            myId = cmpId + '3';
-            o1Id = cmpId + '1';
-            o2Id = cmpId + '2';
-        }
-
-        var product_category_id = component.find(myId).get('v.value');
-        var pcId1 = component.find(o1Id).get('v.value');
-        var pcId2 = component.find(o2Id).get('v.value');
-        var p1bool = pcId1 != '' && pcId1 != null && pcId1 != undefined;
-        var p2bool = pcId2 != '' && pcId2 != null && pcId2 != undefined;
-        var p0bool = product_category_id != '' && product_category_id != null && product_category_id != undefined;
-        if ((p1bool && p0bool && product_category_id == pcId1) || (p2bool && p0bool && product_category_id == pcId2)) {
-            this.warning('涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�');
-            component.find(myId).set('v.value','');
-        }
-    },
-
-    selectHos : function(component, event, helper) {
-
-    	var accid = component.get("v.record.Agency_Hospital__c");
-    	var action = component.get("c.getDeptAmount");
-    	action.setParams({ "hospitalId" : accid });
-    	action.setCallback(this, function(response) {
-    		var state = response.getState();
-    		if (state === "SUCCESS") {
-    			var amountMap = response.getReturnValue();
-                var GIProduct_Category1 = '';
-                var GIProduct_Category2 = '';
-                var GIProduct_Category3 = '';
-                var GIAim_Price__c1 = '';
-                var GIAim_Price__c2 = '';
-                var GIAim_Price__c3 = '';
-                if (amountMap.GI.length > 0) {
-                    GIProduct_Category1 = amountMap.GI[0].Product_Category__c;
-                    if (amountMap.GI.length > 1) {
-                        GIProduct_Category2 = amountMap.GI[1].Product_Category__c;
-                    }
-                    if (amountMap.GI.length > 2) {
-                        GIProduct_Category3 = amountMap.GI[2].Product_Category__c;
-                    }
-                    GIAim_Price__c1 = amountMap.GI[0].Aim_Price__c;
-                    GIAim_Price__c2 = amountMap.GI[1].Aim_Price__c;
-                    GIAim_Price__c3 = amountMap.GI[2].Aim_Price__c;
-                    console.warn(GIAim_Price__c1+"-"+GIAim_Price__c2+"-"+GIAim_Price__c3);
-
-                }
-                component.find('select_GI1').set('v.value',GIProduct_Category1);
-                component.find('select_GI2').set('v.value',GIProduct_Category2);
-                component.find('select_GI3').set('v.value',GIProduct_Category3);
-                component.find('select_GI4_1').set('v.value',GIAim_Price__c1);
-                component.find('select_GI4_2').set('v.value',GIAim_Price__c2);
-                component.find('select_GI4_3').set('v.value',GIAim_Price__c3);
-
-
-                var ETProduct_Category1 = '';
-                var ETProduct_Category2 = '';
-                var ETProduct_Category3 = '';
-                var ETAim_Price__c1 = '';
-                var ETAim_Price__c2 = '';
-                var ETAim_Price__c3 = '';
-                if (amountMap.ET.length > 0) {
-                    ETProduct_Category1 = amountMap.ET[0].Product_Category__c;
-                    if (amountMap.ET.length > 1) {
-                        ETProduct_Category2 = amountMap.ET[1].Product_Category__c;
-                    }
-                    if (amountMap.ET.length > 2) {
-                        ETProduct_Category3 = amountMap.ET[2].Product_Category__c;
-                    }
-                    ETAim_Price__c1 = amountMap.ET[0].Aim_Price__c;
-                    ETAim_Price__c2 = amountMap.ET[1].Aim_Price__c;
-                    ETAim_Price__c3 = amountMap.ET[2].Aim_Price__c;
-                } 
-                component.find('select_ET1').set('v.value',ETProduct_Category1);
-                component.find('select_ET2').set('v.value',ETProduct_Category2);
-                component.find('select_ET3').set('v.value',ETProduct_Category3);
-                component.find('select_ET4_1').set('v.value',ETAim_Price__c1);
-                component.find('select_ET4_2').set('v.value',ETAim_Price__c2);
-                component.find('select_ET4_3').set('v.value',ETAim_Price__c3);
-
-
-                var BFProduct_Category1 = '';
-                var BFProduct_Category2 = '';
-                var BFProduct_Category3 = '';
-                var BFAim_Price__c1 = '';
-                var BFAim_Price__c2 = '';
-                var BFAim_Price__c3 = '';
-                if (amountMap.BF.length > 0) {
-                    BFProduct_Category1 = amountMap.BF[0].Product_Category__c;
-                    if (amountMap.BF.length > 1) {
-                        BFProduct_Category2 = amountMap.BF[1].Product_Category__c;
-                    }
-                    if (amountMap.BF.length > 2) {
-                        BFProduct_Category3 = amountMap.BF[2].Product_Category__c;
-                    }
-                    BFAim_Price__c1 = amountMap.BF[0].Aim_Price__c;
-                    BFAim_Price__c2 = amountMap.BF[1].Aim_Price__c;
-                    BFAim_Price__c3 = amountMap.BF[2].Aim_Price__c;
-                } 
-                component.find('select_BF1').set('v.value',BFProduct_Category1);
-                component.find('select_BF2').set('v.value',BFProduct_Category2);
-                component.find('select_BF3').set('v.value',BFProduct_Category3);
-                component.find('select_BF4_1').set('v.value',BFAim_Price__c1);
-                component.find('select_BF4_2').set('v.value',BFAim_Price__c2);
-                component.find('select_BF4_3').set('v.value',BFAim_Price__c3);
-               
-
-                var OTHProduct_Category1 = '';
-                var OTHProduct_Category2 = '';
-                var OTHProduct_Category3 = '';
-                var OTHAim_Price__c1 = '';
-                var OTHAim_Price__c2 = '';
-                var OTHAim_Price__c3 = '';
-                if (amountMap.OTH.length > 0) {
-
-                    OTHProduct_Category1 = amountMap.OTH[0].Product_Category__c;
-                    if (amountMap.OTH.length > 1) {
-                        OTHProduct_Category2 = amountMap.OTH[1].Product_Category__c;
-                    }
-                    if (amountMap.OTH.length > 2) {
-                        OTHProduct_Category3 = amountMap.OTH[2].Product_Category__c;
-                    }
-                    OTHAim_Price__c1 = amountMap.OTH[0].Aim_Price__c;
-                    OTHAim_Price__c2 = amountMap.OTH[1].Aim_Price__c;
-                    OTHAim_Price__c3 = amountMap.OTH[2].Aim_Price__c;
-                } 
-                component.find('select_OTH1').set('v.value',OTHProduct_Category1);
-                component.find('select_OTH2').set('v.value',OTHProduct_Category2);
-                component.find('select_OTH3').set('v.value',OTHProduct_Category3);
-                component.find('select_OTH4_1').set('v.value',OTHAim_Price__c1);
-                component.find('select_OTH4_2').set('v.value',OTHAim_Price__c2);
-                component.find('select_OTH4_3').set('v.value',OTHAim_Price__c3);
-                
-                var GSProduct_Category1 = '';
-                var GSProduct_Category2 = '';
-                var GSProduct_Category3 = '';
-                var GSPAim_Price__c1 = '';
-                var GSPAim_Price__c2 = '';
-                var GSPAim_Price__c3 = '';
-                if (amountMap.GS.length > 0) {
-                    GSProduct_Category1 = amountMap.GS[0].Product_Category__c;
-                    if (amountMap.GS.length > 1) {
-                        GSProduct_Category2 = amountMap.GS[1].Product_Category__c;
-                    }
-                    if (amountMap.GS.length > 2) {
-                        GSProduct_Category3 = amountMap.GS[2].Product_Category__c;
-                    }
-                    GSPAim_Price__c1 = amountMap.GS[0].Aim_Price__c;
-                    GSPAim_Price__c2 = amountMap.GS[1].Aim_Price__c;
-                    GSPAim_Price__c3= amountMap.GS[2].Aim_Price__c;
-                } 
-                component.find('select_GS1').set('v.value',GSProduct_Category1);
-                component.find('select_GS2').set('v.value',GSProduct_Category2);
-                component.find('select_GS3').set('v.value',GSProduct_Category3);
-                component.find('select_GS4_1').set('v.value',GSPAim_Price__c1);
-                component.find('select_GS4_2').set('v.value',GSPAim_Price__c2);
-                component.find('select_GS4_3').set('v.value',GSPAim_Price__c3);
-                
-                var UROProduct_Category1 = '';
-                var UROProduct_Category2 = '';
-                var UROProduct_Category3 = '';
-                var UROAim_Price__c1 = '';
-                var UROAim_Price__c2 = '';
-                var UROAim_Price__c3 = '';
-                if (amountMap.URO.length > 0) {
-
-                    UROProduct_Category1 = amountMap.URO[0].Product_Category__c;
-                    if (amountMap.URO.length > 1) {
-                        UROProduct_Category2 = amountMap.URO[1].Product_Category__c;
-                    }
-                    if (amountMap.URO.length > 2) {
-                        UROProduct_Category3 = amountMap.URO[2].Product_Category__c;
-                    }
-                    UROAim_Price__c1 = amountMap.URO[0].Aim_Price__c;
-                    UROAim_Price__c2 = amountMap.URO[1].Aim_Price__c;
-                    UROAim_Price__c3 = amountMap.URO[2].Aim_Price__c;
-                } 
-                component.find('select_URO1').set('v.value',UROProduct_Category1);
-                component.find('select_URO2').set('v.value',UROProduct_Category2);
-                component.find('select_URO3').set('v.value',UROProduct_Category3);
-                component.find('select_URO4_1').set('v.value',UROAim_Price__c1);
-                component.find('select_URO4_2').set('v.value',UROAim_Price__c2);
-                component.find('select_URO4_3').set('v.value',UROAim_Price__c3);
-
-               
-                var GYNProduct_Category1 = '';
-                var GYNProduct_Category2 = '';
-                var GYNProduct_Category3 = '';
-                var GYNAim_Price__c1 = '';
-                var GYNAim_Price__c2 = '';
-                var GYNAim_Price__c3 = '';
-                if (amountMap.GYN.length > 0) {
-
-                    GYNProduct_Category1 = amountMap.GYN[0].Product_Category__c;
-                    if (amountMap.GYN.length > 1) {
-                        GYNProduct_Category2 = amountMap.GYN[1].Product_Category__c;
-                    }
-                    if (amountMap.GYN.length > 2) {
-                        GYNProduct_Category3 = amountMap.GYN[2].Product_Category__c;
-                    }
-                    GYNAim_Price__c1= amountMap.GYN[0].Aim_Price__c;
-                    GYNAim_Price__c2 = amountMap.GYN[1].Aim_Price__c;
-                    GYNAim_Price__c3 = amountMap.GYN[2].Aim_Price__c;
-                } 
-                component.find('select_GYN1').set('v.value',GYNProduct_Category1);
-                component.find('select_GYN2').set('v.value',GYNProduct_Category2);
-                component.find('select_GYN3').set('v.value',GYNProduct_Category3);
-                component.find('select_GYN4_1').set('v.value',GYNAim_Price__c1);
-                component.find('select_GYN4_2').set('v.value',GYNAim_Price__c2);
-                component.find('select_GYN4_3').set('v.value',GYNAim_Price__c3);
-
-                
-                var ENTProduct_Category1 = '';
-                var ENTProduct_Category2 = '';
-                var ENTProduct_Category3 = '';
-                var ENTAim_Price__c1 = '';
-                var ENTAim_Price__c2 = '';
-                var ENTAim_Price__c3 = '';
-                if (amountMap.ENT.length > 0) {
-
-                    ENTProduct_Category1 = amountMap.ENT[0].Product_Category__c;
-                    if (amountMap.ENT.length > 1) {
-                        ENTProduct_Category2 = amountMap.ENT[1].Product_Category__c;
-                    }
-                    if (amountMap.ENT.length > 2) {
-                        ENTProduct_Category3 = amountMap.ENT[2].Product_Category__c;
-                    }
-                    ENTAim_Price__c1 = amountMap.ENT[0].Aim_Price__c;
-                    ENTAim_Price__c2 = amountMap.ENT[1].Aim_Price__c;
-                    ENTAim_Price__c3 = amountMap.ENT[2].Aim_Price__c;
-                } 
-                component.find('select_ENT1').set('v.value',ENTProduct_Category1);
-                component.find('select_ENT2').set('v.value',ENTProduct_Category2);
-                component.find('select_ENT3').set('v.value',ENTProduct_Category3);
-                component.find('select_ENT4_1').set('v.value',ENTAim_Price__c1);
-                component.find('select_ENT4_2').set('v.value',ENTAim_Price__c2);
-                component.find('select_ENT4_3').set('v.value',ENTAim_Price__c3);
-
-    		}
-    	});
-		$A.enqueueAction(action);
-        console.log(JSON.stringify(component.find('input-hos').get("v.body")[0].get('v')));
-    },
-
-    getOCMTerm : function() {
-        var today = new Date();
-        var year = today.getFullYear();
-        var month = today.getMonth();
-
-        if (month < 3) year -= 1;
-        var thisYearOCMPeriod = String(year - 1867) + 'P';
-
-        return thisYearOCMPeriod;
-    },
-
-    createTarget : function(component, event, helper) {
-    	var action = component.get("c.createSFTarget");
-    	// alert(component.get("v.GIAmount"));
-
-
-
-        var  p1_1 = component.find('select_GI4_1').get('v.value') ; 
-        var  p1_2 = component.find('select_GI4_2').get('v.value') ;
-        var  p1_3 = component.find('select_GI4_3').get('v.value') ;
-
-        if (p1_1 == undefined || p1_1 == "") {
-            p1_1 = 0;
-        }
-        if (p1_2 == undefined || p1_2 == "") {
-            p1_2 = 0;
-        }
-        if (p1_3 == undefined || p1_3 == "") {
-            p1_3 = 0;
-        }
-        console.warn(p1_1+"-"+p1_2+"-"+p1_3);
-
-        var  p2_1 = component.find('select_ET4_1').get('v.value') ; 
-        var  p2_2 = component.find('select_ET4_2').get('v.value') ;
-        var  p2_3 = component.find('select_ET4_3').get('v.value') ;
-        if (p2_1 == undefined || p2_1 == "") {
-            p2_1 = 0;
-        }
-        if (p2_2 == undefined || p2_2 == "") {
-            p2_2 = 0;
-        }
-        if (p2_3 == undefined || p2_3 == "") {
-            p2_3 = 0;
-        }
-
-
-        var  p3_1 = component.find('select_BF4_1').get('v.value') ; 
-        var  p3_2 = component.find('select_BF4_2').get('v.value') ;
-        var  p3_3 = component.find('select_BF4_3').get('v.value') ;
-        if (p3_1 == undefined || p3_1 == "") {
-            p3_1 = 0;
-        }
-        if (p3_2 == undefined || p3_2 == "") {
-            p3_2 = 0;
-        }
-        if (p3_3 == undefined || p3_3 == "") {
-            p3_3 = 0;
-        }
-
-
-
-        var  p4_1 = component.find('select_OTH4_1').get('v.value') ; 
-        var  p4_2 = component.find('select_OTH4_2').get('v.value') ;
-        var  p4_3 = component.find('select_OTH4_3').get('v.value') ;
-        if (p4_1 == undefined || p4_1 == "") {
-            p4_1 = 0;
-        }
-        if (p4_2 == undefined || p4_2 == "") {
-            p4_2 = 0;
-        }
-        if (p4_3 == undefined || p4_3 == "") {
-            p4_3 = 0;
-        }
-
-
-
-        var  p5_1 = component.find('select_GS4_1').get('v.value') ; 
-        var  p5_2 = component.find('select_GS4_2').get('v.value') ;
-        var  p5_3 = component.find('select_GS4_3').get('v.value') ;
-        if (p5_1 == undefined || p5_1 == "") {
-            p5_1 = 0;
-        }
-        if (p5_2 == undefined || p5_2 == "") {
-            p5_2 = 0;
-        }
-        if (p5_3 == undefined || p5_3 == "") {
-            p5_3 = 0;
-        }
-
-
-
-        var  p6_1 = component.find('select_URO4_1').get('v.value') ; 
-        var  p6_2 = component.find('select_URO4_2').get('v.value') ;
-        var  p6_3 = component.find('select_URO4_3').get('v.value') ;
-        if (p6_1 == undefined || p6_1 == "") {
-            p6_1 = 0;
-        }
-        if (p6_2 == undefined || p6_2 == "") {
-            p6_2 = 0;
-        }
-        if (p6_3 == undefined || p6_3 == "") {
-            p6_3 = 0;
-        }
-
-        var  p7_1 = component.find('select_GYN4_1').get('v.value') ; 
-        var  p7_2 = component.find('select_GYN4_2').get('v.value') ;
-        var  p7_3 = component.find('select_GYN4_3').get('v.value') ;
-        if (p7_1 == undefined || p7_1 == "") {
-            p7_1 = 0;
-        }
-        if (p7_2 == undefined || p7_2 == "") {
-            p7_2 = 0;
-        }
-        if (p7_3 == undefined || p7_3 == "") {
-            p7_3 = 0;
-        }
-
-
-
-        var  p8_1 = component.find('select_ENT4_1').get('v.value') ; 
-        var  p8_2 = component.find('select_ENT4_2').get('v.value') ;
-        var  p8_3 = component.find('select_ENT4_3').get('v.value') ;
-        if (p8_1 == undefined || p8_1 == "") {
-            p8_1 = 0;
-        }
-        if (p8_2 == undefined || p8_2 == "") {
-            p8_2 = 0;
-        }
-        if (p8_3 == undefined || p8_3 == "") {
-            p8_3 = 0;
-        }
-
-
-       
-       
-    	action.setParams({ 
-    						"hospitalId" : component.get("v.record.Agency_Hospital__c"), 
-    						"GIProduct" : [component.find('select_GI1').get('v.value'),component.find('select_GI2').get('v.value'),component.find('select_GI3').get('v.value'),p1_1,p1_2,p1_3], 
-    						"ETProduct" : [component.find('select_ET1').get('v.value'),component.find('select_ET2').get('v.value'),component.find('select_ET3').get('v.value'),p2_1, p2_2,p2_3 ], 
-    						"BFProduct" : [component.find('select_BF1').get('v.value'),component.find('select_BF2').get('v.value'),component.find('select_BF3').get('v.value'),p3_1 ,p3_2 ,p3_3 ],
-    						"OTHProduct" : [component.find('select_OTH1').get('v.value'),component.find('select_OTH2').get('v.value'),component.find('select_OTH3').get('v.value'),p4_1,p4_2 ,p4_3],
-    						"GSProduct" : [component.find('select_GS1').get('v.value'),component.find('select_GS2').get('v.value'),component.find('select_GS3').get('v.value'),p5_1,p5_2,p5_3],
-    						"UROProduct" : [component.find('select_URO1').get('v.value'),component.find('select_URO2').get('v.value'),component.find('select_URO3').get('v.value'),p6_1,p6_2 ,p6_2 ],
-    						"GYNProduct" : [component.find('select_GYN1').get('v.value'),component.find('select_GYN2').get('v.value'),component.find('select_GYN3').get('v.value'),p7_1,p7_2 ,p7_3 ],
-    						"ENTProduct" : [component.find('select_ENT1').get('v.value'),component.find('select_ENT2').get('v.value'),component.find('select_ENT3').get('v.value'),p8_1 ,p8_2 ,p8_3],
-                            "OCMTerm" : component.get("v.OCMTerm")
-    					});
-    	action.setCallback(this, function(response) {
-            console.warn(response);
-    		var state = response.getState();
-    		if (state === "SUCCESS") {
-    			var modal_window = component.find('modal_window');
-		        var modal_bg = component.find('modal_bg');
-		        $A.util.toggleClass(modal_window, 'disp_none');
-		        $A.util.toggleClass(modal_bg, 'disp_none');
-
-    			var toastEvent = $A.get("e.force:showToast");
-                toastEvent.setParams({
-                    "title": "鎴愬姛",
-                    "type":"success",
-                    "message": "淇濆瓨鎴愬姛"
-                });
-                toastEvent.fire();
-
-                $A.get('e.force:refreshView').fire();
-    		} else if (state === "INCOMPLETE") {
-    			var toastEvent = $A.get("e.force:showToast");
-                toastEvent.setParams({
-                    "title": "鏈畬鎴�!",
-                    "type":"error",
-                    "message": "鏈畬鎴�"
-                });
-                toastEvent.fire();
-    		} else if (state === "ERROR") {
-    			var errors = response.getError();
-    			var toastEvent = $A.get("e.force:showToast");
-                toastEvent.setParams({
-                    "title": "閿欒",
-                    "type":"error",
-                    "message": errors[0].message
-                });
-                toastEvent.fire();
-    			
-    		}
-		});
-		$A.enqueueAction(action);
-    },
-
-    warning : function(message) {
+        component
+          .find("select_BF1")
+          .set("v.options", JSON.parse(JSON.stringify(opts["BF"])));
+        component
+          .find("select_BF2")
+          .set("v.options", JSON.parse(JSON.stringify(opts["BF"])));
+        component
+          .find("select_BF3")
+          .set("v.options", JSON.parse(JSON.stringify(opts["BF"])));
+      } else if (state === "ERROR") {
+        var errors = response.getError();
         var toastEvent = $A.get("e.force:showToast");
         toastEvent.setParams({
-            "title": "璀﹀憡!",
-            "message": message,
-            "type":"warning",
-            "duration" : "10000"
+          title: "閿欒",
+          type: "error",
+          message: errors[0].message
         });
         toastEvent.fire();
-    },
-    
-    error : function(message) {
+      }
+    });
+    $A.enqueueAction(action);
+  },
+
+  toggle_report: function (component, event, helper) {
+    var modal_window = component.find("modal_window");
+    var modal_bg = component.find("modal_bg");
+    $A.util.toggleClass(modal_window, "disp_none");
+    $A.util.toggleClass(modal_bg, "disp_none");
+
+    if (
+      $A.util.hasClass(modal_window, "disp_none") &&
+      !component.get("v.recordId")
+    ) {
+      $A.get("e.force:refreshView").fire();
+    }
+  },
+
+  productcategoryChange: function (component, event, helper, dept, index) {
+    var cmpId = "select_" + dept;
+    var myId;
+    var o1Id;
+    var o2Id;
+    if (index == 1) {
+      myId = cmpId + "1";
+      o1Id = cmpId + "2";
+      o2Id = cmpId + "3";
+    } else if (index == 2) {
+      myId = cmpId + "2";
+      o1Id = cmpId + "1";
+      o2Id = cmpId + "3";
+    } else {
+      myId = cmpId + "3";
+      o1Id = cmpId + "1";
+      o2Id = cmpId + "2";
+    }
+
+    var product_category_id = component.find(myId).get("v.value");
+    var pcId1 = component.find(o1Id).get("v.value");
+    var pcId2 = component.find(o2Id).get("v.value");
+    var p1bool = pcId1 != "" && pcId1 != null && pcId1 != undefined;
+    var p2bool = pcId2 != "" && pcId2 != null && pcId2 != undefined;
+    var p0bool =
+      product_category_id != "" &&
+      product_category_id != null &&
+      product_category_id != undefined;
+    if (
+      (p1bool && p0bool && product_category_id == pcId1) ||
+      (p2bool && p0bool && product_category_id == pcId2)
+    ) {
+      this.warning("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
+      component.find(myId).set("v.value", "");
+    }
+  },
+
+  selectHos: function (component, event, helper) {
+    var accid = component.get("v.record.Agency_Hospital__c");
+    var action = component.get("c.getDeptAmount");
+    action.setParams({ hospitalId: accid });
+    action.setCallback(this, function (response) {
+      var state = response.getState();
+      if (state === "SUCCESS") {
+        var amountMap = response.getReturnValue();
+        var GIProduct_Category1 = "";
+        var GIProduct_Category2 = "";
+        var GIProduct_Category3 = "";
+        var GIAim_Price__c1 = "";
+        var GIAim_Price__c2 = "";
+        var GIAim_Price__c3 = "";
+        if (amountMap.GI.length > 0) {
+          GIProduct_Category1 = amountMap.GI[0].Product_Category__c;
+          if (amountMap.GI.length > 1) {
+            GIProduct_Category2 = amountMap.GI[1].Product_Category__c;
+          }
+          if (amountMap.GI.length > 2) {
+            GIProduct_Category3 = amountMap.GI[2].Product_Category__c;
+          }
+          GIAim_Price__c1 = amountMap.GI[0].Aim_Price__c;
+          GIAim_Price__c2 = amountMap.GI[1].Aim_Price__c;
+          GIAim_Price__c3 = amountMap.GI[2].Aim_Price__c;
+          console.warn(
+            GIAim_Price__c1 + "-" + GIAim_Price__c2 + "-" + GIAim_Price__c3
+          );
+        }
+        component.find("select_GI1").set("v.value", GIProduct_Category1);
+        component.find("select_GI2").set("v.value", GIProduct_Category2);
+        component.find("select_GI3").set("v.value", GIProduct_Category3);
+        component.find("select_GI4_1").set("v.value", GIAim_Price__c1);
+        component.find("select_GI4_2").set("v.value", GIAim_Price__c2);
+        component.find("select_GI4_3").set("v.value", GIAim_Price__c3);
+
+        var ETProduct_Category1 = "";
+        var ETProduct_Category2 = "";
+        var ETProduct_Category3 = "";
+        var ETAim_Price__c1 = "";
+        var ETAim_Price__c2 = "";
+        var ETAim_Price__c3 = "";
+        if (amountMap.ET.length > 0) {
+          ETProduct_Category1 = amountMap.ET[0].Product_Category__c;
+          if (amountMap.ET.length > 1) {
+            ETProduct_Category2 = amountMap.ET[1].Product_Category__c;
+          }
+          if (amountMap.ET.length > 2) {
+            ETProduct_Category3 = amountMap.ET[2].Product_Category__c;
+          }
+          ETAim_Price__c1 = amountMap.ET[0].Aim_Price__c;
+          ETAim_Price__c2 = amountMap.ET[1].Aim_Price__c;
+          ETAim_Price__c3 = amountMap.ET[2].Aim_Price__c;
+        }
+        component.find("select_ET1").set("v.value", ETProduct_Category1);
+        component.find("select_ET2").set("v.value", ETProduct_Category2);
+        component.find("select_ET3").set("v.value", ETProduct_Category3);
+        component.find("select_ET4_1").set("v.value", ETAim_Price__c1);
+        component.find("select_ET4_2").set("v.value", ETAim_Price__c2);
+        component.find("select_ET4_3").set("v.value", ETAim_Price__c3);
+
+        var BFProduct_Category1 = "";
+        var BFProduct_Category2 = "";
+        var BFProduct_Category3 = "";
+        var BFAim_Price__c1 = "";
+        var BFAim_Price__c2 = "";
+        var BFAim_Price__c3 = "";
+        if (amountMap.BF.length > 0) {
+          BFProduct_Category1 = amountMap.BF[0].Product_Category__c;
+          if (amountMap.BF.length > 1) {
+            BFProduct_Category2 = amountMap.BF[1].Product_Category__c;
+          }
+          if (amountMap.BF.length > 2) {
+            BFProduct_Category3 = amountMap.BF[2].Product_Category__c;
+          }
+          BFAim_Price__c1 = amountMap.BF[0].Aim_Price__c;
+          BFAim_Price__c2 = amountMap.BF[1].Aim_Price__c;
+          BFAim_Price__c3 = amountMap.BF[2].Aim_Price__c;
+        }
+        component.find("select_BF1").set("v.value", BFProduct_Category1);
+        component.find("select_BF2").set("v.value", BFProduct_Category2);
+        component.find("select_BF3").set("v.value", BFProduct_Category3);
+        component.find("select_BF4_1").set("v.value", BFAim_Price__c1);
+        component.find("select_BF4_2").set("v.value", BFAim_Price__c2);
+        component.find("select_BF4_3").set("v.value", BFAim_Price__c3);
+
+        var OTHProduct_Category1 = "";
+        var OTHProduct_Category2 = "";
+        var OTHProduct_Category3 = "";
+        var OTHAim_Price__c1 = "";
+        var OTHAim_Price__c2 = "";
+        var OTHAim_Price__c3 = "";
+        if (amountMap.OTH.length > 0) {
+          OTHProduct_Category1 = amountMap.OTH[0].Product_Category__c;
+          if (amountMap.OTH.length > 1) {
+            OTHProduct_Category2 = amountMap.OTH[1].Product_Category__c;
+          }
+          if (amountMap.OTH.length > 2) {
+            OTHProduct_Category3 = amountMap.OTH[2].Product_Category__c;
+          }
+          OTHAim_Price__c1 = amountMap.OTH[0].Aim_Price__c;
+          OTHAim_Price__c2 = amountMap.OTH[1].Aim_Price__c;
+          OTHAim_Price__c3 = amountMap.OTH[2].Aim_Price__c;
+        }
+        component.find("select_OTH1").set("v.value", OTHProduct_Category1);
+        component.find("select_OTH2").set("v.value", OTHProduct_Category2);
+        component.find("select_OTH3").set("v.value", OTHProduct_Category3);
+        component.find("select_OTH4_1").set("v.value", OTHAim_Price__c1);
+        component.find("select_OTH4_2").set("v.value", OTHAim_Price__c2);
+        component.find("select_OTH4_3").set("v.value", OTHAim_Price__c3);
+
+        var GSProduct_Category1 = "";
+        var GSProduct_Category2 = "";
+        var GSProduct_Category3 = "";
+        var GSPAim_Price__c1 = "";
+        var GSPAim_Price__c2 = "";
+        var GSPAim_Price__c3 = "";
+        if (amountMap.GS.length > 0) {
+          GSProduct_Category1 = amountMap.GS[0].Product_Category__c;
+          if (amountMap.GS.length > 1) {
+            GSProduct_Category2 = amountMap.GS[1].Product_Category__c;
+          }
+          if (amountMap.GS.length > 2) {
+            GSProduct_Category3 = amountMap.GS[2].Product_Category__c;
+          }
+          GSPAim_Price__c1 = amountMap.GS[0].Aim_Price__c;
+          GSPAim_Price__c2 = amountMap.GS[1].Aim_Price__c;
+          GSPAim_Price__c3 = amountMap.GS[2].Aim_Price__c;
+        }
+        component.find("select_GS1").set("v.value", GSProduct_Category1);
+        component.find("select_GS2").set("v.value", GSProduct_Category2);
+        component.find("select_GS3").set("v.value", GSProduct_Category3);
+        component.find("select_GS4_1").set("v.value", GSPAim_Price__c1);
+        component.find("select_GS4_2").set("v.value", GSPAim_Price__c2);
+        component.find("select_GS4_3").set("v.value", GSPAim_Price__c3);
+
+        var UROProduct_Category1 = "";
+        var UROProduct_Category2 = "";
+        var UROProduct_Category3 = "";
+        var UROAim_Price__c1 = "";
+        var UROAim_Price__c2 = "";
+        var UROAim_Price__c3 = "";
+        if (amountMap.URO.length > 0) {
+          UROProduct_Category1 = amountMap.URO[0].Product_Category__c;
+          if (amountMap.URO.length > 1) {
+            UROProduct_Category2 = amountMap.URO[1].Product_Category__c;
+          }
+          if (amountMap.URO.length > 2) {
+            UROProduct_Category3 = amountMap.URO[2].Product_Category__c;
+          }
+          UROAim_Price__c1 = amountMap.URO[0].Aim_Price__c;
+          UROAim_Price__c2 = amountMap.URO[1].Aim_Price__c;
+          UROAim_Price__c3 = amountMap.URO[2].Aim_Price__c;
+        }
+        component.find("select_URO1").set("v.value", UROProduct_Category1);
+        component.find("select_URO2").set("v.value", UROProduct_Category2);
+        component.find("select_URO3").set("v.value", UROProduct_Category3);
+        component.find("select_URO4_1").set("v.value", UROAim_Price__c1);
+        component.find("select_URO4_2").set("v.value", UROAim_Price__c2);
+        component.find("select_URO4_3").set("v.value", UROAim_Price__c3);
+
+        var GYNProduct_Category1 = "";
+        var GYNProduct_Category2 = "";
+        var GYNProduct_Category3 = "";
+        var GYNAim_Price__c1 = "";
+        var GYNAim_Price__c2 = "";
+        var GYNAim_Price__c3 = "";
+        if (amountMap.GYN.length > 0) {
+          GYNProduct_Category1 = amountMap.GYN[0].Product_Category__c;
+          if (amountMap.GYN.length > 1) {
+            GYNProduct_Category2 = amountMap.GYN[1].Product_Category__c;
+          }
+          if (amountMap.GYN.length > 2) {
+            GYNProduct_Category3 = amountMap.GYN[2].Product_Category__c;
+          }
+          GYNAim_Price__c1 = amountMap.GYN[0].Aim_Price__c;
+          GYNAim_Price__c2 = amountMap.GYN[1].Aim_Price__c;
+          GYNAim_Price__c3 = amountMap.GYN[2].Aim_Price__c;
+        }
+        component.find("select_GYN1").set("v.value", GYNProduct_Category1);
+        component.find("select_GYN2").set("v.value", GYNProduct_Category2);
+        component.find("select_GYN3").set("v.value", GYNProduct_Category3);
+        component.find("select_GYN4_1").set("v.value", GYNAim_Price__c1);
+        component.find("select_GYN4_2").set("v.value", GYNAim_Price__c2);
+        component.find("select_GYN4_3").set("v.value", GYNAim_Price__c3);
+
+        var ENTProduct_Category1 = "";
+        var ENTProduct_Category2 = "";
+        var ENTProduct_Category3 = "";
+        var ENTAim_Price__c1 = "";
+        var ENTAim_Price__c2 = "";
+        var ENTAim_Price__c3 = "";
+        if (amountMap.ENT.length > 0) {
+          ENTProduct_Category1 = amountMap.ENT[0].Product_Category__c;
+          if (amountMap.ENT.length > 1) {
+            ENTProduct_Category2 = amountMap.ENT[1].Product_Category__c;
+          }
+          if (amountMap.ENT.length > 2) {
+            ENTProduct_Category3 = amountMap.ENT[2].Product_Category__c;
+          }
+          ENTAim_Price__c1 = amountMap.ENT[0].Aim_Price__c;
+          ENTAim_Price__c2 = amountMap.ENT[1].Aim_Price__c;
+          ENTAim_Price__c3 = amountMap.ENT[2].Aim_Price__c;
+        }
+        component.find("select_ENT1").set("v.value", ENTProduct_Category1);
+        component.find("select_ENT2").set("v.value", ENTProduct_Category2);
+        component.find("select_ENT3").set("v.value", ENTProduct_Category3);
+        component.find("select_ENT4_1").set("v.value", ENTAim_Price__c1);
+        component.find("select_ENT4_2").set("v.value", ENTAim_Price__c2);
+        component.find("select_ENT4_3").set("v.value", ENTAim_Price__c3);
+      }
+    });
+    $A.enqueueAction(action);
+    console.log(
+      JSON.stringify(component.find("input-hos").get("v.body")[0].get("v"))
+    );
+  },
+
+  getOCMTerm: function () {
+    var today = new Date();
+    var year = today.getFullYear();
+    var month = today.getMonth();
+
+    if (month < 3) year -= 1;
+    var thisYearOCMPeriod = String(year - 1867) + "P";
+
+    return thisYearOCMPeriod;
+  },
+
+  createTarget: function (component, event, helper) {
+    var action = component.get("c.createSFTarget");
+    // alert(component.get("v.GIAmount"));
+
+    var p1_1 = component.find("select_GI4_1").get("v.value");
+    var p1_2 = component.find("select_GI4_2").get("v.value");
+    var p1_3 = component.find("select_GI4_3").get("v.value");
+
+    if (p1_1 == undefined || p1_1 == "") {
+      p1_1 = 0;
+    }
+    if (p1_2 == undefined || p1_2 == "") {
+      p1_2 = 0;
+    }
+    if (p1_3 == undefined || p1_3 == "") {
+      p1_3 = 0;
+    }
+    console.warn(p1_1 + "-" + p1_2 + "-" + p1_3);
+
+    var p2_1 = component.find("select_ET4_1").get("v.value");
+    var p2_2 = component.find("select_ET4_2").get("v.value");
+    var p2_3 = component.find("select_ET4_3").get("v.value");
+    if (p2_1 == undefined || p2_1 == "") {
+      p2_1 = 0;
+    }
+    if (p2_2 == undefined || p2_2 == "") {
+      p2_2 = 0;
+    }
+    if (p2_3 == undefined || p2_3 == "") {
+      p2_3 = 0;
+    }
+
+    var p3_1 = component.find("select_BF4_1").get("v.value");
+    var p3_2 = component.find("select_BF4_2").get("v.value");
+    var p3_3 = component.find("select_BF4_3").get("v.value");
+    if (p3_1 == undefined || p3_1 == "") {
+      p3_1 = 0;
+    }
+    if (p3_2 == undefined || p3_2 == "") {
+      p3_2 = 0;
+    }
+    if (p3_3 == undefined || p3_3 == "") {
+      p3_3 = 0;
+    }
+
+    var p4_1 = component.find("select_OTH4_1").get("v.value");
+    var p4_2 = component.find("select_OTH4_2").get("v.value");
+    var p4_3 = component.find("select_OTH4_3").get("v.value");
+    if (p4_1 == undefined || p4_1 == "") {
+      p4_1 = 0;
+    }
+    if (p4_2 == undefined || p4_2 == "") {
+      p4_2 = 0;
+    }
+    if (p4_3 == undefined || p4_3 == "") {
+      p4_3 = 0;
+    }
+
+    var p5_1 = component.find("select_GS4_1").get("v.value");
+    var p5_2 = component.find("select_GS4_2").get("v.value");
+    var p5_3 = component.find("select_GS4_3").get("v.value");
+    if (p5_1 == undefined || p5_1 == "") {
+      p5_1 = 0;
+    }
+    if (p5_2 == undefined || p5_2 == "") {
+      p5_2 = 0;
+    }
+    if (p5_3 == undefined || p5_3 == "") {
+      p5_3 = 0;
+    }
+
+    var p6_1 = component.find("select_URO4_1").get("v.value");
+    var p6_2 = component.find("select_URO4_2").get("v.value");
+    var p6_3 = component.find("select_URO4_3").get("v.value");
+    if (p6_1 == undefined || p6_1 == "") {
+      p6_1 = 0;
+    }
+    if (p6_2 == undefined || p6_2 == "") {
+      p6_2 = 0;
+    }
+    if (p6_3 == undefined || p6_3 == "") {
+      p6_3 = 0;
+    }
+
+    var p7_1 = component.find("select_GYN4_1").get("v.value");
+    var p7_2 = component.find("select_GYN4_2").get("v.value");
+    var p7_3 = component.find("select_GYN4_3").get("v.value");
+    if (p7_1 == undefined || p7_1 == "") {
+      p7_1 = 0;
+    }
+    if (p7_2 == undefined || p7_2 == "") {
+      p7_2 = 0;
+    }
+    if (p7_3 == undefined || p7_3 == "") {
+      p7_3 = 0;
+    }
+
+    var p8_1 = component.find("select_ENT4_1").get("v.value");
+    var p8_2 = component.find("select_ENT4_2").get("v.value");
+    var p8_3 = component.find("select_ENT4_3").get("v.value");
+    if (p8_1 == undefined || p8_1 == "") {
+      p8_1 = 0;
+    }
+    if (p8_2 == undefined || p8_2 == "") {
+      p8_2 = 0;
+    }
+    if (p8_3 == undefined || p8_3 == "") {
+      p8_3 = 0;
+    }
+
+    action.setParams({
+      hospitalId: component.get("v.record.Agency_Hospital__c"),
+      GIProduct: [
+        component.find("select_GI1").get("v.value"),
+        component.find("select_GI2").get("v.value"),
+        component.find("select_GI3").get("v.value"),
+        p1_1,
+        p1_2,
+        p1_3
+      ],
+      ETProduct: [
+        component.find("select_ET1").get("v.value"),
+        component.find("select_ET2").get("v.value"),
+        component.find("select_ET3").get("v.value"),
+        p2_1,
+        p2_2,
+        p2_3
+      ],
+      BFProduct: [
+        component.find("select_BF1").get("v.value"),
+        component.find("select_BF2").get("v.value"),
+        component.find("select_BF3").get("v.value"),
+        p3_1,
+        p3_2,
+        p3_3
+      ],
+      OTHProduct: [
+        component.find("select_OTH1").get("v.value"),
+        component.find("select_OTH2").get("v.value"),
+        component.find("select_OTH3").get("v.value"),
+        p4_1,
+        p4_2,
+        p4_3
+      ],
+      GSProduct: [
+        component.find("select_GS1").get("v.value"),
+        component.find("select_GS2").get("v.value"),
+        component.find("select_GS3").get("v.value"),
+        p5_1,
+        p5_2,
+        p5_3
+      ],
+      UROProduct: [
+        component.find("select_URO1").get("v.value"),
+        component.find("select_URO2").get("v.value"),
+        component.find("select_URO3").get("v.value"),
+        p6_1,
+        p6_2,
+        p6_2
+      ],
+      GYNProduct: [
+        component.find("select_GYN1").get("v.value"),
+        component.find("select_GYN2").get("v.value"),
+        component.find("select_GYN3").get("v.value"),
+        p7_1,
+        p7_2,
+        p7_3
+      ],
+      ENTProduct: [
+        component.find("select_ENT1").get("v.value"),
+        component.find("select_ENT2").get("v.value"),
+        component.find("select_ENT3").get("v.value"),
+        p8_1,
+        p8_2,
+        p8_3
+      ],
+      OCMTerm: component.get("v.OCMTerm")
+    });
+    action.setCallback(this, function (response) {
+      console.warn(response);
+      var state = response.getState();
+      if (state === "SUCCESS") {
+        var modal_window = component.find("modal_window");
+        var modal_bg = component.find("modal_bg");
+        $A.util.toggleClass(modal_window, "disp_none");
+        $A.util.toggleClass(modal_bg, "disp_none");
+
         var toastEvent = $A.get("e.force:showToast");
         toastEvent.setParams({
-            "title": "閿欒!",
-            "message": message,
-            "type":"error",
-            "duration" : "10000"
+          title: "鎴愬姛",
+          type: "success",
+          message: "淇濆瓨鎴愬姛"
         });
         toastEvent.fire();
-    },
 
-})
\ No newline at end of file
+        $A.get("e.force:refreshView").fire();
+      } else if (state === "INCOMPLETE") {
+        var toastEvent = $A.get("e.force:showToast");
+        toastEvent.setParams({
+          title: "鏈畬鎴�!",
+          type: "error",
+          message: "鏈畬鎴�"
+        });
+        toastEvent.fire();
+      } else if (state === "ERROR") {
+        var errors = response.getError();
+        var toastEvent = $A.get("e.force:showToast");
+        toastEvent.setParams({
+          title: "閿欒",
+          type: "error",
+          message: errors[0].message
+        });
+        toastEvent.fire();
+      }
+    });
+    $A.enqueueAction(action);
+  },
+
+  warning: function (message) {
+    var toastEvent = $A.get("e.force:showToast");
+    toastEvent.setParams({
+      title: "璀﹀憡!",
+      message: message,
+      type: "warning",
+      duration: "10000"
+    });
+    toastEvent.fire();
+  },
+
+  error: function (message) {
+    var toastEvent = $A.get("e.force:showToast");
+    toastEvent.setParams({
+      title: "閿欒!",
+      message: message,
+      type: "error",
+      duration: "10000"
+    });
+    toastEvent.fire();
+  }
+});
diff --git a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.cmp b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.cmp
index 42b2d98..baa6567 100644
--- a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.cmp
+++ b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.cmp
@@ -1,6 +1,6 @@
 <aura:component
   controller="RetrospectiveWeeklyReportController"
-  implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,force:lightningQuickAction,forceCommunity:availableForAllPageTypes,lightning:availableForFlowScreens"
+  implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,force:lightningQuickAction,forceCommunity:availableForAllPageTypes"
   access="global"
 >
   <ltng:require styles="{!$Resource.multilineToastCSS}" />聽
@@ -23,8 +23,7 @@
   <aura:attribute
     name="acondata"
     type="Agency_Contact__c"
-    default="{sobjectType:'Ag
-    ency_Contact__c'}"
+    default="{sobjectType:'Agency_Contact__c'}"
   />
   <aura:attribute name="successMessage" type="String" />
   <aura:attribute name="etEng" type="String" />
@@ -43,8 +42,6 @@
   <aura:attribute name="doclist" type="List" />
   <aura:attribute name="docmap" type="Map" />
   <aura:attribute name="login" type="Boolean" default="false" />
-  <aura:attribute name="loginEdit" type="Boolean" default="false" />
-  <aura:attribute name="modal_import_spinner" type="Boolean" default="false" />
   <aura:attribute name="loadOpp" type="Boolean" default="false" />
   <aura:attribute name="reportPageData" type="Map" />
   <aura:attribute name="selectbody" type="String" />
@@ -156,12 +153,6 @@
   <aura:attribute name="NumOfRecords" type="Integer" default="1000" />
   <aura:attribute name="showMain" type="Boolean" default="true" />
   <aura:attribute name="IsEventDefault" type="Boolean" default="true" />
-  <!-- start DTT-zhj 澧炲姞閿欒淇℃伅table 2023-05-16-->
-  <aura:attribute name="errorData" type="Object" />
-  <aura:attribute name="errorColumns" type="List" />
-  <!-- show Error information -->
-  <aura:attribute name="showErrorInfo" type="Boolean" default="false" />
-  <!-- end DTT-zhj 澧炲姞閿欒淇℃伅table 2023-05-16-->
 
   <aura:attribute name="PIConfig" type="Map" />
 
@@ -171,40 +162,27 @@
   <!-- 鎵归噺娣诲姞鏃ユ姤 end-->
   <!--銉兗銉変腑...-->
   <aura:renderIf isTrue="{!v.login}">
-    <aura:renderIf isTrue="{!!v.loginEdit}">
-      <!-- <div class="slds-spinner_container">
-                <div role="status" class="slds-spinner slds-spinner_medium slds-spinner_brand">
-                    聽 聽 <span class="slds-assistive-text">Loading</span>
-                    聽 聽 <div class="slds-spinner__dot-a"></div>
-                    聽 聽 <div class="slds-spinner__dot-b"></div>
-                </div>
-            </div> -->
+    <div class="slds-spinner_container height100vh">
       <div
-        class="slds-spinner_container"
-        id="spinner"
-        style="position: fixed; top: 123px"
+        class="slds-spinner--brand slds-spinner slds-spinner--medium"
+        role="alert"
       >
-        <div
-          role="status"
-          class="slds-spinner slds-spinner_medium slds-spinner_brand"
-        >
-          <span class="slds-assistive-text">Loading</span>
-          <div class="slds-spinner__dot-a"></div>
-          <div class="slds-spinner__dot-b"></div>
-        </div>
+        <span class="slds-assistive-text">Loading</span>
+        <div class="slds-spinner__dot-a"></div>
+        <div class="slds-spinner__dot-b"></div>
       </div>
-    </aura:renderIf>
+    </div>
   </aura:renderIf>
-  <div aura:id="report" id="report">
+  <div aura:id="report" id="report" class="contents_wrapper">
     <div class="slds-grid slds-wrap slds-grid--pull-padded">
-      <div style="width: 150px"></div>
+      <div style="width: 200px"></div>
       <div
-        class="tr mt5 slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-12 slds-large-size--1-of-12 fontSize"
+        class="tr mt5 slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-12 slds-large-size--1-of-12"
       >
         鍛�
       </div>
       <div
-        class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12 fontSize"
+        class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"
       >
         <ui:inputSelect
           aura:id="select_date"
@@ -234,44 +212,35 @@
         class="tr slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
         style="display: contents"
       >
-        <ui:button
-          aura:id="new_button"
-          label="鏂板缓"
-          press="{!c.new_report}"
-          class="buttonFontSize"
-        />
+        <ui:button aura:id="new_button" label="鏂板缓" press="{!c.new_report}" />
       </div>
       <div
-        style="width: 400px"
-        class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--4-of-12 slds-large-size--4-of-12"
+        style="width: 350px"
+        class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
       >
         <ui:button
           aura:id="copy_button"
           label="澶嶅埗"
           press="{!c.copy_button}"
           disabled="true"
-          class="buttonFontSize"
         />
         <ui:button
           aura:id="delete_button"
           label="鍒犻櫎"
           press="{!c.delete_button}"
           disabled="true"
-          class="buttonFontSize"
         />
-        <ui:button
-          aura:id="import"
-          label="瀵煎叆"
-          press="{!c.import}"
-          class="buttonFontSize"
-        />
+        <ui:button aura:id="import" label="瀵煎叆" press="{!c.import}" />
         <ui:button
           aura:id="export"
           label="瀵煎嚭"
           press="{!c.export_condition}"
-          class="buttonFontSize"
         />
-        <!-- <ui:button aura:id="returnbutton" label="杩斿洖" press="{!c.return_main_page}" /> -->
+        <ui:button
+          aura:id="returnbutton"
+          label="杩斿洖"
+          press="{!c.return_main_page}"
+        />
       </div>
     </div>
   </div>
@@ -287,41 +256,33 @@
       >
         <thead>
           <tr class="slds-line-height--reset">
-            <th
-              class="table_header slds-text-title--caps fontSize"
-              style="width: 250px"
-            >
-              <span class="slds-truncate" title="Name">鏃ユ姤缂栧彿</span>
-            </th>
-            <th class="table_header slds-text-title--caps fontSize">
+            <th class="table_header slds-text-title--caps"></th>
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.Person_In_Charge2__c}</span
               >
               <!-- {!v.fieldsmap.Person_In_Charge2__c}  鎷呭綋-->
             </th>
-            <th
-              class="table_header slds-text-title--caps fontSize"
-              style="width: 250px"
-            >
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name">鍖婚櫌</span>
             </th>
-            <th class="table_header slds-text-title--caps fontSize">
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.Department_Cateogy__c}</span
               >
               <!-- {!v.fieldsmap.Department_Cateogy__c}    绉戝-->
             </th>
-            <th class="table_header slds-text-title--caps fontSize">
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name">鎷滆浜�</span>
               <!-- {!v.fieldsmap.doctor2__c}    鎷滆浜� -->
             </th>
-            <th class="table_header slds-text-title--caps fontSize">
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.DealerPersonnel__c}</span
               >
               <!-- {!v.fieldsmap.visitor_title__c}   鑱屼綅-->
             </th>
-            <th class="table_header slds-text-title--caps fontSize">
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.WorkMark__c}</span
               >
@@ -332,7 +293,7 @@
         <tbody>
           <aura:iteration items="{!v.reports}" var="item" indexVar="index">
             <tr class="slds-hint-parent">
-              <td role="gridcell" class="slds-cell-edit fontSize">
+              <td role="gridcell" class="slds-cell-edit">
                 <ui:inputRadio
                   class="report_radio"
                   name="report_radio"
@@ -348,7 +309,7 @@
                   onclick="{!c.edit_button}"
                 />
               </td>
-              <td role="gridcell" class="slds-cell-edit fontSize">
+              <td role="gridcell" class="slds-cell-edit">
                 <span class="slds-grid slds-grid--align-spread">
                   <span
                     class="slds-truncate"
@@ -357,15 +318,12 @@
                   >
                 </span>
               </td>
-              <td scope="row" tabindex="0" class="slds-cell-edit fontSize">
-                <div
-                  class="slds-grid slds-grid--align-spread"
-                  style="word-wrap: break-word"
-                >
+              <th scope="row" tabindex="0" class="slds-cell-edit">
+                <span class="slds-grid slds-grid--align-spread">
                   {!item.Agency_Hospital__r.Name}
-                </div>
-              </td>
-              <td role="gridcell" class="slds-cell-edit fontSize">
+                </span>
+              </th>
+              <td role="gridcell" class="slds-cell-edit">
                 <span class="slds-grid slds-grid--align-spread">
                   <span
                     class="slds-truncate"
@@ -374,7 +332,7 @@
                   >
                 </span>
               </td>
-              <td role="gridcell" class="slds-cell-edit fontSize">
+              <td role="gridcell" class="slds-cell-edit">
                 <span class="slds-grid slds-grid--align-spread">
                   <span class="slds-truncate" title="{!item.doctor2__r.Name}">
                     <span class="encrypt">{!item.doctor2__r.Name}</span>
@@ -382,7 +340,7 @@
                   </span>
                 </span>
               </td>
-              <td role="gridcell" class="slds-cell-edit fontSize">
+              <td role="gridcell" class="slds-cell-edit">
                 <span class="slds-grid slds-grid--align-spread">
                   <span
                     class="slds-truncate"
@@ -391,7 +349,7 @@
                   >
                 </span>
               </td>
-              <td role="gridcell" class="slds-cell-edit fontSize">
+              <td role="gridcell" class="slds-cell-edit">
                 <span class="slds-grid slds-grid--align-spread">
                   <span class="slds-truncate" title="{!item.WorkMark__c}">
                     <lightning:input
@@ -421,9 +379,6 @@
     class="disp_none slds-modal slds-fade-in-open slds-modal--large"
     aria-labelledby="headerTarget"
   >
-    <aura:renderIf isTrue="{!v.modal_import_spinner}">
-      <lightning:spinner alternativeText="Loading" size="medium" />
-    </aura:renderIf>
     <div class="slds-modal slds-fade-in-open slds-hide" aura:id="successDiv01">
       <!-- <ui:inputText aura:id="articleURL" /> -->
       <div class="demo-only" style="height: 8rem">
@@ -449,24 +404,35 @@
         </div>
       </div>
     </div>
-    <!-- <div class="slds-modal slds-fade-in-open slds-hide" aura:id="errorDiv01" style="z-index: 10001">
-            <div class="demo-only" style="height: 8rem;">
-                <div class="slds-notify_container slds-is-relative">
-                    <div class="slds-notify slds-notify_toast slds-theme_error" role="status">
-                        <div class=" slds-m-left_xx-large">
-                            <div
-                                class="slds-notify__content slds-m-left_small slds-align_absolute-center slds-m-left_xx-large">
-                                <lightning:icon alternativeText="error" iconName="utility:error" size="small"
-                                    class="buttonColor slds-m-right_small" />
-                                <h2 class="slds-text-heading_small ">{!v.errorMessage}</h2>
-                                <lightning:icon alternativeText="Close" iconName="utility:close" size="small"
-                                        onclick="{!c.closeErrorDiv}" />
-                            </div>
-                        </div>
-                    </div>
-                </div>
+    <div
+      class="slds-modal slds-fade-in-open slds-hide"
+      aura:id="errorDiv01"
+      style="z-index: 10001"
+    >
+      <!-- <ui:inputText aura:id="articleURL" /> -->
+      <div class="demo-only" style="height: 8rem">
+        <div class="slds-notify_container slds-is-relative">
+          <div
+            class="slds-notify slds-notify_toast slds-theme_error"
+            role="status"
+          >
+            <div class="slds-m-left_xx-large">
+              <div
+                class="slds-notify__content slds-m-left_small slds-align_absolute-center slds-m-left_xx-large"
+              >
+                <lightning:icon
+                  alternativeText="error"
+                  iconName="utility:error"
+                  size="small"
+                  class="buttonColor slds-m-right_small"
+                />
+                <h2 class="slds-text-heading_small">{!v.errorMessage}</h2>
+              </div>
             </div>
-        </div> -->
+          </div>
+        </div>
+      </div>
+    </div>
     <div class="slds-modal__container">
       <div class="slds-modal__header">
         <h4 id="headerTarget" class="slds-float--left"></h4>
@@ -476,12 +442,12 @@
         <ui:button
           aura:id="close_button"
           label="鍏抽棴"
-          class="close_button slds-button slds-button--neutral slds-order--1 buttonFontSize"
+          class="close_button slds-button slds-button--neutral slds-order--1"
           press="{!c.close_import}"
         />
       </div>
       <div
-        class="slds-modal__content slds-scrollable slds-grow slds-p-around--medium fontSize"
+        class="slds-modal__content slds-scrollable slds-grow slds-p-around--medium"
       >
         <aura:if isTrue="{!v.showMain}">
           <div>
@@ -494,7 +460,7 @@
           </div>
           <aura:set attribute="else">
             <ui:outputRichText
-              class="uiOutputRichText slds-m--around-large fontSize"
+              class="uiOutputRichText slds-m--around-large"
               value="{!v.TableContent}"
             />
             <div class="slds-p-around--large slds-align--absolute-center">
@@ -502,34 +468,13 @@
                 label="淇濆瓨"
                 variant="brand"
                 onclick="{!c.processFileContent}"
-                class="buttonFontSize"
               />
               <lightning:button
                 label="鍙栨秷"
                 variant="brand"
                 onclick="{!c.cancel}"
-                class="buttonFontSize"
               />
             </div>
-            <aura:if isTrue="{!v.showErrorInfo}">
-              <div class="slds-p-around--large slds-align--absolute-center">
-                <lightning:button
-                  label="瀵煎嚭閿欒淇℃伅"
-                  variant="brand"
-                  onclick="{!c.exportErrorInfo}"
-                />
-              </div>
-              <div class="slds-p-around--large slds-align--absolute-center">
-                <div style="height: 300px; overflow-x: scroll">
-                  <lightning:datatable
-                    keyField="id"
-                    data="{! v.errorData }"
-                    columns="{! v.errorColumns }"
-                    hideCheckboxColumn="true"
-                  />
-                </div>
-              </div>
-            </aura:if>
           </aura:set>
         </aura:if>
       </div>
@@ -694,46 +639,35 @@
           </div>
         </div>
       </div>
-
-      <div
-        class="slds-modal__content slds-grow slds-p-around--medium"
-        style="position: relative"
-      >
-        <aura:renderIf isTrue="{!v.loginEdit}">
-          <lightning:spinner
-            alternativeText="Loading"
-            size="medium"
-            style="width: 100%; height: 100%"
-          />
-        </aura:renderIf>
-        <div class="slds-modal__header">
-          <h2 id="headerTarget" class="slds-text-heading--medium">
-            鏃ユ姤({!v.selected_date}&nbsp;{!v.selected_agency_person})
-          </h2>
-          <ui:button
-            aura:id="close_button"
-            label="鍏抽棴"
-            class="close_button slds-button slds-button--neutral slds-order--1"
-            press="{!c.toggle_report}"
-          />
-        </div>
+      <div class="slds-modal__header">
+        <h4 id="headerTarget" class="slds-float--left">{!v.dialog_type}</h4>
+        <h2 id="headerTarget" class="slds-text-heading--medium">
+          鏃ユ姤({!v.selected_date}&nbsp;{!v.selected_agency_person})
+        </h2>
+        <ui:button
+          aura:id="close_button"
+          label="鍏抽棴"
+          class="close_button slds-button slds-button--neutral slds-order--1"
+          press="{!c.toggle_report}"
+        />
+      </div>
+      <div class="slds-modal__content slds-grow slds-p-around--medium">
         <div class="slds-box slds-theme--shade">
           <div class="slds-grid slds-wrap slds-grid--pull-padded">
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               娲诲姩鏃�
               <lightning:input
                 type="date"
                 value="{!v.data.Report_Date__c}"
                 aura:id="input-report-date"
-                variant="label-hidden"
               />
             </div>
             <!-- 鍖婚櫌 -->
             <div
               aura:id="hospital_list"
-              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
               data-select="single"
             >
               <!-- label="鍖婚櫌" -->
@@ -743,7 +677,6 @@
                 class="field"
                 value="{!v.hospital}"
                 updateOn="keyup"
-                variant="label-hidden"
               />
               <div class="slds-lookup__menu" id="lookup-66">
                 <ul class="slds-lookup__list" role="listbox">
@@ -772,21 +705,18 @@
             </div>
             <!-- 绉戝鍒嗙被 -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.Department_Cateogy__c}
-              <!-- <ui:inputText aura:id="select_department" class="slds-select"
-                                change="{!c.select_department}"/> -->
-              <lightning:input
-                type="text"
-                onchange="{!c.select_department}"
+              <ui:inputText
                 aura:id="select_department"
-                variant="label-hidden"
+                class="slds-select"
+                change="{!c.select_department}"
               />
             </div>
             <!-- 缁忛攢鍟嗕汉鍛�  change="{!c.select_DealerPersonnel}" -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
               style="width: 145px"
             >
               {!v.fieldsmap.DealerPersonnel__c}
@@ -797,7 +727,7 @@
             </div>
             <!-- 娲诲姩鍖哄垎   -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.WorkRecord__c}
               <ui:inputSelect
@@ -808,7 +738,7 @@
             </div>
             <!-- 鎷滆浜� {!v.fieldsmap.doctor2__c}-->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
               style="width: 145px"
             >
               鎷滆浜�
@@ -821,7 +751,7 @@
             <!-- <p hidden="hidden"> -->
 
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-7 slds-large-size--1-of-7"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-12"
             >
               <br />
               <ui:button
@@ -837,7 +767,7 @@
             <hr />
             <!-- 浜у搧鍒嗙被(绗笁鍒嗙被) change="{!c.select_ProductClassification}" -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               浜у搧鍒嗙被(绗笁鍒嗙被)
               <ui:inputSelect
@@ -849,7 +779,7 @@
             <!-- 浣跨敤浜у搧1(浜у搧鍨嬪彿)   UseProduct1__c  -->
             <div
               aura:id="UseProduct1_List"
-              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
+              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
               data-select="single"
             >
               <!-- label="浣跨敤浜у搧1(浜у搧鍨嬪彿)" -->
@@ -859,7 +789,6 @@
                 class="field"
                 value="{!v.UseProduct1}"
                 updateOn="keyup"
-                variant="label-hidden"
               />
               <div class="slds-lookup__menu" id="lookup-11">
                 <ul
@@ -896,7 +825,7 @@
             <!-- 浣跨敤浜у搧2   UseProduct2__c  -->
             <div
               aura:id="UseProduct2_List"
-              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
+              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
               data-select="single"
             >
               <!-- label="浣跨敤浜у搧2" -->
@@ -906,7 +835,6 @@
                 class="field"
                 value="{!v.UseProduct2}"
                 updateOn="keyup"
-                variant="label-hidden"
               />
               <div class="slds-lookup__menu" id="lookup-22">
                 <ul
@@ -943,7 +871,7 @@
             <!-- 浣跨敤浜у搧3   UseProduct3__c  -->
             <div
               aura:id="UseProduct3_List"
-              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
+              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
               data-select="single"
             >
               <!-- label="浣跨敤浜у搧3" -->
@@ -953,7 +881,6 @@
                 class="field"
                 value="{!v.UseProduct3}"
                 updateOn="keyup"
-                variant="label-hidden"
               />
               <div class="slds-lookup__menu" id="lookup-33">
                 <ul
@@ -990,7 +917,7 @@
             <!-- 鏁堟灉/杩涘害  EffectProgress__c-->
             <div
               aura:id="product_category_select1"
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.EffectProgress__c}
               <ui:inputSelect
@@ -1001,16 +928,13 @@
             <hr />
             <!-- 浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺  ConsumptionOfConsumables__c-->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.ConsumptionOfConsumables__c}
-              <!-- <ui:inputText aura:id="select_ConsumptionOfConsumables" class="slds-select"
-                                change="{!c.select_ConsumptionOfConsumables}" /> -->
-              <lightning:input
-                type="text"
-                onchange="{!c.select_ConsumptionOfConsumables}"
+              <ui:inputText
                 aura:id="select_ConsumptionOfConsumables"
-                variant="label-hidden"
+                class="slds-select"
+                change="{!c.select_ConsumptionOfConsumables}"
               />
             </div>
             <!-- 鏈+鍒嗙被   WarlockClassification__c   -->
@@ -1050,17 +974,14 @@
               class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.warlocksNumber__c}
-              <!-- <ui:inputText aura:id="select_warlocksNumber" class="slds-select"
-                                change="{!c.select_warlocksNumber}" /> -->
-              <lightning:input
-                type="text"
-                onchange="{!c.select_warlocksNumber}"
+              <ui:inputText
                 aura:id="select_warlocksNumber"
-                variant="label-hidden"
+                class="slds-select"
+                change="{!c.select_warlocksNumber}"
               />
             </div>
             <!-- 鏀彺闇�姹�      WorkMark__c-->
-            <div style="padding-left: 12px">
+            <div style="padding-left: 20px">
               {!v.fieldsmap.WorkMark__c}
               <lightning:input type="checkbox" aura:id="select_WorkMark" />
             </div>
diff --git a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.css b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.css
index b528937..642ebdb 100644
--- a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.css
+++ b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReport.css
@@ -1,202 +1,142 @@
-@import 'c/lexCssUtility';
-
 .THIS .bcolor {
-    color: #333;
+  color: #333;
 }
-
 .THIS.height100vh {
-    height: 100vh;
+  height: 100vh;
 }
-
 .THIS.contents_wrapper {
-    padding-top: 50px;
+  padding-top: 50px;
 }
-
 .THIS .mt5 {
-    margin-top: 5px;
+  margin-top: 5px;
 }
-
 .THIS .mt40 {
-    margin-top: 40px;
+  margin-top: 40px;
 }
-
 .THIS .edit_button {
-    float: right;
-    margin: -1.5em 0.5em 0 0;
-    border: 0;
+  float: right;
+  margin: -1.5em 0.5em 0 0;
+  border: 0;
 }
-
 .THIS .no_data_area {
-    text-align: center;
-    margin: .5em 0;
+  text-align: center;
+  margin: 0.5em 0;
 }
-
 .THIS.report_list_area {
-    margin: 40px 0 20px 100px;
-    height: 60vh;
-    overflow-y: scroll;
+  margin: 40px 0 20px 100px;
+  height: 60vh;
+  overflow-y: scroll;
 }
-
 .THIS .report_radio {
-    float: left;
+  float: left;
 }
-
 .THIS .table_header {
-    width: 9.4rem;
-    height: 2em;
+  width: 9.4rem;
+  height: 2em;
 }
-
 .THIS.disp_none {
-    display: none;
+  display: none;
 }
-
 .THIS .disp_none {
-    display: none;
+  display: none;
 }
-
 .THIS .tr {
-    text-align: right;
+  text-align: right;
 }
-
 .THIS .close_button {
-    float: right;
-    margin-top: -2em;
+  float: right;
+  margin-top: -2em;
 }
-
 .THIS .close_icn svg {
-    fill: #fefefe;
+  fill: #fefefe;
 }
-
 .THIS .slds-progress__marker {
-    cursor: default;
+  cursor: default;
 }
-
 .THIS .progress_0 {
-    width: 0%;
+  width: 0%;
 }
-
 .THIS .progress_100 {
-    width: 100%;
+  width: 100%;
 }
-
 .THIS .new_btn_area {
-    text-align: center;
-    margin-top: 22px;
+  text-align: center;
+  margin-top: 22px;
 }
-
 .THIS .new_btn {
-    width: 100%;
+  width: 100%;
 }
-
 .THIS .save_button_area {
-    margin: 1em 0;
-    text-align: right;
+  margin: 1em 0;
+  text-align: right;
 }
-
 .THIS .save_button {
-    background-color: #ffa500;
-    border: 1px solid #ff8c00;
+  background-color: #ffa500;
+  border: 1px solid #ff8c00;
 }
-
 .THIS .report_data_header {
-    border-bottom: 2px solid #ccc;
+  border-bottom: 2px solid #ccc;
 }
-
 .THIS .report_data_area {
-    border-bottom: 1px solid #ccc;
+  border-bottom: 1px solid #ccc;
 }
-
 .THIS.fade {
-    transition: 5s opacity linear;
+  transition: 5s opacity linear;
 }
-
 .THIS.animation_off {
-    opacity: 0;
+  opacity: 0;
 }
-
 .THIS.animation_on {
-    opacity: 1;
+  opacity: 1;
 }
-
 .THIS .fade {
-    transition: 5s opacity linear;
+  transition: 5s opacity linear;
 }
-
 .THIS .animation_off {
-    opacity: 0;
+  opacity: 0;
 }
-
 .THIS .animation_on {
-    opacity: 1;
+  opacity: 1;
 }
-
 .THIS .divbotuser {
-    width: fit-content;
+  width: fit-content;
 }
 
 .THIS .toastMessage.forceActionsText {
-    white-space: pre-line !important;
+  white-space: pre-line !important;
 }
 
 .THIS .slds-file-selector__dropzone .slds-file-selector__text {
-    display: none;
+  display: none;
 }
 
 .THIS .slds-input:focus,
 .THIS .slds-input:active {
-    border-color: rgb(216, 221, 230);
-    box-shadow: none;
+  border-color: rgb(216, 221, 230);
+  box-shadow: none;
 }
 
 .THIS .customRequired {
-    font-weight: 400;
+  font-weight: 400;
 }
-
 .THIS .customRequired:before {
-    content: "*";
-    margin: 0 0.125rem 0 0.125rem;
-    color: rgb(194, 57, 52);
-    float: left;
+  content: "*";
+  margin: 0 0.125rem 0 0.125rem;
+  color: rgb(194, 57, 52);
+  float: left;
 }
-
 .THIS .none {
-    display: none;
+  display: none;
 }
 
 .THIS tr .decrypt {
-    display: none;
+  display: none;
 }
 
 .THIS tr:hover .decrypt {
-    display: unset;
+  display: unset;
 }
 
 .THIS tr:hover .encrypt {
-    display: none;
+  display: none;
 }
-
-.THIS tr:hover .encrypt {
-    display: none;
-}
-
-.THIS .buttonFontSize {
-    font-size: 18px;
-    min-width: 80px;
-    max-width: 110px;
-}
-
-.THIS .fontSize {
-    font-size: 18px;
-}
-
-.THIS thead th {
-    font-size: 18px;
-}
-
-.THIS table {
-    table-layout: fixed;
-}
-.THIS td {
-    white-space: normal;
-    overflow-wrap: break-word;
-}
\ No newline at end of file
diff --git a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportController.js b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportController.js
index baa5976..d19374d 100644
--- a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportController.js
+++ b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportController.js
@@ -1,352 +1,370 @@
 ({
-    doInit: function (component, event, helper) {
-        helper.doinit(component, event, helper);
-    },
+  doInit: function (component, event, helper) {
+    helper.doinit(component, event, helper);
+  },
 
-    createAopp: function (component, event, helper) {
-        var addRecordEvent = $A.get('e.force:createRecord');
-        addRecordEvent.setParams({
-            entityApiName: 'Agency_Opportunity__c',
-            recordTypeId: '012100000006KW7'
-        });
-        addRecordEvent.fire();
-    },
+  createAopp: function (component, event, helper) {
+    var addRecordEvent = $A.get("e.force:createRecord");
+    addRecordEvent.setParams({
+      entityApiName: "Agency_Opportunity__c",
+      recordTypeId: "012100000006KW7"
+    });
+    addRecordEvent.fire();
+  },
 
-    new_report: function (component, event, helper) {
-        component.find('save_button').set('v.label', '淇濆瓨骞舵柊寤�');
-        helper.new_report(component, event, helper);
-    },
+  new_report: function (component, event, helper) {
+    component.find("save_button").set("v.label", "淇濆瓨骞舵柊寤�");
+    helper.new_report(component, event, helper);
+  },
 
-    copy_button: function (component, event, helper) {
-        component.find('save_button').set('v.label', '淇濆瓨骞舵柊寤�');
-        helper.copy_button(component, event, helper);
-    },
-    delete_button: function (component, event, helper) {
-        helper.delete_button(component, event, helper);
-    },
-    change_report_radio: function (component, event, helper) {
-        helper.change_report_radio(component, event, helper);
-    },
+  copy_button: function (component, event, helper) {
+    component.find("save_button").set("v.label", "淇濆瓨骞舵柊寤�");
+    helper.copy_button(component, event, helper);
+  },
+  delete_button: function (component, event, helper) {
+    helper.delete_button(component, event, helper);
+  },
+  change_report_radio: function (component, event, helper) {
+    helper.change_report_radio(component, event, helper);
+  },
 
-    edit_button: function (component, event, helper) {
-        component.find('save_button').set('v.label', '淇濆瓨');
-        helper.edit_button(component, event, helper);
-    },
+  edit_button: function (component, event, helper) {
+    component.find("save_button").set("v.label", "淇濆瓨");
+    helper.edit_button(component, event, helper);
+  },
 
-    createCon: function (component, event, helper) {
-        helper.createCon(component, event, helper);
-    },
+  createCon: function (component, event, helper) {
+    helper.createCon(component, event, helper);
+  },
 
-    showRequiredFields: function (component, event, helper) {
-        $A.util.removeClass(component.find("newOpportunityField"), "none");
-        $A.util.removeClass(component.find("newOpportunityField"), "none");
-    },
+  showRequiredFields: function (component, event, helper) {
+    $A.util.removeClass(component.find("newOpportunityField"), "none");
+    $A.util.removeClass(component.find("newOpportunityField"), "none");
+  },
 
-    handleSuccess: function (component, event, helper) {
-        helper.handleSuccess(component, event, helper);
-    },
+  handleSuccess: function (component, event, helper) {
+    helper.handleSuccess(component, event, helper);
+  },
 
-    handleSubmit: function (component, event, helper) {
-        event.preventDefault(); // stop form submission
-        var showValidationError = false;
-        var fields = component.find("newOpportunityField");
-        var vaildationFailReason = '';
-        let agencyReport = Object.create(null);
-        fields.forEach(function (field) {
-            if (field.get("v.fieldName") === 'Type__c' && $A.util.isEmpty(field.get("v.value"))) {
-                showValidationError = true;
-                vaildationFailReason = "鍒嗙被涓嶈兘涓虹┖锛�";
-            } else if (field.get("v.fieldName") === 'Doctor_Division1__c' && $A.util.isEmpty(field.get("v.value"))) {
-                showValidationError = true;
-                if (vaildationFailReason != '') {
-                    vaildationFailReason += "鍖荤敓鍖哄垎(鑱屽姟)涓嶈兘涓虹┖锛�";
-                } else {
-                    vaildationFailReason = "鍖荤敓鍖哄垎(鑱屽姟)涓嶈兘涓虹┖锛�";
+  handleSubmit: function (component, event, helper) {
+    event.preventDefault(); // stop form submission
+    var showValidationError = false;
+    var fields = component.find("newOpportunityField");
+    var vaildationFailReason = "";
+    let agencyReport = Object.create(null);
+    fields.forEach(function (field) {
+      if (
+        field.get("v.fieldName") === "Type__c" &&
+        $A.util.isEmpty(field.get("v.value"))
+      ) {
+        showValidationError = true;
+        vaildationFailReason = "鍒嗙被涓嶈兘涓虹┖锛�";
+      } else if (
+        field.get("v.fieldName") === "Doctor_Division1__c" &&
+        $A.util.isEmpty(field.get("v.value"))
+      ) {
+        showValidationError = true;
+        if (vaildationFailReason != "") {
+          vaildationFailReason += "鍖荤敓鍖哄垎(鑱屽姟)涓嶈兘涓虹┖锛�";
+        } else {
+          vaildationFailReason = "鍖荤敓鍖哄垎(鑱屽姟)涓嶈兘涓虹┖锛�";
+        }
+      }
+      //SWAG-CF58C3 fy start
+      if (field.get("v.fieldName") === "Name") {
+        agencyReport["name"] = field.get("v.value");
+      } else if (field.get("v.fieldName") === "Type__c") {
+        agencyReport["type"] = field.get("v.value");
+      } else if (field.get("v.fieldName") === "Doctor_Division1__c") {
+        agencyReport["doctorDivision1"] = field.get("v.value");
+      }
+      //SWAG-CF58C3 fy end
+    });
+    if (!showValidationError) {
+      //SWAG-CF58C3 fy start
+      var agencyHospitalid = component.get("v.hospitalLinkId");
+      //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+      debugger;
+      let hospitalName = "";
+      //璋冪敤鍚庣searchAgencyDataId鏂规硶鏌ヨ鍑哄尰闄笅闈㈡墍鏈夊鎴蜂汉鍛榙ataid
+      helper.CallBackAction(
+        component,
+        "searchAgencyDataId",
+        {
+          hospitalId: agencyHospitalid
+        },
+        function (data) {
+          if (data.getState() == "SUCCESS") {
+            var data = data.getReturnValue();
+            if (data.IsSuccess == true) {
+              let agencyContactIds = "";
+              if (data.Message == "" && data.Data && data.Data.length > 0) {
+                hospitalName = data.Data[0].Agency_Hospital__r.Name;
+                for (var i = 0; i < data.Data.length; i++) {
+                  if (data.Data[i].AWS_Data_Id__c)
+                    agencyContactIds += "," + data.Data[i].AWS_Data_Id__c;
                 }
+                agencyContactIds = agencyContactIds.substring(1);
+                agencyReport["agencyContactIds"] = agencyContactIds;
+              } else {
+                agencyReport["agencyContactIds"] = agencyContactIds;
+              }
+              var arr = new Array();
+              arr.push(agencyReport);
+              var requestData = JSON.stringify(arr);
+              // helper.set_aws_url(component,data,agencyHospitalid);
 
-            }
-            //SWAG-CF58C3 fy start 
-            if (field.get("v.fieldName") === 'Name') {
-                agencyReport['name'] = field.get("v.value");
-            } else if (field.get("v.fieldName") === 'Type__c') {
-                agencyReport['type'] = field.get("v.value");
-            } else if (field.get("v.fieldName") === 'Doctor_Division1__c') {
-                agencyReport['doctorDivision1'] = field.get("v.value");
-            }
-            //SWAG-CF58C3 fy end 
-        });
-        if (!showValidationError) {
-            //SWAG-CF58C3 fy start 
-            var agencyHospitalid = component.get('v.hospitalLinkId');
-            //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
-            debugger
-            let hospitalName = '';
-            //璋冪敤鍚庣searchAgencyDataId鏂规硶鏌ヨ鍑哄尰闄笅闈㈡墍鏈夊鎴蜂汉鍛榙ataid
-            helper.CallBackAction(component, 'searchAgencyDataId', {
-                hospitalId: agencyHospitalid
-            }, function (data) {
-                if (data.getState() == "SUCCESS") {
-                    var data = data.getReturnValue();
-                    if (data.IsSuccess == true) {
-                        let agencyContactIds = ''
-                        if (data.Message == '' && data.Data && data.Data.length > 0) {
-                            hospitalName = data.Data[0].Agency_Hospital__r.Name;
-                            for (var i = 0; i < data.Data.length; i++) {
-                                if (data.Data[i].AWS_Data_Id__c)
-                                    agencyContactIds += ',' + data.Data[i].AWS_Data_Id__c;
-                            }
-                            agencyContactIds = agencyContactIds.substring(1);
-                            agencyReport['agencyContactIds'] = agencyContactIds;
-                        } else {
-                            agencyReport['agencyContactIds'] = agencyContactIds;
-                        }
-                        var arr = new Array();
-                        arr.push(agencyReport);
-                        var requestData = JSON.stringify(arr);
-                        // helper.set_aws_url(component,data,agencyHospitalid);
+              var token = component.get("v.AWStoken");
+              var newUrl = component.get("v.AWSinsert") + "V2";
 
-                        var token = component.get('v.AWStoken');
-                        var newUrl = component.get('v.AWSinsert') + 'V2';
-
-                        component.set('v.login', true);
-                        helper.insert_agencycontact(component, token, newUrl, requestData, agencyHospitalid, helper, hospitalName);
-                    } else {
-                        helper.ShowToast({
-                            "message": data.message,
-                            "type": "error"
-                        });
-                    }
-                } else {
-                    helper.ShowToast({
-                        "message": 'searchAgency澶辫触',
-                        "type": "error"
-                    });
-                }
-            })
-            //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
-            // var arr = new Array();
-            // arr.push(agencyReport);
-            // var data = JSON.stringify(arr);
-            // var token = component.get('v.AWStoken');
-            // var newUrl = component.get('v.AWSinsert');
-            // component.set('v.login',true);
-            // helper.insert_agencycontact(component,token,newUrl,data,agencyHospitalid,helper);
-            //SWAG-CF58C3 fy end 
-            // helper.newlyBuild(component, event, helper);
-        } else {
-            component.find('OppMessage').setError(vaildationFailReason);
-        }
-    },
-
-    createCancel: function (component, event, helper) {
-        helper.createCancel(component, event, helper);
-    },
-
-    yes_button: function (component, event, helper) {
-        component.set('v.confirm_status', 1);
-        helper.close_confirm(component, component.get('v.modal_confirm_title'), component.get('v.modal_confirm_text'));
-    },
-
-    no_button: function (component, event, helper) {
-        component.set('v.confirm_status', 2);
-        helper.close_confirm(component, component.get('v.modal_confirm_title'), component.get('v.modal_confirm_text'));
-    },
-
-    toggle_report: function (component, event, helper) {
-        helper.toggle_report(component, event, helper);
-    },
-
-    save_report: function (component, event, helper) {
-        helper.save_report(component, event, helper);
-    },
-
-    select_date_change: function (component, event, helper) {
-        helper.select_date_change(component, event, helper);
-    },
-
-    select_agency_change: function (component, event, helper) {
-        debugger
-        helper.select_agency_change(component, event, helper);
-    },
-
-    hosChange: function (component, event, helper) {
-        var hospital_name = event.getParam("value");
-        var hospital_nameld = component.get("v.UseProduct1s");
-        if (hospital_name.match(/(\S+\s)+/)) {
-            if (hospital_nameld != hospital_name) {
-                helper.searchHos(component, event, helper);
-            }
-        } else {
-            if (hospital_name == '') {
-                helper.hideSearchs(component, event, helper);
+              component.set("v.login", true);
+              helper.insert_agencycontact(
+                component,
+                token,
+                newUrl,
+                requestData,
+                agencyHospitalid,
+                helper,
+                hospitalName
+              );
             } else {
-                helper.hideSearch(component, event, helper);
+              helper.ShowToast({
+                message: data.message,
+                type: "error"
+              });
             }
+          } else {
+            helper.ShowToast({
+              message: "searchAgency澶辫触",
+              type: "error"
+            });
+          }
         }
-    },
-    selectHos: function (component, event, helper) {
-        helper.selectHos(component, event, helper);
-        helper.setOpportunity_cfilter(component);
-    },
-    //浣跨敤浜у搧1
-    UseProduct1Change: function (component, event, helper) {
-        var UseProduct1Name = event.getParam("value");
-        var UseProduct1Nameold = component.get("v.UseProduct1s");
-        debugger
-        if (UseProduct1Name.match(/(\S+\s)+/)) {
-            if (UseProduct1Name != UseProduct1Nameold) {
-                helper.searchUseProduct1(component, event, helper);
-            }
-        } else {
-            if (UseProduct1Name == '') {
-                helper.hideSearchUseProduct1s(component, event, helper);
-            } else {
-                helper.hideSearchUseProduct1(component, event, helper);
-            }
-        }
-    },
-    seletUseProduct1Change: function (component, event, helper) {
-        helper.seletUseProduct1Change(component, event, helper);
-    },
-    //浣跨敤浜у搧2
-    UseProduct2Change: function (component, event, helper) {
-        var UseProduct2Name = event.getParam("value");
-        var UseProduct2Nameold = component.get("v.UseProduct2s");
-        if (UseProduct2Name.match(/(\S+\s)+/)) {
-            if (UseProduct2Name != UseProduct2Nameold) {
-                helper.searchUseProduct2(component, event, helper);
-            }
-        } else {
-            if (UseProduct2Name == '') {
-                helper.hideSearchUseProduct2s(component, event, helper);
-            } else {
-                helper.hideSearchUseProduct2(component, event, helper);
-            }
-        }
-    },
-    seletUseProduct2Change: function (component, event, helper) {
-        helper.seletUseProduct2Change(component, event, helper);
-    },
-    productcategoryChange2: function (component, event, helper) {
-        helper.productcategoryChange2(component, event, helper);
-    },
-    //浣跨敤浜у搧3
-    UseProduct3Change: function (component, event, helper) {
-        var UseProduct3Name = event.getParam("value");
-        var UseProduct3Nameold = component.get("v.UseProduct3s");
-        if (UseProduct3Name.match(/(\S+\s)+/)) {
-            if (UseProduct3Name != UseProduct3Nameold) {
-                helper.searchUseProduct3(component, event, helper);
-            }
-        } else {
-            if (UseProduct3Name == '') {
-                helper.hideSearchUseProduct3s(component, event, helper);
-            } else {
-                helper.hideSearchUseProduct3(component, event, helper);
-            }
-        }
-    },
-    seletUseProduct3Change: function (component, event, helper) {
-        helper.seletUseProduct3Change(component, event, helper);
-    },
-
-
-    select_department: function (component, event, helper) {
-        helper.setOpportunity_cfilter(component);
-    },
-    doctor_change: function (component, event, helper) {
-        helper.doctor_change(component, event, helper);
-    },
-    stageNameChange: function (component, event, helper) {
-        helper.stageNameChange(component, event, helper);
-    },
-    onDragOver: function (component, event, helper) {
-        event.preventDefault();
-    },
-
-    onDrop: function (component, event, helper) {
-        event.stopPropagation();
-        event.preventDefault();
-        event.dataTransfer.dropEffect = 'copy';
-        var files = event.dataTransfer.files;
-        helper.readFile(component, helper, files[0]);
-    },
-    CreateRecord: function (component, event, helper) {
-        var files = event.getSource().get("v.files");
-        helper.readFile(component, helper, files[0]);
-        component.set("v.showErrorInfo", false);
-    },
-
-    processFileContent: function (component, event, helper) {
-        helper.saveRecords(component, event, helper);
-        component.set("v.showErrorInfo", false);
-    },
-
-    cancel: function (component, event, helper) {
-        component.set("v.showMain", true);
-    },
-
-    import: function (component, event, helper) {
-        helper.showImport(component);
-    },
-    exportDate: function (component, event, helper) {
-        var stockData = component.get("v.reports_date");
-        console.log('瀵煎嚭鏁版嵁' + stockData);
-        var csv = helper.convertArrayOfObjectsToCSV(component, stockData);
-        if (csv == null) { return; }
-
-        var universalBOM = "\uFEFF";
-        var hiddenElement = document.createElement('a');
-        hiddenElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(universalBOM + csv);
-        hiddenElement.target = '_self'; // 
-        hiddenElement.download = 'ExportData.csv';  // CSV file Name* you can change it.[only name not .csv] 
-        document.body.appendChild(hiddenElement); // Required for FireFox browser
-        hiddenElement.click(); // using click() js function to download csv file
-
-    },
-    export_condition: function (component, event, helper) {
-        helper.showExport(component);
-    },
-
-    select_repores_date: function (component, event, helper) {
-        helper.select_repores_date(component, event, helper);
-    },
-    export: function (component, event, helper) {
-        console.log('杩涘叆export');
-        var stockData = component.get("v.reports_date");
-        console.log('鏌ュ嚭鐨勬暟鎹�' + stockData);
-    },
-    close_import: function (component, event, helper) {
-        component.set("v.showMain", true);
-        helper.close_import(component);
-    },
-    close_export: function (component, event, helper) {
-        component.set("v.showMain", true);
-        helper.close_export(component);
-    },
-    select_ConsumptionOfConsumables: function (component, event, helper) {
-        helper.select_ConsumptionOfConsumables(component, event, helper);
-    },
-    select_purpose_type: function (component, event, helper) {
-        helper.selectPurposeType(component, event, helper);
-    },
-    select_warlocksNumber: function (component, event, helper) {
-        helper.select_warlocksNumber(component, event, helper);
-    },
-    selectProductClassification: function (component, event, helper) {
-        helper.selectProductClassification(component, event, helper);
-    },
-    selectpurposetype: function (component, event, helper) {
-        helper.selectpurposetype(component, event, helper);
-    },
-    return_main_page: function (component, event, helper) {
-        window.open('/customer/', '_self');
-    },
-    exportErrorInfo: function (component, event, helper) {
-        helper.exportErrorInfoHelper(component);
-    },
-    closeErrorDiv: function (component, event, helper) {
-        var errorDiv01 = component.find('errorDiv01');
-        $A.util.addClass(errorDiv01, 'slds-hide');
+      );
+      //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
+      // var arr = new Array();
+      // arr.push(agencyReport);
+      // var data = JSON.stringify(arr);
+      // var token = component.get('v.AWStoken');
+      // var newUrl = component.get('v.AWSinsert');
+      // component.set('v.login',true);
+      // helper.insert_agencycontact(component,token,newUrl,data,agencyHospitalid,helper);
+      //SWAG-CF58C3 fy end
+      // helper.newlyBuild(component, event, helper);
+    } else {
+      component.find("OppMessage").setError(vaildationFailReason);
     }
-})
\ No newline at end of file
+  },
+
+  createCancel: function (component, event, helper) {
+    helper.createCancel(component, event, helper);
+  },
+
+  yes_button: function (component, event, helper) {
+    component.set("v.confirm_status", 1);
+    helper.close_confirm(
+      component,
+      component.get("v.modal_confirm_title"),
+      component.get("v.modal_confirm_text")
+    );
+  },
+
+  no_button: function (component, event, helper) {
+    component.set("v.confirm_status", 2);
+    helper.close_confirm(
+      component,
+      component.get("v.modal_confirm_title"),
+      component.get("v.modal_confirm_text")
+    );
+  },
+
+  toggle_report: function (component, event, helper) {
+    helper.toggle_report(component, event, helper);
+  },
+
+  save_report: function (component, event, helper) {
+    helper.save_report(component, event, helper);
+  },
+
+  select_date_change: function (component, event, helper) {
+    helper.select_date_change(component, event, helper);
+  },
+
+  select_agency_change: function (component, event, helper) {
+    debugger;
+    helper.select_agency_change(component, event, helper);
+  },
+
+  hosChange: function (component, event, helper) {
+    var hospital_name = event.getParam("value");
+    var hospital_nameld = component.get("v.UseProduct1s");
+    if (hospital_name.match(/(\S+\s)+/)) {
+      if (hospital_nameld != hospital_name) {
+        helper.searchHos(component, event, helper);
+      }
+    } else {
+      if (hospital_name == "") {
+        helper.hideSearchs(component, event, helper);
+      } else {
+        helper.hideSearch(component, event, helper);
+      }
+    }
+  },
+  selectHos: function (component, event, helper) {
+    helper.selectHos(component, event, helper);
+    helper.setOpportunity_cfilter(component);
+  },
+  //浣跨敤浜у搧1
+  UseProduct1Change: function (component, event, helper) {
+    var UseProduct1Name = event.getParam("value");
+    var UseProduct1Nameold = component.get("v.UseProduct1s");
+    debugger;
+    if (UseProduct1Name.match(/(\S+\s)+/)) {
+      if (UseProduct1Name != UseProduct1Nameold) {
+        helper.searchUseProduct1(component, event, helper);
+      }
+    } else {
+      if (UseProduct1Name == "") {
+        helper.hideSearchUseProduct1s(component, event, helper);
+      } else {
+        helper.hideSearchUseProduct1(component, event, helper);
+      }
+    }
+  },
+  seletUseProduct1Change: function (component, event, helper) {
+    helper.seletUseProduct1Change(component, event, helper);
+  },
+  //浣跨敤浜у搧2
+  UseProduct2Change: function (component, event, helper) {
+    var UseProduct2Name = event.getParam("value");
+    var UseProduct2Nameold = component.get("v.UseProduct2s");
+    if (UseProduct2Name.match(/(\S+\s)+/)) {
+      if (UseProduct2Name != UseProduct2Nameold) {
+        helper.searchUseProduct2(component, event, helper);
+      }
+    } else {
+      if (UseProduct2Name == "") {
+        helper.hideSearchUseProduct2s(component, event, helper);
+      } else {
+        helper.hideSearchUseProduct2(component, event, helper);
+      }
+    }
+  },
+  seletUseProduct2Change: function (component, event, helper) {
+    helper.seletUseProduct2Change(component, event, helper);
+  },
+  productcategoryChange2: function (component, event, helper) {
+    helper.productcategoryChange2(component, event, helper);
+  },
+  //浣跨敤浜у搧3
+  UseProduct3Change: function (component, event, helper) {
+    var UseProduct3Name = event.getParam("value");
+    var UseProduct3Nameold = component.get("v.UseProduct3s");
+    if (UseProduct3Name.match(/(\S+\s)+/)) {
+      if (UseProduct3Name != UseProduct3Nameold) {
+        helper.searchUseProduct3(component, event, helper);
+      }
+    } else {
+      if (UseProduct3Name == "") {
+        helper.hideSearchUseProduct3s(component, event, helper);
+      } else {
+        helper.hideSearchUseProduct3(component, event, helper);
+      }
+    }
+  },
+  seletUseProduct3Change: function (component, event, helper) {
+    helper.seletUseProduct3Change(component, event, helper);
+  },
+
+  select_department: function (component, event, helper) {
+    helper.setOpportunity_cfilter(component);
+  },
+  doctor_change: function (component, event, helper) {
+    helper.doctor_change(component, event, helper);
+  },
+  stageNameChange: function (component, event, helper) {
+    helper.stageNameChange(component, event, helper);
+  },
+  onDragOver: function (component, event, helper) {
+    event.preventDefault();
+  },
+
+  onDrop: function (component, event, helper) {
+    event.stopPropagation();
+    event.preventDefault();
+    event.dataTransfer.dropEffect = "copy";
+    var files = event.dataTransfer.files;
+    helper.readFile(component, helper, files[0]);
+  },
+  CreateRecord: function (component, event, helper) {
+    var files = event.getSource().get("v.files");
+    helper.readFile(component, helper, files[0]);
+  },
+
+  processFileContent: function (component, event, helper) {
+    helper.saveRecords(component, event, helper);
+  },
+
+  cancel: function (component, event, helper) {
+    component.set("v.showMain", true);
+  },
+
+  import: function (component, event, helper) {
+    helper.showImport(component);
+  },
+  exportDate: function (component, event, helper) {
+    var stockData = component.get("v.reports_date");
+    console.log("瀵煎嚭鏁版嵁" + stockData);
+    var csv = helper.convertArrayOfObjectsToCSV(component, stockData);
+    if (csv == null) {
+      return;
+    }
+
+    var universalBOM = "\uFEFF";
+    var hiddenElement = document.createElement("a");
+    hiddenElement.href =
+      "data:text/csv;charset=utf-8," + encodeURI(universalBOM + csv);
+    hiddenElement.target = "_self"; //
+    hiddenElement.download = "ExportData.csv"; // CSV file Name* you can change it.[only name not .csv]
+    document.body.appendChild(hiddenElement); // Required for FireFox browser
+    hiddenElement.click(); // using click() js function to download csv file
+  },
+  export_condition: function (component, event, helper) {
+    helper.showExport(component);
+  },
+
+  select_repores_date: function (component, event, helper) {
+    helper.select_repores_date(component, event, helper);
+  },
+  export: function (component, event, helper) {
+    console.log("杩涘叆export");
+    var stockData = component.get("v.reports_date");
+    console.log("鏌ュ嚭鐨勬暟鎹�" + stockData);
+  },
+  close_import: function (component, event, helper) {
+    component.set("v.showMain", true);
+    helper.close_import(component);
+  },
+  close_export: function (component, event, helper) {
+    component.set("v.showMain", true);
+    helper.close_export(component);
+  },
+  select_ConsumptionOfConsumables: function (component, event, helper) {
+    helper.select_ConsumptionOfConsumables(component, event, helper);
+  },
+  select_purpose_type: function (component, event, helper) {
+    helper.selectPurposeType(component, event, helper);
+  },
+  select_warlocksNumber: function (component, event, helper) {
+    helper.select_warlocksNumber(component, event, helper);
+  },
+  selectProductClassification: function (component, event, helper) {
+    helper.selectProductClassification(component, event, helper);
+  },
+  selectpurposetype: function (component, event, helper) {
+    helper.selectpurposetype(component, event, helper);
+  },
+  return_main_page: function (component, event, helper) {
+    window.open("/customer/", "_self");
+  }
+});
diff --git a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportHelper.js b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportHelper.js
index 5cac1fd..d4f4a18 100644
--- a/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportHelper.js
+++ b/force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportHelper.js
@@ -1,7 +1,6 @@
 ({
   doinit: function (component, event, helper) {
-    document.title = "杩芥函鏃ユ姤";
-
+    debugger;
     this.report_date_list(component, event, helper, 5);
     component.set("v.login", true);
     var action = component.get("c.getalldata");
@@ -14,7 +13,7 @@
         component.set("v.allselectlist", res.allselectlist);
         component.set("v.doclist", res.doclist);
         //fy
-
+        debugger;
         var xx = res.UserProType;
         component.set("v.UserProType", res.UserProType);
         var gg = component.get("v.UserProType");
@@ -62,80 +61,9 @@
         component.set("v.PIConfig", res.PIConfig); // 20220222 PI鏀归�� by Bright
         component.set("v.login", false);
       } else {
-        //component.set('v.errorMessage', 'doinit failed.');
-        this.error("doinit failed.");
-        //this.showErrorToast(component);
+        component.set("v.errorMessage", "doinit failed.");
+        this.showErrorToast(component);
         component.set("v.login", false);
-      }
-    });
-    $A.enqueueAction(action);
-  },
-  doinitSave: function (component, event, helper) {
-    document.title = "杩芥函鏃ユ姤";
-    component.set("v.loginEdit", true);
-    this.report_date_list(component, event, helper, 5);
-    var action = component.get("c.getalldata");
-    action.setCallback(this, function (response) {
-      var state = response.getState();
-      if (state == "SUCCESS") {
-        var res = response.getReturnValue();
-        component.set("v.alldata", res.reports);
-        component.set("v.fieldsmap", res.fieldsMap);
-        component.set("v.allselectlist", res.allselectlist);
-        component.set("v.doclist", res.doclist);
-        //fy
-
-        var xx = res.UserProType;
-        component.set("v.UserProType", res.UserProType);
-        var gg = component.get("v.UserProType");
-        //fy
-        component
-          .find("select_agency_person")
-          .set(
-            "v.options",
-            this.conv_selected(res.allselectlist.AgencyPerson__c)
-          );
-        component
-          .find("select_DealerPersonnel")
-          .set(
-            "v.options",
-            this.conv_selected(res.allselectlist.DealerPersonnel__c)
-          );
-        component
-          .find("select_purpose_type")
-          .set(
-            "v.options",
-            this.conv_selected(res.allselectlist.WorkRecord__c)
-          );
-        component
-          .find("select_ProductClassification")
-          .set(
-            "v.options",
-            this.conv_selected(res.allselectlist.ProductClassification__c)
-          );
-        component
-          .find("select_stageName")
-          .set("v.options", this.conv_selected(res.allselectlist.StageName__c));
-        component.set(
-          "v.selected_agency_person",
-          res.allselectlist.AgencyPerson__c[0].label
-        );
-        component.set("v.dialog_type", "鏂板缓");
-        this.get_reports(
-          component,
-          event,
-          helper,
-          component.find("select_date").get("v.value"),
-          component.find("select_agency_person").get("v.value")
-        );
-
-        component.set("v.PIConfig", res.PIConfig); // 20220222 PI鏀归�� by Bright
-        component.set("v.loginEdit", false);
-      } else {
-        //component.set('v.errorMessage', 'doinit failed.');
-        this.error("doinit failed.");
-        //this.showErrorToast(component);
-        component.set("v.loginEdit", false);
       }
     });
     $A.enqueueAction(action);
@@ -179,8 +107,9 @@
       date_str: date_str,
       person_str: person_str
     });
-    component.set("v.loginEdit", true);
+    component.set("v.login", true);
     action.setCallback(this, function (response) {
+      debugger;
       var state = response.getState();
       if (state == "SUCCESS") {
         var res = response.getReturnValue();
@@ -244,7 +173,7 @@
                         m[data.object[di].dataId] = data.object[di];
                       }
                     }
-
+                    debugger;
                     for (let ri in res.reports) {
                       if (
                         res.reports[ri] &&
@@ -269,23 +198,22 @@
                     component.set("v.report_count", res.reports.length);
                   }
                   //fy 20220414 end
-                  component.set("v.loginEdit", false);
+                  component.set("v.login", false);
                 },
                 staticResourceAgencyContact.token
               );
             } else {
-              component.set("v.loginEdit", false);
+              component.set("v.login", false);
             }
           }
         } else {
           component.set("v.list_message", "no_data");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       } else {
-        //component.set('v.errorMessage', 'get_reports failed.');
-        this.error("get_reports failed.");
-        //this.showErrorToast(component);
-        component.set("v.loginEdit", false);
+        component.set("v.errorMessage", "get_reports failed.");
+        this.showErrorToast(component);
+        component.set("v.login", false);
       }
     });
     $A.enqueueAction(action);
@@ -333,6 +261,7 @@
   },
   //澶嶅埗鍜岀紪杈戝洖鏄剧殑浣嶇疆
   toggle_report: function (component) {
+    debugger;
     var modal_window = component.find("modal_window");
     var modal_bg = component.find("modal_bg");
     if ($A.util.hasClass(modal_window, "disp_none")) {
@@ -500,6 +429,8 @@
             .find("select_WorkMark")
             .set("v.checked", select_data["WorkMark__c"]);
         }
+        debugger;
+
         var report_id = component.get("v.edit_copy_select_report_id");
         if (report_id != "") {
           var select_EffectProgress1 = "";
@@ -668,345 +599,6 @@
         }
       }
     }
-  },
-  toggle_report_edit: function (component) {
-    var modal_window = component.find("modal_window");
-    var modal_bg = component.find("modal_bg");
-    if ($A.util.hasClass(modal_window, "disp_none")) {
-      // OPEN
-      $A.util.removeClass(modal_window, "disp_none");
-      $A.util.removeClass(modal_bg, "disp_none");
-      component.set("v.loginEdit", true);
-      //澶嶅埗  鍜岀紪杈�   鍥炴樉闂鍦ㄨ繖閲岄潰
-      if (
-        component.get("v.mode") == "edit" ||
-        component.get("v.mode") == "copy"
-      ) {
-        var select_data = "";
-        if (component.get("v.mode") == "edit") {
-          select_data = component.get("v.select_report_data");
-        } else if (component.get("v.mode") == "copy") {
-          select_data = component.get("v.select_report_data_radio");
-        }
-        var reports = component.get("v.reports");
-        var Agency_Hospital_text = "";
-        var Agency_Hospital_parent_id = "";
-        // 鍖婚櫌鍚�
-        if (select_data["Agency_Hospital__c"] != "") {
-          for (var i = 0; i < reports.length; i++) {
-            if (
-              reports[i]["Agency_Hospital__c"] ==
-              select_data["Agency_Hospital__c"]
-            ) {
-              Agency_Hospital_text = reports[i]["Agency_Hospital__r"]["Name"];
-              Agency_Hospital_parent_id =
-                reports[i]["Agency_Hospital__r"]["Hospital__c"];
-            }
-          }
-          component.set("v.hospital", Agency_Hospital_text);
-          component.set("v.hospitalId", Agency_Hospital_parent_id);
-          component.set("v.hospitalLinkId", select_data["Agency_Hospital__c"]);
-          component.find("new_con").set("v.disabled", false);
-        }
-        //浣跨敤浜у搧1(浜у搧鍨嬪彿)
-        var UseProduct1Text = "";
-        var UseProduct1Id = "";
-        if (
-          select_data["UseProduct1__c"] != "" &&
-          select_data["UseProduct1__c"] != undefined
-        ) {
-          for (var i = 0; i < reports.length; i++) {
-            if (reports[i]["UseProduct1__c"] == select_data["UseProduct1__c"]) {
-              UseProduct1Text =
-                reports[i]["UseProduct1__r"]["Asset_Model_No__c"];
-              UseProduct1Id = reports[i]["UseProduct1__c"];
-            }
-          }
-          component.set("v.UseProduct1", UseProduct1Text);
-          component.set("v.UseProduct1Id", select_data["UseProduct1__c"]);
-        }
-        //浣跨敤浜у搧2
-        var UseProduct2Text = "";
-        var UseProduct2Id = "";
-        if (
-          select_data["UseProduct2__c"] != "" &&
-          select_data["UseProduct2__c"] != undefined
-        ) {
-          for (var i = 0; i < reports.length; i++) {
-            if (reports[i]["UseProduct2__c"] == select_data["UseProduct2__c"]) {
-              UseProduct2Text =
-                reports[i]["UseProduct2__r"]["Asset_Model_No__c"];
-              UseProduct2Id = reports[i]["UseProduct2__c"];
-            }
-          }
-          component.set("v.UseProduct2", UseProduct2Text);
-          component.set("v.UseProduct2Id", select_data["UseProduct2__c"]);
-        }
-        //浣跨敤浜у搧3
-        var UseProduct3Text = "";
-        var UseProduct3Id = "";
-        if (
-          select_data["UseProduct3__c"] != "" &&
-          select_data["UseProduct3__c"] != undefined
-        ) {
-          for (var i = 0; i < reports.length; i++) {
-            if (reports[i]["UseProduct3__c"] == select_data["UseProduct3__c"]) {
-              UseProduct3Text =
-                reports[i]["UseProduct3__r"]["Asset_Model_No__c"];
-              UseProduct3Id = reports[i]["UseProduct3__c"];
-            }
-          }
-          component.set("v.UseProduct3", UseProduct3Text);
-          component.set("v.UseProduct3Id", select_data["UseProduct3__c"]);
-        }
-        //娲诲姩鏃�
-        var reportDate;
-        if (select_data["Report_Date__c"] != "") {
-          for (var i = 0; i < reports.length; i++) {
-            if (reports[i]["Report_Date__c"] == select_data["Report_Date__c"]) {
-              reportDate = reports[i]["Report_Date__c"];
-            }
-          }
-          component.set("v.data.Report_Date__c", reportDate);
-        }
-        // 绉戝
-        // if (select_data['Department_Cateogy__c'] != '') {
-        //     component.find('select_department').set('v.value',select_data['Department_Cateogy__c']);
-        // }
-        //fy Department_Cateogy_text__c
-        if (select_data["Department_Cateogy_text__c"] != "") {
-          component
-            .find("select_department")
-            .set("v.value", select_data["Department_Cateogy_text__c"]);
-        }
-        //缁忛攢鍟嗕汉鍛�
-        if (select_data["DealerPersonnel__c"] != "") {
-          this.set_selected(
-            component,
-            "select_DealerPersonnel",
-            select_data["DealerPersonnel__c"]
-          );
-        }
-        // 娲诲姩鍖哄垎
-        if (select_data["WorkRecord__c"] != "") {
-          this.set_selected(
-            component,
-            "select_purpose_type",
-            select_data["WorkRecord__c"]
-          );
-          this.selectPurposeType(component);
-        }
-        // 鎷滆浜�
-        if (select_data["WorkRecord__c"] == "绉戝浼�") {
-          component.set(
-            "v.default_select_doctor_id2",
-            select_data["doctor3__c"]
-          );
-          var a = component.get("v.default_select_doctor_id2");
-          this.set_doctor_list_edit(component);
-        } else {
-          component.set(
-            "v.default_select_doctor_id",
-            select_data["doctor2__c"]
-          );
-          this.set_doctor_list_edit(component);
-        }
-        //浜у搧鍒嗙被(绗笁鍒嗙被)
-        if (select_data["ProductClassification__c"] != null) {
-          this.set_selected(
-            component,
-            "select_ProductClassification",
-            select_data["ProductClassification__c"]
-          );
-          this.selectProductClassification(component);
-        }
-        // 浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺
-        if (select_data["ConsumptionOfConsumables__c"] != "") {
-          component
-            .find("select_ConsumptionOfConsumables")
-            .set("v.value", select_data["ConsumptionOfConsumables__c"]);
-        }
-        // 浜у搧鐢ㄩ噺
-        if (select_data["warlocksNumber__c"] != "") {
-          component
-            .find("select_warlocksNumber")
-            .set("v.value", select_data["warlocksNumber__c"]);
-        }
-        // 鏀彺闇�姹�
-        if (select_data["WorkMark__c"] != false) {
-          component
-            .find("select_WorkMark")
-            .set("v.checked", select_data["WorkMark__c"]);
-        }
-        var report_id = component.get("v.edit_copy_select_report_id");
-        if (report_id != "") {
-          var select_EffectProgress1 = "";
-          var WarlockClassification = "";
-          var ProductCcategory = "";
-          var productCategories = "";
-          var i = 0;
-          for (i = 0; i < reports.length; i++) {
-            if (report_id == reports[i]["Id"]) {
-              select_EffectProgress1 = reports[i]["EffectProgress__c"];
-              WarlockClassification = reports[i]["WarlockClassification__c"];
-              ProductCcategory = reports[i]["ProductCcategory__c"];
-              productCategories = reports[i]["productCategories__c"];
-              break;
-            }
-          }
-          //鏁堟灉/杩涘害
-          if (select_EffectProgress1 != null && select_EffectProgress1 != "") {
-            component
-              .find("select_EffectProgress")
-              .set("v.value", select_EffectProgress1);
-          }
-          //鏈+鍒嗙被
-          if (WarlockClassification != null && WarlockClassification != "") {
-            component
-              .find("select_OtherBrandConsumables")
-              .set("v.value", WarlockClassification);
-          }
-          //宸查噰鐢ㄥ叾浠栧搧鐗�
-          if (ProductCcategory != null && ProductCcategory != "") {
-            component
-              .find("select_ProductCcategory")
-              .set("v.value", ProductCcategory);
-            this.selectpurposetype(component);
-          }
-          //鍏朵粬鍝佺墝浜у搧绫诲埆
-          if (productCategories != null && productCategories != "") {
-            component
-              .find("select_productCategories")
-              .set("v.value", productCategories);
-          }
-          component.set("v.edit_copy_select_report_id", "");
-        }
-      }
-    } else {
-      var select_report_data = component.get("v.select_report_data");
-      var Report_Date__c = component.get("v.data.Report_Date__c");
-      var Agency_Hospital__c = component.get("v.hospitalLinkId");
-      var UseProduct1__c = component.get("v.UseProduct1Id");
-      var UseProduct2__c = component.get("v.UseProduct2Id");
-      var UseProduct3__c = component.get("v.UseProduct3Id");
-      var Department_Cateogy__c = component
-        .find("select_department")
-        .get("v.value");
-      var ConsumptionOfConsumables__c = component
-        .find("select_ConsumptionOfConsumables")
-        .get("v.value");
-      var DealerPersonnel__c = component
-        .find("select_DealerPersonnel")
-        .get("v.value");
-      var doctor2__c = component.find("select_doctor").get("v.value");
-      var WorkRecord__c = component.find("select_purpose_type").get("v.value");
-      var EffectProgress__c = component
-        .find("select_EffectProgress")
-        .get("v.value");
-      var WarlockClassification__c = component
-        .find("select_OtherBrandConsumables")
-        .get("v.value");
-      var ProductCcategory__c = component
-        .find("select_ProductCcategory")
-        .get("v.value");
-      var productCategories__c = component
-        .find("select_productCategories")
-        .get("v.value");
-      var warlocksNumber__c = component
-        .find("select_warlocksNumber")
-        .get("v.value");
-      var WorkMark__c = component.find("select_WorkMark").get("v.checked");
-      if (component.get("v.mode") == "new") {
-        var confirm_title = "璀﹀憡!";
-        var confirm_text = "鏀惧純鏂板缓鏃ユ姤锛�";
-        if (
-          !Report_Date__c &&
-          !Agency_Hospital__c &&
-          !UseProduct1__c &&
-          !UseProduct2__c &&
-          !UseProduct3__c &&
-          !Department_Cateogy__c &&
-          !ConsumptionOfConsumables__c &&
-          !DealerPersonnel__c &&
-          !doctor2__c &&
-          !EffectProgress__c &&
-          !WarlockClassification__c &&
-          !ProductCcategory__c &&
-          !productCategories__c &&
-          !warlocksNumber__c &&
-          !WorkMark__c &&
-          !WorkRecord__c
-        ) {
-          this.allclear(component);
-          $A.util.addClass(modal_window, "disp_none");
-          $A.util.addClass(modal_bg, "disp_none");
-          this.close_confirm(component, confirm_title, confirm_text);
-        } else {
-          this.close_confirm(component, confirm_title, confirm_text);
-        }
-      } else if (component.get("v.mode") == "copy") {
-        var confirm_title = "璀﹀憡!";
-        var confirm_text = "鏀惧純鏂板缓鏃ユ姤锛�";
-        if (
-          select_report_data["Report_Date__c"] == Report_Date__c &&
-          select_report_data["Agency_Hospital__c"] == Agency_Hospital__c &&
-          select_report_data["UseProduct1__c"] == UseProduct1__c &&
-          select_report_data["UseProduct2__c"] == UseProduct2__c &&
-          select_report_data["UseProduct3__c"] == UseProduct3__c &&
-          select_report_data["Department_Cateogy__c"] ==
-            Department_Cateogy__c &&
-          select_report_data["ConsumptionOfConsumables__c"] ==
-            ConsumptionOfConsumables__c &&
-          select_report_data["DealerPersonnel__c"] == DealerPersonnel__c &&
-          select_report_data["doctor2__c"] == doctor2__c &&
-          select_report_data["EffectProgress__c"] == EffectProgress__c &&
-          select_report_data["WarlockClassification__c"] ==
-            WarlockClassification__c &&
-          select_report_data["ProductCcategory__c"] == ProductCcategory__c &&
-          select_report_data["productCategories__c"] == productCategories__c &&
-          select_report_data["warlocksNumber__c"] == warlocksNumber__c &&
-          select_report_data["WorkMark__c"] == WorkMark__c &&
-          select_report_data["WorkRecord__c"] == WorkRecord__c
-        ) {
-          this.allclear(component);
-          $A.util.addClass(modal_window, "disp_none");
-          $A.util.addClass(modal_bg, "disp_none");
-        } else {
-          this.close_confirm(component, confirm_title, confirm_text);
-        }
-      } else if (component.get("v.mode") == "edit") {
-        var confirm_title = "璀﹀憡!";
-        var confirm_text = "鏀惧純缂栬緫鏃ユ姤锛�";
-        if (
-          select_report_data["Report_Date__c"] == Report_Date__c &&
-          select_report_data["Agency_Hospital__c"] == Agency_Hospital__c &&
-          select_report_data["UseProduct1__c"] == UseProduct1__c &&
-          select_report_data["UseProduct2__c"] == UseProduct2__c &&
-          select_report_data["UseProduct3__c"] == UseProduct3__c &&
-          select_report_data["Department_Cateogy__c"] ==
-            Department_Cateogy__c &&
-          select_report_data["ConsumptionOfConsumables__c"] ==
-            ConsumptionOfConsumables__c &&
-          select_report_data["DealerPersonnel__c"] == DealerPersonnel__c &&
-          select_report_data["doctor2__c"] == doctor2__c &&
-          select_report_data["EffectProgress__c"] == EffectProgress__c &&
-          select_report_data["WarlockClassification__c"] ==
-            WarlockClassification__c &&
-          select_report_data["ProductCcategory__c"] == ProductCcategory__c &&
-          select_report_data["productCategories__c"] == productCategories__c &&
-          select_report_data["warlocksNumber__c"] == warlocksNumber__c &&
-          select_report_data["WorkMark__c"] == WorkMark__c &&
-          select_report_data["WorkRecord__c"] == WorkRecord__c
-        ) {
-          this.allclear(component);
-          $A.util.addClass(modal_window, "disp_none");
-          $A.util.addClass(modal_bg, "disp_none");
-        } else {
-          this.close_confirm(component, confirm_title, confirm_text);
-        }
-      }
-    }
-    //component.set('v.loginEdit',false);
   },
   //鍏抽棴椤甸潰鏄�   灏忕殑鎻愮ず妗嗘槸鍚︽斁寮冩柊寤烘棩鎶�
   close_confirm: function (component, title, text) {
@@ -1017,7 +609,7 @@
     var modal_bg = component.find("modal_bg");
     var modal_confirm = component.find("modal_confirm");
     var modal_confirm_bg = component.find("modal_confirm_bg");
-
+    debugger;
     if (confirm_status == 0) {
       $A.util.addClass(modal_window, "disp_none");
       $A.util.addClass(modal_bg, "disp_none");
@@ -1072,6 +664,7 @@
   },
   // 澶嶅埗鎸夐挳
   copy_button: function (component, event, helper) {
+    debugger;
     this.allclear(component);
     component.set("v.mode", "copy");
     component.set("v.dialog_type", "鏂板缓");
@@ -1115,8 +708,10 @@
   },
   //鍒犻櫎鎸夐挳
   delete_button: function (component, event, helper) {
+    debugger;
     var select_report_data = component.get("v.select_report_data_radio");
     if (confirm("鏄惁鍒犻櫎璇ユ暟鎹紵")) {
+      debugger;
       component.set("v.login", true);
       var action = component.get("c.deleteAgencyReport");
       action.setParams({
@@ -1139,6 +734,7 @@
   },
   //澶嶅埗鎸夐挳鍙敤
   change_report_radio: function (component, event, helper) {
+    debugger;
     var reports = component.get("v.reports");
     for (var i = 0; i < reports.length; i++) {
       if (reports[i].Name == event.getSource().get("v.label")) {
@@ -1151,11 +747,9 @@
   },
   //缂栬緫鎸夐挳
   edit_button: function (component, event, helper) {
-    component.set("v.login", true);
-    debugger;
-    //component.set('v.loginEdit', true);
     this.allclear(component);
-    //component.set('v.loadOpp', true);
+    debugger;
+    component.set("v.loadOpp", true);
     var index = event.getSource().get("v.value");
     component.set("v.select_report_data", component.get("v.reports")[index]);
     component.set("v.mode", "edit");
@@ -1174,7 +768,7 @@
       "v.edit_copy_select_report_id",
       component.get("v.reports")[index].Id
     );
-    var ret = this.create_report_header_edit(
+    var ret = this.create_report_header(
       component,
       event,
       helper,
@@ -1184,7 +778,6 @@
     );
     // SWAG-CF58C3 fy start
     this.set_aws_url(component, "Agency_Contact__c");
-    //component.set('v.login', false);
     // SWAG-CF58C3 fy end
   },
   //淇濆瓨
@@ -1212,7 +805,7 @@
         .find("select_agency_person")
         .get("v.value");
     }
-
+    debugger;
     // Agency_Report_Header__c
     var Agency_Report_Header__c = component.get("v.agency_report_header_id");
     // 鍖婚櫌
@@ -1462,21 +1055,16 @@
 
     // if (!productCategories__c) { error.push("鍏朵粬鍝佺墝浜у搧绫诲埆 涓嶅瓨鍦�"); }
 
-    //let errorMsg = '';
     for (var i = 0; i < error.length; i++) {
       component.set("v.errorMessage", error[i]);
       this.showErrorToast(component);
-      //errorMsg +=  '; ' + error[i]
-      //this.error(error[i]);
     }
-    // if(errorMsg != '')
-    //     this.error(errorMsg.substring(1));
     if (error.length > 0) {
       component.find("save_button").set("v.disabled", false);
       return false;
     }
     // 淇濆瓨鍑︾悊
-    component.set("v.loginEdit", true);
+    component.set("v.login", true);
     if (component.get("v.mode") == "edit") {
       var Agency_Report__c = component.get("v.select_report_data").Id;
       var action = component.get("c.editAgencyReport");
@@ -1510,7 +1098,6 @@
       action.setCallback(this, function (response) {
         var state = response.getState();
         if (state == "SUCCESS") {
-          debugger;
           component.set("v.successMessage", "缂栬緫淇濆瓨鎴愬姛");
           this.showSuccessToast(component);
           var report_id = response.getReturnValue();
@@ -1539,13 +1126,12 @@
             component.get("v.select_report_data").Person_In_Charge2__c
           );
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         } else {
-          //component.set('v.errorMessage', 'save_report failed.');
-          this.error("淇濆瓨鏃ユ姤澶辫触");
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", "save_report failed.");
+          this.showErrorToast(component);
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       });
       $A.enqueueAction(action);
@@ -1619,27 +1205,24 @@
                 var data_list = component.find("modal_data_list_tr");
               }
             } else {
-              // component.set('v.errorMessage', 'get_reports_now failed.');
-              this.error("get_reports_now failed.");
-              //this.showErrorToast(component);
+              component.set("v.errorMessage", "get_reports_now failed.");
+              this.showErrorToast(component);
               component.find("save_button").set("v.disabled", false);
-              component.set("v.loginEdit", false);
+              component.set("v.login", false);
             }
           });
           $A.enqueueAction(action2);
           this.allclear(component);
           component.find("select_WorkMark").set("v.value", false);
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
-          debugger;
-          this.doinitSave(component, event, helper);
+          component.set("v.login", false);
+          this.doinit(component, event, helper);
         } else {
           var error = response.getError();
-          //component.set('v.errorMessage', '淇濆瓨鏃ユ姤澶辫触');
-          this.error("淇濆瓨鏃ユ姤澶辫触");
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", "saveAgencyReport failed.");
+          this.showErrorToast(component);
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       });
       $A.enqueueAction(action);
@@ -1795,17 +1378,15 @@
   ) {
     s_date = this.get_date_string(s_date);
     if (s_date == false) {
-      //component.set('v.errorMessage', 'get_date_string failed.');
-      this.error("get_date_string failed.");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "get_date_string failed.");
+      this.showErrorToast(component);
       return false;
     }
     var head_key = this.create_header_input_key(s_agency, s_date);
     component.set("v.agency_report_header", head_key);
     if (head_key == false) {
-      //component.set('v.errorMessage', 'create_header_input_key failed.');
-      this.error("create_header_input_key failed.");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "create_header_input_key failed.");
+      this.showErrorToast(component);
       return false;
     }
     var key2 = s_date.replace(/-/g, "");
@@ -1825,58 +1406,8 @@
         component.set("v.login", false);
         this.toggle_report(component, event, helper);
       } else {
-        //component.set('v.errorMessage', 'createReportHeader callback failed.');
-        this.error("createReportHeader callback failed.");
-        //this.showErrorToast(component);
-        component.set("v.login", false);
-      }
-    });
-    $A.enqueueAction(action);
-  },
-  create_report_header_edit: function (
-    component,
-    event,
-    helper,
-    name,
-    s_agency,
-    s_date
-  ) {
-    s_date = this.get_date_string(s_date);
-    if (s_date == false) {
-      //component.set('v.errorMessage', 'get_date_string failed.');
-      this.error("get_date_string failed.");
-      //this.showErrorToast(component);
-      return false;
-    }
-    var head_key = this.create_header_input_key(s_agency, s_date);
-    component.set("v.agency_report_header", head_key);
-    if (head_key == false) {
-      //component.set('v.errorMessage', 'create_header_input_key failed.');
-      this.error("create_header_input_key failed.");
-      //this.showErrorToast(component);
-      return false;
-    }
-    var key2 = s_date.replace(/-/g, "");
-    var action = component.get("c.createReportHeader");
-
-    action.setParams({
-      name: name,
-      s_date: s_date,
-      s_agency: s_agency,
-      head_key: head_key
-    });
-    component.set("v.login", true);
-    action.setCallback(this, function (response) {
-      var state = response.getState();
-      if (state == "SUCCESS") {
-        var res = response.getReturnValue();
-        component.set("v.agency_report_header_id", res);
-        component.set("v.login", false);
-        this.toggle_report_edit(component, event, helper);
-      } else {
-        //component.set('v.errorMessage', 'createReportHeader callback failed.');
-        this.error("createReportHeader callback failed.");
-        //this.showErrorToast(component);
+        component.set("v.errorMessage", "createReportHeader callback failed.");
+        this.showErrorToast(component);
         component.set("v.login", false);
       }
     });
@@ -1886,9 +1417,11 @@
     if (typeof s_date != "string") {
       s_date = this.get_date_string(s_date);
       if (s_date == false) {
-        //component.set('v.errorMessage', 'get_date_string in create_header_input_key.');
-        this.error("get_date_string in create_header_input_key.");
-        //this.showErrorToast(component);
+        component.set(
+          "v.errorMessage",
+          "get_date_string in create_header_input_key."
+        );
+        this.showErrorToast(component);
         return false;
       }
     }
@@ -1980,6 +1513,7 @@
     component.set("v.hospitalId", "");
   },
   selectHos: function (component, event, helper) {
+    debugger;
     var hospital_list = component.find("hospital_list");
     $A.util.removeClass(hospital_list, "slds-is-open");
     var accname = event.currentTarget.dataset.accname;
@@ -2002,9 +1536,9 @@
     component.set("v.hospitals", accname);
     component.set("v.hospital", accname);
     component.set("v.hospitalId", accid);
-
+    debugger;
     component.set("v.setdoctorlisthos", true);
-    this.set_doctor_list_edit(component, event, helper);
+    this.set_doctor_list(component, event, helper);
   },
 
   //妯$硦鏌ヨ浣跨敤浜у搧1(浜у搧鍨嬪彿)
@@ -2048,6 +1582,7 @@
     component.set("v.data.UseProduct1__c", "");
   },
   seletUseProduct1Change: function (component, event, helper) {
+    debugger;
     var UseProduct1_List = component.find("UseProduct1_List");
     $A.util.removeClass(UseProduct1_List, "slds-is-open");
     var accname = event.currentTarget.dataset.accname;
@@ -2065,9 +1600,8 @@
       component.set("v.UseProduct1s", accname);
       component.set("v.UseProduct1", accname);
     } else {
-      //component.set('v.errorMessage', '涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�');
-      this.error("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�");
+      this.showErrorToast(component);
     }
   },
   //妯$硦鏌ヨ浣跨敤浜у搧2
@@ -2128,9 +1662,8 @@
       component.set("v.UseProduct2s", accname);
       component.set("v.UseProduct2", accname);
     } else {
-      //component.set('v.errorMessage', '涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�');
-      this.error("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�");
+      this.showErrorToast(component);
     }
   },
   //妯$硦鏌ヨ浣跨敤浜у搧3
@@ -2191,13 +1724,13 @@
       component.set("v.UseProduct3s", accname);
       component.set("v.UseProduct3", accname);
     } else {
-      //component.set('v.errorMessage', '涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�');
-      this.error("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝�");
+      this.showErrorToast(component);
     }
   },
   //hospitalLinkId 缁忛攢鍟嗗尰闄㈢殑ID   鎷滆浜哄鍒剁殑鍦版柟
   doctor_change: function (component, event, helper) {
+    debugger;
     var doctorurpose = component.find("select_purpose_type").get("v.value");
     var doctor_value = component.find("select_doctor").get("v.value");
     var doctor_list = component.get("v.doctor_list");
@@ -2234,11 +1767,9 @@
         component.set("v.AWSsearch", awsmap.searchUrl);
         component.set("v.AWStransactionURL", awsmap.transactionURL);
       } else {
-        // component.set('v.errorMessage', 'AWS url/token error.');
-        this.error("AWS url/token error.");
-        //this.showErrorToast(component);
+        component.set("v.errorMessage", "AWS url/token error.");
+        this.showErrorToast(component);
         component.set("v.login", false);
-        component.set("v.loginEdit", false);
       }
     });
     $A.enqueueAction(action);
@@ -2253,9 +1784,6 @@
     helper,
     hospitalName
   ) {
-    console.log("newUrl = " + newUrl);
-    console.log("payload = " + payload);
-    console.log("token = " + token);
     fetch(newUrl, {
       method: "POST",
       body: payload,
@@ -2268,7 +1796,6 @@
         return data.json();
       })
       .then((result) => {
-        console.log("result = " + JSON.stringify(result));
         if (result.status == "0") {
           $A.getCallback(function () {
             helper.to_agencycontact(component, result, agencyHospitalid);
@@ -2323,20 +1850,17 @@
 
           this.to_confirm(component, token, confirmUrl, JSON.stringify(data));
         } else if (acMap.errormsg != "") {
-          // component.set('v.errorMessage', acMap.errormsg);
-          this.error(acMap.errormsg);
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", acMap.errormsg);
+          this.showErrorToast(component);
           component.set("v.login", false);
         } else {
-          //component.set('v.errorMessage', 'agency contact insert id error.');
-          this.error("agency contact insert id error.");
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", "agency contact insert id error.");
+          this.showErrorToast(component);
           component.set("v.login", false);
         }
       } else {
-        //component.set('v.errorMessage', 'agency contact insert error.');
-        this.error("agency contact insert error.");
-        //this.showErrorToast(component);
+        component.set("v.errorMessage", "agency contact insert error.");
+        this.showErrorToast(component);
         component.set("v.login", false);
       }
     });
@@ -2372,35 +1896,30 @@
           $A.util.addClass(modal_newAC, "disp_none");
           component.set("v.successMessage", ".鎷滆浜哄凡鍒涘缓銆�");
           this.showSuccessToast(component);
-          component.set("v.login", false);
-          this.set_doctor_list_edit(component);
+          this.set_doctor_list(component);
         } else {
-          //component.set('v.errorMessage', 'AWS confirm error.');
-          this.error("AWS confirm error.");
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", "AWS confirm error.");
+          this.showErrorToast(component);
           component.set("v.login", false);
         }
       })
       .catch((error) => {
-        // component.set('v.errorMessage', 'AWS confirm error.');
-        this.error("AWS confirm error.");
-        //this.showErrorToast(component);
+        component.set("v.errorMessage", "AWS confirm error.");
+        this.showErrorToast(component);
         component.set("v.login", false);
       });
   },
   //SWAG-CF58C3 fy end 璋冪敤pi
 
   set_doctor_list: function (component) {
-    console.log("set_doctor_list");
     var doctor_value = component.find("select_purpose_type").get("v.value");
     var hospital_id = component.get("v.hospitalLinkId");
-    console.log("hospital_id = " + hospital_id);
     if (hospital_id) {
       if (doctor_value == "绉戝浼�") {
-        component.set("v.loginEdit", true);
+        component.set("v.login", true);
         this.set_doctor_list2(component);
       } else {
-        component.set("v.loginEdit", true);
+        component.set("v.login", true);
         var action = component.get("c.getDoctorList");
         action.setParams({
           hospital_id: hospital_id
@@ -2408,6 +1927,7 @@
         action.setCallback(this, function (response) {
           var state = response.getState();
           if (state == "SUCCESS") {
+            debugger;
             var res = this.conv_selected(response.getReturnValue());
             //fy
             var setdoctorlisthos = component.get("v.setdoctorlisthos");
@@ -2433,7 +1953,7 @@
               }
               component.find("select_doctor").set("v.options", res);
               component.set("v.doctor_title", doctor_title);
-              console.log("awsids = " + JSON.stringify(awsids));
+
               if (awsids.length > 0) {
                 let PIConfig = component.get("v.PIConfig");
                 let staticResourceAgencyContact = JSON.parse(
@@ -2445,7 +1965,6 @@
                     dataIds: awsids
                   },
                   function (data) {
-                    console.log("data = " + JSON.stringify(data));
                     if (data && data.object && data.object.length) {
                       let m = {};
                       for (let di in data.object) {
@@ -2466,7 +1985,7 @@
                       component.find("select_doctor").set("v.options", res);
                     }
 
-                    component.set("v.loginEdit", false);
+                    component.set("v.login", false);
                   },
                   staticResourceAgencyContact.token
                 );
@@ -2510,7 +2029,7 @@
                       component.find("select_doctor").set("v.options", res);
                     }
 
-                    component.set("v.loginEdit", false);
+                    component.set("v.login", false);
                   },
                   staticResourceAgencyContact.token
                 );
@@ -2521,14 +2040,13 @@
               }
             }
             // component.set('v.default_select_doctor_id', '');
-
+            debugger;
             component.set("v.doctor_list", res);
-            component.set("v.loginEdit", false);
+            component.set("v.login", false);
           } else {
-            // component.set('v.errorMessage', 'set_doctor_list failed.');
-            this.error("set_doctor_list failed.");
-            //this.showErrorToast(component);
-            component.set("v.loginEdit", false);
+            component.set("v.errorMessage", "set_doctor_list failed.");
+            this.showErrorToast(component);
+            component.set("v.login", false);
           }
         });
         $A.enqueueAction(action);
@@ -2540,166 +2058,14 @@
         component.find("select_doctor").set("v.options", "");
       }
     }
-    component.set("v.loginEdit", false);
   }, //fy 20220414
-  set_doctor_list_edit: function (component) {
-    console.log("set_doctor_list");
-    var doctor_value = component.find("select_purpose_type").get("v.value");
-    var hospital_id = component.get("v.hospitalLinkId");
-    console.log("hospital_id = " + hospital_id);
-    if (hospital_id) {
-      if (doctor_value == "绉戝浼�") {
-        component.set("v.loginEdit", true);
-        this.set_doctor_list2(component);
-      } else {
-        component.set("v.loginEdit", true);
-        var action = component.get("c.getDoctorList");
-        action.setParams({
-          hospital_id: hospital_id
-        });
-        action.setCallback(this, function (response) {
-          var state = response.getState();
-          if (state == "SUCCESS") {
-            var res = this.conv_selected(response.getReturnValue());
-            //fy
-            var setdoctorlisthos = component.get("v.setdoctorlisthos");
-            if (setdoctorlisthos) {
-              component.set("v.default_select_doctor_id", "");
-              component.set("v.setdoctorlisthos", false);
-            }
-            //fy
-            var default_doctor = component.get("v.default_select_doctor_id");
-            if (default_doctor != "" && res.length > 0) {
-              var doctor_title = "";
-              let awsids = [];
-              for (var i = 0; i < res.length; i++) {
-                if (res[i].value == default_doctor) {
-                  res[i].selected = true;
-                  doctor_title = res[i].Doctor_Division1__c;
-                } else {
-                  res[i].selected = false;
-                }
-                if (res[i].AWS_Data_Id__c) {
-                  awsids.push(res[i].AWS_Data_Id__c);
-                }
-              }
-              component.find("select_doctor").set("v.options", res);
-              component.set("v.doctor_title", doctor_title);
-              console.log("awsids = " + JSON.stringify(awsids));
-              if (awsids.length > 0) {
-                let PIConfig = component.get("v.PIConfig");
-                let staticResourceAgencyContact = JSON.parse(
-                  PIConfig.staticResourceAgencyContact
-                );
-                AWSService.search(
-                  staticResourceAgencyContact.searchUrl,
-                  {
-                    dataIds: awsids
-                  },
-                  function (data) {
-                    console.log("data = " + JSON.stringify(data));
-                    if (data && data.object && data.object.length) {
-                      let m = {};
-                      for (let di in data.object) {
-                        if (data.object[di] && data.object[di].dataId) {
-                          m[data.object[di].dataId] = data.object[di];
-                        }
-                      }
-
-                      for (let ri in res) {
-                        if (
-                          res[ri] &&
-                          res[ri].AWS_Data_Id__c &&
-                          m.hasOwnProperty(res[ri].AWS_Data_Id__c)
-                        ) {
-                          res[ri].label = m[res[ri].AWS_Data_Id__c].name;
-                        }
-                      }
-                      component.find("select_doctor").set("v.options", res);
-                    }
-
-                    component.set("v.loginEdit", false);
-                  },
-                  staticResourceAgencyContact.token
-                );
-              }
-            } else {
-              let awsids = [];
-              for (var i = 0; i < res.length; i++) {
-                if (res[i].AWS_Data_Id__c) {
-                  awsids.push(res[i].AWS_Data_Id__c);
-                }
-              }
-              component.find("select_doctor").set("v.options", res);
-              if (awsids.length > 0) {
-                let PIConfig = component.get("v.PIConfig");
-                let staticResourceAgencyContact = JSON.parse(
-                  PIConfig.staticResourceAgencyContact
-                );
-                AWSService.search(
-                  staticResourceAgencyContact.searchUrl,
-                  {
-                    dataIds: awsids
-                  },
-                  function (data) {
-                    if (data && data.object && data.object.length) {
-                      let m = {};
-                      for (let di in data.object) {
-                        if (data.object[di] && data.object[di].dataId) {
-                          m[data.object[di].dataId] = data.object[di];
-                        }
-                      }
-
-                      for (let ri in res) {
-                        if (
-                          res[ri] &&
-                          res[ri].AWS_Data_Id__c &&
-                          m.hasOwnProperty(res[ri].AWS_Data_Id__c)
-                        ) {
-                          res[ri].label = m[res[ri].AWS_Data_Id__c].name;
-                        }
-                      }
-                      component.find("select_doctor").set("v.options", res);
-                    }
-
-                    component.set("v.loginEdit", false);
-                  },
-                  staticResourceAgencyContact.token
-                );
-              }
-              // component.find('select_doctor').set('v.options', res);
-              if (res.length > 0) {
-                component.set("v.doctor_title", res[0].Doctor_Division1__c);
-              }
-            }
-            // component.set('v.default_select_doctor_id', '');
-
-            component.set("v.doctor_list", res);
-            component.set("v.loginEdit", false);
-          } else {
-            // component.set('v.errorMessage', 'set_doctor_list failed.');
-            this.error("set_doctor_list failed.");
-            //this.showErrorToast(component);
-            component.set("v.loginEdit", false);
-          }
-        });
-        $A.enqueueAction(action);
-      }
-    } else {
-      if (doctor_value == "绉戝浼�") {
-        this.set_doctor_list2(component);
-      } else {
-        component.find("select_doctor").set("v.options", "");
-      }
-    }
-  },
   set_doctor_list2: function (component) {
     var action1 = component.get("c.selectdoctor3c");
     action1.setCallback(this, function (response) {
       var state = response.getState();
       if (state == "SUCCESS") {
         var res = response.getReturnValue();
-
+        debugger;
         for (var i = 0; i < res.length; i++) {
           if (res[i].selected == "true") {
             res[i].selected = true;
@@ -2707,12 +2073,11 @@
             res[i].selected = false;
           }
         }
-
+        debugger;
         component.find("select_doctor").set("v.options", res);
         var doctor3value = component.get("v.default_select_doctor_id2");
         this.set_selected(component, "select_doctor", doctor3value);
         component.set("v.login", false);
-        component.set("v.loginEdit", false);
       }
     });
     $A.enqueueAction(action1);
@@ -2731,9 +2096,8 @@
       (p1bool && p0bool && product_category_id == pcId1) ||
       (p2bool && p0bool && product_category_id == pcId2)
     ) {
-      //component.set('v.errorMessage', '涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�');
-      this.error("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
+      this.showErrorToast(component);
       component.find("select_Product1").set("v.value", "");
     }
   },
@@ -2748,9 +2112,8 @@
       (p1bool && p0bool && product_category_id == pcId1) ||
       (p2bool && p0bool && product_category_id == pcId2)
     ) {
-      //component.set('v.errorMessage', '涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�');
-      this.error("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
+      this.showErrorToast(component);
       component.set("v.UseProduct2_TEXT", "");
     }
   },
@@ -2768,9 +2131,8 @@
       (p1bool && p0bool && product_category_id == pcId1) ||
       (p2bool && p0bool && product_category_id == pcId2)
     ) {
-      //component.set('v.errorMessage', '涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�');
-      this.error("涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
-      //this.showErrorToast(component);
+      component.set("v.errorMessage", "涓嶈兘閫夋嫨鍚屾牱鐨勪骇鍝佸尯鍒�");
+      this.showErrorToast(component);
       component.find("select_Product3").set("v.value", "");
     }
   },
@@ -2787,6 +2149,7 @@
     return obj;
   },
   set_selected: function (component, aura_id_name, value) {
+    debugger;
     var select_tmp = component.find(aura_id_name).get("v.options");
     if (select_tmp) {
       for (var i = 0; i < select_tmp.length; i++) {
@@ -2804,6 +2167,7 @@
   },
   //寮瑰嚭 鎴愬姛鎻愮ず
   showSuccessToast: function (component) {
+    debugger;
     $A.util.removeClass(component.find("successDiv"), "slds-hide");
     window.setTimeout(
       $A.getCallback(function () {
@@ -2814,6 +2178,7 @@
   },
   //寮瑰嚭 鎴愬姛鎻愮ず
   showSuccessToast01: function (component) {
+    debugger;
     $A.util.removeClass(component.find("successDiv01"), "slds-hide");
     window.setTimeout(
       $A.getCallback(function () {
@@ -2824,6 +2189,7 @@
   },
   //寮瑰嚭 閿欒鎻愮ず
   showErrorToast: function (component) {
+    debugger;
     $A.util.removeClass(component.find("errorDiv"), "slds-hide");
     window.setTimeout(
       $A.getCallback(function () {
@@ -2834,6 +2200,7 @@
   },
   //寮瑰嚭 閿欒鎻愮ず
   showErrorToast01: function (component) {
+    debugger;
     $A.util.removeClass(component.find("errorDiv01"), "slds-hide");
     window.setTimeout(
       $A.getCallback(function () {
@@ -2872,7 +2239,7 @@
     $A.util.addClass(modal_newAC, "disp_none");
     component.set("v.successMessage", ".鎷滆浜哄凡鍒涘缓銆�");
     this.showSuccessToast(component);
-    this.set_doctor_list_edit(component, event, helper);
+    this.set_doctor_list(component, event, helper);
   },
   createCancel: function (component, event, helper) {
     component.set("v.truthy", false);
@@ -2940,6 +2307,7 @@
         component.set("v.TargetFileName", output);
       };
       reader.onload = function (e) {
+        debugger;
         var data = e.target.result;
 
         component.set("v.fileContentData", data);
@@ -2958,15 +2326,9 @@
           var content =
             '<table class="table slds-table slds-table--bordered slds-table--cell-buffer">';
           content += '<thead><tr class="slds-text-title--caps">';
-          content += '<th scope="col" style="width:100px">' + "琛屽彿" + "</th>";
+          content += '<th scope="col">' + "琛屽彿" + "</th>";
           for (i = 0; i < headers.length; i++) {
-            if (headers[i] == "浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺") {
-              content +=
-                '<th scope="col" style="width:250px">' + headers[i] + "</th>";
-            } else {
-              content +=
-                '<th scope="col" style="width:200px">' + headers[i] + "</th>";
-            }
+            content += '<th scope="col">' + headers[i] + "</th>";
           }
           content += "</tr></thead>";
           for (var i = 1; i < allTextLines.length; i++) {
@@ -3004,9 +2366,8 @@
         var result = response.getReturnValue();
         if (callback) callback(result);
       } else {
-        //component.set('v.errorMessage', 'AWS url/token error.');
-        this.error("AWS url/token error.");
-        //this.showErrorToast01(component);
+        component.set("v.errorMessage", "AWS url/token error.");
+        this.showErrorToast01(component);
         component.set("v.login", false);
       }
     });
@@ -3032,15 +2393,13 @@
       })
       .catch((error) => {
         console.log("AWS search error = " + JSON.stringify(error));
-        // component.set('v.errorMessage', 'AWS search error.');
-        this.error("AWS search error.");
-        //this.showErrorToast01(component);
+        component.set("v.errorMessage", "AWS search error.");
+        this.showErrorToast01(component);
         component.set("v.login", false);
       });
   },
   saveRecords: function (component, event, helper) {
-    //component.set('v.login', true);
-    component.set("v.modal_import_spinner", true);
+    component.set("v.login", true);
     //fy 瀵煎叆 202200506 start
     var action1 = component.get("c.processDataAWSId");
     action1.setParams({
@@ -3049,12 +2408,13 @@
     action1.setCallback(this, function (response) {
       var state = response.getState();
       if (state === "SUCCESS") {
+        debugger;
         var ress = response.getReturnValue();
         if (ress) {
           var valur = ress.split("error1");
           if (valur.length <= 1) {
             var res = JSON.parse(response.getReturnValue());
-
+            debugger;
             var dataArr = new Array();
             var dataMap = new Map();
             res.forEach((item) => {
@@ -3064,7 +2424,7 @@
                 dataMap.set(item.AWS_Data_Id__c, item.AWS_Data_Id__c);
               }
             });
-
+            debugger;
             let obj = Object.create(null);
             obj["dataIds"] = dataArr;
             var payload = JSON.stringify(obj);
@@ -3074,19 +2434,14 @@
               (result) => {
                 var token = result.token;
                 var searchUrl = result.searchUrl;
-                console.log("token = " + token);
-                console.log("searchUrl = " + searchUrl);
-                console.log("payload = " + payload);
                 this.search_core(
                   token,
                   searchUrl,
                   payload,
                   (result) => {
-                    console.log("result = " + JSON.stringify(result));
                     if (result.status == "0") {
                       if (result.object != null && result.object.length != 0) {
-                        //component.set('v.login', true);
-                        component.set("v.modal_import_spinner", true);
+                        component.set("v.login", true);
                         this.saveRecordsEditFile(
                           component,
                           dataMap,
@@ -3094,18 +2449,17 @@
                           helper
                         );
                       } else {
-                        //component.set('v.errorMessage', 'AWS 鏌ヨ鏁版嵁涓虹┖ ');
-                        this.error("AWS 鏌ヨ鏁版嵁涓虹┖ ");
-                        //this.showErrorToast01(component);
-                        //component.set('v.login', false);
-                        component.set("v.modal_import_spinner", false);
+                        component.set("v.errorMessage", "AWS search status ");
+                        this.showErrorToast01(component);
+                        component.set("v.login", false);
                       }
                     } else {
-                      //component.set('v.errorMessage', 'AWS search status : ' + result.status);
-                      this.error("AWS search status : " + result.status);
-                      //this.showErrorToast01(component);
-                      //component.set('v.login', false);
-                      component.set("v.modal_import_spinner", false);
+                      component.set(
+                        "v.errorMessage",
+                        "AWS search status : " + result.status
+                      );
+                      this.showErrorToast01(component);
+                      component.set("v.login", false);
                     }
                   },
                   component
@@ -3113,11 +2467,12 @@
               }
             );
           } else {
-            //component.set('v.errorMessage', valur[1] + '\n' + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶");
-            this.error(valur[1] + "\n" + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶");
-            //this.showErrorToast01(component);
-            //component.set('v.login', false);
-            component.set("v.modal_import_spinner", false);
+            component.set(
+              "v.errorMessage",
+              valur[1] + "\n" + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶"
+            );
+            this.showErrorToast01(component);
+            component.set("v.login", false);
           }
         }
       }
@@ -3176,10 +2531,8 @@
   saveRecordsEditFile: function (component, dataMap, searchData, helper) {
     var searchDataMap = new Map();
     for (var i = 0; i < searchData.length; i++) {
-      if (searchData[i].name != null) {
-        var sd = searchData[i];
-        searchDataMap.set(sd.name.replace(" ", ""), sd.dataId);
-      }
+      var sd = searchData[i];
+      searchDataMap.set(sd.name.replace(" ", ""), sd.dataId);
     }
     console.log("searchDataMap=" + searchDataMap);
     var error = "";
@@ -3207,6 +2560,7 @@
                 var nameDataId = searchDataMap.get(fileName.replace(" ", ""));
                 if (dataMap.get(nameDataId)) {
                   filelist[5] = dataMap.get(nameDataId); //zhj 鏂版柟妗堟敼閫� filelist[5]涓嶅啀瀛樼殑nameEncrpt 2022-12-21
+                  console.log("filelist[5] = " + filelist[5]);
                 } else {
                   error += "error1 绗�" + i + "琛屾暟鎹嫓璁夸汉SF涓嶅瓨鍦�";
                 }
@@ -3249,116 +2603,16 @@
     }
 
     if (error != "") {
-      console.log("zhj error = " + error);
-      let errorArray = error.split("error1");
-      let errorDatas = [];
-      let errorDataRow = [];
-
-      var fileContentData = component.get("v.fileContentData").split("\n");
-      console.log("fileContentData = " + JSON.stringify(fileContentData));
-      console.log("errorArray = " + JSON.stringify(errorArray));
-      for (var i in errorArray) {
-        // if (errorArray[i] != '') {
-        //     let errorData = {}
-        //     errorData.errorRow = errorArray[i].trim().substring(1, 2);
-        //     errorData.errorInfo = errorArray[i].trim().substring(5);
-        //     errorDatas.push(errorData);
-        // }
-        if (errorArray[i] != "") {
-          let errorData = {};
-          let index = errorDataRow.indexOf(
-            errorArray[i].trim().substring(1, 2)
-          );
-          if (index == -1) {
-            errorData.errorRow = errorArray[i].trim().substring(1, 2);
-            errorDataRow.push(errorData.errorRow);
-            errorData.errorInfo = errorArray[i].trim().substring(5);
-            if (errorData.errorInfo == "鎷滆浜篈WS涓嶅瓨鍦�") {
-              errorData.errorInfo =
-                "鎷滆浜� " +
-                fileContentData[errorData.errorRow].split(",")[5] +
-                "涓嶅瓨鍦�";
-            }
-            errorDatas.push(errorData);
-          } else {
-            if (errorArray[i].trim().substring(5) == "鎷滆浜篈WS涓嶅瓨鍦�") {
-              errorData[index].errorInfo =
-                "; " +
-                "鎷滆浜� " +
-                fileContentData[errorDatas[index].errorRow].split(",")[5] +
-                "涓嶅瓨鍦�";
-            } else {
-              errorDatas[index].errorInfo +=
-                "; " + errorArray[i].trim().substring(5);
-            }
-          }
-        }
-      }
-
-      var fileContentData = component.get("v.fileContentData").split("\n");
-      console.log("fileContentData = " + JSON.stringify(fileContentData));
-      let errorColumns = [
-        {
-          label: "閿欒琛�",
-          fieldName: "errorRow",
-          type: "text",
-          hideDefaultActions: true,
-          initialWidth: 100
-        },
-        {
-          label: "閿欒淇℃伅",
-          fieldName: "errorInfo",
-          type: "text",
-          hideDefaultActions: true,
-          initialWidth: 300,
-          wrapText: true
-        }
-      ];
-      for (var i = 0; i < fileContentData[0].split(",").length - 1; i++) {
-        let initialWidth = 180;
-        if (
-          fileContentData[0].split(",")[i] == "浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺" ||
-          fileContentData[0].split(",")[i] == "浣跨敤浜у搧1(浜у搧鍨嬪彿)"
-        ) {
-          initialWidth = 250;
-        }
-        errorColumns.push({
-          label: fileContentData[0].split(",")[i],
-          fieldName: "field" + i,
-          type: "text",
-          hideDefaultActions: true,
-          wrapText: true,
-          initialWidth: initialWidth
-        });
-      }
-
-      for (var i = 0; i < errorDatas.length; i++) {
-        let data = fileContentData[errorDatas[i].errorRow];
-        console.log("data = " + JSON.stringify(data));
-        if (data) {
-          for (var j = 0; j < data.split(",").length; j++) {
-            let label = "field" + j;
-            errorDatas[i][label] = data.split(",")[j];
-          }
-        }
-      }
-      console.log("errorDatas =" + JSON.stringify(errorDatas));
-      component.set("v.errorColumns", errorColumns);
-      component.set("v.errorData", errorDatas);
-      component.set("v.showErrorInfo", true);
-
-      console.log("error = " + error);
-      //component.set('v.errorMessage', error);
-      this.error(error);
-      //this.showErrorToast01(component);
+      component.set("v.errorMessage", error);
+      this.showErrorToast01(component);
       console.log("error=" + error);
-      //component.set('v.login', false);
-      component.set("v.modal_import_spinner", false);
+      component.set("v.login", false);
       return;
     }
 
     console.log("fileStr=" + fileStr);
     $A.getCallback(function () {
+      debugger;
       helper.ImportMethod(component, fileStr, helper);
     })();
   },
@@ -3379,124 +2633,32 @@
         if (res != "success") {
           var ress = res.split("=");
           console.log(ress);
-          let errorDatas = [];
-          let errorDataRow = [];
-          var fileContentData = component.get("v.fileContentData").split("\n");
-          console.log(
-            "fileContentData[1].split(,)[5] = " +
-              fileContentData[1].split(",")[5]
-          );
-
           for (var i = 0; i < ress.length; i++) {
             res1 += ress[i].substr(7) + "\n";
-            if (ress[i] != "") {
-              let errorData = {};
-              let index = errorDataRow.indexOf(
-                ress[i].substr(7).substring(1, 2)
-              );
-              if (index == -1) {
-                errorData.errorRow = ress[i].substr(7).substring(1, 2);
-                errorDataRow.push(errorData.errorRow);
-                errorData.errorInfo = ress[i].substr(7).substring(5);
-                if (errorData.errorInfo == "鎷滆浜轰笉瀛樺湪") {
-                  console.log("errorData.errorRow = " + errorData.errorRow);
-                  errorData.errorInfo =
-                    "鎷滆浜� " +
-                    fileContentData[errorData.errorRow].split(",")[5] +
-                    "涓嶅瓨鍦�";
-                }
-                errorDatas.push(errorData);
-              } else {
-                if (ress[i].substr(7).substring(5) == "鎷滆浜轰笉瀛樺湪") {
-                  errorDatas[index].errorInfo +=
-                    "; " +
-                    "鎷滆浜� " +
-                    fileContentData[errorDatas[index].errorRow].split(",")[5] +
-                    "涓嶅瓨鍦�";
-                } else {
-                  errorDatas[index].errorInfo +=
-                    "; " + ress[i].substr(7).substring(5);
-                }
-              }
-            }
           }
-          var fileContentData = component.get("v.fileContentData").split("\n");
-          let errorColumns = [
-            {
-              label: "閿欒琛�",
-              fieldName: "errorRow",
-              type: "text",
-              hideDefaultActions: true,
-              initialWidth: 100
-            },
-            {
-              label: "閿欒淇℃伅",
-              fieldName: "errorInfo",
-              type: "text",
-              hideDefaultActions: true,
-              initialWidth: 300,
-              wrapText: true
-            }
-          ];
-          for (var i = 0; i < fileContentData[0].split(",").length - 1; i++) {
-            let initialWidth = 180;
-            if (
-              fileContentData[0].split(",")[i] == "浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺" ||
-              fileContentData[0].split(",")[i] == "浣跨敤浜у搧1(浜у搧鍨嬪彿)"
-            ) {
-              initialWidth = 250;
-            }
-            errorColumns.push({
-              label: fileContentData[0].split(",")[i],
-              fieldName: "field" + i,
-              type: "text",
-              hideDefaultActions: true,
-              wrapText: true,
-              initialWidth: initialWidth
-            });
-          }
-
-          for (var i = 0; i < errorDatas.length; i++) {
-            let data = fileContentData[errorDatas[i].errorRow];
-            console.log("data = " + JSON.stringify(data));
-            for (var j = 0; j < data.split(",").length; j++) {
-              let label = "field" + j;
-              errorDatas[i][label] = data.split(",")[j];
-            }
-          }
-          component.set("v.errorColumns", errorColumns);
-          component.set("v.errorData", errorDatas);
-          component.set("v.showErrorInfo", true);
-
           console.log("==" + res1);
-          //component.set('v.errorMessage', res1 + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶");
-          this.error(res1 + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶");
-          //this.showErrorToast01(component);
-          //component.set('v.login', false);
-          component.set("v.modal_import_spinner", false);
+          component.set("v.errorMessage", res1 + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶");
+          this.showErrorToast01(component);
+          component.set("v.login", false);
         } else {
           component.set("v.successMessage", "瀵煎叆鎴愬姛");
           this.showSuccessToast01(component);
           component.set("v.showMain", true);
-          //component.set('v.login', false);
-          component.set("v.modal_import_spinner", false);
+          component.set("v.login", false);
           this.doinit(component, event, helper);
         }
       } else if (state === "INCOMPLETE") {
-        //component.set('v.login', false);
-        component.set("v.modal_import_spinner", false);
+        component.set("v.login", false);
       } else if (state === "ERROR") {
         var errors = response.getError();
         if (errors) {
           if (errors[0] && errors[0].message) {
             console.log("Error message: " + errors[0].message);
-            //component.set('v.login', false);
-            component.set("v.modal_import_spinner", false);
+            component.set("v.login", false);
           }
         } else {
           console.log("Unknown error");
-          //component.set('v.login', false);
-          component.set("v.modal_import_spinner", false);
+          component.set("v.login", false);
         }
       }
     });
@@ -3861,9 +3023,8 @@
           component.set("v.doctor_list", res);
           component.set("v.login", false);
         } else {
-          //component.set('v.errorMessage', 'newlyBuild failed.');
-          this.error("newlyBuild failed.");
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", "newlyBuild failed.");
+          this.showErrorToast(component);
           component.set("v.login", false);
         }
       });
@@ -3878,14 +3039,18 @@
         if (sc.replace(/\D/gi, "")) {
           component.set("v.select_ConsumptionOfConsumables", sc);
         } else {
-          //component.set('v.errorMessage', '浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺蹇呴』杈撳叆鏁板瓧!');
-          this.error("浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺蹇呴』杈撳叆鏁板瓧!");
-          //this.showErrorToast(component);
+          component.set(
+            "v.errorMessage",
+            "浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺蹇呴』杈撳叆鏁板瓧!"
+          );
+          this.showErrorToast(component);
         }
       } else {
-        //component.set('v.errorMessage', '浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺鏈�澶氳緭鍏�14浣嶆暟瀛�!');
-        this.error("浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺鏈�澶氳緭鍏�14浣嶆暟瀛�!");
-        //this.showErrorToast(component);
+        component.set(
+          "v.errorMessage",
+          "浜у搧1鍚岀被鑰楁潗绉戝鏈堜娇鐢ㄩ噺鏈�澶氳緭鍏�14浣嶆暟瀛�!"
+        );
+        this.showErrorToast(component);
       }
     }
   },
@@ -3897,19 +3062,18 @@
         if (sc.replace(/\D/gi, "")) {
           component.set("v.select_warlocksNumber", sc);
         } else {
-          //component.set('v.errorMessage', '浜у搧鐢ㄩ噺蹇呴』杈撳叆鏁板瓧!');
-          this.error("浜у搧鐢ㄩ噺蹇呴』杈撳叆鏁板瓧!");
-          //this.showErrorToast(component);
+          component.set("v.errorMessage", "浜у搧鐢ㄩ噺蹇呴』杈撳叆鏁板瓧!");
+          this.showErrorToast(component);
         }
       } else {
-        //component.set('v.errorMessage', '浜у搧鐢ㄩ噺鏈�澶氳緭鍏�14浣嶆暟瀛�!');
-        this.error("浜у搧鐢ㄩ噺鏈�澶氳緭鍏�14浣嶆暟瀛�!");
-        //this.showErrorToast(component);
+        component.set("v.errorMessage", "浜у搧鐢ㄩ噺鏈�澶氳緭鍏�14浣嶆暟瀛�!");
+        this.showErrorToast(component);
       }
     }
   },
   //宸ヤ綔浼氳褰�
   selectPurposeType: function (component, event, helper) {
+    debugger;
     var doctor_value = component.find("select_purpose_type").get("v.value");
     // alert(doctor_value);
     if (doctor_value != "绉戝浼�") {
@@ -3918,7 +3082,7 @@
       component.find("new_con").set("v.disabled", true);
     }
     if (doctor_value != "") {
-      this.set_doctor_list_edit(component);
+      this.set_doctor_list(component);
       var action = component.get("c.selectPurposeTypes");
       action.setParams({
         doctor_value: doctor_value
@@ -3939,6 +3103,7 @@
   },
 
   selectProductClassification: function (component, event, helper) {
+    debugger;
     var select_ProductClassification = component
       .find("select_ProductClassification")
       .get("v.value");
@@ -3966,7 +3131,7 @@
     var select_ProductCcategory = component
       .find("select_ProductCcategory")
       .get("v.value");
-
+    debugger;
     if (select_ProductCcategory != "") {
       var result = component.find("result");
       var UserProType = component.get("v.UserProType");
@@ -4014,6 +3179,7 @@
         $A.util.addClass(result, "disp_none");
       }
     } else {
+      debugger;
       component.find("select_productCategories").set("v.value", "");
       var result = component.find("result");
       $A.util.addClass(result, "disp_none");
@@ -4035,86 +3201,6 @@
     }
 
     $A.enqueueAction(action);
-  },
-  //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
-
-  //zhj 瀵煎嚭閿欒淇℃伅 2023-05-16 start
-  exportErrorInfoHelper: function (component) {
-    var errorData = component.get("v.errorData");
-    var errorColumns = component.get("v.errorColumns");
-
-    var datas = [];
-    let errorColumnsArray = [];
-    for (var i in errorColumns) {
-      errorColumnsArray.push(errorColumns[i].label);
-    }
-    datas.push(errorColumnsArray);
-    //datas.push(errorColumns);
-
-    for (var i in errorData) {
-      let data = [];
-      data.push(errorData[i].errorRow);
-      data.push(errorData[i].errorInfo);
-      for (var j = 0; j < Object.keys(errorData[i]).length - 2; j++) {
-        data.push(errorData[i]["field" + j]);
-      }
-      datas.push(data);
-    }
-
-    console.log("datas = " + JSON.stringify(datas));
-    var csv = this.convertToCSV(component, datas);
-    console.log("csv = " + JSON.stringify(csv));
-    this.downloadCSV(component, csv);
-  },
-
-  convertToCSV: function (component, data) {
-    console.log("enter convertToCSV");
-    console.log("data = " + data);
-    var csv = "";
-    for (var i = 0; i < data.length; i++) {
-      var row = data[i];
-      console.log("row = " + JSON.stringify(row));
-      for (var j = 0; j < row.length; j++) {
-        var val = "";
-        val = row[j] === null ? "" : row[j].toString();
-        console.log("val = " + val);
-        if (
-          val.indexOf(",") !== -1 ||
-          val.indexOf('"') !== -1 ||
-          val.indexOf("\n") !== -1
-        ) {
-          //val = '"' + val.replace(/"/g,'""') + '"';
-        }
-        if (j > 0) {
-          csv += ",";
-        }
-        csv += val;
-      }
-      csv += "\n";
-    }
-    return csv;
-  },
-
-  downloadCSV: function (component, csv) {
-    var link = document.createElement("a");
-    var bom = "\uFEFF";
-    link.href = "data:text/csv;charset=utf-8," + encodeURIComponent(bom + csv);
-    link.download = "data.csv";
-    document.body.appendChild(link);
-    link.click();
-    document.body.removeChild(link);
-  },
-  error: function (message) {
-    // $('toastMessage.forceToastManager').css('white-space', 'pre-wrap');
-    var toastEvent = $A.get("e.force:showToast");
-
-    toastEvent.setParams({
-      title: "閿欒!",
-      message: message,
-      type: "error"
-      //"duration" : "sticky"
-    });
-    toastEvent.fire();
   }
-  //zhj 瀵煎嚭閿欒淇℃伅 2023-05-16 end
+  //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
 });
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp b/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
index 831f94a..2eef9b1 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
@@ -36,7 +36,6 @@
   <aura:attribute name="doclist" type="List" />
   <aura:attribute name="docmap" type="Map" />
   <aura:attribute name="login" type="Boolean" default="false" />
-  <aura:attribute name="loginEdit" type="Boolean" default="false" />
   <aura:attribute name="loadOpp" type="Boolean" default="false" />
   <aura:attribute name="reportPageData" type="Map" />
   <aura:attribute name="selectbody" type="String" />
@@ -122,35 +121,22 @@
   <aura:attribute name="contactawsurl" type="Map" />
   <aura:attribute name="allselectlistAgencyPerson" type="Map" />
   <!-- PIPL update Yin Mingjie 21/02/2022 end -->
-
-  <!-- start DTT-zhj 澧炲姞閿欒淇℃伅table 2023-05-16-->
-  <aura:attribute name="errorData" type="Object" />
-  <aura:attribute name="errorColumns" type="List" />
-  <!-- show Error information -->
-  <aura:attribute name="showErrorInfo" type="Boolean" default="false" />
-  <!-- end DTT-zhj 澧炲姞閿欒淇℃伅table 2023-05-16-->
-
   <!-- 鎵归噺娣诲姞鍛ㄦ姤 end-->
   <ltng:require scripts="{! $Resource.AWSService+'/AWSService.js' }" />
   <ltng:require scripts="{! $Resource.jquery183minjs }" />
 
   <!--銉兗銉変腑...-->
   <aura:renderIf isTrue="{!v.login}">
-    <aura:renderIf isTrue="{!!v.loginEdit}">
-      <!-- add by Deloitte-Link 2023-6-19 -->
-      <div class="weeklyReportSpinner">
-        <div class="slds-spinner_container">
-          <div
-            class="slds-spinner--brand slds-spinner slds-spinner--medium"
-            role="alert"
-          >
-            <span id="aa" class="slds-assistive-text">Loading</span>
-            <div class="slds-spinner__dot-a"></div>
-            <div class="slds-spinner__dot-b"></div>
-          </div>
-        </div>
+    <div class="slds-spinner_container height100vh">
+      <div
+        class="slds-spinner--brand slds-spinner slds-spinner--medium"
+        role="alert"
+      >
+        <span id="aa" class="slds-assistive-text">Loading</span>
+        <div class="slds-spinner__dot-a"></div>
+        <div class="slds-spinner__dot-b"></div>
       </div>
-    </aura:renderIf>
+    </div>
   </aura:renderIf>
 
   <div aura:id="report" id="report" class="contents_wrapper">
@@ -186,7 +172,7 @@
         />
       </div>
       <div
-        class="tr slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-12 slds-large-size--1-of-12"
+        class="tr slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
       >
         <ui:button
           aura:id="new_button"
@@ -196,7 +182,7 @@
         />
       </div>
       <div
-        class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"
+        class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
       >
         <ui:button
           aura:id="copy_button"
@@ -227,60 +213,34 @@
       >
         <thead>
           <tr class="slds-line-height--reset">
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 250px; font-size: 13px"
-            >
-              <span class="slds-truncate" title="Name">鍛ㄦ姤缂栧彿</span>
-            </th>
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 100px; font-size: 13px"
-            >
+            <th class="table_header slds-text-title--caps"></th>
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.Person_In_Charge2__c}</span
               >
             </th>
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 250px; font-size: 13px"
-            >
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name">鍖婚櫌</span>
             </th>
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 100px; font-size: 13px"
-            >
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.Department_Cateogy__c}</span
               >
             </th>
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 100px; font-size: 13px"
-            >
+            <th class="table_header slds-text-title--caps">
               <!-- PIPL update Yin Mingjie 21/02/2022 start
                             <span class="slds-truncate" title="Name">{!v.fieldsmap.doctor2__r}</span>
                             PIPL update Yin Mingjie 21/02/2022 end-->
-              <span
-                class="slds-truncate"
-                title="Name"
-                style="width: 100px; font-size: 13px"
+              <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.Agency_Contact__c}</span
               >
             </th>
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 100px; font-size: 13px"
-            >
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.visitor_title__c}</span
               >
             </th>
-            <th
-              class="table_header slds-text-title--caps"
-              style="width: 100px; font-size: 13px"
-            >
+            <th class="table_header slds-text-title--caps">
               <span class="slds-truncate" title="Name"
                 >{!v.fieldsmap.Purpose_Type__c}</span
               >
@@ -378,13 +338,6 @@
     aria-labelledby="headerTarget"
   >
     <div class="slds-modal__container">
-      <aura:renderIf isTrue="{!v.loginEdit}">
-        <lightning:spinner
-          alternativeText="Loading"
-          size="medium"
-          style="width: 100%; height: 80%; top: 50px"
-        />
-      </aura:renderIf>
       <div class="slds-modal__header">
         <h4 id="headerTarget" class="slds-float--left"></h4>
         <h2 id="headerTarget" class="slds-text-heading--medium">
@@ -429,27 +382,6 @@
                 onclick="{!c.cancel}"
               />
             </div>
-            <!-- start DTT-zhj 澧炲姞閿欒淇℃伅table 2023-05-16-->
-            <aura:if isTrue="{!v.showErrorInfo}">
-              <div class="slds-p-around--large slds-align--absolute-center">
-                <lightning:button
-                  label="瀵煎嚭閿欒淇℃伅"
-                  variant="brand"
-                  onclick="{!c.exportErrorInfo}"
-                />
-              </div>
-              <div class="slds-p-around--large slds-align--absolute-center">
-                <div style="height: 300px; overflow-x: scroll">
-                  <lightning:datatable
-                    keyField="id"
-                    data="{! v.errorData }"
-                    columns="{! v.errorColumns }"
-                    hideCheckboxColumn="true"
-                  />
-                </div>
-              </div>
-            </aura:if>
-            <!-- start DTT-zhj 澧炲姞閿欒淇℃伅table 2023-05-16-->
           </aura:set>
         </aura:if>
       </div>
@@ -572,15 +504,8 @@
     aria-labelledby="headerTarget"
   >
     <div class="slds-modal__container">
-      <aura:renderIf isTrue="{!v.loginEdit}">
-        <lightning:spinner
-          alternativeText="Loading"
-          size="medium"
-          style="width: 100%; height: 80%; top: 50px"
-        />
-      </aura:renderIf>
       <div class="slds-modal__header">
-        <h4 id="headerTarget" class="slds-float--left"></h4>
+        <h4 id="headerTarget" class="slds-float--left">{!v.dialog_type}</h4>
         <h2 id="headerTarget" class="slds-text-heading--medium">
           鍛ㄦ姤({!v.selected_date}&nbsp;{!v.selected_agency_person})
         </h2>
@@ -595,31 +520,26 @@
         <div class="slds-box slds-theme--shade">
           <div class="slds-grid slds-wrap slds-grid--pull-padded">
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               娲诲姩鏃�
               <!-- <ui:inputSelect aura:id="select_opportunity" class="slds-select"/> -->
-              <!-- <force:inputField value="{!v.data.Report_Date__c}" aura:id="input-report-date"/> -->
-              <lightning:input
-                type="date"
+              <force:inputField
                 value="{!v.data.Report_Date__c}"
                 aura:id="input-report-date"
-                variant="label-hidden"
               />
             </div>
             <!-- 鍖婚櫌 -->
             <div
               aura:id="hospital_list"
-              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5 marginTop"
+              class="slds-form-element slds-lookup slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-5"
               data-select="single"
             >
-              <!-- <ui:inputText aura:id="hospital_input_text" label="鍖婚櫌" class="field" value="{!v.hospital}" updateOn="keyup"/> -->
-              鍖婚櫌
-              <lightning:input
+              <ui:inputText
                 aura:id="hospital_input_text"
+                label="鍖婚櫌"
                 class="field"
                 value="{!v.hospital}"
-                variant="label-hidden"
                 updateOn="keyup"
               />
               <div class="slds-lookup__menu" id="lookup-66">
@@ -650,7 +570,7 @@
 
             <!-- 绉戝鍒嗙被 -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-8 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-8"
             >
               {!v.fieldsmap.Department_Cateogy__c}
               <ui:inputSelect
@@ -662,7 +582,7 @@
 
             <!-- 鍏堢敓 -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-8 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-8"
             >
               {!v.fieldsmap.doctor2__c}
               <ui:inputSelect
@@ -673,7 +593,7 @@
             </div>
 
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-12 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-12"
             >
               <br />
               <ui:button
@@ -687,14 +607,14 @@
 
             <!-- 鑱屼綅 -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-8 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-8"
             >
               {!v.fieldsmap.visitor_title__c}
               <div>{!v.doctor_title}</div>
             </div>
             <!-- 娲诲姩鍖哄垎 -->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.Purpose_Type__c}
               <ui:inputSelect
@@ -706,7 +626,7 @@
             <!-- 璇环 -->
             <div
               aura:id="input-opportunity-opp"
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--4-of-12 slds-large-size--4-of-12 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--4-of-12 slds-large-size--4-of-12"
             >
               {!v.fieldsmap.Opportunity__c}
               <!-- <ui:inputSelect aura:id="select_opportunity" class="slds-select"/> -->
@@ -732,11 +652,11 @@
             </div>
             <div
               aura:id="input-opportunity-blank"
-              class="lds-p-horizontal--small slds-size--1-of-1 slds-medium-size--8-of-12 slds-large-size--8-of-12 marginTop"
+              class="lds-p-horizontal--small slds-size--1-of-1 slds-medium-size--8-of-12 slds-large-size--8-of-12"
             ></div>
             <div
               aura:id="input-opportunity-stage"
-              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12 marginTop"
+              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
             >
               {!v.fieldsmap.StageName__c}
               <!-- <ui:inputSelect aura:id="select_opportunity" class="slds-select"/> -->
@@ -745,7 +665,7 @@
             </div>
             <div
               aura:id="input-opportunity-amount1"
-              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12 marginTop"
+              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
             >
               {!v.fieldsmap.Amount__c}
               <!-- <ui:inputSelect aura:id="select_opportunity" class="slds-select"/> -->
@@ -753,7 +673,7 @@
             </div>
             <div
               aura:id="input-opportunity-amount2"
-              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12 marginTop"
+              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
             >
               {!v.fieldsmap.OCMSale_Price__c}
               <!-- <ui:inputSelect aura:id="select_opportunity" class="slds-select"/> -->
@@ -764,7 +684,7 @@
             </div>
             <div
               aura:id="input-opportunity-date"
-              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12 marginTop"
+              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--2-of-12 slds-large-size--2-of-12"
             >
               {!v.fieldsmap.Close_Forecasted_Date__c}
               <!-- <ui:inputSelect aura:id="select_opportunity" class="slds-select"/> -->
@@ -776,7 +696,7 @@
             <!-- 瑁藉搧鍒嗛 -->
             <div
               aura:id="product_category_select1"
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"
             >
               {!v.fieldsmap.Product_Category1__c}
               <!-- <force:inputField value="{!v.data.Product_Category1__c}" aura:id="input-product-category1"/> -->
@@ -788,7 +708,7 @@
             </div>
             <div
               aura:id="product_category_select2"
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"
             >
               {!v.fieldsmap.Product_Category2__c}
               <!-- <force:inputField value="{!v.data.Product_Category2__c}" aura:id="input-product-category2"/> -->
@@ -800,7 +720,7 @@
             </div>
             <div
               aura:id="product_category_select3"
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"
             >
               {!v.fieldsmap.Product_Category3__c}
               <!-- <force:inputField value="{!v.data.Product_Category3__c}" aura:id="input-product-category3"/> -->
@@ -813,7 +733,7 @@
             <!--SWAG-CBX68C fy 銆愬鎵樸�慏AMS绯荤粺鍛ㄦ姤妯″潡鍐呭闇�姹傚鍔� start-->
             <!-- 鏀彺闇�姹� change="{!c.SupportNeeds__c}"-->
             <div
-              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6 marginTop"
+              class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"
             >
               {!v.fieldsmap.SupportNeeds__c}
               <ui:inputSelect aura:id="SupportNeeds__c" class="slds-select" />
@@ -821,7 +741,7 @@
             <!--SWAG-CBX68C fy 銆愬鎵樸�慏AMS绯荤粺鍛ㄦ姤妯″潡鍐呭闇�姹傚鍔� end-->
             <div
               aura:id="result"
-              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12 marginTop"
+              class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"
             >
               {!v.fieldsmap.Result__c}
               <ui:inputSelect aura:id="select_result" class="slds-select" />
@@ -1004,13 +924,6 @@
     class="disp_none slds-modal slds-fade-in-open"
   >
     <div class="slds-modal__container">
-      <aura:renderIf isTrue="{!v.loginEdit}">
-        <lightning:spinner
-          alternativeText="Loading"
-          size="medium"
-          style="width: 100%; height: 80%; top: 50px"
-        />
-      </aura:renderIf>
       <div class="slds-modal__header">
         <h2 id="headertest" class="slds-text-heading--medium">鏂板缓.瀹㈡埛浜哄憳</h2>
       </div>
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReport.css b/force-app/main/default/aura/WeeklyReport/WeeklyReport.css
index 8b2291b..642ebdb 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReport.css
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReport.css
@@ -4,10 +4,9 @@
 .THIS.height100vh {
   height: 100vh;
 }
-/* .THIS.contents_wrapper {
-    padding-top: 50px;
-    width: 105%;
-} */
+.THIS.contents_wrapper {
+  padding-top: 50px;
+}
 .THIS .mt5 {
   margin-top: 5px;
 }
@@ -24,7 +23,7 @@
   margin: 0.5em 0;
 }
 .THIS.report_list_area {
-  margin: 40px 0 20px 0px;
+  margin: 40px 0 20px 100px;
   height: 60vh;
   overflow-y: scroll;
 }
@@ -141,30 +140,3 @@
 .THIS tr:hover .encrypt {
   display: none;
 }
-
-/* add by Deloitte-Link 2023-6-19 start*/
-.THIS .weeklyReportSpinner {
-  top: 100px;
-}
-
-.THIS .weeklyReportSpinnerEdit {
-  top: 50px;
-}
-
-.THIS .slds-spinner_container {
-  position: absolute;
-  top: 100px;
-}
-
-.THIS .slds-spinner_containerEdit {
-  position: absolute;
-  top: 50px;
-}
-
-.THIS .marginTop {
-  margin-top: 10px;
-}
-.THIS .custom-input .uiInput {
-  height: 2rem;
-}
-/* add by Deloitte-Link 2023-6-19 end*/
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js b/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
index 02ef7bc..010e828 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
@@ -1,12 +1,11 @@
 ({
   doInit: function (component, event, helper) {
-    console.log("zhj 鏂版柟妗坵eeklyReport");
+    console.log("zhj 鏂版柟妗�");
     if (window.location.href.endsWith("weekly-report")) {
       helper.doinit(component, event, helper);
     } else {
       helper.hideCmp(component, event, helper);
     }
-    component.set("v.showErrorInfo", false);
   },
 
   createAopp: function (component, event, helper) {
@@ -16,12 +15,10 @@
       recordTypeId: "012100000006KW7"
     });
     addRecordEvent.fire();
-    component.set("v.showErrorInfo", false);
   },
 
   new_report: function (component, event, helper) {
     component.find("save_button").set("v.label", "淇濆瓨骞舵柊寤�");
-    component.set("v.data.Report_Date__c", "");
     helper.new_report(component, event, helper);
   },
 
@@ -144,7 +141,7 @@
               var token = component.get("v.AWStoken");
               var newUrl = component.get("v.AWSinsert") + "V2";
 
-              component.set("v.loginEdit", true);
+              component.set("v.login", true);
               helper.insert_agencycontact(
                 component,
                 token,
@@ -285,12 +282,10 @@
     // var fileInput = component.find("file").getElement();
     // var file = fileInput.files[0];
     helper.readFile(component, helper, files[0]);
-    component.set("v.showErrorInfo", false);
   },
 
   processFileContent: function (component, event, helper) {
     helper.saveRecords(component, event, helper);
-    component.set("v.showErrorInfo", false);
   },
 
   cancel: function (component, event, helper) {
@@ -347,8 +342,5 @@
   close_export: function (component, event, helper) {
     component.set("v.showMain", true);
     helper.close_export(component);
-  },
-  exportErrorInfo: function (component, event, helper) {
-    helper.exportErrorInfoHelper(component);
   }
 });
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js b/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
index b31c0f9..a656549 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
@@ -96,11 +96,11 @@
             if (result.object != null) {
               this.to_contact_list(result, contactData, component);
             } else {
-              component.set("v.loginEdit", false);
+              component.set("v.login", false);
             }
           } else {
             this.error("AWS search status1 : " + result.status);
-            component.set("v.loginEdit", false);
+            component.set("v.login", false);
           }
         },
         component
@@ -127,7 +127,7 @@
     }
     component.find("select_agency_person").set("v.options", res);
     component.set("v.allselectlistAgencyPerson", res);
-    component.set("v.loginEdit", false);
+    component.set("v.login", false);
   },
 
   search_contact_url: function (component, sobject, callback) {
@@ -142,7 +142,7 @@
         if (callback) callback(result);
       } else {
         this.error("AWS url/token error.");
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       }
     });
     $A.enqueueAction(action);
@@ -339,152 +339,6 @@
     });
     $A.enqueueAction(action);
   },
-  get_reports_edit: function (component, event, helper, date_str, person_str) {
-    if (!date_str) {
-      return false;
-    }
-
-    date_str = this.get_date_string(date_str);
-
-    var action = component.get("c.getReports");
-    action.setParams({
-      date_str: date_str,
-      person_str: person_str
-    });
-
-    component.set("v.loginEdit", true);
-    action.setCallback(this, function (response) {
-      var state = response.getState();
-      if (state == "SUCCESS") {
-        var res = response.getReturnValue();
-        component.set("v.reports", res.reports);
-
-        // 20220222 PI鏀归�� by Bright--start
-        let dataIds = [];
-        let dataIds1 = [];
-        let mm = {};
-        let b = false;
-        let b1 = false;
-        for (const rep of res.reports) {
-          if (rep.doctor2__r && rep.doctor2__r.AWS_Data_Id__c) {
-            dataIds.push(rep.doctor2__r.AWS_Data_Id__c);
-          }
-
-          if (
-            rep.Person_In_Charge2__r &&
-            rep.Person_In_Charge2__r.AWS_Data_Id__c
-          ) {
-            dataIds1.push(rep.Person_In_Charge2__r.AWS_Data_Id__c);
-          }
-        }
-        let Foo = null;
-        Foo = function () {
-          if (b && b1) {
-            for (const rep of res.reports) {
-              if (
-                rep.doctor2__r &&
-                rep.doctor2__r.AWS_Data_Id__c &&
-                mm.hasOwnProperty(rep.doctor2__r.AWS_Data_Id__c)
-              ) {
-                rep.doctor2__r.awsdata = mm[rep.doctor2__r.AWS_Data_Id__c];
-              }
-              if (
-                rep.Person_In_Charge2__r &&
-                rep.Person_In_Charge2__r.AWS_Data_Id__c &&
-                mm.hasOwnProperty(rep.Person_In_Charge2__r.AWS_Data_Id__c)
-              ) {
-                rep.Person_In_Charge2__r.awsdata =
-                  mm[rep.Person_In_Charge2__r.AWS_Data_Id__c];
-              }
-            }
-
-            $A.getCallback(() => component.set("v.reports", res.reports))();
-          } else {
-            console.log("b=" + b + ",b1=" + b1 + ",continue");
-            setTimeout(Foo, 100);
-          }
-        };
-
-        if (dataIds.length > 0) {
-          let awsurl = component.get("v.awsurl");
-          helper.search_core(
-            awsurl.token,
-            awsurl.searchUrl,
-            JSON.stringify({
-              dataIds: dataIds
-            }),
-            (result) => {
-              if (result.status == "0") {
-                for (const m of result.object) {
-                  mm[m.dataId] = m;
-                }
-                b = true;
-                Foo();
-              } else {
-                //this.error('AWS search status2 : ' + result.status);
-                this.success("璇烽噸鏂板埛鏂伴〉闈㈣繘琛岃В瀵�");
-              }
-            },
-            component
-          );
-        } else {
-          b = true;
-        }
-
-        if (dataIds1.length > 0) {
-          let contactawsurl = component.get("v.contactawsurl");
-          helper.search_core(
-            contactawsurl.token,
-            contactawsurl.searchUrl,
-            JSON.stringify({
-              dataIds: dataIds1
-            }),
-            (result) => {
-              if (result.status == "0") {
-                for (const m of result.object) {
-                  mm[m.dataId] = m;
-                }
-                b1 = true;
-                Foo();
-              } else {
-                this.error("AWS search status3 : " + result.status);
-              }
-            },
-            component
-          );
-        } else {
-          b1 = true;
-        }
-        // 20220222 PI鏀归�� by Bright--end
-
-        component.set("v.report_count", res.reports.length);
-
-        // 鏇存柊淇濆瓨寰屻伄select_data鐢�
-        var report_id = component.get("v.update_select_report_data_id");
-
-        if (report_id != "") {
-          for (i = 0; i < res.reports.length; i++) {
-            if (res.reports[i]["Id"] == report_id) {
-              component.set("v.select_report_data", res.reports[i]);
-              break;
-            }
-          }
-          component.set("v.update_select_report_data_id", "");
-        }
-
-        if (res.reports.length > 0) {
-          component.set("v.list_message", "");
-        } else {
-          component.set("v.list_message", "no_data");
-        }
-        component.set("v.loginEdit", false);
-      } else {
-        this.error("get_reports failed.");
-        component.set("v.loginEdit", false);
-      }
-    });
-    $A.enqueueAction(action);
-  },
 
   select_date_change: function (component, event, helper) {
     this.get_reports(
@@ -550,7 +404,7 @@
       // OPEN
       $A.util.removeClass(modal_window, "disp_none");
       $A.util.removeClass(modal_bg, "disp_none");
-      component.set("v.loginEdit", true);
+
       if (
         component.get("v.mode") == "edit" ||
         component.get("v.mode") == "copy"
@@ -699,16 +553,12 @@
           }
 
           if (reportDate != null) {
-            console.log("reportDate = " + reportDate);
             component.set("v.data.Report_Date__c", reportDate);
           }
 
           component.set("v.edit_copy_select_report_id", "");
         }
       }
-      setTimeout(function () {
-        component.set("v.loginEdit", false);
-      }, 1000);
     } else {
       // CLOSE
 
@@ -934,7 +784,6 @@
   },
 
   edit_button: function (component, event, helper) {
-    component.set("v.login", true);
     this.allclear(component);
     component.set("v.loadOpp", true);
     var index = event.getSource().get("v.value");
@@ -1137,7 +986,7 @@
     }
 
     // 淇濆瓨鍑︾悊
-    component.set("v.loginEdit", true);
+    component.set("v.login", true);
     if (component.get("v.mode") == "edit") {
       var Agency_Report__c = component.get("v.select_report_data").Id;
       var action = component.get("c.editAgencyReport");
@@ -1191,7 +1040,7 @@
             .set("v.options", select_agency_list);
 
           component.set("v.update_select_report_data_id", report_id);
-          this.get_reports_edit(
+          this.get_reports(
             component,
             event,
             helper,
@@ -1200,7 +1049,7 @@
           );
 
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         } else {
           // var error = response.getError();
           // alert(JSON.stringify(error));
@@ -1213,7 +1062,7 @@
           // }
           this.error("save_report failed.");
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       });
       $A.enqueueAction(action);
@@ -1253,7 +1102,7 @@
           var report_id = response.getReturnValue();
           component.set("v.create_agency_report_id", report_id);
 
-          this.get_reports_edit(
+          this.get_reports(
             component,
             event,
             helper,
@@ -1297,20 +1146,20 @@
             } else {
               this.error("get_reports_now failed.");
               component.find("save_button").set("v.disabled", false);
-              component.set("v.loginEdit", false);
+              component.set("v.login", false);
             }
           });
           $A.enqueueAction(action2);
 
           this.allclear(component);
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         } else {
           var error = response.getError();
           // alert(JSON.stringify(error));
           this.error("saveAgencyReport failed.");
           component.find("save_button").set("v.disabled", false);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       });
       $A.enqueueAction(action);
@@ -1352,7 +1201,6 @@
     component.find("select_Product1").set("v.value", "");
     component.find("select_Product2").set("v.value", "");
     component.find("select_Product3").set("v.value", "");
-    console.log("reportDate = 绌�");
     component.set("v.data.Report_Date__c", "");
     component.set("v.oppdata.Close_Forecasted_Date__c", "");
     component.set("v.oppdata.Amount__c", "");
@@ -1676,7 +1524,7 @@
         component.set("v.AWStransactionURL", awsmap.transactionURL);
       } else {
         this.error("AWS url/token error.");
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       }
     });
     $A.enqueueAction(action);
@@ -1722,7 +1570,7 @@
           })();
         } else {
           console.log("AWS status error:" + result);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
           if (result.status == "129") {
             component
               .find("OppMessage")
@@ -1736,7 +1584,7 @@
       })
       .catch((error) => {
         console.log("AWS insert error:" + error);
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
         component.find("OppMessage").setError("AWS insert error.");
       });
   },
@@ -1771,14 +1619,14 @@
           this.to_confirm(component, token, confirmUrl, JSON.stringify(data));
         } else if (acMap.errormsg != "") {
           this.error(acMap.errormsg);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         } else {
           this.error("agency contact insert id error.");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       } else {
         this.error("agency contact insert error.");
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       }
     });
     $A.enqueueAction(action);
@@ -1809,12 +1657,12 @@
           this.set_doctor_list(component);
         } else {
           this.error("AWS confirm error.");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       })
       .catch((error) => {
         this.error("AWS confirm error.");
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       });
   },
   // PIPL update Yin Mingjie 21/02/2022 end
@@ -1822,7 +1670,7 @@
   set_doctor_list: function (component) {
     var hospital_id = component.get("v.hospitalLinkId");
     if (hospital_id) {
-      component.set("v.loginEdit", true);
+      component.set("v.login", true);
       var action = component.get("c.getDoctorList");
       action.setParams({
         hospital_id: hospital_id
@@ -1862,7 +1710,7 @@
           // PIPL update Yin Mingjie 21/02/2022 end
         } else {
           this.error("set_doctor_list failed.");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       });
       $A.enqueueAction(action);
@@ -1882,7 +1730,7 @@
       dataArr.push(key);
     }
     if (dataArr.length == 0) {
-      component.set("v.loginEdit", false);
+      component.set("v.login", false);
       this.warning("娌℃湁鎵惧埌绗﹀悎鏉′欢鐨勫鎴蜂汉鍛�");
       return;
     }
@@ -1908,7 +1756,7 @@
           this.to_doctor_list(result, retMap, component);
         } else {
           this.error("AWS search status4 : " + result.status);
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       },
       component
@@ -1945,13 +1793,13 @@
         return data.json();
       })
       .then((result) => {
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
         if (callback) callback(result);
       })
       .catch((error) => {
         console.log("error = " + JSON.stringify(error));
         this.error("AWS search error.");
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       });
   },
 
@@ -1996,7 +1844,7 @@
 
     component.set("v.default_select_doctor_id", "");
     component.set("v.doctor_list", res);
-    component.set("v.loginEdit", false);
+    component.set("v.login", false);
   },
   // PIPL update Yin Mingjie 21/02/2022 end
 
@@ -2083,7 +1931,7 @@
         agency_hospital_link_id: component.get("v.hospitalLinkId")
       });
 
-      component.set("v.loginEdit", true);
+      component.set("v.login", true);
       action.setCallback(this, function (response) {
         var state = response.getState();
         if (state == "SUCCESS") {
@@ -2120,7 +1968,7 @@
             // } else {
             //     component.find('input-opportunity').get("v.body")[0].set('v.selectedLabel', '');
             // }
-            component.set("v.loginEdit", false);
+            component.set("v.login", false);
             return false;
           }
           //SWAG-CKH5M8  銆愬鎵樸�戝懆鎶ュ叧鑱旇浠凤紝鍙�夋嫨璇环鑼冨洿璋冩暣 fy start
@@ -2181,10 +2029,10 @@
             );
           }
 
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         } else {
           this.error("selectOpportunityByIdAndHospitalLinkId failed.");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       });
       $A.enqueueAction(action);
@@ -2477,14 +2325,12 @@
   },
 
   saveRecords: function (component, event, helper) {
-    debugger;
-    component.set("v.loginEdit", true);
+    component.set("v.login", true);
     //fy 瀵煎叆 20220424 start
     var action1 = component.get("c.processDataAWSId");
     action1.setParams({
       fileData: component.get("v.fileContentData")
     });
-    debugger;
     action1.setCallback(this, function (response) {
       console.log("response = " + JSON.stringify(response));
       var state = response.getState();
@@ -2505,11 +2351,10 @@
                 dataMap.set(item.AWS_Data_Id__c, item.AWS_Data_Id__c); //zhj 鏂版柟妗堟敼閫� 2022-12-21
               }
             });
+            debugger;
             let obj = Object.create(null);
             obj["dataIds"] = dataArr;
             var payload = JSON.stringify(obj);
-            console.log("payload zhj = " + JSON.stringify(payload));
-
             this.search_contact_url(
               component,
               "Agency_Contact__c",
@@ -2530,7 +2375,7 @@
                         //     component.set('v.login',true);
                         //     this.ImportMethod(component,resultjson);
                         // }
-                        component.set("v.loginEdit", true);
+                        component.set("v.login", true);
                         this.saveRecordsEditFile(
                           component,
                           dataMap,
@@ -2538,12 +2383,12 @@
                           helper
                         );
                       } else {
-                        this.error("AWS 鏌ヨ鏁版嵁涓虹┖ ");
-                        component.set("v.loginEdit", false);
+                        this.error("AWS search status5 ");
+                        component.set("v.login", false);
                       }
                     } else {
                       this.error("AWS search status6 : " + result.status);
-                      component.set("v.loginEdit", false);
+                      component.set("v.login", false);
                     }
                   },
                   component
@@ -2618,11 +2463,7 @@
     // });
     // $A.enqueueAction(action);
   },
-  isNumber: function (str) {
-    return /^\d+$/.test(str);
-  },
   ImportMethod: function (component, fileStr) {
-    debugger;
     var actionss = component.get("c.processData");
     var selectDate = component.find("select_date").get("v.value");
     var fieldsList = ["Name", "Phone", "AccountNumber"]; //Please write your code dynamic
@@ -2645,112 +2486,32 @@
         if (res != "success") {
           var ress = res.split("=");
           console.log(ress);
-          let errorDatas = [];
-          let errorDataRow = [];
-          debugger;
-          var fileContentData = component.get("v.fileContentData").split("\n");
           for (var i = 0; i < ress.length; i++) {
             res1 += ress[i].substr(7) + "\n";
-            if (ress[i] != "") {
-              let errorData = {};
-              if (!this.isNumber(ress[i].substr(7).substring(1, 2))) {
-                continue;
-              }
-              let index = errorDataRow.indexOf(
-                ress[i].substr(7).substring(1, 2)
-              );
-              if (index == -1) {
-                errorData.errorRow = ress[i].substr(7).substring(1, 2);
-                errorDataRow.push(errorData.errorRow);
-                errorData.errorInfo = ress[i]
-                  .substr(7)
-                  .substring(5)
-                  .replace("=", "");
-                if (errorData.errorInfo == "鎷滆浜轰笉瀛樺湪") {
-                  console.log("errorData.errorRow = " + errorData.errorRow);
-                  errorData.errorInfo =
-                    "鎷滆浜� " +
-                    fileContentData[errorData.errorRow].split(",")[4] +
-                    "涓嶅瓨鍦�";
-                }
-                errorDatas.push(errorData);
-              } else {
-                if (ress[i].substr(7).substring(5) == "鎷滆浜轰笉瀛樺湪") {
-                  errorDatas[index].errorInfo +=
-                    "; " +
-                    "鎷滆浜� " +
-                    fileContentData[errorDatas[index].errorRow].split(",")[4] +
-                    "涓嶅瓨鍦�";
-                } else {
-                  errorDatas[index].errorInfo +=
-                    "; " + ress[i].substr(7).substring(5);
-                }
-              }
-            }
           }
-          let errorColumns = [
-            {
-              label: "閿欒琛�",
-              fieldName: "errorRow",
-              type: "text",
-              hideDefaultActions: true,
-              initialWidth: 100
-            },
-            {
-              label: "閿欒淇℃伅",
-              fieldName: "errorInfo",
-              type: "text",
-              hideDefaultActions: true,
-              initialWidth: 300,
-              wrapText: true
-            }
-          ];
-          for (var i = 0; i < fileContentData[0].split(",").length; i++) {
-            errorColumns.push({
-              label: fileContentData[0].split(",")[i],
-              fieldName: "field" + i,
-              type: "text",
-              hideDefaultActions: true,
-              wrapText: true,
-              initialWidth: 120
-            });
-          }
-
-          for (var i = 0; i < errorDatas.length; i++) {
-            let data = fileContentData[errorDatas[i].errorRow];
-            console.log("data = " + JSON.stringify(data));
-            if (data) {
-              for (var j = 0; j < data.split(",").length; j++) {
-                let label = "field" + j;
-                errorDatas[i][label] = data.split(",")[j];
-              }
-            }
-          }
-          component.set("v.errorColumns", errorColumns);
-          component.set("v.errorData", errorDatas);
-          component.set("v.showErrorInfo", true);
+          // $('.forceToastManager').css('white-space', 'pre-wrap');
           console.log("==" + res1);
           this.error(res1 + "璇蜂慨鏀瑰悗閲嶆柊涓婁紶");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         } else {
           component.set("v.showMain", true);
           this.success("瀵煎叆鎴愬姛");
           // alert('saved successfully');
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       } else if (state === "INCOMPLETE") {
         // do something
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       } else if (state === "ERROR") {
         var errors = response.getError();
         if (errors) {
           if (errors[0] && errors[0].message) {
             console.log("Error message: " + errors[0].message);
-            component.set("v.loginEdit", false);
+            component.set("v.login", false);
           }
         } else {
           console.log("Unknown error");
-          component.set("v.loginEdit", false);
+          component.set("v.login", false);
         }
       }
     });
@@ -2791,99 +2552,9 @@
     }
 
     if (error != "") {
-      console.log("zhj error = " + error);
-      let errorArray = error.split("error1");
-      let errorDatas = [];
-      let errorDataRow = [];
-      debugger;
-      var fileContentData = component.get("v.fileContentData").split("\n");
-      console.log("errorArray = " + JSON.stringify(errorArray));
-      for (var i in errorArray) {
-        if (errorArray[i] != "") {
-          let errorData = {};
-          if (!this.isNumber(errorArray[i].trim().substring(1, 2))) {
-            continue;
-          }
-          let index = errorDataRow.indexOf(
-            errorArray[i].trim().substring(1, 2)
-          );
-          if (index == -1) {
-            errorData.errorRow = errorArray[i].trim().substring(1, 2);
-            errorDataRow.push(errorData.errorRow);
-            errorData.errorInfo = errorArray[i]
-              .trim()
-              .substring(5, errorArray[i].trim().length)
-              .replace("=", "");
-            if (errorData.errorInfo == "鎷滆浜篈WS涓嶅瓨鍦�") {
-              errorData.errorInfo =
-                "鎷滆浜� " +
-                fileContentData[errorData.errorRow].split(",")[4] +
-                "涓嶅瓨鍦�";
-            }
-            errorDatas.push(errorData);
-          } else {
-            if (errorArray[i].trim().substring(5) == "鎷滆浜篈WS涓嶅瓨鍦�") {
-              errorData[index].errorInfo =
-                "; " +
-                "鎷滆浜� " +
-                fileContentData[errorDatas[index].errorRow].split(",")[4] +
-                "涓嶅瓨鍦�";
-            } else {
-              errorDatas[index].errorInfo +=
-                "; " +
-                errorArray[i].trim().substring(5, errorArray[i].trim().length);
-            }
-          }
-        }
-      }
-      var fileContentData = component.get("v.fileContentData").split("\n");
-      let errorColumns = [
-        {
-          label: "閿欒琛�",
-          fieldName: "errorRow",
-          type: "text",
-          hideDefaultActions: true,
-          initialWidth: 100
-        },
-        {
-          label: "閿欒淇℃伅",
-          fieldName: "errorInfo",
-          type: "text",
-          hideDefaultActions: true,
-          initialWidth: 300,
-          wrapText: true
-        }
-      ];
-      for (var i = 0; i < fileContentData[0].split(",").length; i++) {
-        errorColumns.push({
-          label: fileContentData[0].split(",")[i],
-          fieldName: "field" + i,
-          type: "text",
-          hideDefaultActions: true,
-          wrapText: true,
-          initialWidth: 120
-        });
-      }
-
-      for (var i = 0; i < errorDatas.length; i++) {
-        let data = fileContentData[errorDatas[i].errorRow];
-        console.log("data = " + JSON.stringify(data));
-        for (var j = 0; j < data.split(",").length; j++) {
-          let label = "field" + j;
-          errorDatas[i][label] = data.split(",")[j];
-        }
-      }
-      console.log("errorDatas =" + JSON.stringify(errorDatas));
-      component.set("v.errorColumns", errorColumns);
-      component.set("v.errorData", errorDatas);
-      component.set("v.showErrorInfo", true);
-
-      console.log("error = " + error);
-      component.set("v.errorMessage", error);
-
       this.error(error);
       console.log("error=" + error);
-      component.set("v.loginEdit", false);
+      component.set("v.login", false);
       return;
     }
 
@@ -3062,7 +2733,7 @@
   },
 
   select_repores_date: function (component, event, helper) {
-    component.set("v.loginEdit", true);
+    component.set("v.login", true);
     var reportsdate1 = component.find("input-report-date1").get("v.value");
     var reportsdate2 = component.find("input-report-date2").get("v.value");
     console.log(
@@ -3080,7 +2751,7 @@
       if (state === "SUCCESS") {
         var res = response.getReturnValue();
         console.log("杈撳叆鐨勫紑濮嬫棩鏈�3" + res);
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
 
         // PI 鏀归�� By Bright 20220328
         if (true) {
@@ -3127,7 +2798,7 @@
                 }
                 helper.showExportDate(component, res);
 
-                component.set("v.loginEdit", false);
+                component.set("v.login", false);
               },
               awsurl.token
             );
@@ -3139,7 +2810,7 @@
         component.set("v.reports_date", res);
       } else {
         alert("瀵煎嚭澶辫触,璇锋鏌ユ椿鍔ㄦ棩");
-        component.set("v.loginEdit", false);
+        component.set("v.login", false);
       }
     });
     $A.enqueueAction(action);
@@ -3190,77 +2861,8 @@
     }
 
     $A.enqueueAction(action);
-  },
-  //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
-
-  //zhj 瀵煎嚭閿欒淇℃伅 2023-05-16 start
-  exportErrorInfoHelper: function (component) {
-    var errorData = component.get("v.errorData");
-    var errorColumns = component.get("v.errorColumns");
-
-    var datas = [];
-    let errorColumnsArray = [];
-    for (var i in errorColumns) {
-      errorColumnsArray.push(errorColumns[i].label);
-    }
-    datas.push(errorColumnsArray);
-    //datas.push(errorColumns);
-
-    for (var i in errorData) {
-      let data = [];
-      data.push(errorData[i].errorRow);
-      data.push(errorData[i].errorInfo);
-      for (var j = 0; j < Object.keys(errorData[i]).length - 2; j++) {
-        data.push(errorData[i]["field" + j]);
-      }
-      datas.push(data);
-    }
-
-    console.log("datas = " + JSON.stringify(datas));
-    var csv = this.convertToCSV(component, datas);
-    console.log("csv = " + JSON.stringify(csv));
-    this.downloadCSV(component, csv);
-  },
-
-  convertToCSV: function (component, data) {
-    console.log("enter convertToCSV");
-    console.log("data = " + data);
-    var csv = "";
-    for (var i = 0; i < data.length; i++) {
-      var row = data[i];
-      console.log("row = " + JSON.stringify(row));
-      for (var j = 0; j < row.length; j++) {
-        var val = "";
-        val = row[j] === null ? "" : row[j].toString();
-        console.log("val = " + val);
-        if (
-          val.indexOf(",") !== -1 ||
-          val.indexOf('"') !== -1 ||
-          val.indexOf("\n") !== -1
-        ) {
-          //val = '"' + val.replace(/"/g,'""') + '"';
-        }
-        if (j > 0) {
-          csv += ",";
-        }
-        csv += val;
-      }
-      csv += "\n";
-    }
-    return csv;
-  },
-
-  downloadCSV: function (component, csv) {
-    var link = document.createElement("a");
-    // 璁剧疆瀛楃闆嗗拰鏂囦欢澶�
-    var bom = "\uFEFF";
-    link.href = "data:text/csv;charset=utf-8," + encodeURIComponent(bom + csv);
-    link.download = "data.csv";
-    document.body.appendChild(link);
-    link.click();
-    document.body.removeChild(link);
   }
-  //zhj 瀵煎嚭閿欒淇℃伅 2023-05-16 end
+  //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
 
   // searchAgencyContact : function(res) {
   //     var agencyContacts = [];
diff --git a/force-app/main/default/classes/ArriveGoodsController.cls b/force-app/main/default/classes/ArriveGoodsController.cls
index 190bd57..85af333 100644
--- a/force-app/main/default/classes/ArriveGoodsController.cls
+++ b/force-app/main/default/classes/ArriveGoodsController.cls
@@ -1,379 +1,389 @@
 public without sharing class ArriveGoodsController {
-    public String barcode { get; set; }
-    public Consumable_order__c coc { get; set; }
-    /*****************鐢婚潰琛ㄧずBean******************/
-    public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
-    public List<ConsumableorderdetailsInfo> consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
-    public List<ConsumableorderdetailsInfo> consumableInventory { get; set; }
-    public List<ConsumableorderdetailsInfo> detailsSummary { get; set; }
-    public List<ConsumableorderdetailsInfo> consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
-    //鏇存柊鏄庣粏鍙栨秷鏃堕棿
-    public List<Consumable_order_details2__c> consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
-    // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-    Map<String,Consumable_order_details2__c> orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
-    // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-    public List<Consumable_order_details2__c> consumableorderdetails2Insert= new List<Consumable_order_details2__c>();
-    public List<Consumable_order_details2__c> consumableorderdetails2Nobox= new List<Consumable_order_details2__c>();
-    public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror { get; set; }
-    public transient List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy { get; set; }
-    public List<ConsumableorderdetailsInfo> ShowGoodsofReturnList{get;set;}
-    public List<ConsumableorderdetailsInfo> ShowGoodsofRemoveBoxReturnList{get;set;}
-    //add by rentx 20210602 CHAN-C3K4ZQ
-    public List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview { get; set; }
-    //add by rentx 20210602 CHAN-C3K4ZQ
+  public String barcode { get; set; }
+  public Consumable_order__c coc { get; set; }
+  /*****************鐢婚潰琛ㄧずBean******************/
+  public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
+  public List<ConsumableorderdetailsInfo> consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
+  public List<ConsumableorderdetailsInfo> consumableInventory { get; set; }
+  public List<ConsumableorderdetailsInfo> detailsSummary { get; set; }
+  public List<ConsumableorderdetailsInfo> consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
+  //鏇存柊鏄庣粏鍙栨秷鏃堕棿
+  public List<Consumable_order_details2__c> consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
+  // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+  Map<String, Consumable_order_details2__c> orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
+  // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+  public List<Consumable_order_details2__c> consumableorderdetails2Insert = new List<Consumable_order_details2__c>();
+  public List<Consumable_order_details2__c> consumableorderdetails2Nobox = new List<Consumable_order_details2__c>();
+  public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror {
+    get;
+    set;
+  }
+  public transient List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy {
+    get;
+    set;
+  }
+  public List<ConsumableorderdetailsInfo> ShowGoodsofReturnList { get; set; }
+  public List<ConsumableorderdetailsInfo> ShowGoodsofRemoveBoxReturnList {
+    get;
+    set;
+  }
+  //add by rentx 20210602 CHAN-C3K4ZQ
+  public List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview {
+    get;
+    set;
+  }
+  //add by rentx 20210602 CHAN-C3K4ZQ
 
-    public List<String> GrList = new List<String>();
-    //瓒呭嚭瀹氳揣鏁伴噺鐨勪骇鍝�
-    public List<String> cancellationProList = new List<String>();
-    //閿欒淇℃伅
-    public String alertMessage {set;get;}
-    public integer getinventorysize(){
-        return consumableInventory.size();
-    }
-    public integer geterrorsize(){
-        return ConsumableorderdetailsRecordserror.size();
-    }
-    Set<String> noboxBarcodeList = new Set<String>();
-    public transient Map<String, String> ExistIdMap = new Map<String, String>();
-    public transient Map<String, String> ErrorIdMap = new Map<String, String>();
-    public transient Map<String, String> AllMap = new Map<String, String>();
-    Map<String, String> otherAgencyMap = new Map<String, String>();
-    public transient Map<String, String> barMcodeMap = new Map<String, String>();
-    Map<String, Integer> BarcodeCntMap = new Map<String, Integer>();
-    //qi
-    public transient List<String> BarCodeListP = new List<String>();
+  public List<String> GrList = new List<String>();
+  //瓒呭嚭瀹氳揣鏁伴噺鐨勪骇鍝�
+  public List<String> cancellationProList = new List<String>();
+  //閿欒淇℃伅
+  public String alertMessage { get; set; }
+  public integer getinventorysize() {
+    return consumableInventory.size();
+  }
+  public integer geterrorsize() {
+    return ConsumableorderdetailsRecordserror.size();
+  }
+  Set<String> noboxBarcodeList = new Set<String>();
+  public transient Map<String, String> ExistIdMap = new Map<String, String>();
+  public transient Map<String, String> ErrorIdMap = new Map<String, String>();
+  public transient Map<String, String> AllMap = new Map<String, String>();
+  Map<String, String> otherAgencyMap = new Map<String, String>();
+  public transient Map<String, String> barMcodeMap = new Map<String, String>();
+  Map<String, Integer> BarcodeCntMap = new Map<String, Integer>();
+  //qi
+  public transient List<String> BarCodeListP = new List<String>();
 
-    // public transient Map<String, String> OrderAllMap = new Map<String, String>();
-    Map<String, Decimal> orderProductCunMap = new Map<String, Decimal>();
-    Map<String, Decimal> orderProductArrivedCunMap = new Map<String, Decimal>();
-    Map<String, Decimal> orderWantArriveCunMap = new Map<String, Decimal>();
-    //瓒呭嚭鍨嬪彿鍜屾暟閲�
-    Map<String, Decimal> overOrderCunMap = new Map<String, Decimal>();
-    //瓒呭嚭BARCODE鍜屽瀷鍙�
-    Map<String, List<String>> overOrderBARcodeCunMap = new Map<String, List<String>>();
-    list<String> overOrderBARcodeTTTTTT = new list<String>();
+  // public transient Map<String, String> OrderAllMap = new Map<String, String>();
+  Map<String, Decimal> orderProductCunMap = new Map<String, Decimal>();
+  Map<String, Decimal> orderProductArrivedCunMap = new Map<String, Decimal>();
+  Map<String, Decimal> orderWantArriveCunMap = new Map<String, Decimal>();
+  //瓒呭嚭鍨嬪彿鍜屾暟閲�
+  Map<String, Decimal> overOrderCunMap = new Map<String, Decimal>();
+  //瓒呭嚭BARCODE鍜屽瀷鍙�
+  Map<String, List<String>> overOrderBARcodeCunMap = new Map<String, List<String>>();
+  list<String> overOrderBARcodeTTTTTT = new List<String>();
 
-    //涓嶇鍚堢殑barcode鍜屽瀷鍙�
-    Map<String, List<String>> notEqualBARcodeCunMap = new Map<String, List<String>>();
-    list<String> overOrderBARcodeSSSSSS = new list<String>();
-    list<String> productList = new list<String>();
-    list<String> notInlist = new list<String>();
-    //涓嶉�夋嫨璁㈠崟鏃朵繚瀛樿鍗旾D銆佷骇鍝佸瀷鍙风敤
-    //List<String> orderId = new List<String>();
-    //List<String> prodName = new List<String>();
-    //搴撳瓨鐧诲綍浣跨敤
-    list<String> notInStorelist = new list<String>();
-    list<String> exitBarCodeList = new list<String>();
+  //涓嶇鍚堢殑barcode鍜屽瀷鍙�
+  Map<String, List<String>> notEqualBARcodeCunMap = new Map<String, List<String>>();
+  list<String> overOrderBARcodeSSSSSS = new List<String>();
+  list<String> productList = new List<String>();
+  list<String> notInlist = new List<String>();
+  //涓嶉�夋嫨璁㈠崟鏃朵繚瀛樿鍗旾D銆佷骇鍝佸瀷鍙风敤
+  //List<String> orderId = new List<String>();
+  //List<String> prodName = new List<String>();
+  //搴撳瓨鐧诲綍浣跨敤
+  list<String> notInStorelist = new List<String>();
+  list<String> exitBarCodeList = new List<String>();
 
+  // Map<String, Consumable_order_details2__c> reallMap = new Map<String, Consumable_order_details2__c>();
+  Map<String, String> HosErrorMap = new Map<String, String>();
+  List<String> HosErrorList = new List<String>();
+  public String baseUrl { get; private set; }
+  public String ESetId { get; set; }
+  public String arriveId = '';
+  private String accountid = null;
+  private String accountName = null;
+  //public String[] proidList =new String[]{};
+  public Decimal orderCountAll = 0;
+  public Decimal orderCountNotarrive = 0;
+  private id return_Order_id = null;
+  private id inventory_Order_id = null;
+  public boolean ReturnFLGbln { get; set; }
+  public boolean saveFLGbln { get; set; }
+  public String ArrType { get; set; }
+  // 鐧诲綍鑰呭伐浣滃湴
+  private String userWorkLocation;
 
-    // Map<String, Consumable_order_details2__c> reallMap = new Map<String, Consumable_order_details2__c>();
-    Map<String,String> HosErrorMap = new Map<String,String>();
-    List<String> HosErrorList = new List<String>();
-    public String baseUrl {get;private set;}
-    public String ESetId { get; set; }
-    public String arriveId = '';
-    private String accountid = null;
-    private String accountName = null;
-    //public String[] proidList =new String[]{};
-    public Decimal orderCountAll = 0;
-    public Decimal orderCountNotarrive = 0;
-    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-    public id return_Order_id = null;
-    public id inventory_Order_id = null;
-    public boolean ReturnFLGbln {get;set;}
-    public boolean saveFLGbln {get;set;}
-    public String ArrType{get;set;}
-    // 鐧诲綍鑰呭伐浣滃湴
-    private String userWorkLocation;
-
-    //鐢ㄦ埛浜у搧鍖哄垎
-    public String userPro_Typestr = null;
-    public String userPro_Type = null;
-    public String product_Type = null;
-    public Boolean EngFlag = false;
-    public Boolean ETFlag = false;
-
-    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-    public Boolean isLwc = false;
-    public String returnError;
-    public List<String> warningList;
-    public List<String> errorList;
-    public String urlType;
-
-    public ArriveGoodsController(){
-        baseUrl = URL.getSalesforceBaseUrl().toExternalForm();
-        ESetId = ApexPages.currentPage().getParameters().get('esetId');
-        ArrType = ApexPages.currentPage().getParameters().get('ArrType');
-        ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
-        ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
-        ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
-        consumableInventory = new List<ConsumableorderdetailsInfo>();
-        consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
-        consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
-        consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
-        orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
-        detailsSummary = new List<ConsumableorderdetailsInfo>();
-        saveFLGbln = FALSE;
-        //overOrderBARcodeTTTTTT.add('');
-        //add by rentx 20210602 CHAN-C3K4ZQ start 
-        consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
-        //add by rentx 20210602 CHAN-C3K4ZQ end 
-        // OrderAllMap = new Map<String, String>();
-    }
-
-    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-    public ArriveGoodsController(String eSetId, String arrType){
-        this.ESetId = eSetId;
-        this.ArrType = arrType;
-        ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
-        ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
-        ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
-        consumableInventory = new List<ConsumableorderdetailsInfo>();
-        consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
-        consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
-        consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
-        orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
-        detailsSummary = new List<ConsumableorderdetailsInfo>();
-        saveFLGbln = FALSE;
-        consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
-        noboxBarcodeList = new Set<String>();
-        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-        warningList = new List<String>();
-        errorList = new List<String>();
-        returnError = null;
-        urlType = null;
-    }
-
-    //add by rentx 20210602 CHAN-C3K4ZQ start 鍑洪敊鐨勫師鍥犳槸椤甸潰鏈�澶氬睍绀�1000鏉℃暟鎹�,浣嗘槸闇�瑕佸睍绀虹殑鏁版嵁瓒呰繃浜�1000鏉�,鐜板湪鎶婂睍绀轰笂绾挎敼涓�1000 * 1000
-    public void makeRecordsView(List<ConsumableorderdetailsInfo> recordsdummy){
-        consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
-
-        if(recordsdummy.size() > 1000){
-            List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
-            List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
-            ConsumableorderdetailsInfo c = null;
-            ConsumableorderdetailsRecordsbreak.clear();
-            ConsumableorderdetailsRecordsbreakover.clear();
-            consumableorderdetailsRecordsview.clear();
-            //閫夋嫨浜у搧view
-            ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
-            ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
-            if(recordsdummy.size() > 1000){
-                for(Integer i = 0; i < recordsdummy.size(); i++){
-                    if(i < 1000){
-                        c = recordsdummy.get(i);
-                        ConsumableorderdetailsRecordsbreak.add(c);
-                    }else{
-                        c = recordsdummy.get(i);
-                        ConsumableorderdetailsRecordsbreakover.add(c);
-                    }
-                }
-                consumableorderdetailsRecordsview.add(ConsumableorderdetailsRecordsbreak);
-                consumableorderdetailsRecordsview.add(ConsumableorderdetailsRecordsbreakover);
-            }else{
-                consumableorderdetailsRecordsview.add(recordsdummy);
-            }
-
-            // Integer count = recordsdummy.size() / 1000;
-            // Integer last = recordsdummy.size() - (1000*count);
-
-            // for(Integer i = 0; i < count ; i++){
-            //     List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
-            //     for(Integer j=0; j < 1000; j++){
-            //         tempList.add(recordsdummy.get(i * count + j ));
-            //         // itemList.add(resList.get(i*count+j));
-            //     }
-            //     consumableorderdetailsRecordsview.add(tempList);
-            // }
-            // if (last > 0) {
-            //     List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
-            //     for(Integer j=0; j < last; j++){
-            //         tempList.add(recordsdummy.get(count * 1000 + j ));
-            //         // itemList.add(resList.get(i*count+j));
-            //     }
-            //     consumableorderdetailsRecordsview.add(tempList);
-            // }
-        }else{
-            consumableorderdetailsRecordsview.add(recordsdummy);
-        }
-    }
+  //鐢ㄦ埛浜у搧鍖哄垎
+  public String userPro_Typestr = null;
+  public String userPro_Type = null;
+  public String product_Type = null;
+  public Boolean EngFlag = false;
+  public Boolean ETFlag = false;
+  public ArriveGoodsController() {
+    baseUrl = URL.getSalesforceBaseUrl().toExternalForm();
+    ESetId = ApexPages.currentPage().getParameters().get('esetId');
+    ArrType = ApexPages.currentPage().getParameters().get('ArrType');
+    ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
+    ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
+    ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
+    consumableInventory = new List<ConsumableorderdetailsInfo>();
+    consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
+    consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
+    consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
+    orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
+    detailsSummary = new List<ConsumableorderdetailsInfo>();
+    saveFLGbln = false;
+    //overOrderBARcodeTTTTTT.add('');
+    //add by rentx 20210602 CHAN-C3K4ZQ start
+    consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
     //add by rentx 20210602 CHAN-C3K4ZQ end
-    public void init() {
-        // String userId = '00510000007cthP';
-        String userId = UserInfo.getUserId();
-        List<user> Useracc = New List<user>();
-        Useracc = [SELECT accountid, Work_Location__c,UserPro_Type__c FROM user WHERE id =:userId];
-        accountid = Useracc[0].accountid;
-        //--------AddStart-----XHL--------------20181008-------------
-        userPro_Type = Useracc[0].UserPro_Type__c;
-        if(String.isBlank(userPro_Type)){
-            userPro_Type = 'ET';
-        }
+    // OrderAllMap = new Map<String, String>();
+  }
 
-        if(userPro_Type == 'ENG'){
-            product_Type = 'ET';
-            EngFlag = true;
-        }else{
-            product_Type = 'ENG';
-            ETFlag = true;
+  //add by rentx 20210602 CHAN-C3K4ZQ start 鍑洪敊鐨勫師鍥犳槸椤甸潰鏈�澶氬睍绀�1000鏉℃暟鎹�,浣嗘槸闇�瑕佸睍绀虹殑鏁版嵁瓒呰繃浜�1000鏉�,鐜板湪鎶婂睍绀轰笂绾挎敼涓�1000 * 1000
+  public void makeRecordsView(List<ConsumableorderdetailsInfo> recordsdummy) {
+    consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
+
+    if (recordsdummy.size() > 1000) {
+      List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
+      List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
+      ConsumableorderdetailsInfo c = null;
+      ConsumableorderdetailsRecordsbreak.clear();
+      ConsumableorderdetailsRecordsbreakover.clear();
+      consumableorderdetailsRecordsview.clear();
+      //閫夋嫨浜у搧view
+      ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
+      ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
+      if (recordsdummy.size() > 1000) {
+        for (Integer i = 0; i < recordsdummy.size(); i++) {
+          if (i < 1000) {
+            c = recordsdummy.get(i);
+            ConsumableorderdetailsRecordsbreak.add(c);
+          } else {
+            c = recordsdummy.get(i);
+            ConsumableorderdetailsRecordsbreakover.add(c);
+          }
         }
-        userPro_Typestr = '%' + userPro_Type + '%';
-        //--------AddEnd-----XHL--------------20181008-------------
-        userWorkLocation = Useracc[0].Work_Location__c;
-        system.debug('userWorkLocation'+ userWorkLocation);
-        List<account> accountInfo = [SELECT Name FROM account WHERE id =:accountid];
-        accountName = accountInfo[0].Name;
-        system.debug('accountName'+ accountName);
-        coc = new Consumable_order__c();
-        if(ArrType=='ReG'){
-            ReturnFLGbln = true;
-        }else{
-            ReturnFLGbln = false;
-        }
-        if(ESetId != '' && ESetId !=null){
-            List<Consumable_order__c> qs = New List<Consumable_order__c>();
-            List<Consumable_order_details2__c> reSet1 = New List<Consumable_order_details2__c>();
-            List<Consumable_Orderdetails__c> reSet = New List<Consumable_Orderdetails__c>();
-            qs = [SELECT Id,Name,Order_status__c,Dealer_Info__c,Deliver_date__c,ReturnGs_Upload_Date__c,
-                        Order_Reason__c,Order_date__c,
-                        Contract_application_decision__c,Order_type__c,Total_num__c,
-                        OrderNumber_arrived__c,Delivery_detail_count__c,OrderNumber_notarrive__c,orderPattern__c 
-                    FROM Consumable_order__c
-                    WHERE Id =:ESetId AND Order_Owner_WorkLocal__c =: userWorkLocation
-                    AND Dealer_Info__c = :accountid];
-            if (qs.size()>0){
-                coc = qs[0];
-                orderCountAll = coc.Total_num__c;
-                orderCountNotarrive = coc.OrderNumber_notarrive__c;
-            }
-            //浜у搧瀹氳揣鏁伴噺
-            reSet = [SELECT Asset_Model_No__c,
-                            Consumable_order__c,
-                            Consumable_count__c
-                        FROM Consumable_Orderdetails__c
-                        WHERE Consumable_order__c = :ESetId AND Order_Owner_WorkLocal__c =: userWorkLocation];
-            for (Integer i = 0; i < reSet.size(); i++) {
-                productList.add(reSet[i].Asset_Model_No__c);
-                orderProductCunMap.put(reSet[i].Asset_Model_No__c,reSet[i].Consumable_count__c);
-                orderProductArrivedCunMap.put(reSet[i].Asset_Model_No__c,0);
-                orderWantArriveCunMap.put(reSet[i].Asset_Model_No__c,0);
-                overOrderCunMap.put(reSet[i].Asset_Model_No__c,0);
-                overOrderBARcodeCunMap.put(reSet[i].Asset_Model_No__c,overOrderBARcodeTTTTTT);
-                //overOrderCunMap.put(reSet[i].Asset_Model_No__c,0);
-            }
-            //
-            reSet1 = [SELECT Id,
-                            Name,
-                            Intra_Trade_List_RMB__c,
-                            Asset_Model_No__c,
-                            Consumable_Product__c,
-                            Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,
-                            Sterilization_limit__c,
-                            Deliver_date__c,
-                            Bar_Code__c,
-                            Arrive_date__c,
-                            Send_Date__c,
-                            Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,
-                            Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,
-                            CFDA_Status__c,
-                            Box_Piece__c,
-                            Rrturn_count__c,
-                            ProductPacking_list_manual__c,
-                            Report_Product_Approbation__c,
-                            Report_Product_Expiration__c
-                            //add by rentx 2020-10-14 start
-                            ,ContractNo_text__c/*,ContractNo__c1*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                            //add by rentx 2020-10-14 end
-                        FROM Consumable_order_details2__c
-                        WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
-                        AND Arrive_Owner_Work_Location__c = : userWorkLocation
-                        AND Consumable_order_minor__c = :ESetId
-                        AND Dealer_Arrive__c = true
-                        AND Box_Piece__c != '涓�' ];
-            for (Integer i = 0; i < reSet1.size(); i++) {
-                // OrderAllMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                //init鐨勬椂鍊欎笉灞曠ず宸茬粡鍏ュ簱鐨勬槑缁� by rentx 20210617 CHAN-C3K4ZQ
-                // ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet1[i]));
-                //update by rentx 20210617 end CHAN-C3K4ZQ
-                if(orderProductArrivedCunMap.containsKey(reSet1[i].Asset_Model_No__c)){
-                   orderProductArrivedCunMap.put(reSet1[i].Asset_Model_No__c,orderProductArrivedCunMap.get(reSet1[i].Asset_Model_No__c)+1);
-                }
-            }
-            //add by rentx 20210602 start CHAN-C3K4ZQ
-            // makeRecordsView(ConsumableorderdetailsRecordsdummy);
-            //add by rentx 20210602 end CHAN-C3K4ZQ
-        }
+        consumableorderdetailsRecordsview.add(
+          ConsumableorderdetailsRecordsbreak
+        );
+        consumableorderdetailsRecordsview.add(
+          ConsumableorderdetailsRecordsbreakover
+        );
+      } else {
+        consumableorderdetailsRecordsview.add(recordsdummy);
+      }
+
+      // Integer count = recordsdummy.size() / 1000;
+      // Integer last = recordsdummy.size() - (1000*count);
+
+      // for(Integer i = 0; i < count ; i++){
+      //     List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
+      //     for(Integer j=0; j < 1000; j++){
+      //         tempList.add(recordsdummy.get(i * count + j ));
+      //         // itemList.add(resList.get(i*count+j));
+      //     }
+      //     consumableorderdetailsRecordsview.add(tempList);
+      // }
+      // if (last > 0) {
+      //     List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
+      //     for(Integer j=0; j < last; j++){
+      //         tempList.add(recordsdummy.get(count * 1000 + j ));
+      //         // itemList.add(resList.get(i*count+j));
+      //     }
+      //     consumableorderdetailsRecordsview.add(tempList);
+      // }
+    } else {
+      consumableorderdetailsRecordsview.add(recordsdummy);
     }
-    //========20160311======ADD_Start================================
-    // 灏嗛〉闈㈡垨鍙栧緱BarCode鍘绘帀閲嶅鐨勶紝杞崲鎴怢ist
-    //========20160311======ADD_Start================================
-    public List<String> ParseBarCode(String Code){
-        String[] Cache = new String[]{};
-        Cache = Code.split('\n');
-        Set <String> Buff = new Set<String>();
-        for(String A : Cache){
-            Buff.add(A.toUpperCase());
-        }
-        List<String> outPut = new List<String>();
-        for(String B :Buff){
-            B = B.trim();
-            if(B.length() > 8){
-               String tracingCode = B.substring(B.length() - 5,B.length());
-               barMcodeMap.put(B,tracingCode);
-            }
-            outPut.add(B);
-        }system.debug('barMcodeMap绛変簬'+barMcodeMap);
-        return outPut;
+  }
+  //add by rentx 20210602 CHAN-C3K4ZQ end
+  public void init() {
+    // String userId = '00510000007cthP';
+    String userId = UserInfo.getUserId();
+    List<user> Useracc = new List<user>();
+    Useracc = [
+      SELECT accountid, Work_Location__c, UserPro_Type__c
+      FROM user
+      WHERE id = :userId
+    ];
+    accountid = Useracc[0].accountid;
+    //--------AddStart-----XHL--------------20181008-------------
+    userPro_Type = Useracc[0].UserPro_Type__c;
+    if (String.isBlank(userPro_Type)) {
+      userPro_Type = 'ET';
     }
 
-
-    //========20160311======ADD_End==================================
-    //鑾峰彇鏄庣粏
-    public void SearchPro() {
-        //浠庝笅杈圭Щ涓婃潵 by Link 2023-5-23
-        if(barcode == null || barcode.trim() ==''){
-            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-            if(isLwc){
-                returnError = '璇疯緭鍏arCode鍙�';
-            }else {
-                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO,'璇疯緭鍏arCode鍙枫��'));
-            }
-            return;
+    if (userPro_Type == 'ENG') {
+      product_Type = 'ET';
+      EngFlag = true;
+    } else {
+      product_Type = 'ENG';
+      ETFlag = true;
+    }
+    userPro_Typestr = '%' + userPro_Type + '%';
+    //--------AddEnd-----XHL--------------20181008-------------
+    userWorkLocation = Useracc[0].Work_Location__c;
+    system.debug('userWorkLocation' + userWorkLocation);
+    List<account> accountInfo = [
+      SELECT Name
+      FROM account
+      WHERE id = :accountid
+    ];
+    accountName = accountInfo[0].Name;
+    system.debug('accountName' + accountName);
+    coc = new Consumable_order__c();
+    if (ArrType == 'ReG') {
+      ReturnFLGbln = true;
+    } else {
+      ReturnFLGbln = false;
+    }
+    if (ESetId != '' && ESetId != null) {
+      List<Consumable_order__c> qs = new List<Consumable_order__c>();
+      List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
+      List<Consumable_Orderdetails__c> reSet = new List<Consumable_Orderdetails__c>();
+      qs = [
+        SELECT
+          Id,
+          Name,
+          Order_status__c,
+          Dealer_Info__c,
+          Deliver_date__c,
+          ReturnGs_Upload_Date__c,
+          Order_Reason__c,
+          Order_date__c,
+          Contract_application_decision__c,
+          Order_type__c,
+          Total_num__c,
+          OrderNumber_arrived__c,
+          Delivery_detail_count__c,
+          OrderNumber_notarrive__c,
+          orderPattern__c
+        FROM Consumable_order__c
+        WHERE
+          Id = :ESetId
+          AND Order_Owner_WorkLocal__c = :userWorkLocation
+          AND Dealer_Info__c = :accountid
+      ];
+      if (qs.size() > 0) {
+        coc = qs[0];
+        orderCountAll = coc.Total_num__c;
+        orderCountNotarrive = coc.OrderNumber_notarrive__c;
+      }
+      //浜у搧瀹氳揣鏁伴噺
+      reSet = [
+        SELECT Asset_Model_No__c, Consumable_order__c, Consumable_count__c
+        FROM Consumable_Orderdetails__c
+        WHERE
+          Consumable_order__c = :ESetId
+          AND Order_Owner_WorkLocal__c = :userWorkLocation
+      ];
+      for (Integer i = 0; i < reSet.size(); i++) {
+        productList.add(reSet[i].Asset_Model_No__c);
+        orderProductCunMap.put(
+          reSet[i].Asset_Model_No__c,
+          reSet[i].Consumable_count__c
+        );
+        orderProductArrivedCunMap.put(reSet[i].Asset_Model_No__c, 0);
+        orderWantArriveCunMap.put(reSet[i].Asset_Model_No__c, 0);
+        overOrderCunMap.put(reSet[i].Asset_Model_No__c, 0);
+        overOrderBARcodeCunMap.put(
+          reSet[i].Asset_Model_No__c,
+          overOrderBARcodeTTTTTT
+        );
+        //overOrderCunMap.put(reSet[i].Asset_Model_No__c,0);
+      }
+      //
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Consumable_Product__r.Name__c,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          Dealer_Arrive__c,
+          Guarantee_period_for_products__c,
+          CFDA_Status__c,
+          Box_Piece__c,
+          Rrturn_count__c,
+          ProductPacking_list_manual__c,
+          Report_Product_Approbation__c,
+          Report_Product_Expiration__c,
+          //add by rentx 2020-10-14 start
+          ContractNo_text__c /*,ContractNo__c1*/,
+          // tcm start
+          Consumable_order_minor__r.ContractNo__c
+        // tcm end
+        //add by rentx 2020-10-14 end
+        FROM Consumable_order_details2__c
+        WHERE
+          recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+          AND Arrive_Owner_Work_Location__c = :userWorkLocation
+          AND Consumable_order_minor__c = :ESetId
+          AND Dealer_Arrive__c = TRUE
+          AND Box_Piece__c != '涓�'
+      ];
+      for (Integer i = 0; i < reSet1.size(); i++) {
+        // OrderAllMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+        //init鐨勬椂鍊欎笉灞曠ず宸茬粡鍏ュ簱鐨勬槑缁� by rentx 20210617 CHAN-C3K4ZQ
+        // ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet1[i]));
+        //update by rentx 20210617 end CHAN-C3K4ZQ
+        if (
+          orderProductArrivedCunMap.containsKey(reSet1[i].Asset_Model_No__c)
+        ) {
+          orderProductArrivedCunMap.put(
+            reSet1[i].Asset_Model_No__c,
+            orderProductArrivedCunMap.get(reSet1[i].Asset_Model_No__c) + 1
+          );
         }
-        notInlist = new list<String>();
-        otherAgencyMap = new Map<String, String>();
-        barMcodeMap = new Map<String, String>();
-        consumableInventory = new List<ConsumableorderdetailsInfo>();
-        consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
-        consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
-        orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
-        //update by Link 20230428
-        if(isLwc){
-            noboxBarcodeList = new Set<String>();
-        }
-        //add by rentx 2021-01-27 start
-        HosErrorList = new List<String>();
-        HosErrorMap = new Map<String,String>();
-        //add by rentx 2021-01-27 end
+      }
+      //add by rentx 20210602 start CHAN-C3K4ZQ
+      // makeRecordsView(ConsumableorderdetailsRecordsdummy);
+      //add by rentx 20210602 end CHAN-C3K4ZQ
+    }
+  }
+  //========20160311======ADD_Start================================
+  // 灏嗛〉闈㈡垨鍙栧緱BarCode鍘绘帀閲嶅鐨勶紝杞崲鎴怢ist
+  //========20160311======ADD_Start================================
+  public List<String> ParseBarCode(String Code) {
+    String[] Cache = new List<String>{};
+    Cache = Code.split('\n');
+    Set<String> Buff = new Set<String>();
+    for (String A : Cache) {
+      Buff.add(A.toUpperCase());
+    }
+    List<String> outPut = new List<String>();
+    for (String B : Buff) {
+      B = B.trim();
+      if (B.length() > 8) {
+        String tracingCode = B.substring(B.length() - 5, B.length());
+        barMcodeMap.put(B, tracingCode);
+      }
+      outPut.add(B);
+    }
+    system.debug('barMcodeMap绛変簬' + barMcodeMap);
+    return outPut;
+  }
 
-        noboxBarcodeList.clear();
-        //鍐嶆绱㈤」鐩竻绌�
-        ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
-        ErrorIdMap = new Map<String, String>();
-        ErrorIdMap.clear();
-        AllMap = new Map<String, String>();
-        AllMap.clear();
-        ExistIdMap = new Map<String, String>();
-        ExistIdMap.clear();
-        consumableorderdetails2Insert = new List<Consumable_order_details2__c>();
-        ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
-        /*if(EsetId != null && EsetId != ''){
+  //========20160311======ADD_End==================================
+  //鑾峰彇鏄庣粏
+  public void SearchPro() {
+    notInlist = new List<String>();
+    otherAgencyMap = new Map<String, String>();
+    barMcodeMap = new Map<String, String>();
+    consumableInventory = new List<ConsumableorderdetailsInfo>();
+    consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
+    consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
+    orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
+    //add by rentx 2021-01-27 start
+    HosErrorList = new List<String>();
+    HosErrorMap = new Map<String, String>();
+    //add by rentx 2021-01-27 end
+
+    noboxBarcodeList.clear();
+    //鍐嶆绱㈤」鐩竻绌�
+    ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
+    ErrorIdMap = new Map<String, String>();
+    ErrorIdMap.clear();
+    AllMap = new Map<String, String>();
+    AllMap.clear();
+    ExistIdMap = new Map<String, String>();
+    ExistIdMap.clear();
+    consumableorderdetails2Insert = new List<Consumable_order_details2__c>();
+    ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
+    /*if(EsetId != null && EsetId != ''){
             List<Consumable_order_details2__c> reSet1 = [SELECT Id,
                             Name,
                             Intra_Trade_List_RMB__c,
@@ -420,2478 +430,3654 @@
                 //}
             }
         }*/
-        ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
-        BarCodeListP = new List<String>();
-        BarCodeListP = ParseBarCode(barcode);
-        Consumable_order_details2__c p = new Consumable_order_details2__c();
-        List<Consumable_order_details2__c> Ins = New List<Consumable_order_details2__c>();
-        List<Consumable_order_details2__c> reSet = new List<Consumable_order_details2__c>();
-        List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
-        //绉诲埌鏈�涓婅竟 by Link 2023-5-23
-        // if(barcode == null || barcode.trim() ==''){
-        //     //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-        //     if(isLwc){
-        //         returnError = '璇疯緭鍏arCode鍙�';
-        //     }else {
-        //         ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO,'璇疯緭鍏arCode鍙枫��'));
-        //     }
-        //     return;
-        // }
-        //瀵规瘮鍏ㄩ儴搴撳瓨涓槸鍚﹀瓨鍦ㄧ鐞嗙紪鐮佷竴鏍凤紝barcode鍙蜂笉涓�鏍风殑浜у搧
-        reSet1 = [SELECT Id,  Name,TracingCode__c,Bar_Code__c,Report_Product_Expiration__c 
-                    FROM Consumable_order_details2__c
-                    WHERE Dealer_Arrive__c = true
-                    AND Dealer_Shipment__c = false
-                    AND Dealer_Saled__c = false
-                    AND Lose_Flag__c = false
-                    AND Dealer_Returned__c = false
-                    AND Cancellation_Flag__c = false
-                    AND TracingCode__c in :barMcodeMap.values()
-                    AND Bar_Code__c not in :barMcodeMap.keySet()
-                    AND Dealer_Info_text__c = :accountName
-                    AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                    ORDER BY Name ];
-        if(reSet1.size()>0){
-            for (Integer i = 0; i < reSet1.size(); i++) {
-                if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                    // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                    continue;
-                }else{
-                    for(String str : barMcodeMap.keySet()){
-                        if(barMcodeMap.get(str) == reSet1[i].TracingCode__c){
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                errorList.add(str + ' 鐨勭鐞嗙紪鐮佸凡缁忓瓨鍦ㄤ簬绯荤粺鐨勫簱瀛樹腑锛岃纭杈撳叆淇℃伅鏄惁鏈夎銆�');
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, str + ' 鐨勭鐞嗙紪鐮佸凡缁忓瓨鍦ㄤ簬绯荤粺鐨勫簱瀛樹腑锛岃纭杈撳叆淇℃伅鏄惁鏈夎銆�'));
-                            }
-                            ErrorIdMap.put(str,str);
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
+    ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
+    BarCodeListP = new List<String>();
+    BarCodeListP = ParseBarCode(barcode);
+    Consumable_order_details2__c p = new Consumable_order_details2__c();
+    List<Consumable_order_details2__c> Ins = new List<Consumable_order_details2__c>();
+    List<Consumable_order_details2__c> reSet = new List<Consumable_order_details2__c>();
+    List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
+    if (barcode == null || barcode.trim() == '') {
+      ApexPages.addmessage(
+        new ApexPages.message(ApexPages.severity.INFO, '璇疯緭鍏arCode鍙枫��')
+      );
+      return;
+    }
+    //瀵规瘮鍏ㄩ儴搴撳瓨涓槸鍚﹀瓨鍦ㄧ鐞嗙紪鐮佷竴鏍凤紝barcode鍙蜂笉涓�鏍风殑浜у搧
+    reSet1 = [
+      SELECT Id, Name, TracingCode__c, Bar_Code__c, Report_Product_Expiration__c
+      FROM Consumable_order_details2__c
+      WHERE
+        Dealer_Arrive__c = TRUE
+        AND Dealer_Shipment__c = FALSE
+        AND Dealer_Saled__c = FALSE
+        AND Lose_Flag__c = FALSE
+        AND Dealer_Returned__c = FALSE
+        AND Cancellation_Flag__c = FALSE
+        AND TracingCode__c IN :barMcodeMap.values()
+        AND Bar_Code__c NOT IN :barMcodeMap.keySet()
+        AND Dealer_Info_text__c = :accountName
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+      ORDER BY Name
+    ];
+    if (reSet1.size() > 0) {
+      for (Integer i = 0; i < reSet1.size(); i++) {
+        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+          // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+          continue;
+        } else {
+          for (String str : barMcodeMap.keySet()) {
+            if (barMcodeMap.get(str) == reSet1[i].TracingCode__c) {
+              ApexPages.addmessage(
+                new ApexPages.message(
+                  ApexPages.severity.ERROR,
+                  str +
+                  ' 鐨勭鐞嗙紪鐮佸凡缁忓瓨鍦ㄤ簬绯荤粺鐨勫簱瀛樹腑锛岃纭杈撳叆淇℃伅鏄惁鏈夎銆�'
+                )
+              );
+              ErrorIdMap.put(str, str);
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
             }
-        }
-        //绠$悊缂栫爜涓虹┖鐨勪骇鍝�
-        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                        Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                        TracingCode__c,Report_Product_Expiration__c 
-                    FROM Consumable_order_details2__c
-                    WHERE Bar_Code__c in :BarCodeListP
-                    AND Dealer_Info_text__c = :accountName
-                    //AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                    AND (TracingCode__c = null
-                         OR TracingCode__c = '')
-                    ORDER BY Name ];
-
-        if(reSet1.size()>0){
-            for (Integer i = 0; i < reSet1.size(); i++) {
-                if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                    // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                    continue;
-                }else{
-                    String str = '璇ヤ骇鍝佹病鏈夌鐞嗙紪鐮侊紝鏃犳硶鍏ュ簱';
-                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                    ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                }
-            }
-        }
-        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '绠$悊缂栫爜涓虹┖鐨勪骇鍝� ' + ErrorIdMap));
-        //鏁翠綋鍒拌揣
-        System.debug('EsetId===>'+EsetId);
-        System.debug('ArrType===>'+ArrType);
-        if(EsetId == null || EsetId == ''){
-            if(ArrType!='ReG'){
-                //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�            
-                reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
-                                Consumable_Product__c,Consumable_Product__r.Name,
-                                Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
-                                Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
-                                Consumable_order_minor__c,Dealer_Arrive__c,
-                                Guarantee_period_for_products__c,CFDA_Status__c,
-                                ProductPacking_list_manual__c,Report_Product_Approbation__c,
-                                Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
-                                Product_Type__c
-                                ,ContractNo_text__c/*,ContractNo__c1*/
-                                // tcm start
-                                ,Consumable_order_minor__r.ContractNo__c
-                                // tcm end
-                        FROM Consumable_order_details2__c
-                        WHERE Bar_Code__c in :BarCodeListP
-                        AND ( not Product_Type__c  like :userPro_Typestr)
-                        AND Dealer_Info_text__c = :accountName
-                        AND ((Consumable_order_minor__c != null 
-                                AND  Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation) 
-                            OR Consumable_order_minor__c = null)
-                        ORDER BY Name ];
-
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                System.debug('reSet1===>'+reSet1);
-                //add by Wang Xueqin 
-                          //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�            
-                          reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
-                          Consumable_Product__c,Consumable_Product__r.Name,
-                          Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
-                          Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
-                          Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
-                          Consumable_order_minor__c,Dealer_Arrive__c,
-                          Guarantee_period_for_products__c,CFDA_Status__c,
-                          ProductPacking_list_manual__c,Report_Product_Approbation__c,
-                          Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
-                          Product_Type__c
-                          ,ContractNo_text__c
-                          ,Consumable_order_minor__r.ContractNo__c
-                  FROM Consumable_order_details2__c
-                  WHERE Bar_Code__c  in :BarCodeListP
-                  AND ( not Product_Type__c  like :userPro_Typestr)
-                 ];
-
-          if(reSet1.size()>0){
-              for (Integer i = 0; i < reSet1.size(); i++) {
-                  if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                      // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                      continue;
-                  }else{
-                      String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
-                      ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                      ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                  }
-              }
           }
-          System.debug('reSet1===>1'+reSet1);
-        //end
-
-
-                //閿�鍞骇鍝�
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,OwnerId,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Saled__c = true
-                            AND  Dealer_Returned__c = false
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND Dealer_Info_text__c = :accountName
-                            AND (Arrive_Owner_Work_Location__c =: userWorkLocation
-                                OR OwnerId = :System.Label.User_OlympusSystem)
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '';
-                            if (reSet1[i].OwnerId == System.Label.User_OlympusSystem) {
-                                str = '璇ュ晢鍝佹槸鐩撮攢浜у搧璇峰厛杩斿搧';
-                            }else{
-                                str = '璇ュ晢鍝佸凡缁忛攢鍞�';
-                            }
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                            
-                        }
-                    }
-                }
-                //鍑哄簱浜у搧
-               reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Shipment__c = true
-                            AND  Dealer_Returned__c = false
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND Dealer_Info_text__c = :accountName
-                            AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                //宸插埌璐т骇鍝�
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Lose_Flag__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = true
-                            AND  Dealer_Returned__c = false
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND Dealer_Info_text__c = :accountName
-                            AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸凡缁忓埌璐�';
-                            if (reSet1[i].Lose_Flag__c == TRUE) {
-                                str = '璇ュ晢鍝佸凡缁忎涪澶�';
-                            }
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-
-                //宸叉媶鐩掍骇鍝�
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = true
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND (Dealer_Info_text__c != :accountName
-                                OR (Dealer_Info_text__c = :accountName
-                                    AND Arrive_Owner_Work_Location__c !=: userWorkLocation))
-                            AND Box_Piece__c = '涓�'
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '宸叉媶鐩掔殑浜у搧涓嶈兘鍏ュ簱';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-
-                // 缁忛攢鍟嗕箣闂存垨鑰呭悓涓�缁忛攢鍟嗕笉鍚屽伐浣滃湴璋冭揣
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,Asset_Model_No__c, Arrive_Owner_Work_Location__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,Box_Piece__c,
-                                Deliver_date__c,Bar_Code__c,TracingCode__c, Dealer_Info_text__c, OwnerId, Lose_Flag__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,SerialLotNo__c, Dealer_Arrive__c,
-                                Consumable_Arrived_order__r.Dealer_Info__c, Consumable_Arrived_order__r.Dealer_Info__r.Name,
-                                Intra_Trade_List_RMB__c, Dealer_Shipment__c, Dealer_Saled__c,Consumable_Product__r.Asset_Model_No__c
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                ,SummonsForDirction_det__c,Transfer_Time__c,Frist_Transfer_Agency__c,Agency_Transfer__c
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
-                                ,Agencyinfo_fromSAP__c,Frist_Storage_Agency__c 
-                                // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
-
-                                //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
-                                ,ContractNo_text__c/*,ContractNo__c */
-                                // tcm start
-                                ,Consumable_order_minor__r.ContractNo__c
-                                // tcm end
-                                //add by rentx 2020-10-13 end
-                                //add by rentx 2021-03-22 start
-                                ,hospitalSpecialOffer__c
-                                ,exchangeOutPattern__c 
-                                ,Report_Product_Expiration__c
-                                //add by rentx 2021-03-22 end
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = TRUE
-                            //AND  Dealer_Shipment__c= false
-                            //AND  Dealer_Saled__c = FALSE
-                            AND  Dealer_Returned__c = FALSE
-                            AND  Cancellation_Flag__c = FALSE
-                            AND  Bar_Code__c in :BarCodeListP
-                            //AND (Dealer_Shipment__c = FALSE 
-                            //        OR (Dealer_Shipment__c = TRUE 
-                            //            AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣'))
-                            AND (Dealer_Info_text__c != :accountName 
-                                OR (Dealer_Info_text__c = :accountName 
-                                    AND Arrive_Owner_Work_Location__c != :userWorkLocation)
-                            )
-                            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                            order by Bar_Code__c, Transfer_Time__c desc
-                            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                            ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            if(otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)){
-                                continue;
-                            }else{
-                                //鍏朵粬缁忛攢鍟嗗嚭搴撲骇鍝佸彲浠ュ叆搴�
-                                List<String> barcodedetList = new List<String>();
-                                barcodedetList.add(reSet1[i].Bar_Code__c);
-                                barcodedetList.add(String.valueOf(reSet1[i].Sterilization_limit__c));
-                                barcodedetList.add(reSet1[i].SerialLotNo__c);
-                                barcodedetList.add(reSet1[i].TracingCode__c);
-                                if (reSet1[i].Lose_Flag__c == false 
-                                    //&& reSet1[i].Dealer_Info_text__c == accountName
-                                     ) {
-                                    consumableorderdetails2Cancle.add(reSet1[i]);
-                                }
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                if (reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' && !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)) {
-                                    orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
-                                }
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                                consumableInventory.add(new ConsumableorderdetailsInfo(reSet1[i],barcodedetList));
-                                Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
-
-                                codsIns.RecordTypeId                = System.Label.RT_ConOrderDetail2_Delivery;
-                                codsIns.Intra_Trade_List_RMB__c     = reSet1[i].Intra_Trade_List_RMB__c;
-                                //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                                codsIns.Asset_Model_No__c           = reSet1[i].Asset_Model_No__c;
-                                codsIns.Direct_Arrive_Product__c    = true;
-                                codsIns.Sterilization_limit__c      = reSet1[i].Sterilization_limit__c;
-                                codsIns.Consumable_Product__c       = reSet1[i].Consumable_Product__c;
-                                codsIns.Bar_Code__c                 = reSet1[i].Bar_Code__c;
-                                codsIns.SerialLotNo__c              = reSet1[i].SerialLotNo__c;
-                                codsIns.TracingCode__c              = reSet1[i].TracingCode__c;
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                codsIns.Transfer_Time__c            = reSet1[i].Transfer_Time__c == null? 1 : reSet1[i].Transfer_Time__c;
-                                codsIns.Frist_Transfer_Agency__c    = reSet1[i].Frist_Transfer_Agency__c == null ? reSet1[i].Dealer_Info_text__c : reSet1[i].Frist_Transfer_Agency__c;
-                                codsIns.Agency_Transfer__c          = true;
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                                 
-                                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                                codsIns.Agencyinfo_fromSAP__c       = reSet1[i].Agencyinfo_fromSAP__c;
-                                codsIns.Frist_Storage_Agency__c     = reSet1[i].Frist_Storage_Agency__c;
-                                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-
-                                //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,璁板綍SAP鍚堝悓鍙�
-                                // update tcm start
-                                if (String.isBlank(reSet1[i].Consumable_order_minor__r.ContractNo__c)) {
-                                    codsIns.ContractNo_text__c= reSet1[i].ContractNo_text__c;
-                                }else {
-                                    codsIns.ContractNo_text__c= reSet1[i].Consumable_order_minor__r.ContractNo__c;
-                                }
-                                // update tcm end
-                                //add by rentx 2020-10-13 end
-
-                                //add by rentx 2021-03-22 start
-                                // if (reSet1[i].Lose_Flag__c == true){
-                                if (reSet1[i].hospitalSpecialOffer__c == true && reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'){
-                                    codsIns.exchangeOutPattern__c = true;
-                                }
-                                //add by rentx 2021-03-22 end
-
-                                consumableorderdetails2Insert.add(codsIns);
-                                otherAgencyMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                                //String str = '璇ュ晢鍝佸湪鍏朵粬缁忛攢鍟嗗簱瀛�';
-                                //ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                                //ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                            }
-                        }
-                    }
-                }
-
-                 //鍙戦敊搴� 鏈埌璐�
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,Asset_Model_No__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,TracingCode__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,SerialLotNo__c,Dealer_Arrive__c,
-                                Dealer_Shipment__c, Dealer_Saled__c,Consumable_Product__r.Asset_Model_No__c
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                ,SummonsForDirction_det__c,Transfer_Time__c,Frist_Transfer_Agency__c,Agency_Transfer__c,
-                                Dealer_Info_text__c,Intra_Trade_List_RMB__c
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
-                                ,Agencyinfo_fromSAP__c,Frist_Storage_Agency__c 
-                                // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
-                                //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
-                                ,ContractNo_text__c/*,ContractNo__c*/ 
-                                // tcm start
-                                ,Consumable_order_minor__r.ContractNo__c
-                                // tcm end
-                                //add by rentx 2020-10-13 end   浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
-                                ,hospitalSpecialOffer__c
-                                ,exchangeOutPattern__c
-                                ,Lose_Flag__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = FALSE
-                            AND  Dealer_Shipment__c= FALSE
-                            AND  Dealer_Saled__c = FALSE
-                            //AND  Cancellation_Flag__c = FALSE
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND  (Dealer_Info_text__c != :accountName
-                                OR (Dealer_Info_text__c = :accountName 
-                                    AND ((Consumable_order_minor__c != null
-                                            AND (Consumable_order_minor__r.Order_Owner_WorkLocal__c != :userWorkLocation
-                                                OR (Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
-                                                    AND Cancellation_Flag__c = TRUE)))
-                                        OR (Consumable_order_minor__c = null AND Cancellation_Flag__c = TRUE)))
-                            )
-                            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                            order by Bar_Code__c, Transfer_Time__c desc
-                            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                            ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            if(otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)){
-                                continue;
-                            }else{
-                                //鍙栨秷鏄庣粏
-                                List<String> barcodedetList = new List<String>();
-                                barcodedetList.add(reSet1[i].Bar_Code__c);
-                                barcodedetList.add(String.valueOf(reSet1[i].Sterilization_limit__c));
-                                barcodedetList.add(reSet1[i].SerialLotNo__c);
-                                barcodedetList.add(reSet1[i].TracingCode__c);
-                                // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
-                                //if (reSet1[i].Consumable_order_minor__c == null) {
-                                    consumableorderdetails2Cancle.add(reSet1[i]);
-                                //}
-                                // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                if (reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' && !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)) {
-
-                                    orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
-                                }
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                                consumableInventory.add(new ConsumableorderdetailsInfo(reSet1[i],barcodedetList));
-                                Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
-
-                                codsIns.RecordTypeId                = System.Label.RT_ConOrderDetail2_Delivery;
-                                codsIns.Intra_Trade_List_RMB__c     = reSet1[i].Intra_Trade_List_RMB__c;
-                                //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                                codsIns.Asset_Model_No__c           = reSet1[i].Asset_Model_No__c;
-                                codsIns.Direct_Arrive_Product__c    = true;
-                                codsIns.Sterilization_limit__c      = reSet1[i].Sterilization_limit__c;
-                                codsIns.Consumable_Product__c       = reSet1[i].Consumable_Product__c;
-                                codsIns.Bar_Code__c                 = reSet1[i].Bar_Code__c;
-                                codsIns.SerialLotNo__c              = reSet1[i].SerialLotNo__c;
-                                codsIns.TracingCode__c              = reSet1[i].TracingCode__c;
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                                // 娌℃湁鍏ュ簱鏃讹紝娌℃湁鍊熻皟淇℃伅
-                                codsIns.Transfer_Time__c            = reSet1[i].Transfer_Time__c;
-                                codsIns.Frist_Transfer_Agency__c    = reSet1[i].Frist_Transfer_Agency__c;
-                                codsIns.Agency_Transfer__c          = reSet1[i].Agency_Transfer__c;
-                                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                                
-                                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                                codsIns.Agencyinfo_fromSAP__c       = reSet1[i].Agencyinfo_fromSAP__c;
-                                codsIns.Frist_Storage_Agency__c     = reSet1[i].Frist_Storage_Agency__c;
-                                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-
-                                //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
-                                // update tcm start
-                                if (String.isBlank(reSet1[i].Consumable_order_minor__r.ContractNo__c)) {
-                                    codsIns.ContractNo_text__c= reSet1[i].ContractNo_text__c;
-                                }else {
-                                    codsIns.ContractNo_text__c= reSet1[i].Consumable_order_minor__r.ContractNo__c;
-                                }
-                                // update tcm end
-                                //add by rentx 2020-10-13 end   浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
-
-                                //add by rentx 2021-03-22 start
-                                // if (reSet1[i].Lose_Flag__c == true){
-                                if (reSet1[i].hospitalSpecialOffer__c == true && reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'){
-                                    codsIns.exchangeOutPattern__c = true;
-                                }
-                                //add by rentx 2021-03-22 end
-
-                                consumableorderdetails2Insert.add(codsIns);
-                                otherAgencyMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                            }
-                        }
-                    }
-                }
-            }else{
-                //杩斿搧妫�鏌�
-                //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�            
-                reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
-                                Consumable_Product__c,Consumable_Product__r.Name,
-                                Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
-                                Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
-                                Consumable_order_minor__c,Dealer_Arrive__c,
-                                Guarantee_period_for_products__c,CFDA_Status__c,
-                                ProductPacking_list_manual__c,Report_Product_Approbation__c,
-                                Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
-                                Product_Type__c
-                                //add by rentx 2020-10-14 start
-                                ,ContractNo_text__c/*,ContractNo__c*/
-                                // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                                //add by rentx 2020-10-14 end
-                        FROM Consumable_order_details2__c
-                        WHERE Bar_Code__c in :BarCodeListP
-                        AND ( not Product_Type__c  like :userPro_Typestr)
-                        AND Dealer_Info_text__c = :accountName
-                        AND ((Consumable_order_minor__c != null 
-                                AND  Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation) 
-                            OR Consumable_order_minor__c = null)
-                        ORDER BY Name ];
-
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                            Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                            Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                            Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                            recordtypeid,Consumable_order_minor__r.Arrive_Order__c
-                            //add by rentx 2020-10-14 start
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                            ,Report_Product_Expiration__c 
-                            //add by rentx 2020-10-14 end
-                        FROM Consumable_order_details2__c
-                        WHERE Dealer_Arrive__c = FALSE 
-                        AND  Dealer_Shipment__c= FALSE
-                        AND  Dealer_Saled__c = FALSE
-                        // gzw fix 鍙栨秷浜у搧鍒ゆ柇涓烘湭鍏ュ簱 20230323
-                        AND Cancellation_Flag__c = false
-                        AND  Dealer_Returned__c = false
-                        AND  Bar_Code__c in :BarCodeListP
-                        AND Dealer_Info_text__c = :accountName
-                        ORDER BY Name ];//娌″埌璐�
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸皻鏈叆搴�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,ToDueDateDays__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Lose_Flag__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c
-                                //add by rentx 2020-10-14 start
-                                ,ContractNo_text__c/*,ContractNo__c*/
-                                // tcm start
-                                ,Consumable_order_minor__r.ContractNo__c
-                                // tcm end
-                                , Report_Product_Expiration__c
-                                //add by rentx 2020-10-14 end
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = true
-                            AND  Dealer_Shipment__c= FALSE
-                            AND  Dealer_Saled__c = FALSE
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND  Dealer_Returned__c = false
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                            //AND  Lose_Flag__c = FALSE
-                            // AND  Lose_Flag__c = FALSE
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                            AND Dealer_Info_text__c = :accountName
-                            AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                            // Gzw 20201215淇锛屾媶鐩掍骇鍝佷笉鍒ゆ柇
-                            AND Box_Piece__c = '鐩�'
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                            ORDER BY Name ];//娌″嚭搴擄紝娌¢攢鍞紝灏辨槸鍦ㄥ簱
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                            // String str = '璇ュ晢鍝佸湪搴�';
-                            // if (reSet1[i].Lose_Flag__c) {
-                            //     str = '璇ュ晢鍝佷涪澶�';
-                            // }
-                            String str = '';
-                            if(reSet1[i].Lose_Flag__c == false){
-                                str = '璇ュ晢鍝佸湪搴�';//娌″嚭搴� 锛屾病閿�鍞紝娌′涪澶卞氨鏄湪搴撱��
-                            }
-                            if(reSet1[i].Lose_Flag__c == true && reSet1[i].ToDueDateDays__c >= 0){
-                                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                if(isLwc){
-                                    warningList.add('浜у搧'+reSet1[i].Consumable_Product__r.Name+'瀛樺湪涓㈠け璁板綍');
-                                }else {
-                                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING, '浜у搧'+reSet1[i].Consumable_Product__r.Name+'瀛樺湪涓㈠け璁板綍'));//濡傛灉涓㈠け浜у搧灏辩粰鎻愮ず銆�
-                                }
-                            }
-                            if (reSet1[i].Lose_Flag__c == true && reSet1[i].ToDueDateDays__c < 0) {
-                                str = '杩囨湡宸查攢瀛樹骇鍝侊紝涓嶅厑璁歌繑鍝�';
-                            }
-                            if(str != ''){
-                                ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                                ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                            }
-                            // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            // ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                        }
-                    }
-                }
-            }
-
-            
-            
-            
-            //鍒拌揣姝g‘淇℃伅
-            reSet = [SELECT Id,
-                            Name,
-                            Intra_Trade_List_RMB__c,
-                            Asset_Model_No__c,
-                            Consumable_Product__c,
-                            Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,
-                            Consumable_Product__r.Asset_Model_No__c,
-                            Sterilization_limit__c,
-                            Deliver_date__c,
-                            Bar_Code__c,
-                            Arrive_date__c,
-                            Send_Date__c,
-                            Box_Piece__c,
-                            Rrturn_count__c,
-                            Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,
-                            Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,
-                            CFDA_Status__c,
-                            ProductPacking_list_manual__c,
-                            Report_Product_Approbation__c,
-                            Report_Product_Expiration__c,
-                            Consumable_Product__r.Pro2_Dealer_ENG__c,
-                            Consumable_Product__r.Pro2_Dealer_Object__c,
-                            TracingCode__c,
-                            Agencyinfo_fromSAP__c,
-                            Frist_Storage_Agency__c,
-                            Dealer_Info_text__c
-                            //add by rentx 2020-10-14 start
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                            //add by rentx 2020-10-14 end
-                        FROM Consumable_order_details2__c
-                        WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
-                        AND Cancellation_Date__c = null
-                        AND Dealer_Arrive__c = false
-                        AND Product_Type__c like :userPro_Typestr
-                        AND Bar_Code__c in :BarCodeListP
-                        AND Dealer_Info_text__c = :accountName
-                        AND ((Consumable_order_minor__c != null 
-                                AND  Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation) 
-                            OR Consumable_order_minor__c = null)
-                        ORDER BY Name ];
-
-            if(reSet.size()>0){
-                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ErrorIdMap+++ '+ ErrorIdMap.keyset()));
-                Map<String,String> errorMap = new Map<String,String>();
-                for (Integer i = 0; i < reSet.size(); i++) {
-
-                    if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
-                        // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                        continue;
-                    }else{
-                        Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
-                        if(n.find()){
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                            if (reSet[i].TracingCode__c.length() == 5) {
-                                String tr = reSet[i].TracingCode__c;
-                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                    String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            continue;
-                        }
-                            }
-                            // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
-                            // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            // continue;
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                        }
-                        if(otherAgencyMap.containsKey(reSet[i].Bar_Code__c)){
-                            for (Integer j=0; j<consumableInventory.size(); j++) {
-                                ConsumableorderdetailsInfo codInfo = consumableInventory.get(j);
-                                if (codInfo.barCodeNo == reSet[i].Bar_Code__c) {
-                                    consumableInventory.remove(j);
-                                    break;
-                                }
-                            }
-                            for (Integer m=0; m<consumableorderdetails2Insert.size(); m++) {
-                                Consumable_order_details2__c cod2 = consumableorderdetails2Insert.get(m);
-                                if (cod2.Bar_Code__c == reSet[i].Bar_Code__c) {
-                                    consumableorderdetails2Insert.remove(m);
-                                    break;
-                                }
-                            }
-                        }
-                        //orderId.add(reSet[i].Consumable_order_minor__c);
-                        //prodName.add(reSet[i].Consumable_Product__r.Name);
-                        ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
-                        ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
-                        ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                    }
-                }
-            }
-            //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
-            reSet = [SELECT Id,
-                            Name,
-                            Intra_Trade_List_RMB__c,
-                            Asset_Model_No__c,
-                            Consumable_Product__c,
-                            Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,
-                            Consumable_Product__r.Asset_Model_No__c,
-                            Sterilization_limit__c,
-                            Deliver_date__c,
-                            Bar_Code__c,
-                            Arrive_date__c,
-                            Send_Date__c,
-                            Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,
-                            Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,
-                            CFDA_Status__c,
-                            ProductPacking_list_manual__c,
-                            Report_Product_Approbation__c,
-                            Report_Product_Expiration__c,
-                            Box_Piece__c,
-                            Rrturn_count__c,
-                            TracingCode__c
-                            ,Agencyinfo_fromSAP__c
-                            ,Frist_Storage_Agency__c
-                            //add by rentx 2020-10-14 start
-                            ,ContractNo_text__c/*,ContractNo__c */
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                            //add by rentx 2020-10-14 end
-                        FROM Consumable_order_details2__c
-                       WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
-                        AND Dealer_Info_text__c = :accountName
-                        //update by rentx 2021-01-04 start CHAN-BWX3XW
-                        // AND Consumable_order_minor__c != null
-                        // AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
-                        AND ((Consumable_order_minor__c != null AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation) OR Consumable_order_minor__c = null)
-                        //update by rentx 2021-01-04 end CHAN-BWX3XW
-                        AND Dealer_Arrive__c = false
-                        AND Cancellation_Date__c = null
-                        AND TracingCode__c in :barMcodeMap.values()
-                        AND Bar_Code__c not in :barMcodeMap.keySet()
-                        ORDER BY Name ];
-
-            if(reSet.size()>0){
-                for (Integer i = 0; i < reSet.size(); i++) {
-                    if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
-                        // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                        continue;
-                    }else{
-                        Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
-                        if(n.find()){// gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                            if (reSet[i].TracingCode__c.length() == 5) {
-                                String tr = reSet[i].TracingCode__c;
-                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                    String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            continue;
-                        }
-                            }
-                            // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
-                            // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            // continue;
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                        }
-                        ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                        for(String str : barMcodeMap.keySet()){
-                            // BarCode涓嶄竴鑷存椂鐨勮鍛婁俊鎭�
-                            if(reSet[i].Bar_Code__c != str && reSet[i].TracingCode__c == barMcodeMap.get(str)){
-                                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                if(isLwc){
-                                    warningList.add('鏉″舰鐮佷负('+ str +')鐨勫叆搴撴暟鎹笌鍙戣揣鏁版嵁涓嶄竴鑷�');
-                                }else {
-                                    // 20220815 ljh SWAG-CH65B7 start
-                                    // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'姝ょ鐞嗙紪鐮佷笌瀹為檯鍙戣揣BarCode涓嶄竴鑷达紝璇锋牳瀵圭鐞嗙紪鐮�('+ str +')鐨勫叆搴撳強搴撳瓨鏁版嵁銆�'));
-                                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'鏉″舰鐮佷负('+ str +')鐨勫叆搴撴暟鎹笌鍙戣揣鏁版嵁涓嶄竴鑷�'));
-                                    // 20220815 ljh SWAG-CH65B7 end
-                                }
-                            }
-                            if(barMcodeMap.get(str) == reSet[i].TracingCode__c){
-                                reSet[i].Bar_Code__c = str;
-                                //=====================================
-                                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'鍏ュ簱BarCode('+ str +')鍜屽簱瀛樻潯鐮佷笉涓�鑷淬��'));
-                                ExistIdMap.put(str,str);
-                            }
-                        }
-                        ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
-                        ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
-                    }
-                }
-            }
-
-
-            // CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘  杩藉姞 barcode涓嶄竴鑷村垽鏂�
-            reSet1 = [SELECT Id,Name,TracingCode__c,Bar_Code__c,Sale_orderName__c,Report_Product_Expiration__c 
-                        FROM Consumable_order_details2__c
-                        WHERE Dealer_Arrive__c = true
-                        AND (Dealer_Shipment__c = true
-                            OR Dealer_Saled__c = true)
-                        AND TracingCode__c in :barMcodeMap.values()
-                        AND Bar_Code__c not in :barMcodeMap.keySet()
-                        AND Dealer_Info_text__c = :accountName
-                        AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                        ORDER BY Name ];
-            if(reSet1.size()>0){
-                for (Integer i = 0; i < reSet1.size(); i++) {
-                    if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                        // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                        continue;
-                    }else{
-                        for(String str : barMcodeMap.keySet()){
-                            if(barMcodeMap.get(str) == reSet1[i].TracingCode__c){
-                                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                if(isLwc){
-                                    errorList.add('barcode' +str + '涓庡嚭搴撳崟' + reSet1[i].Sale_orderName__c + ' 涓殑绠$悊缂栫爜涓�鑷达紝浣咮arcode涓嶅悓锛岃纭鍏蜂綋鏁版嵁銆�');
-                                }else {
-                                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'barcode' +str + '涓庡嚭搴撳崟' + reSet1[i].Sale_orderName__c + ' 涓殑绠$悊缂栫爜涓�鑷达紝浣咮arcode涓嶅悓锛岃纭鍏蜂綋鏁版嵁銆�'));
-                                }
-                                ErrorIdMap.put(str,str);
-                                ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                            }
-                        }
-                    }
-                }
-            }
-            integer RGcnt =  GoodsReturnCheck();
-            AllMap.putAll(ErrorIdMap);
-            AllMap.putAll(ExistIdMap);
-            if(RGcnt>0){
-                for(String str:GrList){
-                    AllMap.put(str,str);
-                }
-            }
-            //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
-            //return;
-            for(Integer i = 0; i < BarCodeListP.size(); i++){
-                if(AllMap.containsKey(BarCodeListP[i])){
-                    continue;
-                }else if(otherAgencyMap.containsKey(BarCodeListP[i])){
-                    continue;
-                }
-                //add by rentx 2021-01-27 start
-                else if (coc!= null && coc.orderPattern__c == 'hospitalorder') {
-                    HosErrorList.add(BarCodeListP[i]);
-                    continue;
-                }
-                //add by rentx 2021-01-27 end
-                else{
-                    notInlist.add(BarCodeListP[i]);
-                    otherAgencyMap.put(BarCodeListP[i],BarCodeListP[i]);
-                }
-            }
-            //  CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘
-            if(notInlist.size()>0){
-                if(ArrType!='ReG'){
-                    inventoryEntryNoESetId(notInlist);
-                    if(notInStorelist.size() > 0){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            returnError = 'BarCode鍙�'+ notInStorelist + '涓嶅瓨鍦�';
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�'+ notInStorelist + '涓嶅瓨鍦ㄣ��'));
-                        }
-                        return;
-                    }
-                }else{
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        returnError = 'BarCode鍙�'+ notInlist + '涓嶅瓨鍦紝鏃犲搴旂殑鍑哄簱鍗曪紝璇峰厛鎿嶄綔浜у搧鍏ュ簱';
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�'+ notInlist + '涓嶅瓨鍦紝鏃犲搴旂殑鍑哄簱鍗曪紝璇峰厛鎿嶄綔浜у搧鍏ュ簱銆�'));
-                    }
-                    return;
-                }
-            }
-
-        //add by rentx 2021-01-27 start
-        if (HosErrorList.size() > 0) {
-            for (String str : HosErrorList) {
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    errorList.add('BarCode鍙�:' + str + HosErrorMap.get(str)+'');
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�:' + str + HosErrorMap.get(str)+''));
-                }
-            }
         }
-        //add by rentx 2021-01-27 end
-
-        }else{
-                //宸插彇娑堜骇鍝�
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = FALSE 
-                            AND  Dealer_Shipment__c= FALSE
-                            AND  Dealer_Saled__c = FALSE
-                            AND  Dealer_Returned__c = false
-                            AND Cancellation_Date__c != null
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND Dealer_Info_text__c = :accountName
-                            ORDER BY Name ];//娌″埌璐�
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸彇娑�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                //宸茬粡閿�鍞�
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Saled__c = true
-                            AND  Dealer_Returned__c =false
-                            AND  Dealer_Info_text__c = :accountName
-                            AND  Bar_Code__c in :BarCodeListP 
-                            AND  Arrive_Owner_Work_Location__c =: userWorkLocation 
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸凡缁忛攢鍞�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                //宸茬粡鍑哄簱浜у搧
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Shipment__c = true
-                            AND   Dealer_Returned__c =false
-                            AND  Dealer_Info_text__c = :accountName
-                            AND  Arrive_Owner_Work_Location__c =: userWorkLocation 
-                            AND  Bar_Code__c in :BarCodeListP  
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                //宸茬粡鍒拌揣浜у搧
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Lose_Flag__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
-                            FROM Consumable_order_details2__c
-                            WHERE Dealer_Arrive__c = true
-                            AND   Dealer_Returned__c =false
-                            AND  Bar_Code__c in :BarCodeListP
-                            AND Dealer_Info_text__c = :accountName
-                            AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ュ晢鍝佸凡缁忓埌璐�';
-                            if (reSet1[i].Lose_Flag__c == TRUE) {
-                                str = '璇ュ晢鍝佸凡缁忎涪澶�';
-                            }
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-                //涓嶅睘浜庢湰璁㈠崟
-                reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
-                                Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
-                                Deliver_date__c,Bar_Code__c,Box_Piece__c,
-                                Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
-                                recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c 
-                            FROM Consumable_order_details2__c
-                            WHERE Consumable_order_minor__c != :ESetId
-                            AND  Bar_Code__c in :BarCodeListP
-                            //AND Dealer_Info_text__c = :accountName
-                            ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '璇ユ秷鑰楀搧涓嶅睘浜庢湰璁㈠崟';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-            //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
-                reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
-                            Consumable_Product__c,Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
-                            Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
-                            Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,CFDA_Status__c,
-                            ProductPacking_list_manual__c,Report_Product_Approbation__c,
-                            Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
-                            Product_Type__c
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                        FROM Consumable_order_details2__c
-                        WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
-                        AND Dealer_Info_text__c = :accountName
-                        AND ( not Product_Type__c  like :userPro_Typestr)
-                        AND Consumable_order_minor__c = :ESetId
-                        AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
-                        AND Dealer_Arrive__c = false
-                        AND Cancellation_Date__c = null
-                        AND Bar_Code__c in :BarCodeListP
-                        ORDER BY Name ];
-                if(reSet1.size()>0){
-                    for (Integer i = 0; i < reSet1.size(); i++) {
-                        if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
-                            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                            continue;
-                        }else{
-                            String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
-                            ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
-                        }
-                    }
-                }
-
-            //鍒拌揣姝g‘淇℃伅
-            reSet = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
-                            Consumable_Product__c,Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
-                            Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
-                            Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,CFDA_Status__c,
-                            ProductPacking_list_manual__c,Report_Product_Approbation__c,
-                            Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
-                            TracingCode__c,
-                            Agencyinfo_fromSAP__c,
-                            Frist_Storage_Agency__c,
-                            Dealer_Info_text__c
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                        FROM Consumable_order_details2__c
-                        WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
-                        AND Dealer_Info_text__c = :accountName
-                        AND Product_Type__c like :userPro_Typestr
-                        AND Consumable_order_minor__c = :ESetId
-                        AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
-                        AND Dealer_Arrive__c = false
-                        AND Cancellation_Date__c = null
-                        AND Bar_Code__c in :BarCodeListP
-                        ORDER BY Name ];
-            if(reSet.size()>0){
-                Map<String,String> errorMap = new Map<String,String>();
-                for (Integer i = 0; i < reSet.size(); i++) {
-                    if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
-                        // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                        continue;
-                    }else{
-                        Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
-                        if(n.find()){
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                            if (reSet[i].TracingCode__c.length() == 5) {
-                                String tr = reSet[i].TracingCode__c;
-                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                    String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            continue;
-                        }
-                            }
-                            // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
-                            // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            // continue;
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                        }
-                        ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
-                        ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
-                        ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                    }
-                }
-            }
-
-            //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
-            reSet = [SELECT Id,
-                            Name,
-                            Intra_Trade_List_RMB__c,
-                            Asset_Model_No__c,
-                            Consumable_Product__c,
-                            Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,
-                            Consumable_Product__r.Asset_Model_No__c,
-                            Sterilization_limit__c,
-                            Deliver_date__c,
-                            Bar_Code__c,
-                            Arrive_date__c,
-                            Send_Date__c,
-                            Box_Piece__c,
-                            Rrturn_count__c,
-                            Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,
-                            Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,
-                            CFDA_Status__c,
-                            ProductPacking_list_manual__c,
-                            Report_Product_Approbation__c,
-                            Report_Product_Expiration__c,
-                            TracingCode__c
-                            ,Agencyinfo_fromSAP__c
-                            ,Frist_Storage_Agency__c
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                        FROM Consumable_order_details2__c
-                        WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
-                        AND Cancellation_Date__c = null
-                        AND Dealer_Arrive__c = false
-                        AND TracingCode__c in :barMcodeMap.values()
-                        AND Bar_Code__c not in :barMcodeMap.keySet()
-                        AND Dealer_Info_text__c = :accountName
-                        AND ((Consumable_order_minor__c != null
-                                AND  Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
-                            OR Consumable_order_minor__c = null)
-                        ORDER BY Name ];
-            if(reSet.size()>0){
-                for (Integer i = 0; i < reSet.size(); i++) {
-                    if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
-                        // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                        continue;
-                    }else{
-                        Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
-                        if(n.find()){
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                            if (reSet[i].TracingCode__c.length() == 5) {
-                                String tr = reSet[i].TracingCode__c;
-                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                    String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
-                            ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            continue;
-                        }
-                            }
-                            // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
-                            // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
-                            // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                            // continue;
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                        }
-                        ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
-                        for(String str : barMcodeMap.keySet()){
-                            if(barMcodeMap.get(str) == reSet[i].TracingCode__c){
-                                reSet[i].Bar_Code__c = str;
-                                ExistIdMap.put(str,str);
-                            }
-                        }
-                        ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
-                        ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
-                    }
-                }
-            }
-            AllMap.putAll(ErrorIdMap);
-            AllMap.putAll(ExistIdMap);
-            //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
-            for(Integer i = 0; i < BarCodeListP.size(); i++){
-                if(AllMap.containsKey(BarCodeListP[i])){
-                    continue;
-                }else if(otherAgencyMap.containsKey(BarCodeListP[i])){
-                    continue;
-                }
-                //add by rentx 2021-01-27 start
-                else if (coc!= null && coc.orderPattern__c == 'hospitalorder') {
-                    HosErrorList.add(BarCodeListP[i]);
-                    continue;
-                    
-                }
-                //add by rentx 2021-01-27 end
-                else{
-                    notInlist.add(BarCodeListP[i]);
-                    otherAgencyMap.put(BarCodeListP[i],BarCodeListP[i]);
-                }
-            }
-            if(notInlist.size()>0){
-                inventoryEntry(notInlist);
-                if(notInStorelist.size() > 0){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        returnError = 'BarCode鍙�'+ notInStorelist + '涓嶅瓨鍦�';
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�'+ notInStorelist + '涓嶅瓨鍦ㄣ��'));
-                    }
-                    return;
-                }
-            }
-        }
-
-        //add by rentx 2021-01-27 start 褰撹鍗曚负鍖婚櫌鐗逛环绫诲瀷鐨勮鍗曟椂,濡傛灉鎵句笉鍒癰arcode,涓嶈В鏋�,骞朵笖榛樿璇arcode瀵瑰簲鐨勬槑缁�2涓洪潪鍖婚櫌鐗逛环浜у搧,鐩存帴鎶ラ敊
-        if (HosErrorList.size() > 0) {
-            for (String str : HosErrorList) {
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    errorList.add('BarCode鍙�:' + str +'鏄潪鍖婚櫌鐗逛环浜у搧');
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�:' + str +'鏄潪鍖婚櫌鐗逛环浜у搧'));
-                }
-                
-            }
-        }
-        //add by rentx 2021-01-27 end
-
-        makeArrivedSummary();
-
-
-        //add by rentx 20210602 start CHAN-C3K4ZQ
-        makeRecordsView(ConsumableorderdetailsRecordsdummy);
-        //add by rentx 20210602 end CHAN-C3K4ZQ
+      }
     }
+    //绠$悊缂栫爜涓虹┖鐨勪骇鍝�
+    reSet1 = [
+      SELECT
+        Id,
+        Name,
+        Consumable_Product__r.Name__c,
+        Consumable_Product__c,
+        Consumable_Product__r.Name,
+        Sterilization_limit__c,
+        Deliver_date__c,
+        Bar_Code__c,
+        Box_Piece__c,
+        Arrive_date__c,
+        Send_Date__c,
+        Consumable_order_minor__r.Name,
+        Consumable_order_minor__c,
+        TracingCode__c,
+        Report_Product_Expiration__c
+      FROM Consumable_order_details2__c
+      WHERE
+        Bar_Code__c IN :BarCodeListP
+        AND Dealer_Info_text__c = :accountName
+        //AND Arrive_Owner_Work_Location__c =: userWorkLocation
+        AND (TracingCode__c = NULL
+        OR TracingCode__c = '')
+      ORDER BY Name
+    ];
 
+    if (reSet1.size() > 0) {
+      for (Integer i = 0; i < reSet1.size(); i++) {
+        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+          // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+          continue;
+        } else {
+          String str = '璇ヤ骇鍝佹病鏈夌鐞嗙紪鐮侊紝鏃犳硶鍏ュ簱';
+          ConsumableorderdetailsRecordserror.add(
+            new ConsumableorderdetailsInfo(reSet1[i], str)
+          );
+          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+        }
+      }
+    }
+    //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '绠$悊缂栫爜涓虹┖鐨勪骇鍝� ' + ErrorIdMap));
+    //鏁翠綋鍒拌揣
+    if (EsetId == null || EsetId == '') {
+      if (ArrType != 'ReG') {
+        //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Intra_Trade_List_RMB__c,
+            Asset_Model_No__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__r.Asset_Model_No__c,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            Dealer_Arrive__c,
+            Guarantee_period_for_products__c,
+            CFDA_Status__c,
+            ProductPacking_list_manual__c,
+            Report_Product_Approbation__c,
+            Report_Product_Expiration__c,
+            Box_Piece__c,
+            Rrturn_count__c,
+            Product_Type__c,
+            ContractNo_text__c /*,ContractNo__c1*/,
+            // tcm start
+            Consumable_order_minor__r.ContractNo__c
+          // tcm end
+          FROM Consumable_order_details2__c
+          WHERE
+            Bar_Code__c IN :BarCodeListP
+            AND (NOT Product_Type__c LIKE :userPro_Typestr)
+            AND Dealer_Info_text__c = :accountName
+            AND ((Consumable_order_minor__c != NULL
+            AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+            OR Consumable_order_minor__c = NULL)
+          ORDER BY Name
+        ];
 
-    public void inventoryEntryNoESetId (List<String> barCodeList){
-        //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
-        List<String> alljanCodeList = new List<String>();
-        List<String> allotCodeList = new List<String>();
-        List<String> barCode01List = new List<String>();
-        List<String> barCode241List = new List<String>();
-        Map<String,Map<String,String>> barJancodeMap = new  Map<String,Map<String,String>>();
-        Map<String,Map<String,String>> barOtcodeMap = new  Map<String,Map<String,String>>();
-        Map<String,List<String>> barcodeinfoMap = new  Map<String,List<String>>();
-        Map<String,String> barcoderightMap = new  Map<String,String>();
-        notInStorelist.clear();
-        for(Integer i = 0; i < barCodeList.size(); i++){
-            Date expirationDate = null ;
-            String serialNoorLotNo = '';
-            String tracingCode = '';
-            String productDateStr = '';
-            Date productionDate = null ;
-            String expirationDateStr = '';
-            if(barCodeList[i].length() >= 3){
-                if(barCodeList[i].substring(0,2) =='01'){
-                    String janCodeMark = '';
-                    //鐢熶骇鏃ユ湡
-                    List<String> janCode = new List<String>();
-                    if(barCodeList[i].length() < 16){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
-                        }
-                        continue;
-                    }else {
-                        //if(barCodeList[i].substring(0,2) !='01'){
-                        //    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode锛屼笉绗﹀悎瑕佹眰锛�'));
-                        //    return;
-                        //}
-                        janCodeMark = barCodeList[i].substring(2,16);
-                        try{
-                            Decimal test  = Decimal.valueOf(janCodeMark);
-                        }catch(Exception e){
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�');
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'));
-                            }
-                            continue;
-                        }
-                    }
-                    if(barCodeList[i].length() >= 22){
-                        if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                errorList.add('浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�');
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
-                            }
-                            continue;
-                        }
-                        if( barCodeList[i].substring(16,18) =='11'){
-                            try{
-                                productDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01' ;
-                                productionDate = Date.valueOf(productDateStr);
-                            }catch(Exception e){
-                                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                if(isLwc){
-                                    errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�');
-                                }else {
-                                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + barCodeList[i] + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
-                                }
-                                continue;
-                            }
-                            if(barCodeList[i].length() >=32){
-                                if( barCodeList[i].substring(24,26) =='17'){
-                                    try{
-                                        if(barCodeList[i].substring(30,32)=='00'){
-                                            expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' + '01' ;
-                                            expirationDate = Date.valueOf(expirationDateStr);
-                                            expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                        }else{
-                                            expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' +barCodeList[i].substring(30,32) ;
-                                        expirationDate = Date.valueOf(expirationDateStr);
-                                        }
-                                    }catch(Exception e){
-                                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                        if(isLwc){
-                                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                        }else {
-                                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                        }
-                                        continue;
-                                    }
-                                    if(barCodeList[i].length() >= 42){
-                                        if(barCodeList[i].substring(32,34) =='10' || barCodeList[i].substring(32,34) =='21'){
-                                            serialNoorLotNo = barCodeList[i].substring(34,barCodeList[i].length() - 8) ;
-                                        }
-                                    }
-                                }else if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
-                                    serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
-                                }
-                            }
-                        }else if(barCodeList[i].substring(16,18) =='17'){
-                            try{
-                                if(barCodeList[i].substring(22,24)=='00'){
-                                    expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01';
-                                    //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
-                                    expirationDate = Date.valueOf(expirationDateStr);
-                                    expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                }else{
-                                    expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-' +barCodeList[i].substring(22,24);
-                                    expirationDate = Date.valueOf(expirationDateStr);
-                                }
-                            }catch(Exception e){
-                                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                if(isLwc){
-                                    errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                }else {
-                                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                }
-                                continue;
-                            }
-                            if(barCodeList[i].length() >= 34){
-                                if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
-                                    serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
-                                }
-                            }
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str =
+                '浜у搧绫诲瀷[' +
+                reSet1[i].Product_Type__c +
+                ']涓庣敤鎴风殑绫诲瀷[' +
+                userPro_Type +
+                ']涓嶇';
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+            }
+          }
+        }
+        //閿�鍞骇鍝�
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            OwnerId,
+            Report_Product_Expiration__c
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Saled__c = TRUE
+            AND Dealer_Returned__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            AND Dealer_Info_text__c = :accountName
+            AND (Arrive_Owner_Work_Location__c = :userWorkLocation
+            OR OwnerId = :System.Label.User_OlympusSystem)
+          ORDER BY Name
+        ];
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str = '';
+              if (reSet1[i].OwnerId == System.Label.User_OlympusSystem) {
+                str = '璇ュ晢鍝佹槸鐩撮攢浜у搧璇峰厛杩斿搧';
+              } else {
+                str = '璇ュ晢鍝佸凡缁忛攢鍞�';
+              }
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+            }
+          }
+        }
+        //鍑哄簱浜у搧
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            Report_Product_Expiration__c
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Shipment__c = TRUE
+            AND Dealer_Returned__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            AND Dealer_Info_text__c = :accountName
+            AND Arrive_Owner_Work_Location__c = :userWorkLocation
+          ORDER BY Name
+        ];
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+            }
+          }
+        }
+        //宸插埌璐т骇鍝�
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Lose_Flag__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            Report_Product_Expiration__c
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Arrive__c = TRUE
+            AND Dealer_Returned__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            AND Dealer_Info_text__c = :accountName
+            AND Arrive_Owner_Work_Location__c = :userWorkLocation
+          ORDER BY Name
+        ];
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str = '璇ュ晢鍝佸凡缁忓埌璐�';
+              if (reSet1[i].Lose_Flag__c == true) {
+                str = '璇ュ晢鍝佸凡缁忎涪澶�';
+              }
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+            }
+          }
+        }
 
-                        }else if(barCodeList[i].length() >= 26){
-                            if(barCodeList[i].substring(16,18) =='10' || barCodeList[i].substring(16,18) =='21'){
-                                serialNoorLotNo = barCodeList[i].substring(18,barCodeList[i].length() - 8) ;
-                            }
-                        }
-                    }
-                    if(barCodeList[i].length() >= 24 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
-                        if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
-                            tracingCode = barCodeList[i].substring(barCodeList[i].length() - 5,barCodeList[i].length());
-                            Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
-                            if(n.find()){
-                                // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                                if (tracingCode.length() == 5) {
-                                    String tr = tracingCode;
-                                    String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                    String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                    String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                    if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                        String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
-                                		if(isLwc){
-                                    		errorList.add('浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�');
-                                		}else {
-                                    		ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'));
-                                		}
-                                		continue;
-                                    }
-                                }
-                            }
-                        }else{
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�');
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'));
-                            }
-                            continue;
-                        }
-                    }
-                    List<String> barcodedetList = new List<String>();
-                    barcodedetList.add(barCodeList[i]);
-                    barcodedetList.add(String.valueOf(expirationDate));
-                    barcodedetList.add(serialNoorLotNo);
-                    barcodedetList.add(tracingCode);
-                    Integer jan1  = Integer.valueOf(janCodeMark.substring(0, 1));
-                    Integer jan2  = Integer.valueOf(janCodeMark.substring(1, 2));
-                    Integer jan3  = Integer.valueOf(janCodeMark.substring(2, 3));
-                    Integer jan4  = Integer.valueOf(janCodeMark.substring(3, 4));
-                    Integer jan5  = Integer.valueOf(janCodeMark.substring(4, 5));
-                    Integer jan6  = Integer.valueOf(janCodeMark.substring(5, 6));
-                    Integer jan7  = Integer.valueOf(janCodeMark.substring(6, 7));
-                    Integer jan8  = Integer.valueOf(janCodeMark.substring(7, 8));
-                    Integer jan9  = Integer.valueOf(janCodeMark.substring(8, 9));
-                    Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
-                    Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
-                    Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
-                    Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
+        //宸叉媶鐩掍骇鍝�
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            Report_Product_Expiration__c
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Arrive__c = TRUE
+            AND Bar_Code__c IN :BarCodeListP
+            AND (Dealer_Info_text__c != :accountName
+            OR (Dealer_Info_text__c = :accountName
+            AND Arrive_Owner_Work_Location__c != :userWorkLocation))
+            AND Box_Piece__c = '涓�'
+          ORDER BY Name
+        ];
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str = '宸叉媶鐩掔殑浜у搧涓嶈兘鍏ュ簱';
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+            }
+          }
+        }
 
-                    Integer count12 = jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
-                    Integer count13 = jan1*3 + jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
-                    String frost12  = (String.valueOf(count12)).substring((String.valueOf(count12)).length()-1);
-                    String frost13  = (String.valueOf(count13)).substring((String.valueOf(count13)).length()-1);
-                    //鍑忓幓12浣嶄釜浣�
-                    frost12 = (String.valueOf(10 - Integer.valueOf(frost12))).substring((String.valueOf(10 - Integer.valueOf(frost12))).length()-1);
-                    frost13 = (String.valueOf(10 - Integer.valueOf(frost13))).substring((String.valueOf(10 - Integer.valueOf(frost13))).length()-1);
-                    janCode.add(janCodeMark.substring(1, 13) + frost12);
-                    janCode.add(janCodeMark.substring(0, 13) + frost12);
-                    janCode.add(janCodeMark.substring(1, 13) + frost13);
-                    janCode.add(janCodeMark.substring(0, 13) + frost13);
-                    alljanCodeList.addAll(janCode);
-                    Map<String,String> janCodeMap = new Map<String,String>();
-                    janCodeMap.put(janCodeMark.substring(1, 13) + frost12,barCodeList[i]);
-                    janCodeMap.put(janCodeMark.substring(0, 13) + frost12,barCodeList[i]);
-                    janCodeMap.put(janCodeMark.substring(1, 13) + frost13,barCodeList[i]);
-                    janCodeMap.put(janCodeMark.substring(0, 13) + frost13,barCodeList[i]);
-                    barJancodeMap.put(barCodeList[i], janCodeMap);
-                    barcodeinfoMap.put(barCodeList[i], barcodedetList);
-                    barCode01List.add(barCodeList[i]);
-                }else if(barCodeList[i].substring(0,3) =='241'){
-                    if(barCodeList[i].length() > 8 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
-                        }
-                        continue;
-                    }
-                    List<String> otCodeList = new List<String>();
-                    Map<String,String> otCodeMap = new Map<String,String>();
-                    if(barCodeList[i].length() < 7){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
-                        }
-                        continue;
-                    }else if(barCodeList[i].length() == 11){
-                        String otCode4 = barCodeList[i].substring(3,7);
-                        String otCode5 = barCodeList[i].substring(3,8);
-                        String otCode6 = barCodeList[i].substring(3,9);
-                        String otCode7 = barCodeList[i].substring(3,10);
-                        String otCode8 = barCodeList[i].substring(3,11);
-                        otCodeList.add(otCode4);
-                        otCodeList.add(otCode5);
-                        otCodeList.add(otCode6);
-                        otCodeList.add(otCode7);
-                        otCodeList.add(otCode8);
-                        otCodeMap.put(otCode4,barCodeList[i]);
-                        otCodeMap.put(otCode5,barCodeList[i]);
-                        otCodeMap.put(otCode6,barCodeList[i]);
-                        otCodeMap.put(otCode7,barCodeList[i]);
-                        otCodeMap.put(otCode8,barCodeList[i]);
-                    }else if(barCodeList[i].length() >= 12){
-                        String otCode4 = barCodeList[i].substring(3,7);
-                        String otCode5 = barCodeList[i].substring(3,8);
-                        String otCode6 = barCodeList[i].substring(3,9);
-                        String otCode7 = barCodeList[i].substring(3,10);
-                        String otCode8 = barCodeList[i].substring(3,11);
-                        String otCode9 = barCodeList[i].substring(3,12);
-                        otCodeList.add(otCode4);
-                        otCodeList.add(otCode5);
-                        otCodeList.add(otCode6);
-                        otCodeList.add(otCode7);
-                        otCodeList.add(otCode8);
-                        otCodeList.add(otCode9);
-                        otCodeMap.put(otCode4,barCodeList[i]);
-                        otCodeMap.put(otCode5,barCodeList[i]);
-                        otCodeMap.put(otCode6,barCodeList[i]);
-                        otCodeMap.put(otCode7,barCodeList[i]);
-                        otCodeMap.put(otCode8,barCodeList[i]);
-                        otCodeMap.put(otCode9,barCodeList[i]);
-                    }
-                    allotCodeList.addAll(otCodeList);
-                    barOtcodeMap.put(barCodeList[i], otCodeMap);
-                    barCode241List.add(barCodeList[i]);
-                }else{
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        errorList.add('浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'));
-                    }
-                    continue;
-                }
-            }else{
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    errorList.add('浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒');
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'));
-                }
+        // 缁忛攢鍟嗕箣闂存垨鑰呭悓涓�缁忛攢鍟嗕笉鍚屽伐浣滃湴璋冭揣
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Asset_Model_No__c,
+            Arrive_Owner_Work_Location__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Box_Piece__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            TracingCode__c,
+            Dealer_Info_text__c,
+            OwnerId,
+            Lose_Flag__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            SerialLotNo__c,
+            Dealer_Arrive__c,
+            Consumable_Arrived_order__r.Dealer_Info__c,
+            Consumable_Arrived_order__r.Dealer_Info__r.Name,
+            Intra_Trade_List_RMB__c,
+            Dealer_Shipment__c,
+            Dealer_Saled__c,
+            Consumable_Product__r.Asset_Model_No__c,
+            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+            SummonsForDirction_det__c,
+            Transfer_Time__c,
+            Frist_Transfer_Agency__c,
+            Agency_Transfer__c,
+            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+            // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
+            Agencyinfo_fromSAP__c,
+            Frist_Storage_Agency__c,
+            // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
+
+            //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+            ContractNo_text__c /*,ContractNo__c */,
+            // tcm start
+            Consumable_order_minor__r.ContractNo__c,
+            // tcm end
+            //add by rentx 2020-10-13 end
+            //add by rentx 2021-03-22 start
+            hospitalSpecialOffer__c,
+            exchangeOutPattern__c,
+            Report_Product_Expiration__c
+          //add by rentx 2021-03-22 end
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Arrive__c = TRUE
+            //AND  Dealer_Shipment__c= false
+            //AND  Dealer_Saled__c = FALSE
+            AND Dealer_Returned__c = FALSE
+            AND Cancellation_Flag__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            //AND (Dealer_Shipment__c = FALSE
+            //        OR (Dealer_Shipment__c = TRUE
+            //            AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣'))
+            AND (Dealer_Info_text__c != :accountName
+            OR (Dealer_Info_text__c = :accountName
+            AND Arrive_Owner_Work_Location__c != :userWorkLocation))
+          // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+          ORDER BY Bar_Code__c, Transfer_Time__c DESC
+          // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+        ];
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              if (otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)) {
                 continue;
-            }
-        }
-        //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
-        //-----------XHL--------------UpdateSTART----------------20181010------
-        if(alljanCodeList.size() > 0){
-            List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
-                                        Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c
-                FROM Product2__c
-                WHERE Product2_Jancode__c in :alljanCodeList
-                order by SFDA_Expiration_Date__c  desc ] ;
-            if(product2InStore.size() > 0){
-                // CHAN-AVSAST
-                Map<String,String> rightBar = new Map<String,String>();
-                Map<String,String> errorMap = new Map<String,String>();
-                for(String bar: barJancodeMap.keySet() ){
-                    Integer cou = 0;
-                    for(Product2__c produ: product2InStore){
-                        if(barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) && !rightBar.containsKey(bar)){
-                            cou ++;
-                            if(EngFlag == TRUE && produ.Pro2_Dealer_ENG__c == TRUE){
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
-                                consumableInventoryUse.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
-                                rightBar.put(bar, bar);
-                            }else if(ETFlag == TRUE && produ.Pro2_Dealer_Object__c == TRUE){   
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
-                                consumableInventoryUse.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
-                                rightBar.put(bar, bar);
-                            }else{
-                                errorMap.put(bar, bar);
-                            }
-                        }
-                        
-                    }
-                    if(cou <= 0 ){
-                        notInStorelist.add(bar);
-                    }
-                }
-                if(errorMap.size() > 0){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        errorList.add('BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴风被鍨媅'+userPro_Type+']涓嶇');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴风被鍨媅'+userPro_Type+']涓嶇'));
-                    }
-                }
-            }
-        }
-        
-        //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
-        if(allotCodeList.size() > 0){
-            Map<String,String> errorMap = new Map<String,String>();
-            Map<String,String> exitBarCodeMap = new Map<String,String>();
-            List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
-                                Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c
-                FROM Product2__c
-                WHERE OT_CODE__c in :allotCodeList 
-                AND (not Product_Type__c like :userPro_Typestr)] ;
-            if(product2InStore.size() > 0){
-                
-                for(Product2__c produ: product2InStore){
-                    for(String bar: barOtcodeMap.keySet() ){
-                        if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
-                            exitBarCodeMap.put(bar,bar);
-                            errorMap.put(bar, bar);
-                        }
-                    }
-                }
-            }
-            if(errorMap.size() > 0){
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    errorList.add('BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴穂'+userPro_Type+']绫诲瀷涓嶇');
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴穂'+userPro_Type+']绫诲瀷涓嶇'));
-                }
-            }
-            product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
-                                Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c
-                FROM Product2__c
-                WHERE OT_CODE__c in :allotCodeList 
-                AND Product_Type__c like :userPro_Typestr] ;
-            
-            if(product2InStore.size() > 0){
-                
-                for(Product2__c produ: product2InStore){
-                    for(String bar: barOtcodeMap.keySet() ){
-                        Date expirationDate = null ;
-                        String serialNoorLotNo = '';
-                        String tracingCode = '';
-                        String productDateStr = '';
-                        Date productionDate = null ;
-                        String expirationDateStr = '';
-                        if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
-                            Integer oTcodeLength = produ.OT_CODE__c.length();
-                                if(bar.length() >= oTcodeLength + 11){
-                                    if( bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='11'){
-                                        try{
-                                            productDateStr = '20' + bar.substring(oTcodeLength + 5,oTcodeLength + 7) + '-' + bar.substring(oTcodeLength + 7,oTcodeLength + 9) + '-01' ;
-                                            productionDate = Date.valueOf(productDateStr);
-                                        }catch(Exception e){
-                                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                            if(isLwc){
-                                                errorList.add('浜у搧BarCode(' + bar + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�');
-                                            }else {
-                                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + bar + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
-                                            }
-                                            continue;
-                                        }
-                                        if(bar.length() >=oTcodeLength + 3 + 16){
-                                            if( bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='17'){
-                                                try{
-                                                    if(bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16)=='00'){
-                                                        expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' + '01' ;
-                                                        expirationDate = Date.valueOf(expirationDateStr);
-                                                        expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                                    }else{
-                                                        expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' +bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16) ;
-                                                    expirationDate = Date.valueOf(expirationDateStr);
-                                                    }
-                                                }catch(Exception e){
-                                                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                                    if(isLwc){
-                                                        errorList.add('浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                                    }else {
-                                                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                                    }
-                                                    continue;
-                                                }
-                                                if(bar.length() >= oTcodeLength + 3 + 25){
-                                                    if(bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='10' || bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='21'){
-                                                        serialNoorLotNo = bar.substring(oTcodeLength + 3 + 18,bar.length() - 8) ;
-                                                        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
-                                                    }
-                                                }
-                                            }else if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
-                                                serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
-                                                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
-                                            }
-                                        }
-                                    }else if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='17'){
-                                        try{
-                                            if(bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8)=='00'){
-                                                expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-01';
-                                                expirationDate = Date.valueOf(expirationDateStr);
-                                                expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                            }else{
-                                                expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-' +bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8);
-                                                expirationDate = Date.valueOf(expirationDateStr);
-                                            }
-                                        }catch(Exception e){
-                                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                            if(isLwc){
-                                                errorList.add('浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                            }else {
-                                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                            }
-                                            continue;
-                                        }
-                                        if(bar.length() >=oTcodeLength + 20){
-                                            if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
-                                                serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
-                                            }
-                                        }
-
-                                    }else if(bar.length() >= oTcodeLength + 12){
-                                        if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='10' || bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='21'){
-                                            serialNoorLotNo = bar.substring(oTcodeLength + 3 + 2,bar.length() - 8) ;
-                                        }
-                                    }
-                                }
-                                if(bar.length() >= oTcodeLength + 3 + 8 && bar.substring(bar.length() - 8,bar.length()-5)=='250'){
-                                    if(bar.substring(bar.length() - 8,bar.length()-5)=='250'){
-                                        tracingCode = bar.substring(bar.length() - 5,bar.length());
-                                        Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
-                                        if(n.find()){
-                                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                                            if (tracingCode.length() == 5) {
-                                                String tr = tracingCode;
-                                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                                    String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
-                                            		//LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                            		if(isLwc){
-                                                		errorList.add('浜у搧BarCode(' + bar + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�');
-                                            		}else {
-                                                		ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'));
-                                            		}
-                                            		continue;
-                                                }
-                                            }
-                                            // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
-                                            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
-                                            // continue;
-                                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end   
-                                        }
-                                    }else{
-                                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                        if(isLwc){
-                                            errorList.add('浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�');
-                                        }else {
-                                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'));
-                                        }
-                                        continue;
-                                    }
-                                }
-                                exitBarCodeMap.put(bar,bar);
-                                List<String> barcodedetList = new List<String>();
-                                barcodedetList.add(bar);
-                                barcodedetList.add(String.valueOf(expirationDate));
-                                barcodedetList.add(serialNoorLotNo);
-                                barcodedetList.add(tracingCode);
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
-                                consumableInventoryUse.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
-                            
-                        }
-                    }
-
-                }
-            }
-            for(String bartxt :barCode241List){
-               if(!exitBarCodeMap.containsKey(bartxt)){
-                 if(!errorMap.containsKey(bartxt)){
-                    notInStorelist.add(bartxt);
-                 } 
-               }
-            }
-        }
-
-    }
-
-
-    public void inventoryEntry (List<String> barCodeList){
-        //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
-        List<String> alljanCodeList = new List<String>();
-        List<String> allotCodeList = new List<String>();
-        List<String> barCode01List = new List<String>();
-        List<String> barCode241List = new List<String>();
-        Map<String,Map<String,String>> barJancodeMap = new  Map<String,Map<String,String>>();
-        Map<String,Map<String,String>> barOtcodeMap = new  Map<String,Map<String,String>>();
-        Map<String,List<String>> barcodeinfoMap = new  Map<String,List<String>>();
-        notInStorelist.clear();
-        notEqualBARcodeCunMap.clear();
-        Map<String,String> orderdetailMap = new Map<String,String>();
-        List<Consumable_Orderdetails__c> orderdetail = [SELECT Id,  Name, Consumable_order__c,
-                            Consumable_Product__c,Asset_Model_No__c
-                        FROM Consumable_Orderdetails__c
-                        WHERE Consumable_order__r.Dealer_Info__c = :accountid
-                        AND Consumable_order__c != null
-                        AND Consumable_order__c = :ESetId
-                        AND Order_Owner_WorkLocal__c = :userWorkLocation
-                        ORDER BY Name ];
-        for(Integer i = 0; i < orderdetail.size(); i++){
-            orderdetailMap.put(orderdetail[i].Consumable_Product__c, orderdetail[i].Consumable_Product__c);
-        }
-
-        for(Integer i = 0; i < barCodeList.size(); i++){
-            Date expirationDate = null ;
-            String serialNoorLotNo = '';
-            String tracingCode = '';
-            String productDateStr = '';
-            Date productionDate = null ;
-            String expirationDateStr = '';
-
-            if(barCodeList[i].substring(0,2) =='01'){
-                String janCodeMark = '';
-                //鐢熶骇鏃ユ湡
-                List<String> janCode = new List<String>();
-                if(barCodeList[i].length() < 16){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
-                    }
-                    continue;
-                }else {
-                    janCodeMark = barCodeList[i].substring(2,16);
-                    try{
-                        Decimal test  = Decimal.valueOf(janCodeMark);
-                    }catch(Exception e){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'));
-                        }
-                        continue;
-                    }
-                }
-                if(barCodeList[i].length() >= 22){
-                    if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
-                        }
-                        continue;
-                    }
-                    if( barCodeList[i].substring(16,18) =='11'){
-                        try{
-                            productDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01' ;
-                            productionDate = Date.valueOf(productDateStr);
-                        }catch(Exception e){
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�');
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + barCodeList[i] + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
-                            }
-                            continue;
-                        }
-                        if(barCodeList[i].length() >=32){
-                            if( barCodeList[i].substring(24,26) =='17'){
-                                try{
-                                    if(barCodeList[i].substring(30,32)=='00'){
-                                        expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' + '01' ;
-                                        expirationDate = Date.valueOf(expirationDateStr);
-                                        expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                    }else{
-                                        expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' +barCodeList[i].substring(30,32) ;
-                                    expirationDate = Date.valueOf(expirationDateStr);
-                                    }
-                                }catch(Exception e){
-                                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                    if(isLwc){
-                                        errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                    }else {
-                                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                    }
-                                    continue;
-                                }
-                                if(barCodeList[i].length() >= 42){
-                                    if(barCodeList[i].substring(32,34) =='10' || barCodeList[i].substring(32,34) =='21'){
-                                        serialNoorLotNo = barCodeList[i].substring(34,barCodeList[i].length() - 8) ;
-                                    }
-                                }
-                            }else if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
-                                serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
-                            }
-                        }
-                    }else if(barCodeList[i].substring(16,18) =='17'){
-                        try{
-                            if(barCodeList[i].substring(22,24)=='00'){
-                                expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01';
-                                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
-                                expirationDate = Date.valueOf(expirationDateStr);
-                                expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                            }else{
-                                expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-' +barCodeList[i].substring(22,24);
-                                expirationDate = Date.valueOf(expirationDateStr);
-                            }
-                        }catch(Exception e){
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                            }
-                            continue;
-                        }
-                        if(barCodeList[i].length() >= 34){
-                            if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
-                                serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
-                            }
-                        }
-
-                    }else if(barCodeList[i].length() >= 26){
-                        if(barCodeList[i].substring(16,18) =='10' || barCodeList[i].substring(16,18) =='21'){
-                            serialNoorLotNo = barCodeList[i].substring(18,barCodeList[i].length() - 8) ;
-                        }
-                    }
-                }
-                if(barCodeList[i].length() >= 24 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
-                    if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
-                        tracingCode = barCodeList[i].substring(barCodeList[i].length() - 5,barCodeList[i].length());
-                        Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
-                        if(n.find()){
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                            if (tracingCode.length() == 5) {
-                                String tr = tracingCode;
-                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                    String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
-                            		//LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            		if(isLwc){
-                                		errorList.add('浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�');
-                            		}else {
-                                		ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'));
-                            		}
-                            		continue;
-                                }
-                            }
-                            // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
-                            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
-                            // continue;
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                        }
-                    }else{
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'));
-                        }
-                        continue;
-                    }
-                }
+              } else {
+                //鍏朵粬缁忛攢鍟嗗嚭搴撲骇鍝佸彲浠ュ叆搴�
                 List<String> barcodedetList = new List<String>();
-                barcodedetList.add(barCodeList[i]);
-                barcodedetList.add(String.valueOf(expirationDate));
-                barcodedetList.add(serialNoorLotNo);
-                barcodedetList.add(tracingCode);
-                Integer jan1  = Integer.valueOf(janCodeMark.substring(0, 1));
-                Integer jan2  = Integer.valueOf(janCodeMark.substring(1, 2));
-                Integer jan3  = Integer.valueOf(janCodeMark.substring(2, 3));
-                Integer jan4  = Integer.valueOf(janCodeMark.substring(3, 4));
-                Integer jan5  = Integer.valueOf(janCodeMark.substring(4, 5));
-                Integer jan6  = Integer.valueOf(janCodeMark.substring(5, 6));
-                Integer jan7  = Integer.valueOf(janCodeMark.substring(6, 7));
-                Integer jan8  = Integer.valueOf(janCodeMark.substring(7, 8));
-                Integer jan9  = Integer.valueOf(janCodeMark.substring(8, 9));
-                Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
-                Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
-                Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
-                Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
-                Integer count12 = jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
-                
-                Integer count13 = jan1*3 + jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
-                String frost12  = (String.valueOf(count12)).substring((String.valueOf(count12)).length()-1);
-                String frost13  = (String.valueOf(count13)).substring((String.valueOf(count13)).length()-1);
-                //鍑忓幓12浣嶄釜浣�4
-                frost12 = (String.valueOf(10 - Integer.valueOf(frost12))).substring((String.valueOf(10 - Integer.valueOf(frost12))).length()-1);
-                frost13 = (String.valueOf(10 - Integer.valueOf(frost13))).substring((String.valueOf(10 - Integer.valueOf(frost13))).length()-1);
-                
-                janCode.add(janCodeMark.substring(1, 13) + frost12);
-                janCode.add(janCodeMark.substring(0, 13) + frost12);
-                janCode.add(janCodeMark.substring(1, 13) + frost13);
-                janCode.add(janCodeMark.substring(0, 13) + frost13);
-                alljanCodeList.addAll(janCode);
-                Map<String,String> janCodeMap = new Map<String,String>();
-                janCodeMap.put(janCodeMark.substring(1, 13) + frost12,barCodeList[i]);
-                janCodeMap.put(janCodeMark.substring(0, 13) + frost12,barCodeList[i]);
-                janCodeMap.put(janCodeMark.substring(1, 13) + frost13,barCodeList[i]);
-                janCodeMap.put(janCodeMark.substring(0, 13) + frost13,barCodeList[i]);
-                barJancodeMap.put(barCodeList[i], janCodeMap);
-                barcodeinfoMap.put(barCodeList[i], barcodedetList);
-                barCode01List.add(barCodeList[i]);
-            }else if(barCodeList[i].substring(0,3) =='241'){
-                if(barCodeList[i].length() > 8 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        errorList.add('浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
-                    }
-                    continue;
+                barcodedetList.add(reSet1[i].Bar_Code__c);
+                barcodedetList.add(
+                  String.valueOf(reSet1[i].Sterilization_limit__c)
+                );
+                barcodedetList.add(reSet1[i].SerialLotNo__c);
+                barcodedetList.add(reSet1[i].TracingCode__c);
+                if (reSet1[i].Lose_Flag__c == false) {
+                  //&& reSet1[i].Dealer_Info_text__c == accountName
+                  consumableorderdetails2Cancle.add(reSet1[i]);
                 }
-                List<String> otCodeList = new List<String>();
-                Map<String,String> otCodeMap = new Map<String,String>();
-                if(barCodeList[i].length() < 7){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        errorList.add('浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
-                    }
-                    continue;
-                }else if(barCodeList[i].length() == 11){
-                    String otCode4 = barCodeList[i].substring(3,7);
-                    String otCode5 = barCodeList[i].substring(3,8);
-                    String otCode6 = barCodeList[i].substring(3,9);
-                    String otCode7 = barCodeList[i].substring(3,10);
-                    String otCode8 = barCodeList[i].substring(3,11);
-                    otCodeList.add(otCode4);
-                    otCodeList.add(otCode5);
-                    otCodeList.add(otCode6);
-                    otCodeList.add(otCode7);
-                    otCodeList.add(otCode8);
-                    otCodeMap.put(otCode4,barCodeList[i]);
-                    otCodeMap.put(otCode5,barCodeList[i]);
-                    otCodeMap.put(otCode6,barCodeList[i]);
-                    otCodeMap.put(otCode7,barCodeList[i]);
-                    otCodeMap.put(otCode8,barCodeList[i]);
-                }else if(barCodeList[i].length() >= 12){
-                    String otCode4 = barCodeList[i].substring(3,7);
-                    String otCode5 = barCodeList[i].substring(3,8);
-                    String otCode6 = barCodeList[i].substring(3,9);
-                    String otCode7 = barCodeList[i].substring(3,10);
-                    String otCode8 = barCodeList[i].substring(3,11);
-                    String otCode9 = barCodeList[i].substring(3,12);
-                    otCodeList.add(otCode4);
-                    otCodeList.add(otCode5);
-                    otCodeList.add(otCode6);
-                    otCodeList.add(otCode7);
-                    otCodeList.add(otCode8);
-                    otCodeList.add(otCode9);
-                    otCodeMap.put(otCode4,barCodeList[i]);
-                    otCodeMap.put(otCode5,barCodeList[i]);
-                    otCodeMap.put(otCode6,barCodeList[i]);
-                    otCodeMap.put(otCode7,barCodeList[i]);
-                    otCodeMap.put(otCode8,barCodeList[i]);
-                    otCodeMap.put(otCode9,barCodeList[i]);
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+                if (
+                  reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' &&
+                  !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)
+                ) {
+                  orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
                 }
-                allotCodeList.addAll(otCodeList);
-                barOtcodeMap.put(barCodeList[i], otCodeMap);
-                barCode241List.add(barCodeList[i]);
-            }else{
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    errorList.add('浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode鎴朞Tcode锛屼笉绗﹀悎瑕佹眰锛�');
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode鎴朞Tcode锛屼笉绗﹀悎瑕佹眰锛�'));
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(reSet1[i], barcodedetList)
+                );
+                Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
+
+                codsIns.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+                codsIns.Intra_Trade_List_RMB__c = reSet1[i]
+                  .Intra_Trade_List_RMB__c;
+                //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+                codsIns.Asset_Model_No__c = reSet1[i].Asset_Model_No__c;
+                codsIns.Direct_Arrive_Product__c = true;
+                codsIns.Sterilization_limit__c = reSet1[i]
+                  .Sterilization_limit__c;
+                codsIns.Consumable_Product__c = reSet1[i].Consumable_Product__c;
+                codsIns.Bar_Code__c = reSet1[i].Bar_Code__c;
+                codsIns.SerialLotNo__c = reSet1[i].SerialLotNo__c;
+                codsIns.TracingCode__c = reSet1[i].TracingCode__c;
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+                codsIns.Transfer_Time__c = reSet1[i].Transfer_Time__c == null
+                  ? 1
+                  : reSet1[i].Transfer_Time__c;
+                codsIns.Frist_Transfer_Agency__c = reSet1[i]
+                    .Frist_Transfer_Agency__c == null
+                  ? reSet1[i].Dealer_Info_text__c
+                  : reSet1[i].Frist_Transfer_Agency__c;
+                codsIns.Agency_Transfer__c = true;
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+                codsIns.Agencyinfo_fromSAP__c = reSet1[i].Agencyinfo_fromSAP__c;
+                codsIns.Frist_Storage_Agency__c = reSet1[i]
+                  .Frist_Storage_Agency__c;
+                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+                //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,璁板綍SAP鍚堝悓鍙�
+                // update tcm start
+                if (
+                  String.isBlank(
+                    reSet1[i].Consumable_order_minor__r.ContractNo__c
+                  )
+                ) {
+                  codsIns.ContractNo_text__c = reSet1[i].ContractNo_text__c;
+                } else {
+                  codsIns.ContractNo_text__c = reSet1[i]
+                    .Consumable_order_minor__r.ContractNo__c;
                 }
+                // update tcm end
+                //add by rentx 2020-10-13 end
+
+                //add by rentx 2021-03-22 start
+                // if (reSet1[i].Lose_Flag__c == true){
+                if (
+                  reSet1[i].hospitalSpecialOffer__c == true &&
+                  reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'
+                ) {
+                  codsIns.exchangeOutPattern__c = true;
+                }
+                //add by rentx 2021-03-22 end
+
+                consumableorderdetails2Insert.add(codsIns);
+                otherAgencyMap.put(
+                  reSet1[i].Bar_Code__c,
+                  reSet1[i].Bar_Code__c
+                );
+                //String str = '璇ュ晢鍝佸湪鍏朵粬缁忛攢鍟嗗簱瀛�';
+                //ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+                //ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+              }
+            }
+          }
+        }
+
+        //鍙戦敊搴� 鏈埌璐�
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Asset_Model_No__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            TracingCode__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            SerialLotNo__c,
+            Dealer_Arrive__c,
+            Dealer_Shipment__c,
+            Dealer_Saled__c,
+            Consumable_Product__r.Asset_Model_No__c,
+            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+            SummonsForDirction_det__c,
+            Transfer_Time__c,
+            Frist_Transfer_Agency__c,
+            Agency_Transfer__c,
+            Dealer_Info_text__c,
+            Intra_Trade_List_RMB__c,
+            // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+            // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
+            Agencyinfo_fromSAP__c,
+            Frist_Storage_Agency__c,
+            // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
+            //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+            ContractNo_text__c /*,ContractNo__c*/,
+            // tcm start
+            Consumable_order_minor__r.ContractNo__c,
+            // tcm end
+            //add by rentx 2020-10-13 end   浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+            hospitalSpecialOffer__c,
+            exchangeOutPattern__c,
+            Lose_Flag__c,
+            Report_Product_Expiration__c
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Arrive__c = FALSE
+            AND Dealer_Shipment__c = FALSE
+            AND Dealer_Saled__c = FALSE
+            //AND  Cancellation_Flag__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            AND (Dealer_Info_text__c != :accountName
+            OR (Dealer_Info_text__c = :accountName
+            AND ((Consumable_order_minor__c != NULL
+            AND (Consumable_order_minor__r.Order_Owner_WorkLocal__c != :userWorkLocation
+            OR (Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+            AND Cancellation_Flag__c = TRUE)))
+            OR (Consumable_order_minor__c = NULL
+            AND Cancellation_Flag__c = TRUE))))
+          // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+          ORDER BY Bar_Code__c, Transfer_Time__c DESC
+          // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+        ];
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              if (otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)) {
                 continue;
+              } else {
+                //鍙栨秷鏄庣粏
+                List<String> barcodedetList = new List<String>();
+                barcodedetList.add(reSet1[i].Bar_Code__c);
+                barcodedetList.add(
+                  String.valueOf(reSet1[i].Sterilization_limit__c)
+                );
+                barcodedetList.add(reSet1[i].SerialLotNo__c);
+                barcodedetList.add(reSet1[i].TracingCode__c);
+                // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
+                //if (reSet1[i].Consumable_order_minor__c == null) {
+                consumableorderdetails2Cancle.add(reSet1[i]);
+                //}
+                // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+                if (
+                  reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' &&
+                  !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)
+                ) {
+                  orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
+                }
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(reSet1[i], barcodedetList)
+                );
+                Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
+
+                codsIns.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+                codsIns.Intra_Trade_List_RMB__c = reSet1[i]
+                  .Intra_Trade_List_RMB__c;
+                //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+                codsIns.Asset_Model_No__c = reSet1[i].Asset_Model_No__c;
+                codsIns.Direct_Arrive_Product__c = true;
+                codsIns.Sterilization_limit__c = reSet1[i]
+                  .Sterilization_limit__c;
+                codsIns.Consumable_Product__c = reSet1[i].Consumable_Product__c;
+                codsIns.Bar_Code__c = reSet1[i].Bar_Code__c;
+                codsIns.SerialLotNo__c = reSet1[i].SerialLotNo__c;
+                codsIns.TracingCode__c = reSet1[i].TracingCode__c;
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+                // 娌℃湁鍏ュ簱鏃讹紝娌℃湁鍊熻皟淇℃伅
+                codsIns.Transfer_Time__c = reSet1[i].Transfer_Time__c;
+                codsIns.Frist_Transfer_Agency__c = reSet1[i]
+                  .Frist_Transfer_Agency__c;
+                codsIns.Agency_Transfer__c = reSet1[i].Agency_Transfer__c;
+                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+                codsIns.Agencyinfo_fromSAP__c = reSet1[i].Agencyinfo_fromSAP__c;
+                codsIns.Frist_Storage_Agency__c = reSet1[i]
+                  .Frist_Storage_Agency__c;
+                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+                //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+                // update tcm start
+                if (
+                  String.isBlank(
+                    reSet1[i].Consumable_order_minor__r.ContractNo__c
+                  )
+                ) {
+                  codsIns.ContractNo_text__c = reSet1[i].ContractNo_text__c;
+                } else {
+                  codsIns.ContractNo_text__c = reSet1[i]
+                    .Consumable_order_minor__r.ContractNo__c;
+                }
+                // update tcm end
+                //add by rentx 2020-10-13 end   浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+
+                //add by rentx 2021-03-22 start
+                // if (reSet1[i].Lose_Flag__c == true){
+                if (
+                  reSet1[i].hospitalSpecialOffer__c == true &&
+                  reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'
+                ) {
+                  codsIns.exchangeOutPattern__c = true;
+                }
+                //add by rentx 2021-03-22 end
+
+                consumableorderdetails2Insert.add(codsIns);
+                otherAgencyMap.put(
+                  reSet1[i].Bar_Code__c,
+                  reSet1[i].Bar_Code__c
+                );
+              }
             }
+          }
         }
-        //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
-        Map<String,String> rightBar = new Map<String,String>();
-        if(alljanCodeList.size() > 0){
-            Map<String,String> exitBarCodeMap = new Map<String,String>();
-            List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
-                                            Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c,
-                                            Product_Type__c                                      
-                                                 FROM Product2__c
-                                                 WHERE Product2_Jancode__c in :alljanCodeList
-                                                 AND (not Product_Type__c like :userPro_Typestr)
-                                                 order by SFDA_Expiration_Date__c  desc ] ;
-            if(product2InStore.size() > 0){
-                Map<String,String> errorMap = new Map<String,String>();
-                for(Product2__c produ: product2InStore){
-                    for(String bar: barJancodeMap.keySet() ){
-                        if(barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) && !rightBar.containsKey(bar)){
-                            exitBarCodeMap.put(bar,bar);
-                            errorMap.put(bar, bar);
-                        }
+      } else {
+        //杩斿搧妫�鏌�
+        //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Intra_Trade_List_RMB__c,
+            Asset_Model_No__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__r.Asset_Model_No__c,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            Dealer_Arrive__c,
+            Guarantee_period_for_products__c,
+            CFDA_Status__c,
+            ProductPacking_list_manual__c,
+            Report_Product_Approbation__c,
+            Report_Product_Expiration__c,
+            Box_Piece__c,
+            Rrturn_count__c,
+            Product_Type__c,
+            //add by rentx 2020-10-14 start
+            ContractNo_text__c /*,ContractNo__c*/,
+            // tcm start
+            Consumable_order_minor__r.ContractNo__c
+          // tcm end
+          //add by rentx 2020-10-14 end
+          FROM Consumable_order_details2__c
+          WHERE
+            Bar_Code__c IN :BarCodeListP
+            AND (NOT Product_Type__c LIKE :userPro_Typestr)
+            AND Dealer_Info_text__c = :accountName
+            AND ((Consumable_order_minor__c != NULL
+            AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+            OR Consumable_order_minor__c = NULL)
+          ORDER BY Name
+        ];
 
-                    }
-                }
-                if(errorMap.size() > 0){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        errorList.add('BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇'));
-                    }
-                }
-            }                                   
-            product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
-                                            Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c,
-                                            Product_Type__c                                      
-                                                 FROM Product2__c
-                                                 WHERE Product2_Jancode__c in :alljanCodeList
-                                                 AND Product_Type__c like :userPro_Typestr
-                                                 order by SFDA_Expiration_Date__c  desc ] ;
-            if(product2InStore.size() > 0){
-                Map<String,String> errorMap = new Map<String,String>();
-                for(Product2__c produ: product2InStore){
-                    for(String bar: barJancodeMap.keySet() ){
-                        if(barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) && !rightBar.containsKey(bar)){
-                            exitBarCodeMap.put(bar,bar); 
-                            if(orderdetailMap.containsKey(produ.Id)){
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
-                                rightBar.put(bar, bar);
-                            }else{
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
-                                rightBar.put(bar, bar);
-                                list<String> overOrderBARcodeCunList = new list<String>();
-                                if(notEqualBARcodeCunMap.containsKey(produ.Id)){
-                                    overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id).clone();
-                                    overOrderBARcodeCunList.add(bar);
-                                    notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
-                                }else{
-                                    overOrderBARcodeCunList.add(bar);
-                                    notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
-                                }
-                            }
-                            
-                        }
-                    }
-                }
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str =
+                '浜у搧绫诲瀷[' +
+                reSet1[i].Product_Type__c +
+                ']涓庣敤鎴风殑绫诲瀷[' +
+                userPro_Type +
+                ']涓嶇';
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
             }
-            for(String bartxt :barCode01List){
-               if(!exitBarCodeMap.containsKey(bartxt)){
-                  notInStorelist.add(bartxt);
-               }
-            }
-            
+          }
         }
-
-        //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
-        if(allotCodeList.size() > 0){
-            Map<String,String> exitBarCodeMap = new Map<String,String>();
-            Map<String,String> errorMap = new Map<String,String>();
-            List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,
-                                            Pro2_Dealer_Object__c,Pro2_Dealer_ENG__c
-                                                     FROM Product2__c
-                                                     WHERE OT_CODE__c in :allotCodeList 
-                                                     AND (not Product_Type__c like :userPro_Typestr)] ;
-            if(product2InStore.size() > 0){
-                for(Product2__c produ: product2InStore){
-                    for(String bar: barOtcodeMap.keySet() ){
-                        if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
-                            exitBarCodeMap.put(bar,bar);
-                            errorMap.put(bar, bar);
-                        }
-                    }
-                }
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            //add by rentx 2020-10-14 start
+            ContractNo_text__c /*,ContractNo__c*/,
+            // tcm start
+            Consumable_order_minor__r.ContractNo__c,
+            // tcm end
+            Report_Product_Expiration__c
+          //add by rentx 2020-10-14 end
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Arrive__c = FALSE
+            AND Dealer_Shipment__c = FALSE
+            AND Dealer_Saled__c = FALSE
+            // gzw fix 鍙栨秷浜у搧鍒ゆ柇涓烘湭鍏ュ簱 20230323
+            AND Cancellation_Flag__c = FALSE
+            AND Dealer_Returned__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            AND Dealer_Info_text__c = :accountName
+          ORDER BY Name
+        ]; //娌″埌璐�
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              String str = '璇ュ晢鍝佸皻鏈叆搴�';
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(reSet1[i], str)
+              );
+              ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
             }
-            if(errorMap.size() > 0){
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    errorList.add('BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴穂'+userPro_Type+']绫诲瀷涓嶇');
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴穂'+userPro_Type+']绫诲瀷涓嶇'));
-                }
-            }
-            product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,
-                                            Pro2_Dealer_Object__c,Pro2_Dealer_ENG__c
-                                                     FROM Product2__c
-                                                     WHERE OT_CODE__c in :allotCodeList 
-                                                     AND Product_Type__c like :userPro_Typestr] ;
-            
-            if(product2InStore.size() > 0){
-                for(Product2__c produ: product2InStore){
-                    for(String bar: barOtcodeMap.keySet() ){
-                        Date expirationDate = null ;
-                        String serialNoorLotNo = '';
-                        String tracingCode = '';
-                        String productDateStr = '';
-                        Date productionDate = null ;
-                        String expirationDateStr = '';
-                        Integer oTcodeLength = produ.OT_CODE__c.length();
-
-                        if(bar.length() >= oTcodeLength + 11){
-                            if( bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='11'){
-                                try{
-                                    productDateStr = '20' + bar.substring(oTcodeLength + 5,oTcodeLength + 7) + '-' + bar.substring(oTcodeLength + 7,oTcodeLength + 9) + '-01' ;
-                                    productionDate = Date.valueOf(productDateStr);
-                                }catch(Exception e){
-                                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                    if(isLwc){
-                                        errorList.add('浜у搧BarCode(' + bar + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�');
-                                    }else {
-                                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  '浜у搧BarCode(' + bar + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
-                                    }
-                                    continue;
-                                }
-                                if(bar.length() >=oTcodeLength + 3 + 16){
-                                    //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode17' + bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10)));
-                                    if( bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='17'){
-                                        try{
-                                            if(bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16)=='00'){
-                                                expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' + '01' ;
-                                                expirationDate = Date.valueOf(expirationDateStr);
-                                                expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                            }else{
-                                                expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' +bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16) ;
-                                            expirationDate = Date.valueOf(expirationDateStr);
-                                            }
-                                        }catch(Exception e){
-                                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                            if(isLwc){
-                                                errorList.add('浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                            }else {
-                                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                            }
-                                            continue;
-                                        }
-                                        if(bar.length() >= oTcodeLength + 3 + 25){
-                                            if(bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='10' || bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='21'){
-                                                serialNoorLotNo = bar.substring(oTcodeLength + 3 + 18,bar.length() - 8) ;
-                                                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
-                                            }
-                                        }
-                                    }else if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
-                                        serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
-                                        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
-                                    }
-                                }
-                            }else if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='17'){
-                                try{
-                                    if(bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8)=='00'){
-                                        expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-01';
-                                        expirationDate = Date.valueOf(expirationDateStr);
-                                        expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
-                                    }else{
-                                        expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-' +bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8);
-                                        expirationDate = Date.valueOf(expirationDateStr);
-                                    }
-                                }catch(Exception e){
-                                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                    if(isLwc){
-                                        errorList.add('浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�');
-                                    }else {
-                                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
-                                    }
-                                    continue;
-                                }
-                                if(bar.length() >=oTcodeLength + 20){
-                                    if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
-                                        serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
-                                    }
-                                }
-
-                            }else if(bar.length() >= oTcodeLength + 12){
-                                if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='10' || bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='21'){
-                                    serialNoorLotNo = bar.substring(oTcodeLength + 3 + 2,bar.length() - 8) ;
-                                }
-                            }
-                        }
-                        if(bar.length() >= oTcodeLength + 3 + 8 && bar.substring(bar.length() - 8,bar.length()-5)=='250'){
-                            if(bar.substring(bar.length() - 8,bar.length()-5)=='250'){
-                                tracingCode = bar.substring(bar.length() - 5,bar.length());
-                                Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
-                                if(n.find()){
-                                    // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                                    if (tracingCode.length() == 5) {
-                                        String tr = tracingCode;
-                                        String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                        String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                        String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                        if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                            String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
-                                    		//LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                    		if(isLwc){
-                                        		errorList.add('浜у搧BarCode(' + bar + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�');
-                                    		}else {
-                                        		ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'));
-                                    		}
-                                    		continue;
-                                        }
-                                    }
-                                    // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
-                                    // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
-                                    // continue;
-                                    // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                                }
-                            }else{
-                                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                                if(isLwc){
-                                    errorList.add('浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�');
-                                }else {
-                                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'));
-                                }
-                                continue;
-                            }
-                        }
-                        List<String> barcodedetList = new List<String>();
-                        barcodedetList.add(bar);
-                        barcodedetList.add(String.valueOf(expirationDate));
-                        barcodedetList.add(serialNoorLotNo);
-                        barcodedetList.add(tracingCode);
-                        if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
-                            exitBarCodeMap.put(bar,bar);
-                            
-                            if(orderdetailMap.containsKey(produ.Id)){
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
-                            }else{
-                                consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
-                                list<String> overOrderBARcodeCunList = new list<String>();
-                                if(notEqualBARcodeCunMap.containsKey(produ.Id)){
-                                    overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id).clone();
-                                    overOrderBARcodeCunList.add(bar);
-                                    notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
-                                }else{
-                                    overOrderBARcodeCunList.add(bar);
-                                    notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
-                                }
-                            } 
- 
-                        }
-                    }
-                }
-            }
-
-            for(String bartxt :barCode241List){
-               if(!exitBarCodeMap.containsKey(bartxt)){
-                    if(!errorMap.containsKey(bartxt)){
-                        notInStorelist.add(bartxt);
-                    }
-               }
-            }
+          }
         }
-        //鍒ゆ柇浜у搧鏄惁涓�鑷�
-        if(notEqualBARcodeCunMap.size() > 0){
-            for(String widget : notEqualBARcodeCunMap.keySet()) {
-                if(notEqualBARcodeCunMap.get(widget).size() >0){
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        warningList.add('浠ヤ笅barcode浜у搧涓庤璐т骇鍝佷笉涓�鑷淬��');
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '浠ヤ笅barcode浜у搧涓庤璐т骇鍝佷笉涓�鑷淬��'));
-                    }
-                    for(String barcodeListTTT : (List<String>)notEqualBARcodeCunMap.get(widget)) {
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            warningList.add(barcodeListTTT);
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT));
-                        }
-                    }
-                }
+        reSet1 = [
+          SELECT
+            Id,
+            Name,
+            Consumable_Product__r.Name__c,
+            ToDueDateDays__c,
+            Consumable_Product__c,
+            Consumable_Product__r.Name,
+            Sterilization_limit__c,
+            Deliver_date__c,
+            Bar_Code__c,
+            Lose_Flag__c,
+            Box_Piece__c,
+            Arrive_date__c,
+            Send_Date__c,
+            Consumable_order_minor__r.Name,
+            Consumable_order_minor__c,
+            recordtypeid,
+            Consumable_order_minor__r.Arrive_Order__c,
+            //add by rentx 2020-10-14 start
+            ContractNo_text__c /*,ContractNo__c*/,
+            // tcm start
+            Consumable_order_minor__r.ContractNo__c,
+            // tcm end
+            Report_Product_Expiration__c
+          //add by rentx 2020-10-14 end
+          FROM Consumable_order_details2__c
+          WHERE
+            Dealer_Arrive__c = TRUE
+            AND Dealer_Shipment__c = FALSE
+            AND Dealer_Saled__c = FALSE
+            AND Bar_Code__c IN :BarCodeListP
+            AND Dealer_Returned__c = FALSE
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+            //AND  Lose_Flag__c = FALSE
+            // AND  Lose_Flag__c = FALSE
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+            AND Dealer_Info_text__c = :accountName
+            AND Arrive_Owner_Work_Location__c = :userWorkLocation
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+            // Gzw 20201215淇锛屾媶鐩掍骇鍝佷笉鍒ゆ柇
+            AND Box_Piece__c = '鐩�'
+          // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+          ORDER BY Name
+        ]; //娌″嚭搴擄紝娌¢攢鍞紝灏辨槸鍦ㄥ簱
+        if (reSet1.size() > 0) {
+          for (Integer i = 0; i < reSet1.size(); i++) {
+            if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+              // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+              continue;
+            } else {
+              // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+              // String str = '璇ュ晢鍝佸湪搴�';
+              // if (reSet1[i].Lose_Flag__c) {
+              //     str = '璇ュ晢鍝佷涪澶�';
+              // }
+              String str = '';
+              if (reSet1[i].Lose_Flag__c == false) {
+                str = '璇ュ晢鍝佸湪搴�'; //娌″嚭搴� 锛屾病閿�鍞紝娌′涪澶卞氨鏄湪搴撱��
+              }
+              if (
+                reSet1[i].Lose_Flag__c == true &&
+                reSet1[i].ToDueDateDays__c >= 0
+              ) {
+                ApexPages.addmessage(
+                  new ApexPages.message(
+                    ApexPages.severity.WARNING,
+                    '浜у搧' +
+                      reSet1[i].Consumable_Product__r.Name +
+                      '瀛樺湪涓㈠け璁板綍'
+                  )
+                ); //濡傛灉涓㈠け浜у搧灏辩粰鎻愮ず銆�
+              }
+              if (
+                reSet1[i].Lose_Flag__c == true &&
+                reSet1[i].ToDueDateDays__c < 0
+              ) {
+                str = '杩囨湡宸查攢瀛樹骇鍝侊紝涓嶅厑璁歌繑鍝�';
+              }
+              if (str != '') {
+                ConsumableorderdetailsRecordserror.add(
+                  new ConsumableorderdetailsInfo(reSet1[i], str)
+                );
+                ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+              }
+              // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+              // ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+              // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
             }
+          }
         }
+      }
+
+      //鍒拌揣姝g‘淇℃伅
+      reSet = [
+        SELECT
+          Id,
+          Name,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__r.Asset_Model_No__c,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Box_Piece__c,
+          Rrturn_count__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          Dealer_Arrive__c,
+          Guarantee_period_for_products__c,
+          CFDA_Status__c,
+          ProductPacking_list_manual__c,
+          Report_Product_Approbation__c,
+          Report_Product_Expiration__c,
+          Consumable_Product__r.Pro2_Dealer_ENG__c,
+          Consumable_Product__r.Pro2_Dealer_Object__c,
+          TracingCode__c,
+          Agencyinfo_fromSAP__c,
+          Frist_Storage_Agency__c,
+          Dealer_Info_text__c,
+          //add by rentx 2020-10-14 start
+          ContractNo_text__c /*,ContractNo__c*/,
+          // tcm start
+          Consumable_order_minor__r.ContractNo__c
+        // tcm end
+        //add by rentx 2020-10-14 end
+        FROM Consumable_order_details2__c
+        WHERE
+          recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+          AND Cancellation_Date__c = NULL
+          AND Dealer_Arrive__c = FALSE
+          AND Product_Type__c LIKE :userPro_Typestr
+          AND Bar_Code__c IN :BarCodeListP
+          AND Dealer_Info_text__c = :accountName
+          AND ((Consumable_order_minor__c != NULL
+          AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+          OR Consumable_order_minor__c = NULL)
+        ORDER BY Name
+      ];
+
+      if (reSet.size() > 0) {
+        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ErrorIdMap+++ '+ ErrorIdMap.keyset()));
+        Map<String, String> errorMap = new Map<String, String>();
+        for (Integer i = 0; i < reSet.size(); i++) {
+          if (
+            ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
+            ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
+          ) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            Matcher n = Pattern.compile('[0-9]')
+              .matcher(reSet[i].TracingCode__c);
+            if (n.find()) {
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+              if (reSet[i].TracingCode__c.length() == 5) {
+                String tr = reSet[i].TracingCode__c;
+                String Ctr = tr.substring(tr.length() - 3, tr.length());
+                String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                if (
+                  Pattern.compile('[0-9]').matcher(Atr).find() ||
+                  Pattern.compile('[0-9]').matcher(Ctr).find()
+                ) {
+                  String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                  ConsumableorderdetailsRecordserror.add(
+                    new ConsumableorderdetailsInfo(reSet[i], str)
+                  );
+                  ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+                  continue;
+                }
+              }
+              // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+              // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+              // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+              // continue;
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+            }
+            if (otherAgencyMap.containsKey(reSet[i].Bar_Code__c)) {
+              for (Integer j = 0; j < consumableInventory.size(); j++) {
+                ConsumableorderdetailsInfo codInfo = consumableInventory.get(j);
+                if (codInfo.barCodeNo == reSet[i].Bar_Code__c) {
+                  consumableInventory.remove(j);
+                  break;
+                }
+              }
+              for (
+                Integer m = 0; m < consumableorderdetails2Insert.size(); m++
+              ) {
+                Consumable_order_details2__c cod2 = consumableorderdetails2Insert.get(
+                  m
+                );
+                if (cod2.Bar_Code__c == reSet[i].Bar_Code__c) {
+                  consumableorderdetails2Insert.remove(m);
+                  break;
+                }
+              }
+            }
+            //orderId.add(reSet[i].Consumable_order_minor__c);
+            //prodName.add(reSet[i].Consumable_Product__r.Name);
+            ConsumableorderdetailsRecordsdummy.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+            ConsumableorderdetailsRecords.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+            ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+          }
+        }
+      }
+      //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
+      reSet = [
+        SELECT
+          Id,
+          Name,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__r.Asset_Model_No__c,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          Dealer_Arrive__c,
+          Guarantee_period_for_products__c,
+          CFDA_Status__c,
+          ProductPacking_list_manual__c,
+          Report_Product_Approbation__c,
+          Report_Product_Expiration__c,
+          Box_Piece__c,
+          Rrturn_count__c,
+          TracingCode__c,
+          Agencyinfo_fromSAP__c,
+          Frist_Storage_Agency__c,
+          //add by rentx 2020-10-14 start
+          ContractNo_text__c /*,ContractNo__c */,
+          // tcm start
+          Consumable_order_minor__r.ContractNo__c
+        // tcm end
+        //add by rentx 2020-10-14 end
+        FROM Consumable_order_details2__c
+        WHERE
+          recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+          AND Dealer_Info_text__c = :accountName
+          //update by rentx 2021-01-04 start CHAN-BWX3XW
+          // AND Consumable_order_minor__c != null
+          // AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+          AND ((Consumable_order_minor__c != NULL
+          AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+          OR Consumable_order_minor__c = NULL)
+          //update by rentx 2021-01-04 end CHAN-BWX3XW
+          AND Dealer_Arrive__c = FALSE
+          AND Cancellation_Date__c = NULL
+          AND TracingCode__c IN :barMcodeMap.values()
+          AND Bar_Code__c NOT IN :barMcodeMap.keySet()
+        ORDER BY Name
+      ];
+
+      if (reSet.size() > 0) {
+        for (Integer i = 0; i < reSet.size(); i++) {
+          if (
+            ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
+            ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
+          ) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            Matcher n = Pattern.compile('[0-9]')
+              .matcher(reSet[i].TracingCode__c);
+            if (n.find()) {
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+              if (reSet[i].TracingCode__c.length() == 5) {
+                String tr = reSet[i].TracingCode__c;
+                String Ctr = tr.substring(tr.length() - 3, tr.length());
+                String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                if (
+                  Pattern.compile('[0-9]').matcher(Atr).find() ||
+                  Pattern.compile('[0-9]').matcher(Ctr).find()
+                ) {
+                  String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                  ConsumableorderdetailsRecordserror.add(
+                    new ConsumableorderdetailsInfo(reSet[i], str)
+                  );
+                  ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+                  continue;
+                }
+              }
+              // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+              // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+              // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+              // continue;
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+            }
+            ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+            for (String str : barMcodeMap.keySet()) {
+              // BarCode涓嶄竴鑷存椂鐨勮鍛婁俊鎭�
+              if (
+                reSet[i].Bar_Code__c != str &&
+                reSet[i].TracingCode__c == barMcodeMap.get(str)
+              ) {
+                // 20220815 ljh SWAG-CH65B7 start
+                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'姝ょ鐞嗙紪鐮佷笌瀹為檯鍙戣揣BarCode涓嶄竴鑷达紝璇锋牳瀵圭鐞嗙紪鐮�('+ str +')鐨勫叆搴撳強搴撳瓨鏁版嵁銆�'));
+                ApexPages.addmessage(
+                  new ApexPages.message(
+                    ApexPages.severity.WARNING,
+                    '鏉″舰鐮佷负(' + str + ')鐨勫叆搴撴暟鎹笌鍙戣揣鏁版嵁涓嶄竴鑷�'
+                  )
+                );
+                // 20220815 ljh SWAG-CH65B7 end
+              }
+              if (barMcodeMap.get(str) == reSet[i].TracingCode__c) {
+                reSet[i].Bar_Code__c = str;
+                //=====================================
+                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'鍏ュ簱BarCode('+ str +')鍜屽簱瀛樻潯鐮佷笉涓�鑷淬��'));
+                ExistIdMap.put(str, str);
+              }
+            }
+            ConsumableorderdetailsRecordsdummy.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+            ConsumableorderdetailsRecords.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+          }
+        }
+      }
+
+      // CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘  杩藉姞 barcode涓嶄竴鑷村垽鏂�
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          TracingCode__c,
+          Bar_Code__c,
+          Sale_orderName__c,
+          Report_Product_Expiration__c
+        FROM Consumable_order_details2__c
+        WHERE
+          Dealer_Arrive__c = TRUE
+          AND (Dealer_Shipment__c = TRUE
+          OR Dealer_Saled__c = TRUE)
+          AND TracingCode__c IN :barMcodeMap.values()
+          AND Bar_Code__c NOT IN :barMcodeMap.keySet()
+          AND Dealer_Info_text__c = :accountName
+          AND Arrive_Owner_Work_Location__c = :userWorkLocation
+        ORDER BY Name
+      ];
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            for (String str : barMcodeMap.keySet()) {
+              if (barMcodeMap.get(str) == reSet1[i].TracingCode__c) {
+                ApexPages.addmessage(
+                  new ApexPages.message(
+                    ApexPages.severity.ERROR,
+                    'barcode' +
+                      str +
+                      '涓庡嚭搴撳崟' +
+                      reSet1[i].Sale_orderName__c +
+                      ' 涓殑绠$悊缂栫爜涓�鑷达紝浣咮arcode涓嶅悓锛岃纭鍏蜂綋鏁版嵁銆�'
+                  )
+                );
+                ErrorIdMap.put(str, str);
+                ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+              }
+            }
+          }
+        }
+      }
+      integer RGcnt = GoodsReturnCheck();
+      AllMap.putAll(ErrorIdMap);
+      AllMap.putAll(ExistIdMap);
+      if (RGcnt > 0) {
+        for (String str : GrList) {
+          AllMap.put(str, str);
+        }
+      }
+      //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
+      //return;
+      for (Integer i = 0; i < BarCodeListP.size(); i++) {
+        if (AllMap.containsKey(BarCodeListP[i])) {
+          continue;
+        } else if (otherAgencyMap.containsKey(BarCodeListP[i])) {
+          continue;
+        }
+        //add by rentx 2021-01-27 start
+        else if (coc != null && coc.orderPattern__c == 'hospitalorder') {
+          HosErrorList.add(BarCodeListP[i]);
+          continue;
+        }
+        //add by rentx 2021-01-27 end
+        else {
+          notInlist.add(BarCodeListP[i]);
+          otherAgencyMap.put(BarCodeListP[i], BarCodeListP[i]);
+        }
+      }
+      //  CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘
+      if (notInlist.size() > 0) {
+        if (ArrType != 'ReG') {
+          inventoryEntryNoESetId(notInlist);
+          if (notInStorelist.size() > 0) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                'BarCode鍙�' + notInStorelist + '涓嶅瓨鍦ㄣ��'
+              )
+            );
+            return;
+          }
+        } else {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              'BarCode鍙�' +
+                notInlist +
+                '涓嶅瓨鍦紝鏃犲搴旂殑鍑哄簱鍗曪紝璇峰厛鎿嶄綔浜у搧鍏ュ簱銆�'
+            )
+          );
+          return;
+        }
+      }
+
+      //add by rentx 2021-01-27 start
+      if (HosErrorList.size() > 0) {
+        for (String str : HosErrorList) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              'BarCode鍙�:' + str + HosErrorMap.get(str) + ''
+            )
+          );
+        }
+      }
+      //add by rentx 2021-01-27 end
+    } else {
+      //宸插彇娑堜骇鍝�
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Box_Piece__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          recordtypeid,
+          Consumable_order_minor__r.Arrive_Order__c,
+          Report_Product_Expiration__c
+        FROM Consumable_order_details2__c
+        WHERE
+          Dealer_Arrive__c = FALSE
+          AND Dealer_Shipment__c = FALSE
+          AND Dealer_Saled__c = FALSE
+          AND Dealer_Returned__c = FALSE
+          AND Cancellation_Date__c != NULL
+          AND Bar_Code__c IN :BarCodeListP
+          AND Dealer_Info_text__c = :accountName
+        ORDER BY Name
+      ]; //娌″埌璐�
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            String str = '璇ュ晢鍝佸彇娑�';
+            ConsumableorderdetailsRecordserror.add(
+              new ConsumableorderdetailsInfo(reSet1[i], str)
+            );
+            ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+          }
+        }
+      }
+      //宸茬粡閿�鍞�
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Box_Piece__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          recordtypeid,
+          Consumable_order_minor__r.Arrive_Order__c,
+          Report_Product_Expiration__c
+        FROM Consumable_order_details2__c
+        WHERE
+          Dealer_Saled__c = TRUE
+          AND Dealer_Returned__c = FALSE
+          AND Dealer_Info_text__c = :accountName
+          AND Bar_Code__c IN :BarCodeListP
+          AND Arrive_Owner_Work_Location__c = :userWorkLocation
+        ORDER BY Name
+      ];
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            String str = '璇ュ晢鍝佸凡缁忛攢鍞�';
+            ConsumableorderdetailsRecordserror.add(
+              new ConsumableorderdetailsInfo(reSet1[i], str)
+            );
+            ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+          }
+        }
+      }
+      //宸茬粡鍑哄簱浜у搧
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Box_Piece__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          recordtypeid,
+          Consumable_order_minor__r.Arrive_Order__c,
+          Report_Product_Expiration__c
+        FROM Consumable_order_details2__c
+        WHERE
+          Dealer_Shipment__c = TRUE
+          AND Dealer_Returned__c = FALSE
+          AND Dealer_Info_text__c = :accountName
+          AND Arrive_Owner_Work_Location__c = :userWorkLocation
+          AND Bar_Code__c IN :BarCodeListP
+        ORDER BY Name
+      ];
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
+            ConsumableorderdetailsRecordserror.add(
+              new ConsumableorderdetailsInfo(reSet1[i], str)
+            );
+            ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+          }
+        }
+      }
+      //宸茬粡鍒拌揣浜у搧
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Lose_Flag__c,
+          Box_Piece__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          recordtypeid,
+          Consumable_order_minor__r.Arrive_Order__c,
+          Report_Product_Expiration__c
+        FROM Consumable_order_details2__c
+        WHERE
+          Dealer_Arrive__c = TRUE
+          AND Dealer_Returned__c = FALSE
+          AND Bar_Code__c IN :BarCodeListP
+          AND Dealer_Info_text__c = :accountName
+          AND Arrive_Owner_Work_Location__c = :userWorkLocation
+        ORDER BY Name
+      ];
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            String str = '璇ュ晢鍝佸凡缁忓埌璐�';
+            if (reSet1[i].Lose_Flag__c == true) {
+              str = '璇ュ晢鍝佸凡缁忎涪澶�';
+            }
+            ConsumableorderdetailsRecordserror.add(
+              new ConsumableorderdetailsInfo(reSet1[i], str)
+            );
+            ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+          }
+        }
+      }
+      //涓嶅睘浜庢湰璁㈠崟
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Box_Piece__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          recordtypeid,
+          Consumable_order_minor__r.Arrive_Order__c,
+          Report_Product_Expiration__c
+        FROM Consumable_order_details2__c
+        WHERE
+          Consumable_order_minor__c != :ESetId
+          AND Bar_Code__c IN :BarCodeListP
+        //AND Dealer_Info_text__c = :accountName
+        ORDER BY Name
+      ];
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            String str = '璇ユ秷鑰楀搧涓嶅睘浜庢湰璁㈠崟';
+            ConsumableorderdetailsRecordserror.add(
+              new ConsumableorderdetailsInfo(reSet1[i], str)
+            );
+            ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+          }
+        }
+      }
+      //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
+      reSet1 = [
+        SELECT
+          Id,
+          Name,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__r.Asset_Model_No__c,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          Dealer_Arrive__c,
+          Guarantee_period_for_products__c,
+          CFDA_Status__c,
+          ProductPacking_list_manual__c,
+          Report_Product_Approbation__c,
+          Report_Product_Expiration__c,
+          Box_Piece__c,
+          Rrturn_count__c,
+          Product_Type__c,
+          ContractNo_text__c /*,ContractNo__c*/,
+          // tcm start
+          Consumable_order_minor__r.ContractNo__c
+        // tcm end
+        FROM Consumable_order_details2__c
+        WHERE
+          recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+          AND Dealer_Info_text__c = :accountName
+          AND (NOT Product_Type__c LIKE :userPro_Typestr)
+          AND Consumable_order_minor__c = :ESetId
+          AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+          AND Dealer_Arrive__c = FALSE
+          AND Cancellation_Date__c = NULL
+          AND Bar_Code__c IN :BarCodeListP
+        ORDER BY Name
+      ];
+      if (reSet1.size() > 0) {
+        for (Integer i = 0; i < reSet1.size(); i++) {
+          if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            String str =
+              '浜у搧绫诲瀷[' +
+              reSet1[i].Product_Type__c +
+              ']涓庣敤鎴风殑绫诲瀷[' +
+              userPro_Type +
+              ']涓嶇';
+            ConsumableorderdetailsRecordserror.add(
+              new ConsumableorderdetailsInfo(reSet1[i], str)
+            );
+            ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
+          }
+        }
+      }
+
+      //鍒拌揣姝g‘淇℃伅
+      reSet = [
+        SELECT
+          Id,
+          Name,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__r.Asset_Model_No__c,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          Dealer_Arrive__c,
+          Guarantee_period_for_products__c,
+          CFDA_Status__c,
+          ProductPacking_list_manual__c,
+          Report_Product_Approbation__c,
+          Report_Product_Expiration__c,
+          Box_Piece__c,
+          Rrturn_count__c,
+          TracingCode__c,
+          Agencyinfo_fromSAP__c,
+          Frist_Storage_Agency__c,
+          Dealer_Info_text__c,
+          ContractNo_text__c /*,ContractNo__c*/,
+          // tcm start
+          Consumable_order_minor__r.ContractNo__c
+        // tcm end
+        FROM Consumable_order_details2__c
+        WHERE
+          recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+          AND Dealer_Info_text__c = :accountName
+          AND Product_Type__c LIKE :userPro_Typestr
+          AND Consumable_order_minor__c = :ESetId
+          AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+          AND Dealer_Arrive__c = FALSE
+          AND Cancellation_Date__c = NULL
+          AND Bar_Code__c IN :BarCodeListP
+        ORDER BY Name
+      ];
+      if (reSet.size() > 0) {
+        Map<String, String> errorMap = new Map<String, String>();
+        for (Integer i = 0; i < reSet.size(); i++) {
+          if (
+            ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
+            ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
+          ) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            Matcher n = Pattern.compile('[0-9]')
+              .matcher(reSet[i].TracingCode__c);
+            if (n.find()) {
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+              if (reSet[i].TracingCode__c.length() == 5) {
+                String tr = reSet[i].TracingCode__c;
+                String Ctr = tr.substring(tr.length() - 3, tr.length());
+                String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                if (
+                  Pattern.compile('[0-9]').matcher(Atr).find() ||
+                  Pattern.compile('[0-9]').matcher(Ctr).find()
+                ) {
+                  String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                  ConsumableorderdetailsRecordserror.add(
+                    new ConsumableorderdetailsInfo(reSet[i], str)
+                  );
+                  ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+                  continue;
+                }
+              }
+              // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+              // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+              // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+              // continue;
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+            }
+            ConsumableorderdetailsRecordsdummy.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+            ConsumableorderdetailsRecords.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+            ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+          }
+        }
+      }
+
+      //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
+      reSet = [
+        SELECT
+          Id,
+          Name,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          Consumable_Product__c,
+          Consumable_Product__r.Name,
+          Consumable_Product__r.Name__c,
+          Consumable_Product__r.Asset_Model_No__c,
+          Sterilization_limit__c,
+          Deliver_date__c,
+          Bar_Code__c,
+          Arrive_date__c,
+          Send_Date__c,
+          Box_Piece__c,
+          Rrturn_count__c,
+          Consumable_order_minor__r.Name,
+          Consumable_order_minor__c,
+          Dealer_Arrive__c,
+          Guarantee_period_for_products__c,
+          CFDA_Status__c,
+          ProductPacking_list_manual__c,
+          Report_Product_Approbation__c,
+          Report_Product_Expiration__c,
+          TracingCode__c,
+          Agencyinfo_fromSAP__c,
+          Frist_Storage_Agency__c,
+          ContractNo_text__c /*,ContractNo__c*/,
+          // tcm start
+          Consumable_order_minor__r.ContractNo__c
+        // tcm end
+        FROM Consumable_order_details2__c
+        WHERE
+          recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+          AND Cancellation_Date__c = NULL
+          AND Dealer_Arrive__c = FALSE
+          AND TracingCode__c IN :barMcodeMap.values()
+          AND Bar_Code__c NOT IN :barMcodeMap.keySet()
+          AND Dealer_Info_text__c = :accountName
+          AND ((Consumable_order_minor__c != NULL
+          AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+          OR Consumable_order_minor__c = NULL)
+        ORDER BY Name
+      ];
+      if (reSet.size() > 0) {
+        for (Integer i = 0; i < reSet.size(); i++) {
+          if (
+            ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
+            ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
+          ) {
+            // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+            continue;
+          } else {
+            Matcher n = Pattern.compile('[0-9]')
+              .matcher(reSet[i].TracingCode__c);
+            if (n.find()) {
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+              if (reSet[i].TracingCode__c.length() == 5) {
+                String tr = reSet[i].TracingCode__c;
+                String Ctr = tr.substring(tr.length() - 3, tr.length());
+                String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                if (
+                  Pattern.compile('[0-9]').matcher(Atr).find() ||
+                  Pattern.compile('[0-9]').matcher(Ctr).find()
+                ) {
+                  String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                  ConsumableorderdetailsRecordserror.add(
+                    new ConsumableorderdetailsInfo(reSet[i], str)
+                  );
+                  ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+                  continue;
+                }
+              }
+              // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+              // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+              // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+              // continue;
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+            }
+            ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
+            for (String str : barMcodeMap.keySet()) {
+              if (barMcodeMap.get(str) == reSet[i].TracingCode__c) {
+                reSet[i].Bar_Code__c = str;
+                ExistIdMap.put(str, str);
+              }
+            }
+            ConsumableorderdetailsRecordsdummy.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+            ConsumableorderdetailsRecords.add(
+              new ConsumableorderdetailsInfo(reSet[i])
+            );
+          }
+        }
+      }
+      AllMap.putAll(ErrorIdMap);
+      AllMap.putAll(ExistIdMap);
+      //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
+      for (Integer i = 0; i < BarCodeListP.size(); i++) {
+        if (AllMap.containsKey(BarCodeListP[i])) {
+          continue;
+        } else if (otherAgencyMap.containsKey(BarCodeListP[i])) {
+          continue;
+        }
+        //add by rentx 2021-01-27 start
+        else if (coc != null && coc.orderPattern__c == 'hospitalorder') {
+          HosErrorList.add(BarCodeListP[i]);
+          continue;
+        }
+        //add by rentx 2021-01-27 end
+        else {
+          notInlist.add(BarCodeListP[i]);
+          otherAgencyMap.put(BarCodeListP[i], BarCodeListP[i]);
+        }
+      }
+      if (notInlist.size() > 0) {
+        inventoryEntry(notInlist);
+        if (notInStorelist.size() > 0) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              'BarCode鍙�' + notInStorelist + '涓嶅瓨鍦ㄣ��'
+            )
+          );
+          return;
+        }
+      }
     }
 
-    public String ConfimResult() {
-        list<String> overOrderproList = new list<String>();
-        list<String> overOrderBARcodeCunList = new list<String>();
-        list<String> overOrderBARcodeCunListTest = new list<String>();
-        //overOrderBARcodeCunMap.clear();
-        for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords)  {
-            if(orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) > orderProductCunMap.get(ass.esd.Asset_Model_No__c)-1){
-                // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
-                overOrderBARcodeCunList = new list<String>();
-                overOrderBARcodeCunList = overOrderBARcodeCunMap.get(ass.esd.Asset_Model_No__c).clone();
-                overOrderBARcodeCunList.add(ass.esd.Bar_Code__c);
-                overOrderBARcodeCunMap.put(ass.esd.Asset_Model_No__c,overOrderBARcodeCunList);
-                overOrderCunMap.put(ass.esd.Asset_Model_No__c,overOrderCunMap.get(ass.esd.Asset_Model_No__c)+1);
-                cancellationProList.add(ass.esd.Asset_Model_No__c);
-            }else if(orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) == orderProductCunMap.get(ass.esd.Asset_Model_No__c)-1){
-                consumableorderdetailsRecordsUse.add(ass);
-                cancellationProList.add(ass.esd.Asset_Model_No__c);
-            }else{
-                consumableorderdetailsRecordsUse.add(ass);
-            }
-            orderWantArriveCunMap.put(ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c)+1);
-        }
-        for(ConsumableorderdetailsInfo ass : consumableInventory){
-            if (!orderWantArriveCunMap.containsKey(ass.Prod.Asset_Model_No__c)) {
-                consumableInventoryUse.add(ass);
-                continue;
-            }
-            if(orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) > orderProductCunMap.get(ass.Prod.Asset_Model_No__c)-1){
-                
-                //鍙栧緱鍘熸湁list
-                overOrderBARcodeCunList = new list<String>();
-                overOrderBARcodeCunList = overOrderBARcodeCunMap.get(ass.Prod.Asset_Model_No__c).clone();
-                //鏇存柊list
-                overOrderBARcodeCunList.add(ass.barCodeNo);
-                //鏇存柊map
-                overOrderBARcodeCunMap.put(ass.Prod.Asset_Model_No__c,overOrderBARcodeCunList);
-                overOrderCunMap.put(ass.Prod.Asset_Model_No__c,overOrderCunMap.get(ass.Prod.Asset_Model_No__c)+1);
-                cancellationProList.add(ass.Prod.Asset_Model_No__c);
-            }else if(orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) == orderProductCunMap.get(ass.Prod.Asset_Model_No__c)-1){
-                
-                consumableInventoryUse.add(ass);
-                cancellationProList.add(ass.Prod.Asset_Model_No__c);
-            }else{
-                consumableInventoryUse.add(ass);
-            }
-            orderWantArriveCunMap.put(ass.Prod.Asset_Model_No__c,orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c)+1);
-        }
-        for (Integer i = 0; i < productList.size(); i++) {
-            if(overOrderBARcodeCunMap.get(productList[i]).size() > 0){
-                // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
-                overOrderproList.add(productList[i]);
-            }
-        }
-        if(overOrderproList.size() > 0){
-            return '浜у搧' + overOrderproList + '鏈鍒拌揣鏁伴噺鍜屽凡鍒拌揣鏁伴噺宸茬粡瓒呰繃璁㈣揣鏁伴噺!';
-        }else{
-            return '';
-        }
+    //add by rentx 2021-01-27 start 褰撹鍗曚负鍖婚櫌鐗逛环绫诲瀷鐨勮鍗曟椂,濡傛灉鎵句笉鍒癰arcode,涓嶈В鏋�,骞朵笖榛樿璇arcode瀵瑰簲鐨勬槑缁�2涓洪潪鍖婚櫌鐗逛环浜у搧,鐩存帴鎶ラ敊
+    if (HosErrorList.size() > 0) {
+      for (String str : HosErrorList) {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.ERROR,
+            'BarCode鍙�:' + str + '鏄潪鍖婚櫌鐗逛环浜у搧'
+          )
+        );
+      }
+    }
+    //add by rentx 2021-01-27 end
 
+    makeArrivedSummary();
+
+    //add by rentx 20210602 start CHAN-C3K4ZQ
+    makeRecordsView(ConsumableorderdetailsRecordsdummy);
+    //add by rentx 20210602 end CHAN-C3K4ZQ
+  }
+
+  public void inventoryEntryNoESetId(List<String> barCodeList) {
+    //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
+    List<String> alljanCodeList = new List<String>();
+    List<String> allotCodeList = new List<String>();
+    List<String> barCode01List = new List<String>();
+    List<String> barCode241List = new List<String>();
+    Map<String, Map<String, String>> barJancodeMap = new Map<String, Map<String, String>>();
+    Map<String, Map<String, String>> barOtcodeMap = new Map<String, Map<String, String>>();
+    Map<String, List<String>> barcodeinfoMap = new Map<String, List<String>>();
+    Map<String, String> barcoderightMap = new Map<String, String>();
+    notInStorelist.clear();
+    for (Integer i = 0; i < barCodeList.size(); i++) {
+      Date expirationDate = null;
+      String serialNoorLotNo = '';
+      String tracingCode = '';
+      String productDateStr = '';
+      Date productionDate = null;
+      String expirationDateStr = '';
+      if (barCodeList[i].length() >= 3) {
+        if (barCodeList[i].substring(0, 2) == '01') {
+          String janCodeMark = '';
+          //鐢熶骇鏃ユ湡
+          List<String> janCode = new List<String>();
+          if (barCodeList[i].length() < 16) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                '浜у搧BarCode(' +
+                  barCodeList[i] +
+                  ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
+              )
+            );
+            continue;
+          } else {
+            //if(barCodeList[i].substring(0,2) !='01'){
+            //    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode锛屼笉绗﹀悎瑕佹眰锛�'));
+            //    return;
+            //}
+            janCodeMark = barCodeList[i].substring(2, 16);
+            try {
+              Decimal test = Decimal.valueOf(janCodeMark);
+            } catch (Exception e) {
+              ApexPages.addmessage(
+                new ApexPages.message(
+                  ApexPages.severity.ERROR,
+                  '浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'
+                )
+              );
+              continue;
+            }
+          }
+          if (barCodeList[i].length() >= 22) {
+            if (
+              barCodeList[i]
+                .substring(
+                  barCodeList[i].length() - 8,
+                  barCodeList[i].length() - 5
+                ) != '250'
+            ) {
+              ApexPages.addmessage(
+                new ApexPages.message(
+                  ApexPages.severity.ERROR,
+                  '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
+                )
+              );
+              continue;
+            }
+            if (barCodeList[i].substring(16, 18) == '11') {
+              try {
+                productDateStr =
+                  '20' +
+                  barCodeList[i].substring(18, 20) +
+                  '-' +
+                  barCodeList[i].substring(20, 22) +
+                  '-01';
+                productionDate = Date.valueOf(productDateStr);
+              } catch (Exception e) {
+                ApexPages.addmessage(
+                  new ApexPages.message(
+                    ApexPages.severity.ERROR,
+                    '浜у搧BarCode(' +
+                      barCodeList[i] +
+                      ')鐨勭敓浜ф棩鏈�' +
+                      productDateStr +
+                      '閿欒锛�'
+                  )
+                );
+                continue;
+              }
+              if (barCodeList[i].length() >= 32) {
+                if (barCodeList[i].substring(24, 26) == '17') {
+                  try {
+                    if (barCodeList[i].substring(30, 32) == '00') {
+                      expirationDateStr =
+                        '20' +
+                        barCodeList[i].substring(26, 28) +
+                        '-' +
+                        barCodeList[i].substring(28, 30) +
+                        '-' +
+                        '01';
+                      expirationDate = Date.valueOf(expirationDateStr);
+                      expirationDate = expirationDate.addMonths(1)
+                        .toStartofMonth()
+                        .addDays(-1);
+                    } else {
+                      expirationDateStr =
+                        '20' +
+                        barCodeList[i].substring(26, 28) +
+                        '-' +
+                        barCodeList[i].substring(28, 30) +
+                        '-' +
+                        barCodeList[i].substring(30, 32);
+                      expirationDate = Date.valueOf(expirationDateStr);
+                    }
+                  } catch (Exception e) {
+                    ApexPages.addmessage(
+                      new ApexPages.message(
+                        ApexPages.severity.ERROR,
+                        '浜у搧BarCode(' +
+                          barCodeList[i] +
+                          ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                          expirationDateStr +
+                          '閿欒锛�'
+                      )
+                    );
+                    continue;
+                  }
+                  if (barCodeList[i].length() >= 42) {
+                    if (
+                      barCodeList[i].substring(32, 34) == '10' ||
+                      barCodeList[i].substring(32, 34) == '21'
+                    ) {
+                      serialNoorLotNo = barCodeList[i]
+                        .substring(34, barCodeList[i].length() - 8);
+                    }
+                  }
+                } else if (
+                  barCodeList[i].substring(24, 26) == '10' ||
+                  barCodeList[i].substring(24, 26) == '21'
+                ) {
+                  serialNoorLotNo = barCodeList[i]
+                    .substring(26, barCodeList[i].length() - 8);
+                }
+              }
+            } else if (barCodeList[i].substring(16, 18) == '17') {
+              try {
+                if (barCodeList[i].substring(22, 24) == '00') {
+                  expirationDateStr =
+                    '20' +
+                    barCodeList[i].substring(18, 20) +
+                    '-' +
+                    barCodeList[i].substring(20, 22) +
+                    '-01';
+                  //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
+                  expirationDate = Date.valueOf(expirationDateStr);
+                  expirationDate = expirationDate.addMonths(1)
+                    .toStartofMonth()
+                    .addDays(-1);
+                } else {
+                  expirationDateStr =
+                    '20' +
+                    barCodeList[i].substring(18, 20) +
+                    '-' +
+                    barCodeList[i].substring(20, 22) +
+                    '-' +
+                    barCodeList[i].substring(22, 24);
+                  expirationDate = Date.valueOf(expirationDateStr);
+                }
+              } catch (Exception e) {
+                ApexPages.addmessage(
+                  new ApexPages.message(
+                    ApexPages.severity.ERROR,
+                    '浜у搧BarCode(' +
+                      barCodeList[i] +
+                      ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                      expirationDateStr +
+                      '閿欒锛�'
+                  )
+                );
+                continue;
+              }
+              if (barCodeList[i].length() >= 34) {
+                if (
+                  barCodeList[i].substring(24, 26) == '10' ||
+                  barCodeList[i].substring(24, 26) == '21'
+                ) {
+                  serialNoorLotNo = barCodeList[i]
+                    .substring(26, barCodeList[i].length() - 8);
+                }
+              }
+            } else if (barCodeList[i].length() >= 26) {
+              if (
+                barCodeList[i].substring(16, 18) == '10' ||
+                barCodeList[i].substring(16, 18) == '21'
+              ) {
+                serialNoorLotNo = barCodeList[i]
+                  .substring(18, barCodeList[i].length() - 8);
+              }
+            }
+          }
+          if (
+            barCodeList[i].length() >= 24 &&
+            barCodeList[i]
+              .substring(
+                barCodeList[i].length() - 8,
+                barCodeList[i].length() - 5
+              ) == '250'
+          ) {
+            if (
+              barCodeList[i]
+                .substring(
+                  barCodeList[i].length() - 8,
+                  barCodeList[i].length() - 5
+                ) == '250'
+            ) {
+              tracingCode = barCodeList[i]
+                .substring(
+                  barCodeList[i].length() - 5,
+                  barCodeList[i].length()
+                );
+              Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+              if (n.find()) {
+                // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+                if (tracingCode.length() == 5) {
+                  String tr = tracingCode;
+                  String Ctr = tr.substring(tr.length() - 3, tr.length());
+                  String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                  String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                  if (
+                    Pattern.compile('[0-9]').matcher(Atr).find() ||
+                    Pattern.compile('[0-9]').matcher(Ctr).find()
+                  ) {
+                    String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                    ApexPages.addmessage(
+                      new ApexPages.message(
+                        ApexPages.severity.ERROR,
+                        '浜у搧BarCode(' +
+                          barCodeList[i] +
+                          ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
+                      )
+                    );
+                    continue;
+                  }
+                }
+                // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+                // continue;
+                // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+              }
+            } else {
+              ApexPages.addmessage(
+                new ApexPages.message(
+                  ApexPages.severity.ERROR,
+                  '浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'
+                )
+              );
+              continue;
+            }
+          }
+          List<String> barcodedetList = new List<String>();
+          barcodedetList.add(barCodeList[i]);
+          barcodedetList.add(String.valueOf(expirationDate));
+          barcodedetList.add(serialNoorLotNo);
+          barcodedetList.add(tracingCode);
+          Integer jan1 = Integer.valueOf(janCodeMark.substring(0, 1));
+          Integer jan2 = Integer.valueOf(janCodeMark.substring(1, 2));
+          Integer jan3 = Integer.valueOf(janCodeMark.substring(2, 3));
+          Integer jan4 = Integer.valueOf(janCodeMark.substring(3, 4));
+          Integer jan5 = Integer.valueOf(janCodeMark.substring(4, 5));
+          Integer jan6 = Integer.valueOf(janCodeMark.substring(5, 6));
+          Integer jan7 = Integer.valueOf(janCodeMark.substring(6, 7));
+          Integer jan8 = Integer.valueOf(janCodeMark.substring(7, 8));
+          Integer jan9 = Integer.valueOf(janCodeMark.substring(8, 9));
+          Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
+          Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
+          Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
+          Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
+
+          Integer count12 =
+            jan2 +
+            jan3 * 3 +
+            jan4 +
+            jan5 * 3 +
+            jan6 +
+            jan7 * 3 +
+            jan8 +
+            jan9 * 3 +
+            jan10 +
+            jan11 * 3 +
+            jan12 +
+            jan13 * 3;
+          Integer count13 =
+            jan1 * 3 +
+            jan2 +
+            jan3 * 3 +
+            jan4 +
+            jan5 * 3 +
+            jan6 +
+            jan7 * 3 +
+            jan8 +
+            jan9 * 3 +
+            jan10 +
+            jan11 * 3 +
+            jan12 +
+            jan13 * 3;
+          String frost12 = (String.valueOf(count12))
+            .substring((String.valueOf(count12)).length() - 1);
+          String frost13 = (String.valueOf(count13))
+            .substring((String.valueOf(count13)).length() - 1);
+          //鍑忓幓12浣嶄釜浣�
+          frost12 = (String.valueOf(10 - Integer.valueOf(frost12)))
+            .substring(
+              (String.valueOf(10 - Integer.valueOf(frost12))).length() - 1
+            );
+          frost13 = (String.valueOf(10 - Integer.valueOf(frost13)))
+            .substring(
+              (String.valueOf(10 - Integer.valueOf(frost13))).length() - 1
+            );
+          janCode.add(janCodeMark.substring(1, 13) + frost12);
+          janCode.add(janCodeMark.substring(0, 13) + frost12);
+          janCode.add(janCodeMark.substring(1, 13) + frost13);
+          janCode.add(janCodeMark.substring(0, 13) + frost13);
+          alljanCodeList.addAll(janCode);
+          Map<String, String> janCodeMap = new Map<String, String>();
+          janCodeMap.put(
+            janCodeMark.substring(1, 13) + frost12,
+            barCodeList[i]
+          );
+          janCodeMap.put(
+            janCodeMark.substring(0, 13) + frost12,
+            barCodeList[i]
+          );
+          janCodeMap.put(
+            janCodeMark.substring(1, 13) + frost13,
+            barCodeList[i]
+          );
+          janCodeMap.put(
+            janCodeMark.substring(0, 13) + frost13,
+            barCodeList[i]
+          );
+          barJancodeMap.put(barCodeList[i], janCodeMap);
+          barcodeinfoMap.put(barCodeList[i], barcodedetList);
+          barCode01List.add(barCodeList[i]);
+        } else if (barCodeList[i].substring(0, 3) == '241') {
+          if (
+            barCodeList[i].length() > 8 &&
+            barCodeList[i]
+              .substring(
+                barCodeList[i].length() - 8,
+                barCodeList[i].length() - 5
+              ) != '250'
+          ) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
+              )
+            );
+            continue;
+          }
+          List<String> otCodeList = new List<String>();
+          Map<String, String> otCodeMap = new Map<String, String>();
+          if (barCodeList[i].length() < 7) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                '浜у搧BarCode(' +
+                  barCodeList[i] +
+                  ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
+              )
+            );
+            continue;
+          } else if (barCodeList[i].length() == 11) {
+            String otCode4 = barCodeList[i].substring(3, 7);
+            String otCode5 = barCodeList[i].substring(3, 8);
+            String otCode6 = barCodeList[i].substring(3, 9);
+            String otCode7 = barCodeList[i].substring(3, 10);
+            String otCode8 = barCodeList[i].substring(3, 11);
+            otCodeList.add(otCode4);
+            otCodeList.add(otCode5);
+            otCodeList.add(otCode6);
+            otCodeList.add(otCode7);
+            otCodeList.add(otCode8);
+            otCodeMap.put(otCode4, barCodeList[i]);
+            otCodeMap.put(otCode5, barCodeList[i]);
+            otCodeMap.put(otCode6, barCodeList[i]);
+            otCodeMap.put(otCode7, barCodeList[i]);
+            otCodeMap.put(otCode8, barCodeList[i]);
+          } else if (barCodeList[i].length() >= 12) {
+            String otCode4 = barCodeList[i].substring(3, 7);
+            String otCode5 = barCodeList[i].substring(3, 8);
+            String otCode6 = barCodeList[i].substring(3, 9);
+            String otCode7 = barCodeList[i].substring(3, 10);
+            String otCode8 = barCodeList[i].substring(3, 11);
+            String otCode9 = barCodeList[i].substring(3, 12);
+            otCodeList.add(otCode4);
+            otCodeList.add(otCode5);
+            otCodeList.add(otCode6);
+            otCodeList.add(otCode7);
+            otCodeList.add(otCode8);
+            otCodeList.add(otCode9);
+            otCodeMap.put(otCode4, barCodeList[i]);
+            otCodeMap.put(otCode5, barCodeList[i]);
+            otCodeMap.put(otCode6, barCodeList[i]);
+            otCodeMap.put(otCode7, barCodeList[i]);
+            otCodeMap.put(otCode8, barCodeList[i]);
+            otCodeMap.put(otCode9, barCodeList[i]);
+          }
+          allotCodeList.addAll(otCodeList);
+          barOtcodeMap.put(barCodeList[i], otCodeMap);
+          barCode241List.add(barCodeList[i]);
+        } else {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              '浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'
+            )
+          );
+          continue;
+        }
+      } else {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.ERROR,
+            '浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'
+          )
+        );
+        continue;
+      }
+    }
+    //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+    //-----------XHL--------------UpdateSTART----------------20181010------
+    if (alljanCodeList.size() > 0) {
+      List<Product2__c> product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Product2_Jancode__c,
+          Pro2_Dealer_ENG__c,
+          Pro2_Dealer_Object__c
+        FROM Product2__c
+        WHERE Product2_Jancode__c IN :alljanCodeList
+        ORDER BY SFDA_Expiration_Date__c DESC
+      ];
+      if (product2InStore.size() > 0) {
+        // CHAN-AVSAST
+        Map<String, String> rightBar = new Map<String, String>();
+        Map<String, String> errorMap = new Map<String, String>();
+        for (String bar : barJancodeMap.keySet()) {
+          Integer cou = 0;
+          for (Product2__c produ : product2InStore) {
+            if (
+              barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) &&
+              !rightBar.containsKey(bar)
+            ) {
+              cou++;
+              if (EngFlag == true && produ.Pro2_Dealer_ENG__c == true) {
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
+                );
+                consumableInventoryUse.add(
+                  new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
+                );
+                rightBar.put(bar, bar);
+              } else if (
+                ETFlag == true &&
+                produ.Pro2_Dealer_Object__c == true
+              ) {
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
+                );
+                consumableInventoryUse.add(
+                  new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
+                );
+                rightBar.put(bar, bar);
+              } else {
+                errorMap.put(bar, bar);
+              }
+            }
+          }
+          if (cou <= 0) {
+            notInStorelist.add(bar);
+          }
+        }
+        if (errorMap.size() > 0) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              'BarCode鍙穂' +
+                errorMap.values() +
+                ']浜у搧绫诲瀷[' +
+                product_Type +
+                ']涓庣敤鎴风被鍨媅' +
+                userPro_Type +
+                ']涓嶇'
+            )
+          );
+        }
+      }
     }
 
-    public void confimResultWithoutOrder() {
-        /*list<String> overOrderproList = new list<String>();
+    //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+    if (allotCodeList.size() > 0) {
+      Map<String, String> errorMap = new Map<String, String>();
+      Map<String, String> exitBarCodeMap = new Map<String, String>();
+      List<Product2__c> product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Product2_Jancode__c,
+          Pro2_Dealer_ENG__c,
+          Pro2_Dealer_Object__c
+        FROM Product2__c
+        WHERE
+          OT_CODE__c IN :allotCodeList
+          AND (NOT Product_Type__c LIKE :userPro_Typestr)
+      ];
+      if (product2InStore.size() > 0) {
+        for (Product2__c produ : product2InStore) {
+          for (String bar : barOtcodeMap.keySet()) {
+            if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
+              exitBarCodeMap.put(bar, bar);
+              errorMap.put(bar, bar);
+            }
+          }
+        }
+      }
+      if (errorMap.size() > 0) {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.ERROR,
+            'BarCode鍙穂' +
+              errorMap.values() +
+              ']浜у搧绫诲瀷[' +
+              product_Type +
+              ']涓庣敤鎴穂' +
+              userPro_Type +
+              ']绫诲瀷涓嶇'
+          )
+        );
+      }
+      product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Product2_Jancode__c,
+          Pro2_Dealer_ENG__c,
+          Pro2_Dealer_Object__c
+        FROM Product2__c
+        WHERE
+          OT_CODE__c IN :allotCodeList
+          AND Product_Type__c LIKE :userPro_Typestr
+      ];
+
+      if (product2InStore.size() > 0) {
+        for (Product2__c produ : product2InStore) {
+          for (String bar : barOtcodeMap.keySet()) {
+            Date expirationDate = null;
+            String serialNoorLotNo = '';
+            String tracingCode = '';
+            String productDateStr = '';
+            Date productionDate = null;
+            String expirationDateStr = '';
+            if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
+              Integer oTcodeLength = produ.OT_CODE__c.length();
+              if (bar.length() >= oTcodeLength + 11) {
+                if (bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '11') {
+                  try {
+                    productDateStr =
+                      '20' +
+                      bar.substring(oTcodeLength + 5, oTcodeLength + 7) +
+                      '-' +
+                      bar.substring(oTcodeLength + 7, oTcodeLength + 9) +
+                      '-01';
+                    productionDate = Date.valueOf(productDateStr);
+                  } catch (Exception e) {
+                    ApexPages.addmessage(
+                      new ApexPages.message(
+                        ApexPages.severity.ERROR,
+                        '浜у搧BarCode(' +
+                          bar +
+                          ')鐨勭敓浜ф棩鏈�' +
+                          productDateStr +
+                          '閿欒锛�'
+                      )
+                    );
+                    continue;
+                  }
+                  if (bar.length() >= oTcodeLength + 3 + 16) {
+                    if (
+                      bar.substring(
+                        oTcodeLength + 3 + 8,
+                        oTcodeLength + 3 + 10
+                      ) == '17'
+                    ) {
+                      try {
+                        if (
+                          bar.substring(
+                            oTcodeLength + 3 + 14,
+                            oTcodeLength + 3 + 16
+                          ) == '00'
+                        ) {
+                          expirationDateStr =
+                            '20' +
+                            bar.substring(
+                              oTcodeLength + 3 + 10,
+                              oTcodeLength + 3 + 12
+                            ) +
+                            '-' +
+                            bar.substring(
+                              oTcodeLength + 3 + 12,
+                              oTcodeLength + 3 + 14
+                            ) +
+                            '-' +
+                            '01';
+                          expirationDate = Date.valueOf(expirationDateStr);
+                          expirationDate = expirationDate.addMonths(1)
+                            .toStartofMonth()
+                            .addDays(-1);
+                        } else {
+                          expirationDateStr =
+                            '20' +
+                            bar.substring(
+                              oTcodeLength + 3 + 10,
+                              oTcodeLength + 3 + 12
+                            ) +
+                            '-' +
+                            bar.substring(
+                              oTcodeLength + 3 + 12,
+                              oTcodeLength + 3 + 14
+                            ) +
+                            '-' +
+                            bar.substring(
+                              oTcodeLength + 3 + 14,
+                              oTcodeLength + 3 + 16
+                            );
+                          expirationDate = Date.valueOf(expirationDateStr);
+                        }
+                      } catch (Exception e) {
+                        ApexPages.addmessage(
+                          new ApexPages.message(
+                            ApexPages.severity.ERROR,
+                            '浜у搧BarCode(' +
+                              bar +
+                              ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                              expirationDateStr +
+                              '閿欒锛�'
+                          )
+                        );
+                        continue;
+                      }
+                      if (bar.length() >= oTcodeLength + 3 + 25) {
+                        if (
+                          bar.substring(
+                            oTcodeLength + 3 + 16,
+                            oTcodeLength + 3 + 18
+                          ) == '10' ||
+                          bar.substring(
+                            oTcodeLength + 3 + 16,
+                            oTcodeLength + 3 + 18
+                          ) == '21'
+                        ) {
+                          serialNoorLotNo = bar.substring(
+                            oTcodeLength + 3 + 18,
+                            bar.length() - 8
+                          );
+                          //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
+                        }
+                      }
+                    } else if (
+                      bar.substring(
+                        oTcodeLength + 3 + 8,
+                        oTcodeLength + 3 + 10
+                      ) == '10' ||
+                      bar.substring(
+                        oTcodeLength + 3 + 8,
+                        oTcodeLength + 3 + 10
+                      ) == '21'
+                    ) {
+                      serialNoorLotNo = bar.substring(
+                        oTcodeLength + 3 + 10,
+                        bar.length() - 8
+                      );
+                      //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
+                    }
+                  }
+                } else if (
+                  bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '17'
+                ) {
+                  try {
+                    if (
+                      bar.substring(
+                        oTcodeLength + 3 + 6,
+                        oTcodeLength + 3 + 8
+                      ) == '00'
+                    ) {
+                      expirationDateStr =
+                        '20' +
+                        bar.substring(
+                          oTcodeLength + 3 + 2,
+                          oTcodeLength + 3 + 4
+                        ) +
+                        '-' +
+                        bar.substring(
+                          oTcodeLength + 3 + 4,
+                          oTcodeLength + 3 + 6
+                        ) +
+                        '-01';
+                      expirationDate = Date.valueOf(expirationDateStr);
+                      expirationDate = expirationDate.addMonths(1)
+                        .toStartofMonth()
+                        .addDays(-1);
+                    } else {
+                      expirationDateStr =
+                        '20' +
+                        bar.substring(
+                          oTcodeLength + 3 + 2,
+                          oTcodeLength + 3 + 4
+                        ) +
+                        '-' +
+                        bar.substring(
+                          oTcodeLength + 3 + 4,
+                          oTcodeLength + 3 + 6
+                        ) +
+                        '-' +
+                        bar.substring(
+                          oTcodeLength + 3 + 6,
+                          oTcodeLength + 3 + 8
+                        );
+                      expirationDate = Date.valueOf(expirationDateStr);
+                    }
+                  } catch (Exception e) {
+                    ApexPages.addmessage(
+                      new ApexPages.message(
+                        ApexPages.severity.ERROR,
+                        '浜у搧BarCode(' +
+                          bar +
+                          ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                          expirationDateStr +
+                          '閿欒锛�'
+                      )
+                    );
+                    continue;
+                  }
+                  if (bar.length() >= oTcodeLength + 20) {
+                    if (
+                      bar.substring(
+                        oTcodeLength + 3 + 8,
+                        oTcodeLength + 3 + 10
+                      ) == '10' ||
+                      bar.substring(
+                        oTcodeLength + 3 + 8,
+                        oTcodeLength + 3 + 10
+                      ) == '21'
+                    ) {
+                      serialNoorLotNo = bar.substring(
+                        oTcodeLength + 3 + 10,
+                        bar.length() - 8
+                      );
+                    }
+                  }
+                } else if (bar.length() >= oTcodeLength + 12) {
+                  if (
+                    bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '10' ||
+                    bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '21'
+                  ) {
+                    serialNoorLotNo = bar.substring(
+                      oTcodeLength + 3 + 2,
+                      bar.length() - 8
+                    );
+                  }
+                }
+              }
+              if (
+                bar.length() >= oTcodeLength + 3 + 8 &&
+                bar.substring(bar.length() - 8, bar.length() - 5) == '250'
+              ) {
+                if (
+                  bar.substring(bar.length() - 8, bar.length() - 5) == '250'
+                ) {
+                  tracingCode = bar.substring(bar.length() - 5, bar.length());
+                  Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+                  if (n.find()) {
+                    // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+                    if (tracingCode.length() == 5) {
+                      String tr = tracingCode;
+                      String Ctr = tr.substring(tr.length() - 3, tr.length());
+                      String Btr = tr.substring(
+                        tr.length() - 4,
+                        tr.length() - 3
+                      );
+                      String Atr = tr.substring(
+                        tr.length() - 5,
+                        tr.length() - 4
+                      );
+                      if (
+                        Pattern.compile('[0-9]').matcher(Atr).find() ||
+                        Pattern.compile('[0-9]').matcher(Ctr).find()
+                      ) {
+                        String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                        ApexPages.addmessage(
+                          new ApexPages.message(
+                            ApexPages.severity.ERROR,
+                            '浜у搧BarCode(' +
+                              bar +
+                              ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
+                          )
+                        );
+                        continue;
+                      }
+                    }
+                    // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+                    // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+                    // continue;
+                    // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+                  }
+                } else {
+                  ApexPages.addmessage(
+                    new ApexPages.message(
+                      ApexPages.severity.ERROR,
+                      '浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'
+                    )
+                  );
+                  continue;
+                }
+              }
+              exitBarCodeMap.put(bar, bar);
+              List<String> barcodedetList = new List<String>();
+              barcodedetList.add(bar);
+              barcodedetList.add(String.valueOf(expirationDate));
+              barcodedetList.add(serialNoorLotNo);
+              barcodedetList.add(tracingCode);
+              consumableInventory.add(
+                new ConsumableorderdetailsInfo(produ, barcodedetList)
+              );
+              consumableInventoryUse.add(
+                new ConsumableorderdetailsInfo(produ, barcodedetList)
+              );
+            }
+          }
+        }
+      }
+      for (String bartxt : barCode241List) {
+        if (!exitBarCodeMap.containsKey(bartxt)) {
+          if (!errorMap.containsKey(bartxt)) {
+            notInStorelist.add(bartxt);
+          }
+        }
+      }
+    }
+  }
+
+  public void inventoryEntry(List<String> barCodeList) {
+    //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
+    List<String> alljanCodeList = new List<String>();
+    List<String> allotCodeList = new List<String>();
+    List<String> barCode01List = new List<String>();
+    List<String> barCode241List = new List<String>();
+    Map<String, Map<String, String>> barJancodeMap = new Map<String, Map<String, String>>();
+    Map<String, Map<String, String>> barOtcodeMap = new Map<String, Map<String, String>>();
+    Map<String, List<String>> barcodeinfoMap = new Map<String, List<String>>();
+    notInStorelist.clear();
+    notEqualBARcodeCunMap.clear();
+    Map<String, String> orderdetailMap = new Map<String, String>();
+    List<Consumable_Orderdetails__c> orderdetail = [
+      SELECT
+        Id,
+        Name,
+        Consumable_order__c,
+        Consumable_Product__c,
+        Asset_Model_No__c
+      FROM Consumable_Orderdetails__c
+      WHERE
+        Consumable_order__r.Dealer_Info__c = :accountid
+        AND Consumable_order__c != NULL
+        AND Consumable_order__c = :ESetId
+        AND Order_Owner_WorkLocal__c = :userWorkLocation
+      ORDER BY Name
+    ];
+    for (Integer i = 0; i < orderdetail.size(); i++) {
+      orderdetailMap.put(
+        orderdetail[i].Consumable_Product__c,
+        orderdetail[i].Consumable_Product__c
+      );
+    }
+
+    for (Integer i = 0; i < barCodeList.size(); i++) {
+      Date expirationDate = null;
+      String serialNoorLotNo = '';
+      String tracingCode = '';
+      String productDateStr = '';
+      Date productionDate = null;
+      String expirationDateStr = '';
+
+      if (barCodeList[i].substring(0, 2) == '01') {
+        String janCodeMark = '';
+        //鐢熶骇鏃ユ湡
+        List<String> janCode = new List<String>();
+        if (barCodeList[i].length() < 16) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              '浜у搧BarCode(' +
+                barCodeList[i] +
+                ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
+            )
+          );
+          continue;
+        } else {
+          janCodeMark = barCodeList[i].substring(2, 16);
+          try {
+            Decimal test = Decimal.valueOf(janCodeMark);
+          } catch (Exception e) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                '浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'
+              )
+            );
+            continue;
+          }
+        }
+        if (barCodeList[i].length() >= 22) {
+          if (
+            barCodeList[i]
+              .substring(
+                barCodeList[i].length() - 8,
+                barCodeList[i].length() - 5
+              ) != '250'
+          ) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
+              )
+            );
+            continue;
+          }
+          if (barCodeList[i].substring(16, 18) == '11') {
+            try {
+              productDateStr =
+                '20' +
+                barCodeList[i].substring(18, 20) +
+                '-' +
+                barCodeList[i].substring(20, 22) +
+                '-01';
+              productionDate = Date.valueOf(productDateStr);
+            } catch (Exception e) {
+              ApexPages.addmessage(
+                new ApexPages.message(
+                  ApexPages.severity.ERROR,
+                  '浜у搧BarCode(' +
+                    barCodeList[i] +
+                    ')鐨勭敓浜ф棩鏈�' +
+                    productDateStr +
+                    '閿欒锛�'
+                )
+              );
+              continue;
+            }
+            if (barCodeList[i].length() >= 32) {
+              if (barCodeList[i].substring(24, 26) == '17') {
+                try {
+                  if (barCodeList[i].substring(30, 32) == '00') {
+                    expirationDateStr =
+                      '20' +
+                      barCodeList[i].substring(26, 28) +
+                      '-' +
+                      barCodeList[i].substring(28, 30) +
+                      '-' +
+                      '01';
+                    expirationDate = Date.valueOf(expirationDateStr);
+                    expirationDate = expirationDate.addMonths(1)
+                      .toStartofMonth()
+                      .addDays(-1);
+                  } else {
+                    expirationDateStr =
+                      '20' +
+                      barCodeList[i].substring(26, 28) +
+                      '-' +
+                      barCodeList[i].substring(28, 30) +
+                      '-' +
+                      barCodeList[i].substring(30, 32);
+                    expirationDate = Date.valueOf(expirationDateStr);
+                  }
+                } catch (Exception e) {
+                  ApexPages.addmessage(
+                    new ApexPages.message(
+                      ApexPages.severity.ERROR,
+                      '浜у搧BarCode(' +
+                        barCodeList[i] +
+                        ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                        expirationDateStr +
+                        '閿欒锛�'
+                    )
+                  );
+                  continue;
+                }
+                if (barCodeList[i].length() >= 42) {
+                  if (
+                    barCodeList[i].substring(32, 34) == '10' ||
+                    barCodeList[i].substring(32, 34) == '21'
+                  ) {
+                    serialNoorLotNo = barCodeList[i]
+                      .substring(34, barCodeList[i].length() - 8);
+                  }
+                }
+              } else if (
+                barCodeList[i].substring(24, 26) == '10' ||
+                barCodeList[i].substring(24, 26) == '21'
+              ) {
+                serialNoorLotNo = barCodeList[i]
+                  .substring(26, barCodeList[i].length() - 8);
+              }
+            }
+          } else if (barCodeList[i].substring(16, 18) == '17') {
+            try {
+              if (barCodeList[i].substring(22, 24) == '00') {
+                expirationDateStr =
+                  '20' +
+                  barCodeList[i].substring(18, 20) +
+                  '-' +
+                  barCodeList[i].substring(20, 22) +
+                  '-01';
+                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
+                expirationDate = Date.valueOf(expirationDateStr);
+                expirationDate = expirationDate.addMonths(1)
+                  .toStartofMonth()
+                  .addDays(-1);
+              } else {
+                expirationDateStr =
+                  '20' +
+                  barCodeList[i].substring(18, 20) +
+                  '-' +
+                  barCodeList[i].substring(20, 22) +
+                  '-' +
+                  barCodeList[i].substring(22, 24);
+                expirationDate = Date.valueOf(expirationDateStr);
+              }
+            } catch (Exception e) {
+              ApexPages.addmessage(
+                new ApexPages.message(
+                  ApexPages.severity.ERROR,
+                  '浜у搧BarCode(' +
+                    barCodeList[i] +
+                    ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                    expirationDateStr +
+                    '閿欒锛�'
+                )
+              );
+              continue;
+            }
+            if (barCodeList[i].length() >= 34) {
+              if (
+                barCodeList[i].substring(24, 26) == '10' ||
+                barCodeList[i].substring(24, 26) == '21'
+              ) {
+                serialNoorLotNo = barCodeList[i]
+                  .substring(26, barCodeList[i].length() - 8);
+              }
+            }
+          } else if (barCodeList[i].length() >= 26) {
+            if (
+              barCodeList[i].substring(16, 18) == '10' ||
+              barCodeList[i].substring(16, 18) == '21'
+            ) {
+              serialNoorLotNo = barCodeList[i]
+                .substring(18, barCodeList[i].length() - 8);
+            }
+          }
+        }
+        if (
+          barCodeList[i].length() >= 24 &&
+          barCodeList[i]
+            .substring(
+              barCodeList[i].length() - 8,
+              barCodeList[i].length() - 5
+            ) == '250'
+        ) {
+          if (
+            barCodeList[i]
+              .substring(
+                barCodeList[i].length() - 8,
+                barCodeList[i].length() - 5
+              ) == '250'
+          ) {
+            tracingCode = barCodeList[i]
+              .substring(barCodeList[i].length() - 5, barCodeList[i].length());
+            Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+            if (n.find()) {
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+              if (tracingCode.length() == 5) {
+                String tr = tracingCode;
+                String Ctr = tr.substring(tr.length() - 3, tr.length());
+                String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                if (
+                  Pattern.compile('[0-9]').matcher(Atr).find() ||
+                  Pattern.compile('[0-9]').matcher(Ctr).find()
+                ) {
+                  String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                  ApexPages.addmessage(
+                    new ApexPages.message(
+                      ApexPages.severity.ERROR,
+                      '浜у搧BarCode(' +
+                        barCodeList[i] +
+                        ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
+                    )
+                  );
+                  continue;
+                }
+              }
+              // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+              // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+              // continue;
+              // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+            }
+          } else {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.ERROR,
+                '浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'
+              )
+            );
+            continue;
+          }
+        }
+        List<String> barcodedetList = new List<String>();
+        barcodedetList.add(barCodeList[i]);
+        barcodedetList.add(String.valueOf(expirationDate));
+        barcodedetList.add(serialNoorLotNo);
+        barcodedetList.add(tracingCode);
+        Integer jan1 = Integer.valueOf(janCodeMark.substring(0, 1));
+        Integer jan2 = Integer.valueOf(janCodeMark.substring(1, 2));
+        Integer jan3 = Integer.valueOf(janCodeMark.substring(2, 3));
+        Integer jan4 = Integer.valueOf(janCodeMark.substring(3, 4));
+        Integer jan5 = Integer.valueOf(janCodeMark.substring(4, 5));
+        Integer jan6 = Integer.valueOf(janCodeMark.substring(5, 6));
+        Integer jan7 = Integer.valueOf(janCodeMark.substring(6, 7));
+        Integer jan8 = Integer.valueOf(janCodeMark.substring(7, 8));
+        Integer jan9 = Integer.valueOf(janCodeMark.substring(8, 9));
+        Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
+        Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
+        Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
+        Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
+        Integer count12 =
+          jan2 +
+          jan3 * 3 +
+          jan4 +
+          jan5 * 3 +
+          jan6 +
+          jan7 * 3 +
+          jan8 +
+          jan9 * 3 +
+          jan10 +
+          jan11 * 3 +
+          jan12 +
+          jan13 * 3;
+
+        Integer count13 =
+          jan1 * 3 +
+          jan2 +
+          jan3 * 3 +
+          jan4 +
+          jan5 * 3 +
+          jan6 +
+          jan7 * 3 +
+          jan8 +
+          jan9 * 3 +
+          jan10 +
+          jan11 * 3 +
+          jan12 +
+          jan13 * 3;
+        String frost12 = (String.valueOf(count12))
+          .substring((String.valueOf(count12)).length() - 1);
+        String frost13 = (String.valueOf(count13))
+          .substring((String.valueOf(count13)).length() - 1);
+        //鍑忓幓12浣嶄釜浣�4
+        frost12 = (String.valueOf(10 - Integer.valueOf(frost12)))
+          .substring(
+            (String.valueOf(10 - Integer.valueOf(frost12))).length() - 1
+          );
+        frost13 = (String.valueOf(10 - Integer.valueOf(frost13)))
+          .substring(
+            (String.valueOf(10 - Integer.valueOf(frost13))).length() - 1
+          );
+
+        janCode.add(janCodeMark.substring(1, 13) + frost12);
+        janCode.add(janCodeMark.substring(0, 13) + frost12);
+        janCode.add(janCodeMark.substring(1, 13) + frost13);
+        janCode.add(janCodeMark.substring(0, 13) + frost13);
+        alljanCodeList.addAll(janCode);
+        Map<String, String> janCodeMap = new Map<String, String>();
+        janCodeMap.put(janCodeMark.substring(1, 13) + frost12, barCodeList[i]);
+        janCodeMap.put(janCodeMark.substring(0, 13) + frost12, barCodeList[i]);
+        janCodeMap.put(janCodeMark.substring(1, 13) + frost13, barCodeList[i]);
+        janCodeMap.put(janCodeMark.substring(0, 13) + frost13, barCodeList[i]);
+        barJancodeMap.put(barCodeList[i], janCodeMap);
+        barcodeinfoMap.put(barCodeList[i], barcodedetList);
+        barCode01List.add(barCodeList[i]);
+      } else if (barCodeList[i].substring(0, 3) == '241') {
+        if (
+          barCodeList[i].length() > 8 &&
+          barCodeList[i]
+            .substring(
+              barCodeList[i].length() - 8,
+              barCodeList[i].length() - 5
+            ) != '250'
+        ) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
+            )
+          );
+          continue;
+        }
+        List<String> otCodeList = new List<String>();
+        Map<String, String> otCodeMap = new Map<String, String>();
+        if (barCodeList[i].length() < 7) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              '浜у搧BarCode(' +
+                barCodeList[i] +
+                ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
+            )
+          );
+          continue;
+        } else if (barCodeList[i].length() == 11) {
+          String otCode4 = barCodeList[i].substring(3, 7);
+          String otCode5 = barCodeList[i].substring(3, 8);
+          String otCode6 = barCodeList[i].substring(3, 9);
+          String otCode7 = barCodeList[i].substring(3, 10);
+          String otCode8 = barCodeList[i].substring(3, 11);
+          otCodeList.add(otCode4);
+          otCodeList.add(otCode5);
+          otCodeList.add(otCode6);
+          otCodeList.add(otCode7);
+          otCodeList.add(otCode8);
+          otCodeMap.put(otCode4, barCodeList[i]);
+          otCodeMap.put(otCode5, barCodeList[i]);
+          otCodeMap.put(otCode6, barCodeList[i]);
+          otCodeMap.put(otCode7, barCodeList[i]);
+          otCodeMap.put(otCode8, barCodeList[i]);
+        } else if (barCodeList[i].length() >= 12) {
+          String otCode4 = barCodeList[i].substring(3, 7);
+          String otCode5 = barCodeList[i].substring(3, 8);
+          String otCode6 = barCodeList[i].substring(3, 9);
+          String otCode7 = barCodeList[i].substring(3, 10);
+          String otCode8 = barCodeList[i].substring(3, 11);
+          String otCode9 = barCodeList[i].substring(3, 12);
+          otCodeList.add(otCode4);
+          otCodeList.add(otCode5);
+          otCodeList.add(otCode6);
+          otCodeList.add(otCode7);
+          otCodeList.add(otCode8);
+          otCodeList.add(otCode9);
+          otCodeMap.put(otCode4, barCodeList[i]);
+          otCodeMap.put(otCode5, barCodeList[i]);
+          otCodeMap.put(otCode6, barCodeList[i]);
+          otCodeMap.put(otCode7, barCodeList[i]);
+          otCodeMap.put(otCode8, barCodeList[i]);
+          otCodeMap.put(otCode9, barCodeList[i]);
+        }
+        allotCodeList.addAll(otCodeList);
+        barOtcodeMap.put(barCodeList[i], otCodeMap);
+        barCode241List.add(barCodeList[i]);
+      } else {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.ERROR,
+            '浜у搧BarCode(' +
+              barCodeList[i] +
+              ')娌℃湁janCode鎴朞Tcode锛屼笉绗﹀悎瑕佹眰锛�'
+          )
+        );
+        continue;
+      }
+    }
+    //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+    Map<String, String> rightBar = new Map<String, String>();
+    if (alljanCodeList.size() > 0) {
+      Map<String, String> exitBarCodeMap = new Map<String, String>();
+      List<Product2__c> product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Product2_Jancode__c,
+          Pro2_Dealer_ENG__c,
+          Pro2_Dealer_Object__c,
+          Product_Type__c
+        FROM Product2__c
+        WHERE
+          Product2_Jancode__c IN :alljanCodeList
+          AND (NOT Product_Type__c LIKE :userPro_Typestr)
+        ORDER BY SFDA_Expiration_Date__c DESC
+      ];
+      if (product2InStore.size() > 0) {
+        Map<String, String> errorMap = new Map<String, String>();
+        for (Product2__c produ : product2InStore) {
+          for (String bar : barJancodeMap.keySet()) {
+            if (
+              barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) &&
+              !rightBar.containsKey(bar)
+            ) {
+              exitBarCodeMap.put(bar, bar);
+              errorMap.put(bar, bar);
+            }
+          }
+        }
+        if (errorMap.size() > 0) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              'BarCode鍙穂' +
+                errorMap.values() +
+                ']浜у搧绫诲瀷[' +
+                product_Type +
+                ']涓庣敤鎴风殑绫诲瀷[' +
+                userPro_Type +
+                ']涓嶇'
+            )
+          );
+        }
+      }
+      product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Product2_Jancode__c,
+          Pro2_Dealer_ENG__c,
+          Pro2_Dealer_Object__c,
+          Product_Type__c
+        FROM Product2__c
+        WHERE
+          Product2_Jancode__c IN :alljanCodeList
+          AND Product_Type__c LIKE :userPro_Typestr
+        ORDER BY SFDA_Expiration_Date__c DESC
+      ];
+      if (product2InStore.size() > 0) {
+        Map<String, String> errorMap = new Map<String, String>();
+        for (Product2__c produ : product2InStore) {
+          for (String bar : barJancodeMap.keySet()) {
+            if (
+              barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) &&
+              !rightBar.containsKey(bar)
+            ) {
+              exitBarCodeMap.put(bar, bar);
+              if (orderdetailMap.containsKey(produ.Id)) {
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
+                );
+                rightBar.put(bar, bar);
+              } else {
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
+                );
+                rightBar.put(bar, bar);
+                list<String> overOrderBARcodeCunList = new List<String>();
+                if (notEqualBARcodeCunMap.containsKey(produ.Id)) {
+                  overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id)
+                    .clone();
+                  overOrderBARcodeCunList.add(bar);
+                  notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
+                } else {
+                  overOrderBARcodeCunList.add(bar);
+                  notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
+                }
+              }
+            }
+          }
+        }
+      }
+      for (String bartxt : barCode01List) {
+        if (!exitBarCodeMap.containsKey(bartxt)) {
+          notInStorelist.add(bartxt);
+        }
+      }
+    }
+
+    //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+    if (allotCodeList.size() > 0) {
+      Map<String, String> exitBarCodeMap = new Map<String, String>();
+      Map<String, String> errorMap = new Map<String, String>();
+      List<Product2__c> product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Pro2_Dealer_Object__c,
+          Pro2_Dealer_ENG__c
+        FROM Product2__c
+        WHERE
+          OT_CODE__c IN :allotCodeList
+          AND (NOT Product_Type__c LIKE :userPro_Typestr)
+      ];
+      if (product2InStore.size() > 0) {
+        for (Product2__c produ : product2InStore) {
+          for (String bar : barOtcodeMap.keySet()) {
+            if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
+              exitBarCodeMap.put(bar, bar);
+              errorMap.put(bar, bar);
+            }
+          }
+        }
+      }
+      if (errorMap.size() > 0) {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.ERROR,
+            'BarCode鍙穂' +
+              errorMap.values() +
+              ']浜у搧绫诲瀷[' +
+              product_Type +
+              ']涓庣敤鎴穂' +
+              userPro_Type +
+              ']绫诲瀷涓嶇'
+          )
+        );
+      }
+      product2InStore = [
+        SELECT
+          Id,
+          Name,
+          Name__c,
+          Intra_Trade_List_RMB__c,
+          Asset_Model_No__c,
+          OT_CODE__c,
+          Pro2_Dealer_Object__c,
+          Pro2_Dealer_ENG__c
+        FROM Product2__c
+        WHERE
+          OT_CODE__c IN :allotCodeList
+          AND Product_Type__c LIKE :userPro_Typestr
+      ];
+
+      if (product2InStore.size() > 0) {
+        for (Product2__c produ : product2InStore) {
+          for (String bar : barOtcodeMap.keySet()) {
+            Date expirationDate = null;
+            String serialNoorLotNo = '';
+            String tracingCode = '';
+            String productDateStr = '';
+            Date productionDate = null;
+            String expirationDateStr = '';
+            Integer oTcodeLength = produ.OT_CODE__c.length();
+
+            if (bar.length() >= oTcodeLength + 11) {
+              if (bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '11') {
+                try {
+                  productDateStr =
+                    '20' +
+                    bar.substring(oTcodeLength + 5, oTcodeLength + 7) +
+                    '-' +
+                    bar.substring(oTcodeLength + 7, oTcodeLength + 9) +
+                    '-01';
+                  productionDate = Date.valueOf(productDateStr);
+                } catch (Exception e) {
+                  ApexPages.addmessage(
+                    new ApexPages.message(
+                      ApexPages.severity.ERROR,
+                      '浜у搧BarCode(' +
+                        bar +
+                        ')鐨勭敓浜ф棩鏈�' +
+                        productDateStr +
+                        '閿欒锛�'
+                    )
+                  );
+                  continue;
+                }
+                if (bar.length() >= oTcodeLength + 3 + 16) {
+                  //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode17' + bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10)));
+                  if (
+                    bar.substring(
+                      oTcodeLength + 3 + 8,
+                      oTcodeLength + 3 + 10
+                    ) == '17'
+                  ) {
+                    try {
+                      if (
+                        bar.substring(
+                          oTcodeLength + 3 + 14,
+                          oTcodeLength + 3 + 16
+                        ) == '00'
+                      ) {
+                        expirationDateStr =
+                          '20' +
+                          bar.substring(
+                            oTcodeLength + 3 + 10,
+                            oTcodeLength + 3 + 12
+                          ) +
+                          '-' +
+                          bar.substring(
+                            oTcodeLength + 3 + 12,
+                            oTcodeLength + 3 + 14
+                          ) +
+                          '-' +
+                          '01';
+                        expirationDate = Date.valueOf(expirationDateStr);
+                        expirationDate = expirationDate.addMonths(1)
+                          .toStartofMonth()
+                          .addDays(-1);
+                      } else {
+                        expirationDateStr =
+                          '20' +
+                          bar.substring(
+                            oTcodeLength + 3 + 10,
+                            oTcodeLength + 3 + 12
+                          ) +
+                          '-' +
+                          bar.substring(
+                            oTcodeLength + 3 + 12,
+                            oTcodeLength + 3 + 14
+                          ) +
+                          '-' +
+                          bar.substring(
+                            oTcodeLength + 3 + 14,
+                            oTcodeLength + 3 + 16
+                          );
+                        expirationDate = Date.valueOf(expirationDateStr);
+                      }
+                    } catch (Exception e) {
+                      ApexPages.addmessage(
+                        new ApexPages.message(
+                          ApexPages.severity.ERROR,
+                          '浜у搧BarCode(' +
+                            bar +
+                            ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                            expirationDateStr +
+                            '閿欒锛�'
+                        )
+                      );
+                      continue;
+                    }
+                    if (bar.length() >= oTcodeLength + 3 + 25) {
+                      if (
+                        bar.substring(
+                          oTcodeLength + 3 + 16,
+                          oTcodeLength + 3 + 18
+                        ) == '10' ||
+                        bar.substring(
+                          oTcodeLength + 3 + 16,
+                          oTcodeLength + 3 + 18
+                        ) == '21'
+                      ) {
+                        serialNoorLotNo = bar.substring(
+                          oTcodeLength + 3 + 18,
+                          bar.length() - 8
+                        );
+                        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
+                      }
+                    }
+                  } else if (
+                    bar.substring(
+                      oTcodeLength + 3 + 8,
+                      oTcodeLength + 3 + 10
+                    ) == '10' ||
+                    bar.substring(
+                      oTcodeLength + 3 + 8,
+                      oTcodeLength + 3 + 10
+                    ) == '21'
+                  ) {
+                    serialNoorLotNo = bar.substring(
+                      oTcodeLength + 3 + 10,
+                      bar.length() - 8
+                    );
+                    //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,  'serialNoorLotNo' + serialNoorLotNo));
+                  }
+                }
+              } else if (
+                bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '17'
+              ) {
+                try {
+                  if (
+                    bar.substring(oTcodeLength + 3 + 6, oTcodeLength + 3 + 8) ==
+                    '00'
+                  ) {
+                    expirationDateStr =
+                      '20' +
+                      bar.substring(
+                        oTcodeLength + 3 + 2,
+                        oTcodeLength + 3 + 4
+                      ) +
+                      '-' +
+                      bar.substring(
+                        oTcodeLength + 3 + 4,
+                        oTcodeLength + 3 + 6
+                      ) +
+                      '-01';
+                    expirationDate = Date.valueOf(expirationDateStr);
+                    expirationDate = expirationDate.addMonths(1)
+                      .toStartofMonth()
+                      .addDays(-1);
+                  } else {
+                    expirationDateStr =
+                      '20' +
+                      bar.substring(
+                        oTcodeLength + 3 + 2,
+                        oTcodeLength + 3 + 4
+                      ) +
+                      '-' +
+                      bar.substring(
+                        oTcodeLength + 3 + 4,
+                        oTcodeLength + 3 + 6
+                      ) +
+                      '-' +
+                      bar.substring(oTcodeLength + 3 + 6, oTcodeLength + 3 + 8);
+                    expirationDate = Date.valueOf(expirationDateStr);
+                  }
+                } catch (Exception e) {
+                  ApexPages.addmessage(
+                    new ApexPages.message(
+                      ApexPages.severity.ERROR,
+                      '浜у搧BarCode(' +
+                        bar +
+                        ')鐨勬粎鑿屾湁鍔规湡闄�' +
+                        expirationDateStr +
+                        '閿欒锛�'
+                    )
+                  );
+                  continue;
+                }
+                if (bar.length() >= oTcodeLength + 20) {
+                  if (
+                    bar.substring(
+                      oTcodeLength + 3 + 8,
+                      oTcodeLength + 3 + 10
+                    ) == '10' ||
+                    bar.substring(
+                      oTcodeLength + 3 + 8,
+                      oTcodeLength + 3 + 10
+                    ) == '21'
+                  ) {
+                    serialNoorLotNo = bar.substring(
+                      oTcodeLength + 3 + 10,
+                      bar.length() - 8
+                    );
+                  }
+                }
+              } else if (bar.length() >= oTcodeLength + 12) {
+                if (
+                  bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '10' ||
+                  bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '21'
+                ) {
+                  serialNoorLotNo = bar.substring(
+                    oTcodeLength + 3 + 2,
+                    bar.length() - 8
+                  );
+                }
+              }
+            }
+            if (
+              bar.length() >= oTcodeLength + 3 + 8 &&
+              bar.substring(bar.length() - 8, bar.length() - 5) == '250'
+            ) {
+              if (bar.substring(bar.length() - 8, bar.length() - 5) == '250') {
+                tracingCode = bar.substring(bar.length() - 5, bar.length());
+                Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+                if (n.find()) {
+                  // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+                  if (tracingCode.length() == 5) {
+                    String tr = tracingCode;
+                    String Ctr = tr.substring(tr.length() - 3, tr.length());
+                    String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+                    String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+                    if (
+                      Pattern.compile('[0-9]').matcher(Atr).find() ||
+                      Pattern.compile('[0-9]').matcher(Ctr).find()
+                    ) {
+                      String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+                      ApexPages.addmessage(
+                        new ApexPages.message(
+                          ApexPages.severity.ERROR,
+                          '浜у搧BarCode(' +
+                            bar +
+                            ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
+                        )
+                      );
+                      continue;
+                    }
+                  }
+                  // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+                  // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+                  // continue;
+                  // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+                }
+              } else {
+                ApexPages.addmessage(
+                  new ApexPages.message(
+                    ApexPages.severity.ERROR,
+                    '浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'
+                  )
+                );
+                continue;
+              }
+            }
+            List<String> barcodedetList = new List<String>();
+            barcodedetList.add(bar);
+            barcodedetList.add(String.valueOf(expirationDate));
+            barcodedetList.add(serialNoorLotNo);
+            barcodedetList.add(tracingCode);
+            if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
+              exitBarCodeMap.put(bar, bar);
+
+              if (orderdetailMap.containsKey(produ.Id)) {
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(produ, barcodedetList)
+                );
+              } else {
+                consumableInventory.add(
+                  new ConsumableorderdetailsInfo(produ, barcodedetList)
+                );
+                list<String> overOrderBARcodeCunList = new List<String>();
+                if (notEqualBARcodeCunMap.containsKey(produ.Id)) {
+                  overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id)
+                    .clone();
+                  overOrderBARcodeCunList.add(bar);
+                  notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
+                } else {
+                  overOrderBARcodeCunList.add(bar);
+                  notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
+                }
+              }
+            }
+          }
+        }
+      }
+
+      for (String bartxt : barCode241List) {
+        if (!exitBarCodeMap.containsKey(bartxt)) {
+          if (!errorMap.containsKey(bartxt)) {
+            notInStorelist.add(bartxt);
+          }
+        }
+      }
+    }
+    //鍒ゆ柇浜у搧鏄惁涓�鑷�
+    if (notEqualBARcodeCunMap.size() > 0) {
+      for (String widget : notEqualBARcodeCunMap.keySet()) {
+        if (notEqualBARcodeCunMap.get(widget).size() > 0) {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.INFO,
+              '浠ヤ笅barcode浜у搧涓庤璐т骇鍝佷笉涓�鑷淬��'
+            )
+          );
+          for (
+            String barcodeListTTT : (List<String>) notEqualBARcodeCunMap.get(
+              widget
+            )
+          ) {
+            ApexPages.addmessage(
+              new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT)
+            );
+          }
+        }
+      }
+    }
+  }
+
+  public String ConfimResult() {
+    list<String> overOrderproList = new List<String>();
+    list<String> overOrderBARcodeCunList = new List<String>();
+    list<String> overOrderBARcodeCunListTest = new List<String>();
+    //overOrderBARcodeCunMap.clear();
+    for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
+      if (
+        orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) +
+        orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) >
+        orderProductCunMap.get(ass.esd.Asset_Model_No__c) - 1
+      ) {
+        // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
+        overOrderBARcodeCunList = new List<String>();
+        overOrderBARcodeCunList = overOrderBARcodeCunMap.get(
+            ass.esd.Asset_Model_No__c
+          )
+          .clone();
+        overOrderBARcodeCunList.add(ass.esd.Bar_Code__c);
+        overOrderBARcodeCunMap.put(
+          ass.esd.Asset_Model_No__c,
+          overOrderBARcodeCunList
+        );
+        overOrderCunMap.put(
+          ass.esd.Asset_Model_No__c,
+          overOrderCunMap.get(ass.esd.Asset_Model_No__c) + 1
+        );
+        cancellationProList.add(ass.esd.Asset_Model_No__c);
+      } else if (
+        orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) +
+        orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) ==
+        orderProductCunMap.get(ass.esd.Asset_Model_No__c) - 1
+      ) {
+        consumableorderdetailsRecordsUse.add(ass);
+        cancellationProList.add(ass.esd.Asset_Model_No__c);
+      } else {
+        consumableorderdetailsRecordsUse.add(ass);
+      }
+      orderWantArriveCunMap.put(
+        ass.esd.Asset_Model_No__c,
+        orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) + 1
+      );
+    }
+    for (ConsumableorderdetailsInfo ass : consumableInventory) {
+      if (!orderWantArriveCunMap.containsKey(ass.Prod.Asset_Model_No__c)) {
+        consumableInventoryUse.add(ass);
+        continue;
+      }
+      if (
+        orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) +
+        orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) >
+        orderProductCunMap.get(ass.Prod.Asset_Model_No__c) - 1
+      ) {
+        //鍙栧緱鍘熸湁list
+        overOrderBARcodeCunList = new List<String>();
+        overOrderBARcodeCunList = overOrderBARcodeCunMap.get(
+            ass.Prod.Asset_Model_No__c
+          )
+          .clone();
+        //鏇存柊list
+        overOrderBARcodeCunList.add(ass.barCodeNo);
+        //鏇存柊map
+        overOrderBARcodeCunMap.put(
+          ass.Prod.Asset_Model_No__c,
+          overOrderBARcodeCunList
+        );
+        overOrderCunMap.put(
+          ass.Prod.Asset_Model_No__c,
+          overOrderCunMap.get(ass.Prod.Asset_Model_No__c) + 1
+        );
+        cancellationProList.add(ass.Prod.Asset_Model_No__c);
+      } else if (
+        orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) +
+        orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) ==
+        orderProductCunMap.get(ass.Prod.Asset_Model_No__c) - 1
+      ) {
+        consumableInventoryUse.add(ass);
+        cancellationProList.add(ass.Prod.Asset_Model_No__c);
+      } else {
+        consumableInventoryUse.add(ass);
+      }
+      orderWantArriveCunMap.put(
+        ass.Prod.Asset_Model_No__c,
+        orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) + 1
+      );
+    }
+    for (Integer i = 0; i < productList.size(); i++) {
+      if (overOrderBARcodeCunMap.get(productList[i]).size() > 0) {
+        // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
+        overOrderproList.add(productList[i]);
+      }
+    }
+    if (overOrderproList.size() > 0) {
+      return '浜у搧' +
+        overOrderproList +
+        '鏈鍒拌揣鏁伴噺鍜屽凡鍒拌揣鏁伴噺宸茬粡瓒呰繃璁㈣揣鏁伴噺!';
+    } else {
+      return '';
+    }
+  }
+
+  public void confimResultWithoutOrder() {
+    /*list<String> overOrderproList = new list<String>();
         list<String> overOrderBARcodeCunList = new list<String>();
         orderProductCunMap.clear();
         orderProductArrivedCunMap.clear();
@@ -2927,9 +4113,9 @@
             }
         }*/
 
-        //瑕佸埌璐т骇鍝佹暟閲�
-        for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords)  {
-            /*if(orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) > orderProductCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)-1){
+    //瑕佸埌璐т骇鍝佹暟閲�
+    for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
+      /*if(orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) > orderProductCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)-1){
                 // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
                 overOrderproList.add('浜у搧' + ass.esd.Asset_Model_No__c + '鍦ㄨ鍗�' + ass.esd.Consumable_order_minor__r.Name + '涓秴杩囪璐ф暟閲�!\n');
                 overOrderBARcodeCunList = new list<String>();
@@ -2940,1363 +4126,1536 @@
                 consumableorderdetailsRecordsUse.add(ass);
                 orderWantArriveCunMap.put(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)+1);
             }else{*/
-                consumableorderdetailsRecordsUse.add(ass);
-            }
-            /*orderWantArriveCunMap.put(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)+1);
+      consumableorderdetailsRecordsUse.add(ass);
+    }
+    /*orderWantArriveCunMap.put(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)+1);
         }
         return overOrderproList;*/
+  }
+
+  // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+  // 铏氭嫙鐩樼偣鍗曟秷鑰楀搧鏄庣粏1鍒涘缓宸″洖
+  public void addInventoryDetails1(List<Consumable_order_details2__c> addList) {
+    Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
+    Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>>();
+    List<Id> orderIdList = new List<Id>();
+    // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
+    for (Consumable_order_details2__c cod : addList) {
+      List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c>();
+      Map<Id, Integer> pNumMap = new Map<Id, Integer>();
+      Integer num = 1;
+      if (
+        accountGroupMap.containsKey(
+          cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
+        )
+      ) {
+        accGroupList = accountGroupMap.get(
+          cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
+        );
+        pNumMap = productMap.get(
+          cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
+        );
+        if (pNumMap.containsKey(cod.Consumable_Product__c)) {
+          num = pNumMap.get(cod.Consumable_Product__c) + 1;
+        }
+      }
+      orderIdList.add(cod.Consumable_Inventory_order__c);
+      pNumMap.put(cod.Consumable_Product__c, num);
+      accGroupList.add(cod);
+      productMap.put(
+        cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
+        pNumMap
+      );
+      accountGroupMap.put(
+        cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
+        accGroupList
+      );
+      System.debug('======accGroupList' + accGroupList);
     }
 
-    // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-    // 铏氭嫙鐩樼偣鍗曟秷鑰楀搧鏄庣粏1鍒涘缓宸″洖
-    public void addInventoryDetails1(List<Consumable_order_details2__c> addList){
-        Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
-        Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>> ();
-        List<Id> orderIdList = new List<Id> ();
-        // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
-        for (Consumable_order_details2__c cod : addList) {
-            List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c> ();
-            Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
-            Integer num = 1;
-            if (accountGroupMap.containsKey(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c)) {
-                accGroupList = accountGroupMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
-                pNumMap = productMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
-                if (pNumMap.containsKey(cod.Consumable_Product__c)) {
-                    num = pNumMap.get(cod.Consumable_Product__c) + 1;
-                }
-            }
-            orderIdList.add(cod.Consumable_Inventory_order__c); 
-            pNumMap.put(cod.Consumable_Product__c, num);
-            accGroupList.add(cod);
-            productMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, pNumMap);
-            accountGroupMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, accGroupList);
-            System.debug('======accGroupList'+accGroupList);
-        }
-        
-        System.debug('======accountGroupMap'+accountGroupMap);
-        List<Consumable_order__c> orderList = [select Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c from Consumable_order__c where id in : orderIdList];
+    System.debug('======accountGroupMap' + accountGroupMap);
+    List<Consumable_order__c> orderList = [
+      SELECT Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c
+      FROM Consumable_order__c
+      WHERE id IN :orderIdList
+    ];
 
-        // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
-        // List<Consumable_order__c> orderList = new List<Consumable_order__c> ();
-        Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
-        for (String acc : accountGroupMap.keySet()) {
-            Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
-            List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(acc);
-            Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
-            pNumMap = productMap.get(acc);
-            List<Consumable_orderdetails__c> insDetail1 = New List<Consumable_orderdetails__c>();
-            for (Id id : pNumMap.keySet()) {
-                Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
-                
-                //InsAfterDel.Consumable_order__c = p.id;
-                ins.Product_Refind__c = pNumMap.get(id);
-                ins.inventory_sum__c = pNumMap.get(id);
-                ins.Consumable_Product__c = id;
-                for (Consumable_order_details2__c pri : prodPriceList) {
-                    if (pri.Consumable_Product__c == id) {
-                        ins.Intra_Trade_List_RMB__c =pri.Intra_Trade_List_RMB__c;
-                        break;
-                    }
-                }
-                ins.Box_Piece__c = '鐩�';
-                ins.Out_unit__c = '鐩�';
-                //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
-                //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
-                //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
-                ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Inventory;
-                ins.Used_date__c = Date.today();
-                ins.OwnerId = arriveAccount.OwnerId;
+    // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
+    // List<Consumable_order__c> orderList = new List<Consumable_order__c> ();
+    Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
+    for (String acc : accountGroupMap.keySet()) {
+      Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
+      List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(
+        acc
+      );
+      Map<Id, Integer> pNumMap = new Map<Id, Integer>();
+      pNumMap = productMap.get(acc);
+      List<Consumable_orderdetails__c> insDetail1 = new List<Consumable_orderdetails__c>();
+      for (Id id : pNumMap.keySet()) {
+        Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
 
-                insDetail1.add(ins);
-            }
-            System.debug('======insDetail1'+insDetail1);
-            insDetail1Map.put(acc, insDetail1);
-            System.debug('======insDetail1Map'+insDetail1Map);
+        //InsAfterDel.Consumable_order__c = p.id;
+        ins.Product_Refind__c = pNumMap.get(id);
+        ins.inventory_sum__c = pNumMap.get(id);
+        ins.Consumable_Product__c = id;
+        for (Consumable_order_details2__c pri : prodPriceList) {
+          if (pri.Consumable_Product__c == id) {
+            ins.Intra_Trade_List_RMB__c = pri.Intra_Trade_List_RMB__c;
+            break;
+          }
         }
-        List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c> ();
-        for (Consumable_order__c setId : orderList) {
-            // 鏄庣粏1
-            List<Consumable_orderdetails__c> d1list = insDetail1Map.get(setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c);
-            Integer i = 1;
-            for (Consumable_orderdetails__c dtl1 : d1list) {
-                String str = ('000' + i).right(4);
-                dtl1.Consumable_order__c = setId.Id;
-                dtl1.Name = setId.Name + '-'+ str;
-                insDetail1List.add(dtl1);
-            }
-        } 
-        System.debug('======insDetail1List'+insDetail1List);
-        insert insDetail1List;
+        ins.Box_Piece__c = '鐩�';
+        ins.Out_unit__c = '鐩�';
+        //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
+        //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
+        //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
+        ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Inventory;
+        ins.Used_date__c = Date.today();
+        ins.OwnerId = arriveAccount.OwnerId;
+
+        insDetail1.add(ins);
+      }
+      System.debug('======insDetail1' + insDetail1);
+      insDetail1Map.put(acc, insDetail1);
+      System.debug('======insDetail1Map' + insDetail1Map);
     }
-    // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+    List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c>();
+    for (Consumable_order__c setId : orderList) {
+      // 鏄庣粏1
+      List<Consumable_orderdetails__c> d1list = insDetail1Map.get(
+        setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c
+      );
+      Integer i = 1;
+      for (Consumable_orderdetails__c dtl1 : d1list) {
+        String str = ('000' + i).right(4);
+        dtl1.Consumable_order__c = setId.Id;
+        dtl1.Name = setId.Name + '-' + str;
+        insDetail1List.add(dtl1);
+      }
+    }
+    System.debug('======insDetail1List' + insDetail1List);
+    insert insDetail1List;
+  }
+  // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
 
-
-    // 缁忛攢鍟嗙殑涓嶅悓宸ヤ綔鍦拌皟璐ц嚜鍔ㄧ敓鎴愬嚭搴撳崟
-    public void addSaleOrderAuto (List<Consumable_order_details2__c> addList) {
-        Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
-        Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>> ();
-        // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
-        for (Consumable_order_details2__c cod : addList) {
-            List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c> ();
-            Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
-            Integer num = 1;
-            if (accountGroupMap.containsKey(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c)) {
-                accGroupList = accountGroupMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
-                pNumMap = productMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
-                if (pNumMap.containsKey(cod.Consumable_Product__c)) {
-                    num = pNumMap.get(cod.Consumable_Product__c) + 1;
-                }
-            } 
-            pNumMap.put(cod.Consumable_Product__c, num);
-            accGroupList.add(cod);
-            productMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, pNumMap);
-            accountGroupMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, accGroupList);
+  // 缁忛攢鍟嗙殑涓嶅悓宸ヤ綔鍦拌皟璐ц嚜鍔ㄧ敓鎴愬嚭搴撳崟
+  public void addSaleOrderAuto(List<Consumable_order_details2__c> addList) {
+    Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
+    Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>>();
+    // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
+    for (Consumable_order_details2__c cod : addList) {
+      List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c>();
+      Map<Id, Integer> pNumMap = new Map<Id, Integer>();
+      Integer num = 1;
+      if (
+        accountGroupMap.containsKey(
+          cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
+        )
+      ) {
+        accGroupList = accountGroupMap.get(
+          cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
+        );
+        pNumMap = productMap.get(
+          cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
+        );
+        if (pNumMap.containsKey(cod.Consumable_Product__c)) {
+          num = pNumMap.get(cod.Consumable_Product__c) + 1;
         }
-
-        // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
-        List<Consumable_order__c> orderList = new List<Consumable_order__c> ();
-        Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
-        for (String acc : accountGroupMap.keySet()) {
-            Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
-            Consumable_order__c autoOrder = new Consumable_order__c();
-            autoOrder.Name = '*';
-            autoOrder.Dealer_Info__c = arriveAccount.Consumable_Arrived_order__r.Dealer_Info__c;
-            autoOrder.OwnerId = arriveAccount.OwnerId;
-            autoOrder.Order_type__c = '浼犵エ';
-            autoOrder.SummonsStatus_c__c = '宸插畬鎴�';
-            autoOrder.Order_ForDealerText__c = accountName;
-            autoOrder.SummonsForDirction__c = '浜掔浉璋冭揣';
-            autoOrder.RecordTypeid = System.Label.RT_ConOrder_Shipment;
-            autoOrder.Outbound_Date__c = Date.today();
-            autoOrder.Order_date__c = Date.today();
-            autoOrder.AutoShipment__c = TRUE;
-            orderList.add(autoOrder);
-
-            List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(acc);
-            Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
-            pNumMap = productMap.get(acc);
-            List<Consumable_orderdetails__c> insDetail1 = New List<Consumable_orderdetails__c>();
-            for (Id id : pNumMap.keySet()) {
-                Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
-                
-                //InsAfterDel.Consumable_order__c = p.id;
-                ins.Shipment_Count__c = pNumMap.get(id);
-                ins.Consumable_Product__c = id;
-                for (Consumable_order_details2__c pri : prodPriceList) {
-                    if (pri.Consumable_Product__c == id) {
-                        ins.Intra_Trade_List_RMB__c =pri.Intra_Trade_List_RMB__c;
-                        break;
-                    }
-                }
-                ins.Box_Piece__c = '鐩�';
-                ins.Out_unit__c = '鐩�';
-                //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
-                //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
-                //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
-                ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Shipment;
-                ins.Used_date__c = Date.today();
-                ins.OwnerId = arriveAccount.OwnerId;
-
-                insDetail1.add(ins);
-            }
-            insDetail1Map.put(acc, insDetail1);
-        }
-        insert orderList;
-
-        List<Id> orderIdList = new List<Id> ();
-        for (Consumable_order__c co : orderList) {
-            orderIdList.add(co.Id);
-        }
-
-        orderList = new List<Consumable_order__c> ();
-        orderList = [select Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c from Consumable_order__c where id in : orderIdList];
-
-        // 璁剧疆鏄庣粏1 鍜� 鏄庣粏2 鐨� 璁㈠崟ID
-        List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c> ();
-        List<Consumable_order_details2__c> updDetail2List = new List<Consumable_order_details2__c> ();
-        for (Consumable_order__c setId : orderList) {
-            // 鏄庣粏1
-            List<Consumable_orderdetails__c> d1list = insDetail1Map.get(setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c);
-            Integer i = 1;
-            for (Consumable_orderdetails__c dtl1 : d1list) {
-                String str = ('000' + i).right(4);
-                // if(str.length() == 1){
-                //     str = '0' + str;
-                // }
-                dtl1.Consumable_order__c = setId.Id;
-                dtl1.Name = setId.Name + '-'+ str;
-                insDetail1List.add(dtl1);
-            }
-
-            // 鏄庣粏2
-            List<Consumable_order_details2__c> d2list = accountGroupMap.get(setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c);
-            for (Consumable_order_details2__c dtl2 : d2list) {
-                dtl2.Send_Date__c = Date.today();
-                dtl2.Consumable_Sale_order__c = null;
-                dtl2.Consumable_Return_order__c = null;
-                dtl2.Consumable_ZS_order__c = setId.Id;
-                //dtl2.Delivery_List_RMB__c = null;
-                dtl2.Return_date__c = null;
-                dtl2.Return_reason__c = null;
-                dtl2.Consumable_Shipment_order__c = setId.Id;
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                dtl2.Transfer_Time__c = 1;
-                dtl2.Agency_Transfer__c = true;
-                dtl2.Frist_Transfer_Agency__c = dtl2.Dealer_Info_text__c;
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                updDetail2List.add(dtl2);
-            }
-        }
-
-        insert insDetail1List;
-        update updDetail2List;
+      }
+      pNumMap.put(cod.Consumable_Product__c, num);
+      accGroupList.add(cod);
+      productMap.put(
+        cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
+        pNumMap
+      );
+      accountGroupMap.put(
+        cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
+        accGroupList
+      );
     }
 
-    //鍒拌揣纭
-    public PageReference ArriveGoodsConfim() {
-        //add by rentx 20210618 start CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
-        StaticParameter.ConsumableOrderTrigger = true;
-        //add by rentx 20210618 end CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
-        cancellationProList = new List<String>();
-        List<Consumable_order_details2__c> ins = New List<Consumable_order_details2__c>();
-        String resultcheck = '';
-        List<String> resultcheckWithoutOrder = new List<String>();
-        Savepoint sp = Database.setSavepoint();
+    // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
+    List<Consumable_order__c> orderList = new List<Consumable_order__c>();
+    Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
+    for (String acc : accountGroupMap.keySet()) {
+      Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
+      Consumable_order__c autoOrder = new Consumable_order__c();
+      autoOrder.Name = '*';
+      autoOrder.Dealer_Info__c = arriveAccount.Consumable_Arrived_order__r.Dealer_Info__c;
+      autoOrder.OwnerId = arriveAccount.OwnerId;
+      autoOrder.Order_type__c = '浼犵エ';
+      autoOrder.SummonsStatus_c__c = '宸插畬鎴�';
+      autoOrder.Order_ForDealerText__c = accountName;
+      autoOrder.SummonsForDirction__c = '浜掔浉璋冭揣';
+      autoOrder.RecordTypeid = System.Label.RT_ConOrder_Shipment;
+      autoOrder.Outbound_Date__c = Date.today();
+      autoOrder.Order_date__c = Date.today();
+      autoOrder.AutoShipment__c = true;
+      orderList.add(autoOrder);
 
-        if(ConsumableorderdetailsRecords.size()<1 && consumableInventory.size()<1){
-            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-            if(isLwc){
-                returnError = '涓嶅瓨鍦ㄥ埌璐ф槑缁�';
-            }else {
-                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'涓嶅瓨鍦ㄥ埌璐ф槑缁�'));
+      List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(
+        acc
+      );
+      Map<Id, Integer> pNumMap = new Map<Id, Integer>();
+      pNumMap = productMap.get(acc);
+      List<Consumable_orderdetails__c> insDetail1 = new List<Consumable_orderdetails__c>();
+      for (Id id : pNumMap.keySet()) {
+        Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
+
+        //InsAfterDel.Consumable_order__c = p.id;
+        ins.Shipment_Count__c = pNumMap.get(id);
+        ins.Consumable_Product__c = id;
+        for (Consumable_order_details2__c pri : prodPriceList) {
+          if (pri.Consumable_Product__c == id) {
+            ins.Intra_Trade_List_RMB__c = pri.Intra_Trade_List_RMB__c;
+            break;
+          }
+        }
+        ins.Box_Piece__c = '鐩�';
+        ins.Out_unit__c = '鐩�';
+        //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
+        //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
+        //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
+        ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Shipment;
+        ins.Used_date__c = Date.today();
+        ins.OwnerId = arriveAccount.OwnerId;
+
+        insDetail1.add(ins);
+      }
+      insDetail1Map.put(acc, insDetail1);
+    }
+    insert orderList;
+
+    List<Id> orderIdList = new List<Id>();
+    for (Consumable_order__c co : orderList) {
+      orderIdList.add(co.Id);
+    }
+
+    orderList = new List<Consumable_order__c>();
+    orderList = [
+      SELECT Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c
+      FROM Consumable_order__c
+      WHERE id IN :orderIdList
+    ];
+
+    // 璁剧疆鏄庣粏1 鍜� 鏄庣粏2 鐨� 璁㈠崟ID
+    List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c>();
+    List<Consumable_order_details2__c> updDetail2List = new List<Consumable_order_details2__c>();
+    for (Consumable_order__c setId : orderList) {
+      // 鏄庣粏1
+      List<Consumable_orderdetails__c> d1list = insDetail1Map.get(
+        setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c
+      );
+      Integer i = 1;
+      for (Consumable_orderdetails__c dtl1 : d1list) {
+        String str = ('000' + i).right(4);
+        // if(str.length() == 1){
+        //     str = '0' + str;
+        // }
+        dtl1.Consumable_order__c = setId.Id;
+        dtl1.Name = setId.Name + '-' + str;
+        insDetail1List.add(dtl1);
+      }
+
+      // 鏄庣粏2
+      List<Consumable_order_details2__c> d2list = accountGroupMap.get(
+        setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c
+      );
+      for (Consumable_order_details2__c dtl2 : d2list) {
+        dtl2.Send_Date__c = Date.today();
+        dtl2.Consumable_Sale_order__c = null;
+        dtl2.Consumable_Return_order__c = null;
+        dtl2.Consumable_ZS_order__c = setId.Id;
+        //dtl2.Delivery_List_RMB__c = null;
+        dtl2.Return_date__c = null;
+        dtl2.Return_reason__c = null;
+        dtl2.Consumable_Shipment_order__c = setId.Id;
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+        dtl2.Transfer_Time__c = 1;
+        dtl2.Agency_Transfer__c = true;
+        dtl2.Frist_Transfer_Agency__c = dtl2.Dealer_Info_text__c;
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+        updDetail2List.add(dtl2);
+      }
+    }
+
+    insert insDetail1List;
+    update updDetail2List;
+  }
+
+  //鍒拌揣纭
+  public PageReference ArriveGoodsConfim() {
+    //add by rentx 20210618 start CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
+    StaticParameter.ConsumableOrderTrigger = true;
+    //add by rentx 20210618 end CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
+    cancellationProList = new List<String>();
+    List<Consumable_order_details2__c> ins = new List<Consumable_order_details2__c>();
+    String resultcheck = '';
+    List<String> resultcheckWithoutOrder = new List<String>();
+    Savepoint sp = Database.setSavepoint();
+
+    if (
+      ConsumableorderdetailsRecords.size() < 1 &&
+      consumableInventory.size() < 1
+    ) {
+      ApexPages.addmessage(
+        new ApexPages.message(ApexPages.severity.ERROR, '涓嶅瓨鍦ㄥ埌璐ф槑缁�')
+      );
+      return null;
+    }
+    if (EsetId != null && EsetId != '') {
+      resultcheck = ConfimResult();
+      if (resultcheck.length() > 0) {
+        for (String widget : overOrderBARcodeCunMap.keySet()) {
+          if (overOrderBARcodeCunMap.get(widget).size() > 0) {
+            ApexPages.addmessage(
+              new ApexPages.message(
+                ApexPages.severity.INFO,
+                '浜у搧' +
+                  widget +
+                  '鏈鍒拌揣鏁伴噺瓒呰繃' +
+                  overOrderBARcodeCunMap.get(widget).size() +
+                  '涓璐х殑鏁伴噺銆�'
+              )
+            );
+            for (
+              String barcodeListTTT : (List<String>) overOrderBARcodeCunMap.get(
+                widget
+              )
+            ) {
+              ApexPages.addmessage(
+                new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT)
+              );
             }
+          }
+        }
+      }
+    } else {
+      confimResultWithoutOrder();
+    }
+    try {
+      Consumable_order__c orderMain = new Consumable_order__c();
+      List<Consumable_order_details2__c> orderdetails = new List<Consumable_order_details2__c>();
+      //鍒拌揣姝g‘淇℃伅
+      orderMain.Name = '*';
+      orderMain.Order_status__c = '鎵瑰噯';
+      orderMain.Dealer_Info__c = accountid;
+      orderMain.Deliver_date__c = Date.today();
+      orderMain.Order_date__c = Date.today();
+      orderMain.Order_type__c = '鍒拌揣';
+      orderMain.Order_ProType__c = userPro_Type;
+      if (EsetId != null && EsetId != '') {
+        orderMain.Arrive_Order__c = coc.Id;
+      }
+      orderMain.RecordTypeid = System.Label.RT_ConOrder_Arrive;
+      insert orderMain;
+
+      List<Consumable_order__c> consumable_order = [
+        SELECT Name
+        FROM Consumable_order__c
+        WHERE id = :orderMain.id
+      ];
+      arriveId = orderMain.id;
+      Decimal arriveAmount = 0;
+      for (ConsumableorderdetailsInfo ass : consumableorderdetailsRecordsUse) {
+        Consumable_order_details2__c insDetails = new Consumable_order_details2__c();
+        insDetails.Id = ass.esd.Id;
+        insDetails.Consumable_Arrived_order__c = orderMain.id;
+        insDetails.Arrive_date__c = Date.today();
+        insDetails.Bar_Code__c = ass.esd.Bar_Code__c;
+        insDetails.OwnerId = UserInfo.getUserId();
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+        if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
+          insDetails.Transfer_Time__c = ass.esd.Transfer_Time__c == null
+            ? 1
+            : ass.esd.Transfer_Time__c;
+          insDetails.Agency_Transfer__c = true;
+          insDetails.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c ==
+            null
+            ? ass.esd.Dealer_Info_text__c
+            : ass.esd.Frist_Transfer_Agency__c;
+        }
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+        insDetails.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
+        insDetails.Frist_Storage_Agency__c = ass.esd.Frist_Storage_Agency__c ==
+          null
+          ? ass.esd.Dealer_Info_text__c
+          : ass.esd.Frist_Storage_Agency__c;
+        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+        arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
+        orderdetails.add(insDetails);
+      }
+      Integer i = 1;
+      for (ConsumableorderdetailsInfo ass : consumableInventoryUse) {
+        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------'));
+        Consumable_order_details2__c insAfterDel = new Consumable_order_details2__c();
+        String str = ('000' + i).right(4);
+        // if(str.length() == 1){
+        //     str = '0' + str;
+        // }
+        insAfterDel.Name = consumable_order[0].Name + '-' + str;
+        insAfterDel.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+        // gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+        // if(EsetId != null && EsetId != ''){
+        //     insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+        // }else{
+        //     insAfterDel.Intra_Trade_List_RMB__c = 0;
+        // }
+        insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+        //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+        insAfterDel.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
+        if (EsetId != null && EsetId != '') {
+          insAfterDel.Consumable_order_minor__c = ESetId;
+        }
+        insAfterDel.Deliver_date__c = Date.today();
+        insAfterDel.Direct_Arrive_Product__c = true;
+        //TODO寰呯‘璁�
+        insAfterDel.Sterilization_limit__c = ass.sterilizationlimitDate;
+        insAfterDel.Consumable_Product__c = ass.Prod.id;
+        insAfterDel.Bar_Code__c = ass.barCodeNo;
+        insAfterDel.Used_account__c = accountid;
+        //TODO寰呯‘璁�
+        insAfterDel.SerialLotNo__c = ass.serialNoorLotNo;
+        insAfterDel.TracingCode__c = ass.tracingCodeNo;
+
+        //insAfterDel.Dealer_Arrive__c                = true;
+        insAfterDel.Consumable_Arrived_order__c = orderMain.id;
+        insAfterDel.Arrive_date__c = Date.today();
+        insAfterDel.OwnerId = UserInfo.getUserId();
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+        if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
+          insAfterDel.Transfer_Time__c = ass.esd.Transfer_Time__c == null
+            ? 1
+            : ass.esd.Transfer_Time__c;
+          insAfterDel.Agency_Transfer__c = true;
+          insAfterDel.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c ==
+            null
+            ? accountName
+            : ass.esd.Frist_Transfer_Agency__c;
+        }
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+        insAfterDel.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
+        insAfterDel.Frist_Storage_Agency__c = ass.esd.Frist_Storage_Agency__c ==
+          null
+          ? accountName
+          : ass.esd.Frist_Storage_Agency__c;
+        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+        arriveAmount += insAfterDel.Intra_Trade_List_RMB__c;
+        //add by rentx 2020-10-14 strat
+        //insAfterDel.ContractNo_text__c      = /*ass.esd.ContractNo__c*/;
+        // tcm start
+        if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
+          insAfterDel.ContractNo_text__c = ass.esd.ContractNo_text__c;
+        } else {
+          insAfterDel.ContractNo_text__c = ass.esd.Consumable_order_minor__r.ContractNo__c;
+        }
+        // tcm end
+        //add by rentx 2020-10-14 end
+        i++;
+
+        ins.add(insAfterDel);
+      }
+      orderMain.Arrive_total_amount__c = arriveAmount;
+      update orderMain;
+      List<Consumable_order_details2__c> updateconsumableorderdetails2 = new List<Consumable_order_details2__c>();
+      //鏇存柊鏄庣粏鍙栨秷鏃堕棿 => 鏈埌璐у彇娑堬紝鍒拌揣鑷姩鐢熸垚鍑哄簱娴佺▼
+      List<Consumable_order_details2__c> addSaleOrderList = new List<Consumable_order_details2__c>();
+      for (Consumable_order_details2__c Cod : consumableorderdetails2Cancle) {
+        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------3------'));
+        if (Cod.Dealer_Arrive__c) {
+          if (Cod.Dealer_Shipment__c == false && Cod.Dealer_Saled__c == false) {
+            addSaleOrderList.add(Cod);
+          }
+        } else {
+          Cod.Cancellation_Date__c = Date.today();
+          Cod.Cancellation_Flag__c = true;
+          updateconsumableorderdetails2.add(Cod);
+        }
+      }
+
+      if (addSaleOrderList.size() > 0) {
+        addSaleOrderAuto(addSaleOrderList);
+      }
+
+      if (updateconsumableorderdetails2.size() > 0) {
+        update updateconsumableorderdetails2;
+      }
+      List<Consumable_order_details2__c> insertconsumableorderdetails2 = new List<Consumable_order_details2__c>();
+      for (Consumable_order_details2__c Cod2 : consumableorderdetails2Insert) {
+        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------'));
+        String str = ('000' + i).right(4);
+        // if(str.length() == 1){
+        //     str = '0' + str;
+        // }
+        Cod2.Name = consumable_order[0].Name + '-' + str;
+        Cod2.Consumable_order_minor__c = null;
+        Cod2.Deliver_date__c = Date.today();
+        Cod2.Used_account__c = accountid;
+        Cod2.Consumable_Arrived_order__c = orderMain.id;
+        Cod2.Arrive_date__c = Date.today();
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+        if (orderdetails2trMap.containsKey(Cod2.Bar_Code__c)) {
+          //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4++++++' + Cod2.Frist_Storage_Agency__c));
+          Cod2.Transfer_Time__c = Cod2.Transfer_Time__c == null
+            ? 1
+            : Cod2.Transfer_Time__c;
+          Cod2.Agency_Transfer__c = true;
+          Cod2.Frist_Transfer_Agency__c = Cod2.Frist_Transfer_Agency__c == null
+            ? accountName
+            : Cod2.Frist_Transfer_Agency__c;
+        }
+        // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+        Cod2.Agencyinfo_fromSAP__c = Cod2.Agencyinfo_fromSAP__c;
+        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------' + Cod2.Frist_Storage_Agency__c));
+        Cod2.Frist_Storage_Agency__c = Cod2.Frist_Storage_Agency__c == null
+          ? accountName
+          : Cod2.Frist_Storage_Agency__c;
+        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+        insertconsumableorderdetails2.add(Cod2);
+        i++;
+      }
+
+      // return null;
+
+      if (insertconsumableorderdetails2.size() > 0) {
+        insert insertconsumableorderdetails2;
+      }
+
+      if (ins.size() > 0) {
+        insert ins;
+      }
+      if (orderdetails.size() > 0) {
+        ControllerUtil.updateOrderDetailsSatus(orderdetails);
+      }
+      //瓒呭嚭鍒拌揣鏁伴噺浜у搧鍙栨秷鏃ユ湡鏇存柊
+      List<Consumable_order_details2__c> needcanceldet = new List<Consumable_order_details2__c>();
+      if (cancellationProList.size() > 0) {
+        needcanceldet = [
+          SELECT Id, Cancellation_Date__c
+          FROM Consumable_order_details2__c
+          WHERE
+            Asset_Model_No__c IN :cancellationProList
+            AND Consumable_order_minor__c = :ESetId
+            AND Dealer_Arrive__c = FALSE
+            AND Cancellation_Date__c = NULL
+        ];
+        if (needcanceldet.size() > 0) {
+          for (Integer a = 0; a < needcanceldet.size(); a++) {
+            needcanceldet[a].Cancellation_Date__c = Date.today();
+            needcanceldet[a].Cancellation_Flag__c = true;
+          }
+          ControllerUtil.updateOrderDetailsSatus(needcanceldet);
+        }
+      }
+      List<Consumable_order__c> qs = new List<Consumable_order__c>();
+      qs = [
+        SELECT
+          Id,
+          Name,
+          Order_status__c,
+          Dealer_Info__c,
+          Deliver_date__c,
+          ReturnGs_Upload_Date__c,
+          Order_Reason__c,
+          Order_date__c,
+          Contract_application_decision__c,
+          Order_type__c,
+          Total_num__c,
+          OrderNumber_arrived__c,
+          Delivery_detail_count__c,
+          OrderNumber_notarrive__c
+        FROM Consumable_order__c
+        WHERE Id = :ESetId AND Dealer_Info__c = :accountid
+      ];
+      if (qs.size() > 0) {
+        coc = qs[0];
+      }
+      saveFLGbln = true;
+      alertMessage = '鍒拌揣瀹屾垚銆�';
+      // Integer a = 1/0;
+    } catch (Exception e) {
+      Database.rollback(sp);
+      ApexPages.addMessages(e);
+      return null;
+    }
+    if (resultcheck.length() > 0) {
+      return null;
+    } else if (resultcheckWithoutOrder.size() > 0) {
+      return null;
+    } else {
+      return UnabletoEdit();
+      // return null;
+    }
+  }
+
+  // 杩斿搧妫�鏌ワ紝鍚庡洖搴�
+  public integer GoodsReturnCheck() {
+    List<String> GrListIn = ParseBarCode(barcode);
+    GrList = new List<String>();
+    Map<String, String> CheckBarcodeResult = new Map<String, String>();
+    for (String Str : GrListIn) {
+      CheckBarcodeResult.put(str, 'UnFind');
+    }
+    List<Consumable_order_details2__c> BarcodeRetrunResult = [
+      SELECT
+        Id,
+        Name,
+        Intra_Trade_List_RMB__c,
+        Asset_Model_No__c,
+        Consumable_Product__c,
+        Consumable_Product__r.Name,
+        Consumable_Product__r.Name__c,
+        Consumable_Product__r.Asset_Model_No__c,
+        Sterilization_limit__c,
+        Deliver_date__c,
+        Bar_Code__c,
+        Arrive_date__c,
+        Send_Date__c,
+        Consumable_order_minor__r.Name,
+        Consumable_order_minor__c,
+        Dealer_Arrive__c,
+        Guarantee_period_for_products__c,
+        CFDA_Status__c,
+        ProductPacking_list_manual__c,
+        Report_Product_Approbation__c,
+        Report_Product_Expiration__c,
+        Box_Piece__c,
+        Rrturn_count__c,
+        Product_Type__c,
+        //add by rentx 2020-10-14 start
+        ContractNo_text__c /*,ContractNo__c*/,
+        // tcm start
+        Consumable_order_minor__r.ContractNo__c
+      // tcm end
+      //add by rentx 2020-10-14 end
+      FROM Consumable_order_details2__c
+      WHERE
+        Dealer_Arrive__c = TRUE
+        AND (Dealer_Shipment__c = TRUE
+        //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
+        OR Dealer_Saled__c = TRUE)
+        AND Dealer_Info_text__c = :accountName
+        AND Bar_Code__c IN :GrListIn
+        AND (NOT Product_Type__c LIKE :userPro_Typestr)
+        AND Dealer_Returned__c = FALSE
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+      ORDER BY Box_Piece__c DESC, Name
+    ];
+    if (BarcodeRetrunResult.size() > 0) {
+      for (Integer i = 0; i < BarcodeRetrunResult.size(); i++) {
+        if (
+          ErrorIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c) ||
+          ExistIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c)
+        ) {
+          // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+          continue;
+        } else {
+          String str =
+            '浜у搧绫诲瀷[' +
+            BarcodeRetrunResult[i].Product_Type__c +
+            ']涓庣敤鎴风殑绫诲瀷[' +
+            userPro_Type +
+            ']涓嶇';
+          ConsumableorderdetailsRecordserror.add(
+            new ConsumableorderdetailsInfo(BarcodeRetrunResult[i], str)
+          );
+          ErrorIdMap.put(
+            BarcodeRetrunResult[i].Bar_Code__c,
+            BarcodeRetrunResult[i].Bar_Code__c
+          );
+        }
+      }
+    }
+    AllMap.putAll(ErrorIdMap);
+    BarcodeRetrunResult = [
+      SELECT
+        Id,
+        Consumable_order_minor__c,
+        Deliver_date__c,
+        Asset_Model_No__c,
+        Consumable_Product__c,
+        Consumable_Product__r.Name,
+        Consumable_Product__r.Name__c,
+        Name,
+        Bar_Code__c,
+        Arrive_date__c,
+        Dealer_Shipment__c,
+        Lose_Flag__c,
+        Dealer_Saled__c,
+        Return_reason__c,
+        Consumable_Shipment_order__c,
+        Consumable_Shipment_order__r.Name,
+        Send_date__c,
+        Consumable_Sale_order__c,
+        Consumable_Sale_order__r.Name,
+        Used_date__c,
+        SerialLotNo__c,
+        TracingCode__c,
+        Sterilization_limit__c,
+        Consumable_ZS_order__c,
+        Consumable_ZS_order__r.Name,
+        Product_OutDate__c,
+        Invoice_Date__c,
+        recordtypeid,
+        Consumable_Arrived_order__c,
+        Box_Piece__c,
+        Rrturn_count__c,
+        Intra_Trade_List_RMB__c,
+        OwnerId,
+        SummonsForDirction_det__c,
+        Order_Dealer_Info__c,
+        HospItal_Name__c,
+        Agencyinfo_fromSAP__c,
+        Frist_Storage_Agency__c,
+        Dealer_Info_text__c,
+        Used_account__c,
+        Transfer_Time__c,
+        Frist_Transfer_Agency__c,
+        Arrive_Owner_Work_Location__c,
+        Agency_Transfer__c,
+        //add by rentx 2020-10-14 start
+        ContractNo_text__c /*,ContractNo__c*/,
+        // tcm start
+        Consumable_order_minor__r.ContractNo__c,
+        // tcm end
+        //add by rentx 2020-10-14 end
+        Report_Product_Expiration__c,
+        Intra_Trade_List__c
+      FROM Consumable_order_details2__c
+      WHERE
+        Dealer_Arrive__c = TRUE
+        AND (Dealer_Shipment__c = TRUE
+        //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
+        OR Dealer_Saled__c = TRUE
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+        OR (Dealer_Shipment__c = FALSE
+        AND Dealer_Saled__c = FALSE
+        AND Lose_Flag__c = TRUE))
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+        AND Dealer_Info_text__c = :accountName
+        AND Bar_Code__c IN :GrListIn
+        AND Product_Type__c LIKE :userPro_Typestr
+        AND Dealer_Returned__c = FALSE
+        AND (Arrive_Owner_Work_Location__c = :userWorkLocation
+        OR OwnerId = :System.Label.User_OlympusSystem)
+      ORDER BY Box_Piece__c DESC, Name
+    ];
+    ShowGoodsofReturnList = new List<ConsumableorderdetailsInfo>();
+
+    //杩斿搧鏃秈stinct澶勭悊
+    if (ArrType == 'ReG') {
+      BarcodeRetrunResult = getDistinctZSOrder(BarcodeRetrunResult);
+    }
+
+    for (Consumable_order_details2__c codc : BarcodeRetrunResult) {
+      if (
+        ErrorIdMap.containsKey(codc.Bar_Code__c) ||
+        ExistIdMap.containsKey(codc.Bar_Code__c)
+      ) {
+        // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+        continue;
+      } else {
+        Matcher n = Pattern.compile('[0-9]').matcher(codc.TracingCode__c);
+        if (n.find()) {
+          // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
+          if (codc.TracingCode__c.length() == 5) {
+            String tr = codc.TracingCode__c;
+            String Ctr = tr.substring(tr.length() - 3, tr.length());
+            String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
+            String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
+            if (
+              Pattern.compile('[0-9]').matcher(Atr).find() ||
+              Pattern.compile('[0-9]').matcher(Ctr).find()
+            ) {
+              String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
+              ConsumableorderdetailsRecordserror.add(
+                new ConsumableorderdetailsInfo(codc, str)
+              );
+              ErrorIdMap.put(codc.Bar_Code__c, codc.Bar_Code__c);
+              continue;
+            }
+          }
+          // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+          // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(codc,str));
+          // ErrorIdMap.put(codc.Bar_Code__c,codc.Bar_Code__c);
+          // continue;
+          // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+        }
+        if (CheckBarcodeResult.containsKey(codc.Bar_Code__c)) {
+          GrList.add(codc.Bar_Code__c);
+          if (codc.Dealer_Shipment__c == true) {
+            CheckBarcodeResult.put(codc.Bar_Code__c, '宸插嚭搴�');
+            ShowGoodsofReturnList.add(new ConsumableorderdetailsInfo(codc));
+          }
+          // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+          // else{
+          //     CheckBarcodeResult.put( codc.Bar_Code__c, '宸查攢鍞�');
+          //     ShowGoodsofReturnList.add(  new ConsumableorderdetailsInfo( codc    )   );
+          // }
+          else if (codc.Dealer_Saled__c == true) {
+            CheckBarcodeResult.put(codc.Bar_Code__c, '宸查攢鍞�');
+            ShowGoodsofReturnList.add(new ConsumableorderdetailsInfo(codc));
+          } else {
+            CheckBarcodeResult.put(codc.Bar_Code__c, '宸蹭涪澶�');
+            ShowGoodsofReturnList.add(new ConsumableorderdetailsInfo(codc));
+          }
+          // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+        } else {
+          continue;
+        }
+      }
+    }
+
+    return BarcodeRetrunResult.size();
+  }
+
+  // 鍗曚綅涓轰釜鐨凚arcode瀵瑰簲鐨勫嚭搴撳崟
+  public integer Getconsumableorderdetails2Nobox() {
+    consumableorderdetails2Nobox = new List<Consumable_order_details2__c>();
+    BarcodeCntMap.clear();
+    consumableorderdetails2Nobox = [
+      SELECT
+        Id,
+        Consumable_order_minor__c,
+        Deliver_date__c,
+        Asset_Model_No__c,
+        Consumable_Product__c,
+        Consumable_Product__r.Name,
+        Consumable_Product__r.Name__c,
+        Name,
+        Bar_Code__c,
+        Arrive_date__c,
+        Dealer_Shipment__c,
+        Dealer_Saled__c,
+        Return_reason__c,
+        Consumable_Shipment_order__c,
+        Send_date__c,
+        Consumable_Sale_order__c,
+        Used_date__c,
+        SerialLotNo__c,
+        TracingCode__c,
+        Sterilization_limit__c,
+        Consumable_ZS_order__c,
+        Consumable_ZS_order__r.Name,
+        Product_OutDate__c,
+        Invoice_Date__c,
+        recordtypeid,
+        Consumable_Arrived_order__c,
+        Box_Piece__c,
+        RemoveBox_No__c,
+        RemoveBox_date__c,
+        Rrturn_count__c,
+        Dealer_Info_text__c,
+        Arrive_Owner_Work_Location__c,
+        Intra_Trade_List_RMB__c,
+        //add by rentx 2020-10-13 start 杩斿搧鏃� 鏂版暟鎹褰昐AP鍚堝悓鍙�
+        ContractNo_text__c /*,ContractNo__c*/,
+        // tcm start
+        Consumable_order_minor__r.ContractNo__c,
+        // tcm end
+        Report_Product_Expiration__c,
+        //add by rentx 2020-10-13 end
+        Intra_Trade_List__c
+      //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+      FROM Consumable_order_details2__c
+      WHERE
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+        // (Dealer_Shipment__c = true or Dealer_Saled__c =  true)
+        (Dealer_Shipment__c = TRUE
+        OR Dealer_Saled__c = TRUE
+        OR (Dealer_Shipment__c = FALSE
+        AND Dealer_Saled__c = FALSE
+        AND Lose_Flag__c = TRUE))
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+        AND Dealer_Info_text__c = :accountName
+        AND Bar_Code__c IN :noboxBarcodeList
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+        AND Dealer_Returned__c = FALSE
+        AND Box_Piece__c = '涓�'
+      ORDER BY Consumable_ZS_order__c, RemoveBox_No__c
+    ];
+
+    AggregateResult[] results = [
+      SELECT Consumable_ZS_order__c, Bar_Code__c, count(Id) recordCount
+      FROM Consumable_order_details2__c
+      WHERE
+        Dealer_Arrive__c = TRUE
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+        // AND  (Dealer_Shipment__c= true OR  Dealer_Saled__c = true)
+        AND (Dealer_Shipment__c = TRUE
+        OR Dealer_Saled__c = TRUE
+        OR (Dealer_Shipment__c = FALSE
+        AND Dealer_Saled__c = FALSE
+        AND Lose_Flag__c = TRUE))
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+        AND Dealer_Returned__c = FALSE
+        AND Bar_Code__c IN :noboxBarcodeList
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+        AND Box_Piece__c = '涓�'
+        AND Dealer_Info_text__c = :accountName
+      GROUP BY Consumable_ZS_order__c, Bar_Code__c
+    ];
+
+    for (AggregateResult ar : results) {
+      String key =
+        '' +
+        ar.get('Consumable_ZS_order__c') +
+        ar.get('Bar_Code__c');
+      BarcodeCntMap.put(key, Integer.valueOf(ar.get('recordCount')));
+    }
+
+    return consumableorderdetails2Nobox.size();
+  }
+
+  //distinct
+  public List<Consumable_order_details2__c> getDistinctZSOrder(
+    List<Consumable_order_details2__c> duplicates
+  ) {
+    List<Consumable_order_details2__c> distinctOrder = new List<Consumable_order_details2__c>();
+
+    for (Consumable_order_details2__c details2 : duplicates) {
+      Boolean found = false;
+      for (Consumable_order_details2__c result : distinctOrder) {
+        if (
+          details2.Consumable_ZS_order__c == result.Consumable_ZS_order__c &&
+          details2.Bar_Code__c == result.Bar_Code__c
+        ) {
+          found = true;
+          break;
+        }
+      }
+
+      if (!found) {
+        distinctOrder.add(details2);
+
+        if (details2.Box_Piece__c == '涓�')
+          noboxBarcodeList.add(details2.Bar_Code__c);
+      }
+    }
+    return distinctOrder;
+  }
+
+  // Update杩斿搧鏄庣粏淇℃伅
+  public Pagereference UpdateGoodsOfReturn() {
+    if (ShowGoodsofReturnList == null) {
+      GoodsReturnCheck();
+    }
+    Getconsumableorderdetails2Nobox();
+
+    Savepoint sp = Database.setSavepoint();
+    boolean hasReturnGoods = false;
+    boolean hasLoseGoods = false;
+    try {
+      if (ShowGoodsofReturnList.size() > 0 || consumableInventory.size() > 0) {
+        Consumable_order__c Return_Order_Sheet = new Consumable_order__c();
+        Return_Order_Sheet.Name = '*';
+        Return_Order_Sheet.Order_status__c = '鎵瑰噯';
+        Return_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+        Return_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
+        Return_Order_Sheet.Order_type__c = '杩斿搧';
+        Return_Order_Sheet.RecordTypeid = System.Label.Dealer_Returned_Label;
+        Return_Order_Sheet.Order_ProType__c = userPro_Type;
+        insert Return_Order_Sheet;
+        return_Order_id = Return_Order_Sheet.id;
+        List<Consumable_order__c> consumable_order_ret = [
+          SELECT Name
+          FROM Consumable_order__c
+          WHERE id = :Return_Order_Sheet.id
+        ];
+
+        //2017-07-03 鍒拌揣璁㈠崟
+        Consumable_order__c Arrived_Order_Sheet = new Consumable_order__c();
+        Arrived_Order_Sheet.Name = '*';
+        Arrived_Order_Sheet.Order_status__c = '鎵瑰噯';
+        Arrived_Order_Sheet.Order_type__c = '鍒拌揣';
+        Arrived_Order_Sheet.Dealer_Info__c = accountid;
+        Arrived_Order_Sheet.RecordTypeid = System.Label.RT_ConOrder_Arrive;
+        Arrived_Order_Sheet.Order_ProType__c = userPro_Type;
+        insert Arrived_Order_Sheet;
+        List<Consumable_order__c> consumable_order_arr = [
+          SELECT Name
+          FROM Consumable_order__c
+          WHERE id = :Arrived_Order_Sheet.id
+        ];
+
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+        // 铏氭嫙鐩樼偣鍗�
+        Consumable_order__c Inventory_Order_Sheet = new Consumable_order__c();
+        Inventory_Order_Sheet.Name = '*';
+        Inventory_Order_Sheet.Order_status__c = '鎵瑰噯';
+        Inventory_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+        Inventory_Order_Sheet.Inventory_date__c = Date.today();
+        Inventory_Order_Sheet.Dealer_Info__c = accountid;
+        Inventory_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
+        Inventory_Order_Sheet.Order_type__c = '鐩樼偣';
+        Inventory_Order_Sheet.RecordTypeid = System.Label.RT_ConOrder_Inventory;
+        Inventory_Order_Sheet.Order_ProType__c = userPro_Type;
+        insert Inventory_Order_Sheet;
+        inventory_Order_id = Inventory_Order_Sheet.id;
+        List<Consumable_order__c> consumable_order_Inv = [
+          SELECT Name
+          FROM Consumable_order__c
+          WHERE id = :Inventory_Order_Sheet.id
+        ];
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+
+        List<Consumable_order_details2__c> codcList = new List<Consumable_order_details2__c>();
+        //鏂拌杩斿搧瀵瑰簲鐨勪骇鍝佹槑缁�
+        List<Consumable_order_details2__c> codcorderdetList = new List<Consumable_order_details2__c>();
+        //杩斿搧鍘熷洜,杩斿搧鏁伴噺妫�鏌�
+        for (ConsumableorderdetailsInfo codi : ShowGoodsofReturnList) {
+          if (
+            codi.esd.Box_Piece__c == '涓�' &&
+            (codi.esd.Rrturn_count__c == null ||
+            String.valueof(codi.esd.Rrturn_count__c) == '' ||
+            codi.esd.Rrturn_count__c <= 0)
+          ) {
+            continue;
+          }
+
+          if (
+            codi.esd.Return_reason__c == null ||
+            codi.esd.Return_reason__c == ''
+          ) {
+            codi.esd.Return_reason__c.addError('璇疯ˉ鍏呰繑鍝佸師鍥�');
             return null;
-        }
-        if(EsetId != null && EsetId != ''){
-            resultcheck = ConfimResult();
-            if(resultcheck.length() > 0){
-                for(String widget : overOrderBARcodeCunMap.keySet()) {
-                    if(overOrderBARcodeCunMap.get(widget).size() >0){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            warningList.add('浜у搧' + widget + '鏈鍒拌揣鏁伴噺瓒呰繃' + overOrderBARcodeCunMap.get(widget).size() +'涓璐х殑鏁伴噺銆�');
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '浜у搧' + widget + '鏈鍒拌揣鏁伴噺瓒呰繃' + overOrderBARcodeCunMap.get(widget).size() +'涓璐х殑鏁伴噺銆�'));
-                        }
-                        for(String barcodeListTTT : (List<String>)overOrderBARcodeCunMap.get(widget)) {
-                            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                            if(isLwc){
-                                warningList.add(barcodeListTTT);
-                            }else {
-                                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT));
-                            }
-                        }
-                    }
-                }
-            }
-        }else{
-            confimResultWithoutOrder();
-        }
-        try{
-            Consumable_order__c orderMain = new Consumable_order__c();
-            List<Consumable_order_details2__c> orderdetails = New List<Consumable_order_details2__c>();
-            //鍒拌揣姝g‘淇℃伅
-            orderMain.Name            = '*';
-            orderMain.Order_status__c = '鎵瑰噯';
-            orderMain.Dealer_Info__c  = accountid;
-            orderMain.Deliver_date__c = Date.today();
-            orderMain.Order_date__c   = Date.today();
-            orderMain.Order_type__c   = '鍒拌揣';
-            orderMain.Order_ProType__c = userPro_Type;
-            if(EsetId != null && EsetId != ''){
-                orderMain.Arrive_Order__c = coc.Id;
-            }
-            orderMain.RecordTypeid = System.Label.RT_ConOrder_Arrive;
-            insert orderMain;
+          }
 
-            List<Consumable_order__c> consumable_order = [SELECT Name FROM Consumable_order__c WHERE id =:orderMain.id];
-            arriveId = orderMain.id;
-            Decimal arriveAmount =0;
-            for (ConsumableorderdetailsInfo ass : consumableorderdetailsRecordsUse)  {
-                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------1------'));
-                Consumable_order_details2__c insDetails = new Consumable_order_details2__c();
-                insDetails.Id                           = ass.esd.Id;
-                insDetails.Consumable_Arrived_order__c  = orderMain.id;
-                insDetails.Arrive_date__c               = Date.today();
-                insDetails.Bar_Code__c                  = ass.esd.Bar_Code__c;
-                insDetails.OwnerId                      = UserInfo.getUserId();
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
-                    insDetails.Transfer_Time__c = ass.esd.Transfer_Time__c == null ? 1 : ass.esd.Transfer_Time__c;
-                    insDetails.Agency_Transfer__c = true;
-                    insDetails.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c == null ? ass.esd.Dealer_Info_text__c : ass.esd.Frist_Transfer_Agency__c;
-                }
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                 
-                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                insDetails.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
-                insDetails.Frist_Storage_Agency__c  = ass.esd.Frist_Storage_Agency__c == null ? ass.esd.Dealer_Info_text__c : ass.esd.Frist_Storage_Agency__c;
-                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-                arriveAmount                            += ass.esd.Intra_Trade_List_RMB__c;
-                orderdetails.add(insDetails);
+          if (codi.esd.Box_Piece__c == '涓�' && codi.esd.Rrturn_count__c > 0) {
+            String key =
+              '' +
+              codi.esd.Consumable_ZS_order__c +
+              codi.esd.Bar_Code__c;
+            Integer deliverycnt = BarcodeCntMap.get(key);
+            if (codi.esd.Rrturn_count__c > deliverycnt) {
+              codi.esd.Rrturn_count__c.addError('瓒呭嚭鍑哄簱鏁伴噺');
+              return null;
             }
-            Integer i = 1;
-            for(ConsumableorderdetailsInfo ass : consumableInventoryUse){
-                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------'));
-                Consumable_order_details2__c insAfterDel = new Consumable_order_details2__c();
-                String str = ('000' + i).right(4);
-                // if(str.length() == 1){
-                //     str = '0' + str;
-                // }
-                insAfterDel.Name                        = consumable_order[0].Name + '-'+ str;
-                insAfterDel.RecordTypeId                = System.Label.RT_ConOrderDetail2_Delivery;
-                // gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                // if(EsetId != null && EsetId != ''){
-                //     insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
-                // }else{
-                //     insAfterDel.Intra_Trade_List_RMB__c = 0;
-                // }
-                    insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+          }
+        }
+
+        Integer tempNo = 0;
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+        List<Consumable_order_details2__c> conOrderDetail2InList = new List<Consumable_order_details2__c>();
+        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+        for (ConsumableorderdetailsInfo codi : ShowGoodsofReturnList) {
+          Consumable_order_details2__c codcorderdet = new Consumable_order_details2__c();
+
+          //鍗曚綅=涓�
+          if (
+            codi.esd.Box_Piece__c == '涓�' &&
+            (codi.esd.Rrturn_count__c == null ||
+            String.valueof(codi.esd.Rrturn_count__c) == '' ||
+            codi.esd.Rrturn_count__c <= 0)
+          ) {
+            continue;
+          }
+
+          if (codi.esd.Box_Piece__c == '涓�' && codi.esd.Rrturn_count__c > 0) {
+            hasReturnGoods = true;
+
+            Integer cnt = 1;
+            for (
+              Consumable_order_details2__c codctmp : consumableorderdetails2Nobox
+            ) {
+              if (
+                codctmp.Consumable_ZS_order__c ==
+                codi.esd.Consumable_ZS_order__c &&
+                codctmp.Bar_Code__c == codi.esd.Bar_Code__c
+              ) {
+                Consumable_order_details2__c esd = codctmp;
+                // esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
+                esd.Return_reason__c = codi.esd.Return_reason__c;
+                esd.Return_date__c = Date.today();
+                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+                // esd.Return_reason__c                = codi.esd.Return_reason__c;
+                // esd.Return_date__c                  = Date.today();
+                // esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
+                if (
+                  codi.esd.Dealer_Saled__c == false &&
+                  codi.esd.Dealer_Shipment__c == false &&
+                  codi.esd.Lose_Flag__c == true
+                ) {
+                  // esd.Lose_Flag__c = false;
+                  esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
+                  conOrderDetail2InList.add(esd);
+                  hasLoseGoods = true;
+                } else {
+                  // esd.Return_date__c                  = Date.today();
+                  esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+                }
+                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+                esd.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+
+                //淇敼杩斿搧鎵�鏈変汉
+                esd.OwnerId = UserInfo.getUserId();
+                esd.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
+
+                //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
+                codcorderdet = new Consumable_order_details2__c();
+                codcorderdet.Name =
+                  consumable_order_arr[0].name +
+                  '-' +
+                  String.valueOf(++tempNo).leftPad(4, '0');
+                codcorderdet.Consumable_order_minor__c = codi.esd.Consumable_order_minor__c;
+                codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
+                //淇敼鍒拌揣鎵�鏈変汉
+                codcorderdet.OwnerId = UserInfo.getUserId();
+                codcorderdet.Arrive_date__c = Date.today();
+                codcorderdet.Consumable_Product__c = codi.esd.Consumable_Product__c;
+                codcorderdet.Asset_Model_No__c = codi.esd.Asset_Model_No__c;
+                codcorderdet.Bar_Code__c = codi.esd.Bar_Code__c;
+                codcorderdet.Deliver_date__c = codi.esd.Deliver_date__c;
+                codcorderdet.SerialLotNo__c = codi.esd.SerialLotNo__c;
+                codcorderdet.TracingCode__c = codi.esd.TracingCode__c;
+                codcorderdet.Sterilization_limit__c = codi.esd.Sterilization_limit__c;
                 //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                insAfterDel.Asset_Model_No__c           = ass.Prod.Asset_Model_No__c;
-                if(EsetId != null && EsetId != ''){
-                    insAfterDel.Consumable_order_minor__c   = ESetId;
-                }
-                insAfterDel.Deliver_date__c             = Date.today();
-                insAfterDel.Direct_Arrive_Product__c    = true;
-                //TODO寰呯‘璁�
-                insAfterDel.Sterilization_limit__c      = ass.sterilizationlimitDate;
-                insAfterDel.Consumable_Product__c       = ass.Prod.id;
-                insAfterDel.Bar_Code__c                 = ass.barCodeNo;
-                insAfterDel.Used_account__c             = accountid;
-                //TODO寰呯‘璁�
-                insAfterDel.SerialLotNo__c              = ass.serialNoorLotNo;
-                insAfterDel.TracingCode__c              = ass.tracingCodeNo;
+                codcorderdet.Intra_Trade_List_RMB__c = (codi.esd.Intra_Trade_List_RMB__c ==
+                  null ||
+                  codi.esd.Intra_Trade_List_RMB__c == 0)
+                  ? codi.esd.Intra_Trade_List__c
+                  : codi.esd.Intra_Trade_List_RMB__c;
+                codcorderdet.RemoveBox_No__c = codctmp.RemoveBox_No__c;
+                codcorderdet.RemoveBox_date__c = codctmp.RemoveBox_date__c;
+                codcorderdet.Box_Piece__c = codctmp.Box_Piece__c;
 
-                //insAfterDel.Dealer_Arrive__c                = true;
-                insAfterDel.Consumable_Arrived_order__c = orderMain.id;
-                insAfterDel.Arrive_date__c              = Date.today();
-                insAfterDel.OwnerId                      = UserInfo.getUserId();
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
-                    insAfterDel.Transfer_Time__c = ass.esd.Transfer_Time__c == null ? 1 : ass.esd.Transfer_Time__c;
-                    insAfterDel.Agency_Transfer__c = true;
-                    insAfterDel.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c == null ? accountName : ass.esd.Frist_Transfer_Agency__c;
-                }
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                 
-                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                insAfterDel.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
-                insAfterDel.Frist_Storage_Agency__c  = ass.esd.Frist_Storage_Agency__c == null ? accountName : ass.esd.Frist_Storage_Agency__c;
-                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-                arriveAmount += insAfterDel.Intra_Trade_List_RMB__c;
-                //add by rentx 2020-10-14 strat
-                //insAfterDel.ContractNo_text__c      = /*ass.esd.ContractNo__c*/;
+                //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+                // codcorderdet.ContractNo_text__c= codctmp.ContractNo__c;
                 // tcm start
-                if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
-                    insAfterDel.ContractNo_text__c= ass.esd.ContractNo_text__c;
-                }else {
-                    insAfterDel.ContractNo_text__c= ass.esd.Consumable_order_minor__r.ContractNo__c;
+                if (
+                  String.isBlank(
+                    codctmp.Consumable_order_minor__r.ContractNo__c
+                  )
+                ) {
+                  codcorderdet.ContractNo_text__c = codctmp.ContractNo_text__c;
+                } else {
+                  codcorderdet.ContractNo_text__c = codctmp.Consumable_order_minor__r.ContractNo__c;
                 }
                 // tcm end
-                //add by rentx 2020-10-14 end
-                i++;
-
-                ins.add(insAfterDel);
-
-            }
-            orderMain.Arrive_total_amount__c = arriveAmount;
-            update orderMain;
-            List<Consumable_order_details2__c> updateconsumableorderdetails2 = new List<Consumable_order_details2__c>();
-            //鏇存柊鏄庣粏鍙栨秷鏃堕棿 => 鏈埌璐у彇娑堬紝鍒拌揣鑷姩鐢熸垚鍑哄簱娴佺▼
-            List<Consumable_order_details2__c> addSaleOrderList = new List<Consumable_order_details2__c> ();
-            for(Consumable_order_details2__c Cod : consumableorderdetails2Cancle){
-                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------3------'));
-                if (Cod.Dealer_Arrive__c) {
-                    if (Cod.Dealer_Shipment__c == FALSE && Cod.Dealer_Saled__c == FALSE) {
-                        addSaleOrderList.add(Cod);
-                    }
-                } else {
-                    Cod.Cancellation_Date__c = Date.today();
-                    Cod.Cancellation_Flag__c = true;
-                    updateconsumableorderdetails2.add(Cod);
-                }
-            }
-
-            if (addSaleOrderList.size() > 0) {
-                addSaleOrderAuto(addSaleOrderList);
-            }
-
-            if(updateconsumableorderdetails2.size() > 0){
-                update updateconsumableorderdetails2;
-            }
-
-            List<Consumable_order_details2__c> insertconsumableorderdetails2 = new List<Consumable_order_details2__c>();
-            for(Consumable_order_details2__c Cod2 : consumableorderdetails2Insert){
-                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------'));
-                String str = ('000' + i).right(4);
-                // if(str.length() == 1){
-                //     str = '0' + str;
-                // }
-                Cod2.Name                        = consumable_order[0].Name + '-'+ str;
-                Cod2.Consumable_order_minor__c   = null;
-                Cod2.Deliver_date__c             = Date.today();
-                Cod2.Used_account__c             = accountid;
-                Cod2.Consumable_Arrived_order__c = orderMain.id;
-                Cod2.Arrive_date__c              = Date.today();
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
-                if (orderdetails2trMap.containsKey(Cod2.Bar_Code__c)) {
-                    //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4++++++' + Cod2.Frist_Storage_Agency__c));
-                    Cod2.Transfer_Time__c = Cod2.Transfer_Time__c == null ? 1 : Cod2.Transfer_Time__c;
-                    Cod2.Agency_Transfer__c = true;
-                    Cod2.Frist_Transfer_Agency__c = Cod2.Frist_Transfer_Agency__c == null ? accountName : Cod2.Frist_Transfer_Agency__c;
-                }
-                // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-                 
-                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                Cod2.Agencyinfo_fromSAP__c        = Cod2.Agencyinfo_fromSAP__c;
-                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------' + Cod2.Frist_Storage_Agency__c));
-                Cod2.Frist_Storage_Agency__c      = Cod2.Frist_Storage_Agency__c == null ? accountName : Cod2.Frist_Storage_Agency__c;
-                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-                insertconsumableorderdetails2.add(Cod2);
-                i++;
-            }
-
-            //return null;
-
-            if(insertconsumableorderdetails2.size() >0){
-                insert insertconsumableorderdetails2;
-            }
-
-            if(ins.size()>0){
-                insert ins;
-            }
-            if(orderdetails.size()>0){
-                ControllerUtil.updateOrderDetailsSatus(orderdetails);
-            }
-            //瓒呭嚭鍒拌揣鏁伴噺浜у搧鍙栨秷鏃ユ湡鏇存柊
-            List<Consumable_order_details2__c> needcanceldet = new List<Consumable_order_details2__c>();
-            if(cancellationProList.size() > 0){
-                needcanceldet = [SELECT Id,
-                                    Cancellation_Date__c
-                                FROM Consumable_order_details2__c
-                                WHERE Asset_Model_No__c in :cancellationProList
-                                AND Consumable_order_minor__c = :ESetId
-                                AND Dealer_Arrive__c = FALSE
-                                AND Cancellation_Date__c = null ];
-                if(needcanceldet.size() >0){
-                    for(Integer a = 0; a < needcanceldet.size(); a++){
-                        needcanceldet[a].Cancellation_Date__c = Date.today();
-                        needcanceldet[a].Cancellation_Flag__c = true;
-                    }
-                    ControllerUtil.updateOrderDetailsSatus(needcanceldet);
-                }
-            }
-            List<Consumable_order__c> qs = New List<Consumable_order__c>();
-            qs = [SELECT Id,Name,Order_status__c,Dealer_Info__c,Deliver_date__c,ReturnGs_Upload_Date__c,
-                        Order_Reason__c,Order_date__c,
-                        Contract_application_decision__c,Order_type__c,Total_num__c,
-                        OrderNumber_arrived__c,Delivery_detail_count__c,OrderNumber_notarrive__c
-                    FROM Consumable_order__c
-                    WHERE Id =:ESetId
-                    AND Dealer_Info__c = :accountid];
-            if (qs.size()>0){
-                coc = qs[0];
-            }
-            saveFLGbln = true;
-            alertMessage = '鍒拌揣瀹屾垚銆�';
-            // Integer a = 1/0;
-        }catch(Exception e){
-            Database.rollback(sp);
-            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-            if(isLwc){
-                returnError = e.getLineNumber()+'---'+e.getMessage();
-            }else {
-                ApexPages.addMessages(e);
-            }
-            return null;
-        }
-        if(resultcheck.length() > 0){
-            return null;
-        }else if(resultcheckWithoutOrder.size() >0){
-            return null;
-        } else{
-            urlType = 'UnabletoEdit';
-            return UnabletoEdit();
-            // return null;
-        }
-    }
-    
-    // 杩斿搧妫�鏌ワ紝鍚庡洖搴�
-    public integer GoodsReturnCheck(){
-        List<String> GrListIn  =   ParseBarCode(   barcode );
-        GrList = new List<String>();
-        Map<String,String>  CheckBarcodeResult  =   new Map<String,String>();
-        for(    String  Str :   GrListIn  ){
-            CheckBarcodeResult.put( str , 'UnFind');
-        }
-        List<Consumable_order_details2__c>   BarcodeRetrunResult =
-                 [  SELECT  Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
-                            Consumable_Product__c,Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
-                            Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
-                            Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
-                            Consumable_order_minor__c,Dealer_Arrive__c,
-                            Guarantee_period_for_products__c,CFDA_Status__c,
-                            ProductPacking_list_manual__c,Report_Product_Approbation__c,
-                            Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
-                            Product_Type__c
-                            //add by rentx 2020-10-14 start
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                            //add by rentx 2020-10-14 end
-                    FROM    Consumable_order_details2__c
-                    WHERE   ((Dealer_Arrive__c = true
-                            AND(  Dealer_Shipment__c = true
-                                    //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
-                                  or  Dealer_Saled__c = true
-                                )
-                            ))
-                    AND     Dealer_Info_text__c = :accountName
-                    AND     Bar_Code__c in :GrListIn
-                    AND     ( not Product_Type__c  like :userPro_Typestr)
-                    AND     Dealer_Returned__c = false
-                    AND     Arrive_Owner_Work_Location__c =: userWorkLocation
-                    ORDER BY Box_Piece__c desc,Name ];
-        if(BarcodeRetrunResult.size()>0){
-            for (Integer i = 0; i < BarcodeRetrunResult.size(); i++) {
-                if(ErrorIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c) || ExistIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c)){
-                    // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                    continue;
-                }else{
-                    String str = '浜у搧绫诲瀷['+BarcodeRetrunResult[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
-                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(BarcodeRetrunResult[i],str));
-                    ErrorIdMap.put(BarcodeRetrunResult[i].Bar_Code__c,BarcodeRetrunResult[i].Bar_Code__c);
-                }
-            }
-        }
-        AllMap.putAll(ErrorIdMap);
-        BarcodeRetrunResult =
-                 [  SELECT  Id,
-                            Consumable_order_minor__c,
-                            Deliver_date__c,
-                            Asset_Model_No__c,
-                            Consumable_Product__c,
-                            Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,
-                            Name,
-                            Bar_Code__c,
-                            Arrive_date__c,
-                            Dealer_Shipment__c,
-                            Lose_Flag__c,
-                            Dealer_Saled__c,
-                            Return_reason__c,
-                            Consumable_Shipment_order__c,
-                            Consumable_Shipment_order__r.Name,
-                            Send_date__c,
-                            Consumable_Sale_order__c,
-                            Consumable_Sale_order__r.Name,
-                            Used_date__c,
-                            SerialLotNo__c,
-                            TracingCode__c,
-                            Sterilization_limit__c,
-                            Consumable_ZS_order__c,
-                            Consumable_ZS_order__r.Name,
-                            Product_OutDate__c,
-                            Invoice_Date__c,
-                            recordtypeid,
-                            Consumable_Arrived_order__c,
-                            Box_Piece__c,
-                            Rrturn_count__c,
-                            Intra_Trade_List_RMB__c,
-                            OwnerId,
-                            SummonsForDirction_det__c,
-                            Order_Dealer_Info__c,
-                            HospItal_Name__c,
-                            Agencyinfo_fromSAP__c,
-                            Frist_Storage_Agency__c,
-                            Dealer_Info_text__c,
-                            Used_account__c,
-                            Transfer_Time__c,
-                            Frist_Transfer_Agency__c,
-                            Arrive_Owner_Work_Location__c,
-                            Agency_Transfer__c
-                            //add by rentx 2020-10-14 start
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                            // tcm start
-                            ,Consumable_order_minor__r.ContractNo__c
-                            // tcm end
-                            //add by rentx 2020-10-14 end
-                            ,Report_Product_Expiration__c 
-                            ,Intra_Trade_List__c
-                    FROM    Consumable_order_details2__c
-                    WHERE   ((Dealer_Arrive__c = true
-                            AND(  Dealer_Shipment__c = true
-                                    //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
-                                  or  Dealer_Saled__c = true
-                                  // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                                  or (Dealer_Shipment__c = false and Dealer_Saled__c = false and Lose_Flag__c = true)
-                                  // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                                )
-                            ))
-                    AND     Dealer_Info_text__c = :accountName
-                    AND     Bar_Code__c in :GrListIn
-                    AND     Product_Type__c  like :userPro_Typestr 
-                    AND     Dealer_Returned__c = false
-                    AND     (Arrive_Owner_Work_Location__c =: userWorkLocation
-                        OR OwnerId = :System.Label.User_OlympusSystem)
-                    ORDER BY Box_Piece__c desc,Name ];
-        ShowGoodsofReturnList   =   new List<ConsumableorderdetailsInfo>();
-
-        //杩斿搧鏃秈stinct澶勭悊
-        if(ArrType=='ReG'){
-            BarcodeRetrunResult = getDistinctZSOrder(BarcodeRetrunResult);
-        }
-
-        for(    Consumable_order_details2__c codc    :   BarcodeRetrunResult ){
-            if(ErrorIdMap.containsKey(codc.Bar_Code__c) || ExistIdMap.containsKey(codc.Bar_Code__c)){
-                // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
-                continue;
-            }else{
-
-                Matcher n = Pattern.compile('[0-9]').matcher(codc.TracingCode__c);
-                if(n.find()){
-                    // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
-                            if (codc.TracingCode__c.length() == 5) {
-                                String tr = codc.TracingCode__c;
-                                String Ctr = tr.substring(tr.length() - 3,tr.length());
-                                String Btr = tr.substring(tr.length() - 4,tr.length()-3);
-                                String Atr = tr.substring(tr.length() - 5,tr.length()-4);
-                                if (Pattern.compile('[0-9]').matcher(Atr).find() || Pattern.compile('[0-9]').matcher(Ctr).find()) {
-                                    String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
-                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(codc,str));
-                    ErrorIdMap.put(codc.Bar_Code__c,codc.Bar_Code__c);
-                    continue;
-                }
-                            }
-                            // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
-                            // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(codc,str));
-                            // ErrorIdMap.put(codc.Bar_Code__c,codc.Bar_Code__c);
-                            // continue;
-                            // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
-                }
-                if( CheckBarcodeResult.containsKey( codc.Bar_Code__c    )){
-                    GrList.add(codc.Bar_Code__c);
-                    if( codc.Dealer_Shipment__c ==  true){
-                        CheckBarcodeResult.put( codc.Bar_Code__c,   '宸插嚭搴�'   );
-                        ShowGoodsofReturnList.add(  new ConsumableorderdetailsInfo( codc    )   );
-                    }
-                    // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                    // else{
-                    //     CheckBarcodeResult.put( codc.Bar_Code__c, '宸查攢鍞�');
-                    //     ShowGoodsofReturnList.add(  new ConsumableorderdetailsInfo( codc    )   );
-                    // }
-                    else if( codc.Dealer_Saled__c == true ){
-                        CheckBarcodeResult.put( codc.Bar_Code__c, '宸查攢鍞�');
-                        ShowGoodsofReturnList.add(  new ConsumableorderdetailsInfo( codc    )   );
-                    }else{
-                        CheckBarcodeResult.put( codc.Bar_Code__c, '宸蹭涪澶�');
-                        ShowGoodsofReturnList.add(  new ConsumableorderdetailsInfo( codc    )   );
-                    }
-                    // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                }else{
-                    continue;
-                }
-            }
-        }
-
-        return BarcodeRetrunResult.size();
-    }
-
-    // 鍗曚綅涓轰釜鐨凚arcode瀵瑰簲鐨勫嚭搴撳崟
-    public integer Getconsumableorderdetails2Nobox(){
-        consumableorderdetails2Nobox = new List<Consumable_order_details2__c>();
-        BarcodeCntMap.clear();
-        consumableorderdetails2Nobox =
-                 [  SELECT  Id,
-                            Consumable_order_minor__c,
-                            Deliver_date__c,
-                            Asset_Model_No__c,
-                            Consumable_Product__c,
-                            Consumable_Product__r.Name,
-                            Consumable_Product__r.Name__c,
-                            Name,
-                            Bar_Code__c,
-                            Arrive_date__c,
-                            Dealer_Shipment__c,
-                            Dealer_Saled__c,
-                            Return_reason__c,
-                            Consumable_Shipment_order__c,
-                            Send_date__c,
-                            Consumable_Sale_order__c,
-                            Used_date__c,
-                            SerialLotNo__c,
-                            TracingCode__c,
-                            Sterilization_limit__c,
-                            Consumable_ZS_order__c,
-                            Consumable_ZS_order__r.Name,
-                            Product_OutDate__c,
-                            Invoice_Date__c,
-                            recordtypeid,
-                            Consumable_Arrived_order__c,
-                            Box_Piece__c,
-                            RemoveBox_No__c,
-                            RemoveBox_date__c,
-                            Rrturn_count__c,
-                            Dealer_Info_text__c,
-                            Arrive_Owner_Work_Location__c,
-                            Intra_Trade_List_RMB__c
-                            //add by rentx 2020-10-13 start 杩斿搧鏃� 鏂版暟鎹褰昐AP鍚堝悓鍙�
-                            ,ContractNo_text__c/*,ContractNo__c*/
-                             // tcm start
-                             ,Consumable_order_minor__r.ContractNo__c
-                             // tcm end
-                            ,Report_Product_Expiration__c
-                            //add by rentx 2020-10-13 end
-                            ,Intra_Trade_List__c
-                            //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                    FROM    Consumable_order_details2__c
-                    WHERE
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                            // (Dealer_Shipment__c = true or Dealer_Saled__c =  true)
-                            (Dealer_Shipment__c = true or Dealer_Saled__c =  true or (Dealer_Shipment__c = false and Dealer_Saled__c = false and Lose_Flag__c = true))
-                            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                    AND     Dealer_Info_text__c = :accountName
-                    AND     Bar_Code__c in :noboxBarcodeList
-                    AND     Arrive_Owner_Work_Location__c =: userWorkLocation
-                    AND     Dealer_Returned__c = false
-                    AND     Box_Piece__c = '涓�'
-                    ORDER BY Consumable_ZS_order__c,RemoveBox_No__c];
-
-         AggregateResult[] results = [SELECT  Consumable_ZS_order__c,Bar_Code__c,count(Id) recordCount 
-                                      FROM Consumable_order_details2__c 
-                                      WHERE Dealer_Arrive__c = true
-                                      // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                                      // AND  (Dealer_Shipment__c= true OR  Dealer_Saled__c = true)
-                                      AND  (Dealer_Shipment__c= true OR  Dealer_Saled__c = true or(Dealer_Shipment__c = false and Dealer_Saled__c = false and Lose_Flag__c = true))
-                                      // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                                      AND  Dealer_Returned__c = false
-                                      AND  Bar_Code__c in :noboxBarcodeList
-                                      AND  Arrive_Owner_Work_Location__c =: userWorkLocation
-                                      AND  Box_Piece__c = '涓�'
-                                      AND Dealer_Info_text__c = :accountName
-                                      GROUP BY Consumable_ZS_order__c,Bar_Code__c];
-
-        for(AggregateResult ar: results){               
-            String key = '' + ar.get('Consumable_ZS_order__c') + ar.get('Bar_Code__c');
-            BarcodeCntMap.put(key, Integer.valueOf(ar.get('recordCount')));
-        }
-                                         
-        return consumableorderdetails2Nobox.size();
-    }
-
-    //distinct
-    public List<Consumable_order_details2__c>  getDistinctZSOrder(List<Consumable_order_details2__c>  duplicates){
-        List<Consumable_order_details2__c>  distinctOrder = new List<Consumable_order_details2__c>();
-        
-        for(Consumable_order_details2__c details2 : duplicates){
-            Boolean found = false;
-            for(Consumable_order_details2__c result : distinctOrder){
-                if(details2.Consumable_ZS_order__c == result.Consumable_ZS_order__c
-                   && details2.Bar_Code__c == result.Bar_Code__c){
-                    found = true;
-                    break;
-                }
-            }
-
-            if(!found){
-                distinctOrder.add(details2);
-
-                if(details2.Box_Piece__c == '涓�') noboxBarcodeList.add(details2.Bar_Code__c);
-            } 
-        }
-        return distinctOrder;
-    }
-
-        // Update杩斿搧鏄庣粏淇℃伅
-    public Pagereference UpdateGoodsOfReturn(){
-        if( ShowGoodsofReturnList==null){
-            GoodsReturnCheck();
-        }
-        Getconsumableorderdetails2Nobox();
-
-        Savepoint sp = Database.setSavepoint();
-        boolean hasReturnGoods = false;
-        boolean hasLoseGoods = false;
-        try{
-            if( ShowGoodsofReturnList.size() >0 || consumableInventory.size()>0 ){
-
-                Consumable_order__c Return_Order_Sheet     = new Consumable_order__c();
-                Return_Order_Sheet.Name                    ='*';
-                Return_Order_Sheet.Order_status__c         = '鎵瑰噯';
-                Return_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
-                Return_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
-                Return_Order_Sheet.Order_type__c           = '杩斿搧';
-                Return_Order_Sheet.RecordTypeid            =System.Label.Dealer_Returned_Label;
-                Return_Order_Sheet.Order_ProType__c        = userPro_Type;
-                insert Return_Order_Sheet;
-                return_Order_id = Return_Order_Sheet.id;
-                List<Consumable_order__c> consumable_order_ret = [SELECT Name FROM Consumable_order__c WHERE id =:Return_Order_Sheet.id];
-                
-                //2017-07-03 鍒拌揣璁㈠崟
-                Consumable_order__c Arrived_Order_Sheet     = new Consumable_order__c();
-                Arrived_Order_Sheet.Name                    ='*';
-                Arrived_Order_Sheet.Order_status__c         = '鎵瑰噯';
-                Arrived_Order_Sheet.Order_type__c           = '鍒拌揣';
-                Arrived_Order_Sheet.Dealer_Info__c          =accountid;
-                Arrived_Order_Sheet.RecordTypeid            =System.Label.RT_ConOrder_Arrive;
-                Arrived_Order_Sheet.Order_ProType__c        = userPro_Type;
-                insert Arrived_Order_Sheet;
-                List<Consumable_order__c> consumable_order_arr = [SELECT Name FROM Consumable_order__c WHERE id =:Arrived_Order_Sheet.id];
+                //add by rentx 2020-10-13 end   杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
 
                 // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                // 铏氭嫙鐩樼偣鍗�
-                Consumable_order__c Inventory_Order_Sheet     = new Consumable_order__c();
-                Inventory_Order_Sheet.Name                    ='*';
-                Inventory_Order_Sheet.Order_status__c         = '鎵瑰噯';
-                Inventory_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
-                Inventory_Order_Sheet.Inventory_date__c       = Date.today();
-                Inventory_Order_Sheet.Dealer_Info__c          =accountid;
-                Inventory_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
-                Inventory_Order_Sheet.Order_type__c           = '鐩樼偣';
-                Inventory_Order_Sheet.RecordTypeid            = System.Label.RT_ConOrder_Inventory;
-                Inventory_Order_Sheet.Order_ProType__c        = userPro_Type;
-                insert Inventory_Order_Sheet;
-                inventory_Order_id = Inventory_Order_Sheet.id;
-                //List<Consumable_order__c> consumable_order_Inv = [SELECT Name FROM Consumable_order__c WHERE id =:Inventory_Order_Sheet.id]; //Commented By Li Jun 20230616
+                if (hasLoseGoods) {
+                  codcorderdet.loseInventory__c = true;
+                }
                 // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
 
-                List<Consumable_order_details2__c>   codcList    =   new List<Consumable_order_details2__c>();
-                //鏂拌杩斿搧瀵瑰簲鐨勪骇鍝佹槑缁�
-                List<Consumable_order_details2__c>   codcorderdetList    =   new List<Consumable_order_details2__c>();
-                //杩斿搧鍘熷洜,杩斿搧鏁伴噺妫�鏌�
-                for( ConsumableorderdetailsInfo  codi    :   ShowGoodsofReturnList ){
-                    if (codi.esd.Box_Piece__c =='涓�' && (
-                        codi.esd.Rrturn_count__c == null || 
-                        String.valueof(codi.esd.Rrturn_count__c) =='' || 
-                        codi.esd.Rrturn_count__c <= 0)){
-                        continue;
-                    }
+                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+                // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
+                codcorderdet.Used_account__c = codi.esd.Used_account__c;
+                codcorderdet.Transfer_Time__c = codi.esd.Transfer_Time__c;
+                codcorderdet.Frist_Transfer_Agency__c = codi.esd.Frist_Transfer_Agency__c;
+                codcorderdet.Agency_Transfer__c = codi.esd.Agency_Transfer__c;
 
-                    if(codi.esd.Return_reason__c==null||codi.esd.Return_reason__c==''){
-                        if(isLwc){
-                            returnError = '璇疯ˉ鍏呰繑鍝佸師鍥�';
-                        }else {
-                            codi.esd.Return_reason__c.addError('璇疯ˉ鍏呰繑鍝佸師鍥�');
-                        }
-                        return null;
-                    }
+                codcorderdet.Agencyinfo_fromSAP__c = codi.esd.Agencyinfo_fromSAP__c;
+                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------1------' + codi.esd.Frist_Storage_Agency__c));
+                codcorderdet.Frist_Storage_Agency__c = codi.esd.Frist_Storage_Agency__c ==
+                  null
+                  ? codi.esd.Dealer_Info_text__c
+                  : codi.esd.Frist_Storage_Agency__c;
+                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+                codcorderdetList.add(codcorderdet);
+                codcList.add(esd);
 
-
-                    if(codi.esd.Box_Piece__c=='涓�' && codi.esd.Rrturn_count__c > 0){
-                        String key = '' + codi.esd.Consumable_ZS_order__c + codi.esd.Bar_Code__c;
-                        Integer deliverycnt = BarcodeCntMap.get(key);
-                        if(codi.esd.Rrturn_count__c > deliverycnt){
-                            if(isLwc){
-                                returnError = '瓒呭嚭鍑哄簱鏁伴噺';
-                            }else {
-                                codi.esd.Rrturn_count__c.addError('瓒呭嚭鍑哄簱鏁伴噺');
-                            }
-                            return null;
-                        }  
-                    }
-                }
-
-                Integer tempNo=0;
-                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                List<Consumable_order_details2__c> conOrderDetail2InList = new List<Consumable_order_details2__c>();
-                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                for( ConsumableorderdetailsInfo  codi    :   ShowGoodsofReturnList ){
-                    Consumable_order_details2__c codcorderdet = new Consumable_order_details2__c();
-                    
-                    //鍗曚綅=涓�
-                    if (codi.esd.Box_Piece__c =='涓�' && (
-                        codi.esd.Rrturn_count__c == null || 
-                        String.valueof(codi.esd.Rrturn_count__c) =='' || 
-                        codi.esd.Rrturn_count__c <= 0)){
-                        continue;
-                    }
-
-                    if(codi.esd.Box_Piece__c=='涓�' && codi.esd.Rrturn_count__c > 0){
-                        hasReturnGoods = true;
-
-                        Integer cnt = 1;
-                        for(Consumable_order_details2__c codctmp    :   consumableorderdetails2Nobox ){
-                            if(codctmp.Consumable_ZS_order__c == codi.esd.Consumable_ZS_order__c && codctmp.Bar_Code__c == codi.esd.Bar_Code__c){
-                                Consumable_order_details2__c esd = codctmp;
-                                // esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
-                                esd.Return_reason__c                = codi.esd.Return_reason__c;
-                                esd.Return_date__c                  = Date.today();
-                                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                                // esd.Return_reason__c                = codi.esd.Return_reason__c;
-                                // esd.Return_date__c                  = Date.today();
-                                // esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
-                                if(codi.esd.Dealer_Saled__c == false && codi.esd.Dealer_Shipment__c == false && codi.esd.Lose_Flag__c == true){
-                                    // esd.Lose_Flag__c = false;
-                                    esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
-                                    conOrderDetail2InList.add(esd);
-                                    hasLoseGoods = true;
-                                }
-                                else{
-                                    // esd.Return_date__c                  = Date.today();
-                                    esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
-                                    
-                                }
-                                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                                esd.ReturnGs_Uploader_ID__c         = UserInfo.getUserId();
-                                
-                                //淇敼杩斿搧鎵�鏈変汉
-                                esd.OwnerId                         = UserInfo.getUserId();
-                                esd.RecordTypeId                    = System.Label.RT_ConOrderDetail2_Return;
-                               
-                                //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
-                                codcorderdet = new Consumable_order_details2__c();
-                                codcorderdet.Name                        = consumable_order_arr[0].name + '-' + String.valueOf(++tempNo).leftPad(4,'0');
-                                codcorderdet.Consumable_order_minor__c   = codi.esd.Consumable_order_minor__c;
-                                codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
-                                //淇敼鍒拌揣鎵�鏈変汉
-                                codcorderdet.OwnerId                     = UserInfo.getUserId();
-                                codcorderdet.Arrive_date__c              = Date.today();
-                                codcorderdet.Consumable_Product__c       = codi.esd.Consumable_Product__c;
-                                codcorderdet.Asset_Model_No__c           = codi.esd.Asset_Model_No__c;
-                                codcorderdet.Bar_Code__c                 = codi.esd.Bar_Code__c;
-                                codcorderdet.Deliver_date__c             = codi.esd.Deliver_date__c;
-                                codcorderdet.SerialLotNo__c              = codi.esd.SerialLotNo__c;
-                                codcorderdet.TracingCode__c              = codi.esd.TracingCode__c;
-                                codcorderdet.Sterilization_limit__c      = codi.esd.Sterilization_limit__c;
-                                //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                                codcorderdet.Intra_Trade_List_RMB__c     =  (codi.esd.Intra_Trade_List_RMB__c == null || codi.esd.Intra_Trade_List_RMB__c == 0) ? codi.esd.Intra_Trade_List__c : codi.esd.Intra_Trade_List_RMB__c;
-                                codcorderdet.RemoveBox_No__c             = codctmp.RemoveBox_No__c;
-                                codcorderdet.RemoveBox_date__c           = codctmp.RemoveBox_date__c;
-                                codcorderdet.Box_Piece__c                = codctmp.Box_Piece__c;
-
-                                //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
-                                // codcorderdet.ContractNo_text__c= codctmp.ContractNo__c;
-                                // tcm start
-                                if (String.isBlank(codctmp.Consumable_order_minor__r.ContractNo__c)) {
-                                    codcorderdet.ContractNo_text__c= codctmp.ContractNo_text__c;
-                                }else {
-                                    codcorderdet.ContractNo_text__c= codctmp.Consumable_order_minor__r.ContractNo__c;
-                                }
-                                // tcm end
-                                //add by rentx 2020-10-13 end   杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
-
-
-                                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                                if(hasLoseGoods){
-                                    codcorderdet.loseInventory__c = true;
-                                }
-                                // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                                 
-                                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                                // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
-                                codcorderdet.Used_account__c             = codi.esd.Used_account__c;
-                                codcorderdet.Transfer_Time__c            = codi.esd.Transfer_Time__c;
-                                codcorderdet.Frist_Transfer_Agency__c    = codi.esd.Frist_Transfer_Agency__c;
-                                codcorderdet.Agency_Transfer__c          = codi.esd.Agency_Transfer__c;
-
-                                codcorderdet.Agencyinfo_fromSAP__c       = codi.esd.Agencyinfo_fromSAP__c;
-                                //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------1------' + codi.esd.Frist_Storage_Agency__c));
-                                codcorderdet.Frist_Storage_Agency__c     = codi.esd.Frist_Storage_Agency__c == null ? codi.esd.Dealer_Info_text__c : codi.esd.Frist_Storage_Agency__c;
-                                // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-                                codcorderdetList.add(codcorderdet);
-                                codcList.add(   esd    );
-
-                                cnt++;
-                                if(cnt > codi.esd.Rrturn_count__c) break;
-                            }
-
-                        }
-                    }
-                    else{
-                        hasReturnGoods = true;
-                        //鍗曚綅=鐩�
-                        //changeinvoiceInfo(codi.esd);
-                        //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
-                        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                        codi.esd.Return_date__c                  = Date.today();
-                        // codi.esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
-                        if(codi.esd.Dealer_Saled__c == false && codi.esd.Dealer_Shipment__c == false && codi.esd.Lose_Flag__c == true){
-                            codi.esd.Lose_Flag__c = false;
-                            codi.esd.Return_reason__c = '';
-                            codi.esd.Consumable_Inventory_order__c      = Inventory_Order_Sheet.id;
-                            conOrderDetail2InList.add(codi.esd);
-                            hasLoseGoods = true;
-                        }
-                        else{
-                            // codi.esd.Return_date__c                  = Date.today();
-                            codi.esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
-                            
-                        }
-                        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                        codi.esd.ReturnGs_Uploader_ID__c         = UserInfo.getUserId();
-                        // codi.esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
-                        //淇敼杩斿搧鎵�鏈変汉
-                        codi.esd.OwnerId                             = UserInfo.getUserId();
-                        codi.esd.RecordTypeId                    = System.Label.RT_ConOrderDetail2_Return;
-                        codcorderdet.Name                        = consumable_order_arr[0].name + '-' + String.valueOf(++tempNo).leftPad(4,'0');
-                        codcorderdet.Consumable_order_minor__c   = codi.esd.Consumable_order_minor__c;
-                        codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
-                        //淇敼鍒拌揣鎵�鏈変汉
-                        codcorderdet.OwnerId                     = UserInfo.getUserId();
-                        codcorderdet.Arrive_date__c              = Date.today();
-                        codcorderdet.Consumable_Product__c       = codi.esd.Consumable_Product__c;
-                        codcorderdet.Asset_Model_No__c           = codi.esd.Asset_Model_No__c;
-                        codcorderdet.Bar_Code__c                 = codi.esd.Bar_Code__c;
-                        codcorderdet.Deliver_date__c             = codi.esd.Deliver_date__c;
-                        codcorderdet.SerialLotNo__c              = codi.esd.SerialLotNo__c;
-                        codcorderdet.TracingCode__c              = codi.esd.TracingCode__c;
-                        codcorderdet.Sterilization_limit__c      = codi.esd.Sterilization_limit__c;
-                        //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                        codcorderdet.Intra_Trade_List_RMB__c     =  (codi.esd.Intra_Trade_List_RMB__c == null || codi.esd.Intra_Trade_List_RMB__c == 0) ? codi.esd.Intra_Trade_List__c : codi.esd.Intra_Trade_List_RMB__c;
-                        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                        if(hasLoseGoods){
-                            codcorderdet.loseInventory__c = true;
-                        }
-                        // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-                        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                        // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
-                        codcorderdet.Used_account__c             = codi.esd.Used_account__c;
-                        codcorderdet.Transfer_Time__c            = codi.esd.Transfer_Time__c;
-                        codcorderdet.Frist_Transfer_Agency__c    = codi.esd.Frist_Transfer_Agency__c;
-                        codcorderdet.Agency_Transfer__c          = codi.esd.Agency_Transfer__c;
-
-                        codcorderdet.Agencyinfo_fromSAP__c        = codi.esd.Agencyinfo_fromSAP__c;
-                        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------' + codi.esd.Frist_Storage_Agency__c));
-                        codcorderdet.Frist_Storage_Agency__c      = codi.esd.Frist_Storage_Agency__c == null ? codi.esd.Dealer_Info_text__c : codi.esd.Frist_Storage_Agency__c;
-                        // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-
-                        //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
-                        // codcorderdet.ContractNo_text__c          = /*codi.esd.ContractNo__c*/;
-                        // tcm start
-                        if (String.isBlank(codi.esd.Consumable_order_minor__r.ContractNo__c)) {
-                            codcorderdet.ContractNo_text__c= codi.esd.ContractNo_text__c;
-                        }else {
-                            codcorderdet.ContractNo_text__c= codi.esd.Consumable_order_minor__r.ContractNo__c;
-                        }
-                        // tcm end
-                        //add by rentx 2020-10-13 end   杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
-
-                        codcorderdetList.add(codcorderdet);
-                        codcList.add(   codi.esd    );
-                    }
-                }
-
-                //鏄庣粏2涓嶅瓨鍦ㄧ殑瀵瑰簲鐨勫埌璐ц鍗曟槑缁� 2017-07-05
-                Integer i = 1;
-                //for(ConsumableorderdetailsInfo ass : consumableInventoryUse){
-                for(ConsumableorderdetailsInfo ass : consumableInventory){
-                    hasReturnGoods = true;
-                    Consumable_order_details2__c codcorderdetail = new Consumable_order_details2__c();
-                    Consumable_order_details2__c retorddetail = new Consumable_order_details2__c();
-                    String str = ('000' + i).right(4);
-                    // if(str.length() == 1){
-                    //     str = '0' + str;
-                    // }
-
-                    if(ass.ReturnReason==null || ass.ReturnReason==''){
-                        //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                        if(isLwc){
-                            returnError = '璇疯ˉ鍏呰繑鍝佸師鍥�';
-                        }else {
-                            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇疯ˉ鍏呰繑鍝佸師鍥�'));
-                        }
-                        return null;
-                    }
-
-                    //鍒拌揣鏄庣粏
-                    codcorderdetail.Name                        = consumable_order_arr[0].Name + '-'+ str;
-                    codcorderdetail.RecordTypeId                = System.Label.RT_ConOrderDetail2_Delivery;
-                    codcorderdetail.Intra_Trade_List_RMB__c     = ass.Prod.Intra_Trade_List_RMB__c;
-                    //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                    codcorderdetail.Asset_Model_No__c           = ass.Prod.Asset_Model_No__c;
-                    codcorderdetail.Direct_Arrive_Product__c    = true;
-                    codcorderdetail.Sterilization_limit__c      = ass.sterilizationlimitDate;
-                    codcorderdetail.Consumable_Product__c       = ass.Prod.id;
-                    codcorderdetail.Bar_Code__c                 = ass.barCodeNo;
-                    codcorderdetail.SerialLotNo__c              = ass.serialNoorLotNo;
-                    codcorderdetail.TracingCode__c              = ass.tracingCodeNo;
-                    codcorderdetail.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
-                    codcorderdetail.Arrive_date__c              = Date.today();
-
-                    //add by rentx 2020-10-14 start
-                    // codcorderdetail.ContractNo_text__c          = /*ass.esd.ContractNo__c*/;
-                    // tcm start
-                    if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
-                        codcorderdetail.ContractNo_text__c= ass.esd.ContractNo_text__c;
-                    }else {
-                        codcorderdetail.ContractNo_text__c= ass.esd.Consumable_order_minor__r.ContractNo__c;
-                    }
-                    // tcm end
-                    //add by rentx 2020-10-14 end
-
-                    codcorderdetList.add(codcorderdetail);
-
-                    //杩斿搧鏄庣粏
-                    retorddetail.Return_reason__c            = ass.ReturnReason;
-                    retorddetail.Return_date__c              = Date.today();
-                    retorddetail.ReturnGs_Uploader_ID__c     = UserInfo.getUserId();
-
-                    // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
-                    // if(ass.esd.Dealer_Saled__c == false && ass.esd.Dealer_Shipment__c == false && ass.esd.Lose_Flag__c == true){
-                    //     retorddetail.Consumable_Inventory_order__c  = Inventory_Order_Sheet.id;
-                    //     retorddetail.loseInventory__c = true;
-                    // }
-                    retorddetail.Consumable_Return_order__c  = Return_Order_Sheet.id;
-                    // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-
-                    
-                    retorddetail.Name                        = consumable_order_ret[0].Name + '-'+ str;
-                    retorddetail.RecordTypeId                = System.Label.RT_ConOrderDetail2_Return;
-                    retorddetail.Intra_Trade_List_RMB__c     = ass.Prod.Intra_Trade_List_RMB__c;
-                    //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
-                    retorddetail.Dealer_Info_IF__c           = accountid;
-                    retorddetail.Asset_Model_No__c           = ass.Prod.Asset_Model_No__c;
-                    retorddetail.Direct_Arrive_Product__c    = true;
-                    retorddetail.Sterilization_limit__c      = ass.sterilizationlimitDate;
-                    retorddetail.Consumable_Product__c       = ass.Prod.id;
-                    retorddetail.Bar_Code__c                 = ass.barCodeNo;
-                    retorddetail.SerialLotNo__c              = ass.serialNoorLotNo;
-                    retorddetail.TracingCode__c              = ass.tracingCodeNo;
-                    retorddetail.Arrive_date__c              = Date.today();
-                    retorddetail.Deliver_date__c             = Date.today();
-                    // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
-                    retorddetail.Frist_Storage_Agency__c      = accountName;
-                    // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-
-                    //add by rentx 2020-10-14 start
-                    // retorddetail.ContractNo_text__c         = /*ass.esd.ContractNo__c*/;
-                    // tcm start
-                     if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
-                        retorddetail.ContractNo_text__c= ass.esd.ContractNo_text__c;
-                     }else {
-                        retorddetail.ContractNo_text__c= ass.esd.Consumable_order_minor__r.ContractNo__c;
-                     }
-                    // tcm end
-                    //add by rentx 2020-10-14 end
-
-                    codcorderdetList.add(retorddetail);
-                    i++;
-                }
-
-                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------end------'));
-                // return null;
-
-                if(codcList.size()>0){
-                    ControllerUtil.updateOrderDetailsSatus(   codcList    );
-                    //insert codcorderdetList;
-                }
-                if (codcorderdetList.size()>0){
-                    System.debug('codcorderdetList +++++ '+ codcorderdetList);
-                    insert codcorderdetList;
-                }
-                // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
-                if(conOrderDetail2InList.size() > 0){
-                    addInventoryDetails1(conOrderDetail2InList);
-                }
-                // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
-
-                if(hasReturnGoods){
-                    // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
-                    // return ToReturnGoodsPage();
-                    if(hasLoseGoods){
-                        urlType = 'ToInventoryGoodsPage';
-                        return ToInventoryGoodsPage();
-                        // return null;
-                    }else{
-                        urlType = 'ToReturnGoodsPage';
-                        return ToReturnGoodsPage();
-                        // return null;
-                    }
-                    // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
-                }
-                else{
-                    //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                    if(isLwc){
-                        returnError = '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧';
-                    }else {
-                        ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'));
-                    }
-                    return null;
-                }
-
-            }else{
-                //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-                if(isLwc){
-                    returnError = '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧';
-                }else {
-                    ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'));
-                }
-                return null;
+                cnt++;
+                if (cnt > codi.esd.Rrturn_count__c)
+                  break;
+              }
             }
-        }catch(Exception e){
-            Database.rollback(sp);
-            //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
-            if(isLwc){
-                returnError = e.getLineNumber()+'---'+e.getMessage();
-            }else {
-                ApexPages.addMessages(e);
+          } else {
+            hasReturnGoods = true;
+            //鍗曚綅=鐩�
+            //changeinvoiceInfo(codi.esd);
+            //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+            codi.esd.Return_date__c = Date.today();
+            // codi.esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
+            if (
+              codi.esd.Dealer_Saled__c == false &&
+              codi.esd.Dealer_Shipment__c == false &&
+              codi.esd.Lose_Flag__c == true
+            ) {
+              codi.esd.Lose_Flag__c = false;
+              codi.esd.Return_reason__c = '';
+              codi.esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
+              conOrderDetail2InList.add(codi.esd);
+              hasLoseGoods = true;
+            } else {
+              // codi.esd.Return_date__c                  = Date.today();
+              codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
             }
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+            codi.esd.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+            // codi.esd.Consumable_Return_order__c      = Return_Order_Sheet.id;
+            //淇敼杩斿搧鎵�鏈変汉
+            codi.esd.OwnerId = UserInfo.getUserId();
+            codi.esd.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
+            codcorderdet.Name =
+              consumable_order_arr[0].name +
+              '-' +
+              String.valueOf(++tempNo).leftPad(4, '0');
+            codcorderdet.Consumable_order_minor__c = codi.esd.Consumable_order_minor__c;
+            codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
+            //淇敼鍒拌揣鎵�鏈変汉
+            codcorderdet.OwnerId = UserInfo.getUserId();
+            codcorderdet.Arrive_date__c = Date.today();
+            codcorderdet.Consumable_Product__c = codi.esd.Consumable_Product__c;
+            codcorderdet.Asset_Model_No__c = codi.esd.Asset_Model_No__c;
+            codcorderdet.Bar_Code__c = codi.esd.Bar_Code__c;
+            codcorderdet.Deliver_date__c = codi.esd.Deliver_date__c;
+            codcorderdet.SerialLotNo__c = codi.esd.SerialLotNo__c;
+            codcorderdet.TracingCode__c = codi.esd.TracingCode__c;
+            codcorderdet.Sterilization_limit__c = codi.esd.Sterilization_limit__c;
+            //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+            codcorderdet.Intra_Trade_List_RMB__c = (codi.esd.Intra_Trade_List_RMB__c ==
+              null ||
+              codi.esd.Intra_Trade_List_RMB__c == 0)
+              ? codi.esd.Intra_Trade_List__c
+              : codi.esd.Intra_Trade_List_RMB__c;
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+            if (hasLoseGoods) {
+              codcorderdet.loseInventory__c = true;
+            }
+            // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+            // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+            // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
+            codcorderdet.Used_account__c = codi.esd.Used_account__c;
+            codcorderdet.Transfer_Time__c = codi.esd.Transfer_Time__c;
+            codcorderdet.Frist_Transfer_Agency__c = codi.esd.Frist_Transfer_Agency__c;
+            codcorderdet.Agency_Transfer__c = codi.esd.Agency_Transfer__c;
+
+            codcorderdet.Agencyinfo_fromSAP__c = codi.esd.Agencyinfo_fromSAP__c;
+            //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------' + codi.esd.Frist_Storage_Agency__c));
+            codcorderdet.Frist_Storage_Agency__c = codi.esd.Frist_Storage_Agency__c ==
+              null
+              ? codi.esd.Dealer_Info_text__c
+              : codi.esd.Frist_Storage_Agency__c;
+            // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+            //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+            // codcorderdet.ContractNo_text__c          = /*codi.esd.ContractNo__c*/;
+            // tcm start
+            if (
+              String.isBlank(codi.esd.Consumable_order_minor__r.ContractNo__c)
+            ) {
+              codcorderdet.ContractNo_text__c = codi.esd.ContractNo_text__c;
+            } else {
+              codcorderdet.ContractNo_text__c = codi.esd.Consumable_order_minor__r.ContractNo__c;
+            }
+            // tcm end
+            //add by rentx 2020-10-13 end   杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+
+            codcorderdetList.add(codcorderdet);
+            codcList.add(codi.esd);
+          }
+        }
+        //鏄庣粏2涓嶅瓨鍦ㄧ殑瀵瑰簲鐨勫埌璐ц鍗曟槑缁� 2017-07-05
+        Integer i = 1;
+        //for(ConsumableorderdetailsInfo ass : consumableInventoryUse){
+        for (ConsumableorderdetailsInfo ass : consumableInventory) {
+          hasReturnGoods = true;
+          Consumable_order_details2__c codcorderdetail = new Consumable_order_details2__c();
+          Consumable_order_details2__c retorddetail = new Consumable_order_details2__c();
+          String str = ('000' + i).right(4);
+          // if(str.length() == 1){
+          //     str = '0' + str;
+          // }
+
+          if (ass.ReturnReason == null || ass.ReturnReason == '') {
+            ApexPages.addmessage(
+              new ApexPages.message(ApexPages.severity.ERROR, '璇疯ˉ鍏呰繑鍝佸師鍥�')
+            );
             return null;
+          }
+
+          //鍒拌揣鏄庣粏
+          codcorderdetail.Name = consumable_order_arr[0].Name + '-' + str;
+          codcorderdetail.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+          codcorderdetail.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+          //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+          codcorderdetail.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
+          codcorderdetail.Direct_Arrive_Product__c = true;
+          codcorderdetail.Sterilization_limit__c = ass.sterilizationlimitDate;
+          codcorderdetail.Consumable_Product__c = ass.Prod.id;
+          codcorderdetail.Bar_Code__c = ass.barCodeNo;
+          codcorderdetail.SerialLotNo__c = ass.serialNoorLotNo;
+          codcorderdetail.TracingCode__c = ass.tracingCodeNo;
+          codcorderdetail.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
+          codcorderdetail.Arrive_date__c = Date.today();
+
+          //add by rentx 2020-10-14 start
+          // codcorderdetail.ContractNo_text__c          = /*ass.esd.ContractNo__c*/;
+          // tcm start
+          if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
+            codcorderdetail.ContractNo_text__c = ass.esd.ContractNo_text__c;
+          } else {
+            codcorderdetail.ContractNo_text__c = ass.esd.Consumable_order_minor__r.ContractNo__c;
+          }
+          // tcm end
+          //add by rentx 2020-10-14 end
+
+          codcorderdetList.add(codcorderdetail);
+
+          //杩斿搧鏄庣粏
+          retorddetail.Return_reason__c = ass.ReturnReason;
+          retorddetail.Return_date__c = Date.today();
+          retorddetail.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+
+          // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+          // if(ass.esd.Dealer_Saled__c == false && ass.esd.Dealer_Shipment__c == false && ass.esd.Lose_Flag__c == true){
+          //     retorddetail.Consumable_Inventory_order__c  = Inventory_Order_Sheet.id;
+          //     retorddetail.loseInventory__c = true;
+          // }
+          retorddetail.Consumable_Return_order__c = Return_Order_Sheet.id;
+          // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+
+          retorddetail.Name = consumable_order_ret[0].Name + '-' + str;
+          retorddetail.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
+          retorddetail.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+          //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+          retorddetail.Dealer_Info_IF__c = accountid;
+          retorddetail.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
+          retorddetail.Direct_Arrive_Product__c = true;
+          retorddetail.Sterilization_limit__c = ass.sterilizationlimitDate;
+          retorddetail.Consumable_Product__c = ass.Prod.id;
+          retorddetail.Bar_Code__c = ass.barCodeNo;
+          retorddetail.SerialLotNo__c = ass.serialNoorLotNo;
+          retorddetail.TracingCode__c = ass.tracingCodeNo;
+          retorddetail.Arrive_date__c = Date.today();
+          retorddetail.Deliver_date__c = Date.today();
+          // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+          retorddetail.Frist_Storage_Agency__c = accountName;
+          // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+          //add by rentx 2020-10-14 start
+          // retorddetail.ContractNo_text__c         = /*ass.esd.ContractNo__c*/;
+          // tcm start
+          if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
+            retorddetail.ContractNo_text__c = ass.esd.ContractNo_text__c;
+          } else {
+            retorddetail.ContractNo_text__c = ass.esd.Consumable_order_minor__r.ContractNo__c;
+          }
+          // tcm end
+          //add by rentx 2020-10-14 end
+
+          codcorderdetList.add(retorddetail);
+          i++;
         }
+
+        // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------end------'));
+        // return null;
+
+        if (codcList.size() > 0) {
+          ControllerUtil.updateOrderDetailsSatus(codcList);
+          //insert codcorderdetList;
+        }
+        if (codcorderdetList.size() > 0) {
+          System.debug('codcorderdetList +++++ ' + codcorderdetList);
+          insert codcorderdetList;
+        }
+        // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+        if (conOrderDetail2InList.size() > 0) {
+          addInventoryDetails1(conOrderDetail2InList);
+        }
+        // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+
+        if (hasReturnGoods) {
+          // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+          // return ToReturnGoodsPage();
+          if (hasLoseGoods) {
+            return ToInventoryGoodsPage();
+            // return null;
+          } else {
+            return ToReturnGoodsPage();
+            // return null;
+          }
+          // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+        } else {
+          ApexPages.addmessage(
+            new ApexPages.message(
+              ApexPages.severity.ERROR,
+              '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'
+            )
+          );
+          return null;
+        }
+      } else {
+        ApexPages.addmessage(
+          new ApexPages.message(ApexPages.severity.ERROR, '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧')
+        );
+        return null;
+      }
+    } catch (Exception e) {
+      Database.rollback(sp);
+      ApexPages.addMessages(e);
+      return null;
+    }
+  }
+
+  public void makeArrivedSummary() {
+    detailsSummary = new List<ConsumableorderdetailsInfo>();
+    //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'consumableInventory   ' + consumableInventory));
+    try {
+      ConsumableorderdetailsInfo arriveDdetailsSummary = null;
+      Map<String, ConsumableorderdetailsInfo> detailsSummaryMap = new Map<String, ConsumableorderdetailsInfo>();
+      for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
+        if (detailsSummaryMap.containsKey(ass.Prod.Id)) {
+          detailsSummaryMap.get(ass.Prod.Id).arrivedCount++;
+          detailsSummaryMap.get(ass.Prod.Id)
+            .arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
+        } else {
+          arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
+          arriveDdetailsSummary.arrivedCount = 1;
+          arriveDdetailsSummary.arriveAmount = ass.esd.Intra_Trade_List_RMB__c;
+          detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
+        }
+      }
+      for (ConsumableorderdetailsInfo ass : consumableInventory) {
+        if (detailsSummaryMap.containsKey(ass.Prod.Id)) {
+          detailsSummaryMap.get(ass.Prod.Id).arrivedCount++;
+          if (EsetId != null && EsetId != '') {
+            detailsSummaryMap.get(ass.Prod.Id)
+              .arriveAmount += ass.Prod.Intra_Trade_List_RMB__c;
+          } else {
+            detailsSummaryMap.get(ass.Prod.Id).arriveAmount += 0;
+          }
+        } else {
+          arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
+          arriveDdetailsSummary.arrivedCount = 1;
+          if (EsetId != null && EsetId != '') {
+            arriveDdetailsSummary.arriveAmount = ass.Prod.Intra_Trade_List_RMB__c;
+          } else {
+            arriveDdetailsSummary.arriveAmount = 0;
+          }
+          detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
+        }
+      }
+      for (String key : detailsSummaryMap.keySet()) {
+        detailsSummary.add(detailsSummaryMap.get(key));
+      }
+    } catch (Exception e) {
+      //Database.rollback(sp);
+      throw new ControllerUtil.myException(
+        'e::' + e + '  linenumber::' + e.getLineNumber()
+      );
+      // ApexPages.addMessages(e);
+      // ApexPages.addMessages(e.getLineNumber() + '  11111111111111111');
+
+      //return null;
+    }
+  }
+
+  //璺宠浆鍒拌繑鍝侀〉闈�
+  public Pagereference ToReturnGoodsPage() {
+    PageReference ref = new Pagereference('/' + return_Order_id);
+    ref.setRedirect(true);
+    return ref;
+  }
+
+  // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+  public Pagereference ToInventoryGoodsPage() {
+    PageReference ref = new Pagereference('/' + inventory_Order_id);
+    ref.setRedirect(true);
+    return ref;
+  }
+  // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 end
+
+  // 璺宠浆鍒板埌璐ц鍗曟槑缁�
+  public PageReference UnabletoEdit() {
+    PageReference ref = new Pagereference(
+      '/ArriveGsDetails?EsetId=' + arriveId
+    );
+    ref.setRedirect(true);
+    return ref;
+  }
+
+  class ConsumableorderdetailsInfo implements Comparable {
+    public Consumable_order_details2__c esd { get; set; }
+    public Product2__c Prod { get; set; }
+    public String ProductName { get; set; }
+    //public Boolean canSELECT { get; set; }
+    public String barCodeNo { get; set; }
+    public Date sterilizationlimitDate { get; set; }
+    public String serialNoorLotNo { get; set; }
+    public String tracingCodeNo { get; set; }
+    public String ReturnReason { get; set; }
+    public String oldConsumableCount { get; set; }
+    public String ErrorReason { get; set; }
+    public boolean canEdit { get; set; }
+    public Integer intMark { get; set; }
+    public Decimal arriveAmount { get; set; }
+    public Decimal arrivedCount { get; set; }
+
+    public String ReportProductExpirationDate { get; set; }
+    public ConsumableorderdetailsInfo(
+      Consumable_order_details2__c e,
+      string str
+    ) {
+      esd = e;
+      Prod = e.Consumable_Product__r;
+      oldConsumableCount = e.name;
+      ErrorReason = str;
+      intMark = 1;
+      if (e.Report_Product_Expiration__c != null) {
+        ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
+      }
+    }
+    public ConsumableorderdetailsInfo(Consumable_order_details2__c e) {
+      canEdit = false;
+      if (e.Box_Piece__c == '鐩�') {
+        e.Rrturn_count__c = 1;
+        canEdit = true;
+      }
+
+      esd = e;
+      Prod = e.Consumable_Product__r;
+      oldConsumableCount = e.name;
+      if (e.Report_Product_Expiration__c != null) {
+        ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
+      }
     }
 
-    public void makeArrivedSummary(){
-        detailsSummary = new List<ConsumableorderdetailsInfo>();
-        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'consumableInventory   ' + consumableInventory));
-        try{
-            ConsumableorderdetailsInfo arriveDdetailsSummary = null;
-            Map<String,ConsumableorderdetailsInfo> detailsSummaryMap = new Map<String,ConsumableorderdetailsInfo>();
-            for(ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords){
-                if(detailsSummaryMap.containsKey(ass.Prod.Id)){
-                    detailsSummaryMap.get(ass.Prod.Id).arrivedCount ++;
-                    detailsSummaryMap.get(ass.Prod.Id).arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
-                }else{
-                    arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
-                    arriveDdetailsSummary.arrivedCount = 1;
-                    arriveDdetailsSummary.arriveAmount = ass.esd.Intra_Trade_List_RMB__c;
-                    detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
-                }
-            }
-            for(ConsumableorderdetailsInfo ass : consumableInventory){
-                if(detailsSummaryMap.containsKey(ass.Prod.Id)){
-                    detailsSummaryMap.get(ass.Prod.Id).arrivedCount ++;
-                    if(EsetId != null && EsetId != ''){
-                        detailsSummaryMap.get(ass.Prod.Id).arriveAmount += ass.Prod.Intra_Trade_List_RMB__c;
-                    }else{
-                        detailsSummaryMap.get(ass.Prod.Id).arriveAmount += 0;
-                    }
-                }else{
-                    arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
-                    arriveDdetailsSummary.arrivedCount = 1;
-                    if(EsetId != null && EsetId != ''){
-                        arriveDdetailsSummary.arriveAmount = ass.Prod.Intra_Trade_List_RMB__c;
-                    }else{
-                        arriveDdetailsSummary.arriveAmount = 0;
-                    }
-                    detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
-                }
-            }
-            for(String key : detailsSummaryMap.keySet()){
-                detailsSummary.add(detailsSummaryMap.get(key));
-            }
-        }catch(Exception e){
-            //Database.rollback(sp);
-            throw new ControllerUtil.myException('e::'+e + '  linenumber::'+e.getLineNumber());
-            // ApexPages.addMessages(e);
-            // ApexPages.addMessages(e.getLineNumber() + '  11111111111111111');
-
-            //return null;
-        }
+    public ConsumableorderdetailsInfo(Product2__c e, List<String> barinfoL) {
+      esd = new Consumable_order_details2__c();
+      ProductName = e.Name__c;
+      Prod = e;
+      barCodeNo = barinfoL[0];
+      if (String.isNotBlank(barinfoL[1])) {
+        sterilizationlimitDate = Date.valueOf(barinfoL[1]);
+      }
+      serialNoorLotNo = barinfoL[2];
+      tracingCodeNo = barinfoL[3];
+      ReturnReason = '';
     }
 
-    //璺宠浆鍒拌繑鍝侀〉闈�
-    public Pagereference ToReturnGoodsPage(){
-        PageReference ref = new Pagereference('/'+return_Order_id);
-            ref.setRedirect(true);
-            return ref;
+    public ConsumableorderdetailsInfo(
+      Consumable_order_details2__c e,
+      List<String> barinfoL
+    ) {
+      esd = e;
+      Prod = e.Consumable_Product__r;
+      barCodeNo = barinfoL[0];
+      if (String.isNotBlank(barinfoL[1])) {
+        sterilizationlimitDate = Date.valueOf(barinfoL[1]);
+      }
+      serialNoorLotNo = barinfoL[2];
+      tracingCodeNo = barinfoL[3];
+      if (e.Report_Product_Expiration__c != null) {
+        ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
+      }
     }
-    
-    // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
-    public Pagereference ToInventoryGoodsPage(){
-        PageReference ref = new Pagereference('/'+inventory_Order_id);
-            ref.setRedirect(true);
-            return ref;
+    public ConsumableorderdetailsInfo(Product2__c e) {
+      Prod = e;
     }
-    // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 end
-
-        // 璺宠浆鍒板埌璐ц鍗曟槑缁�
-    public PageReference UnabletoEdit(){
-        PageReference ref = new Pagereference('/ArriveGsDetails?EsetId='+arriveId);
-        ref.setRedirect(true);
-        return ref;
+    // 鎺掑簭
+    public Integer compareTo(Object compareTo) {
+      return null;
     }
-
-    public class ConsumableorderdetailsInfo implements Comparable {
-        public Consumable_order_details2__c esd { get; set; }
-        public Product2__c Prod { get; set; }
-        public String ProductName { get; set; }
-        //public Boolean canSELECT { get; set; }
-        public String barCodeNo { get; set; }
-        public Date sterilizationlimitDate { get; set; }
-        public String serialNoorLotNo { get; set; }
-        public String tracingCodeNo { get; set; }
-        public String ReturnReason { get; set; }
-        public String oldConsumableCount { get; set; }
-        public String ErrorReason { get; set; }
-        public boolean canEdit { get; set; }
-        public Integer intMark { get; set; }
-        public Decimal arriveAmount { get; set; }
-        public Decimal arrivedCount { get; set; }
-
-        public String ReportProductExpirationDate {get;set;}
-
-        public ConsumableorderdetailsInfo(){
-
-        }
-
-        public ConsumableorderdetailsInfo(Consumable_order_details2__c e,string str) {
-            esd                = e;
-            Prod               = e.Consumable_Product__r;
-            oldConsumableCount = e.name;
-            ErrorReason        = str;
-            intMark = 1;
-            if (e.Report_Product_Expiration__c != null) {
-                ReportProductExpirationDate = e.Report_Product_Expiration__c.format();  
-            }
-
-        }
-        public ConsumableorderdetailsInfo(Consumable_order_details2__c e) {
-            canEdit = false;
-            if(e.Box_Piece__c=='鐩�'){
-                e.Rrturn_count__c = 1;
-                canEdit = true;
-            }
-
-            esd                = e;
-            Prod               = e.Consumable_Product__r;
-            oldConsumableCount = e.name;
-            if (e.Report_Product_Expiration__c != null) {
-                ReportProductExpirationDate = e.Report_Product_Expiration__c.format();  
-            }
-
-        }
-
-        public ConsumableorderdetailsInfo(Product2__c e,List<String> barinfoL) {
-            esd = new Consumable_order_details2__c();
-            ProductName = e.Name__c;
-            Prod = e;
-            barCodeNo = barinfoL[0];
-            if(String.isNotBlank(barinfoL[1])){
-                sterilizationlimitDate = Date.valueOf(barinfoL[1]);
-            }
-            serialNoorLotNo = barinfoL[2];
-            tracingCodeNo = barinfoL[3];
-            ReturnReason = '';
-        }
-
-        public ConsumableorderdetailsInfo(Consumable_order_details2__c e,List<String> barinfoL) {
-            esd = e;
-            Prod               = e.Consumable_Product__r;
-            barCodeNo = barinfoL[0];
-            if(String.isNotBlank(barinfoL[1])){
-                sterilizationlimitDate = Date.valueOf(barinfoL[1]);
-            }
-            serialNoorLotNo = barinfoL[2];
-            tracingCodeNo = barinfoL[3];
-            if (e.Report_Product_Expiration__c != null) {
-                ReportProductExpirationDate = e.Report_Product_Expiration__c.format();  
-            }
-
-        }
-        public ConsumableorderdetailsInfo(Product2__c e) {
-            Prod = e;
-        }
-        // 鎺掑簭
-        public Integer compareTo(Object compareTo) {
-            return null;
-        }
-    }
-}
\ No newline at end of file
+  }
+}
diff --git a/force-app/main/default/classes/ArriveGoodsControllerTest.cls b/force-app/main/default/classes/ArriveGoodsControllerTest.cls
index 910aeb3..786dab4 100644
--- a/force-app/main/default/classes/ArriveGoodsControllerTest.cls
+++ b/force-app/main/default/classes/ArriveGoodsControllerTest.cls
@@ -1,5 +1,236 @@
 @isTest
 private class ArriveGoodsControllerTest {
+  @isTest
+  static void myUnitTest() {
+    // // TO DO: implement unit test
+    List<RecordType> rectCo = [
+      SELECT Id
+      FROM RecordType
+      WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '璨╁2搴�'
+    ];
+    if (rectCo.size() == 0) {
+      return;
+    }
+    // Profile prof = [select Id from Profile where Name ='901_缁忛攢鍟嗙ぞ鍖烘櫘閫氭潈闄恄2閲嶉獙璇�(ET Email)'];
+    Profile prof = [
+      SELECT Id
+      FROM Profile
+      WHERE Name = '901_缁忛攢鍟嗙ぞ鍖烘櫘閫氭潈闄恄2閲嶉獙璇�(ET)'
+    ];
+
+    Account myAccount2 = new Account(
+      name = 'Testaccount002',
+      Dealer_discount__c = 20,
+      RecordTypeId = rectCo[0].Id,
+      AgentCode_Ext__c = '9999900'
+    );
+    Account myAccount1 = new Account(
+      name = 'Testaccount001',
+      Dealer_discount__c = 30,
+      RecordTypeId = rectCo[0].Id
+    );
+    insert new List<account>{ myAccount1, myAccount2 };
+
+    Contact core = new Contact(
+      email = 'jplumber@salesforce.com',
+      firstname = 'Joe',
+      lastname = 'Plumber',
+      accountid = myAccount1.id
+    );
+    insert core;
+    user 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',
+      UserPro_Type__c = 'ET'
+    );
+    System.runAs(new User(Id = UserInfo.getUserId())) {
+      insert MyUser_Test;
+    }
+
+    // User MyUser_Test = [select id,Contact.accountid from User WHERE ProfileId = :prof.Id and IsActive = true and UserPro_Type__c = 'ET' limit 1 ];
+    // Product2 prod01 = new Product2(Name='Test01',ProductCode='Test01',Asset_Model_No__c = 'Test01',SFDA_Status__c = '鏈夊姽',JANCODE__c = '04953170200311',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 = '鏈夊姽',JANCODE__c = '04953170200312',Dealer_special_Object__c = true,Manual_Entry__c = false);
+    // insert new Product2[] {prod01,prod02};
+    System.runAs(MyUser_Test) {
+      Product2 prod01 = new Product2(
+        Name = 'Test01',
+        ProductCode = 'Test01',
+        Asset_Model_No__c = 'Test01',
+        SFDA_Status__c = '鏈夊姽',
+        JANCODE__c = '04953170200311',
+        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 = '鏈夊姽',
+        JANCODE__c = '04953170200312',
+        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 Order1 = new Consumable_order__c();
+      Order1.Name = 'OCM_01_001';
+      Order1.Order_status__c = '鎵瑰噯';
+      Order1.Order_type__c = '璁㈠崟';
+      // Order1.Dealer_Info__c = myAccount1.id;
+      Order1.Dealer_Info__c = myAccount1.id;
+      Order1.RecordTypeid = System.Label.RT_ConOrder_Delivery;
+      Order1.Total_num__c = 3;
+      Order1.OrderNumber_arrived__c = 1;
+      Order1.Delivery_detail_count__c = 1;
+      Order1.Order_ProType__c = 'ET';
+      insert Order1;
+
+      //璁㈠崟鏄庣粏
+      //fahuo
+      Consumable_orderdetails__c Orderdet = new Consumable_orderdetails__c();
+      Orderdet.Name = 'OCM_01_00101';
+      Orderdet.Consumable_order__c = Order1.Id;
+      Orderdet.RecordTypeId = System.Label.RT_ConOrderDetail1_Order;
+      Orderdet.Consumable_Product__c = pro1.Id;
+      Orderdet.Consumable_count__c = 40;
+      insert Orderdet;
+
+      //鍙戣揣鏄庣粏
+      //鍒拌揣姝g‘淇℃伅
+      Consumable_order_details2__c Orderdet1 = new Consumable_order_details2__c();
+      Orderdet1.Name = 'OCM_01_001002';
+      Orderdet1.Consumable_order_minor__c = Order1.Id;
+      Orderdet1.Consumable_Product__c = pro1.Id;
+      Orderdet1.Asset_Model_No__c = 'Test01';
+      Orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdet1.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRA';
+      Orderdet1.TracingCode__c = 'BXJRA';
+
+      //鍙栨秷浜у搧
+      Consumable_order_details2__c Orderdet2 = new Consumable_order_details2__c();
+      Orderdet2.Name = 'OCM_01_001003';
+      Orderdet2.Consumable_order_minor__c = Order1.Id;
+      Orderdet2.Consumable_Product__c = pro1.Id;
+      Orderdet2.Asset_Model_No__c = 'Test01';
+      //Orderdet2.Consumable_Arrived_order__c = Order1.Id;
+      Orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdet2.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRB';
+      Orderdet2.Cancellation_Date__c = Date.today();
+      Orderdet2.TracingCode__c = 'BXJRB';
+      //閿�鍞骇鍝�
+      Consumable_order_details2__c Orderdet3 = new Consumable_order_details2__c();
+      Orderdet3.Name = 'OCM_01_001004';
+      Orderdet3.Consumable_order_minor__c = Order1.Id;
+      Orderdet3.Consumable_Product__c = pro1.Id;
+      Orderdet3.Asset_Model_No__c = 'Test01';
+      Orderdet3.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdet3.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRC';
+      Orderdet3.Used_date__c = Date.today();
+      Orderdet3.Arrive_date__c = Date.today();
+      Orderdet3.TracingCode__c = 'BXJRC';
+      //Orderdet3.Box_Piece__c = '鐩�';
+
+      //鍑哄簱浜у搧
+      Consumable_order_details2__c Orderdet4 = new Consumable_order_details2__c();
+      Orderdet4.Name = 'OCM_01_001005';
+      Orderdet4.Consumable_order_minor__c = Order1.Id;
+      Orderdet4.Consumable_Product__c = pro1.Id;
+      Orderdet4.Asset_Model_No__c = 'Test01';
+      Orderdet4.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdet4.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRD';
+      Orderdet4.Send_Date__c = Date.today();
+      Orderdet4.Arrive_date__c = Date.today();
+      Orderdet4.TracingCode__c = 'BXJRD';
+
+      //宸插埌璐т骇鍝�
+      Consumable_order_details2__c Orderdet5 = new Consumable_order_details2__c();
+      Orderdet5.Name = 'OCM_01_001006';
+      Orderdet5.Consumable_order_minor__c = Order1.Id;
+      Orderdet5.Consumable_Product__c = pro1.Id;
+      Orderdet5.Asset_Model_No__c = 'Test01';
+      Orderdet5.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdet5.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRE';
+      Orderdet5.Arrive_date__c = Date.today();
+      Orderdet5.TracingCode__c = 'BXJRE';
+
+      //鍙戣揣鏄庣粏
+      //绠$悊缂栫爜鍖呭惈鏁板瓧
+      Consumable_order_details2__c Orderdet6 = new Consumable_order_details2__c();
+      Orderdet6.Name = 'OCM_01_001002';
+      Orderdet6.Consumable_order_minor__c = Order1.Id;
+      Orderdet6.Consumable_Product__c = pro1.Id;
+      Orderdet6.Asset_Model_No__c = 'Test01';
+      Orderdet6.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdet6.Bar_Code__c = '01049531702003111115120017181000105ZK250BX123';
+      Orderdet6.TracingCode__c = 'BX123';
+
+      //鍙戦敊搴� 鏈埌璐�
+      Consumable_order_details2__c Orderdets8 = new Consumable_order_details2__c();
+      Orderdets8.Name = 'OCM_01_001011';
+      Orderdets8.Consumable_order_minor__c = Order1.Id;
+      Orderdets8.Consumable_Product__c = pro1.Id;
+      Orderdets8.Asset_Model_No__c = 'Test01';
+      Orderdets8.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+      Orderdets8.Bar_Code__c = '01049531702003111115120017181000105ZK250BXsys';
+      Orderdets8.Box_Piece__c = '鐩�';
+      Orderdets8.TracingCode__c = 'BXsys';
+
+      insert new List<Consumable_order_details2__c>{
+        Orderdet1,
+        Orderdet2,
+        Orderdet3,
+        Orderdet4,
+        Orderdet5,
+        Orderdet6,
+        Orderdets8
+      };
+
+      List<Consumable_orderdetails__c> cod1 = [
+        SELECT Id
+        FROM Consumable_orderdetails__c
+        WHERE Consumable_order__c = :Order1.Id
+      ];
+      System.assertEquals(1, cod1.size());
+
+      PageReference page = new PageReference(
+        '/apex/ArriveGoods?Esetid=' + Order1.Id
+      );
+
+      System.Test.setCurrentPage(page);
+      ArriveGoodsController Controller = new ArriveGoodsController();
+      //鍒濆鍖栨祴璇�
+      System.Test.startTest();
+      Controller.init();
+      //鎺掑簭
+      Controller.barcode = '';
+      Controller.SearchPro();
+      Controller.barcode = '01049531702003111115120017181000105ZK250BXJRA\n01049531702003111115120017181000105ZK250BXsys\n01049531702003111115120017181000105ZK250BXsun\n01049531702003111115120017181000105ZK250BXJRB\n01049531702003111115120017181000105ZK250BXJRC\n01049531702003111115120017181000105ZK250BX111\n01049531702003111115120017181000105ZK250BXJRD\n01049531702003111115120017181000105ZK250BXJRE\n01049531702003111115120017181000105ZK250BXJRF\n01049531702003111115120017181000105ZK250BXJRG\n01049531702003111115120017181000105ZK250BX123';
+      Controller.SearchPro();
+
+      // System.assertEquals(3, controller.ConsumableorderdetailsRecordsdummy.size());    //tcm
+      Controller.ArriveGoodsConfim();
+      System.Test.stopTest();
+    }
+  }
   //閫夋嫨绛夊緟鍏ュ簱,鍖呮嫭01 鍜�241
   @isTest
   static void arriveWithID() {
@@ -1061,27 +1292,27 @@
       //鍙戣揣鏄庣粏
       //fahuo
       /*Consumable_order_details2__c Orderdet1 = new Consumable_order_details2__c();
-               Orderdet1.Name = 'OCM_01_001001';
-               Orderdet1.Consumable_order_minor__c = Order1.Id;
-               Orderdet1.Consumable_Product__c = pro1.Id;
-               Orderdet1.Asset_Model_No__c = 'Pro001';
-               Orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
-               Orderdet1.Box_Piece__c ='鐩�';
-               Orderdet1.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRF';
-               //daohuo
-               Consumable_order_details2__c Orderdet2 = new Consumable_order_details2__c();
-               Orderdet2.Name = 'OCM_01_001002';
-               Orderdet2.Consumable_order_minor__c = Order1.Id;
-               Orderdet2.Consumable_Product__c = pro1.Id;
-               Orderdet2.Asset_Model_No__c = 'Pro001';
-               Orderdet2.Consumable_Arrived_order__c = Order1.Id;
-               //Orderdet2.IsArrival__c = true;
-               Orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
-               Orderdet2.Box_Piece__c ='鐩�';
-               Orderdet2.Arrive_date__c = Date.today();
-               //Orderdet2.Send_Date__c = Date.today();
-               //Orderdet2.Used_date__c= Date.today();
-               Orderdet2.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRF';*/
+			   Orderdet1.Name = 'OCM_01_001001';
+			   Orderdet1.Consumable_order_minor__c = Order1.Id;
+			   Orderdet1.Consumable_Product__c = pro1.Id;
+			   Orderdet1.Asset_Model_No__c = 'Pro001';
+			   Orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+			   Orderdet1.Box_Piece__c ='鐩�';
+			   Orderdet1.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRF';
+			   //daohuo
+			   Consumable_order_details2__c Orderdet2 = new Consumable_order_details2__c();
+			   Orderdet2.Name = 'OCM_01_001002';
+			   Orderdet2.Consumable_order_minor__c = Order1.Id;
+			   Orderdet2.Consumable_Product__c = pro1.Id;
+			   Orderdet2.Asset_Model_No__c = 'Pro001';
+			   Orderdet2.Consumable_Arrived_order__c = Order1.Id;
+			   //Orderdet2.IsArrival__c = true;
+			   Orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+			   Orderdet2.Box_Piece__c ='鐩�';
+			   Orderdet2.Arrive_date__c = Date.today();
+			   //Orderdet2.Send_Date__c = Date.today();
+			   //Orderdet2.Used_date__c= Date.today();
+			   Orderdet2.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRF';*/
       //sale
       Consumable_order_details2__c Orderdet3 = new Consumable_order_details2__c();
       Orderdet3.Name = 'OCM_01_001003';
@@ -3822,163 +4053,6 @@
       Controller.UpdateGoodsOfReturn();
       Controller.ToReturnGoodsPage();
       Controller.geterrorsize();
-      System.Test.stopTest();
-    }
-  }
-
-  @isTest
-  static void makeRecordsVieweTest() {
-    Integer count = 1001;
-    List<ArriveGoodsController.ConsumableorderdetailsInfo> conList = new List<ArriveGoodsController.ConsumableorderdetailsInfo>();
-    for (Integer i = 0; i < 1001; i++) {
-      conList.add(new ArriveGoodsController.ConsumableorderdetailsInfo());
-    }
-    ArriveGoodsController arr = new ArriveGoodsController();
-    arr.makeRecordsView(conList);
-    ArriveGoodsController arr1 = new ArriveGoodsController('', '');
-  }
-
-  @isTest
-  static void compareToTest() {
-    ArriveGoodsController.ConsumableorderdetailsInfo c1 = new ArriveGoodsController.ConsumableorderdetailsInfo();
-    ArriveGoodsController.ConsumableorderdetailsInfo c2 = new ArriveGoodsController.ConsumableorderdetailsInfo();
-    c1.compareTo(c2);
-  }
-
-  @isTest
-  static void searchProTest1() {
-    List<RecordType> rectCo = [
-      SELECT Id
-      FROM RecordType
-      WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '璨╁2搴�'
-    ];
-    if (rectCo.size() == 0) {
-      return;
-    }
-    Profile prof = [
-      SELECT Id
-      FROM Profile
-      WHERE Name = '901_缁忛攢鍟嗙ぞ鍖烘櫘閫氭潈闄恄2閲嶉獙璇�(ET)'
-    ];
-    Account myAccount2 = new Account(
-      name = 'Testaccount002',
-      Dealer_discount__c = 20,
-      RecordTypeId = rectCo[0].Id,
-      AgentCode_Ext__c = '9999900'
-    );
-    Account myAccount1 = new Account(
-      name = 'Testaccount001',
-      Dealer_discount__c = 30,
-      RecordTypeId = rectCo[0].Id
-    );
-    insert new List<account>{ myAccount1, myAccount2 };
-    Contact core = new Contact(
-      email = 'jplumber@salesforce.com',
-      firstname = 'Joe',
-      lastname = 'Plumber',
-      accountid = myAccount1.id
-    );
-    insert core;
-    user 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',
-      UserPro_Type__c = 'ET'
-    );
-    System.runAs(new User(Id = UserInfo.getUserId())) {
-      insert MyUser_Test;
-    }
-
-    System.runAs(MyUser_Test) {
-      Product2 prod01 = new Product2(
-        Name = 'Test01',
-        ProductCode = 'Test01',
-        Asset_Model_No__c = 'Test01',
-        SFDA_Status__c = '鏈夊姽',
-        JANCODE__c = '04953170200311',
-        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 = '鏈夊姽',
-        JANCODE__c = '04953170200312',
-        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 = 'N3047730',
-        Product2__c = prod01.Id
-      );
-      Product2__c pro2 = new Product2__c(
-        Name = 'Pro002',
-        OT_CODE_Text__c = 'N3047731',
-        Product2__c = prod02.Id
-      );
-      insert new List<Product2__c>{ pro1, pro2 };
-
-      Consumable_order__c Order1 = new Consumable_order__c();
-      Order1.Name = 'OCM_01_001';
-      Order1.Order_status__c = '鎵瑰噯';
-      Order1.Order_type__c = '璁㈠崟';
-      Order1.Dealer_Info__c = myAccount1.id;
-      Order1.RecordTypeid = System.Label.RT_ConOrder_Delivery;
-      Order1.Order_ProType__c = 'ET';
-      insert Order1;
-      Consumable_orderdetails__c Orderdet = new Consumable_orderdetails__c();
-      Orderdet.Name = 'OCM_01_00101';
-      Orderdet.Consumable_order__c = Order1.Id;
-      Orderdet.RecordTypeId = System.Label.RT_ConOrderDetail1_Order;
-      Orderdet.Consumable_Product__c = pro1.Id;
-      Orderdet.Consumable_count__c = 4;
-      insert Orderdet;
-      Consumable_order_details2__c Orderdet1 = new Consumable_order_details2__c();
-      Orderdet1.Name = 'OCM_01_001001';
-      Orderdet1.Consumable_order_minor__c = Order1.Id;
-      Orderdet1.Consumable_Product__c = pro1.Id;
-      Orderdet1.Asset_Model_No__c = 'Test01';
-      Orderdet1.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
-      Orderdet1.Bar_Code__c = '01049531702003111115120017181000105ZK250BXJRF';
-      Orderdet1.Cancellation_Date__c = null;
-      Orderdet1.TracingCode__c = 'BXJRF';
-      Orderdet1.SerialLotNo__c = '5ZK';
-      insert Orderdet1;
-      System.debug('Orderdet1:' + Orderdet1);
-      Consumable_order_details2__c Orderdet2 = new Consumable_order_details2__c();
-      Orderdet2.Name = 'OCM_01_001001';
-      Orderdet2.Consumable_order_minor__c = Order1.Id;
-      Orderdet2.Consumable_Product__c = pro1.Id;
-      Orderdet2.Asset_Model_No__c = 'Test01';
-      Orderdet2.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
-      Orderdet2.Bar_Code__c = '01049531702003111115120017181234105ZK250BXJRF';
-      Orderdet1.Cancellation_Date__c = null;
-      Orderdet2.TracingCode__c = 'BXJRF';
-      Orderdet2.SerialLotNo__c = '5ZK';
-      insert Orderdet2;
-
-      PageReference page = new PageReference('/apex/ArriveGoods?ArrType=Arr');
-      System.Test.setCurrentPage(page);
-      ArriveGoodsController Controller = new ArriveGoodsController();
-      System.Test.startTest();
-      Controller.init();
-      Controller.barcode = '01049531702003111115120017181000105ZK250BXJRF';
-      Controller.SearchPro();
-      Controller.ArriveGoodsConfim();
-      List<Consumable_order_details2__c> ins = [
-        SELECT Id, Name
-        FROM Consumable_order_details2__c
-      ];
       System.Test.stopTest();
     }
   }
diff --git a/force-app/main/default/classes/DealerInquiryModifyStateController.cls b/force-app/main/default/classes/DealerInquiryModifyStateController.cls
index 9e6c25c..0cbe0b6 100644
--- a/force-app/main/default/classes/DealerInquiryModifyStateController.cls
+++ b/force-app/main/default/classes/DealerInquiryModifyStateController.cls
@@ -1,644 +1,717 @@
 public with sharing class DealerInquiryModifyStateController {
-    public List<OpportunityInfo> oppRecords { get; set; }
-    // 銉氥兗銈搞儸銈ゃ偄銈︺儓銇儏鍫便倰鍙栧緱
-    private Map<String, Map<String, String>> editLayoutItemRWMap = New Map<String, Map<String, String>>();
-    // private Map<String, Map<String, String>> editLayoutItemRWMapRt = null;
-    public List<OpportunityInfo> OPPORTList { get; set; }
-    /*****************妞滅储鐢�******************/
+  public List<OpportunityInfo> oppRecords { get; set; }
+  // 銉氥兗銈搞儸銈ゃ偄銈︺儓銇儏鍫便倰鍙栧緱
+  private Map<String, Map<String, String>> editLayoutItemRWMap = new Map<String, Map<String, String>>();
+  // private Map<String, Map<String, String>> editLayoutItemRWMapRt = null;
+  public List<OpportunityInfo> OPPORTList { get; set; }
+  /*****************妞滅储鐢�******************/
 
-    /*******************妫�绱㈠睘鎬у��*******************/
+  /*******************妫�绱㈠睘鎬у��*******************/
 
-    public String accSearch { get; set; }//缁忛攢鍟嗗尰闄�
-    public String aooSearch { get; set; }//鎷呭綋浜�
-    public String numtext1 { get; set; } //鏁版嵁瀛楁01
-    public String numtext { get; set; }//鏁版嵁瀛楁03
-    public String numtext2 { get; set; } //鏁版嵁瀛楁02
-    public String timetext1 { get; set; } //鏃ユ湡01
-    public String timetext2 { get; set; } //鏃ユ湡02
-    public Agency_Opportunity__c tmpAO { get; set; } //妫�绱㈡棩鏈熺敤
-    public Agency_Opportunity__c tmpBO { get; set; } //妫�绱㈡棩鏈熺敤
-    public String limits { get; set; }//鏃ユ湡03
+  public String accSearch { get; set; } //缁忛攢鍟嗗尰闄�
+  public String aooSearch { get; set; } //鎷呭綋浜�
+  public String numtext1 { get; set; } //鏁版嵁瀛楁01
+  public String numtext { get; set; } //鏁版嵁瀛楁03
+  public String numtext2 { get; set; } //鏁版嵁瀛楁02
+  public String timetext1 { get; set; } //鏃ユ湡01
+  public String timetext2 { get; set; } //鏃ユ湡02
+  public Agency_Opportunity__c tmpAO { get; set; } //妫�绱㈡棩鏈熺敤
+  public Agency_Opportunity__c tmpBO { get; set; } //妫�绱㈡棩鏈熺敤
+  public String limits { get; set; } //鏃ユ湡03
 
-    public List<SelectOption> dateOpts { get; private set; }
-    public List<SelectOption> textOpts { get; private set; }
-    public List<SelectOption> timeOpts { get; private set; }
-    public List<SelectOption> equalOpts { get; private set; }
-    public List<SelectOption> timeequalOpts { get; private set; }
-    public List<SelectOption> limitOpts { get; private set; }
+  public List<SelectOption> dateOpts { get; private set; }
+  public List<SelectOption> textOpts { get; private set; }
+  public List<SelectOption> timeOpts { get; private set; }
+  public List<SelectOption> equalOpts { get; private set; }
+  public List<SelectOption> timeequalOpts { get; private set; }
+  public List<SelectOption> limitOpts { get; private set; }
 
-    /*****************鐢婚潰琛ㄧずBean******************/
-    public Integer oppCount { get; set; }
-    public String saveType { get; set; }
+  /*****************鐢婚潰琛ㄧずBean******************/
+  public Integer oppCount { get; set; }
+  public String saveType { get; set; }
 
-    public String sortKey { get; set; }
-    public String preSortKey { get; set; }
-    public Boolean sortOrderAsc { get; set; }
-    public String[] sortOrder { get; set; }
-    public String[] columus = new String[] {'Id'};
-    public String[] selColumus = null;
-    public Set<String> columusSet = new Set<String> {'Id'};
+  public String sortKey { get; set; }
+  public String preSortKey { get; set; }
+  public Boolean sortOrderAsc { get; set; }
+  public String[] sortOrder { get; set; }
+  public String[] columus = new List<String>{ 'Id' };
+  public String[] selColumus = null;
+  public Set<String> columusSet = new Set<String>{ 'Id' };
 
-    // 椤圭洰set 瀛楁鏍囩
-    public List<String> titleLeft { get; private set; }
-    public List<String> titleRight { get; private set; }
-    // 椤圭洰set 瀛楁鍚�
-    public List<List<String>> columnsLeftApi { get; private set; }         // 鍙傜収闋呯洰鐢�
-    public List<List<String>> columnsRightApi { get; private set; }        // 鍙傜収闋呯洰鐢�
-    public List<String> columnLeftCss { get; private set; }               // css 鐢�
-    public List<String> columnRightCss { get; private set; }              // css 鐢�
-    public Map<String, String> columnLeftRW { get; private set; }              // r,w,wm鐢�
-    public Map<String, String> columnRightRW { get; private set; }             // r,w,wm鐢�
-    private String strColumus;
-    private String strRtColumus;
+  // 椤圭洰set 瀛楁鏍囩
+  public List<String> titleLeft { get; private set; }
+  public List<String> titleRight { get; private set; }
+  // 椤圭洰set 瀛楁鍚�
+  public List<List<String>> columnsLeftApi { get; private set; } // 鍙傜収闋呯洰鐢�
+  public List<List<String>> columnsRightApi { get; private set; } // 鍙傜収闋呯洰鐢�
+  public List<String> columnLeftCss { get; private set; } // css 鐢�
+  public List<String> columnRightCss { get; private set; } // css 鐢�
+  public Map<String, String> columnLeftRW { get; private set; } // r,w,wm鐢�
+  public Map<String, String> columnRightRW { get; private set; } // r,w,wm鐢�
+  private String strColumus;
+  private String strRtColumus;
 
-    //add by Link 2023-6-2
-    public String remindMsg{get;set;}
+  @TestVisible
+  private String accTypeForSort = null;
+  private static Integer oppLimit = 500;
 
-    @TestVisible private String accTypeForSort = null;
-    private static Integer oppLimit = 500;
+  public DealerInquiryModifyStateController() {
+    oppRecords = new List<OpportunityInfo>();
 
-    public DealerInquiryModifyStateController() {
-        oppRecords = new List<OpportunityInfo>();
+    //dateOpts = new List<SelectOption>();
+    //dateOpts.add(new SelectOption('', '--鏃�--'));
+    //dateOpts.add(new SelectOption('Registration_Day__c', '鐧诲綍鏃�'));
+    //dateOpts.add(new SelectOption('Ban_On_Use_Date__c', '绂佺敤鏃ユ湡'));
 
-        //dateOpts = new List<SelectOption>();
-        //dateOpts.add(new SelectOption('', '--鏃�--'));
-        //dateOpts.add(new SelectOption('Registration_Day__c', '鐧诲綍鏃�'));
-        //dateOpts.add(new SelectOption('Ban_On_Use_Date__c', '绂佺敤鏃ユ湡'));
+    //鏁版嵁瀛楁涓嬫媺鍒楄〃
+    textOpts = new List<SelectOption>();
+    textOpts.add(new SelectOption('', '--鏃�--'));
+    textOpts.add(
+      new SelectOption('Agency_Opportunity_No__c', '缁忛攢鍟嗚浠风紪鐮�')
+    );
+    textOpts.add(new SelectOption('Agency__r.Name', '缁忛攢鍟�'));
+    textOpts.add(new SelectOption('Agency_Hospital__r.Name', '缁忛攢鍟嗗尰闄�'));
+    textOpts.add(new SelectOption('Department_Cateogy__c', '绉戝鍒嗙被'));
+    textOpts.add(new SelectOption('Change_To_Opportunity_T__c', '璇环鍚嶇О'));
+    // textOpts.add(new SelectOption('Name', '璇环鍚嶇О'));
 
-        //鏁版嵁瀛楁涓嬫媺鍒楄〃
-        textOpts = new List<SelectOption>();
-        textOpts.add(new SelectOption('', '--鏃�--'));
-        textOpts.add(new SelectOption('Agency_Opportunity_No__c', '缁忛攢鍟嗚浠风紪鐮�'));
-        textOpts.add(new SelectOption('Agency__r.Name', '缁忛攢鍟�'));
-        textOpts.add(new SelectOption('Agency_Hospital__r.Name', '缁忛攢鍟嗗尰闄�'));
-        textOpts.add(new SelectOption('Department_Cateogy__c', '绉戝鍒嗙被'));
-        textOpts.add(new SelectOption('Change_To_Opportunity_T__c', '璇环鍚嶇О'));
-        // textOpts.add(new SelectOption('Name', '璇环鍚嶇О'));
+    textOpts.add(new SelectOption('StageName__c', '璇环闃舵'));
+    textOpts.add(new SelectOption('Oly_Inquiry_Status1__c', '鐘舵��1'));
+    //绮剧悽绉戞妧   zxk    2021-08-25   start
+    // textOpts.add(new SelectOption('Oly_Inquiry_Status2__c', '鐘舵��2'));
+    textOpts.add(new SelectOption('Oly_Inquiry_Stage__c', 'Oly璇环闃舵'));
+    //绮剧悽绉戞妧   zxk    2021-08-25   end
+    textOpts.add(new SelectOption('Hospital_City_Master__c', '甯�'));
 
-        textOpts.add(new SelectOption('StageName__c', '璇环闃舵'));
-        textOpts.add(new SelectOption('Oly_Inquiry_Status1__c', '鐘舵��1'));
-        //绮剧悽绉戞妧   zxk    2021-08-25   start
-        // textOpts.add(new SelectOption('Oly_Inquiry_Status2__c', '鐘舵��2'));
-        textOpts.add(new SelectOption('Oly_Inquiry_Stage__c', 'Oly璇环闃舵'));
+    // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.Salesdepartment_HP__c', '閿�鍞湰閮�'));
+    // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.State_Master__r.Name', '鐪�'));
+    // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.City_Master__r.Name', '甯�'));
+    //鏃ユ湡瀛楁涓嬫媺鍒楄〃
+    timeOpts = new List<SelectOption>();
+    timeOpts.add(new SelectOption('', '--鏃�--'));
+    timeOpts.add(new SelectOption('Created_Day__c', '鍒涘缓鏃�'));
+    timeOpts.add(new SelectOption('Bid_Planned_Date__c', '棰勬祴鎷涙爣鏃�'));
+    timeOpts.add(new SelectOption('Forecasted_Bid_Date__c', '棰勬祴涓爣鏃�'));
+    timeOpts.add(
+      new SelectOption('Close_Forecasted_Date__c', '棰勬祴涓嶰LY绛剧害鏃�')
+    );
+    timeOpts.add(new SelectOption('Lost_Opportunity_Date__c', '澶卞崟鏃ユ湡'));
+    timeOpts.add(new SelectOption('Deleted_Reason_Date__c', '鍙栨秷鏃ユ湡'));
+    //鏁版嵁瀛楁涓棿杩炴帴绗﹀彿
+    equalOpts = new List<SelectOption>();
+    equalOpts.add(new SelectOption('=', '绛変簬'));
+    equalOpts.add(new SelectOption('<>', '涓嶇瓑浜�'));
+    equalOpts.add(new SelectOption('<', '<'));
+    equalOpts.add(new SelectOption('>', '>'));
+    equalOpts.add(new SelectOption('<=', '<='));
+    equalOpts.add(new SelectOption('>=', '>='));
+    equalOpts.add(new SelectOption('contains', '鍖呭惈'));
+    equalOpts.add(new SelectOption('notcontains', '涓嶅寘鍚�'));
+    equalOpts.add(new SelectOption('starts with', '璧峰瀛楃'));
+    //鏃ユ湡瀛楁杩炴帴绗﹀彿
+    //timeequalOpts = new List<SelectOption>();
+    //timeequalOpts.add(new SelectOption('=', '绛変簬'));
+    //timeequalOpts.add(new SelectOption('<>', '涓嶇瓑浜�'));
+    //timeequalOpts.add(new SelectOption('<', '<'));
+    //timeequalOpts.add(new SelectOption('>', '>'));
+    //timeequalOpts.add(new SelectOption('<=', '<='));
+    //timeequalOpts.add(new SelectOption('>=', '>='));
+    //鏁版嵁鏄剧ず鏉℃暟
+    limitOpts = new List<SelectOption>();
+    limitOpts.add(new SelectOption('10', '10'));
+    limitOpts.add(new SelectOption('20', '20'));
+    limitOpts.add(new SelectOption('50', '50'));
+    limitOpts.add(new SelectOption('100', '100'));
+    limitOpts.add(new SelectOption('200', '200'));
+    limitOpts.add(new SelectOption('1000', '鍏ㄩ儴'));
+    //鏁版嵁鏄剧ず榛樿鏉℃暟
+    limits = '20';
+  }
+
+  public PageReference init() {
+    PartnerSoapSforceCom.Soap soap = new PartnerSoapSforceCom.Soap();
+    soap.SessionHeader = new PartnerSoapSforceCom.SessionHeader_element();
+    soap.SessionHeader.sessionId = UserInfo.getSessionId();
+    soap.endpoint_x =
+      URL.getSalesforceBaseUrl().toExternalForm() +
+      '/partner/services/Soap/u/33.0';
+    // soap.endpoint_x = URL.getSalesforceBaseUrl().toExternalForm() + '/services/Soap/u/33.0';
+
+    PartnerSoapSforceCom.DescribeLayoutResult dlr = new PartnerSoapSforceCom.DescribeLayoutResult();
+    if (System.Test.isRunningTest()) {
+      // UnitTest 鐢�
+      // PartnerSoapSforceCom.DescribeLayoutResult dlr = new PartnerSoapSforceCom.DescribeLayoutResult();
+      PartnerSoapSforceCom.RecordTypeMapping rtMap = new PartnerSoapSforceCom.RecordTypeMapping();
+      PartnerSoapSforceCom.DescribeLayout editLayout = new PartnerSoapSforceCom.DescribeLayout();
+      PartnerSoapSforceCom.DescribeLayoutSection editLayoutSection = new PartnerSoapSforceCom.DescribeLayoutSection();
+      PartnerSoapSforceCom.DescribeLayoutRow layoutRow = new PartnerSoapSforceCom.DescribeLayoutRow();
+      PartnerSoapSforceCom.DescribeLayoutItem layoutItem = new PartnerSoapSforceCom.DescribeLayoutItem();
+      PartnerSoapSforceCom.DescribeLayoutComponent layoutComponent = new PartnerSoapSforceCom.DescribeLayoutComponent();
+      dlr.recordTypeMappings = new List<PartnerSoapSforceCom.RecordTypeMapping>();
+      dlr.recordTypeMappings.add(rtMap);
+      rtMap.recordTypeId = 'recordTypeId';
+      dlr.layouts = new List<PartnerSoapSforceCom.DescribeLayout>();
+      dlr.layouts.add(editLayout);
+      editLayout.editLayoutSections = new List<PartnerSoapSforceCom.DescribeLayoutSection>();
+      editLayout.editLayoutSections.add(editLayoutSection);
+      editLayoutSection.layoutRows = new List<PartnerSoapSforceCom.DescribeLayoutRow>();
+      editLayoutSection.layoutRows.add(layoutRow);
+      layoutRow.layoutItems = new List<PartnerSoapSforceCom.DescribeLayoutItem>();
+      layoutRow.layoutItems.add(layoutItem);
+      layoutItem.layoutComponents = new List<PartnerSoapSforceCom.DescribeLayoutComponent>();
+      layoutItem.layoutComponents.add(layoutComponent);
+      // return dlr;
+    } else {
+      dlr = soap.describeLayout('Agency_Opportunity__c', null, null);
+      // dlr  = soap.describeLayout('asdas', null, null);
+    }
+
+    // PartnerSoapSforceCom.DescribeLayoutResult dlr  = soap.describeLayout('Agency_Opportunity__c', null, null);
+    Map<String, PartnerSoapSforceCom.DescribeLayout> layputMap = new Map<String, PartnerSoapSforceCom.DescribeLayout>();
+    for (PartnerSoapSforceCom.DescribeLayout layout : dlr.layouts) {
+      layputMap.put(layout.id, layout);
+    }
+    for (Integer lidx = 0; lidx < dlr.recordTypeMappings.size(); lidx++) {
+      String recordTypeId = dlr.recordTypeMappings[lidx].recordTypeId;
+      Map<String, String> rtnInner = new Map<String, String>();
+      editLayoutItemRWMap.put(recordTypeId, rtnInner);
+      System.debug('recordTypeId=' + recordTypeId);
+      PartnerSoapSforceCom.DescribeLayout layout = layputMap.get(
+        dlr.recordTypeMappings[lidx].layoutId
+      );
+      for (
+        PartnerSoapSforceCom.DescribeLayoutSection section : layout.editLayoutSections
+      ) {
+        for (PartnerSoapSforceCom.DescribeLayoutRow row : section.layoutRows) {
+          for (PartnerSoapSforceCom.DescribeLayoutItem item : row.layoutItems) {
+            if (
+              item.layoutComponents != null &&
+              item.layoutComponents.size() > 0 &&
+              String.isBlank(item.layoutComponents[0].value) == false
+            ) {
+              rtnInner.put(item.layoutComponents[0].value, 'r');
+              if (item.editableForUpdate) {
+                rtnInner.put(item.layoutComponents[0].value, 'w');
+              }
+              if (item.required) {
+                rtnInner.put(item.layoutComponents[0].value, 'wm');
+              }
+            }
+          }
+        }
+      }
+    }
+    // editLayoutItemRWMap = SoapApi.getEditRWByRecordType('Agency_Opportunity__c', null);
+    tmpAO = new Agency_Opportunity__c();
+    tmpBO = new Agency_Opportunity__c();
+    setLayoutRWInfo();
+    searchOppInner();
+    return null;
+  }
+  //鐢ㄤ簬鑾峰彇缁忛攢鍟嗚浠峰瓧娈甸泦鍜岃浠峰瓧娈甸泦浠ュ強鐩稿簲鐨勮鍐欐潈闄�
+  @TestVisible
+  private void setLayoutRWInfo() {
+    if (this.sortOrder == null) {
+      selColumus = new List<String>{};
+      strColumus = '';
+      ID accRecordTypeId = accTypeForSort;
+
+      Map<String, String> DESC_RW = editLayoutItemRWMap.get(
+        '012100000006KW7AAM'
+      );
+      Map<String, Schema.FieldSet> fsMap = Schema.getGlobalDescribe()
+        .get('Agency_Opportunity__c')
+        .getDescribe()
+        .fieldSets.getMap();
+      Schema.FieldSet fs = fsMap.get('DealerInquiryModifyState');
+      List<FieldSetMember> fsmList = fs.getFields();
+      titleLeft = new List<String>();
+      List<String> columnLeft = new List<String>();
+      columnLeftCss = new List<String>();
+      columnsLeftApi = new List<List<String>>();
+      columnLeftRW = new Map<String, String>();
+      for (FieldSetMember fsm : fsmList) {
+        titleLeft.add(fsm.getLabel());
+        columnLeft.add(fsm.getFieldPath());
+        List<String> splitFieldPath = fsm.getFieldPath().split('\\.');
+        columnsLeftApi.add(splitFieldPath);
+        if (DESC_RW == null) {
+          columnLeftRW.put(fsm.getFieldPath(), 'r');
+        } else if (splitFieldPath.size() == 1) {
+          String rw = DESC_RW.get(fsm.getFieldPath());
+          if (rw != null) {
+            columnLeftRW.put(fsm.getFieldPath(), rw);
+          } else {
+            columnLeftRW.put(fsm.getFieldPath(), 'r');
+          }
+        } else {
+          columnLeftRW.put(fsm.getFieldPath(), 'r');
+        }
+      }
+      for (String str : columnLeftRW.keySet()) {
+        System.debug(str + '=+=+=+=+=' + columnLeftRW.get(str));
+      }
+      for (String s : columnLeft) {
+        if (columusSet.contains(s) == false) {
+          columus.add(s);
+          columusSet.add(s);
+        }
+        if (selColumus.contains(s) == false) {
+          selColumus.add(s);
+        }
+        columnLeftCss.add(s.replace('.', '_'));
+      }
+      strRtColumus = '';
+      Schema.FieldSet fsRt = fsMap.get('DealerOpportunity');
+      List<FieldSetMember> fsmListRt = fsRt.getFields();
+      titleRight = new List<String>();
+      List<String> columnRight = new List<String>();
+      columnRightCss = new List<String>();
+      columnsRightApi = new List<List<String>>();
+      columnRightRW = new Map<String, String>();
+
+      for (FieldSetMember fsm : fsmListRt) {
+        titleRight.add(fsm.getLabel());
+        columnRight.add(fsm.getFieldPath());
+        List<String> splitFieldPath = fsm.getFieldPath().split('\\.');
+        columnsRightApi.add(splitFieldPath);
+        if (DESC_RW == null) {
+          columnRightRW.put(fsm.getFieldPath(), 'r');
+        } else if (splitFieldPath.size() == 1) {
+          String rw = DESC_RW.get(fsm.getFieldPath());
+          if (rw != null) {
+            columnRightRW.put(fsm.getFieldPath(), rw);
+          } else {
+            columnRightRW.put(fsm.getFieldPath(), 'r');
+          }
+        } else {
+          columnRightRW.put(fsm.getFieldPath(), 'r');
+        }
+      }
+      for (String s : columnRight) {
+        selColumus.add(s);
+        if (strRtColumus == '') {
+          strRtColumus = s;
+        } else {
+          strRtColumus = strRtColumus + ',' + s;
+        }
+        columnRightCss.add(s.replace('.', '_'));
+      }
+      strColumus = String.join(columus, ',');
+      System.debug('======-======-======strColumus' + strColumus);
+      System.debug('======-======-======strRtColumus' + strRtColumus);
+      this.sortOrderAsc = true;
+      this.sortOrder = new List<String>(selColumus.size());
+      for (Integer i = 0; i < selColumus.size(); i++)
+        this.sortOrder[i] = '銆�';
+    }
+  }
+  //鐢ㄤ簬鎷兼帴SOQL璇彞 鏍规嵁涓嶅悓妫�绱㈡潯浠舵嫾鎺ヤ笉鍚孲OQL璇彞銆�
+  public void searchOppInner() {
+    //SOQL:鎷兼帴妫�绱㈡潯浠朵互鍙婄粡閿�鍟嗚浠风殑SOQL璇彞
+    // List<User> userlist2 = [select id,name from user where Contactid in (select id from Contact)];
+    // String querySoql = '';
+    // Integer queryint = 0;
+    // for(User user : userlist2){
+    //     if(queryint == 0){
+    //         querySoql += '\''+user.Id+'\'';
+    //         queryint++;
+    //     }else{
+    //         querySoql += ',\''+user.Id+'\'';
+    //     }
+
+    // }
+    // System.debug('pppqqq222'+userlist2);
+    // System.debug('pppqqq333'+querySoql);
+    // AND Ownerid in ( '+querySoql+')'
+
+    String soql =
+      'SELECT Change_To_Opportunity__r.Id , Agency_Hospital__r.Name , Product_Category1__r.Name , Product_Category2__r.Name , Product_Category3__r.Name , Agency_Person__r.Name , Agency__r.Name , Change_To_Opportunity__r.Name ,' +
+      strColumus +
+      ',' +
+      strRtColumus +
+      ' FROM Agency_Opportunity__c WHERE recordType.DeveloperName = \'Opportunity\' ';
+    //鏁版嵁瀛楁锛氱粡閿�鍟嗗尰闄�  +SOQL
+    if (!String.isBlank(accSearch)) {
+      accSearch = accSearch.trim();
+      // soql += 'AND Agency__r.Name  '   + '  LIKE  \'%' + accSearch + '%\' ';
+      soql +=
+        'AND Agency_Hospital__r.Name  ' +
+        '  LIKE  \'%' +
+        accSearch +
+        '%\' ';
+    }
+    //鏁版嵁瀛楁锛氭媴褰撲汉  +SOQL
+    if (!String.isBlank(aooSearch)) {
+      String newAooSearch = aooSearch.trim();
+      // soql += 'AND Change_To_Opportunity__r.Owner.Alias = ' + '\'' + newAooSearch + '\'';//Name
+      soql +=
+        'AND Agency_PersonName__c ' +
+        '  LIKE  \'%' +
+        newAooSearch +
+        '%\' ';
+    }
+    //鏁版嵁瀛楁锛�03 鎵嬪姩濉啓椤� 鍑嗗璋冪敤makeTextSql锛�
+    if (!String.isBlank(numtext)) {
+      String newNumtext = numtext.trim();
+      String str = makeTextSql(numtext1, numtext2, newNumtext);
+      soql += str;
+      System.debug('+++++++++++++=============++++++++++++++++++' + soql);
+    }
+    //鐐瑰嚮鎺掑簭
+    // System.debug('==-=-=-=-=-=this.sortKey'+Integer.valueOf(this.sortKey)+'===titleLeft.size'+titleLeft.size()+7);
+    if (String.isBlank(this.sortKey)) {
+      soql +=
+        ' order by LastModifiedDate desc limit ' + Integer.valueOf(limits);
+    } else {
+      if (Integer.valueOf(this.sortKey) <= titleLeft.size() + 7) {
+        soql +=
+          ' order by ' +
+          this.selColumus[Integer.valueOf(this.sortKey)] +
+          ' ' +
+          (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last') +
+          ' limit ' +
+          Integer.valueOf(limits);
+      } else {
+        soql +=
+          ' order by Change_To_Opportunity__r.' +
+          this.selColumus[Integer.valueOf(this.sortKey)] +
+          ' ' +
+          (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last') +
+          ' limit ' +
+          Integer.valueOf(limits);
+      }
+    }
+    system.debug(soql);
+    // List<User> userlist1 = [select id,name from user ];
+    // System.debug('pppqqq111'+userlist1);
+
+    List<Agency_Opportunity__c> InfoList = Database.query(soql);
+    System.debug('+++++++-------------------' + InfoList);
+
+    // List<Agency_Opportunity__c> InfoList = ControllerUtil.DatabaseQuery(soql);
+    // System.debug('InfoList[0].Change_To_Opportunity_T__c'+InfoList[0].Change_To_Opportunity_T__c);
+    for (Agency_Opportunity__c apt : InfoList) {
+      System.debug('pppqqq' + apt.Agency_PersonName__c + '====' + apt.Name);
+    }
+
+    List<OpportunityInfo> oppinfoList = new List<OpportunityInfo>();
+    if (InfoList != null && InfoList.size() > 0) {
+      String str = '';
+      for (Agency_Opportunity__c agc : InfoList) {
+        if (str == '' && agc.Change_To_Opportunity__r.Id != null) {
+          str = '\'' + agc.Change_To_Opportunity__r.Id + '\'';
+        } else if (agc.Change_To_Opportunity__r.Id != null) {
+          str += ',\'' + agc.Change_To_Opportunity__r.Id + '\'';
+        }
+      }
+      for (Agency_Opportunity__c info : InfoList) {
+        oppinfoList.add(new OpportunityInfo(info, info));
+        oppinfoList[oppinfoList.size() - 1].lineNo = oppinfoList.size() - 1;
+      }
+    }
+    oppRecords = oppinfoList.clone();
+    oppCount = oppRecords.size();
+    //鏄剧ず鎻愮ず鎿嶄綔淇℃伅
+    if (String.isBlank(this.saveType) && String.isBlank(this.sortKey)) {
+      ApexPages.addmessage(
+        new ApexPages.message(
+          ApexPages.severity.INFO,
+          '鍙栧緱鏈�杩戠殑 ' + oppCount + ' 鏉℃暟鎹�'
+        )
+      );
+    } else if (!String.isBlank(this.sortKey)) {
+      if (oppCount > oppLimit) {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.INFO,
+            '鏁版嵁瓒呰繃' + oppLimit + '浠讹紝鍙樉绀哄墠' + oppLimit + '浠�'
+          )
+        );
+      } else {
+        ApexPages.addmessage(
+          new ApexPages.message(
+            ApexPages.severity.INFO,
+            '鍏辨湁 ' + oppCount + ' 鏉℃暟鎹�'
+          )
+        );
+      }
+    } else {
+      ApexPages.addmessage(
+        new ApexPages.message(
+          ApexPages.severity.INFO,
+          '鍏辨湁 ' + oppCount + ' 鏉℃暟鎹�'
+        )
+      );
+    }
+  }
+  //妫�绱㈡潯浠讹細鏁版嵁瀛楁1锛屾暟鎹瓧娈�2锛屾暟鎹瓧娈�3鍧囨弧瓒宠繘鍏ユ鏂规硶 鍒ゆ柇澶氱鎯呭喌
+  private String makeTextSql(
+    String textOpts,
+    String equalOpts,
+    String numtext
+  ) {
+    String soql = '';
+    if (!String.isBlank(textOpts)) {
+      //瀵绘壘妫�绱㈡潯浠跺寘鍚�� 鈥� 绌烘牸鐨勫閲嶆绱㈡潯浠�
+      //system.debug('314-textOpts:'+textOpts);
+      if (
+        (equalOpts == 'contains' || equalOpts == 'notcontains') &&
+        numtext.contains(',')
+      ) {
+        //system.debug('316-equalOpts:'+equalOpts);
+        //system.debug('316-numtext:'+numtext);
+        String[] vals = numtext.split(',');
+        String cSql = '';
+        soql += ' AND (';
+        for (Integer icount = 0; icount < vals.size(); icount++) {
+          //绮剧悽绉戞妧   zxk    2021-08-25   start
+          String val = vals[icount];
+          if (equalOpts == 'contains') {
+            cSql = this.makeTextSqlStr(textOpts, equalOpts, val);
+            soql += cSql;
+
+            if (icount < vals.size() - 1) {
+              soql += ' OR ';
+            }
+          } else if (equalOpts == 'notcontains') {
+            cSql = this.makeTextSqlStr(textOpts, equalOpts, val);
+            soql += cSql;
+            if (icount < vals.size() - 1) {
+              soql += ' AND ';
+            }
+          }
+        }
         //绮剧悽绉戞妧   zxk    2021-08-25   end
-        textOpts.add(new SelectOption('Hospital_City_Master__c', '甯�'));
-        
-        // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.Salesdepartment_HP__c', '閿�鍞湰閮�'));
-        // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.State_Master__r.Name', '鐪�'));
-        // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.City_Master__r.Name', '甯�'));
-        //鏃ユ湡瀛楁涓嬫媺鍒楄〃
-        timeOpts = new List<SelectOption>();
-        timeOpts.add(new SelectOption('', '--鏃�--'));
-        timeOpts.add(new SelectOption('Created_Day__c', '鍒涘缓鏃�'));
-        timeOpts.add(new SelectOption('Bid_Planned_Date__c', '棰勬祴鎷涙爣鏃�'));
-        timeOpts.add(new SelectOption('Forecasted_Bid_Date__c', '棰勬祴涓爣鏃�'));
-        timeOpts.add(new SelectOption('Close_Forecasted_Date__c', '棰勬祴涓嶰LY绛剧害鏃�'));
-        timeOpts.add(new SelectOption('Lost_Opportunity_Date__c', '澶卞崟鏃ユ湡'));
-        timeOpts.add(new SelectOption('Deleted_Reason_Date__c', '鍙栨秷鏃ユ湡'));
-        //鏁版嵁瀛楁涓棿杩炴帴绗﹀彿
-        equalOpts = new List<SelectOption>();
-        equalOpts.add(new SelectOption('=', '绛変簬'));
-        equalOpts.add(new SelectOption('<>', '涓嶇瓑浜�'));
-        equalOpts.add(new SelectOption('<', '<'));
-        equalOpts.add(new SelectOption('>', '>'));
-        equalOpts.add(new SelectOption('<=', '<='));
-        equalOpts.add(new SelectOption('>=', '>='));
-        equalOpts.add(new SelectOption('contains', '鍖呭惈'));
-        equalOpts.add(new SelectOption('notcontains', '涓嶅寘鍚�'));
-        equalOpts.add(new SelectOption('starts with', '璧峰瀛楃'));
-        //鏃ユ湡瀛楁杩炴帴绗﹀彿
-        //timeequalOpts = new List<SelectOption>();
-        //timeequalOpts.add(new SelectOption('=', '绛変簬'));
-        //timeequalOpts.add(new SelectOption('<>', '涓嶇瓑浜�'));
-        //timeequalOpts.add(new SelectOption('<', '<'));
-        //timeequalOpts.add(new SelectOption('>', '>'));
-        //timeequalOpts.add(new SelectOption('<=', '<='));
-        //timeequalOpts.add(new SelectOption('>=', '>='));
-        //鏁版嵁鏄剧ず鏉℃暟
-        limitOpts = new List<SelectOption>();
-        limitOpts.add(new SelectOption('10', '10'));
-        limitOpts.add(new SelectOption('20', '20'));
-        limitOpts.add(new SelectOption('50', '50'));
-        limitOpts.add(new SelectOption('100', '100'));
-        limitOpts.add(new SelectOption('200', '200'));
-        limitOpts.add(new SelectOption('1000', '鍏ㄩ儴'));
-        //鏁版嵁鏄剧ず榛樿鏉℃暟
-        limits = '20';
-    }
 
-    public PageReference init() {
-        remindMsg = '';
-        PartnerSoapSforceCom.Soap soap = new PartnerSoapSforceCom.Soap();
-        soap.SessionHeader = new PartnerSoapSforceCom.SessionHeader_element();
-        soap.SessionHeader.sessionId = UserInfo.getSessionId();
-        soap.endpoint_x = URL.getSalesforceBaseUrl().toExternalForm() + '/partner/services/Soap/u/33.0';
-        // soap.endpoint_x = URL.getSalesforceBaseUrl().toExternalForm() + '/services/Soap/u/33.0';
-
-        PartnerSoapSforceCom.DescribeLayoutResult dlr = new PartnerSoapSforceCom.DescribeLayoutResult();
-        if (System.Test.isRunningTest()) {
-            // UnitTest 鐢�
-            // PartnerSoapSforceCom.DescribeLayoutResult dlr = new PartnerSoapSforceCom.DescribeLayoutResult();
-            PartnerSoapSforceCom.RecordTypeMapping rtMap = new PartnerSoapSforceCom.RecordTypeMapping();
-            PartnerSoapSforceCom.DescribeLayout editLayout = new PartnerSoapSforceCom.DescribeLayout();
-            PartnerSoapSforceCom.DescribeLayoutSection editLayoutSection = new PartnerSoapSforceCom.DescribeLayoutSection();
-            PartnerSoapSforceCom.DescribeLayoutRow layoutRow = new PartnerSoapSforceCom.DescribeLayoutRow();
-            PartnerSoapSforceCom.DescribeLayoutItem layoutItem = new PartnerSoapSforceCom.DescribeLayoutItem();
-            PartnerSoapSforceCom.DescribeLayoutComponent layoutComponent = new PartnerSoapSforceCom.DescribeLayoutComponent();
-            dlr.recordTypeMappings = new List<PartnerSoapSforceCom.RecordTypeMapping>();
-            dlr.recordTypeMappings.add(rtMap);
-            rtMap.recordTypeId = 'recordTypeId';
-            dlr.layouts = new List<PartnerSoapSforceCom.DescribeLayout>();
-            dlr.layouts.add(editLayout);
-            editLayout.editLayoutSections = new List<PartnerSoapSforceCom.DescribeLayoutSection>();
-            editLayout.editLayoutSections.add(editLayoutSection);
-            editLayoutSection.layoutRows = new List<PartnerSoapSforceCom.DescribeLayoutRow>();
-            editLayoutSection.layoutRows.add(layoutRow);
-            layoutRow.layoutItems = new List<PartnerSoapSforceCom.DescribeLayoutItem>();
-            layoutRow.layoutItems.add(layoutItem);
-            layoutItem.layoutComponents = new List<PartnerSoapSforceCom.DescribeLayoutComponent>();
-            layoutItem.layoutComponents.add(layoutComponent);
-            // return dlr;
-        } else {
-            dlr  = soap.describeLayout('Agency_Opportunity__c', null, null);
-            // dlr  = soap.describeLayout('asdas', null, null);
-        }
-
-        // PartnerSoapSforceCom.DescribeLayoutResult dlr  = soap.describeLayout('Agency_Opportunity__c', null, null);
-        Map<String, PartnerSoapSforceCom.DescribeLayout> layputMap = new Map<String, PartnerSoapSforceCom.DescribeLayout>();
-        for (PartnerSoapSforceCom.DescribeLayout layout : dlr.layouts) {
-            layputMap.put(layout.id, layout);
-        }
-        for (Integer lidx = 0; lidx < dlr.recordTypeMappings.size(); lidx++) {
-            String recordTypeId = dlr.recordTypeMappings[lidx].recordTypeId;
-            Map<String, String> rtnInner = new Map<String, String>();
-            editLayoutItemRWMap.put(recordTypeId, rtnInner);
-            System.debug('recordTypeId=' + recordTypeId);
-            PartnerSoapSforceCom.DescribeLayout layout = layputMap.get(dlr.recordTypeMappings[lidx].layoutId);
-            for (PartnerSoapSforceCom.DescribeLayoutSection section : layout.editLayoutSections) {
-                for (PartnerSoapSforceCom.DescribeLayoutRow row : section.layoutRows) {
-                    for (PartnerSoapSforceCom.DescribeLayoutItem item : row.layoutItems) {
-                        if (item.layoutComponents != null && item.layoutComponents.size() > 0
-                                && String.isBlank(item.layoutComponents[0].value) == false) {
-                            rtnInner.put(item.layoutComponents[0].value, 'r');
-                            if (item.editableForUpdate) {
-                                rtnInner.put(item.layoutComponents[0].value, 'w');
-                            }
-                            if (item.required) {
-                                rtnInner.put(item.layoutComponents[0].value, 'wm');
-                            }
-                        }
-                    }
-                }
-            }
-        }
-        // editLayoutItemRWMap = SoapApi.getEditRWByRecordType('Agency_Opportunity__c', null);
-        tmpAO = new Agency_Opportunity__c();
-        tmpBO = new Agency_Opportunity__c();
-        setLayoutRWInfo();
-        searchOppInner();
-        return null;
-    }
-    //鐢ㄤ簬鑾峰彇缁忛攢鍟嗚浠峰瓧娈甸泦鍜岃浠峰瓧娈甸泦浠ュ強鐩稿簲鐨勮鍐欐潈闄�
-    @TestVisible private void setLayoutRWInfo() {
-        if (this.sortOrder == null) {
-            selColumus = new String[] {};
-            strColumus = '';
-            ID accRecordTypeId = accTypeForSort;
-
-            Map<String, String> DESC_RW = editLayoutItemRWMap.get('012100000006KW7AAM');
-            Map<String, Schema.FieldSet> fsMap = Schema.getGlobalDescribe().get('Agency_Opportunity__c').getDescribe().fieldSets.getMap();
-            Schema.FieldSet fs = fsMap.get('DealerInquiryModifyState');
-            List<FieldSetMember> fsmList = fs.getFields();
-            titleLeft = new List<String>();
-            List<String> columnLeft = new List<String>();
-            columnLeftCss = new List<String>();
-            columnsLeftApi = new List<List<String>>();
-            columnLeftRW = new Map<String, String>();
-            for (FieldSetMember fsm : fsmList) {
-                titleLeft.add(fsm.getLabel());
-                columnLeft.add(fsm.getFieldPath());
-                List<String> splitFieldPath = fsm.getFieldPath().split('\\.');
-                columnsLeftApi.add(splitFieldPath);
-                if (DESC_RW == null) {
-                    columnLeftRW.put(fsm.getFieldPath(), 'r');
-                } else if (splitFieldPath.size() == 1) {
-                    String rw = DESC_RW.get(fsm.getFieldPath());
-                    if (rw != null) {
-                        columnLeftRW.put(fsm.getFieldPath(), rw);
-                    } else {
-                        columnLeftRW.put(fsm.getFieldPath(), 'r');
-                    }
-                } else {
-                    columnLeftRW.put(fsm.getFieldPath(), 'r');
-                }
-            }
-            for (String str : columnLeftRW.keySet()) {
-                System.debug(str + '=+=+=+=+=' + columnLeftRW.get(str));
-            }
-            for (String s : columnLeft) {
-                if (columusSet.contains(s) == false) {
-                    columus.add(s);
-                    columusSet.add(s);
-                }
-                if (selColumus.contains(s) == false) {
-                    selColumus.add(s);
-                }
-                columnLeftCss.add(s.replace('.', '_'));
-            }
-            strRtColumus = '';
-            Schema.FieldSet fsRt = fsMap.get('DealerOpportunity');
-            List<FieldSetMember> fsmListRt = fsRt.getFields();
-            titleRight = new List<String>();
-            List<String> columnRight = new List<String>();
-            columnRightCss = new List<String>();
-            columnsRightApi = new List<List<String>>();
-            columnRightRW = new Map<String, String>();
-
-            for (FieldSetMember fsm : fsmListRt) {
-                titleRight.add(fsm.getLabel());
-                columnRight.add(fsm.getFieldPath());
-                List<String> splitFieldPath = fsm.getFieldPath().split('\\.');
-                columnsRightApi.add(splitFieldPath);
-                if (DESC_RW == null) {
-                    columnRightRW.put(fsm.getFieldPath(), 'r');
-                } else if (splitFieldPath.size() == 1) {
-                    String rw = DESC_RW.get(fsm.getFieldPath());
-                    if (rw != null) {
-                        columnRightRW.put(fsm.getFieldPath(), rw);
-                    } else {
-                        columnRightRW.put(fsm.getFieldPath(), 'r');
-                    }
-                } else {
-                    columnRightRW.put(fsm.getFieldPath(), 'r');
-                }
-            }
-            for (String s : columnRight) {
-                selColumus.add(s);
-                if (strRtColumus == '') {
-                    strRtColumus = s;
-                } else {
-                    strRtColumus = strRtColumus + ',' + s;
-                }
-                columnRightCss.add(s.replace('.', '_'));
-
-            }
-            strColumus = String.join(columus, ',');
-            System.debug('======-======-======strColumus' + strColumus);
-            System.debug('======-======-======strRtColumus' + strRtColumus);
-            this.sortOrderAsc = true;
-            this.sortOrder = new String[selColumus.size()];
-            for (Integer i = 0; i < selColumus.size(); i++) this.sortOrder[i] = '銆�';
-        }
-    }
-    //鐢ㄤ簬鎷兼帴SOQL璇彞 鏍规嵁涓嶅悓妫�绱㈡潯浠舵嫾鎺ヤ笉鍚孲OQL璇彞銆�
-    public void searchOppInner() {
-        //SOQL:鎷兼帴妫�绱㈡潯浠朵互鍙婄粡閿�鍟嗚浠风殑SOQL璇彞
-        // List<User> userlist2 = [select id,name from user where Contactid in (select id from Contact)];
-        // String querySoql = '';
-        // Integer queryint = 0;
-        // for(User user : userlist2){
-        //     if(queryint == 0){
-        //         querySoql += '\''+user.Id+'\'';
-        //         queryint++;
-        //     }else{
-        //         querySoql += ',\''+user.Id+'\'';
+        //     String val = vals[icount];
+        //     cSql = this.makeTextSqlStr(textOpts, equalOpts, val);
+        //     system.debug(cSql);
+        //     soql += cSql;
+        //     if (icount < vals.size() - 1) {
+        //         soql += ' OR ';
         //     }
-
         // }
-        // System.debug('pppqqq222'+userlist2);
-        // System.debug('pppqqq333'+querySoql);
-        // AND Ownerid in ( '+querySoql+')'
+        soql += ')';
+      }
+      //瀵绘壘妫�绱㈡潯浠跺寘鍚�橈紝鈥� 閫楀彿鐨勫閲嶆绱㈡潯浠�
+      else if (
+        (equalOpts == '=' || equalOpts == '<>') && numtext.contains(',')
+      ) {
+        String[] vals = numtext.split(',');
+        soql += ' AND ( ';
+        for (Integer icount = 0; icount < vals.size(); icount++) {
+          String val = vals[icount];
+          if (equalOpts == '=') {
+            soql += textOpts + ' = \'' + val + '\'';
+            if (icount < vals.size() - 1) {
+              soql += ' OR ';
+            }
+          } else if (equalOpts == '<>') {
+            soql += textOpts + ' <> \'' + val + '\'';
+            if (icount < vals.size() - 1) {
+              soql += ' AND ';
+            }
+          }
+        }
+        soql += ')';
+      }
+      //妫�绱㈣繛鎺ョ涓哄寘鍚互鍙婁笉鍖呭惈
+      else if (
+        equalOpts.equals('contains') || equalOpts.equals('notcontains')
+      ) {
+        if (equalOpts.equals('contains')) {
+          soql += ' AND ' + textOpts + ' LIKE \'%' + numtext + '%\'';
+        } else if (equalOpts.equals('notcontains')) {
+          soql += ' AND ( NOT ' + textOpts + ' LIKE \'%' + numtext + '%\' ) ';
+        }
+      }
+      //妫�绱㈣繛鎺ョ涓虹瓑浜庝互鍙婁笉绛変簬
+      else if (equalOpts == '=' || equalOpts == '<>') {
+        soql += 'AND ' + textOpts + equalOpts + '\'' + numtext + '\'';
+      }
+      //绮剧悽绉戞妧   zxk    2021-08-25   start
+      //璧峰瀛楃
+      else if (equalOpts == 'starts with' && numtext.contains(' ')) {
+        String[] vals = numtext.split(' ');
+        soql += ' AND ( ';
+        for (Integer icount = 0; icount < vals.size(); icount++) {
+          String val = vals[icount];
+          if (equalOpts == 'starts with') {
+            soql += ' ' + textOpts + '  LIKE  \'%' + val + '%\'';
+            if (icount < vals.size() - 1) {
+              soql += ' OR ';
+            }
+          }
+        }
+        soql += ')';
+      }
+      //绮剧悽绉戞妧   zxk    2021-08-25   end
 
-        String soql = 'SELECT Change_To_Opportunity__r.Id , Agency_Hospital__r.Name , Product_Category1__r.Name , Product_Category2__r.Name , Product_Category3__r.Name , Agency_Person__r.Name , Agency__r.Name , Change_To_Opportunity__r.Name ,' +
-                      strColumus + ',' + strRtColumus +
-                      ' FROM Agency_Opportunity__c WHERE recordType.DeveloperName = \'Opportunity\' ';
-        //鏁版嵁瀛楁锛氱粡閿�鍟嗗尰闄�  +SOQL
-        if (!String.isBlank(accSearch)) {
-            accSearch = accSearch.trim();
-            // soql += 'AND Agency__r.Name  '   + '  LIKE  \'%' + accSearch + '%\' ';
-            soql += 'AND Agency_Hospital__r.Name  '   + '  LIKE  \'%' + accSearch + '%\' ';
-        }
-        //鏁版嵁瀛楁锛氭媴褰撲汉  +SOQL
-        if (!String.isBlank(aooSearch)) {
-            String newAooSearch = aooSearch.trim();
-            // soql += 'AND Change_To_Opportunity__r.Owner.Alias = ' + '\'' + newAooSearch + '\'';//Name
-            soql += 'AND Agency_PersonName__c ' + '  LIKE  \'%' + newAooSearch + '%\' ';
-        }
-        //鏁版嵁瀛楁锛�03 鎵嬪姩濉啓椤� 鍑嗗璋冪敤makeTextSql锛�
-        if (!String.isBlank(numtext)) {
-            String newNumtext = numtext.trim();
-            String str = makeTextSql(numtext1,  numtext2,  newNumtext);
-            soql += str;
-            System.debug('+++++++++++++=============++++++++++++++++++' + soql);
-        }
-        //鐐瑰嚮鎺掑簭
-        // System.debug('==-=-=-=-=-=this.sortKey'+Integer.valueOf(this.sortKey)+'===titleLeft.size'+titleLeft.size()+7);
-        if (String.isBlank(this.sortKey)) {
-            soql += ' order by LastModifiedDate desc limit ' + Integer.valueOf(limits);
+      // //璧峰瀛楃
+      // else if (equalOpts == 'starts with'){
+      //     soql += 'AND ' + textOpts + ' LIKE \'' + numtext + '%\'';
+      // }
+      //妫�绱㈣繛鎺ョ鐨勫叾浠栨儏鍐�
+      else {
+        String cSql = this.makeTextSqlStr(textOpts, equalOpts, numtext);
+        if (equalOpts != '<>') {
+          soql += cSql;
         } else {
-            if (Integer.valueOf(this.sortKey) <= titleLeft.size() + 7) {
-                soql += ' order by ' + this.selColumus[Integer.valueOf(this.sortKey)] + ' ' + (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last') + ' limit ' + Integer.valueOf(limits);
-            } else {
-                soql += ' order by Change_To_Opportunity__r.' + this.selColumus[Integer.valueOf(this.sortKey)] + ' ' + (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last') + ' limit ' + Integer.valueOf(limits);
-            }
+          soql += ' and (NOT ' + cSql + ') ';
         }
-        system.debug(soql);
-        // List<User> userlist1 = [select id,name from user ];
-        // System.debug('pppqqq111'+userlist1);
-
-        List<Agency_Opportunity__c> InfoList = Database.query(soql);
-        System.debug('+++++++-------------------'+InfoList);
-
-        // List<Agency_Opportunity__c> InfoList = ControllerUtil.DatabaseQuery(soql);
-        // System.debug('InfoList[0].Change_To_Opportunity_T__c'+InfoList[0].Change_To_Opportunity_T__c);
-        for (Agency_Opportunity__c apt : InfoList) {
-            System.debug('pppqqq' + apt.Agency_PersonName__c + '====' + apt.Name);
+      }
+    }
+    return soql;
+  }
+  //妫�绱㈡潯浠讹細鏁版嵁瀛楁1锛屾暟鎹瓧娈�2锛屾暟鎹瓧娈�3鍧囨弧瓒筹紝骞朵笖杩涘叆makeTextSql锛堬級涔嬪悗锛屽唴鍚暟鎹瓧娈靛寘鍚绉嶆椂杩涘叆姝ゆ柟娉曘��
+  @TestVisible
+  private String makeTextSqlStr(String textOpts, String equalOpts, String val) {
+    String soql = '';
+    if (!String.isBlank(textOpts)) {
+      String tmpVal = val;
+      if (!String.isBlank(tmpVal)) {
+        if (equalOpts == 'contains' || equalOpts == 'notcontains') {
+          if (equalOpts == 'contains') {
+            soql += ' ' + textOpts + '  LIKE  \'%' + val + '%\'';
+          } else if (equalOpts == 'notcontains') {
+            soql += ' ( NOT ' + textOpts + '  LIKE  \'%' + val + '%\' ) ';
+          }
+        } else if (equalOpts == '=' || equalOpts == '<>') {
+          if (equalOpts == '=') {
+            soql += ' AND ' + textOpts + ' = ' + val;
+          } else if (equalOpts == '<>') {
+            soql += ' AND ' + textOpts + ' <> ' + val;
+          }
         }
-
-        List<OpportunityInfo> oppinfoList = new List<OpportunityInfo>();
-        if (InfoList != null && InfoList.size() > 0) {
-            String str = '';
-            for (Agency_Opportunity__c agc : InfoList) {
-                if (str == '' && agc.Change_To_Opportunity__r.Id != null) {
-                    str = '\'' + agc.Change_To_Opportunity__r.Id + '\'';
-                } else if (agc.Change_To_Opportunity__r.Id != null) {
-                    str += ',\'' + agc.Change_To_Opportunity__r.Id + '\'';
-
-                }
-            }
-            for (Agency_Opportunity__c info : InfoList) {
-                oppinfoList.add(new OpportunityInfo(info, info));
-                oppinfoList[oppinfoList.size() - 1].lineNo = oppinfoList.size() - 1;
-            }
-        }
-        oppRecords = oppinfoList.clone();
-        oppCount = oppRecords.size();
-        //鏄剧ず鎻愮ず鎿嶄綔淇℃伅
-        if (String.isBlank(this.saveType) && String.isBlank(this.sortKey)) {
-            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '鍙栧緱鏈�杩戠殑 ' + oppCount + ' 鏉℃暟鎹�'));
-            //add by Link 2023-6-2
-            remindMsg = '鍙栧緱鏈�杩戠殑 ' + oppCount + ' 鏉℃暟鎹�';
-        } else if (!String.isBlank(this.sortKey)) {
-            if (oppCount > oppLimit) {
-                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '鏁版嵁瓒呰繃' + oppLimit + '浠讹紝鍙樉绀哄墠' + oppLimit + '浠�'));
-                //add by Link 2023-6-2
-                remindMsg = '鏁版嵁瓒呰繃' + oppLimit + '浠讹紝鍙樉绀哄墠' + oppLimit + '浠�';
-            } else {
-                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '鍏辨湁 ' + oppCount + ' 鏉℃暟鎹�'));
-                //add by Link 2023-6-2
-                remindMsg = '鍏辨湁 ' + oppCount + ' 鏉℃暟鎹�';
-            }
+      } else {
+        soql = ' AND ' + textOpts;
+        if (equalOpts == '=') {
+          soql += ' = ' + tmpVal;
+        } else if (equalOpts == '<>') {
+          soql += ' <> ' + tmpVal;
+        } else if (equalOpts == 'contains') {
+          soql +=
+            ' like \'%' +
+            String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) +
+            '%\'';
+        } else if (equalOpts == 'notcontains') {
+          soql +=
+            ' like \'%' +
+            String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) +
+            '%\'';
+        } else if (equalOpts == 'starts with') {
+          soql +=
+            ' like \'%' +
+            String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) +
+            '%\'';
         } else {
-            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '鍏辨湁 ' + oppCount + ' 鏉℃暟鎹�'));
-            //add by Link 2023-6-2
-            remindMsg = '鍏辨湁 ' + oppCount + ' 鏉℃暟鎹�';
+          soql += ' ' + equalOpts + ' ' + tmpVal;
         }
+      }
     }
-    //妫�绱㈡潯浠讹細鏁版嵁瀛楁1锛屾暟鎹瓧娈�2锛屾暟鎹瓧娈�3鍧囨弧瓒宠繘鍏ユ鏂规硶 鍒ゆ柇澶氱鎯呭喌
-    private String makeTextSql(String textOpts, String equalOpts, String numtext) {
-        String soql = '';
-        if (!String.isBlank(textOpts)) {
-            //瀵绘壘妫�绱㈡潯浠跺寘鍚�� 鈥� 绌烘牸鐨勫閲嶆绱㈡潯浠�
-            //system.debug('314-textOpts:'+textOpts);
-            if ((equalOpts == 'contains' || equalOpts == 'notcontains') && numtext.contains(',')) {
-                //system.debug('316-equalOpts:'+equalOpts);
-                //system.debug('316-numtext:'+numtext);
-                String[] vals = numtext.split(',');
-                String cSql = '';
-                soql += ' AND (';
-                for (Integer icount = 0; icount < vals.size(); icount++) {
+    return soql;
+  }
 
-                    //绮剧悽绉戞妧   zxk    2021-08-25   start
-                    String val = vals[icount];
-                    if (equalOpts == 'contains') {
-                        cSql = this.makeTextSqlStr(textOpts, equalOpts, val);
-                        soql += cSql;
-
-                        if (icount < vals.size() - 1) {
-                            soql += ' OR ';
-                        }
-                    } else if (equalOpts == 'notcontains') {
-                        cSql = this.makeTextSqlStr(textOpts, equalOpts, val);
-                        soql += cSql;
-                        if (icount < vals.size() - 1) {
-                            soql += ' AND ';
-                        }
-                    }
-
-                }
-                //绮剧悽绉戞妧   zxk    2021-08-25   end
-
-
-                //     String val = vals[icount];
-                //     cSql = this.makeTextSqlStr(textOpts, equalOpts, val);
-                //     system.debug(cSql);
-                //     soql += cSql;
-                //     if (icount < vals.size() - 1) {
-                //         soql += ' OR ';
-                //     }
-                // }
-                soql += ')';
-            }
-            //瀵绘壘妫�绱㈡潯浠跺寘鍚�橈紝鈥� 閫楀彿鐨勫閲嶆绱㈡潯浠�
-            else if ((equalOpts == '=' || equalOpts == '<>') && numtext.contains(',')) {
-                String[] vals = numtext.split(',');
-                soql += ' AND ( ';
-                for (Integer icount = 0; icount < vals.size(); icount++) {
-                    String val = vals[icount];
-                    if (equalOpts == '=') {
-                        soql += textOpts + ' = \'' + val + '\'';
-                        if (icount < vals.size() - 1) {
-                            soql += ' OR ';
-                        }
-                    } else if (equalOpts == '<>') {
-                        soql += textOpts + ' <> \'' + val + '\'';
-                        if (icount < vals.size() - 1) {
-                            soql += ' AND ';
-                        }
-                    }
-                }
-                soql += ')';
-            }
-            //妫�绱㈣繛鎺ョ涓哄寘鍚互鍙婁笉鍖呭惈
-            else if (equalOpts.equals('contains') || equalOpts.equals('notcontains')) {
-                if (equalOpts.equals('contains')) {
-                    soql += ' AND ' + textOpts + ' LIKE \'%' + numtext + '%\'';
-                } else if (equalOpts.equals('notcontains')) {
-                    soql += ' AND ( NOT ' + textOpts + ' LIKE \'%' + numtext + '%\' ) ';
-                }
-            }
-            //妫�绱㈣繛鎺ョ涓虹瓑浜庝互鍙婁笉绛変簬
-            else if (equalOpts == '=' || equalOpts == '<>') {
-                soql += 'AND ' + textOpts + equalOpts + '\'' + numtext + '\'';
-            }
-
-            //绮剧悽绉戞妧   zxk    2021-08-25   start
-            //璧峰瀛楃
-            else if (equalOpts == 'starts with' && numtext.contains(' ')) {
-                String[] vals = numtext.split(' ');
-                soql += ' AND ( ';
-                for (Integer icount = 0; icount < vals.size(); icount++) {
-                    String val = vals[icount];
-                    if (equalOpts == 'starts with') {
-                        soql += ' ' + textOpts + '  LIKE  \'%' + val + '%\'' ;
-                        if (icount < vals.size() - 1) {
-                            soql += ' OR ';
-
-                        }
-                    }
-                }
-                soql += ')';
-
-            }
-            //绮剧悽绉戞妧   zxk    2021-08-25   end
-
-            // //璧峰瀛楃
-            // else if (equalOpts == 'starts with'){
-            //     soql += 'AND ' + textOpts + ' LIKE \'' + numtext + '%\'';
-            // }
-            //妫�绱㈣繛鎺ョ鐨勫叾浠栨儏鍐�
-            else {
-                String cSql = this.makeTextSqlStr(textOpts, equalOpts, numtext);
-                if (equalOpts != '<>') {
-                    soql += cSql;
-                } else {
-                    soql += ' and (NOT ' + cSql + ') ';
-                }
-            }
+  //妫�绱㈡寜閽細鐐瑰嚮妫�绱㈡寜閽Е鍙戞鏂规硶锛�
+  public PageReference chick() {
+    setLayoutRWInfo();
+    searchOppInner();
+    return null;
+  }
+  //椤甸潰鍐呭鏈変慨鏀规椂锛岄〉闈㈠垽鏂悗浼犲�肩粰changeFlg浠ュ強changeFlgRt灞炴�э紝鐐瑰嚮淇濆瓨鏃惰皟鐢ㄦ鏂规硶锛岃繘琛屼繚瀛樸��
+  public PageReference save() {
+    //system.debug('oppRecords[1].opp:' + oppRecords[1].opp +' oppRecords[1].AgcOpp:' + oppRecords[1].AgcOpp );
+    try {
+      List<Agency_Opportunity__c> updTarget = new List<Agency_Opportunity__c>();
+      // List<Opportunity> updOpps = new List<Opportunity>();
+      for (OpportunityInfo oi : oppRecords) {
+        if (oi.changeFlg == '1') {
+          oi.changeFlg = '0';
+          updTarget.add(oi.AgcOpp);
         }
-        return soql;
+        // if (oi.changeFlgRt == '1' && oi.opp.id != null) {
+        //     oi.changeFlgRt = '0';
+        //     updOpps.add(oi.opp);
+        // }
+      }
+      if (updTarget.size() > 0) {
+        system.debug('updTarget.size:' + updTarget.size());
+        update updTarget;
+      }
+      // if (updOpps.size() > 0) {
+      //     update updOpps;
+      // }
+      ApexPages.addmessage(
+        new ApexPages.message(ApexPages.severity.INFO, '淇濆瓨瀹屼簡')
+      );
+    } catch (Exception e) {
+      //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '璇风‘瀹氱瀹ゅ垎绫诲拰浜у搧鍖哄垎鐨勫叧绯�'));
     }
-    //妫�绱㈡潯浠讹細鏁版嵁瀛楁1锛屾暟鎹瓧娈�2锛屾暟鎹瓧娈�3鍧囨弧瓒筹紝骞朵笖杩涘叆makeTextSql锛堬級涔嬪悗锛屽唴鍚暟鎹瓧娈靛寘鍚绉嶆椂杩涘叆姝ゆ柟娉曘��
-    @TestVisible private String makeTextSqlStr(String textOpts, String equalOpts, String val) {
-        String soql = '';
-        if (!String.isBlank(textOpts)) {
-            String tmpVal = val;
-            if (!String.isBlank(tmpVal)) {
-                if (equalOpts == 'contains' || equalOpts == 'notcontains') {
-                    if (equalOpts == 'contains') {
-                        soql += ' ' + textOpts + '  LIKE  \'%' + val + '%\'' ;
-                    } else if (equalOpts == 'notcontains') {
-                        soql += ' ( NOT ' + textOpts + '  LIKE  \'%' + val + '%\' ) ' ;
-                    }
-                } else if (equalOpts == '=' || equalOpts == '<>') {
-                    if (equalOpts == '=') {
-                        soql += ' AND ' + textOpts + ' = ' + val ;
-                    } else if (equalOpts == '<>') {
-                        soql += ' AND ' + textOpts + ' <> ' + val ;
-                    }
-                }
-            } else {
-                soql = ' AND ' + textOpts;
-                if (equalOpts == '=') {
-                    soql += ' = ' + tmpVal;
-                } else if (equalOpts == '<>') {
-                    soql += ' <> ' + tmpVal;
-                } else if (equalOpts == 'contains') {
-                    soql += ' like \'%' + String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) + '%\'';
-                } else if (equalOpts == 'notcontains') {
-                    soql += ' like \'%' + String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) + '%\'';
-                } else if (equalOpts == 'starts with') {
-                    soql += ' like \'%' + String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) + '%\'';
-                } else {
-                    soql += ' ' + equalOpts + ' ' + tmpVal;
-                }
-            }
-        }
-        return soql;
+    if (saveType == '1') {
+      searchOppInner();
+      saveType = '';
+    } else if (saveType == '2') {
+      sortTable();
+      saveType = '';
+    } else {
     }
+    return null;
+  }
+  //鍏ㄩ儴灞曞紑璋冪敤姝ゆ柟娉�
+  public PageReference sortTable() {
+    oppRecords = new List<OpportunityInfo>();
+    if (this.sortKey == this.preSortKey) {
+      if (String.isBlank(this.sortKey) == false) {
+        // 鏂瑰悜銇屽銈忋倠銇伩
+        this.sortOrderAsc = !this.sortOrderAsc;
+        this.sortOrder[Integer.valueOf(this.sortKey)] = (this.sortOrderAsc ==
+          true
+          ? '鈫�'
+          : '鈫�');
+      }
+    } else {
+      this.sortOrderAsc = true;
+      if (String.isBlank(this.preSortKey) == false) {
+        this.sortOrder[Integer.valueOf(this.preSortKey)] = '銆�';
+      }
+      this.sortOrder[Integer.valueOf(this.sortKey)] = (this.sortOrderAsc == true
+        ? '鈫�'
+        : '鈫�');
+    }
+    this.preSortKey = this.sortKey;
 
-    //妫�绱㈡寜閽細鐐瑰嚮妫�绱㈡寜閽Е鍙戞鏂规硶锛�
-    public PageReference chick() {
-        setLayoutRWInfo();
-        searchOppInner();
-        return null;
-    }
-    //椤甸潰鍐呭鏈変慨鏀规椂锛岄〉闈㈠垽鏂悗浼犲�肩粰changeFlg浠ュ強changeFlgRt灞炴�э紝鐐瑰嚮淇濆瓨鏃惰皟鐢ㄦ鏂规硶锛岃繘琛屼繚瀛樸��
-    public PageReference save() {
-        //system.debug('oppRecords[1].opp:' + oppRecords[1].opp +' oppRecords[1].AgcOpp:' + oppRecords[1].AgcOpp );
-        try {
-            List<Agency_Opportunity__c> updTarget = new List<Agency_Opportunity__c>();
-            // List<Opportunity> updOpps = new List<Opportunity>();
-            for (OpportunityInfo oi : oppRecords) {
-                if (oi.changeFlg == '1') {
-                    oi.changeFlg = '0';
-                    updTarget.add(oi.AgcOpp);
+    setLayoutRWInfo();
+    searchOppInner();
+    return null;
+  }
 
-                }
-                // if (oi.changeFlgRt == '1' && oi.opp.id != null) {
-                //     oi.changeFlgRt = '0';
-                //     updOpps.add(oi.opp);
-                // }
-            }
-            if (updTarget.size() > 0) {
-                system.debug('updTarget.size:' + updTarget.size() );
-                update updTarget;
-            }
-            // if (updOpps.size() > 0) {
-            //     update updOpps;
-            // }
-            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '淇濆瓨瀹屼簡'));
-            //add by Link 2023-6-2
-            remindMsg = '淇濆瓨瀹屼簡';
-        } catch (Exception e) {
-            //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '璇风‘瀹氱瀹ゅ垎绫诲拰浜у搧鍖哄垎鐨勫叧绯�'));
-        }
-        if (saveType == '1') {
-            searchOppInner();
-            saveType = '';
-        } else if (saveType == '2') {
-            sortTable();
-            saveType = '';
-        } else {
-        }
-        return null;
+  //鑷畾涔夌被OpportunityInfo锛岀敤浜庡垱寤鸿櫄鎷熷瓧娈碉紝鍚堝苟杈撳嚭銆�
+  class OpportunityInfo {
+    // public Opportunity opp { get; set; }
+    public Agency_Opportunity__c opp { get; set; }
+    public Boolean canEdit { get; private set; }
+    public Boolean hasError { get; private set; }
+    public Boolean hasFieldError { get; private set; }
+    public Integer lineNo { get; private set; }
+    public String changeFlg { get; set; }
+    public String changeFlgRt { get; set; }
+    public Boolean ifLock { get; set; }
+    //public String accType { get; private set; }
+    public Agency_Opportunity__c AgcOpp { get; set; }
+    public OpportunityInfo(
+      Agency_Opportunity__c record,
+      Agency_Opportunity__c oppo
+    ) {
+      opp = oppo;
+      canEdit = true;
+      hasError = false;
+      hasFieldError = false;
+      lineNo = 0;
+      changeFlg = '0';
+      changeFlgRt = '0';
+      ifLock = Approval.isLocked(record);
+      AgcOpp = record;
     }
-    //鍏ㄩ儴灞曞紑璋冪敤姝ゆ柟娉�
-    public PageReference sortTable() {
-        oppRecords = new List<OpportunityInfo>();
-        if (this.sortKey == this.preSortKey) {
-            if (String.isBlank(this.sortKey) == false) {
-                // 鏂瑰悜銇屽銈忋倠銇伩
-                this.sortOrderAsc = !this.sortOrderAsc;
-                this.sortOrder[Integer.valueOf(this.sortKey)] = (this.sortOrderAsc == true ? '鈫�' : '鈫�');
-            }
-        } else {
-            this.sortOrderAsc = true;
-            if (String.isBlank(this.preSortKey) == false) {
-                this.sortOrder[Integer.valueOf(this.preSortKey)] = '銆�';
-            }
-            this.sortOrder[Integer.valueOf(this.sortKey)] = (this.sortOrderAsc == true ? '鈫�' : '鈫�');
-        }
-        this.preSortKey = this.sortKey;
-
-        setLayoutRWInfo();
-        searchOppInner();
-        return null;
-    }
-
-    //鑷畾涔夌被OpportunityInfo锛岀敤浜庡垱寤鸿櫄鎷熷瓧娈碉紝鍚堝苟杈撳嚭銆�
-    class OpportunityInfo {
-        // public Opportunity opp { get; set; }
-        public Agency_Opportunity__c opp { get; set; }
-        public Boolean canEdit { get; private set; }
-        public Boolean hasError { get; private set; }
-        public Boolean hasFieldError { get; private set; }
-        public Integer lineNo { get; private set; }
-        public String changeFlg { get; set; }
-        public String changeFlgRt { get; set; }
-        public Boolean ifLock { get; set; }
-        //public String accType { get; private set; }
-        public Agency_Opportunity__c AgcOpp { get; set; }
-        public OpportunityInfo(Agency_Opportunity__c record, Agency_Opportunity__c oppo) {
-            opp = oppo;
-            canEdit = true;
-            hasError = false;
-            hasFieldError = false;
-            lineNo = 0;
-            changeFlg = '0';
-            changeFlgRt = '0';
-            ifLock = Approval.isLocked(record);
-            AgcOpp = record;
-        }
-    }
-}
\ No newline at end of file
+  }
+}
diff --git a/force-app/main/default/classes/DealerInquiryModifyStateControllerTest.cls b/force-app/main/default/classes/DealerInquiryModifyStateControllerTest.cls
index b1f09b4..e4670e5 100644
--- a/force-app/main/default/classes/DealerInquiryModifyStateControllerTest.cls
+++ b/force-app/main/default/classes/DealerInquiryModifyStateControllerTest.cls
@@ -64,7 +64,7 @@
     opp.Name = 'GZ-SP-NFM007_1';
     opp.Trade__c = '鍐呰部';
     opp.StageName = '寮曞悎';
-    opp.CloseDate = Date.today();
+    opp.CloseDate = date.newinstance(2022, 11, 30);
     opp.Stock_apply_status__c = '鐢宠涓�';
     insert opp;
     Test.startTest();
@@ -102,9 +102,8 @@
     user.Alias = '銉嗐儲';
     user.CommunityNickname = '銉嗐偣銉堛儲銉笺偠銉�';
     user.SalesManager__c = UserInfo.getUserId();
-    System.runAs(new User(Id = UserInfo.getUserId())) {
-      insert user;
-    }
+
+    insert user;
     List<user> users = [
       SELECT Id, Name, LastName, FirstName
       FROM User
diff --git a/force-app/main/default/pages/DealerInquiryModifyState.page b/force-app/main/default/pages/DealerInquiryModifyState.page
index a8a3245..5ffea39 100644
--- a/force-app/main/default/pages/DealerInquiryModifyState.page
+++ b/force-app/main/default/pages/DealerInquiryModifyState.page
@@ -1,535 +1,849 @@
-<apex:page controller="DealerInquiryModifyStateController" docType="html-5.0" showHeader="false" sidebar="false" id="allPage" action="{!init}" lightningStyleSheets="true">
-<head>
-<title>缁忛攢鍟嗘壒閲忎慨鏀硅浠风姸鎬�</title>
+<apex:page
+  controller="DealerInquiryModifyStateController"
+  showHeader="false"
+  sidebar="false"
+  id="allPage"
+  action="{!init}"
+>
+  <head>
+    <title>缁忛攢鍟嗘壒閲忎慨鏀硅浠风姸鎬�</title>
 
-<apex:stylesheet value="{!URLFOR($Resource.blockUIcssOpp)}"/>
-<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
-<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
-<!-- TODO 鐩墠闄や簡markOpp()鏂规硶锛屽叾浠栨柟娉曢�氱敤锛宩s鏀瑰悕涓哄懆浼氬叡閫歫s锛屽悇涓敾闈釜鍒玧s鍐嶈嚜宸卞垱寤簀s -->
-<apex:includeScript value="{!URLFOR($Resource.Dealer_enquiryJs1)}"/>
+    <apex:stylesheet value="{!URLFOR($Resource.blockUIcssOpp)}" />
+    <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}" />
+    <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}" />
+    <!-- TODO 鐩墠闄や簡markOpp()鏂规硶锛屽叾浠栨柟娉曢�氱敤锛宩s鏀瑰悕涓哄懆浼氬叡閫歫s锛屽悇涓敾闈釜鍒玧s鍐嶈嚜宸卞垱寤簀s -->
+    <apex:includeScript value="{!URLFOR($Resource.Dealer_enquiryJs1)}" />
 
-<style>
-    td .dateFormat  {
+    <style>
+      td .dateFormat {
         display: none;
-    }
-    
-    div.inline { float:left; }
+      }
 
-    .clearBoth { clear:both; }
-
-    div.reportBlock table.list {
-        width:auto;
-    }
-
-    div#out_Div { /* 銇撱亾銇儤銉冦儉銈掓牸绱� */
-        position:relative;
+      div.inline {
+        float: left;
+      }
+      .clearBoth {
+        clear: both;
+      }
+      div.reportBlock table.list {
+        width: auto;
+      }
+      div#out_Div {
+        /* 銇撱亾銇儤銉冦儉銈掓牸绱� */
+        position: relative;
         overflow: hidden;
-        float:left;
-        width:50% !important;
-    }
-
-    div#out_Div_L {
-        position:relative;
-        overflow:hidden;
-        float:left;
-        width:50% !important;
-        border-right:2px solid #808383
-    }
-
-    div#in_Div {/* tbody銇屽叆銇c仸銇勩倠銆傘亾銇撱亴銈广偗銉兗銉璞�*/
-        position:relative;
-        overflow: auto;  /*銈广偗銉兗銉儛銉�*/
-        float:left;
-        width:50% !important;
-        height: 600px;
-    }
-
-    div#in_Div_L {
-        position:relative;
-        overflow-x:auto;
+        float: left;
+        width: 50.3%;
+      }
+      div#out_Div_L {
+        position: relative;
+        overflow: hidden;
+        float: left;
+        width: 48%;
+        border-right: 2px solid #000;
+      }
+      div#in_Div {
+        /* tbody銇屽叆銇c仸銇勩倠銆傘亾銇撱亴銈广偗銉兗銉璞�*/
+        position: relative;
+        overflow: auto; /*銈广偗銉兗銉儛銉�*/
+        float: left;
+        width: 51.8%;
+        height: 373px; /* tbody銈掕〃绀恒仚銈嬮珮銇曘�佸緦銇s銇仸瑾挎暣 */
+      }
+      div#in_Div_L {
+        position: relative;
+        overflow-x: auto;
         overflow-y: hidden;
-        float:left;
-        width:50% !important;
-        height: 600px;
-        border-right:2px solid #808383
-    }
+        float: left;
+        width: 48%;
+        height: 373px;
+        border-right: 2px solid #000;
+      }
 
-    body .pbBody table.list tr.headerRow td {
+      body .pbBody table.list tr.headerRow td {
         box-sizing: border-box;
-        text-align:center;font-weight:normal;
-        padding:0px 0px 0px 1px;
-    }
-
-    body .pbBody table.list tr.headerRow td.header1 {
-        text-align:center;font-weight:normal;
-        padding:0px 0px 0px 0px;
-    }
-
-    body .pbBody table.list tr.dataRow td {
+        text-align: center;
+        font-weight: normal;
+        padding: 0px 0px 0px 1px;
+      }
+      body .pbBody table.list tr.headerRow td.header1 {
+        text-align: center;
+        font-weight: normal;
+        padding: 0px 0px 0px 0px;
+      }
+      body .pbBody table.list tr.dataRow td {
         box-sizing: border-box;
-        padding:0px 0px 0px 1px; border-width: 0px 0px 1px 0px; vertical-align: middle; word-break:break-all;
-    }
-
-    body .pbBody table.list tr.dataRow td.dataCellBorder  {
+        padding: 0px 0px 0px 1px;
+        border-width: 0px 0px 1px 0px;
+        vertical-align: middle;
+        word-break: break-all;
+      }
+      body .pbBody table.list tr.dataRow td.dataCellBorder {
         /* 銇勩倝銇亜銆佷娇銇c仸銇勩仾銇� */
-        padding:0px 0px 0px 1px; border-width: 0px 0px 1px 0px; vertical-align: middle; word-break:break-all;
-    }
-
-    body .pbBody table.list tr.dataRow td.dataCellBorder1 {
-        padding:0px 0px 0px 1px;
-        border-width: 0px 0px 1px 1px; vertical-align: middle; word-break:break-all;
-    }
-
-    @-moz-document url-prefix() {
-        body .pbBody table.list tr.dataRow td.dataCellBorder1 {padding:0px 0px 0px 0px; border-width: 0px 0px 1px 1px; vertical-align: middle; word-break:break-all;}
-    }
-
-    table.list td {width:100px; }
-
-    table.list td select {width:95%;}
-
-    table.list td input {width:95%;}
-
-    table.list td textarea {
-        height:50px;
-        width:90%;
-    }
-
-    table.list .col_OCSM_Opportunity_No__c {width:120px;}
-    table.list .col_Strategic_department_Class_Name__c{width:80px;}
-    table.list .col_Change_To_Opportunity_T__c {width:155px;}
-    table.list .col_Department_Cateogy__c {width: 90px;}
-    table.list .col_Department_Name_Text__c {width: 80px;}
-    table.list .col_Hospital_City_Master__c {width: 70px;}  
-    table.list .col_Agency_Hospital__c {width: 146px;}
-    /*table.list .col_Oly_Forecasted_Date__c {width: 125px;}*/
-    table.list .col_Oly_Forecast_this_month__c {width: 135px;}
-    table.list .col_Oly_NM_Forecast__c {width: 135px;}
-    table.list .col_Oly_Forecast_last_month__c {width: 135px;}
-    table.list .col_Oly_Inquiry_Stage__c {width: 95px;}
-    table.list .col_Oly_Authorized_DB_No__c {width: 95px;}
-    table.list .col_Oly_Inquiry_Status2__c {width: 95px;}
-    table.list .col_Oly_Inquiry_Status1__c {width: 50px;}
-    table.list .col_Name {width:139px;} /*瀹㈡埛鍚�*/
-    table.list .col_Salesdepartment_HP__c {width:95px;} /*閿�鍞湰閮�(鍖婚櫌)*/
-    table.list .col_State_Master__c{width:80px;} /*鐪�*/
-    table.list .col_HP_146POCM_Category_From_Dept__c {width:100px;} /*OCM鍒嗙被(鍏紡)*/
-    table.list .col_Salesdepartment_DeptClass__c{width:120px;} /*閿�鍞湰閮�(绉戝鍒嗙被)*/
-    table.list .col_OCM_man_province_HP__c{width:90px;} /*OCM绠$悊鐪�*/
-    table.list .col_City_Master__c{width:80px;} /*甯�*/
-    table.list .col_Grade__c {width:70px;} /*鏀垮簻绛夌骇*/
-    table.list .col_Attribute_Type__c{width:90px;}  /*鍖婚櫌鎵�灞炴�ц川*/
-    table.list .col_Speciality_Type__c{width:90px;} /*鍖婚櫌涓撲笟鍖哄垎*/
-    table.list .col_Service_customer__c{width:120px;} /*鍙绾︽湇鍔″悎鍚屽鎴�*/
-    table.list .col_BF_owner__c{width:100px;} /*鍛煎惛绉戜富鎷呭綋*/
-    table.list .col_ENT_owner_ID__c{width:100px;} /*鑰抽蓟鍠夌涓绘媴褰�*/
-    table.list .col_GI_Main__c{width:100px;} /*娑堝寲绉戜富鎷呭綋*/
-    table.list .col_URO_owner_ID__c{width:100px;} /*娉屽翱绉戜富鎷呭綋*/
-    table.list .col_SP_Main__c{width:100px;} /*鏅绉戜富鎷呭綋*/
-    table.list .col_GYN_owner__c{width:100px;} /*濡囩涓绘媴褰�*/
-    table.list .col_Hospital_name_link__c{width:100px;} /*鍖婚櫌鍚�(閾炬帴)*/
-    table.list .col_Segment__c{width:90px;} /*OCM绉戝绛夌骇*/
-    table.list .col_Department_Budget_Sum_Price__c {width:128px;} /*绉戝棰勭畻鎬婚噾棰�(鍏�)*/
-    table.list .col_Target_amount_CV290__c {width:118px;} /*鐩爣鏁帮細CV-290*/
-    table.list .col_OPD_CV290__c {width:118px;} /*OPD瀵硅薄锛欳V-290*/
-    table.list .col_Target_amount_EUME2__c {width:118px;}  /*鐩爣鏁帮細EU-ME2*/
-    table.list .col_OPD_EUME2__c {width:118px;}  /*OPD瀵硅薄锛欵U-ME2*/
-    table.list .col_Target_amount_CV170__c {width:118px;} /*鐩爣鏁帮細CV-170*/
-    table.list .col_OPD_CV170__c {width:118px;} /*OPD瀵硅薄锛欳V-170*/
-    table.list .col_Target_amount_OERAW__c {width:118px;} /*鐩爣鏁帮細OER-AW*/
-    table.list .col_OPD_OERAW__c {width:118px;} /*OPD瀵硅薄锛歄ER-AW*/
-    table.list .col_Target_amount_GW__c {width:118px;} /*鐩爣鏁帮細瀵间笣(GW)*/
-    table.list .col_OPD_GW__c {width:118px;} /*OPD瀵硅薄锛氬涓�(GW)*/
-    table.list .col_Target_amount_OTVS400__c {width:118px;} /*鐩爣鏁帮細OTV-S400*/
-    table.list .col_OPD_OTVS400__c {width:118px;} /*OPD瀵硅薄锛歄TV-S400*/
-    table.list .col_Target_amount_CHS400XZ__c {width:118px;} /*鐩爣鏁帮細CH-S400-XZ*/
-    table.list .col_OPD_CHS400XZ__c {width:118px;} /*OPD瀵硅薄锛欳H-S400-XZ*/
-    table.list .col_Target_amount_3D__c {width:118px;} /*鐩爣鏁帮細3D*/
-    table.list .col_OPD_3D__c {width:118px;} /*OPD瀵硅薄锛�3D*/
-    table.list .col_Target_amount_OTVS190__c {width:118px;} /*鐩爣鏁帮細OTV-S190*/
-    table.list .col_OPD_OTVS190__c {width:118px;} /*OPD瀵硅薄锛歄TV-S190*/
-    table.list .col_Target_amount_CV190__c {width:118px;} /*鐩爣鏁帮細CV-190*/
-    table.list .col_OPD_CV190__c {width:118px;} /*OPD瀵硅薄锛欳V-190*/
-    table.list .col_Target_amount_UCES3__c {width:118px;} /*鐩爣鏁帮細UCES-3*/
-    table.list .col_OPD_UCES3__c {width:118px;} /*OPD瀵硅薄锛歎CES-3*/
-    table.list .col_Target_amount_USG400__c {width:118px;} /*鐩爣鏁帮細USG-400*/
-    table.list .col_OPD_USG400__c {width:118px;} /*OPD瀵硅薄锛歎SG-400*/
-    table.list .col_Hospital_Name__c {width:139px;} /*鍖婚櫌鍚�*/
-    table.list .col_Department_Name__c {width:60px;} /*绉戝鍚嶇О*/
-    table.list .col_Province_formula__c {width:78px;} /*鐪�(鍏紡)*/
-    table.list .col_X2_Largescale_Project__c {width:78px;} /****鏈夋棤涓ゅ勾浠ュ唴澶ч」鐩噰璐�*/
-    table.list .col_Ideal_Image_Sales__c {width:148px;} /****鎷撳睍銉诲紑鎷撹鍒�/钀ラ攢鏂规(閿�鍞�)*/
-    table.list .col_Review_Sales__c {width:148px;} /****杩涘睍鎯呭喌(閿�鍞�)*/
-    table.list .col_Submit_proposal_document__c {width:58px;} /*鏄惁鎻愪氦鎻愭涔�*/
-    table.list .col_OPP_Flag__c {width:58px;}
-    table.list .col_Sales_activity_plan__c {width:178px;} /*娲诲姩璁″垝(閿�鍞�)*/
-    /*table.list .col_Link1 {width:58px;}
-    table.list .col_Link2 {width:58px;}
-    table.list .col_Link3 {width:58px;}
-    table.list .col_Link4 {width:58px;}
-    table.list .col_Link5 {width:58px;}
-    table.list .col_Link6 {width:58px;}
-    table.list .col_Link7 {width:58px;}
-    table.list .col_Link8 {width:58px;}*/
-    body .pbBody table.list tr.headerRow td.colViewing {
-    /* 銉囥儠銈┿儷銉堝�ゃ�佹渶灏忓寲銈€偆銈炽兂銈掕〃绀� */
-    background-image:url('{!URLFOR($Resource.IconResizeMinus_5)}') ;
-    background-repeat:no-repeat;
-    }
-    body .pbBody table.list tr.headerRow td.colUnHideIcon {
-        /* 鏈�澶у寲銈€偆銈炽兂銈掕〃绀� */
-        background-image:url('{!URLFOR($Resource.IconResizePlus_5)}');
-        background-repeat:no-repeat;
-    }
-    body .pbBody table.list tr.headerRow td.col_Scroll {width:0px; padding:0px; border-width:0px;}
-    body .pbBody table.list tr.dataRow td.col_Scroll {width:0px; padding:0px; border-width:0px;}
-    /*.zxk{
-        margin-bottom: 3px;
-    }*/
-    .buttonStyle{
-        font-size: 14px !important;
-        font-family: 'sans-serif' !important;
-        font-weight:500 !important;
-        width: 70px !important;
-        height: 32px !important;
-        border-radius: 4px !important;
-        opacity: 1 !important;
-        background:#090F84 !important;
-        color:#FFFFFF !important;
-        
-    }
-   
-
-</style>
-<script type="text/javascript">
-var heightAjustment = 120;
-var widthAjustment = 30;
-function setChangeFlgRight(cnt) {
-    document.getElementById('allPage:allForm:oppBlock:oppTable:' + cnt + ':changeFlgRt').value = 1;
-
-}
-
-</script>
-</head>
-    <apex:slds />
-    <div id="spinner" class="slds-spinner_container" style="display:none;">
-        <div role="status" class="slds-spinner slds-spinner_medium slds-spinner_brand">
-            <span class="slds-assistive-text">Loading</span>
-            <div class="slds-spinner__dot-a"></div>
-            <div class="slds-spinner__dot-b"></div>
-        </div>
-    </div>
-    <apex:form id="allForm">
-        <apex:actionFunction name="saveAndSearch" action="{!save}" rerender="allPanel" oncomplete="closeSpinner();expandAll();">
-             <apex:param name="firstParam" assignTo="{!saveType}" value="" />
-        </apex:actionFunction>
-         <apex:actionFunction name="saveAndSort" action="{!save}" rerender="allPanel" oncomplete="closeSpinner();expandAll();">
-            <apex:param name="firstParam" assignTo="{!saveType}" value="" />
-            <apex:param name="secondParam" assignTo="{!sortKey}" value="" />
-        </apex:actionFunction>
-        <apex:actionFunction name="searchOpp" action="{!chick}" rerender="allPanel" oncomplete="closeSpinner();expandAll();"/>
-        <apex:actionFunction name="sortTable" action="{!sortTable}" rerender="allPanel" oncomplete="closeSpinner();expandAll();">
-            <apex:param name="firstParam" assignTo="{!sortKey}" value="" />
-        </apex:actionFunction>
-        <apex:outputPanel id="allPanel">
-            <div id="zxk" style="margin-bottom: -15px;">
-            <apex:pageBlock id="searchBlock" mode="maindetail">
-                <table style="border-bottom-width: 0px; font-size:14px;color:#696969;">
-                    <tr>
-                        <td width="283px">
-                            <div style="color:#696969;">
-                                缁忛攢鍟嗗尰闄�&nbsp;&nbsp;&nbsp;
-                                <apex:inputText styleClass="slds-input" value="{!accSearch}" style="width:170px"/>
-                            </div>
-                        </td>
-                        <td width="250px">
-                            <div style="color:#696969;">
-                                閿�鍞媴褰�&nbsp;&nbsp;&nbsp;
-                                <apex:inputText styleClass="slds-input" value="{!aooSearch}" style="width:150px"/>
-                            </div>
-                        </td>
-                        <td width="230px">
-                            <div style="color:#696969;">
-                                鏄剧ず&nbsp;&nbsp;
-                                <apex:selectList styleClass="slds-input slds-combobox__input" style="width:100px;" value="{!limits}" size="1" onchange="searchOppJs_Account();return false;">
-                                    <apex:selectOptions value="{!limitOpts}"/>
-                                </apex:selectList>
-                                &nbsp;&nbsp;鏉℃暟鎹�
-                            </div>
-                        </td>
-                        <td><a href="#" onclick="expandAll();return false;" style="text-decoration: underline;color:#696969;">鍏ㄩ儴灞曞紑</a></td> 
-                    </tr>
-                </table>
-                <p style="height:10px;"></p>
-                <table style="border-bottom-width: 0px; font-size:12px;font-size:14px;color:#696969;">
-                    <tr>
-                        <td width="220px">
-                            <div style="color:#696969;">
-                                <font>鏁�&nbsp;鎹�&nbsp;瀛�&nbsp;娈�</font>&nbsp;&nbsp;&nbsp;&nbsp;
-                                <apex:selectList styleClass="slds-input slds-combobox__input" value="{!numtext1}" size="1" style="width:110px">
-                                    <apex:selectOptions value="{!textOpts}"/>
-                                </apex:selectList>
-                            </div>
-                        </td>
-                        <td width="130px">
-                            <apex:selectList styleClass="slds-input slds-combobox__input" value="{!numtext2}" size="1" style="width:110px">
-                                <apex:selectOptions value="{!equalOpts}"/>
-                            </apex:selectList>
-                        </td>
-                        <td width="183px">
-                            <apex:inputText styleClass="slds-input" style="width:150px" value="{!numtext}"/>
-                        </td>
-                        <td width="188px">
-                            <!-- slds-button slds-button_brand -->
-                            <apex:commandButton styleClass="buttonStyle" value="妫�绱�" onclick="searchOppJs_Account();return false;" style="height:30px;width:70px;"/>&nbsp;&nbsp;&nbsp;&nbsp;
-                            <apex:commandButton styleClass="buttonStyle" action="{!save}" value="淇濆瓨" rerender="allPanel" onclick="showSpinner();" oncomplete="closeSpinner();expandAll();" style="height:30px;width:70px;"/>
-                        </td>
-                        <td>
-                            <!-- <apex:pageMessages /> -->
-                            <!-- add by Link 2023-6-2 -->
-                            <apex:outputPanel rendered="{! remindMsg != '' && remindMsg != null}">
-                                <div style="border: 1px solid #D4D4D4;height:32px;border-radius:5px;color:#ff6a00;font-size:18px;">
-                                        <span class="slds-icon_container slds-icon-custom-custom53 slds-icon-text-default" >
-                                            <svg aria-hidden="true" class="slds-icon">
-                                                <use xmlns:xlink="http://www.w3.org/1999/xlink" 
-                                                     xlink:href="/apexpages/slds/latest/assets/icons/custom-sprite/svg/symbols.svg#custom53">
-                                                </use>
-                                            </svg>
-                                            <span class="slds-assistive-text">Custom 53</span>
-                                        </span>
-                                    <strong style="padding-top: 2px;">&nbsp;{!remindMsg}</strong>
-                                </div>
-                            </apex:outputPanel>
-                        </td>
-                    </tr>
-                </table>
-            </apex:pageBlock>
-            </div>
-            <!-- <div style="border: 1px solid #D4D4D4;border-top: 3px solid #51606E;border-radius:5px;margin-bottom:7px;"> -->
-                <apex:pageBlock id="oppBlock" mode="maindetail">
-                    <!-- <apex:pageblocksection columns="1" id="oppSection"> -->
-                        <apex:outputPanel >
-                            <apex:inputHidden id="oppCount" value="{!oppCount}"/>
-                            
-                            <div id="out_Div_L">
-                                <table class="list" style="border-bottom-width: 0px; width:1100px; font-size:14px !important; border-spacing:0;" border="" id="tableHeader">
-                                    <tr class="dataRow" height="1px">
-                                        <apex:variable value="{!0}" var="cnt" />
-                                        <apex:repeat value="{!titleRight}" var="t">
-                                            <td class="col_{!columnRightCss[cnt]}"></td>
-                                            <apex:variable value="{!cnt + 1}" var="cnt" />
-                                        </apex:repeat>
-                                        <td id="cell_Scroll" class="col_Scroll"></td>
-                                    </tr>
-                                    <tr class="headerRow" height="30px">
-                                        <apex:variable value="{!0}" var="cnt" />
-                                        <apex:repeat value="{!titleRight}" var="t">
-                                            <td class="col_{!columnRightCss[cnt]}">
-                                                <a href="#" onclick="sortTableJs_Account1('{!cnt + titleLeft.size}');return false;" style="text-decoration: underline;color:black;font-size:14px !important;font-weight: bold;"><apex:outputText value="{!t}"/></a>{!sortOrder[cnt + titleLeft.size]}
-                                            </td>
-                                            <apex:variable value="{!cnt + 1}" var="cnt" />
-                                        </apex:repeat>
-                                        <!-- <td id="cell_Scroll" class="col_Scroll"></td> -->
-                                    </tr>
-                                </table>
-                            </div>
-                            <div id="out_Div">
-                                <table class="list" style="border-bottom-width: 0px;   width:2000px; font-size:14px !important; border-spacing:0;" border="" id="tableHeader_L">
-                                    <tr class="dataRow" height="1px">
-                                        <apex:variable value="{!0}" var="cnt" />
-                                        <apex:repeat value="{!titleLeft}" var="t">
-                                            <td class="col_{!columnLeftCss[cnt]}"></td>
-                                            <apex:variable value="{!cnt + 1}" var="cnt" />
-                                        </apex:repeat>
-                                    </tr>
-                            <tr class="headerRow" height="30px">
-                                <apex:variable value="{!0}" var="cnt" />
-                                <apex:repeat value="{!titleLeft}" var="t">
-                                    <td class="col_{!columnLeftCss[cnt]}">
-                                        <a href="#" onclick="sortTableJs_Account1('{!cnt}');return false;" style="text-decoration: underline;color:black;font-size:14px !important;font-weight: bold;"><apex:outputText value="{!t}"/></a>{!sortOrder[cnt]}
-                                    </td>
-                                    <apex:variable value="{!cnt + 1}" var="cnt" />
-                                </apex:repeat>
-                                <!-- <td id="cell_Scroll" class="col_Scroll"></td> -->
-                            </tr>
-                        </table>
-                        
-                    </div>    <!-- out_Div -->
-                    <div style="clear:both;height:0px;"></div>
-                    <div id="in_Div_L">
-                        <table class="list" style="border-bottom-width: 0px;width:1100px; font-size:13px; border-spacing:0;" border="" id="tableData">
-                            <apex:variable value="{!1}" var="cnt" />
-                            <apex:repeat value="{!oppRecords}" var="or" id="oppTable">
-                                <tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" style="height:35px;" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
-                                    <apex:variable value="{!0}" var="cnt_3" />
-                                    <apex:repeat value="{!columnsRightApi}" var="c">
-                                        <td class="dataCellBorder1 col_{!columnRightCss[cnt_3]} {!cnt}_col_{!columnRightCss[cnt_3]}">
-                                            
-                                            <!-- vivek start  -->
-                                            <!-- <apex:outputLink rendered="{!c[0]=='Name'}" value="/{!or.opp.Id}" target="LINK_{!or.opp.Id}"><apex:outputField rendered="{!c[0]=='Name'}" value="{!or.opp[c[0]]}" /></apex:outputLink> -->
-                                            <!-- vivek end -->
-                                            <!-- <apex:outputField id="q1111111111"  rendered="{!(c.size==1 && columnRightRW[c[0]]=='r' && or.opp.Id <> null && c[0] <> 'Name' && (c[0] <> 'Opp_Changed_Field__c' ||(c[0] == 'Opp_Changed_Field__c' &&
-                                                or.opp.Opp_Changed_Field__c != '璇环闃舵鍙戠敓浜嗗彉鍖�' &&or.opp.Opp_Changed_Field__c != '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' &&or.opp.Opp_Changed_Field__c != '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' && or.opp.Opp_Changed_Field__c != '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�')))}" value="{!or.opp[c[0]]}" /> && or.opp.Oly_Inquiry_Status1__c <> null AgcOpp -->
-                                                <apex:outputField rendered="{!c[0] == 'Change_To_Opportunity_T__c' }" value="{!or.opp[c[0]]}" />
-                                                
-                                                <apex:outputField rendered="{!columnRightRW[c[0]]=='r' && c[0] <> 'Change_To_Opportunity_T__c' && c[0] <> 'Strategic_department_Class_Name__c' }" value="{!or.opp[c[0]]}" />
-                                                <!-- <apex:outputField id="q1111111111"  rendered="{!( columnRightRW[c[0]]=='r'  && c[0] <> 'Name' && (c[0] <> 'StageName__c' ||(c[0] == 'StageName__c' &&
-                                                    or.opp.Oly_Inquiry_Stage__c != '璇环闃舵鍙戠敓浜嗗彉鍖�' &&or.opp.Oly_Inquiry_Stage__c != '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' &&or.opp.Oly_Inquiry_Stage__c != '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' && or.opp.Oly_Inquiry_Stage__c != '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�')))}" value="{!or.opp[c[0]]}" /> -->
-                                                    <!-- <div style ="color:red"> -->
-                                                        <!--  <apex:outputField id="q2222222" rendered="{!(c.size==1 && columnRightRW[c[0]]=='r' && or.opp.Id <> null && c[0] <> 'Name' && c[0] == 'Opp_Changed_Field__c' && ( 
-                                                            or.opp.Opp_Changed_Field__c == '璇环闃舵鍙戠敓浜嗗彉鍖�' || or.opp.Opp_Changed_Field__c == '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' || or.opp.Opp_Changed_Field__c == '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' || or.opp.Opp_Changed_Field__c == '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�'))}" value="{!or.opp[c[0]]}" /> -->
-                                                            <!--   <apex:outputField id="q2222222" rendered="{!(c.size==1 && columnRightRW[c[0]]=='r'  && c[0] <> 'Name' && c[0] == 'StageName__c' && ( 
-                                     or.opp.Oly_Inquiry_Stage__c == '璇环闃舵鍙戠敓浜嗗彉鍖�' || or.opp.Oly_Inquiry_Stage__c == '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' || or.opp.Oly_Inquiry_Stage__c == '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' || or.opp.Oly_Inquiry_Stage__c == '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�'))}" value="{!or.opp[c[0]]}" />
-                                     
-                                    </div> -->
-                                    <!-- <apex:inputField rendered="{!(c.size==1 && columnRightRW[c[0]]=='w' && or.opp.Id <> null && c[0] <> 'Name')}" value="{!or.opp[c[0]]}" onchange="setChangeFlgRight('{!or.lineNo}')"/>
-                                        <apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='wm' && c[0] <> 'Name' && or.opp.Id <> null)}" layout="none">
-                                        <div class="requiredInput_r">
-                                            <div class="requiredBlock_r"></div>
-                                            <apex:inputField value="{!or.Opp[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/>
-                                        </div>
-                                    </apex:outputPanel> -->
-                                    <apex:outputField rendered="{!c[0] == 'Strategic_department_Class_Name__c'}" value="{!or.opp[c[0]]}" />
-                                    
-                                    <apex:inputField styleClass="slds-form-element" rendered="{!( columnRightRW[c[0]]=='w' && c[0] <> 'Strategic_department_Class_Name__c' && c[0] <> 'Change_To_Opportunity_T__c' && c[0] <> 'Name')}" value="{!or.opp[c[0]]}" onchange="setChangeFlgRight('{!or.lineNo}')"/>
-                                    <apex:outputPanel rendered="{!( columnRightRW[c[0]]=='wm' && c[0] <> 'Change_To_Opportunity_T__c' && c[0] <> 'Name' )}" layout="none">
-                                    <div class="requiredInput_r">
-                                        <div class="requiredBlock_r"></div>
-                                        <apex:inputField styleClass="slds-form-element" value="{!or.Opp[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/>
-                                    </div>
-                                </apex:outputPanel>
-                                <apex:variable value="{!cnt_3 + 1}" var="cnt_3" />
-                            </td>
-                        </apex:repeat>
-                        <td id="cell_Scroll" class="col_Scroll">
-                            <apex:inputHidden value="{!or.changeFlg}" id="changeFlg"/>
-                            <apex:inputHidden value="{!or.changeFlgRt}" id="changeFlgRt"/>
-                            <script type="text/javascript">
-                                        if ("{!or.canEdit}" == "false") {
-                                            var right = j$("#tableData").find("tr").eq({!cnt-1});
-                                            var rightline = j$(right).find("td");
-                                            for (var i=0; i<rightline.length; i++) {
-                                                j$(rightline[i]).find("input").each(function(){
-                                                    j$(this).attr("disabled",true);
-                                                });
-                                                j$(rightline[i]).find("a").each(function(){
-                                                    j$(this).attr("href","#");
-                                                });
-                                            }
-                                        }
-                                        if ("{!or.hasError}" == "true") {
-                                            var left = j$("#tableData_L").find("tr").eq({!cnt-1});
-                                            var leftFirst = j$(left).find("td").eq(1);
-                                            j$(leftFirst).css("background-color", "gray");
-                                        }
-                                        if ("{!or.hasFieldError}" == "true") {
-                                            var left = j$("#tableData_L").find("tr").eq({!cnt-1});
-                                            var leftFirst = j$(left).find("td").eq(1);
-                                            j$(leftFirst).css("background-color", "red");
-                                        }
-                                        </script>
-                                </td>
-                            </tr>
-                            <apex:variable value="{!cnt + 1}" var="cnt" />
-                        </apex:repeat> 
-                    </table>
-                </div>
-                <div id="in_Div">
-                    <table class="list" style="border-bottom-width: 0px;width:2000px; font-size:13px; border-spacing:0;" border="" id="tableData_L">
-                        <apex:variable value="{!1}" var="cnt_2" />
-                        <apex:repeat value="{!oppRecords}" var="or" id="oppTable_L">
-                            <tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" style="height:35px;" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
-                                <apex:variable value="{!0}" var="cnt_2" />
-                                <apex:repeat value="{!columnsLeftApi}" var="c">
-                                    <td class="dataCellBorder1 col_{!columnLeftCss[cnt_2]}">
-                                        <!-- vivek start -->
-                                        
-                                        <apex:outputLink target="_blank" rendered="{!c[0]=='Name'}" value="/{!or.AgcOpp.Id}" >
-                                        <apex:outputField rendered="{!c[0]=='Name'}" value="{!or.AgcOpp[c[0]]}" />
-                                    </apex:outputLink>
-                                    
-                                    <apex:outputPanel rendered="{!or.ifLock}">
-                                        <apex:outputField rendered="{!c[0]!='Name'}" value="{!or.AgcOpp[c[0]]}">
-                                        </apex:outputField>
-                                    </apex:outputPanel>
-                                    <!-- 閿�鍞媴褰� -->
-                                    <apex:outputPanel rendered="{!or.ifLock == false}">
-                                        <!-- <apex:outputLink target="_blank" rendered="{!c[0]=='Agency_Person__c'}" value="/{!or.AgcOpp[c[0]]}" > -->
-                                        <!-- <apex:outputText value="{!or.AgcOpp.Agency_Person__r.Name }" /> -->
-                                        <!-- <apex:outputText rendered="{!c[0]=='Agency_PersonName__c'}" value="{!or.AgcOpp.Agency_PersonName__c }" /> -->
-                                        <!-- </apex:outputLink> -->
-                                        <!-- 缁忛攢鍟� -->
-                                        <apex:outputLink target="_blank" rendered="{!c[0]=='Agency__c'}" value="/{!or.AgcOpp[c[0]]}" >
-                                        <apex:outputText value="{!or.AgcOpp.Agency__r.Name }" /> 
-                                    </apex:outputLink>
-                                    <!-- OCSM璇环 -->
-                                    <!-- <apex:outputLink target="_blank" rendered="{!c[0]=='Change_To_Opportunity__c'}" value="/{!or.AgcOpp[c[0]]}" >
-                                        <apex:outputText value="{!or.AgcOpp.Agency__r.Name }" />
-                                    </apex:outputLink> -->
-                                    <!-- 蹇呭~瀛楁 -->
-                                    <!-- <apex:outputField rendered="{!(c[0]<>'Name' && c[0]<>'Agency_Hospital__c' && c[0]<>'Product_Category1__c' && c[0]<>'Product_Category2__c' && c[0]<>'Product_Category3__c' && c[0]<>'Agency_Person__c' && c[0]<>'Agency__c' && c[0]<>'Change_To_Opportunity__c' && columnLeftRW[c[0]]=='wm')}" value="{!or.AgcOpp[c[0]] }"/> -->
-                                    <apex:inputField styleClass="slds-form-element" rendered="{!(c[0]<>'Name' && c[0]<>'Product_Category1__c' && c[0]<>'Product_Category2__c' && c[0]<>'Product_Category3__c' && c[0]<>'Agency_Person__c' && c[0]<>'Agency__c' && c[0]<>'Change_To_Opportunity__c' && columnLeftRW[c[0]]=='wm')}" value="{!or.AgcOpp[c[0]] }" onchange="setChangeFlg('{!or.lineNo}')"/>
-                                    <!-- vivek end -->
-                                    
-                                    
-                                    <apex:outputField rendered="{!(c[0]<>'Name' && c[0]<>'Product_Category1__c' && c[0]<>'Product_Category2__c' && c[0]<>'Product_Category3__c' && c[0]<>'Agency_Person__c' && c[0]<>'Agency__c' && c[0]<>'Change_To_Opportunity__c' && columnLeftRW[c[0]]=='r')}" value="{!or.AgcOpp[c[0]] }"/>
-                                    <!-- <apex:outputField rendered="{!(c[0]<>'Name' && columnLeftRW[c[0]]<>'w')}" value="{!or.AgcOpp[c[0]] }"/> -->
-                                    <!-- 鍙紪杈戠殑瀛楁 -->
-                                    <apex:inputField styleClass="slds-form-element" value="{!or.AgcOpp[c[0]]}"  rendered="{!columnLeftRW[c[0]]=='w'}" onchange="setChangeFlg('{!or.lineNo}')"/>
-                                </apex:outputPanel>
-                            </td>
-                            <apex:variable value="{!cnt_2 + 1}" var="cnt_2" />
-                        </apex:repeat>
-                    </tr>
-                                <apex:variable value="{!cnt + 1}" var="cnt" />
-                            </apex:repeat>
-                        </table>
-                        
-                    </div><!-- /in_Div -->
-                </apex:outputPanel>
-                </apex:pageBlock>
-            <!-- </div> -->
-                <script type="text/javascript">
-j$(function() {
-    var tableWidth = 0;
-    j$('body .pbBody table#tableHeader tr.headerRow td').each(function() {
-        var colClass = getColClassName(this);
-        if (colClass != 'col_Scroll') {
-            var headerCol = j$('body .pbBody table.list tr.headerRow td.' + colClass);
-            tableWidth += headerCol.width();
+        padding: 0px 0px 0px 1px;
+        border-width: 0px 0px 1px 0px;
+        vertical-align: middle;
+        word-break: break-all;
+      }
+      body .pbBody table.list tr.dataRow td.dataCellBorder1 {
+        padding: 0px 0px 0px 1px;
+        border-width: 0px 0px 1px 1px;
+        vertical-align: middle;
+        word-break: break-all;
+      }
+      @-moz-document url-prefix() {
+        body .pbBody table.list tr.dataRow td.dataCellBorder1 {
+          padding: 0px 0px 0px 0px;
+          border-width: 0px 0px 1px 1px;
+          vertical-align: middle;
+          word-break: break-all;
         }
-    });
-    // j$('table#tableData').css('width', (tableWidth + 2) + 'px');
-    // j$('table#tableHeader').css('width', (tableWidth + 2) + 'px');
-    
-    // list 銇� headerRow 銇� td銇� toggleWidth() 銈掕拷鍔�
-    bindTdToggleWidth();
-    // j$("input").attr("styleClass","slds-input");
-});
-var elements = document.getElementsByTagName("select");
-for (i = 0; i < elements.length; i++) {
-    var id = elements[i].id;
-    if (id.length > 5 && id.substring(id.length - 5, id.length) == 'mlktp') {
-        elements[i].style.display = "none";
-    }
-}
-var tbl_l = document.getElementById("tableData_L");
-var input_l = tbl_l.getElementsByTagName("input");
-for (i = 0; i < input_l.length; i++) {
-    var id = input_l[i].id + '_lkid';
-    if (document.getElementById(id) != null) {
-        input_l[i].style.width = "75%";
-    }
-}
-var tbl = document.getElementById("tableData");
-var input = tbl.getElementsByTagName("input");
-for (i = 0; i < input.length; i++) {
-    var id = input[i].id + '_lkid';
-    if (document.getElementById(id) != null) {
-        input[i].style.width = "75%";
-    }
-}
-</script>
+      }
+
+      table.list td {
+        width: 100px;
+      }
+      table.list td select {
+        width: 95%;
+      }
+      table.list td input {
+        width: 95%;
+      }
+      table.list td textarea {
+        height: 50px;
+        width: 90%;
+      }
+
+      table.list .col_OCSM_Opportunity_No__c {
+        width: 120px;
+      }
+      table.list .col_Strategic_department_Class_Name__c {
+        width: 80px;
+      }
+      table.list .col_Change_To_Opportunity_T__c {
+        width: 155px;
+      }
+      table.list .col_Department_Cateogy__c {
+        width: 90px;
+      }
+      table.list .col_Department_Name_Text__c {
+        width: 80px;
+      }
+      table.list .col_Hospital_City_Master__c {
+        width: 70px;
+      }
+      table.list .col_Agency_Hospital__c {
+        width: 146px;
+      }
+      /*table.list .col_Oly_Forecasted_Date__c {width: 125px;}*/
+      table.list .col_Oly_Forecast_this_month__c {
+        width: 135px;
+      }
+      table.list .col_Oly_NM_Forecast__c {
+        width: 135px;
+      }
+      table.list .col_Oly_Forecast_last_month__c {
+        width: 135px;
+      }
+      table.list .col_Oly_Inquiry_Stage__c {
+        width: 95px;
+      }
+      table.list .col_Oly_Authorized_DB_No__c {
+        width: 95px;
+      }
+      table.list .col_Oly_Inquiry_Status2__c {
+        width: 95px;
+      }
+      table.list .col_Oly_Inquiry_Status1__c {
+        width: 50px;
+      }
+      table.list .col_Name {
+        width: 139px;
+      } /*瀹㈡埛鍚�*/
+      table.list .col_Salesdepartment_HP__c {
+        width: 95px;
+      } /*閿�鍞湰閮�(鍖婚櫌)*/
+      table.list .col_State_Master__c {
+        width: 80px;
+      } /*鐪�*/
+      table.list .col_HP_146POCM_Category_From_Dept__c {
+        width: 100px;
+      } /*OCM鍒嗙被(鍏紡)*/
+      table.list .col_Salesdepartment_DeptClass__c {
+        width: 120px;
+      } /*閿�鍞湰閮�(绉戝鍒嗙被)*/
+      table.list .col_OCM_man_province_HP__c {
+        width: 90px;
+      } /*OCM绠$悊鐪�*/
+      table.list .col_City_Master__c {
+        width: 80px;
+      } /*甯�*/
+      table.list .col_Grade__c {
+        width: 70px;
+      } /*鏀垮簻绛夌骇*/
+      table.list .col_Attribute_Type__c {
+        width: 90px;
+      } /*鍖婚櫌鎵�灞炴�ц川*/
+      table.list .col_Speciality_Type__c {
+        width: 90px;
+      } /*鍖婚櫌涓撲笟鍖哄垎*/
+      table.list .col_Service_customer__c {
+        width: 120px;
+      } /*鍙绾︽湇鍔″悎鍚屽鎴�*/
+      table.list .col_BF_owner__c {
+        width: 100px;
+      } /*鍛煎惛绉戜富鎷呭綋*/
+      table.list .col_ENT_owner_ID__c {
+        width: 100px;
+      } /*鑰抽蓟鍠夌涓绘媴褰�*/
+      table.list .col_GI_Main__c {
+        width: 100px;
+      } /*娑堝寲绉戜富鎷呭綋*/
+      table.list .col_URO_owner_ID__c {
+        width: 100px;
+      } /*娉屽翱绉戜富鎷呭綋*/
+      table.list .col_SP_Main__c {
+        width: 100px;
+      } /*鏅绉戜富鎷呭綋*/
+      table.list .col_GYN_owner__c {
+        width: 100px;
+      } /*濡囩涓绘媴褰�*/
+      table.list .col_Hospital_name_link__c {
+        width: 100px;
+      } /*鍖婚櫌鍚�(閾炬帴)*/
+      table.list .col_Segment__c {
+        width: 90px;
+      } /*OCM绉戝绛夌骇*/
+      table.list .col_Department_Budget_Sum_Price__c {
+        width: 128px;
+      } /*绉戝棰勭畻鎬婚噾棰�(鍏�)*/
+      table.list .col_Target_amount_CV290__c {
+        width: 118px;
+      } /*鐩爣鏁帮細CV-290*/
+      table.list .col_OPD_CV290__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛欳V-290*/
+      table.list .col_Target_amount_EUME2__c {
+        width: 118px;
+      } /*鐩爣鏁帮細EU-ME2*/
+      table.list .col_OPD_EUME2__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛欵U-ME2*/
+      table.list .col_Target_amount_CV170__c {
+        width: 118px;
+      } /*鐩爣鏁帮細CV-170*/
+      table.list .col_OPD_CV170__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛欳V-170*/
+      table.list .col_Target_amount_OERAW__c {
+        width: 118px;
+      } /*鐩爣鏁帮細OER-AW*/
+      table.list .col_OPD_OERAW__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛歄ER-AW*/
+      table.list .col_Target_amount_GW__c {
+        width: 118px;
+      } /*鐩爣鏁帮細瀵间笣(GW)*/
+      table.list .col_OPD_GW__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛氬涓�(GW)*/
+      table.list .col_Target_amount_OTVS400__c {
+        width: 118px;
+      } /*鐩爣鏁帮細OTV-S400*/
+      table.list .col_OPD_OTVS400__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛歄TV-S400*/
+      table.list .col_Target_amount_CHS400XZ__c {
+        width: 118px;
+      } /*鐩爣鏁帮細CH-S400-XZ*/
+      table.list .col_OPD_CHS400XZ__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛欳H-S400-XZ*/
+      table.list .col_Target_amount_3D__c {
+        width: 118px;
+      } /*鐩爣鏁帮細3D*/
+      table.list .col_OPD_3D__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛�3D*/
+      table.list .col_Target_amount_OTVS190__c {
+        width: 118px;
+      } /*鐩爣鏁帮細OTV-S190*/
+      table.list .col_OPD_OTVS190__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛歄TV-S190*/
+      table.list .col_Target_amount_CV190__c {
+        width: 118px;
+      } /*鐩爣鏁帮細CV-190*/
+      table.list .col_OPD_CV190__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛欳V-190*/
+      table.list .col_Target_amount_UCES3__c {
+        width: 118px;
+      } /*鐩爣鏁帮細UCES-3*/
+      table.list .col_OPD_UCES3__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛歎CES-3*/
+      table.list .col_Target_amount_USG400__c {
+        width: 118px;
+      } /*鐩爣鏁帮細USG-400*/
+      table.list .col_OPD_USG400__c {
+        width: 118px;
+      } /*OPD瀵硅薄锛歎SG-400*/
+
+      table.list .col_Hospital_Name__c {
+        width: 139px;
+      } /*鍖婚櫌鍚�*/
+      table.list .col_Department_Name__c {
+        width: 60px;
+      } /*绉戝鍚嶇О*/
+
+      table.list .col_Province_formula__c {
+        width: 78px;
+      } /*鐪�(鍏紡)*/
+      table.list .col_X2_Largescale_Project__c {
+        width: 78px;
+      } /****鏈夋棤涓ゅ勾浠ュ唴澶ч」鐩噰璐�*/
+      table.list .col_Ideal_Image_Sales__c {
+        width: 148px;
+      } /****鎷撳睍銉诲紑鎷撹鍒�/钀ラ攢鏂规(閿�鍞�)*/
+      table.list .col_Review_Sales__c {
+        width: 148px;
+      } /****杩涘睍鎯呭喌(閿�鍞�)*/
+      table.list .col_Submit_proposal_document__c {
+        width: 58px;
+      } /*鏄惁鎻愪氦鎻愭涔�*/
+      table.list .col_OPP_Flag__c {
+        width: 58px;
+      }
+      table.list .col_Sales_activity_plan__c {
+        width: 178px;
+      } /*娲诲姩璁″垝(閿�鍞�)*/
+      /*table.list .col_Link1 {width:58px;}
+table.list .col_Link2 {width:58px;}
+table.list .col_Link3 {width:58px;}
+table.list .col_Link4 {width:58px;}
+table.list .col_Link5 {width:58px;}
+table.list .col_Link6 {width:58px;}
+table.list .col_Link7 {width:58px;}
+table.list .col_Link8 {width:58px;}*/
+
+      body .pbBody table.list tr.headerRow td.colViewing {
+        /* 銉囥儠銈┿儷銉堝�ゃ�佹渶灏忓寲銈€偆銈炽兂銈掕〃绀� */
+        background-image: url("{!URLFOR($Resource.IconResizeMinus_5)}");
+        background-repeat: no-repeat;
+      }
+      body .pbBody table.list tr.headerRow td.colUnHideIcon {
+        /* 鏈�澶у寲銈€偆銈炽兂銈掕〃绀� */
+        background-image: url("{!URLFOR($Resource.IconResizePlus_5)}");
+        background-repeat: no-repeat;
+      }
+      body .pbBody table.list tr.headerRow td.col_Scroll {
+        width: 0px;
+        padding: 0px;
+        border-width: 0px;
+      }
+      body .pbBody table.list tr.dataRow td.col_Scroll {
+        width: 0px;
+        padding: 0px;
+        border-width: 0px;
+      }
+      /*.zxk{
+    margin-bottom: 3px;
+}*/
+    </style>
+    <script type="text/javascript">
+      var heightAjustment = 120;
+      var widthAjustment = 30;
+      function setChangeFlgRight(cnt) {
+        document.getElementById(
+          "allPage:allForm:oppBlock:oppTable:" + cnt + ":changeFlgRt"
+        ).value = 1;
+      }
+    </script>
+  </head>
+  <apex:form id="allForm">
+    <apex:actionFunction
+      name="saveAndSearch"
+      action="{!save}"
+      rerender="allPanel"
+      oncomplete="unblockUI();expandAll();"
+    >
+      <apex:param name="firstParam" assignTo="{!saveType}" value="" />
+    </apex:actionFunction>
+    <apex:actionFunction
+      name="saveAndSort"
+      action="{!save}"
+      rerender="allPanel"
+      oncomplete="unblockUI();expandAll();"
+    >
+      <apex:param name="firstParam" assignTo="{!saveType}" value="" />
+      <apex:param name="secondParam" assignTo="{!sortKey}" value="" />
+    </apex:actionFunction>
+    <apex:actionFunction
+      name="searchOpp"
+      action="{!chick}"
+      rerender="allPanel"
+      oncomplete="unblockUI();expandAll();"
+    />
+    <apex:actionFunction
+      name="sortTable"
+      action="{!sortTable}"
+      rerender="allPanel"
+      oncomplete="unblockUI();expandAll();"
+    >
+      <apex:param name="firstParam" assignTo="{!sortKey}" value="" />
+    </apex:actionFunction>
+    <apex:outputPanel id="allPanel">
+      <div id="zxk" style="margin-bottom: -15px">
+        <apex:pageBlock id="searchBlock" mode="maindetail">
+          <!-- tabStyle="Report"绾㈣壊   mode="maindetail"  娑堝け   mode="edit" 鍙樺ぇ -->
+          <!-- <apex:pageMessages ></apex:pageMessages> -->
+          <!--  <table style="border-bottom-width: 0px; font-size:12px;">
+                    <tr>
+                        <td width="150px">
+                            <apex:commandButton action="{!save}" value="淇濆瓨" rerender="allPanel" onclick="blockme();" oncomplete="unblockUI();expandAll();" style="height:30px;width:50px;"/>&nbsp;&nbsp;
+                            <apex:commandButton value="妫�绱�" onclick="searchOppJs_Account();return false;" style="height:30px;width:70px;"/>
+                        </td>
+                        <td width="1000px">
+                            <apex:pageMessages />
+                        </td>
+                    </tr>
+                </table> -->
+          <table style="border-bottom-width: 0px; font-size: 12px">
+            <tr>
+              <!-- <td width="150px">鍒嗙被&nbsp;<apex:selectList value="{!accType}" size="1" style="width:80px" id="accType"><apex:selectOptions value="{!accTypeOpts}" id="accTypeOptsId"/></apex:selectList></td> -->
+              <td width="250px">
+                缁忛攢鍟嗗尰闄�&nbsp;<apex:inputText
+                  value="{!accSearch}"
+                  style="width: 170px"
+                />銆�
+              </td>
+              <td></td>
+              <td width="250px">
+                &nbsp;&nbsp;&nbsp;閿�鍞媴褰�&nbsp;&nbsp;<apex:inputText
+                  value="{!aooSearch}"
+                  style="width: 150px"
+                />銆�
+              </td>
+              <td width="230px">
+                &nbsp;&nbsp;鏄剧ず&nbsp;&nbsp;
+                <apex:selectList
+                  value="{!limits}"
+                  size="1"
+                  onchange="searchOppJs_Account();return false;"
+                >
+                  <apex:selectOptions value="{!limitOpts}" /></apex:selectList
+                >銆�鏉℃暟鎹�
+              </td>
+              <!-- <td width="10px"></td> -->
+              <td width="70px">
+                <a
+                  href="#"
+                  onclick="expandAll();return false;"
+                  style="text-decoration: underline"
+                  >鍏ㄩ儴灞曞紑</a
+                >
+              </td>
+              <!-- text-decoration: underline; -->
+            </tr>
+          </table>
+          <table style="border-bottom-width: 0px; font-size: 12px">
+            <tr>
+              <td width="200px">
+                <font>鏁�&nbsp;鎹�&nbsp;瀛�&nbsp;娈�&nbsp;</font>&nbsp;
+                <apex:selectList
+                  value="{!numtext1}"
+                  size="1"
+                  style="width: 110px"
+                  ><apex:selectOptions value="{!textOpts}"
+                /></apex:selectList>
+              </td>
+              <td width="130px">
+                <apex:selectList
+                  value="{!numtext2}"
+                  size="1"
+                  style="width: 110px"
+                  ><apex:selectOptions value="{!equalOpts}"
+                /></apex:selectList>
+              </td>
+              <td width="200px">
+                <apex:inputText style="width: 150px" value="{!numtext}" />
+              </td>
+              <td width="150px">
+                <apex:commandButton
+                  value="妫�绱�"
+                  onclick="searchOppJs_Account();return false;"
+                  style="height: 30px; width: 50px"
+                />&nbsp;&nbsp;&nbsp;&nbsp;
+                <apex:commandButton
+                  action="{!save}"
+                  value="淇濆瓨"
+                  rerender="allPanel"
+                  onclick="blockme();"
+                  oncomplete="unblockUI();expandAll();"
+                  style="height: 30px; width: 50px"
+                />
+              </td>
+              <td width="500px">
+                <apex:pageMessages />
+              </td>
+            </tr>
+            <!-- <tr>
+                        <td width="110px">
+                            <font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;鏃�&nbsp;鏈�&nbsp;</font>&nbsp;
+                            <apex:selectList value="{!timetext1}" size="1" style="width:110px"><apex:selectOptions value="{!timeOpts}"/></apex:selectList>
+                      </td>
+                         <td>
+                               浠�<apex:inputField style="width:150px" value="{!tmpAO.MaxActivityDate__c}"/> -->
+            <!-- <apex:selectList value="{!timetext2}" size="1" style="width:110px"><apex:selectOptions value="{!timeequalOpts}"/></apex:selectList> -->
+            <!--  </td>
+                        <td>
+                            鍒�<apex:inputField style="width:150px" value="{!tmpBO.MaxActivityDate__c}"/>
+                        </td>
+                    </tr> -->
+          </table>
+        </apex:pageBlock>
+      </div>
+      <apex:pageBlock id="oppBlock">
+        <!-- <apex:pageblocksection columns="1" id="oppSection"> -->
+        <apex:outputPanel>
+          <apex:inputHidden id="oppCount" value="{!oppCount}" />
+
+          <div id="out_Div_L">
+            <table
+              class="list"
+              style="
+                border-bottom-width: 0px;
+                width: 1100px;
+                font-size: 11px;
+                border-spacing: 0;
+              "
+              border=""
+              id="tableHeader"
+            >
+              <tr class="dataRow" height="1px">
+                <apex:variable value="{!0}" var="cnt" />
+                <apex:repeat value="{!titleRight}" var="t">
+                  <td class="col_{!columnRightCss[cnt]}"></td>
+                  <apex:variable value="{!cnt + 1}" var="cnt" />
+                </apex:repeat>
+                <td id="cell_Scroll" class="col_Scroll"></td>
+              </tr>
+              <tr class="headerRow" height="30px">
+                <apex:variable value="{!0}" var="cnt" />
+                <apex:repeat value="{!titleRight}" var="t">
+                  <td class="col_{!columnRightCss[cnt]}">
+                    <a
+                      href="#"
+                      onclick="sortTableJs_Account1('{!cnt + titleLeft.size}');return false;"
+                      style="text-decoration: underline"
+                      ><apex:outputText value="{!t}" /></a
+                    >{!sortOrder[cnt + titleLeft.size]}
+                  </td>
+                  <apex:variable value="{!cnt + 1}" var="cnt" />
+                </apex:repeat>
+                <!-- <td id="cell_Scroll" class="col_Scroll"></td> -->
+              </tr>
+            </table>
+          </div>
+          <div id="out_Div">
+            <table
+              class="list"
+              style="
+                border-bottom-width: 0px;
+                width: 2000px;
+                font-size: 11px;
+                border-spacing: 0;
+              "
+              border=""
+              id="tableHeader_L"
+            >
+              <tr class="dataRow" height="1px">
+                <apex:variable value="{!0}" var="cnt" />
+                <apex:repeat value="{!titleLeft}" var="t">
+                  <td class="col_{!columnLeftCss[cnt]}"></td>
+                  <apex:variable value="{!cnt + 1}" var="cnt" />
+                </apex:repeat>
+              </tr>
+              <tr class="headerRow" height="30px">
+                <apex:variable value="{!0}" var="cnt" />
+                <apex:repeat value="{!titleLeft}" var="t">
+                  <td class="col_{!columnLeftCss[cnt]}">
+                    <a
+                      href="#"
+                      onclick="sortTableJs_Account1('{!cnt}');return false;"
+                      style="text-decoration: underline"
+                      ><apex:outputText value="{!t}" /></a
+                    >{!sortOrder[cnt]}
+                  </td>
+                  <apex:variable value="{!cnt + 1}" var="cnt" />
+                </apex:repeat>
+                <!-- <td id="cell_Scroll" class="col_Scroll"></td> -->
+              </tr>
+            </table>
+          </div>
+          <!-- out_Div -->
+          <div style="clear: both; height: 0px"></div>
+          <div id="in_Div_L">
+            <table
+              class="list"
+              style="
+                border-bottom-width: 0px;
+                width: 1100px;
+                font-size: 11px;
+                border-spacing: 0;
+              "
+              border=""
+              id="tableData"
+            >
+              <apex:variable value="{!1}" var="cnt" />
+              <apex:repeat value="{!oppRecords}" var="or" id="oppTable">
+                <tr
+                  class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}"
+                  onmouseover="if (window.hiOn){hiOn(this);} "
+                  onmouseout="if (window.hiOff){hiOff(this);} "
+                  onblur="if (window.hiOff){hiOff(this);}"
+                  onfocus="if (window.hiOn){hiOn(this);}"
+                >
+                  <apex:variable value="{!0}" var="cnt_3" />
+                  <apex:repeat value="{!columnsRightApi}" var="c">
+                    <td
+                      class="dataCellBorder1 col_{!columnRightCss[cnt_3]} {!cnt}_col_{!columnRightCss[cnt_3]}"
+                    >
+                      <!-- vivek start  -->
+                      <!-- <apex:outputLink rendered="{!c[0]=='Name'}" value="/{!or.opp.Id}" target="LINK_{!or.opp.Id}"><apex:outputField rendered="{!c[0]=='Name'}" value="{!or.opp[c[0]]}" /></apex:outputLink> -->
+                      <!-- vivek end -->
+                      <!-- <apex:outputField id="q1111111111"  rendered="{!(c.size==1 && columnRightRW[c[0]]=='r' && or.opp.Id <> null && c[0] <> 'Name' && (c[0] <> 'Opp_Changed_Field__c' ||(c[0] == 'Opp_Changed_Field__c' &&
+                                     or.opp.Opp_Changed_Field__c != '璇环闃舵鍙戠敓浜嗗彉鍖�' &&or.opp.Opp_Changed_Field__c != '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' &&or.opp.Opp_Changed_Field__c != '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' && or.opp.Opp_Changed_Field__c != '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�')))}" value="{!or.opp[c[0]]}" /> && or.opp.Oly_Inquiry_Status1__c <> null AgcOpp -->
+                      <apex:outputField
+                        rendered="{!c[0] == 'Change_To_Opportunity_T__c' }"
+                        value="{!or.opp[c[0]]}"
+                      />
+
+                      <apex:outputField
+                        rendered="{!columnRightRW[c[0]]=='r' && c[0] <> 'Change_To_Opportunity_T__c' && c[0] <> 'Strategic_department_Class_Name__c' }"
+                        value="{!or.opp[c[0]]}"
+                      />
+                      <!-- <apex:outputField id="q1111111111"  rendered="{!( columnRightRW[c[0]]=='r'  && c[0] <> 'Name' && (c[0] <> 'StageName__c' ||(c[0] == 'StageName__c' &&
+                                     or.opp.Oly_Inquiry_Stage__c != '璇环闃舵鍙戠敓浜嗗彉鍖�' &&or.opp.Oly_Inquiry_Stage__c != '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' &&or.opp.Oly_Inquiry_Stage__c != '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' && or.opp.Oly_Inquiry_Stage__c != '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�')))}" value="{!or.opp[c[0]]}" /> -->
+                      <!-- <div style ="color:red"> -->
+                      <!--  <apex:outputField id="q2222222" rendered="{!(c.size==1 && columnRightRW[c[0]]=='r' && or.opp.Id <> null && c[0] <> 'Name' && c[0] == 'Opp_Changed_Field__c' && ( 
+                                     or.opp.Opp_Changed_Field__c == '璇环闃舵鍙戠敓浜嗗彉鍖�' || or.opp.Opp_Changed_Field__c == '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' || or.opp.Opp_Changed_Field__c == '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' || or.opp.Opp_Changed_Field__c == '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�'))}" value="{!or.opp[c[0]]}" /> -->
+                      <!--   <apex:outputField id="q2222222" rendered="{!(c.size==1 && columnRightRW[c[0]]=='r'  && c[0] <> 'Name' && c[0] == 'StageName__c' && ( 
+                                     or.opp.Oly_Inquiry_Stage__c == '璇环闃舵鍙戠敓浜嗗彉鍖�' || or.opp.Oly_Inquiry_Stage__c == '棰勬祴绛剧害鏃ュ彂鐢熶簡鍙樺寲' || or.opp.Oly_Inquiry_Stage__c == '鍖婚櫌鍚堝悓閲戦鍙戠敓浜嗗彉鍖�' || or.opp.Oly_Inquiry_Stage__c == '璁㈣揣閲戦鍙戠敓浜嗗彉鍖�'))}" value="{!or.opp[c[0]]}" />
+
+                                      </div> -->
+                      <!-- <apex:inputField rendered="{!(c.size==1 && columnRightRW[c[0]]=='w' && or.opp.Id <> null && c[0] <> 'Name')}" value="{!or.opp[c[0]]}" onchange="setChangeFlgRight('{!or.lineNo}')"/>
+                                    <apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='wm' && c[0] <> 'Name' && or.opp.Id <> null)}" layout="none">
+                                      <div class="requiredInput_r">
+                                        <div class="requiredBlock_r"></div>
+                                          <apex:inputField value="{!or.Opp[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/>
+                                      </div>
+                                    </apex:outputPanel> -->
+                      <apex:outputField
+                        rendered="{!c[0] == 'Strategic_department_Class_Name__c'}"
+                        value="{!or.opp[c[0]]}"
+                      />
+
+                      <apex:inputField
+                        rendered="{!( columnRightRW[c[0]]=='w' && c[0] <> 'Strategic_department_Class_Name__c' && c[0] <> 'Change_To_Opportunity_T__c' && c[0] <> 'Name')}"
+                        value="{!or.opp[c[0]]}"
+                        onchange="setChangeFlgRight('{!or.lineNo}')"
+                      />
+                      <apex:outputPanel
+                        rendered="{!( columnRightRW[c[0]]=='wm' && c[0] <> 'Change_To_Opportunity_T__c' && c[0] <> 'Name' )}"
+                        layout="none"
+                      >
+                        <div class="requiredInput_r">
+                          <div class="requiredBlock_r"></div>
+                          <apex:inputField
+                            value="{!or.Opp[c[0]]}"
+                            onchange="setChangeFlg('{!or.lineNo}')"
+                          />
+                        </div>
+                      </apex:outputPanel>
+                      <apex:variable value="{!cnt_3 + 1}" var="cnt_3" />
+                    </td>
+                  </apex:repeat>
+                  <td id="cell_Scroll" class="col_Scroll">
+                    <apex:inputHidden value="{!or.changeFlg}" id="changeFlg" />
+                    <apex:inputHidden
+                      value="{!or.changeFlgRt}"
+                      id="changeFlgRt"
+                    />
+                    <script type="text/javascript">
+                      if ("{!or.canEdit}" == "false") {
+                          var right = j$("#tableData").find("tr").eq({!cnt-1});
+                          var rightline = j$(right).find("td");
+                          for (var i=0; i<rightline.length; i++) {
+                              j$(rightline[i]).find("input").each(function(){
+                                  j$(this).attr("disabled",true);
+                              });
+                              j$(rightline[i]).find("a").each(function(){
+                                  j$(this).attr("href","#");
+                              });
+                          }
+                      }
+                      if ("{!or.hasError}" == "true") {
+                          var left = j$("#tableData_L").find("tr").eq({!cnt-1});
+                          var leftFirst = j$(left).find("td").eq(1);
+                          j$(leftFirst).css("background-color", "gray");
+                      }
+                      if ("{!or.hasFieldError}" == "true") {
+                          var left = j$("#tableData_L").find("tr").eq({!cnt-1});
+                          var leftFirst = j$(left).find("td").eq(1);
+                          j$(leftFirst).css("background-color", "red");
+                      }
+                    </script>
+                  </td>
+                </tr>
+                <apex:variable value="{!cnt + 1}" var="cnt" />
+              </apex:repeat>
+            </table>
+          </div>
+          <div id="in_Div">
+            <table
+              class="list"
+              style="
+                border-bottom-width: 0px;
+                width: 2000px;
+                font-size: 11px;
+                border-spacing: 0;
+              "
+              border=""
+              id="tableData_L"
+            >
+              <apex:variable value="{!1}" var="cnt_2" />
+              <apex:repeat value="{!oppRecords}" var="or" id="oppTable_L">
+                <tr
+                  class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}"
+                  onmouseover="if (window.hiOn){hiOn(this);} "
+                  onmouseout="if (window.hiOff){hiOff(this);} "
+                  onblur="if (window.hiOff){hiOff(this);}"
+                  onfocus="if (window.hiOn){hiOn(this);}"
+                >
+                  <apex:variable value="{!0}" var="cnt_2" />
+                  <apex:repeat value="{!columnsLeftApi}" var="c">
+                    <td class="dataCellBorder1 col_{!columnLeftCss[cnt_2]}">
+                      <!-- vivek start -->
+
+                      <apex:outputLink
+                        target="_blank"
+                        rendered="{!c[0]=='Name'}"
+                        value="/{!or.AgcOpp.Id}"
+                      >
+                        <apex:outputField
+                          rendered="{!c[0]=='Name'}"
+                          value="{!or.AgcOpp[c[0]]}"
+                        />
+                      </apex:outputLink>
+
+                      <apex:outputPanel rendered="{!or.ifLock}">
+                        <apex:outputField
+                          rendered="{!c[0]!='Name'}"
+                          value="{!or.AgcOpp[c[0]]}"
+                        >
+                        </apex:outputField>
+                      </apex:outputPanel>
+                      <!-- 閿�鍞媴褰� -->
+                      <apex:outputPanel rendered="{!or.ifLock == false}">
+                        <!-- <apex:outputLink target="_blank" rendered="{!c[0]=='Agency_Person__c'}" value="/{!or.AgcOpp[c[0]]}" > -->
+                        <!-- <apex:outputText value="{!or.AgcOpp.Agency_Person__r.Name }" /> -->
+                        <!-- <apex:outputText rendered="{!c[0]=='Agency_PersonName__c'}" value="{!or.AgcOpp.Agency_PersonName__c }" /> -->
+                        <!-- </apex:outputLink> -->
+                        <!-- 缁忛攢鍟� -->
+                        <apex:outputLink
+                          target="_blank"
+                          rendered="{!c[0]=='Agency__c'}"
+                          value="/{!or.AgcOpp[c[0]]}"
+                        >
+                          <apex:outputText
+                            value="{!or.AgcOpp.Agency__r.Name }"
+                          />
+                        </apex:outputLink>
+                        <!-- OCSM璇环 -->
+                        <!-- <apex:outputLink target="_blank" rendered="{!c[0]=='Change_To_Opportunity__c'}" value="/{!or.AgcOpp[c[0]]}" >
+                                        <apex:outputText value="{!or.AgcOpp.Agency__r.Name }" />
+                                        </apex:outputLink> -->
+                        <!-- 蹇呭~瀛楁 -->
+                        <!-- <apex:outputField rendered="{!(c[0]<>'Name' && c[0]<>'Agency_Hospital__c' && c[0]<>'Product_Category1__c' && c[0]<>'Product_Category2__c' && c[0]<>'Product_Category3__c' && c[0]<>'Agency_Person__c' && c[0]<>'Agency__c' && c[0]<>'Change_To_Opportunity__c' && columnLeftRW[c[0]]=='wm')}" value="{!or.AgcOpp[c[0]] }"/> -->
+                        <apex:inputField
+                          rendered="{!(c[0]<>'Name' && c[0]<>'Product_Category1__c' && c[0]<>'Product_Category2__c' && c[0]<>'Product_Category3__c' && c[0]<>'Agency_Person__c' && c[0]<>'Agency__c' && c[0]<>'Change_To_Opportunity__c' && columnLeftRW[c[0]]=='wm')}"
+                          value="{!or.AgcOpp[c[0]] }"
+                          onchange="setChangeFlg('{!or.lineNo}')"
+                        />
+                        <!-- vivek end -->
+
+                        <apex:outputField
+                          rendered="{!(c[0]<>'Name' && c[0]<>'Product_Category1__c' && c[0]<>'Product_Category2__c' && c[0]<>'Product_Category3__c' && c[0]<>'Agency_Person__c' && c[0]<>'Agency__c' && c[0]<>'Change_To_Opportunity__c' && columnLeftRW[c[0]]=='r')}"
+                          value="{!or.AgcOpp[c[0]] }"
+                        />
+                        <!-- <apex:outputField rendered="{!(c[0]<>'Name' && columnLeftRW[c[0]]<>'w')}" value="{!or.AgcOpp[c[0]] }"/> -->
+                        <!-- 鍙紪杈戠殑瀛楁 -->
+                        <apex:inputField
+                          value="{!or.AgcOpp[c[0]]}"
+                          rendered="{!columnLeftRW[c[0]]=='w'}"
+                          onchange="setChangeFlg('{!or.lineNo}')"
+                        />
+                      </apex:outputPanel>
+                    </td>
+                    <apex:variable value="{!cnt_2 + 1}" var="cnt_2" />
+                  </apex:repeat>
+                </tr>
+                <apex:variable value="{!cnt + 1}" var="cnt" />
+              </apex:repeat>
+            </table>
+          </div>
+          <!-- /in_Div -->
         </apex:outputPanel>
-    </apex:form>
-</apex:page>
\ No newline at end of file
+      </apex:pageBlock>
+      <script type="text/javascript">
+        j$(function () {
+          var tableWidth = 0;
+          j$("body .pbBody table#tableHeader tr.headerRow td").each(
+            function () {
+              var colClass = getColClassName(this);
+              if (colClass != "col_Scroll") {
+                var headerCol = j$(
+                  "body .pbBody table.list tr.headerRow td." + colClass
+                );
+                tableWidth += headerCol.width();
+              }
+            }
+          );
+          // j$('table#tableData').css('width', (tableWidth + 2) + 'px');
+          // j$('table#tableHeader').css('width', (tableWidth + 2) + 'px');
+
+          // list 銇� headerRow 銇� td銇� toggleWidth() 銈掕拷鍔�
+          bindTdToggleWidth();
+        });
+        var elements = document.getElementsByTagName("select");
+        for (i = 0; i < elements.length; i++) {
+          var id = elements[i].id;
+          if (
+            id.length > 5 &&
+            id.substring(id.length - 5, id.length) == "mlktp"
+          ) {
+            elements[i].style.display = "none";
+          }
+        }
+        var tbl_l = document.getElementById("tableData_L");
+        var input_l = tbl_l.getElementsByTagName("input");
+        for (i = 0; i < input_l.length; i++) {
+          var id = input_l[i].id + "_lkid";
+          if (document.getElementById(id) != null) {
+            input_l[i].style.width = "75%";
+          }
+        }
+        var tbl = document.getElementById("tableData");
+        var input = tbl.getElementsByTagName("input");
+        for (i = 0; i < input.length; i++) {
+          var id = input[i].id + "_lkid";
+          if (document.getElementById(id) != null) {
+            input[i].style.width = "75%";
+          }
+        }
+      </script>
+    </apex:outputPanel>
+  </apex:form>
+</apex:page>
diff --git a/force-app/main/default/pages/DealerInquiryModifyState.page-meta.xml b/force-app/main/default/pages/DealerInquiryModifyState.page-meta.xml
index ba744e5..5831e52 100644
--- a/force-app/main/default/pages/DealerInquiryModifyState.page-meta.xml
+++ b/force-app/main/default/pages/DealerInquiryModifyState.page-meta.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" ?>
 <ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
-    <apiVersion>39.0</apiVersion>
+    <apiVersion>35.0</apiVersion>
     <availableInTouch>true</availableInTouch>
     <confirmationTokenRequired>false</confirmationTokenRequired>
     <label>DealerInquiryModifyState</label>
diff --git a/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger b/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger
index 8529340..ae0c34a 100644
--- a/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger
+++ b/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger
@@ -1,76 +1,97 @@
-trigger ConsumableOrderDetail2Trigger on Consumable_order_details2__c (after insert, after update, after delete) {
-    Set<String> orderSet = new Set<String>();
-    
-    if (StaticParameter.EscapeOrderDetail2Trigger) {
-        return ;
+trigger ConsumableOrderDetail2Trigger on Consumable_order_details2__c(
+  after insert,
+  after update,
+  after delete
+) {
+  Set<String> orderSet = new Set<String>();
+
+  if (StaticParameter.EscapeOrderDetail2Trigger) {
+    return;
+  }
+  if (Trigger.isInsert) {
+    for (Consumable_order_details2__c local : Trigger.New) {
+      if (
+        local.Consumable_order_minor__c != null &&
+        local.Dealer_Returned__c == false
+      )
+        orderSet.add(local.Consumable_order_minor__c);
     }
-    if (trigger.isInsert){
-        for (Consumable_order_details2__c local : Trigger.New) {         
-            if (local.Consumable_order_minor__c!=null && 
-                local.Dealer_Returned__c == false)
-            orderSet.add(local.Consumable_order_minor__c);
-        }
+  }
+
+  if (Trigger.isUpdate) {
+    for (Consumable_order_details2__c local : Trigger.New) {
+      //if (local.Consumable_order_minor__c!=null &&
+      //    local.Dealer_Arrive__c != Trigger.oldMap.get(local.Id).get('Dealer_Arrive__c'))
+      if (local.Consumable_order_minor__c != null)
+        orderSet.add(local.Consumable_order_minor__c);
+    }
+  }
+
+  if (Trigger.isDelete) {
+    for (Consumable_order_details2__c local : Trigger.old) {
+      if (local.Consumable_order_minor__c != null)
+        orderSet.add(local.Consumable_order_minor__c);
+    }
+  }
+
+  if (orderSet.size() > 0) {
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲 SQL start by 寮犵帀灞�
+    list<Consumable_order_details2__c> allresults = [
+      SELECT
+        Consumable_order_minor__c,
+        Deliver_date__c,
+        Dealer_Returned__c,
+        Dealer_Arrive__c,
+        RemoveBox_No__c,
+        Cancellation_Date__c
+      FROM Consumable_order_details2__c
+      WHERE Consumable_order_minor__c IN :orderSet
+    ];
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  end by 寮犵帀灞�
+
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� start by 寮犵帀灞�
+    map<string, Integer> orderSetResults = new Map<string, Integer>();
+    for (Consumable_order_details2__c results1 : allresults) {
+      if (
+        results1.Dealer_Arrive__c == false ||
+        results1.Dealer_Returned__c == true ||
+        (results1.RemoveBox_No__c != null &&
+        results1.RemoveBox_No__c != 1)
+      ) {
+        continue;
+      }
+      string Consumable_order_minor_str = String.valueOf(
+        results1.Consumable_order_minor__c
+      );
+
+      if (orderSetResults.containsKey(Consumable_order_minor_str)) {
+        orderSetResults.put(
+          Consumable_order_minor_str,
+          orderSetResults.get(Consumable_order_minor_str) + 1
+        );
+      } else {
+        orderSetResults.put(Consumable_order_minor_str, 1);
+      }
     }
 
-    if (trigger.isUpdate){
-        for (Consumable_order_details2__c local : Trigger.New) {         
-            //if (local.Consumable_order_minor__c!=null &&
-            //    local.Dealer_Arrive__c != Trigger.oldMap.get(local.Id).get('Dealer_Arrive__c'))
-            if (local.Consumable_order_minor__c!=null) orderSet.add(local.Consumable_order_minor__c);
+    List<Consumable_Order__c> consumableOrderlist = new List<Consumable_Order__c>();
+    for (String strOrder : orderSet) {
+      Integer cnt = 0;
+      for (string key : orderSetResults.keySet()) {
+        if (key.equals(strOrder)) {
+          cnt = orderSetResults.get(key);
+          break;
         }
+      }
+
+      Consumable_Order__c consumableOrder = new Consumable_Order__c();
+      consumableOrder.Id = strOrder;
+      consumableOrder.OrderNumber_arrived__c = cnt;
+      consumableOrderlist.add(consumableOrder);
     }
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� end end by 寮犵帀灞�
 
-    if (trigger.isDelete){
-        for (Consumable_order_details2__c local : Trigger.old) {
-            if (local.Consumable_order_minor__c!=null) orderSet.add(local.Consumable_order_minor__c);
-        }
-    }
-
-        
-    if (orderSet.size()>0){
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲 SQL start by 寮犵帀灞�
-        list<Consumable_order_details2__c> allresults = 
-        [SELECT Consumable_order_minor__c, Deliver_date__c, 
-            Dealer_Returned__c, Dealer_Arrive__c, RemoveBox_No__c,Cancellation_Date__c
-            FROM Consumable_order_details2__c
-             WHERE Consumable_order_minor__c in :orderSet ];
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  end by 寮犵帀灞�
-        
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� start by 寮犵帀灞�
-        map<string,Integer> orderSetResults =  new map<string,Integer>();
-        for(Consumable_order_details2__c results1 : allresults){
-            if(results1.Dealer_Arrive__c == false || results1.Dealer_Returned__c== true
-                || (results1.RemoveBox_No__c !=null &&  results1.RemoveBox_No__c !=1)){
-                continue;
-            }
-            string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
-
-            if(orderSetResults.containsKey(Consumable_order_minor_str)){
-                orderSetResults.put(Consumable_order_minor_str,
-                    orderSetResults.get(Consumable_order_minor_str)+1);
-            }else{
-                orderSetResults.put(Consumable_order_minor_str,1);
-            }
-        }
-
-        List<Consumable_Order__c> consumableOrderlist = new List<Consumable_Order__c>();
-        for (String strOrder:orderSet){
-            Integer cnt =0;
-            for (string key : orderSetResults.keySet()) {
-                if(key.equals(strOrder)){
-                    cnt = orderSetResults.get(key);
-                    break;
-                }
-            }
-
-            Consumable_Order__c consumableOrder = new Consumable_Order__c();
-            consumableOrder.Id = strOrder;
-            consumableOrder.OrderNumber_arrived__c = cnt;
-            consumableOrderlist.add(consumableOrder);
-        }
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� end end by 寮犵帀灞�
-        
-        /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
+    /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
         AggregateResult[] results = [SELECT Consumable_order_minor__c,count(Id) cnt 
                                      FROM Consumable_order_details2__c 
                                      WHERE Consumable_order_minor__c in :orderSet 
@@ -95,111 +116,130 @@
         }
         2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� end by 寮犵帀灞�
         */
-        if (consumableOrderlist.size() > 0){
-           update consumableOrderlist;
+    if (consumableOrderlist.size() > 0) {
+      update consumableOrderlist;
+    }
+
+    //鏇存柊娑堣�楀搧璁㈠崟鐨勫彂璐ф棩鏈�
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  start by 寮犵帀灞�
+    Set<string> resultsKeySet = new Set<String>();
+    map<string, Date> DeliverdateResults = new Map<string, Date>(); //鏈�鏂板彂璐ф椂闂�
+    map<string, Date> DeliverdateminResults = new Map<string, Date>(); //鏈�鏃╁彂璐ф椂闂�
+    for (Consumable_order_details2__c results1 : allresults) {
+      if (
+        results1.Dealer_Arrive__c == true ||
+        results1.Dealer_Returned__c == true
+      ) {
+        continue;
+      }
+      string Consumable_order_minor_str = String.valueOf(
+        results1.Consumable_order_minor__c
+      );
+      if (DeliverdateResults.containsKey(Consumable_order_minor_str)) {
+        if (
+          DeliverdateResults.get(Consumable_order_minor_str) <
+          results1.Deliver_date__c
+        ) {
+          DeliverdateResults.put(
+            Consumable_order_minor_str,
+            results1.Deliver_date__c
+          );
+          resultsKeySet.add(Consumable_order_minor_str);
         }
-
-        //鏇存柊娑堣�楀搧璁㈠崟鐨勫彂璐ф棩鏈�
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  start by 寮犵帀灞�
-        Set<string> resultsKeySet =  new Set<String>();
-        map<string,Date> DeliverdateResults =  new map<string,Date>();//鏈�鏂板彂璐ф椂闂�
-        map<string,Date> DeliverdateminResults =  new map<string,Date>();//鏈�鏃╁彂璐ф椂闂�
-        for(Consumable_order_details2__c results1 : allresults){
-            if(results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c== true){
-                continue;
-            }
-            string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
-            if(DeliverdateResults.containsKey(Consumable_order_minor_str)){
-                if(DeliverdateResults.get(Consumable_order_minor_str)
-                    < results1.Deliver_date__c
-                    ){
-                    DeliverdateResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
-                    resultsKeySet.add(Consumable_order_minor_str);
-                }
-            }else{
-                DeliverdateResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
-                resultsKeySet.add(Consumable_order_minor_str);
-            }
-            //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part1 start
-            if(DeliverdateminResults.containsKey(Consumable_order_minor_str)){
-                if(DeliverdateminResults.get(Consumable_order_minor_str)
-                    > results1.Deliver_date__c
-                    ){
-                    DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
-                    resultsKeySet.add(Consumable_order_minor_str);
-                }
-            }else{
-                DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
-                resultsKeySet.add(Consumable_order_minor_str);
-            }
-            //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part1 end
+      } else {
+        DeliverdateResults.put(
+          Consumable_order_minor_str,
+          results1.Deliver_date__c
+        );
+        resultsKeySet.add(Consumable_order_minor_str);
+      }
+      //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part1 start
+      if (DeliverdateminResults.containsKey(Consumable_order_minor_str)) {
+        if (
+          DeliverdateminResults.get(Consumable_order_minor_str) >
+          results1.Deliver_date__c
+        ) {
+          DeliverdateminResults.put(
+            Consumable_order_minor_str,
+            results1.Deliver_date__c
+          );
+          resultsKeySet.add(Consumable_order_minor_str);
         }
-        
-        //涓や釜DeliverdateResults.keySet()锛孌eliverdateminResults.keySet() 鍚堝苟浣滀负涓�涓狶ist 锛岄亶鍘哃ist
-        //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part2 start
-        consumableOrderlist = new List<Consumable_Order__c>();
-        for(string temp : resultsKeySet){
-            Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
-            consumableOrder1.Id = temp;
-            if(DeliverdateResults.get(temp)!=null){
-                consumableOrder1.Shipment_Date__c = DeliverdateResults.get(temp);
-            }
-            if(DeliverdateminResults.get(temp)!=null){
-                consumableOrder1.First_Delivery__c = DeliverdateResults.get(temp);
-            }
-            consumableOrderlist.add(consumableOrder1);
-        }
-        
-        //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part2 end
-        // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>();//鏈�鏃╁彂璐ф椂闂�
-        // for (string key : DeliverdateminResults.keySet()) {
-        //    if(DeliverdateminResults.get(key)!=null){
-        //         Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
-        //         consumableOrder1.Id = key;
-        //         consumableOrder1.First_Delivery__c = DeliverdateResults.get(key);
-        //         consumableOrderminlist.add(consumableOrder1);
-        //     }
-        // }
-        
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  end by 寮犵帀灞�
-        
-        //鑾峰彇鏃╁彂璐ф棩鏈� start
-        // system.debug('DeliverdateResults==============' + DeliverdateResults);
-        // system.debug('璧板埌鏈�鏃╁彂璐ф棩鏈�');
-        // map<string,Date> DeliverdateminResults =  new map<string,Date>();
-        // for(Consumable_order_details2__c results1 : allresults){
-        //     if(results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c== true){
-        //         continue;
-        //     }
-        //     string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
-        //     if(DeliverdateminResults.containsKey(Consumable_order_minor_str)){
-        //         if(DeliverdateminResults.get(Consumable_order_minor_str)
-        //             > results1.Deliver_date__c
-        //             ){
-        //                 DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
-        //         }
+      } else {
+        DeliverdateminResults.put(
+          Consumable_order_minor_str,
+          results1.Deliver_date__c
+        );
+        resultsKeySet.add(Consumable_order_minor_str);
+      }
+      //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part1 end
+    }
 
-        //     }else{
-        //         DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
-        //     }
-        // }
-        // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>();
-        // for (string key : DeliverdateminResults.keySet()) {
-        //    if(DeliverdateminResults.get(key)!=null){
-        //         Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
-        //         consumableOrder1.Id = key;
-        //         consumableOrder1.First_Delivery__c = DeliverdateResults.get(key);
-        //         consumableOrderminlist.add(consumableOrder1);
-        //     }
-        // }
+    //涓や釜DeliverdateResults.keySet()锛孌eliverdateminResults.keySet() 鍚堝苟浣滀负涓�涓狶ist 锛岄亶鍘哃ist
+    //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part2 start
+    consumableOrderlist = new List<Consumable_Order__c>();
+    for (string temp : resultsKeySet) {
+      Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
+      consumableOrder1.Id = temp;
+      if (DeliverdateResults.get(temp) != null) {
+        consumableOrder1.Shipment_Date__c = DeliverdateResults.get(temp);
+      }
+      if (DeliverdateminResults.get(temp) != null) {
+        consumableOrder1.First_Delivery__c = DeliverdateResults.get(temp);
+      }
+      consumableOrderlist.add(consumableOrder1);
+    }
 
-        // if(consumableOrderminlist.size() > 0){
-        //     update consumableOrderminlist; 
-        // }
-        // system.debug('DeliverdateResults==============' + DeliverdateResults);
-        // //鑾峰彇鏈�鏃╁彂璐ф棩鏈� end
+    //鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part2 end
+    // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>();//鏈�鏃╁彂璐ф椂闂�
+    // for (string key : DeliverdateminResults.keySet()) {
+    //    if(DeliverdateminResults.get(key)!=null){
+    //         Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
+    //         consumableOrder1.Id = key;
+    //         consumableOrder1.First_Delivery__c = DeliverdateResults.get(key);
+    //         consumableOrderminlist.add(consumableOrder1);
+    //     }
+    // }
 
-        /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  end by 寮犵帀灞�
+
+    //鑾峰彇鏃╁彂璐ф棩鏈� start
+    // system.debug('DeliverdateResults==============' + DeliverdateResults);
+    // system.debug('璧板埌鏈�鏃╁彂璐ф棩鏈�');
+    // map<string,Date> DeliverdateminResults =  new map<string,Date>();
+    // for(Consumable_order_details2__c results1 : allresults){
+    //     if(results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c== true){
+    //         continue;
+    //     }
+    //     string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
+    //     if(DeliverdateminResults.containsKey(Consumable_order_minor_str)){
+    //         if(DeliverdateminResults.get(Consumable_order_minor_str)
+    //             > results1.Deliver_date__c
+    //             ){
+    //                 DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
+    //         }
+
+    //     }else{
+    //         DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
+    //     }
+    // }
+    // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>();
+    // for (string key : DeliverdateminResults.keySet()) {
+    //    if(DeliverdateminResults.get(key)!=null){
+    //         Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
+    //         consumableOrder1.Id = key;
+    //         consumableOrder1.First_Delivery__c = DeliverdateResults.get(key);
+    //         consumableOrderminlist.add(consumableOrder1);
+    //     }
+    // }
+
+    // if(consumableOrderminlist.size() > 0){
+    //     update consumableOrderminlist;
+    // }
+    // system.debug('DeliverdateResults==============' + DeliverdateResults);
+    // //鑾峰彇鏈�鏃╁彂璐ф棩鏈� end
+
+    /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
         AggregateResult[] results1 = [SELECT Consumable_order_minor__c,max(Deliver_date__c) Deliver_date__c
                                       FROM Consumable_order_details2__c 
                                       WHERE Consumable_order_minor__c in :orderSet 
@@ -217,46 +257,55 @@
             }
         }
         2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� end by 寮犵帀灞� */
-        if (consumableOrderlist.size() > 0){
-           update consumableOrderlist;
-        }
-        
-        //鏇存柊寰呯‘璁ゆ敹璐ф暟閲�
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  start by 寮犵帀灞�
-        map<string,Integer> resultsMap2 =  new map<string,Integer>();
-        for(Consumable_order_details2__c results1 : allresults){
-            if(results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c== true ||
-                results1.Cancellation_Date__c!=null){
-                continue;
-            }
-            string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
-            if(resultsMap2.containsKey(Consumable_order_minor_str)){
-                    resultsMap2.put(Consumable_order_minor_str,
-                        resultsMap2.get(Consumable_order_minor_str)+1);
-            }else{
-                resultsMap2.put(Consumable_order_minor_str,1);
-            }
-        }
-        consumableOrderlist = new List<Consumable_Order__c>();
-        for (String strOrder:orderSet){
-            Integer cnt =0;
-            for (string key : resultsMap2.keySet()) {
-                if(key.equals(strOrder)){
-                    cnt = resultsMap2.get(key);
-                    break;
-                }
-            }
+    if (consumableOrderlist.size() > 0) {
+      update consumableOrderlist;
+    }
 
-            Consumable_Order__c consumableOrder2 = new Consumable_Order__c();
-            consumableOrder2.Id = strOrder;
-            consumableOrder2.Delivery_detail_count__c = cnt;
-            if(consumableOrder2.Delivery_detail_count__c == 0){consumableOrder2.More_than_seven_days__c = 0;}
-            consumableOrderlist.add(consumableOrder2);
+    //鏇存柊寰呯‘璁ゆ敹璐ф暟閲�
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  start by 寮犵帀灞�
+    map<string, Integer> resultsMap2 = new Map<string, Integer>();
+    for (Consumable_order_details2__c results1 : allresults) {
+      if (
+        results1.Dealer_Arrive__c == true ||
+        results1.Dealer_Returned__c == true ||
+        results1.Cancellation_Date__c != null
+      ) {
+        continue;
+      }
+      string Consumable_order_minor_str = String.valueOf(
+        results1.Consumable_order_minor__c
+      );
+      if (resultsMap2.containsKey(Consumable_order_minor_str)) {
+        resultsMap2.put(
+          Consumable_order_minor_str,
+          resultsMap2.get(Consumable_order_minor_str) + 1
+        );
+      } else {
+        resultsMap2.put(Consumable_order_minor_str, 1);
+      }
+    }
+    consumableOrderlist = new List<Consumable_Order__c>();
+    for (String strOrder : orderSet) {
+      Integer cnt = 0;
+      for (string key : resultsMap2.keySet()) {
+        if (key.equals(strOrder)) {
+          cnt = resultsMap2.get(key);
+          break;
         }
+      }
 
-        // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  end by 寮犵帀灞�
-    
-        /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
+      Consumable_Order__c consumableOrder2 = new Consumable_Order__c();
+      consumableOrder2.Id = strOrder;
+      consumableOrder2.Delivery_detail_count__c = cnt;
+      if (consumableOrder2.Delivery_detail_count__c == 0) {
+        consumableOrder2.More_than_seven_days__c = 0;
+      }
+      consumableOrderlist.add(consumableOrder2);
+    }
+
+    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪��  end by 寮犵帀灞�
+
+    /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
         AggregateResult[] results2 = [SELECT Consumable_order_minor__c,count(Id) cnt 
                                       FROM Consumable_order_details2__c 
                                       WHERE Consumable_order_minor__c in :orderSet 
@@ -280,345 +329,473 @@
             consumableOrderlist.add(consumableOrder2);
         }
         2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熸湁SQL 涓庤祴鍊� end by 寮犵帀灞� */
-        if (consumableOrderlist.size() > 0){
-           update consumableOrderlist;
-        }
+    if (consumableOrderlist.size() > 0) {
+      update consumableOrderlist;
     }
-    //Back up by DTT - Li Jun 2023-06-14 Start for reduce soql times
-    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鑾峰彇鎵�鏈夌殑record ID start by 寮犵帀灞�
-    //List<RecordType> allrtList = [select Id,DeveloperName from RecordType where SobjectType = 'Consumable_orderdetails__c'];
-    // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鑾峰彇鎵�鏈夌殑record ID end by 寮犵帀灞�
-    //Back up by DTT - Li Jun 2023-06-14 Start
-    //鍒拌揣鍜岃繑鍝佹椂,鐢熸垚鎴栦慨鏀规秷璐瑰搧璁㈣揣鏄庣粏
-    Set<String> arrivedSet = new Set<String>();
-    Set<String> returnSet = new Set<String>();
-    if (trigger.isUpdate || trigger.isInsert || trigger.isDelete){
-        if (trigger.isUpdate || trigger.isInsert){
-            for (Consumable_order_details2__c detail2 : Trigger.New) {
-                Consumable_order_details2__c oldDetail2 = null;
-                if (Trigger.isUpdate) oldDetail2 = Trigger.oldMap.get(detail2.Id);
-                if (detail2.Consumable_Arrived_order__c != null) {
-                    arrivedSet.add(detail2.Consumable_Arrived_order__c);
-                }
+  }
 
-                if ((oldDetail2 == null || oldDetail2.Consumable_Return_order__c == null) && detail2.Consumable_Return_order__c != null) {
-                    returnSet.add(detail2.Consumable_Return_order__c);
-                }
-            }
+  // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鑾峰彇鎵�鏈夌殑record ID start by 寮犵帀灞�
+  List<RecordType> allrtList = [
+    SELECT Id, DeveloperName
+    FROM RecordType
+    WHERE SobjectType = 'Consumable_orderdetails__c'
+  ];
+  // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鑾峰彇鎵�鏈夌殑record ID end by 寮犵帀灞�
+  //鍒拌揣鍜岃繑鍝佹椂,鐢熸垚鎴栦慨鏀规秷璐瑰搧璁㈣揣鏄庣粏
+  Set<String> arrivedSet = new Set<String>();
+  Set<String> returnSet = new Set<String>();
+  if (Trigger.isUpdate || Trigger.isInsert || Trigger.isDelete) {
+    if (Trigger.isUpdate || Trigger.isInsert) {
+      for (Consumable_order_details2__c detail2 : Trigger.New) {
+        Consumable_order_details2__c oldDetail2 = null;
+        if (Trigger.isUpdate)
+          oldDetail2 = Trigger.oldMap.get(detail2.Id);
+        if (detail2.Consumable_Arrived_order__c != null) {
+          arrivedSet.add(detail2.Consumable_Arrived_order__c);
         }
-        if (trigger.isDelete){
-            for (Consumable_order_details2__c det2 : Trigger.old) {                            
-                if (det2.Consumable_Arrived_order__c != null) {
-                    arrivedSet.add(det2.Consumable_Arrived_order__c);
-                }
 
-                if (det2.Consumable_Return_order__c != null) {
-                    returnSet.add(det2.Consumable_Return_order__c);
-                }
-            }
+        if (
+          (oldDetail2 == null ||
+          oldDetail2.Consumable_Return_order__c == null) &&
+          detail2.Consumable_Return_order__c != null
+        ) {
+          returnSet.add(detail2.Consumable_Return_order__c);
         }
-        System.debug('arrivedSet +++++' + arrivedSet);
+      }
+    }
+    if (Trigger.isDelete) {
+      for (Consumable_order_details2__c det2 : Trigger.old) {
+        if (det2.Consumable_Arrived_order__c != null) {
+          arrivedSet.add(det2.Consumable_Arrived_order__c);
+        }
+
+        if (det2.Consumable_Return_order__c != null) {
+          returnSet.add(det2.Consumable_Return_order__c);
+        }
+      }
+    }
+    System.debug('arrivedSet +++++' + arrivedSet);
     // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃arrivedset  start by 寮犵帀灞�
-        if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
-        return ;
-        }
+    if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
+      return;
+    }
     // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃arrivedset  start by 寮犵帀灞�
-        if (arrivedSet.size() > 0) {
-            Map<Id, Consumable_order__c> arrivedMap = new Map<Id, Consumable_order__c>([select Id, RecordType.DeveloperName, Name from Consumable_order__c where Id in :arrivedSet]);
-            List<Consumable_orderdetails__c> detail1List = [select Id, Name, Asset_Model_No__c, Consumable_count__c, Consumable_order__c from Consumable_orderdetails__c where Consumable_order__c in :arrivedSet];
-            Map<String,Consumable_orderdetails__c> detail1Map = new Map<String,Consumable_orderdetails__c>();
-            for (Consumable_orderdetails__c detail1 : detail1List) {
-                String key = '' + detail1.Consumable_order__c + detail1.Asset_Model_No__c;
-                detail1Map.put(key, detail1);
-            }
+    if (arrivedSet.size() > 0) {
+      Map<Id, Consumable_order__c> arrivedMap = new Map<Id, Consumable_order__c>(
+        [
+          SELECT Id, RecordType.DeveloperName, Name
+          FROM Consumable_order__c
+          WHERE Id IN :arrivedSet
+        ]
+      );
+      List<Consumable_orderdetails__c> detail1List = [
+        SELECT
+          Id,
+          Name,
+          Asset_Model_No__c,
+          Consumable_count__c,
+          Consumable_order__c
+        FROM Consumable_orderdetails__c
+        WHERE Consumable_order__c IN :arrivedSet
+      ];
+      Map<String, Consumable_orderdetails__c> detail1Map = new Map<String, Consumable_orderdetails__c>();
+      for (Consumable_orderdetails__c detail1 : detail1List) {
+        String key =
+          '' +
+          detail1.Consumable_order__c +
+          detail1.Asset_Model_No__c;
+        detail1Map.put(key, detail1);
+      }
 
-            arrivedSet.clear();
-            for (Consumable_order__c arrivedCo : arrivedMap.values()) {
-                if (arrivedCo.RecordType.DeveloperName == 'Arrive') {
-                    arrivedSet.add(arrivedCo.Id);
-                }
-            }
+      arrivedSet.clear();
+      for (Consumable_order__c arrivedCo : arrivedMap.values()) {
+        if (arrivedCo.RecordType.DeveloperName == 'Arrive') {
+          arrivedSet.add(arrivedCo.Id);
+        }
+      }
 
-            AggregateResult[] results = [select Consumable_Arrived_order__c, Asset_Model_No__c, count(bar_code__c) recordCount 
-                                         from Consumable_order_details2__c 
-                                         where Consumable_Arrived_order__c in :arrivedSet 
-                                         and Dealer_Arrive__c = true
-                                         //and Dealer_Returned__c <> true
-                                         AND (RemoveBox_No__c=null or RemoveBox_No__c=1) 
-                                         group by Consumable_Arrived_order__c, Asset_Model_No__c];
-            Map<String, Integer> keyCount = new Map<String, Integer>();
-            
-            for(AggregateResult ar: results){               
-                String key = '' + ar.get('Consumable_Arrived_order__c') + ar.get('Asset_Model_No__c');
-                keyCount.put(key, Integer.valueOf(ar.get('recordCount')));
-            }
-            //Back up by DTT - Li Jun 2023-06-14 Start
-            // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�           
-            // List<RecordType> rtList = new List<RecordType>();
-            // for(RecordType rtl : allrtList){
-            //     if('Detail1_Arrival'.equals(rtl.DeveloperName)){
-            //         rtList.add(rtl);
-            //     }
-            // }
-            // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select end by 寮犵帀灞�
-            //Back up by DTT - Li Jun 2023-06-14 End          
+      AggregateResult[] results = [
+        SELECT
+          Consumable_Arrived_order__c,
+          Asset_Model_No__c,
+          count(bar_code__c) recordCount
+        FROM Consumable_order_details2__c
+        WHERE
+          Consumable_Arrived_order__c IN :arrivedSet
+          AND Dealer_Arrive__c = TRUE
+          //and Dealer_Returned__c <> true
+          AND (RemoveBox_No__c = NULL
+          OR RemoveBox_No__c = 1)
+        GROUP BY Consumable_Arrived_order__c, Asset_Model_No__c
+      ];
+      Map<String, Integer> keyCount = new Map<String, Integer>();
 
-            /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熻幏鍙� recordtype start by 寮犵帀灞�
+      for (AggregateResult ar : results) {
+        String key =
+          '' +
+          ar.get('Consumable_Arrived_order__c') +
+          ar.get('Asset_Model_No__c');
+        keyCount.put(key, Integer.valueOf(ar.get('recordCount')));
+      }
+      // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�
+      List<RecordType> rtList = new List<RecordType>();
+      for (RecordType rtl : allrtList) {
+        if ('Detail1_Arrival'.equals(rtl.DeveloperName)) {
+          rtList.add(rtl);
+        }
+      }
+      // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select end by 寮犵帀灞�
+
+      /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熻幏鍙� recordtype start by 寮犵帀灞�
             List<RecordType> rtList = [select Id from RecordType where DeveloperName = 'Detail1_Arrival' and SobjectType = 'Consumable_orderdetails__c'];
              2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熻幏鍙� recordtype end by 寮犵帀灞� */
-            //Back up by DTT - Li Jun 2023-06-14 Start
-            // Id recordTypeId = null;
-            // if (rtList.size() > 0) recordTypeId = rtList[0].Id;
-            //Back up by DTT - Li Jun 2023-06-14 End            
-            Id recordtypeId = Schema.SObjectType.Consumable_Orderdetails__c.getRecordTypeInfosByDeveloperName().get('Detail1_Arrival').getRecordTypeId();
-            results = [select Consumable_order__c, count(Id) noCount 
-                       from Consumable_orderdetails__c 
-                       where Consumable_order__c in :arrivedSet 
-                       group by Consumable_order__c];
-            System.debug('results +++++' + results);
-            Map<Id, Integer> noCount = new Map<Id, Integer>();
-            for(AggregateResult ar: results){
-                noCount.put((Id)ar.get('Consumable_order__c'), Integer.valueOf(ar.get('noCount')));
+      Id recordTypeId = null;
+      if (rtList.size() > 0)
+        recordTypeId = rtList[0].Id;
+
+      results = [
+        SELECT Consumable_order__c, count(Id) noCount
+        FROM Consumable_orderdetails__c
+        WHERE Consumable_order__c IN :arrivedSet
+        GROUP BY Consumable_order__c
+      ];
+      System.debug('results +++++' + results);
+      Map<Id, Integer> noCount = new Map<Id, Integer>();
+      for (AggregateResult ar : results) {
+        noCount.put(
+          (Id) ar.get('Consumable_order__c'),
+          Integer.valueOf(ar.get('noCount'))
+        );
+      }
+      System.debug('noCount +++++' + noCount);
+      Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>();
+      Map<String, Consumable_orderdetails__c> deletetMap = new Map<String, Consumable_orderdetails__c>();
+      Map<String, String> assetModelNoMap = new Map<String, String>();
+      if (Trigger.isUpdate || Trigger.isInsert) {
+        for (Consumable_order_details2__c detail2 : Trigger.New) {
+          //Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��
+          //if (trigger.isUpdate && detail2.ManualRegisteredStock__c == true) continue;
+          if (detail2.Consumable_Arrived_order__c == null)
+            continue;
+          String key =
+            '' +
+            detail2.Consumable_Arrived_order__c +
+            detail2.Asset_Model_No__c;
+          //if (upsertMap.get(key) != null) continue;
+          Integer count = keyCount.get(key);
+          Consumable_orderdetails__c detail1 = detail1Map.get(key);
+
+          if (detail1 == null)
+            detail1 = new Consumable_orderdetails__c();
+          detail1.Consumable_Arrivecount__c = count;
+          if (detail1.Id == null) {
+            Consumable_order__c co = arrivedMap.get(
+              detail2.Consumable_Arrived_order__c
+            );
+            Integer index = noCount.get(co.Id);
+            if (index == null)
+              index = 0;
+            if (assetModelNoMap.containsKey(detail2.Asset_Model_No__c)) {
+              continue;
+            } else {
+              assetModelNoMap.put(
+                detail2.Asset_Model_No__c,
+                detail2.Asset_Model_No__c
+              );
+              noCount.put(co.Id, index + 1);
             }
-            System.debug('noCount +++++' + noCount);
-            Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>();
-            Map<String, Consumable_orderdetails__c> deletetMap = new Map<String, Consumable_orderdetails__c>();
-            Map<String, String> assetModelNoMap = new Map<String, String>();
-            if (trigger.isUpdate || trigger.isInsert){
-                for (Consumable_order_details2__c detail2 : Trigger.New) {  
-                    //Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��
-                    //if (trigger.isUpdate && detail2.ManualRegisteredStock__c == true) continue;                  
-                    if (detail2.Consumable_Arrived_order__c == null) continue;
-                    String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;
-                    //if (upsertMap.get(key) != null) continue;
-                    Integer count = keyCount.get(key);
-                    Consumable_orderdetails__c detail1 = detail1Map.get(key);
-
-                    if (detail1 == null) detail1 = new Consumable_orderdetails__c();
-                    detail1.Consumable_Arrivecount__c = count;
-                    if (detail1.Id == null) {
-                        Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
-                        Integer index = noCount.get(co.Id);
-                        if (index == null) index = 0;
-                        if(assetModelNoMap.containsKey(detail2.Asset_Model_No__c)){
-                            continue;
-                        }else{
-                            assetModelNoMap.put(detail2.Asset_Model_No__c, detail2.Asset_Model_No__c);
-                            noCount.put(co.Id, index + 1);
-                        }
-                        noCount.put(co.Id, index + 1);
-                        String newName = co.Name+'-';
-                        System.debug('index +++++' + index);
-                        if (index < 99) {
-                            newName += '0';
-                        }
-                        if (index < 9) {
-                            newName += '0';
-                        }
-                        newName += String.valueOf(index + 1);
-                        System.debug('newName +++++' + newName);
-                        detail1.Name = newName;
-                        //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
-                        detail1.Consumable_product__c = detail2.Consumable_product__c;
-                        detail1.Consumable_order__c = co.Id;
-                        detail1.RecordTypeId = recordTypeId;
-                        //detail1.Consumable_principal__c = co.Id;
-                        detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
-                        
-                    }
-                    upsertMap.put(key, detail1);
-                }
+            noCount.put(co.Id, index + 1);
+            String newName = co.Name + '-';
+            System.debug('index +++++' + index);
+            if (index < 99) {
+              newName += '0';
             }
-
-            if (trigger.isUpdate){               
-                for (Consumable_order_details2__c detail2 : Trigger.old) { 
-                    //Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��  
-                    //if (detail2.ManualRegisteredStock__c == true) continue;                  
-                    if (detail2.Consumable_Arrived_order__c == null) continue;
-                    String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;                    
-                    //if (upsertMap.get(key) != null) continue;
-                    Integer count = keyCount.get(key);               
-                    Consumable_orderdetails__c detail1 = detail1Map.get(key);
-                    if ((count == null || count ==0) && detail1 !=null){                      
-                        //delete detail1;
-                        deletetMap.put(key,detail1);
-                        continue;
-                    }
-                    if (detail1 == null) continue;
-                    detail1.Consumable_Arrivecount__c = count;
-
-                    if (detail1.Id == null) {
-                            Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
-                            Integer index = noCount.get(co.Id);
-                            if (index == null) index = 0;
-                            System.debug('indexUp +++++' + index);
-                            noCount.put(co.Id, index + 1);
-                            System.debug('noCountUp +++++' + noCount);
-                            String newName = co.Name+'-';
-                            if (index < 99) {
-                                newName += '0';
-                            }
-                            if (index < 9) {
-                                newName += '0';
-                            }
-                            newName += String.valueOf(index + 1);
-                            System.debug('newNameUp +++++' + newName);
-                            detail1.Name = newName;
-                            //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
-                            detail1.Consumable_product__c = detail2.Consumable_product__c;
-                            detail1.Consumable_order__c = co.Id;
-                            detail1.RecordTypeId = recordTypeId;
-                            //detail1.Consumable_principal__c = co.Id;
-                            detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
-                        
-                        
-                    }
-                    upsertMap.put(key, detail1);
-                }
+            if (index < 9) {
+              newName += '0';
             }
-
-            if (trigger.isDelete){
-                for (Consumable_order_details2__c detail2 : Trigger.old) {
-                    if (detail2.Consumable_Arrived_order__c == null) continue;
-                    String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;
-                    //if (upsertMap.get(key) != null) continue;
-                    Integer count = keyCount.get(key);
-                    Consumable_orderdetails__c detail1 = detail1Map.get(key);
-                    if ((count == null || count ==0) && detail1 !=null){                      
-                        //delete detail1;
-                        deletetMap.put(key,detail1);
-                        continue;
-                    }
-                    if (detail1 == null) detail1 = new Consumable_orderdetails__c();
-                    detail1.Consumable_Arrivecount__c = count;
-
-                    if (detail1.Id == null) {
-                        Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
-                        Integer index = noCount.get(co.Id);
-                        if (index == null) index = 0;
-                        noCount.put(co.Id, index + 1);
-                        String newName = co.Name+'-';
-                        if (index < 99) {
-                            newName += '0';
-                        }
-                        if (index < 9) {
-                            newName += '0';
-                        }
-                        newName += String.valueOf(index + 1);
-                        detail1.Name = newName;
-                        //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
-                        detail1.Consumable_product__c = detail2.Consumable_product__c;
-                        detail1.Consumable_order__c = co.Id;
-                        detail1.RecordTypeId = recordTypeId;
-                        //detail1.Consumable_principal__c = co.Id;
-                        detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
-                        
-                    }
-                    upsertMap.put(key, detail1);
-                }
-            }
-
-            Database.upsert(upsertMap.values(), true);
-            if(deletetMap.size()>0){
-                Database.delete(deletetMap.values(),true);
-            }
-
+            newName += String.valueOf(index + 1);
+            System.debug('newName +++++' + newName);
+            detail1.Name = newName;
+            //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
+            detail1.Consumable_product__c = detail2.Consumable_product__c;
+            detail1.Consumable_order__c = co.Id;
+            detail1.RecordTypeId = recordTypeId;
+            //detail1.Consumable_principal__c = co.Id;
+            detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+          }
+          upsertMap.put(key, detail1);
         }
-    }
-        // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃returnSet  start by 寮犵帀灞�
+      }
 
-    if (trigger.isUpdate || trigger.isInsert){
-        if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
-        return ;
+      if (Trigger.isUpdate) {
+        for (Consumable_order_details2__c detail2 : Trigger.old) {
+          //Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��
+          //if (detail2.ManualRegisteredStock__c == true) continue;
+          if (detail2.Consumable_Arrived_order__c == null)
+            continue;
+          String key =
+            '' +
+            detail2.Consumable_Arrived_order__c +
+            detail2.Asset_Model_No__c;
+          //if (upsertMap.get(key) != null) continue;
+          Integer count = keyCount.get(key);
+          Consumable_orderdetails__c detail1 = detail1Map.get(key);
+          if ((count == null || count == 0) && detail1 != null) {
+            //delete detail1;
+            deletetMap.put(key, detail1);
+            continue;
+          }
+          if (detail1 == null)
+            continue;
+          detail1.Consumable_Arrivecount__c = count;
+
+          if (detail1.Id == null) {
+            Consumable_order__c co = arrivedMap.get(
+              detail2.Consumable_Arrived_order__c
+            );
+            Integer index = noCount.get(co.Id);
+            if (index == null)
+              index = 0;
+            System.debug('indexUp +++++' + index);
+            noCount.put(co.Id, index + 1);
+            System.debug('noCountUp +++++' + noCount);
+            String newName = co.Name + '-';
+            if (index < 99) {
+              newName += '0';
+            }
+            if (index < 9) {
+              newName += '0';
+            }
+            newName += String.valueOf(index + 1);
+            System.debug('newNameUp +++++' + newName);
+            detail1.Name = newName;
+            //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
+            detail1.Consumable_product__c = detail2.Consumable_product__c;
+            detail1.Consumable_order__c = co.Id;
+            detail1.RecordTypeId = recordTypeId;
+            //detail1.Consumable_principal__c = co.Id;
+            detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+          }
+          upsertMap.put(key, detail1);
+        }
+      }
+
+      if (Trigger.isDelete) {
+        for (Consumable_order_details2__c detail2 : Trigger.old) {
+          if (detail2.Consumable_Arrived_order__c == null)
+            continue;
+          String key =
+            '' +
+            detail2.Consumable_Arrived_order__c +
+            detail2.Asset_Model_No__c;
+          //if (upsertMap.get(key) != null) continue;
+          Integer count = keyCount.get(key);
+          Consumable_orderdetails__c detail1 = detail1Map.get(key);
+          if ((count == null || count == 0) && detail1 != null) {
+            //delete detail1;
+            deletetMap.put(key, detail1);
+            continue;
+          }
+          if (detail1 == null)
+            detail1 = new Consumable_orderdetails__c();
+          detail1.Consumable_Arrivecount__c = count;
+
+          if (detail1.Id == null) {
+            Consumable_order__c co = arrivedMap.get(
+              detail2.Consumable_Arrived_order__c
+            );
+            Integer index = noCount.get(co.Id);
+            if (index == null)
+              index = 0;
+            noCount.put(co.Id, index + 1);
+            String newName = co.Name + '-';
+            if (index < 99) {
+              newName += '0';
+            }
+            if (index < 9) {
+              newName += '0';
+            }
+            newName += String.valueOf(index + 1);
+            detail1.Name = newName;
+            //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
+            detail1.Consumable_product__c = detail2.Consumable_product__c;
+            detail1.Consumable_order__c = co.Id;
+            detail1.RecordTypeId = recordTypeId;
+            //detail1.Consumable_principal__c = co.Id;
+            detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+          }
+          upsertMap.put(key, detail1);
+        }
+      }
+
+      Database.upsert(upsertMap.values(), true);
+      if (deletetMap.size() > 0) {
+        Database.delete(deletetMap.values(), true);
+      }
+    }
+  }
+  // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃returnSet  start by 寮犵帀灞�
+
+  if (Trigger.isUpdate || Trigger.isInsert) {
+    if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
+      return;
     }
     // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃returnSet  start by 寮犵帀灞�
-        if (returnSet.size() > 0) {
-            Map<Id, Consumable_order__c> returnMap = new Map<Id, Consumable_order__c>([select Id, RecordType.DeveloperName, Name from Consumable_order__c where Id in :returnSet]);
-            List<Consumable_orderdetails__c> detail1List = [select Id, Name, Asset_Model_No__c, Consumable_count__c, Consumable_order__c from Consumable_orderdetails__c where Consumable_order__c in :returnSet];
-            Map<String,Consumable_orderdetails__c> detail1Map = new Map<String,Consumable_orderdetails__c>();
-            
-            for (Consumable_orderdetails__c detail1 : detail1List) {
-                String key = '' + detail1.Consumable_order__c + detail1.Asset_Model_No__c;
-                detail1Map.put(key, detail1);
-            }
+    if (returnSet.size() > 0) {
+      Map<Id, Consumable_order__c> returnMap = new Map<Id, Consumable_order__c>(
+        [
+          SELECT Id, RecordType.DeveloperName, Name
+          FROM Consumable_order__c
+          WHERE Id IN :returnSet
+        ]
+      );
+      List<Consumable_orderdetails__c> detail1List = [
+        SELECT
+          Id,
+          Name,
+          Asset_Model_No__c,
+          Consumable_count__c,
+          Consumable_order__c
+        FROM Consumable_orderdetails__c
+        WHERE Consumable_order__c IN :returnSet
+      ];
+      Map<String, Consumable_orderdetails__c> detail1Map = new Map<String, Consumable_orderdetails__c>();
 
-            returnSet.clear();
-            for (Consumable_order__c returnCo : returnMap.values()) {
-                if (returnCo.RecordType.DeveloperName == 'ReturnGoods') {
-                    returnSet.add(returnCo.Id);
-                }
-            }
+      for (Consumable_orderdetails__c detail1 : detail1List) {
+        String key =
+          '' +
+          detail1.Consumable_order__c +
+          detail1.Asset_Model_No__c;
+        detail1Map.put(key, detail1);
+      }
 
-            AggregateResult[] results = [select Consumable_Return_order__c, Asset_Model_No__c, count(Id) recordCount 
-                                         from Consumable_order_details2__c 
-                                         where Consumable_Return_order__c in :returnSet 
-                                         and Dealer_Returned__c = true 
-                                         group by Consumable_Return_order__c, Asset_Model_No__c];
-            Map<String, Integer> keyCount = new Map<String, Integer>();
-            for(AggregateResult ar: results){
-                String key = '' + ar.get('Consumable_Return_order__c') + ar.get('Asset_Model_No__c');
-                keyCount.put(key, Integer.valueOf(ar.get('recordCount')));
-            }
-             //Back up by DTT - Li Jun 2023-06-14 Start for reduce soql times
-            // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�
-            // List<RecordType> rtList = new List<RecordType>();
-            // for(RecordType rtl : allrtList){
-            //     if('Detail1_ReturnGoods'.equals(rtl.DeveloperName)){
-            //         rtList.add(rtl);
-            //     }
-            // }
-            // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select end by 寮犵帀灞�
-             //Back up by DTT - Li Jun 2023-06-14 End
-            /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熻幏鍙� recordtype start by 寮犵帀灞�
+      returnSet.clear();
+      for (Consumable_order__c returnCo : returnMap.values()) {
+        if (returnCo.RecordType.DeveloperName == 'ReturnGoods') {
+          returnSet.add(returnCo.Id);
+        }
+      }
+
+      AggregateResult[] results = [
+        SELECT
+          Consumable_Return_order__c,
+          Asset_Model_No__c,
+          count(Id) recordCount
+        FROM Consumable_order_details2__c
+        WHERE
+          Consumable_Return_order__c IN :returnSet
+          AND Dealer_Returned__c = TRUE
+        GROUP BY Consumable_Return_order__c, Asset_Model_No__c
+      ];
+      Map<String, Integer> keyCount = new Map<String, Integer>();
+      for (AggregateResult ar : results) {
+        String key =
+          '' +
+          ar.get('Consumable_Return_order__c') +
+          ar.get('Asset_Model_No__c');
+        keyCount.put(key, Integer.valueOf(ar.get('recordCount')));
+      }
+
+      // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�
+      List<RecordType> rtList = new List<RecordType>();
+      for (RecordType rtl : allrtList) {
+        if ('Detail1_ReturnGoods'.equals(rtl.DeveloperName)) {
+          rtList.add(rtl);
+        }
+      }
+      // 2018骞�8鏈�9鏃� HWAG-B3D9UV  鏇夸唬涓嬮潰SQL select end by 寮犵帀灞�
+
+      /* 2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熻幏鍙� recordtype start by 寮犵帀灞�
             List<RecordType> rtList = [select Id from RecordType where DeveloperName = 'Detail1_ReturnGoods' and SobjectType = 'Consumable_orderdetails__c'];
              2018骞�8鏈�9鏃� HWAG-B3D9UV  鍘熻幏鍙� recordtype end by 寮犵帀灞� */
 
-            Id recordTypeId = Schema.SObjectType.Consumable_Orderdetails__c.getRecordTypeInfosByDeveloperName().get('Detail1_ReturnGoods').getRecordTypeId();
-            //if (rtList.size() > 0) recordTypeId = rtList[0].Id;
+      Id recordTypeId = null;
+      if (rtList.size() > 0)
+        recordTypeId = rtList[0].Id;
 
-            results = [select Consumable_order__c, count(Id) noCount 
-                       from Consumable_orderdetails__c 
-                       where Consumable_order__c in :returnSet 
-                       group by Consumable_order__c];
-            Map<Id, Integer> noCount = new Map<Id, Integer>();
-            for(AggregateResult ar: results){
-                noCount.put((Id)ar.get('Consumable_order__c'), Integer.valueOf(ar.get('noCount')));
+      results = [
+        SELECT Consumable_order__c, count(Id) noCount
+        FROM Consumable_orderdetails__c
+        WHERE Consumable_order__c IN :returnSet
+        GROUP BY Consumable_order__c
+      ];
+      Map<Id, Integer> noCount = new Map<Id, Integer>();
+      for (AggregateResult ar : results) {
+        noCount.put(
+          (Id) ar.get('Consumable_order__c'),
+          Integer.valueOf(ar.get('noCount'))
+        );
+      }
+
+      Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>();
+      Map<String, Integer> updatedSaleCount = new Map<String, Integer>();
+      Set<Id> updatedSaleId = new Set<Id>();
+      Map<String, Integer> updatedShipmentCount = new Map<String, Integer>();
+      Set<Id> updatedShipmentId = new Set<Id>();
+      Map<String, Integer> updatedConInvoiceCount = new Map<String, Integer>();
+      Map<String, String> shipmentIdMap = new Map<String, String>();
+      Set<Id> updatedConInvoiceId = new Set<Id>();
+      Integer returnCount = 0;
+
+      for (Consumable_order_details2__c detail2 : Trigger.New) {
+        Consumable_order_details2__c oldDetail2 = null;
+        if (detail2.Consumable_Return_order__c == null)
+          continue;
+
+        String key =
+          '' +
+          detail2.Consumable_Return_order__c +
+          detail2.Asset_Model_No__c;
+
+        if (Trigger.isUpdate)
+          oldDetail2 = Trigger.oldMap.get(detail2.Id);
+        if (oldDetail2 != null) {
+          if (keyCount.containsKey(key)) {
+            returnCount += 1;
+            if (oldDetail2.Consumable_Sale_order__c != null) {
+              Integer sCount = updatedSaleCount.containsKey(
+                  '' +
+                    oldDetail2.Consumable_Sale_order__c +
+                    detail2.Asset_Model_No__c
+                )
+                ? updatedSaleCount.get(
+                    '' +
+                      oldDetail2.Consumable_Sale_order__c +
+                      detail2.Asset_Model_No__c
+                  )
+                : 0;
+              sCount += 1;
+              updatedSaleCount.put(
+                '' +
+                  oldDetail2.Consumable_Sale_order__c +
+                  detail2.Asset_Model_No__c,
+                sCount
+              );
+              updatedSaleId.add(oldDetail2.Consumable_Sale_order__c);
             }
+            if (oldDetail2.Consumable_Shipment_order__c != null) {
+              Integer sCount = updatedShipmentCount.containsKey(
+                  '' +
+                    oldDetail2.Consumable_Shipment_order__c +
+                    detail2.Asset_Model_No__c
+                )
+                ? updatedShipmentCount.get(
+                    '' +
+                      oldDetail2.Consumable_Shipment_order__c +
+                      detail2.Asset_Model_No__c
+                  )
+                : 0;
+              sCount += 1;
 
-            Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>();
-            Map<String, Integer> updatedSaleCount = new Map<String, Integer>();
-            Set<Id> updatedSaleId = new Set<Id>();
-            Map<String, Integer> updatedShipmentCount = new Map<String, Integer>();
-            Set<Id> updatedShipmentId = new Set<Id>();
-            Map<String, Integer> updatedConInvoiceCount = new Map<String, Integer>();
-            Map<String, String> shipmentIdMap = new Map<String, String>();
-            Set<Id> updatedConInvoiceId = new Set<Id>();
-            Integer returnCount = 0;
-
-            for (Consumable_order_details2__c detail2 : Trigger.New) {
-                Consumable_order_details2__c oldDetail2 = null;
-                if (detail2.Consumable_Return_order__c == null) continue;
-
-                String key = '' + detail2.Consumable_Return_order__c + detail2.Asset_Model_No__c;
-
-                if(Trigger.isUpdate) oldDetail2 = Trigger.oldMap.get(detail2.Id);
-                if (oldDetail2 != null) {
-                    if (keyCount.containsKey(key)) {
-                        returnCount += 1;
-                        if (oldDetail2.Consumable_Sale_order__c != null) {
-                            Integer sCount = updatedSaleCount.containsKey(''+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) ? updatedSaleCount.get(''+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) : 0;
-                            sCount += 1;
-                            updatedSaleCount.put(''+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c, sCount);
-                            updatedSaleId.add(oldDetail2.Consumable_Sale_order__c);
-                        }
-                        if (oldDetail2.Consumable_Shipment_order__c != null) {
-                            Integer sCount = updatedShipmentCount.containsKey(''+oldDetail2.Consumable_Shipment_order__c+detail2.Asset_Model_No__c) ? updatedShipmentCount.get(''+oldDetail2.Consumable_Shipment_order__c+detail2.Asset_Model_No__c) : 0;
-                            sCount += 1;
-                            
-                            updatedShipmentCount.put(''+oldDetail2.Consumable_Shipment_order__c+detail2.Asset_Model_No__c, sCount);
-                            updatedShipmentId.add(oldDetail2.Consumable_Shipment_order__c);
-                        }
-                        /*if (oldDetail2.Invoice_No__c != null) {
+              updatedShipmentCount.put(
+                '' +
+                  oldDetail2.Consumable_Shipment_order__c +
+                  detail2.Asset_Model_No__c,
+                sCount
+              );
+              updatedShipmentId.add(oldDetail2.Consumable_Shipment_order__c);
+            }
+            /*if (oldDetail2.Invoice_No__c != null) {
                             Integer sCount = updatedConInvoiceCount.containsKey(''+oldDetail2.Invoice_No__c+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) ? updatedConInvoiceCount.get(''+oldDetail2.Invoice_No__c+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) : 0;
                             sCount += 1;
                             if(oldDetail2.Consumable_Shipment_order__c == null){
@@ -631,82 +808,105 @@
                             
                             updatedConInvoiceId.add(oldDetail2.Invoice_No__c);
                         }*/
-                    }
-                }
-                if (upsertMap.get(key) != null) continue;
-                Integer count = keyCount.get(key);
+          }
+        }
+        if (upsertMap.get(key) != null)
+          continue;
+        Integer count = keyCount.get(key);
 
-                Consumable_orderdetails__c detail1 = detail1Map.get(key);
+        Consumable_orderdetails__c detail1 = detail1Map.get(key);
 
-                if (detail1 == null) detail1 = new Consumable_orderdetails__c();
-                detail1.RrturnPro_count__c = count;
+        if (detail1 == null)
+          detail1 = new Consumable_orderdetails__c();
+        detail1.RrturnPro_count__c = count;
 
-                if (detail1.Id == null) {
-                    Consumable_order__c co = returnMap.get(detail2.Consumable_Return_order__c);
-                    Integer index = noCount.get(co.Id);
-                    if (index == null) index = 0;
-                    noCount.put(co.Id, index + 1);
-                    String newName = co.Name+'-';
-                    if (index < 99) {
-                        newName += '0';
-                    }
-                    if (index < 9) {
-                        newName += '0';
-                    }
-                    newName += String.valueOf(index + 1);
-                    detail1.Name = newName;
-                    //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
-                    detail1.Consumable_product__c = detail2.Consumable_product__c;
-                    detail1.Consumable_order__c = co.Id;
-                    detail1.RecordTypeId = recordTypeId;
-                    //detail1.Consumable_principal__c = co.Id;
-                    detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
-                    
-                }
-                upsertMap.put(key, detail1);
-            }
+        if (detail1.Id == null) {
+          Consumable_order__c co = returnMap.get(
+            detail2.Consumable_Return_order__c
+          );
+          Integer index = noCount.get(co.Id);
+          if (index == null)
+            index = 0;
+          noCount.put(co.Id, index + 1);
+          String newName = co.Name + '-';
+          if (index < 99) {
+            newName += '0';
+          }
+          if (index < 9) {
+            newName += '0';
+          }
+          newName += String.valueOf(index + 1);
+          detail1.Name = newName;
+          //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
+          detail1.Consumable_product__c = detail2.Consumable_product__c;
+          detail1.Consumable_order__c = co.Id;
+          detail1.RecordTypeId = recordTypeId;
+          //detail1.Consumable_principal__c = co.Id;
+          detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+        }
+        upsertMap.put(key, detail1);
+      }
 
-            Database.upsert(upsertMap.values(), true);
-            // 2018骞�8鏈�8鏃� HWAG-B3D9UV 鍑忓皯 select 鏁伴噺 start by 寮犵帀灞�
-            List<Consumable_orderdetails__c> Consumable_orderdetailsList =
-                        [select Id, Name, Asset_Model_No__c, RrturnPro_count__c, 
-            Consumable_order__c,Invoicedet1_OD_link__c 
-            from Consumable_orderdetails__c 
-            where Consumable_order__c in :updatedSaleId  
-                or Consumable_order__c in :updatedShipmentId 
-                or Consumable_order__c in :updatedConInvoiceId];
-            
-            List<Consumable_orderdetails__c> detail1SaleList 
-            = new List<Consumable_orderdetails__c>();
-            
-            for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList){
-                if(updatedSaleId.contains(orderdetails.id) 
-                    && 'Sale'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)){
-                    detail1SaleList.add(orderdetails);
-                }
-            }
+      Database.upsert(upsertMap.values(), true);
+      // 2018骞�8鏈�8鏃� HWAG-B3D9UV 鍑忓皯 select 鏁伴噺 start by 寮犵帀灞�
+      List<Consumable_orderdetails__c> Consumable_orderdetailsList = [
+        SELECT
+          Id,
+          Name,
+          Asset_Model_No__c,
+          RrturnPro_count__c,
+          Consumable_order__c,
+          Invoicedet1_OD_link__c
+        FROM Consumable_orderdetails__c
+        WHERE
+          Consumable_order__c IN :updatedSaleId
+          OR Consumable_order__c IN :updatedShipmentId
+          OR Consumable_order__c IN :updatedConInvoiceId
+      ];
 
-            List<Consumable_orderdetails__c> detail1ShipmentList 
-            = new List<Consumable_orderdetails__c>();
+      List<Consumable_orderdetails__c> detail1SaleList = new List<Consumable_orderdetails__c>();
 
-            for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList){
-                if(updatedShipmentId.contains(orderdetails.id) 
-                    && 'Shipment'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)){
-                    detail1ShipmentList.add(orderdetails);
-                }
-            }
+      for (
+        Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList
+      ) {
+        if (
+          updatedSaleId.contains(orderdetails.id) &&
+          'Sale'
+            .equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)
+        ) {
+          detail1SaleList.add(orderdetails);
+        }
+      }
 
-            List<Consumable_orderdetails__c> detail1ConInvoiceList 
-            = new List<Consumable_orderdetails__c>();
+      List<Consumable_orderdetails__c> detail1ShipmentList = new List<Consumable_orderdetails__c>();
 
-            for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList){
-                if(updatedConInvoiceId.contains(orderdetails.id) 
-                    && 'Order_Invoice'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)){
-                    detail1ConInvoiceList.add(orderdetails);
-                }
-            }
-            // 2018骞�8鏈�8鏃� HWAG-B3D9UV 鍑忓皯 select 鏁伴噺 end by 寮犵帀灞�
-            /* 2018骞�8鏈�8鏃� HWAG-B3D9UV 娉ㄩ噴 鏇挎崲涓轰笂闈㈢殑閭d釜 end by 寮犵帀灞�
+      for (
+        Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList
+      ) {
+        if (
+          updatedShipmentId.contains(orderdetails.id) &&
+          'Shipment'
+            .equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)
+        ) {
+          detail1ShipmentList.add(orderdetails);
+        }
+      }
+
+      List<Consumable_orderdetails__c> detail1ConInvoiceList = new List<Consumable_orderdetails__c>();
+
+      for (
+        Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList
+      ) {
+        if (
+          updatedConInvoiceId.contains(orderdetails.id) &&
+          'Order_Invoice'
+            .equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)
+        ) {
+          detail1ConInvoiceList.add(orderdetails);
+        }
+      }
+      // 2018骞�8鏈�8鏃� HWAG-B3D9UV 鍑忓皯 select 鏁伴噺 end by 寮犵帀灞�
+      /* 2018骞�8鏈�8鏃� HWAG-B3D9UV 娉ㄩ噴 鏇挎崲涓轰笂闈㈢殑閭d釜 end by 寮犵帀灞�
             List<Consumable_orderdetails__c> detail1SaleList = 
             [select Id, Name, Asset_Model_No__c, RrturnPro_count__c, Consumable_order__c 
             from Consumable_orderdetails__c 
@@ -726,33 +926,52 @@
             where Consumable_order__c in :updatedConInvoiceId 
             and Consumable_order__r.RecordType.DeveloperName = 'Order_Invoice'];
             */
-            List<Consumable_orderdetails__c> updateData = new List<Consumable_orderdetails__c>();
+      List<Consumable_orderdetails__c> updateData = new List<Consumable_orderdetails__c>();
 
-            for (Consumable_orderdetails__c detail1Sale : detail1SaleList) {
-                Integer count = updatedSaleCount.get(''+detail1Sale.Consumable_order__c+detail1Sale.Asset_Model_No__c);
-                if (count != null) {
-                    detail1Sale.RrturnPro_count__c += count;
-                    updateData.add(detail1Sale);
-                }
-                
-            }
-            for (Consumable_orderdetails__c detail1Shipment : detail1ShipmentList) {
-                Integer count = updatedShipmentCount.get(''+detail1Shipment.Consumable_order__c+detail1Shipment.Asset_Model_No__c);
-                if (count != null) {
-                    detail1Shipment.RrturnPro_count__c += count;
-                    updateData.add(detail1Shipment);
-                }
-            }
-            for (Consumable_orderdetails__c detail1ConInvoice : detail1ConInvoiceList) {
-                Integer count = updatedConInvoiceCount.get(''+detail1ConInvoice.Consumable_order__c+detail1ConInvoice.Invoicedet1_OD_link__c+detail1ConInvoice.Asset_Model_No__c);
-                if (count != null && (detail1ConInvoice.Invoicedet1_OD_link__c  == shipmentIdMap.get(''+detail1ConInvoice.Invoicedet1_OD_link__c+detail1ConInvoice.Asset_Model_No__c)) ) {
-                    detail1ConInvoice.RrturnPro_count__c += count;
-                    //updateData.add(detail1ConInvoice);
-                }
-            }
-
-            Database.upsert(updateData, true);
+      for (Consumable_orderdetails__c detail1Sale : detail1SaleList) {
+        Integer count = updatedSaleCount.get(
+          '' + detail1Sale.Consumable_order__c + detail1Sale.Asset_Model_No__c
+        );
+        if (count != null) {
+          detail1Sale.RrturnPro_count__c += count;
+          updateData.add(detail1Sale);
         }
- 
+      }
+      for (Consumable_orderdetails__c detail1Shipment : detail1ShipmentList) {
+        Integer count = updatedShipmentCount.get(
+          '' +
+            detail1Shipment.Consumable_order__c +
+            detail1Shipment.Asset_Model_No__c
+        );
+        if (count != null) {
+          detail1Shipment.RrturnPro_count__c += count;
+          updateData.add(detail1Shipment);
+        }
+      }
+      for (
+        Consumable_orderdetails__c detail1ConInvoice : detail1ConInvoiceList
+      ) {
+        Integer count = updatedConInvoiceCount.get(
+          '' +
+            detail1ConInvoice.Consumable_order__c +
+            detail1ConInvoice.Invoicedet1_OD_link__c +
+            detail1ConInvoice.Asset_Model_No__c
+        );
+        if (
+          count != null &&
+          (detail1ConInvoice.Invoicedet1_OD_link__c ==
+          shipmentIdMap.get(
+            '' +
+              detail1ConInvoice.Invoicedet1_OD_link__c +
+              detail1ConInvoice.Asset_Model_No__c
+          ))
+        ) {
+          detail1ConInvoice.RrturnPro_count__c += count;
+          //updateData.add(detail1ConInvoice);
+        }
+      }
+
+      Database.upsert(updateData, true);
     }
-}
\ No newline at end of file
+  }
+}
diff --git a/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger-meta.xml b/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger-meta.xml
index 7acf013..2a09c48 100644
--- a/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger-meta.xml
+++ b/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger-meta.xml
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" ?>
 <ApexTrigger xmlns="http://soap.sforce.com/2006/04/metadata">
-    <apiVersion>50.0</apiVersion>
+    <apiVersion>40.0</apiVersion>
     <status>Active</status>
 </ApexTrigger>

--
Gitblit v1.9.1