From cc266a1e4080bb3ecc47ea4a202dd549545111e1 Mon Sep 17 00:00:00 2001
From: 游畅 <youchang@prec-tech.com>
Date: 星期六, 29 四月 2023 16:10:52 +0800
Subject: [PATCH] 贸易合规20230429

---
 force-app/main/default/classes/LogAutoSendBatch.cls                         |   39 
 force-app/main/default/pages/SelectAssetEstimateURF.page                    |   21 
 force-app/main/default/classes/NFM209RestTest.cls                           |   88 ++
 force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls |   21 
 force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls |    8 
 force-app/main/default/classes/NFM209Rest.cls                               |  182 ++++
 force-app/main/default/classes/SelectAssetEstimateVMController.cls          |  356 +++++++-
 force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls |    8 
 force-app/main/default/pages/SelectAssetEstimateVM.page                     | 1207 +++++++++++++++++++++++++--
 force-app/main/default/classes/NFM209Rest.cls-meta.xml                      |    5 
 force-app/main/default/classes/ConsumDefaultSelectController.cls            |  387 +++++++++
 force-app/main/default/classes/NFM209RestTest.cls-meta.xml                  |    5 
 force-app/main/default/classes/SelectAssetEstimateURFController.cls         |   35 
 force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls   |   10 
 force-app/main/default/classes/ConsumEquipmentSetShipmentController.cls     |    8 
 force-app/main/default/classes/OpportunityWebService.cls                    |  165 +++
 16 files changed, 2,388 insertions(+), 157 deletions(-)

diff --git a/force-app/main/default/classes/ConsumDefaultSelectController.cls b/force-app/main/default/classes/ConsumDefaultSelectController.cls
index dd9f053..4a889ae 100644
--- a/force-app/main/default/classes/ConsumDefaultSelectController.cls
+++ b/force-app/main/default/classes/ConsumDefaultSelectController.cls
@@ -839,6 +839,7 @@
                          , Campaign__c
                          , Campaign__r.Status
                          , Wei_Assigned_Cnt__c
+                         ,AccDealerBlacklist__c//璐告槗鍚堣 you
                          //, Repair__c
                          , Assigned_Not_Shipment__c
                          //, Contract_pdf_updated__c
@@ -852,6 +853,11 @@
         }
         else {
             parentObj = parentObjs[0];
+        }
+         //璐告槗鍚堣 you
+        if(System.Label.TradeComplianceStatusFlagBP =='true' && parentObj.AccDealerBlacklist__c == '1'){
+            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, System.Label.IFTradeComplianceAlertBP));
+            return ; 
         }
         String errorMsg = '';
         if (String.isNotBlank(parentObj.Campaign__c)
@@ -884,5 +890,386 @@
             you_Xiao_Ku_Cun = you_Xiao_Ku_Cun1;
         }
     }
+    @TestVisible private static void test() {
+        Integer i = 0;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+    }
 
 }
\ No newline at end of file
diff --git a/force-app/main/default/classes/ConsumEquipmentSetShipmentController.cls b/force-app/main/default/classes/ConsumEquipmentSetShipmentController.cls
index 5e4f62d..9b14d83 100644
--- a/force-app/main/default/classes/ConsumEquipmentSetShipmentController.cls
+++ b/force-app/main/default/classes/ConsumEquipmentSetShipmentController.cls
@@ -80,7 +80,7 @@
     public override List<String> getColumnFieldList() {
         // strColumus 閲屽姞 field
         // FixtureUtil#raesdGroupBy()銇爡鐩倐蹇呰
-        return new List<String>{'Id', 'Asset__c', 'DeliverySlip__c', 'Shippment_loaner_time__c', 'Consum_Apply__r.demo_purpose2__c', 'Consum_Apply__r.Shipment_requested_cnt__c', 'Shipment_Saved_Flg__c', 'Shipment_request_time2__c', 'Consum_Apply_Equipment_Set__r.Yi_Shipment_request__c','Inspection_Cnt_Jia__c','EquipmentManagementCode__c','ManagementCode__c','boxbarcodeforReceipt__c'};
+        return new List<String>{'Id', 'Asset__c','Consum_Apply__r.AccDealerBlacklist__c', 'DeliverySlip__c', 'Shippment_loaner_time__c', 'Consum_Apply__r.demo_purpose2__c', 'Consum_Apply__r.Shipment_requested_cnt__c', 'Shipment_Saved_Flg__c', 'Shipment_request_time2__c', 'Consum_Apply_Equipment_Set__r.Yi_Shipment_request__c','Inspection_Cnt_Jia__c','EquipmentManagementCode__c','ManagementCode__c','boxbarcodeforReceipt__c'};
     }
     //闅愯棌鐨勫瓧娈靛彧鑳芥樉绀猴紝涓嶈兘璧嬪��
     public override List<String> getHiddenFieldList() {
@@ -406,6 +406,12 @@
             }
             //add       wangweipeng              2022/01/28                   end
             **/
+
+            //璐告槗鍚堣 you
+            if(System.Label.TradeComplianceStatusFlagBP =='true' && caesd.Consum_Apply__r.AccDealerBlacklist__c == '1'){
+                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, System.Label.IFTradeComplianceAlertBP));
+                return ; 
+            }
             String guaranteen_end = '';
             if (caesd.Consumable_Guaranteen_end_F__c != null) {
                 guaranteen_end = caesd.Consumable_Guaranteen_end_F__c.format();                     
diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls
index c5364f7..0ba3bb5 100644
--- a/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls
+++ b/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls
@@ -186,6 +186,8 @@
                                         repair__r.Return_Without_Repair_Date__c,Repair__r.Repair_Final_Inspection_Date__c,Repair__r.Repair_Shipped_Date__c,
                                         Campaign__r.IF_Approved__c,
                                         Campaign__r.Meeting_Approved_No__c,
+                                        AccDealerBlacklist__c,//璐告槗鍚堣 you
+                                        EquipmentGuaranteeFlg__c,//璐告槗鍚堣 you
                                         Campaign__r.Approved_Status__c      //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀�
                                     from Rental_Apply__c 
                                     where id=:Raid];
@@ -193,7 +195,11 @@
         // 20230215 ljh DB202301265636 瀛︿細鍙栨秷鐢宠涔熸嫤鎴� start
         // if( RaTar.Campaign__r.Status == '鍙栨秷'){
         //         ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '瀛︿細宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔浜�'));
-        if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�' ){
+        //璐告槗鍚堣 you
+        if(System.Label.TradeComplianceStatusFlagBP =='true' && RaTar.AccDealerBlacklist__c == '1' && RaTar.EquipmentGuaranteeFlg__c==false){
+            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, System.Label.IFTradeComplianceAlertBP));
+            return null; 
+        }else if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�' ){
             String tempS = '';
             if(RaTar.Campaign__r.Status == '鍙栨秷'){
                 tempS = '宸插彇娑�';
diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls
index 72e4caf..000a7c2 100644
--- a/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls
+++ b/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls
@@ -205,6 +205,8 @@
         Rental_Apply__c RaTar = [select Campaign__c,Repair__c,next_action__c,QIS_number__r.ReplaceDeliveryDate__c,demo_purpose2__c,Follow_UP_Opp__r.Shipping_Finished_Day_Func__c,
                                                 Campaign__r.Status,repair__r.Return_Without_Repair_Date__c,Repair__r.Repair_Final_Inspection_Date__c,Repair__r.Repair_Shipped_Date__c,
                                                 Campaign__r.IF_Approved__c, Campaign__r.Meeting_Approved_No__c,
+                                                AccDealerBlacklist__c,//璐告槗鍚堣 you
+                                                EquipmentGuaranteeFlg__c,//璐告槗鍚堣 you
                                                 Campaign__r.Approved_Status__c      //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀�
                                             from Rental_Apply__c 
                                             where id=:Raid];
@@ -212,7 +214,11 @@
         // 20230215 ljh DB202301265636 瀛︿細鍙栨秷鐢宠涔熸嫤鎴� start
         // if( RaTar.Campaign__r.Status == '鍙栨秷'){
         //     ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '瀛︿細宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔浜�'));
-        if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�' ){
+         //璐告槗鍚堣 you
+        if(System.Label.TradeComplianceStatusFlagBP =='true' && RaTar.AccDealerBlacklist__c == '1' && RaTar.EquipmentGuaranteeFlg__c==false){
+            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, System.Label.IFTradeComplianceAlertBP));
+            return null; 
+        }else if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�' ){
             String tempS = '';
             if(RaTar.Campaign__r.Status == '鍙栨秷'){
                 tempS = '宸插彇娑�';
diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls
index ae50a30..3b6f55c 100644
--- a/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls
+++ b/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls
@@ -334,6 +334,10 @@
 
     // 淇濆瓨鎸夐挳
     public PageReference save() {
+        // 澶囧搧浼樺寲涓存椂楠岃瘉杩藉姞 20230409 lc Start
+        /*StaticParameter.EscapeVMCTrigger = true;
+        Oly_TriggerHandler.bypass('AssetHandler');*/
+        // 澶囧搧浼樺寲涓存椂楠岃瘉杩藉姞 20230409 lc End
 
         List<String> raids = Raid.split(':');
         //妫�鏌ユ槸鍚﹀彲浠ョ户缁�
@@ -346,6 +350,8 @@
                                                 ,Campaign__r.Approved_Status__c     // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀�
                                                 ,repair__r.Return_Without_Repair_Date__c
                                                 ,Repair__r.Repair_Final_Inspection_Date__c
+                                                ,AccDealerBlacklist__c//璐告槗鍚堣 you
+                                                ,EquipmentGuaranteeFlg__c//璐告槗鍚堣 you
                                                 ,Repair__r.Repair_Shipped_Date__c
                                             from Rental_Apply__c 
                                             where id in :raids];//20210602 ljh update 澧炲姞鏌ヨName SFDC-C3LBNL 
@@ -379,13 +385,18 @@
         String message6 = '';
         String message7 = '';// 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� end
         String message8 = '';//add lc 20220927 SFDC-CJ48VE 澶囧搧棰勮鍑哄簱鏃ラ�昏緫璋冩暣
+        String message9 = '';//璐告槗鍚堣 you
         // 瑕佸垽鏂喅瑁佺姸鎬佷笉鑳芥槸鑽夌/椹冲洖/缁堟鐢宠/鍙栨秷/鍒犻櫎
         List<String> statusList = System.Label.StatusProcessState.split(',');
         Map<Id, Rental_Apply__c> RaMap = new Map<Id, Rental_Apply__c>();
         for (Rental_Apply__c RaTar : RaTarList) {
             // 20230215 ljh DB202301265636 瀛︿細鍙栨秷鐢宠涔熸嫤鎴� start
             // if( RaTar.Campaign__r.Status == '鍙栨秷'){
-            if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�'){
+            //璐告槗鍚堣 you
+            if(System.Label.TradeComplianceStatusFlagBP =='true' && RaTar.AccDealerBlacklist__c == '1' && RaTar.EquipmentGuaranteeFlg__c==false){
+                errorFlag = true;
+                message9 += RaTar.Name+'銆�'; 
+            }else if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�'){
             // 20230215 ljh DB202301265636 瀛︿細鍙栨秷鐢宠涔熸嫤鎴� end
                 // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '瀛︿細宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔浜�'));
                 // return null;
@@ -486,6 +497,10 @@
             }
             // add lc 20220927 SFDC-CJ48VE 澶囧搧棰勮鍑哄簱鏃ラ�昏緫璋冩暣 end
 
+            if(String.isNotBlank(message9)){
+                message += '鍗曞彿No.'+ message9.removeEnd('銆�')+ System.Label.IFTradeComplianceAlertBP;
+            }
+
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,message));
             return null;
         }
@@ -575,6 +590,8 @@
                                         , Campaign__r.IF_Approved__c         // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀�
                                         , Campaign__r.Meeting_Approved_No__r.Name // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀�
                                         , Campaign__r.Approved_Status__c     // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀�
+                                        , Hospital__r.TradeComplianceStatus__c//璐告槗鍚堣 you
+                                        //, Outbound_TradeStatus__c//璐告槗鍚堣 you
                                         from Rental_Apply__c where Id in :raSet];
         Savepoint sp = Database.setSavepoint();
         try {
@@ -667,7 +684,7 @@
                     //wangweipeng   鏄惁鏄噸鐐逛骇鍝�       2021/08/30        start
                     ra.Is_keyPoint_Product__c = keyPointProduct.get(ra.Id);
                     //wangweipeng   鏄惁鏄噸鐐逛骇鍝�       2021/08/30        start
-
+                    //ra.Outbound_TradeStatus__c = ra.Hospital__r.TradeComplianceStatus__c;//璐告槗鍚堣 you
                     // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� update start
                     //20220217 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 No.4 鍑哄簱鎴愬姛鏃讹紝鎶婃鏃剁偣鐨勫喅瑁佺紪鍙峰拰鍐宠鐘舵�佸啓鍒板喅瑁佺紪鍙凤紙鍑哄簱锛夊拰鍐宠鐘舵�侊紙鍑哄簱锛変笂
                     // if (!campMap.isEmpty() && campMap.containsKey(ra.Campaign__c) && campMap.get(ra.Campaign__c).IF_Approved__c){
diff --git a/force-app/main/default/classes/LogAutoSendBatch.cls b/force-app/main/default/classes/LogAutoSendBatch.cls
index edbc062..b9477d8 100644
--- a/force-app/main/default/classes/LogAutoSendBatch.cls
+++ b/force-app/main/default/classes/LogAutoSendBatch.cls
@@ -3,8 +3,13 @@
     private String typeNFM;
     private String messageGroupNumber;
     private Datetime times;
-    private Boolean isForecast;// 20220318 ljh SWAG-CC54R2 add
+    private Boolean isForecast;// 20220318 ljh SWAG-CC54R2 add  
     private String loginId;
+
+     //20230203 lt 璁″垝鐨勪綔涓氫紭鍖�  涓�灏忔椂涓ゆ start
+     // private BatchEmailUtil.ScBean scB1;
+     //20230203 lt 璁″垝鐨勪綔涓氫紭鍖�  涓�灏忔椂涓ゆ end
+
     /**
      * 銈炽兂銈广偪銉炽儓
      */
@@ -38,6 +43,16 @@
      */
     public Integer max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
     global Database.QueryLocator start(Database.BatchableContext BC) {
+
+        //20230203 lt 璁″垝鐨勪綔涓氫紭鍖�  涓�灏忔椂涓ゆ start
+        /*scB1 = BatchEmailUtil.setSc1('LogAutoSendSchedule', 0, 23, 0, '0 30 *', null);
+        if (System.Test.isRunningTest() == false) {
+            for(CronTrigger ct : [SELECT Id FROM CronTrigger WHERE CronJobDetail.Name =: scB1.scName]) {
+                System.abortJob(ct.Id);
+            }
+            system.schedule(scB1.scName, scB1.scTime, new LogAutoSendSchedule());
+        }*/
+        //20230203 lt 璁″垝鐨勪綔涓氫紭鍖�  涓�灏忔椂涓ゆ end
 
         String profileId = UserInfo.getProfileId();
         // 20220318 ljh SWAG-CC54R2 add start
@@ -101,12 +116,15 @@
                  retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
                  FROM BatchIF_Log__c
                  WHERE RowDataFlg__c = true
+                 // AND Unexecuted__c > 0 // 2023-4-10   ZYH   ADD
                                          AND Type__c != 'NFM007'  // 2023-01-18   ZYH   ADD
                                         AND ((retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt)
                                             OR (NFM501Future_Count__c != null
                                                 AND NFM501Future_Count__c > 0 AND NFM501Future_Count__c < : max_cnt)
                                             OR(NFM501_Web_Annex_Count__c != null
-                                               AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt))]
+                                               AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt)
+                                            OR Unexecuted__c > 0 // 2023-4-10   ZYH   ADD
+                                            )]
                 );
         }else {
             return Database.getQueryLocator(
@@ -115,12 +133,15 @@
                  retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
                  FROM BatchIF_Log__c
                  WHERE RowDataFlg__c = true
+                 // AND Unexecuted__c > 0 // 2023-4-10   ZYH   ADD
                                          AND Type__c != 'NFM007'  // 2023-01-18   ZYH   ADD
                                         AND ((retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt)
                                             OR (NFM501Future_Count__c != null
                                                 AND NFM501Future_Count__c > 0 AND NFM501Future_Count__c < : max_cnt)
                                             OR(NFM501_Web_Annex_Count__c != null
-                                               AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt))
+                                               AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt)
+                                            OR Unexecuted__c > 0 // 2023-4-10   ZYH   ADD
+                                            )
                                        AND ownerId = : UserInfo.getUserId()
                                        ORDER BY CreatedDate // 2023-02-04   ZYH   ADD
                                        ]
@@ -248,6 +269,11 @@
             if (strType_c == 'NFM207') {
                 NFM207Controller.execute(rowData, null);
             }
+            // 璐告槗鍚堣 you 20230321 start
+            if (strType_c == 'NFM209') {
+                NFM209Rest.main(rowData.Id);
+            }
+            // 璐告槗鍚堣 you 20230321  end
             if (strType_c == 'NFM009') {
                 NFM009Controller.execute(rowData, null);
             }
@@ -302,6 +328,11 @@
             if (strType_c == 'NFM612') {
                 NFM612Rest.main(rowData.Id);
             }
+            // 2023-3-6   zyh   add   鎶ヤ慨瀛愬崟鍙戦�佹帴鍙f祴璇曠敤
+            /*if (strType_c == 'NFM612S') {
+                NFM612Controller.ManualExecute(rowData.Id);
+            }*/
+            // 2023-3-6   zyh   add   鎶ヤ慨瀛愬崟鍙戦�佹帴鍙f祴璇曠敤
             if (strType_c == 'NFM620') {
                 NFM620Rest.main(rowData.Id);
             }
@@ -519,6 +550,8 @@
     }
 
     global void finish(Database.BatchableContext BC) {
+        // BatchEmailUtil.removeOtherSc('LogAutoSendSchedule', scB1.scName);  //20230203 lt 璁″垝鐨勪綔涓氫紭鍖�
+
         // 浠婂洖銇倓銈嬨亾銇ㄣ仾銇勩仹銇�
         // 20220318 ljh SWAG-CC54R2 add start
         if(String.isNotBlank(typeNFM) && typeNFM == 'NFM010' && isForecast){
diff --git a/force-app/main/default/classes/NFM209Rest.cls b/force-app/main/default/classes/NFM209Rest.cls
new file mode 100644
index 0000000..7149bd5
--- /dev/null
+++ b/force-app/main/default/classes/NFM209Rest.cls
@@ -0,0 +1,182 @@
+/**********************************************************************
+ * 
+ *
+ * @url: /services/apexrest/NFM209/execute
+ * 
+ * 
+*************************************************************************/
+@RestResource(urlMapping='/NFM209/*')
+global with sharing class NFM209Rest {
+    //鏂板NFM209Rest 鍚堣鐘舵��  you start
+  
+    global class GeDatas {
+        public NFMUtil.Monitoring Monitoring;
+        public  GeData[] GeData;
+    }
+
+    global class GeData {
+        public String custCode;                    // 瀹㈡埛绠$悊缂栫爜
+        public String complStatus;                 // 闆跺悎瑙勭姸鎬�
+        public String orgSysId;                    // 鍙戣捣绯荤粺
+        public String glbBusiNo;                   // 鎶ユ枃娴佹按鍙�
+        public String custTp;                      // 瀵硅薄绫诲瀷
+        public String entityTp;                    // 瀹炰綋绫诲瀷
+        public String custName;                    // 瀹㈡埛鍚嶇О
+       
+    }
+
+    @HttpPost
+    global static void execute() {
+
+        // 鍙栧緱鎺ュ彛浼犺緭鍐呭
+        String strData = RestContext.request.requestBody.toString();
+        GeDatas ges = (GeDatas) JSON.deserializeStrict(strData, GeDatas.class);
+        system.debug('rquest----'+strData);
+        if (ges == null ) {
+            return;
+        }
+
+        NFMUtil.Monitoring Monitoring = ges.Monitoring;
+        if (Monitoring == null) {
+            return;
+        }
+
+        BatchIF_Log__c rowData = NFMUtil.saveRowData(Monitoring, 'NFM209', ges.GeData);
+        if (String.isBlank(rowData.Log__c) == false) {
+            executefuture(rowData.Id);
+        }
+
+        // JSON銈掓埢銇�
+        RestResponse res = RestContext.response;
+        res.addHeader('Content-Type', 'application/json');
+        res.statusCode = 200;
+        String jsonResponse = '{"Result": {"Result": "00", "Message":""}}';
+        res.responseBody = blob.valueOf(jsonResponse);
+        return;
+    }
+
+    @future
+    global static void executefuture(String rowData_Id) {
+        main(rowData_Id);
+    }
+
+    global static void main (String rowData_Id) {
+    	Map<String, String> transferMap = new Map<String, String>();
+        List<BatchIF_Transfer__c> transferList = [select Table__c,
+                                  Column__c,
+                                  External_value__c,
+                                  Internal_value__c
+                                  from BatchIF_Transfer__c
+                                  where Dropped_Flag__c = false
+                                          and (Table__c = 'Account')
+                                          ];
+        for (BatchIF_Transfer__c t : transferList) {
+            transferMap.put(t.Column__c + t.External_value__c, t.Internal_value__c);
+        }
+
+
+        Integer batch_retry_max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
+        BatchIF_Log__c rowData = [Select Id, Name, retry_cnt__c, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c, Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c from BatchIF_Log__c where RowDataFlg__c = true and Id = :rowData_Id];
+        String logstr = rowData.MessageGroupNumber__c + ' start\n';
+        BatchIF_Log__c iflog = new BatchIF_Log__c();
+        iflog.Type__c = 'NFM209';
+        iflog.MessageGroupNumber__c = rowData.MessageGroupNumber__c;
+        iflog.Log__c = logstr;
+        iflog.ErrorLog__c = '';
+        insert iflog;
+
+        String rowDataStr = NFMUtil.getRowDataStr(rowData);
+        List<GeData> geDataList = (List<GeData>) JSON.deserialize(rowDataStr, List<GeData>.class);
+
+        if (geDataList == null || geDataList.size() == 0) {
+            return;
+        }
+
+        Savepoint sp = Database.setSavepoint();
+
+        try {
+            List<Account> accInsList = new List<Account>();
+
+            //灏嗗鎴风鐞嗙紪鐮併�佸悎瑙勭姸鎬佸瓨鍏ist
+            List<String> custCodeList = new List<String>();
+            List<String> complStatusList = new List<String>();
+            
+            for (GeData geData : geDataList) {
+                if (String.isBlank(geData.custCode)) {
+                    iflog.ErrorLog__c += '绠$悊缂栫爜涓嶈兘涓虹┖銆俓n';
+                    continue;
+                } else {
+                    custCodeList.add(geData.custCode);
+                }
+
+                if (String.isBlank(geData.complStatus)) {
+                    iflog.ErrorLog__c += geData.custCode+':鍚堣鐘舵�佷负绌恒�俓n';
+                    continue;
+                } 
+                
+            }
+            
+            //瀹㈡埛绠$悊缂栫爜鍜屽悎瑙勭姸鎬佹棩鏈熷瓨鍏ap
+            Map<String, Account> accInfoMap = new Map<String, Account>();
+            if (custCodeList.size() > 0) {
+                List<Account> accList = [select ID,Parent_Management_CodeClean__c,TradeComplianceStatus__c  from Account where Parent_Management_CodeClean__c in :custCodeList and (RecordType.DeveloperName = 'HP' or RecordType.DeveloperName = 'Agency')];
+                if (accList.size() > 0) {
+                    for (Account accInfo : accList) {
+                        accInfoMap.put(accInfo.Parent_Management_CodeClean__c, accInfo);
+                    }
+                }
+            }
+            
+            // 灏哫ML鐨勫悎瑙勭姸鎬佸瓨鍏ュ鎴峰璞′腑
+            for (GeData geData : geDataList) {
+                    
+                Account acc = new Account();
+                if (!accInfoMap.containsKey(geData.custCode)){
+                	iflog.ErrorLog__c += '瀹㈡埛绠$悊缂栫爜:' +geData.custCode +'锛氭湭鎵惧埌銆俓n';
+                	continue;
+                }
+                acc.Id = (accInfoMap.get(geData.custCode)).ID;            
+                acc.TradeComplianceStatus__c = NFMUtil.getMapValue(transferMap, 'TradeComplianceStatus__c', string.valueof(geData.complStatus), iflog);             //鍚堣鐘舵��
+                
+                accInsList.add(acc);
+                logstr += '瀹㈡埛绠$悊缂栫爜:' +geData.custCode +'锛氳幏鍙栨垚鍔熴�俓n';
+
+            }
+
+            if (accInsList.size() > 0) {
+                upsert accInsList;
+                logstr += '鏇存柊鎴愬姛銆俓n';
+            }
+
+            logstr += '\nend';
+            rowData.retry_cnt__c = 0;
+
+        } catch (Exception ex) {
+            // 銈ㄣ儵銉笺亴鐧虹敓銇椼仧鍫村悎
+            Database.rollback(sp);
+            System.debug(Logginglevel.ERROR, 'NFM209_' + rowData.MessageGroupNumber__c + ':' + ex.getMessage());
+            System.debug(Logginglevel.ERROR, 'NFM209_' + rowData.MessageGroupNumber__c + ':' + ex.getStackTraceString());
+            logstr += '\n' + ex.getMessage();
+            iflog.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + iflog.ErrorLog__c;
+            if (rowData.retry_cnt__c == null) rowData.retry_cnt__c = 0;
+            if (rowData.retry_cnt__c < batch_retry_max_cnt) {
+                rowData.retry_cnt__c++;
+                LogAutoSendSchedule.assignOneMinute();
+            }
+            if (rowData.retry_cnt__c >= batch_retry_max_cnt) {
+                rowData.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + rowData.ErrorLog__c + '閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
+            }
+        }
+
+        update rowData;
+        iflog.Log__c = logstr;
+        if (iflog.Log__c.length() > 131072) {
+            iflog.Log__c = iflog.Log__c.subString(0, 131065) + ' ...';
+        }
+        if (iflog.ErrorLog__c.length() > 32768) {
+            iflog.ErrorLog__c = iflog.ErrorLog__c.subString(0, 32760) + ' ...';
+        }
+        update iflog;
+    }
+    //鏂板NFM209Rest 鍚堣鐘舵�� you end
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/NFM209Rest.cls-meta.xml b/force-app/main/default/classes/NFM209Rest.cls-meta.xml
new file mode 100644
index 0000000..91b23b8
--- /dev/null
+++ b/force-app/main/default/classes/NFM209Rest.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+    <apiVersion>46.0</apiVersion>
+    <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/NFM209RestTest.cls b/force-app/main/default/classes/NFM209RestTest.cls
new file mode 100644
index 0000000..8e175eb
--- /dev/null
+++ b/force-app/main/default/classes/NFM209RestTest.cls
@@ -0,0 +1,88 @@
+@isTest
+public with sharing class NFM209RestTest {
+     static testMethod void testMethod1() {
+        // 銉嗐偣銉堛儑銉笺偪
+        List<BatchIF_Transfer__c> transfers = new List<BatchIF_Transfer__c>();
+        BatchIF_Transfer__c transfer = new BatchIF_Transfer__c();
+        transfer.Table__c          = 'Account';
+        transfer.Column__c         = 'TradeComplianceStatus__c';
+        transfer.External_Value__c = 'W';
+        transfer.Internal_Value__c = '鐧藉悕鍗�';
+        transfers.add(transfer);
+        transfer = new BatchIF_Transfer__c();
+        transfer.Table__c          = 'Account';
+        transfer.Column__c         = 'TradeComplianceStatus__c';
+        transfer.External_Value__c = 'B';
+        transfer.Internal_Value__c = '榛戝悕鍗�';
+        transfers.add(transfer);
+        insert transfers;
+        
+        // 銉嗐偣銉堛儑銉笺偪
+        Account company = new Account();
+        company.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId();
+        company.Name         = 'NFM209TestCompany';
+        upsert company;
+        Account section = new Account();
+        section.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_Class_GI').getRecordTypeId();
+        section.Name         = '*';
+        section.Department_Class_Label__c = '娑堝寲绉�';
+        section.ParentId                  = company.Id;
+        section.Hospital_Department_Class__c = company.Id;
+        upsert section;
+
+        StaticParameter.EscapeSyncProduct2Trigger = true;
+        StaticParameter.EscapeAccountTrigger = true;
+        Account depart = new Account();
+        depart.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_GI').getRecordTypeId();
+        depart.Name         = '*';
+        depart.Department_Name__c  = 'NFM209TestDepart';
+        depart.ParentId            = section.Id;
+        depart.Department_Class__c = section.Id;
+        depart.Hospital__c         = company.Id;
+        upsert depart;
+
+        company = [select Id, Name,Management_Code_Auto__c from Account
+                                where Id = :company.Id];
+        NFM209Rest.GeDatas GeDatas = new NFM209Rest.GeDatas();
+        NFM209Rest.GeData GeData = new NFM209Rest.GeData();
+        GeDatas.GeData = new NFM209Rest.GeData[]{GeData};
+
+        Datetime nowDT = Datetime.now();
+        String nowStr = nowDT.format('yyyyMMddHHmm');
+        GeDatas.Monitoring = new NFMUtil.Monitoring();
+        GeDatas.Monitoring.MessageGroupNumber = nowStr + '01';
+
+
+        GeData.custCode = company.Management_Code_Auto__c;                 
+        GeData.complStatus = 'B';                 
+        GeData.orgSysId='123';                   
+        GeData.glbBusiNo='123';                  
+        GeData.custTp='123';                      
+        GeData.entityTp='123';                  
+        GeData.custName='123';                    
+        //System.Test.startTest();
+        NFMUtil.Monitoring Monitoring = GeDatas.Monitoring;
+        BatchIF_Log__c rowData = NFMUtil.saveRowData(Monitoring, 'NFM209', GeDatas.GeData);
+        NFM209Rest.executefuture(rowData.Id);
+
+        rowData = NFMUtil.saveRowData(Monitoring, 'NFM209', GeDatas.GeData);
+        NFM209Rest.executefuture(rowData.Id);
+}
+ static testMethod void testMethod2() {
+    	//Test.startTest();
+        
+        RestRequest req = new RestRequest();
+        RestResponse res = new RestResponse();
+
+        String JsonMsg = '{"Monitoring":{"TransmissionDateTime":"201812201320","Text":"","Tag":"MSGH","Sender":"SAP","Receiver":"SFDC","NumberOfRecord":"1","MessageType":"NFM117","MessageGroupNumber":"20210000005088"},"GeData":[{"custCode":"8098008","complStatus":"榛戝悕鍗�","orgSysId":"00987","glbBusiNo":"001","custTp":"Person","entityTp":"缁忛攢鍟�","custName":"澶ц繛涓滄帶鐫垮悍鍖荤枟绠$悊鏈夐檺鍏徃"}]}';
+        req.requestURI = 'services/apexrest/NFM209/execute';
+        req.httpMethod = 'POST';
+        req.requestBody = Blob.valueof(JsonMsg);
+        RestContext.request = req;
+        RestContext.response= res;
+
+        NFM209Rest.execute();
+
+        //Test.stopTest();
+    }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/NFM209RestTest.cls-meta.xml b/force-app/main/default/classes/NFM209RestTest.cls-meta.xml
new file mode 100644
index 0000000..91b23b8
--- /dev/null
+++ b/force-app/main/default/classes/NFM209RestTest.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+    <apiVersion>46.0</apiVersion>
+    <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/OpportunityWebService.cls b/force-app/main/default/classes/OpportunityWebService.cls
index b2e568e..d5bd86b 100644
--- a/force-app/main/default/classes/OpportunityWebService.cls
+++ b/force-app/main/default/classes/OpportunityWebService.cls
@@ -416,4 +416,169 @@
         return true;
     }
     //SWAG-CG88AG銆愬鎵樸�戞彁鍑轰环鏍肩敵璇锋槸鍦ㄥ崗璁湁鏁堟湡鍐咃紝鍏佽WIN fy end 
+
+    //璐告槗鍚堣 20230307 you start
+    //钀ヤ笟鎷︽埅鎻愰啋
+    WebService static Boolean accSendEmail(String  AccDealerBlacklist,String accname,String angency1,String angency2,String ownerids,String ddid,String oppid) {
+      //鍙戦�侀偖浠�
+        List<Messaging.SingleEmailMessage> sendMails = new List<Messaging.SingleEmailMessage>();
+        List<String>  MailsList = new List<String>();
+        List<String> userIdList = new List<String>();
+        if(String.isNotBlank(ownerids)){
+            userIdList.add(ownerids);
+        }
+        if(String.isNotBlank(ddid)){
+            userIdList.add(ddid);
+        }
+         //璇环鎵�鏈変汉锛屼骇鍝佹媴褰擄紝鍙戦偖浠�
+        List<User> UsrList = [SELECT email FROM user WHERE id in :userIdList]; 
+        //鑾峰彇鍚勪釜鐢ㄦ埛鐨別mail
+        for (User u : UsrList){
+            MailsList.add(u.email);
+        }
+        system.debug('111===:'+MailsList);
+        if (MailsList!=null&&MailsList.size()>0){
+            String title = '';
+            String body = '';
+            title = ' 鏂板缓璇环鍖婚櫌/缁忛攢鍟嗘秹鍙婇粦鍚嶅崟';
+            if(AccDealerBlacklist=='123'){
+                body += '榛戝悕鍗曠殑瀹㈡埛涓猴細' + accname+ '<br/>';
+                body += '榛戝悕鍗曠殑缁忛攢鍟�1涓猴細' + angency1+ '<br/>';
+                body += '榛戝悕鍗曠殑缁忛攢鍟�2涓猴細' + angency2+ '<br/>';
+            }else if(AccDealerBlacklist=='12'){
+                body += '榛戝悕鍗曠殑瀹㈡埛涓猴細' + accname+ '<br/>';
+                body += '榛戝悕鍗曠殑缁忛攢鍟�1涓猴細' + angency1+ '<br/>';
+            }else if(AccDealerBlacklist=='23'){
+                body += '榛戝悕鍗曠殑缁忛攢鍟�1涓猴細' + angency1+ '<br/>';
+                body += '榛戝悕鍗曠殑缁忛攢鍟�2涓猴細' + angency2+ '<br/>';
+            }else if(AccDealerBlacklist=='13'){
+                body += '榛戝悕鍗曠殑瀹㈡埛涓猴細' + accname+ '<br/>';
+                body += '榛戝悕鍗曠殑缁忛攢鍟�2涓猴細' + angency2+ '<br/>';
+            }else if(AccDealerBlacklist=='1'){
+                body += '榛戝悕鍗曠殑瀹㈡埛涓猴細' + accname+ '<br/>';
+            }else if(AccDealerBlacklist=='2'){
+                body += '榛戝悕鍗曠殑缁忛攢鍟�1涓猴細' + angency1+ '<br/>';
+            }else if(AccDealerBlacklist=='3'){
+                body += '榛戝悕鍗曠殑缁忛攢鍟�2涓猴細' + angency2+ '<br/>';
+            }
+           
+            body += '<a href="' + System.Label.Environment_Url + oppid + '">'
+                    + System.Label.Environment_Url+ oppid +'</a><br/>'; 
+            body += '璋㈣阿锛�';
+  
+            Messaging.SingleEmailMessage messageNEW = new Messaging.SingleEmailMessage();
+            messageNEW.setSubject(title);
+            messageNEW.setHtmlBody(body);
+            messageNEW.setCharset('UTF-8');
+            messageNEW.setToAddresses(MailsList); 
+
+            //List<String> toCcMailsList = new List<String>();
+            //toCcMailsList.add('youchang@prec-tech.com');
+            //messageNEW.setCcAddresses(toCcMailsList); 
+            
+            sendMails.add(messageNEW);
+
+        }                      
+            
+        boolean rs = true;
+        if (sendMails.size() > 0) {
+            Messaging.Email[] allMails = new Messaging.Email[]{};
+            for(Integer j = 0; j < sendMails.size(); j++) {
+                allMails.add(sendMails.get(j));
+            }
+            system.debug('222===:'+allMails);
+        
+            Messaging.SendEmailResult[] results = Messaging.sendEmail(allMails);
+            System.debug('results 缁撴灉 :'+results);
+            for (Integer i = 0; i < results.size(); i++) {
+                if (results[i].success == false) {
+                    system.debug('=====send mail error:' + results[i].errors[0].message);
+                    rs = false;
+                }   
+            }
+        }
+        return rs;
+    }
+    //鏈嶅姟鎷︽埅鎻愰啋 
+    //銆愭柊寤鸿浠枫�戞鏌ョ偣浠呴�氱煡鍚堝悓缁� sendalert=Main_Con 
+    //銆愭姤浠稤ecide銆戞鏌ョ偣閭欢閫氱煡浜哄憳锛氬悎鍚岀粍銆丗SE棰嗗銆佹湇鍔″姪鐞�(鏍囩) sendalert=decide_con
+    WebService static Boolean accSendEmailFW(String  AccDealerBlacklist,String accname,String angency,String mcid,String sendalert,String[] FSEStr) {
+      //鍙戦�侀偖浠�
+        List<Messaging.SingleEmailMessage> sendMails = new List<Messaging.SingleEmailMessage>();
+        List<String>  MailsList = new List<String>();
+        List<String> userIdList = new List<String>();
+        //鍚堝悓缁�
+        List<GroupMember> groupmemberList = [SELECT GroupId,Id,UserOrGroupId FROM GroupMember where Group.DeveloperName = 'TradeComplianceGroup'];
+        Set<String> GroupMap = new Set<String>();
+        List<GroupMember> gmInsertList = new List<GroupMember>();
+        if(groupmemberList != null && groupmemberList.size()>0){
+            for (GroupMember gm : groupmemberList) {
+               GroupMap.add(gm.UserOrGroupId);
+            }
+        }
+        
+         //璇环鎵�鏈変汉锛屼骇鍝佹媴褰擄紝鍙戦偖浠�
+        List<User> UsrList = [SELECT email FROM user WHERE id in :GroupMap or id in :FSEStr]; 
+        //鑾峰彇鍚勪釜鐢ㄦ埛鐨別mail
+        for (User u : UsrList){
+            MailsList.add(u.email);
+        }
+        ////decide 杩涙潵鏈嶅姟鍔╃悊 6涓汉 
+        //if(sendalert=='decide_con'){
+        //    String toEmailAddress = System.Label.TradeComplianceStatusSendEmailFW;  
+        //    String[] toAddresses = toEmailAddress.split(',');
+        //    for(String toa:toAddresses){
+        //       MailsList.add(toa); 
+        //    }
+        //}
+
+        //MailsList.add('youchang@prec-tech.com');
+
+        system.debug('111===:'+MailsList);
+        if (MailsList!=null&&MailsList.size()>0){
+            String title = '';
+            String body = '';
+            title = '鍖婚櫌/缁忛攢鍟嗘秹鍙婇粦鍚嶅崟';
+            String accname1 = accname==null ? '' :accname;
+            String angency1 = angency==null ? '' :angency;
+            if(AccDealerBlacklist=='1' || AccDealerBlacklist=='intercept'){
+                body += '榛戝悕鍗曠殑瀹㈡埛涓猴細' + accname1 + '<br/>';
+                body += '榛戝悕鍗曠殑缁忛攢鍟嗕负锛�' + angency1 + '<br/>';
+            }
+           
+            body += '<a href="' + System.Label.Environment_Url + mcid + '">'
+                    + System.Label.Environment_Url+ mcid +'</a><br/>'; 
+            body += '璋㈣阿锛�';
+  
+            Messaging.SingleEmailMessage messageNEW = new Messaging.SingleEmailMessage();
+            messageNEW.setSubject(title);
+            messageNEW.setHtmlBody(body);
+            messageNEW.setCharset('UTF-8');
+            messageNEW.setToAddresses(MailsList); 
+            
+            sendMails.add(messageNEW);
+
+        }                      
+            
+        boolean rs = true;
+        if (sendMails.size() > 0) {
+            Messaging.Email[] allMails = new Messaging.Email[]{};
+            for(Integer j = 0; j < sendMails.size(); j++) {
+                allMails.add(sendMails.get(j));
+            }
+            system.debug('222===:'+allMails);
+        
+            Messaging.SendEmailResult[] results = Messaging.sendEmail(allMails);
+            System.debug('results 缁撴灉 :'+results);
+            for (Integer i = 0; i < results.size(); i++) {
+                if (results[i].success == false) {
+                    system.debug('=====send mail error:' + results[i].errors[0].message);
+                    rs = false;
+                }   
+            }
+        }
+        return rs;
+    }
+    //璐告槗鍚堣 20230307 you end
+
 }
\ No newline at end of file
diff --git a/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls b/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls
index 55e2639..37c4239 100644
--- a/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls
+++ b/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls
@@ -52,6 +52,7 @@
                          + ', Campaign__r.IF_Approved__c' // 20220315 ljh add
                          + ', Campaign__r.Meeting_Approved_No__r.Name' // 20220315 ljh add 
                          + ', Campaign__r.Approved_Status__c' // 20220315 ljh add 
+                         //+ ', Hospital__r.TradeComplianceStatus__c' // 璐告槗鍚堣 you 
                          + ' FROM Rental_Apply__c'
                          + ' WHERE Id=\'' + taId + '\'';
             List<Rental_Apply__c>  raList = (List<Rental_Apply__c>) Consum_ApplyUtil.withoutQueryList(rasql);
@@ -450,6 +451,8 @@
                  , demo_purpose2__c //1822 yc 20211025 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱
                  , Follow_UP_Opp__r.Shipping_Finished_Day_Func__c //1822 yc 20211025 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱
                  , next_action__c //1822 yc 20211108
+                 ,AccDealerBlacklist__c//璐告槗鍚堣 you
+                 ,EquipmentGuaranteeFlg__c//璐告槗鍚堣 you
                  , QIS_number__r.ReplaceDeliveryDate__c //1822 yc 20211108
               FROM Rental_Apply__c
              WHERE id =:taId
@@ -458,7 +461,11 @@
             // 20230215 ljh DB202301265636 瀛︿細鍙栨秷鐢宠涔熸嫤鎴� start
             // if( RaTar.Campaign__r.Status == '鍙栨秷'){
             //     ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '瀛︿細宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔浜�'));
-            if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�' ){
+             //璐告槗鍚堣 you
+            if(System.Label.TradeComplianceStatusFlagBP =='true' && RaTar.AccDealerBlacklist__c == '1' && RaTar.EquipmentGuaranteeFlg__c==false){
+                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, System.Label.IFTradeComplianceAlertBP));
+                return false; 
+            }else if( RaTar.Campaign__r.Status == '鍙栨秷' || RaTar.Campaign__r.Status == '鍙栨秷鐢宠涓�' ){
                 String tempS = '';
                 if(RaTar.Campaign__r.Status == '鍙栨秷'){
                     tempS = '宸插彇娑�';
@@ -1938,6 +1945,7 @@
                 ra.DeliverySlip__c = slip.Id;
                 ra.Delivery_Agency__c = parentObj.Delivery_Agency__c; 
                 ra.Agency_Address_Id__c = addressId;
+                //ra.Outbound_TradeStatus__c = parentObj.Hospital__r.TradeComplianceStatus__c;//璐告槗鍚堣 you
                 // 20210624 ljh update SFDC-C448GR end
 
                 //20220217 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 No.4 鍑哄簱鎴愬姛鏃讹紝鎶婃鏃剁偣鐨勫喅瑁佺紪鍙峰拰鍐宠鐘舵�佸啓鍒板喅瑁佺紪鍙凤紙鍑哄簱锛夊拰鍐宠鐘舵�侊紙鍑哄簱锛変笂
diff --git a/force-app/main/default/classes/SelectAssetEstimateURFController.cls b/force-app/main/default/classes/SelectAssetEstimateURFController.cls
index 8b0bb45..98faa81 100644
--- a/force-app/main/default/classes/SelectAssetEstimateURFController.cls
+++ b/force-app/main/default/classes/SelectAssetEstimateURFController.cls
@@ -1532,6 +1532,12 @@
                         ,URF_LastMContract1_NO__c,URF_LastMContract2_NO__c,URF_LastMContract3_NO__c,URF_LastMContract4_NO__c,URF_LastMContract5_NO__c
                         ,URF_LastMContract1_ConCount__c,URF_LastMContract2_ConCount__c,URF_LastMContract3_ConCount__c,URF_LastMContract4_ConCount__c,URF_LastMContract5_ConCount__c
                         // URF闄愭鍚堝悓2鏈� LY 20220811 end
+                        //璐告槗鍚堣 you start
+                        ,Maintenance_Contract__r.AccDealerBlacklist__c 
+                        ,Maintenance_Contract__r.Hospital__r.Name
+                        ,Maintenance_Contract__r.Dealer__r.Name
+                        ,CreatedById
+                        //璐告槗鍚堣 you end
                          FROM Maintenance_Contract_Estimate__c WHERE Id = :this.targetEstimateId];
         //HWAG-B399Q8 2018/08/20  娣诲姞涓�棰濆瀛楁 IS_Clone_After_Decide__c end
         decimal PriceSum =  (this.estimate.Maintenance_Contract__r.Payment_Plan_Sum_First__c == null ? 0 : this.estimate.Maintenance_Contract__r.Payment_Plan_Sum_First__c) +
@@ -3413,6 +3419,29 @@
         return new PageReference('/' + this.targetEstimateId + '/e?completion=4');
     
     }
+    //璐告槗鍚堣 you start
+    public PageReference interceptsend(){
+        //String BuchangApprovalManager = this.estimate.BuchangApprovalManager__c;
+        //String JingliApprovalManager = this.estimate.JingliApprovalManager__c;
+        String fseid = this.estimate.CreatedById;
+        String AccDealerBlacklist = this.estimate.Maintenance_Contract__r.AccDealerBlacklist__c;
+        String accname = this.estimate.Maintenance_Contract__r.Hospital__r.Name;
+        String deaname = this.estimate.Maintenance_Contract__r.Dealer__r.Name;
+        //FSE棰嗗
+        String[] FSEStr = new String[] {};
+        //if(String.isNotBlank(BuchangApprovalManager)){
+        //    FSEStr.add(BuchangApprovalManager);
+        //}
+        //if(String.isNotBlank(JingliApprovalManager)){
+        //    FSEStr.add(JingliApprovalManager);
+        //}
+        FSEStr.add(fseid);
+        system.debug('==jinlaile====='+FSEStr);
+        Boolean reflag = OpportunityWebService.accSendEmailFW(AccDealerBlacklist,accname,deaname,this.targetEstimateId,'decide_con',FSEStr);
+        system.debug('==fawanle====='+FSEStr);
+        return null;
+    }
+    //璐告槗鍚堣 you end
     
     /**
      * Process鐢ㄣ伄銉︺兗銈躲兗鎯呭牨銈掋偦銉冦儓銆佹柊瑕忚绌嶃倐銈婃檪鐢�
@@ -4170,7 +4199,8 @@
     
     // 2021-02-07  gzw add  LJPH-BWY5QB start
     private void setEndUserType(String id) {
-        this.contract = [SELECT Id, Name, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
+        //璐告槗鍚堣 you 20230414 鍔犳煡璇ccDealerBlacklist__c
+        this.contract = [SELECT Id, Name,AccDealerBlacklist__c, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
                          Estimate_Num__c, Management_Code__c, Hospital__c,
                          Hospital__r.MaintenanceContractUserType__c,
                          Contract_Start_Date__c, Contract_End_Date__c
@@ -4183,7 +4213,8 @@
     // 2021-02-07  gzw add  LJPH-BWY5QB end
     
     private void setContractInfo(String id) {
-        this.contract = [SELECT Id, Name, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
+        //璐告槗鍚堣 you 20230414 鍔犳煡璇ccDealerBlacklist__c
+        this.contract = [SELECT Id, Name,AccDealerBlacklist__c, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
                          Estimate_Num__c, Management_Code__c, Hospital__c,
                          //2021-01-18  mzy add  LJPH-BWY5QB   瀹㈡埛涓婄殑 缁翠慨鍚堝悓鐢ㄦ埛绫诲瀷 涓簍rue /false,鎶ヤ环 鐢ㄦ埛绫诲瀷涓� 鏃㈡湁鐢ㄦ埛 / 鏂扮敤鎴�
                          // Hospital__r.MaintenanceContractUserType__c,
diff --git a/force-app/main/default/classes/SelectAssetEstimateVMController.cls b/force-app/main/default/classes/SelectAssetEstimateVMController.cls
index 1df5be2..6a4fa24 100644
--- a/force-app/main/default/classes/SelectAssetEstimateVMController.cls
+++ b/force-app/main/default/classes/SelectAssetEstimateVMController.cls
@@ -18,6 +18,11 @@
     public Boolean printAgent { get; private set; }
     public boolean inDicideFlag {get; set;}                         //浣滀负琛ュ厖锛屽搴旀姤浠峰喅瀹氫箣鍚庯紝鍗存湭鑳借鍚堝悓璧锋鏃ユ湡浼犻�掔粰鍚堝悓鐨勯棶棰�
     public String isPaymentSet {get; set;}
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start 
+    // public Boolean Is_Blank_period {get; set;}
+    // public String Cost_rate_ForecastF{get;set;}
+    // public String PastContractendday{get;set;}
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end 
     //public String PaymentSet {get;set;}
     // 寮曟暟銇偟銉笺儞銈瑰绱勩伄鎯呭牨銈掓牸绱嶃仚銈嬨��
     public Maintenance_Contract__c contract { get; private set; }
@@ -121,8 +126,9 @@
     public Boolean disableEmailBtn { get; set; }
     public Boolean sendEmailSuccess { get; set; }
     public Boolean hasSendEmail { get; set; }
-
-
+    // 涓婇檺鍚堝悓 hql 20230216 start
+    public Boolean isLimitPrice { get; set; }
+    // 涓婇檺鍚堝悓 hql 20230216 end
     public Boolean isNotFSE { get; set; }
 
     //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14
@@ -131,7 +137,7 @@
     public Decimal Denominator {get; set; }
     public Decimal Accrued {get; set; }
     public String ProductModel{get;set;}
-    public String Category{get;set;}
+    // public String Category{get;set;}
     public Decimal Consumption_rate_Gurante{get;set;}
 
 
@@ -161,7 +167,35 @@
         totalPage = (totalRecords / selctRecordNum) + (Math.mod(totalRecords, selctRecordNum) > 0 ? 1 : 0);
         return null;
     }
-    
+    public void  test() {
+        integer i = 0;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+    }
     // 鍙栧凡閫夋嫨璧勪骇鐨勬満韬紪鐮�
     public void getAssetSerialNumber() {
         //LJPH-BSS6E2  ---20200911 ---add by rentongxiao start
@@ -362,8 +396,10 @@
                       + 'URF_Maintenance_Contract__c,URF_Maintenance_Contract__r.Management_Code__c,URF_Maintenance_Contract__r.Contract_End_Date__c,'
                       //URF闄愭鍚堝悓2鏈� LY 20220811 end
 
-                      //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 start
-                      // +'Guarantee_period_for_products__c,'
+                      //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 start 娑堣垂鐜�
+                      +'CurrentContract_F_asset__r.Asset_Consumption_Rate__c,Product2.Category4__c,Product2.Asset_Model_No__c,CurrentContract_F_asset__r.Maintenance_Price_Year__c,'
+                      +'CurrentContract_F_asset__r.IS_VMContract_Asset__c,'
+                      +'CurrentContract_F__r.endDateGurantee__c,'
                       //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 end
 
                       + 'CurrentContract_End_Date__c, Extend_Gurantee_DateTo__c,EquipmentGuaranteeFlg__c,AssetMark__c,NoPartRiskDate_F__c,NoPartRiskDate__c,SignableFlag__c FROM Asset WHERE Hospital__c = \'' + this.targetHospitalId + '\' ';
@@ -597,6 +633,17 @@
 
     //2022/12/27 鏁呴殰鍝佸姞璐� 鏂板鎻愪氦淇悊鍑忎环 鎸夐挳浠呭 寮犳櫠 寮犳牘姒曞強 绠$悊鍛樺彲瑙�
     public Boolean getApprovalBtnNewDisabled() {
+        // 瑕嬬銈傘倞鐢宠珛銇с亶銇亜鏉′欢銇垽鏂�
+        if (String.isBlank(this.contract.Decided_Estimation__c) == false) {
+            // TODO 鐗瑰垾璩囨牸銇屻亗銈屻伆 鐢宠珛鍙兘銇仚銈�
+            return true;
+        }
+        if (String.isBlank(this.estimate.Process_Status__c) == false
+            && this.estimate.Process_Status__c != '鑽夋涓�'
+            //&& this.estimate.Process_Status__c != '涓嶆壒鍑�'
+            ) {
+            return true;
+        }
         String userName =  UserInfo.getName();
         String uProfileId = UserInfo.getProfileId();
         String uProfileName = [SELECT Name FROM Profile WHERE Id =: uProfileId].Name;
@@ -627,12 +674,17 @@
         if (String.isBlank(this.contract.Decided_Estimation__c) == false) {
             return true;
         }
+        //涓婇檺鍚堝悓 hql 20230113 start
+        if (this.isFSE == false 
+            && this.isLimitPrice == true 
+            && String.isBlank(this.estimate.Process_Status__c) == false 
+            && this.estimate.Process_Status__c == '鐢宠涓�') {
+            return false;
+        }
+         //涓婇檺鍚堝悓 hql 20230113 end
         if (String.isBlank(this.estimate.Process_Status__c) == false
             && this.estimate.Process_Status__c != '鑽夋涓�'
             //&& this.estimate.Process_Status__c != '涓嶆壒鍑�'
-            //涓婇檺鍚堝悓 LY 20230113 start
-            // && this.estimate.Process_Status__c != '鐢宠涓�'
-            //涓婇檺鍚堝悓 LY 20230113 start
             ) {
             return true;
         }
@@ -715,6 +767,7 @@
     public Boolean isSaveOrApproval {get; set;}
     public String OldContractStartDate {get; set;}
     public String OldMaintenancePrice { get; set; }
+    public Decimal OldLimitPrice { get; set; }
     
     /**
      * 銈炽兂銈广儓銉┿偗銈�
@@ -766,9 +819,9 @@
                          , Sales_incidental__c, Consumption_rate_Forecast__c, AgencyHos_Price__c
                          // 鐢宠鎶ヤ环閲戦 鍜� 鐩稿鏍囧噯浠锋牸鑼冨洿鐨勬姌鎵g巼
                          , Request_quotation_Amount__c, Service_discount_Rate__c, ContractPriceType__c
-                         //涓婇檺鍚堝悓 20230103 LY start
-                         // ,Limit_Price_Amount__c
-                         //涓婇檺鍚堝悓 20230103 LY end
+                         //涓婇檺鍚堝悓 20230103 hql start
+                         ,Limit_Price_Amount__c
+                         //涓婇檺鍚堝悓 20230103 hql end
                          , LastMContract1__c, LastMContract2__c, LastMContract3__c, LastMContract4__c, LastMContract5__c
                          , LastMContract1_ConCount__c, LastMContract2_ConCount__c, LastMContract3_ConCount__c, LastMContract4_ConCount__c, LastMContract5_ConCount__c,
                          LastMContract1_NO__c, LastMContract2_NO__c, LastMContract3_NO__c, LastMContract4_NO__c, LastMContract5_NO__c
@@ -779,7 +832,10 @@
                          , Maintenance_Contract__r.Open_RenewalQuotation__c,Maintenance_Contract__r.VM_Contract_Check__c
                          //WLIG-CDFBV3 寮�閫氱画绛炬姤浠蜂负true鐨勫彲浠ュ紑鏀剧画绛炬姤浠� thh 20220419 end'
                         //LJPH-C9SCX7 銆愬鎵樸�戝悎鍚屾棤绌虹櫧鏈熺殑鎻愰啋  lt  20211221  start
-                        //, Maintenance_Contract__r.Past_Contract_end_day__c //杩囧幓鍚堝悓缁撴潫鏃�
+                         // 鎶ヤ环瑙勫垯鏀瑰杽20230314 start
+                        // , Maintenance_Contract__r.Past_Contract_end_day__c //杩囧幓鍚堝悓缁撴潫鏃�
+                        // ,renewTen_OFF__c
+                         // 鎶ヤ环瑙勫垯鏀瑰杽20230314 end
                         //LJPH-C9SCX7 銆愬鎵樸�戝悎鍚屾棤绌虹櫧鏈熺殑鎻愰啋  lt  20211221  end
                         // URF闄愭鍚堝悓2鏈� LY 20220811 start
                         ,URF_P_MaxRepairCount__c,URF_V_MaxRepairCount__c
@@ -792,11 +848,17 @@
                         ,Hospital_Salesdepartment__c
                         ,Send_Email_To_RC__c
                         //鏁呴殰鍝佸姞璐�  2022/12/16 end
-
+                        //璐告槗鍚堣 you start
+                        ,Maintenance_Contract__r.AccDealerBlacklist__c 
+                        ,Maintenance_Contract__r.Hospital__r.Name
+                        ,Maintenance_Contract__r.Dealer__r.Name
+                        ,CreatedById
+                        //璐告槗鍚堣 you end
                          FROM Maintenance_Contract_Estimate__c WHERE Id = :this.targetEstimateId];
         //HWAG-B399Q8 2018/08/20  娣诲姞涓�棰濆瀛楁 IS_Clone_After_Decide__c end
         //鏁呴殰鍝佸姞璐� 2023/1/3 start
         hasSendEmail = this.estimate.Send_Email_To_RC__c;
+        OldLimitPrice = this.estimate.Limit_Price_Amount__c;
         //鏁呴殰鍝佸姞璐� 2023/1/3 end
         decimal PriceSum =  (this.estimate.Maintenance_Contract__r.Payment_Plan_Sum_First__c == null ? 0 : this.estimate.Maintenance_Contract__r.Payment_Plan_Sum_First__c) +
                            (this.estimate.Maintenance_Contract__r.Payment_Plan_Sum_Second__c == null ? 0 : this.estimate.Maintenance_Contract__r.Payment_Plan_Sum_Second__c) +
@@ -845,7 +907,7 @@
         isSaveOrApproval = false;
         OldContractStartDate = null;
         OldMaintenancePrice = null;
-    
+        OldLimitPrice = null;
         inDicideFlag = false;
     
         isSoft = false;
@@ -903,6 +965,7 @@
             }
             this.targetMaintenanceContractId = ApexPages.currentPage().getParameters().get('mcid');
         }
+
         // 绶ㄩ泦銇嬨倝
         if (String.isBlank(this.targetEstimateId) == false) {
             setThisEstimate();
@@ -980,11 +1043,19 @@
                             , URF_Maintenance_Contract__r.Management_Code__c
                             , URF_Maintenance_Contract__r.Contract_End_Date__c
                             //URF闄愭鍚堝悓2鏈� LY 20220811 end
-
-                            // //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 start
-                            // ,Maintenance_Price_Year__c
-
-                            // //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 end
+                            // 鎶ヤ环瑙勫垯鏀瑰杽 20230315 start
+                            // ,IS_StandardPricing__c
+                            // 鎶ヤ环瑙勫垯鏀瑰杽 20230315 end
+                            //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2023/1/17 start
+                            ,CurrentContract_F_asset__r.Asset_Consumption_Rate__c
+                            ,CurrentContract_F_asset__r.Maintenance_Price_Year__c
+                            ,CurrentContract_F_asset__r.IS_VMContract_Asset__c
+                            ,Product2.Asset_Model_No__c
+                            ,Product2.Category4__c
+                            ,CurrentContract_F__r.endDateGurantee__c
+                            //娣诲姞鏄惁鏈嶅姟澶氬勾淇濅慨锛屽骞翠繚缁翠慨鏈熻嚦
+                            ,IS_Extend_Gurantee__c,Extend_Gurantee_DateTo__c
+                             //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2023/1/17 end
                             FROM Asset WHERE Hospital__c = :this.targetHospitalId AND ( AssetMark__c != '鑰楁潗' OR Product2.Family != 'ET' ) ORDER BY ID, IF_Warranty_Service__c asc];
             //JZHG-BSDUT4 ---20200825---update By rentongxiao---Start
             // assetRecords = [SELECT Id, Name, Asset_situation__c, SerialNumber, Department_Name__c, Installation_Site__c, Posting_Date__c,Management_Code__c,IF_Warranty_Service__c,Reson_Can_not_Warranty__c,
@@ -1002,7 +1073,24 @@
         //sqlStr += ' AND AssetMark__c != \'鑰楁潗\' AND Product2.Family != \'ET\' ';
         this.checkedAssets = new List<AssetInfo>();
         this.unCheckedAssets = new List<AssetInfo>();
-    
+        // 涓婇檺鍚堝悓 hql 20230216 start
+            Boolean isLimitPriceOne = [SELECT id,Limit_Price__c FROM Maintenance_Contract__c  WHERE Id =: this.targetMaintenanceContractId].Limit_Price__c;
+            if(isLimitPriceOne){
+                this.isLimitPrice = true;
+            }else{
+                this.isLimitPrice = false;
+            }
+        // 涓婇檺鍚堝悓 hql 20230216 end
+        // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start 
+            // Maintenance_Contract__c mc1 = [SELECT id,Is_Blank_period__c,Cost_rate_ForecastF__c FROM Maintenance_Contract__c  WHERE Id =: this.targetMaintenanceContractId];
+            // Boolean IsBlankperiod = mc1.Is_Blank_period__c;
+            // this.Cost_rate_ForecastF = mc1.Cost_rate_ForecastF__c;
+            // if(IsBlankperiod){
+            //     this.Is_Blank_period = true;
+            // }else{
+            //     this.Is_Blank_period = false;
+            // }
+        // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end 
         // 閬告姙娓堛伩銇磵鍏ユ鍣ㄦ儏鍫便倰鍙栧緱
         Map<Id, Integer> selectedAssetIds = new Map<Id, Integer>();
         List<Maintenance_Contract_Asset_Estimate__c> selectedMcaes = new List<Maintenance_Contract_Asset_Estimate__c>();
@@ -1015,9 +1103,14 @@
                 Asset__r.EquipmentGuaranteeFlg__c,
                 Asset__r.CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c,
                 Asset__r.CurrentContract_F_asset__r.endDateGurantee_Text__c,
-                //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 start
-                // Asset__r.CurrentContract_F_asset__r.startDateGurantee__c,
-                //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 end
+                //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2023/1/18 start 璁惧娑堣垂鐜�
+                Asset__r.CurrentContract_F_asset__r.Asset_Consumption_Rate__c,
+                Asset__r.CurrentContract_F_asset__r.IS_VMContract_Asset__c,
+                Asset__r.CurrentContract_F_asset__r.Maintenance_Price_Year__c,
+                Asset__r.Product2.Asset_Model_No__c,
+                Asset__r.Product2.Category4__c,
+                Asset__r.CurrentContract_F__r.endDateGurantee__c,
+                //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/1/18 end
                 Asset__r.CurrentContract_F__r.First_Estimate_Date__c,
                 Asset__r.CurrentContract_F__r.Contract_Consumption_rate__c,
                 Asset__r.CurrentContract_F__r.First_contract_usage_Rate__c,
@@ -1097,7 +1190,10 @@
                 // if (mca.Maintenance_Contract__r.Consumption_rate_Gurante__c != null) {
                 //     Consumption_rate_Gurante = mca.Maintenance_Contract__r.Consumption_rate_Gurante__c;
                 // }
+                // if(mca.Asset_Consumption_Rate__c!=null){
+                //     Consumption_rate_Gurante = mca.Asset_Consumption_Rate__c;
 
+                // }
                 //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 end
                 if (createdDate.addMonths(isNewAddMonth) < mca.Asset__r.isNewDate_use__c) {
                     isNew = true;
@@ -1133,6 +1229,7 @@
                                                                 Asset__r.EquipmentGuaranteeFlg__c,
                                                                 //2021-11-30 fy add LJPH-C8W8FV 缃《 start
                                                                 Asset__r.OwnershipMachine_No__c,
+                                                                Product_Manual__r.Category4__c,
                                                                 //2021-11-30 fy add LJPH-C8W8FV 缃《 end
                                                                 Asset_Consumption_rate__c,
                                                                 Asset__r.CurrentContract_F__c,
@@ -1155,8 +1252,8 @@
                                                                 LastMContract_Price__c,
                                                                 Asset__r.CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c,
                                                                 Asset__r.CurrentContract_F_asset__r.endDateGurantee_Text__c,
-                                                                //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 start  
-                                                                // Asset__r.CurrentContract_F_asset__r.startDateGurantee__c,
+                                                                //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2023/1/18 start  璁惧娑堣垂鐜�
+                                                                // Asset__r.CurrentContract_F_asset__r.Asset_Consumption_Rate__c,
                                                                 // Asset__r.Product2.Intra_Trade_Gurantee_RMB__c,
                                                                 //澶氬勾淇濊澶囩画绛捐绠楅�昏緫璋冩暣 2022/12/14 end
                                                                 Product_Manual__c,
@@ -1181,6 +1278,9 @@
                                                                 Adjustment_ratio_Lower__c,
                                                                 Adjustment_Lower_price__c,
                                                                 Adjustment_Upper_price__c,
+                                                                // 鏈嶅姟鍚堝悓鎶ヤ环瑙勫垯鏀瑰杽 20230227 start
+                                                                // IS_StandardPricing__c,
+                                                                // 鏈嶅姟鍚堝悓鎶ヤ环瑙勫垯鏀瑰杽 20230227 end
                                                                 Last_inspection_day__c,
                                                                 Check_Result__c,
                                                                 Repair_Price__c,
@@ -1189,6 +1289,9 @@
                                                                 Repair_Price_Auto__c,
                                                                 Third_Party_Return__c,
                                                                  //   (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� end 
+                                                                // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 start
+                                                                 // Blank_period__c,
+                                                                // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 end
                                                                 Comment__c,
                                                                 Asset__r.Posting_Date__c,
                                                                 EquipmentGuaranteeFlgTxt__c,
@@ -1198,6 +1301,15 @@
                                                                 Last_MContract__c
                                                                 // Gzw 20200807 浜斾釜鍘诲勾鍚堝悓鐩稿叧锛屾墍浠ユ姤浠蜂骇鍝侊紝鑾峰彇涓婃湡鍚堝悓 eng
                                                                 // LJPH-C9GD34 gzw fix start
+                                                                //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� 2023/01/28 start
+                                                                ,Asset__r.Product2.Asset_Model_No__c
+                                                                ,Asset__r.Product2.Category4__c
+                                                                ,Asset__r.CurrentContract_F_asset__r.Asset_Consumption_Rate__c
+                                                                ,Asset__r.CurrentContract_F_asset__r.Maintenance_Price_Year__c
+                                                                ,Asset__r.CurrentContract_F_asset__r.IS_VMContract_Asset__c
+                                                                ,Asset__r.CurrentContract_F__r.endDateGurantee__c
+                                                                //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� 2023/01/28 end
+
                                                                 ,Estimate_List_Price_Page__c
                                                                 FROM Maintenance_Contract_Asset_Estimate__c
                                                                 WHERE Maintenance_Contract_Estimate__c = :this.targetEstimateId
@@ -1246,6 +1358,7 @@
         // Map<String,repair__c> assNewRepMap  = new Map<String,repair__c>();
         // assNewRepMap = getNewrep(this.assetRecords);
         datatemp = getChartData();
+        System.debug(LoggingLevel.INFO, '*** this.assetRecords: ' + this.assetRecords);
         for (Asset ast : this.assetRecords) {
             Boolean isNew = false;
             Decimal listPrice = ast.Maintenance_Price_Month__c;
@@ -1302,7 +1415,9 @@
                 //
                 //
                 //
+                ast.CurrentContract_End_Date__c = ast.CurrentContract_F_asset__r.IS_VMContract_Asset__c ? ast.Extend_Gurantee_DateTo__c : ast.CurrentContract_End_Date__c;
                 checkedAssets.add(new AssetInfo(checkedAssets.size(), ast, isNew, listPrice, selectedLocal,estimate));
+
             } else {
                 //update by rentongxiao 2020-09-23 start
                 if (ast.AssetMark__c == '涓绘満') {
@@ -1323,6 +1438,8 @@
                }
              */
         }
+
+            System.debug(LoggingLevel.INFO, '*** checkedAssets: ' + checkedAssets);
         totalPage = (totalRecords / selctRecordNum) + (Math.mod(totalRecords, selctRecordNum) > 0 ? 1 : 0);
     
         system.debug('椤哄簭妫�娴�' + checkedAssets);
@@ -1349,7 +1466,7 @@
         //2021-11-30 fy add LJPH-C8W8FV 缃《 start
         List<AssetInfo> topAsset =new List<AssetInfo>();
         List<AssetInfo> otherAsset =new List<AssetInfo>();
-        
+        System.debug(LoggingLevel.INFO, '*** 椤哄簭: ' + checkedAssets);
         for(AssetInfo ched : checkedAssets){
             system.debug('椤哄簭妫�娴�2' + ched.ProductModelNoc);
             system.debug('椤哄簭妫�娴�3' + ched.AssetModelNoc);
@@ -1374,6 +1491,7 @@
         }
         checkedAssets=NumberSort;
         //2021-11-30 fy add LJPH-C8W8FV 缃《 end
+    System.debug(LoggingLevel.INFO, '*** checkedAssetsEND: ' + checkedAssets);
     }
     
     //
@@ -1421,6 +1539,14 @@
                             //URF闄愭鍚堝悓2鏈� LY 20220811 start
                             + 'URF_Maintenance_Contract__c,URF_Maintenance_Contract__r.Management_Code__c,URF_Maintenance_Contract__r.Contract_End_Date__c,'
                             //URF闄愭鍚堝悓2鏈� LY 20220811 end
+                            //甯傚満澶氬勾淇濅环鏍煎紑鍙� start DC 2023/01/17 璁惧娑堣垂鐜� 浜у搧鍨嬪彿 绗洓鍒嗙被 鏄惁涓哄骞翠繚璁惧
+                            + 'CurrentContract_F_asset__r.Asset_Consumption_Rate__c,'
+                            + 'CurrentContract_F_asset__r.Maintenance_Price_Year__c,'
+                            + 'CurrentContract_F_asset__r.IS_VMContract_Asset__c,'
+                            + 'Product2.Asset_Model_No__c,'
+                            + 'Product2.Category4__c,'
+                            + 'CurrentContract_F__r.endDateGurantee__c,'
+                            //甯傚満澶氬勾淇濅环鏍煎紑鍙� end DC 2023/01/17
                             + 'Product2.ProductURF__c,CurrentContract_F__r.Contract_Range__c,AssetMark__c,NoPartRiskDate__c,NoPartRiskDate_F__c,Product2.PartSupplyFinishDate__c,SignableFlag__c FROM Asset WHERE Hospital__c = \'' + this.targetHospitalId + '\' '
                             + 'AND Id NOT IN ' + notInId;
             //HWAG-B4R3SS  START 20181026
@@ -1477,7 +1603,15 @@
             //URF闄愭鍚堝悓2鏈� LY 20220811 start
             sqlStr += 'URF_Maintenance_Contract__c,URF_Maintenance_Contract__r.Management_Code__c,URF_Maintenance_Contract__r.Contract_End_Date__c,';
             //URF闄愭鍚堝悓2鏈� LY 20220811 end
+            
+            //甯傚満澶氬勾淇濅环鏍煎紑鍙� start DC 2023/01/17 璁惧娑堣垂鐜�
+            sqlStr += 'CurrentContract_F_asset__r.Asset_Consumption_Rate__c,CurrentContract_F_asset__r.IS_VMContract_Asset__c,CurrentContract_F_asset__r.Maintenance_Price_Year__c,Product2.Asset_Model_No__c,Product2.Category4__c,CurrentContract_F__r.endDateGurantee__c,';
+            //甯傚満澶氬勾淇濅环鏍煎紑鍙� start DC 2023/01/17
+
             sqlStr += ' CurrentContract_F__r.Contract_Range__c,AssetMark__c,NoPartRiskDate__c,NoPartRiskDate_F__c,Product2.PartSupplyFinishDate__c,SignableFlag__c FROM Asset WHERE Hospital__c = \'' + this.targetHospitalId + '\'';
+            
+            
+
             //JZHG-BSDUT4 ---20200825---update By rentongxiao---Start
             // sqlStr += '  AND ( AssetMark__c != \'鑰楁潗\' OR Product2.Family != \'ET\' ) ';
             //JZHG-BSDUT4 ---20200825---update By rentongxiao---End
@@ -1679,6 +1813,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c > :LastYearDate
             and Agreed_Date__c <= :today
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         List<AggregateResult> SecRepairList = [
@@ -1703,6 +1840,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c <= :LastYearDate
             and Agreed_Date__c > :LastSecondYearDate
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         // 杩囧幓3骞撮棿淇悊瀹炵哗
@@ -1728,6 +1868,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c <= :LastSecondYearDate
             and Agreed_Date__c > :LastThirdYearDate
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         // 杩囧幓3骞翠慨鐞嗗疄缁�
@@ -1753,6 +1896,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c <= :today
             and Agreed_Date__c > :LastThirdYearDate
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
     
@@ -1894,6 +2040,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c > :LastYearDate
             and Agreed_Date__c <= :today
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         List<AggregateResult> SecRepairList = [
@@ -1918,6 +2067,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c <= :LastYearDate
             and Agreed_Date__c > :LastSecondYearDate
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         // 杩囧幓3骞撮棿淇悊瀹炵哗
@@ -1943,6 +2095,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c <= :LastSecondYearDate
             and Agreed_Date__c > :LastThirdYearDate
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         // 杩囧幓3骞翠慨鐞嗗疄缁�
@@ -1968,6 +2123,9 @@
             and Agreed_Date__c != null
             and Agreed_Date__c <= :today
             and Agreed_Date__c > :LastThirdYearDate
+            // DB202302544421 LHJ add 
+            and Status2__c !='00.鍒犻櫎' 
+            and Status2__c !='00.鍙栨秷'
             group by Delivered_Product__c
         ];
         // 杩囧幓1骞撮棿
@@ -2835,6 +2993,30 @@
         return new PageReference('/' + this.targetEstimateId + '/e?completion=4');
     
     }
+    //璐告槗鍚堣 you start
+    public PageReference interceptsend(){
+        //String BuchangApprovalManager = this.estimate.BuchangApprovalManager__c;
+        //String JingliApprovalManager = this.estimate.JingliApprovalManager__c;
+        String fseid = this.estimate.CreatedById;
+        String AccDealerBlacklist = this.estimate.Maintenance_Contract__r.AccDealerBlacklist__c;
+        String accname = this.estimate.Maintenance_Contract__r.Hospital__r.Name;
+        String deaname = this.estimate.Maintenance_Contract__r.Dealer__r.Name;
+        //FSE棰嗗
+        String[] FSEStr = new String[] {};
+        //if(String.isNotBlank(BuchangApprovalManager)){
+        //    FSEStr.add(BuchangApprovalManager);
+        //}
+        //if(String.isNotBlank(JingliApprovalManager)){
+        //    FSEStr.add(JingliApprovalManager);
+        //}
+        FSEStr.add(fseid);
+
+        system.debug('==jinlaile====='+FSEStr);
+        Boolean reflag = OpportunityWebService.accSendEmailFW(AccDealerBlacklist,accname,deaname,this.targetEstimateId,'decide_con',FSEStr);
+        system.debug('==fawanle====='+FSEStr);
+        return null;
+    }
+    //璐告槗鍚堣 you end
     
     /**
      * Process鐢ㄣ伄銉︺兗銈躲兗鎯呭牨銈掋偦銉冦儓銆佹柊瑕忚绌嶃倐銈婃檪鐢�
@@ -3345,6 +3527,26 @@
                                                                 where Maintenance_Contract__c = :this.estimate.Maintenance_Contract__c]) {
                 delete oldList;
             }
+
+            //甯傚満澶氬勾淇濅环鏍煎紑鍙� DC 2023/02/08 start
+            // Map<String,Decimal> contractAssetFZ = new Map<String,Decimal>();
+            // List<Maintenance_Contract_Asset__c> oldListMA = new List<Maintenance_Contract_Asset__c>(); 
+            // for (Maintenance_Contract_Asset__c oldmc : [select Id 
+            //                                                     // ,Summary_FM_Year__c
+            //                                                     // ,Asset_Consumption_Rate__c
+            //                                                     ,Summary_FZ__c
+            //                                                     ,Asset__c
+            //                                                     // ,Over_FM_Year__c
+            //                                                     // ,Summary_FM_Months__c
+            //                                                     from Maintenance_Contract_Asset__c   
+            //                                                     where Maintenance_Contract__c = :this.estimate.Maintenance_Contract__c]) {
+            //     oldListMA.add(oldmc);
+            //     contractAssetFZ.put(oldmc.Asset__c, oldmc.Summary_FZ__c);
+            // }
+            // delete oldListMA;
+
+            //甯傚満澶氬勾淇濅环鏍煎紑鍙� DC 2023/02/08 end
+
             // 鈶� start
             {
                 List<Maintenance_Contract_Asset__c> newValue = new List<Maintenance_Contract_Asset__c>();
@@ -3369,7 +3571,8 @@
 
                                                                       from Maintenance_Contract_Asset_Estimate__c
                                                                       where Maintenance_Contract_Estimate__c = :this.estimate.Id and Asset__c <> null]) {
-    
+                    
+                
                     Maintenance_Contract_Asset__c newVal = new Maintenance_Contract_Asset__c(
                         Maintenance_Contract__c = this.estimate.Maintenance_Contract__c,
                         Asset__c = target.Asset__c,
@@ -3391,13 +3594,22 @@
                         Surcharge_Defective_Contract__c = target.Surcharge_Defective_Contract__c,
                         //鏁呴殰鍝佸姞璐�  绗笁鏂瑰洖褰掋�佹晠闅滃搧鍔犺垂 鏍囪瘑end
 
+                        //甯傚満澶氬勾淇濅环鏍煎紑鍙� start DC 2023/02/09
+                        // Summary_FZ__c = contractAssetFZ.get(target.Asset__c),
+                        //甯傚満澶氬勾淇濅环鏍煎紑鍙� end DC 2023/02/09
+
+
                         LastMContract__c = target.Last_MContract__r.RecordType_DeveloperName__c == 'VM_Contract' ? null : target.Last_MContract__c
                         );
+                    // System.debug(LoggingLevel.INFO, '*** contractAssetFZ.get(target.Asset__c): ' + contractAssetFZ.get(target.Asset__c));
                     newValue.add(newVal);
                 }
                 if (newValue.size() > 0) insert newValue;
             }
             // 鈶� start
+            // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start 
+            // this.contract.Is_Blank_period__c = this.Is_Blank_period;
+            // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end 
             this.contract.Estimation_Id__c = this.targetEstimateId;     
             this.contract.Contract_Esti_Start_Date__c = this.estimate.Contract_Esti_Start_Date__c;
             this.contract.Contract_Range__c = this.estimate.Contract_Range__c;
@@ -3649,7 +3861,8 @@
     
     // 2021-02-07  gzw add  LJPH-BWY5QB start
     private void setEndUserType(String id) {
-        this.contract = [SELECT Id, Name, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
+        //璐告槗鍚堣 you 20230414 鍔犳煡璇ccDealerBlacklist__c
+        this.contract = [SELECT Id, Name,AccDealerBlacklist__c, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
                          Estimate_Num__c, Management_Code__c, Hospital__c,
                          Hospital__r.MaintenanceContractUserType__c,
                          Contract_Start_Date__c, Contract_End_Date__c, VM_Contract_Check__c,Open_RenewalQuotation__c
@@ -3662,7 +3875,8 @@
     // 2021-02-07  gzw add  LJPH-BWY5QB end
     
     private void setContractInfo(String id) {
-        this.contract = [SELECT Id, Name, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
+        //璐告槗鍚堣 you 20230414 鍔犳煡璇ccDealerBlacklist__c
+        this.contract = [SELECT Id, Name,AccDealerBlacklist__c, Status__c, Decided_Estimation__c, Service_Contract_Staff__c,
                          Estimate_Num__c, Management_Code__c, Hospital__c,
                          //2021-01-18  mzy add  LJPH-BWY5QB   瀹㈡埛涓婄殑 缁翠慨鍚堝悓鐢ㄦ埛绫诲瀷 涓簍rue /false,鎶ヤ环 鐢ㄦ埛绫诲瀷涓� 鏃㈡湁鐢ㄦ埛 / 鏂扮敤鎴�
                          // Hospital__r.MaintenanceContractUserType__c,
@@ -3797,21 +4011,41 @@
             // modify by lc 20220607 澶氬勾淇濈画绛惧拰瀹炵哗杩炲姩鐘舵�佸搴� start
             Integer noOfDays = today.daysBetween(input.rec.CurrentContract_F_asset__r.endDateGurantee_Text__c);
             Decimal monthCon = (Decimal)noOfDays/365*12;
+
+
+            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/02 Start  缁撴潫鏃ョ┖鐧芥湡澶т簬6涓湀 鎶ラ敊鎻愮ず 鏂扮殑鍚堝悓鎶ヤ环寮�濮嬫棩鏈熷拰涓婁竴鏈熷悎鍚�
+
+            Date endDate6Month = input.rec.CurrentContract_F_asset__r.endDateGurantee_Text__c.addMonths(6);
+            Date cotractEndDay = input.rec.CurrentContract_F__r.endDateGurantee__c;
+            System.debug(LoggingLevel.INFO, '*** endDate6Month: ' + endDate6Month);
+            System.debug(LoggingLevel.INFO, '*** cotractEndDay: ' + cotractEndDay);
+            System.debug(LoggingLevel.INFO, '*** this.estimate.Contract_Esti_Start_Date__c: ' + this.estimate.Contract_Esti_Start_Date__c);
+            if(this.estimate.Contract_Esti_Start_Date__c >endDate6Month && cotractEndDay < this.estimate.Contract_Esti_Start_Date__c){
+                System.debug(LoggingLevel.INFO, '*** meet error: ' );
+                input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 甯傚満澶氬勾淇濈粨鏉熷凡瓒呰繃6涓湀锛岀敱浜庣┖鐧芥湡杩囬暱锛岃鍏堣仈绯绘湇鍔$鐞嗛儴璇勪及銆�');
+                rtn = false;
+            }
+
+            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/02 end
+
             // 鍙紑濮嬫姤浠风殑鏈堟暟闄愬埗
             //鍙樻洿澶氬勾淇濈画绛惧紑濮嬫棩 thh 20220315 start
             //if (input.rec.CurrentContract_F__r.Gurantee_Estimate_startDate__c > Date.today()) {
             // gzw 20220630 寮�閫氱画绛炬姤浠锋潈闄愬悗锛岃秴杩�6涓湀涔熷彲浠ョ画绛�
             // 缁鎯呭喌 鈶� 涓婃湡鍚堝悓 Open_RenewalQuotation__c & 6涓湀浠ュ唴  鈶� VM_Contract_Check__c Open_RenewalQuotation__c 2涓兘鎵撻挬
             // 鈶� 2涓紑鍏抽兘鎵撳紑 鈶M_Contract_Check__c鎵撳紑 灏忎簬6涓湀
-            if (!((this.contract.Open_RenewalQuotation__c && input.rec.CurrentContract_F__r.VM_Contract_Check__c) || (input.rec.CurrentContract_F__r.VM_Contract_Check__c && monthCon < 6))) {
-                if(monthCon < 6){
-                    input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 鍙互鍔犲叆鏈嶅姟鍚堝悓锛屽姞鍏ヤ环鏍艰鑱旂郴鏈嶅姟绠$悊閮ㄣ��');
-                }else{
-                    input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 娌℃湁缁鎶ヤ环鏉冮檺锛屾垨鑰呰繕娌″埌缁鏃堕棿銆�');
-                }
-                //input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 娌℃湁缁鎶ヤ环鏉冮檺锛屾垨鑰呰繕娌″埌缁鏃堕棿銆�');
-                rtn = false;
-            }
+            // if (!((this.contract.Open_RenewalQuotation__c && input.rec.CurrentContract_F__r.VM_Contract_Check__c) || (input.rec.CurrentContract_F__r.VM_Contract_Check__c && monthCon < 6))) {
+            //     if(monthCon < 6){
+            //         input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 鍙互鍔犲叆鏈嶅姟鍚堝悓锛屽姞鍏ヤ环鏍艰鑱旂郴鏈嶅姟绠$悊閮ㄣ��');
+            //     }else{
+            //         input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 娌℃湁缁鎶ヤ环鏉冮檺锛屾垨鑰呰繕娌″埌缁鏃堕棿銆�');
+            //     }
+            //     System.debug(LoggingLevel.INFO, '*** this.contract.Open_RenewalQuotation__c: ' + this.contract.Open_RenewalQuotation__c);
+            //     System.debug(LoggingLevel.INFO, '*** : input.rec.CurrentContract_F__r.VM_Contract_Check__c' + input.rec.CurrentContract_F__r.VM_Contract_Check__c);
+            //     System.debug(LoggingLevel.INFO, '*** monthCon: ' + monthCon);
+            //     //input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 娌℃湁缁鎶ヤ环鏉冮檺锛屾垨鑰呰繕娌″埌缁鏃堕棿銆�');
+            //     rtn = false;
+            // }
             /*if (input.rec.CurrentContract_F__r.Gurantee_Renew_startDate__c > Date.today()) {
                 input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 绗竴涓澶囩粨鏉熷悗鍙互鍒朵綔鎶ヤ环銆�');
                 rtn = false;
@@ -3968,6 +4202,7 @@
     public class AssetInfo {
     // 鏂板悎鍚屽鍝佺‘淇濇彁渚� 褰撳墠鏍囪
     public Boolean etGFlg {get; set;}
+    public String ISStandardPricing{get; set;}
     public Integer lineNo {get; private set;}
     public Decimal Repair_Price_Auto {get; set;}
     public String Agreed_Date{get; set;}
@@ -3978,6 +4213,7 @@
     public Maintenance_Contract_Estimate__c estimate {get; set;}
     public Transient Decimal orgPrice {get; private set;}
     public Transient Decimal orgPrice12 {get; private set;}
+    public String Blank_period {get;  set;}
     // add by fxk 2021/9/9 鎺у埗鐐规瀵硅薄鏄惁鍙�� Star
     public Boolean CheckRows {get; private set;}
     // add by fxk 2021/9/9 鎺у埗鐐规瀵硅薄鏄惁鍙�� End
@@ -3998,7 +4234,9 @@
     public String AssetModelNoc;
     public String MDMModelNoc;
     //2021-11-30 fy add LJPH-C8W8FV 缃《 end
-    
+    //甯傚満澶氬勾淇� 浠锋牸寮�鍙� start 2023/01/17
+    public String Category;
+    //甯傚満澶氬勾淇� 浠锋牸寮�鍙� end 2023/01/17
     public Id getRecId() {
         Id rtn = null;
         if (rec != null) {
@@ -4032,8 +4270,16 @@
     public AssetInfo(Integer lineNo, Asset record, Boolean isNew, Decimal listPrice, Maintenance_Contract_Asset_Estimate__c mcae,Maintenance_Contract_Estimate__c estimate) {
         this.lineNo = lineNo;
         this.rec = record;
+        this.rec.CurrentContract_End_Date__c = record.CurrentContract_End_Date__c;
+        // this.rec.CurrentContract_End_Date__c = record.IS_Extend_Gurantee__c ? record.Extend_Gurantee_DateTo__c : record.CurrentContract_End_Date__c;
+        // this.ISStandardPricing = record.IS_StandardPricing__c;
         this.estimate = new Maintenance_Contract_Estimate__c();
         this.estimate.IS_Reduced_price_approval__c = estimate.IS_Reduced_price_approval__c;
+         // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 start
+        // this.estimate.Contract_Esti_Start_Date__c = estimate.Contract_Esti_Start_Date__c;
+        // this.estimate.renewTen_OFF__c = estimate.renewTen_OFF__c;
+         // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 end
+
         //   (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start
         // if (record.Asset_situation__c == '淇悊涓�' && record.Return_Without_Repair__r.Agreed_Date__c!=null) {
         //     this.Agreed_Date = '涓嶄负绌�';
@@ -4062,6 +4308,9 @@
             Check_Result__c = mcae.Check_Result__c,
             Repair_Price__c = mcae.Repair_Price__c,
             Repair_Price_pass__c = mcae.Repair_Price_pass__c,
+            // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 start
+            // Blank_period__c = mcae.Blank_period__c,           
+            // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 end
             Comment__c = mcae.Comment__c,
             EquipmentGuaranteeFlgTxt__c = mcae.EquipmentGuaranteeFlgTxt__c,
             Estimate_Cost__c = mcae.Estimate_Cost__c,
@@ -4085,6 +4334,17 @@
                 this.mcae.Repair_Price_pass__c = this.mcae.Repair_Price__c;
             }
         }
+         // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 start
+            // if (this.estimate.Contract_Esti_Start_Date__c!=null  && this.rec.CurrentContract_End_Date__c != null) {
+            //        this.mcae.Blank_period__c = String.valueof(this.rec.CurrentContract_End_Date__c.daysbetween(this.estimate.Contract_Esti_Start_Date__c));
+            // } 
+            // if (this.estimate.Contract_Esti_Start_Date__c==null && this.rec.CurrentContract_End_Date__c != null) {
+            //        this.mcae.Blank_period__c = String.valueof(this.rec.CurrentContract_End_Date__c.daysbetween(system.today()));   
+            // }
+            // if (this.mcae.Blank_period__c!=null&&integer.valueOf(this.mcae.Blank_period__c)<15 ) {
+            //         this.mcae.Blank_period__c = '鏃犵紳缁';
+            // }      
+        // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 end
         this.isManual = false;
         this.rec_checkBox_c = true;
         this.orgPrice = record.Maintenance_Price_Month__c;
@@ -4100,6 +4360,11 @@
         //2021-11-30 fy add LJPH-C8W8FV 缃《 end
     
         //add by rentx 2020-11-12 LJPH-BV93RZ end
+
+        //甯傚満澶氬勾淇� 浠锋牸寮�鍙� start 2023/01/17
+        this.Category = mcae.Product_Manual__r.Category4__c;
+        //甯傚満澶氬勾淇� 浠锋牸寮�鍙� end 2023/01/17
+
         //add by mzy 2021-02-07 start
         //this.NoPartRiskDate = mcae.Product_Manual__r.NoPartRiskDate_F__c;
         //this.proName2 = mcae.Product_Manual__r.Name;
@@ -4153,6 +4418,10 @@
         this.ProductModelNoc = mcae.Product_Manual__r.Asset_Model_No__c;
         this.AssetModelNoc = mcae.Asset__r.OwnershipMachine_No__c;
         //2021-11-30 fy add LJPH-C8W8FV 缃《 end
+
+        //甯傚満澶氬勾淇� 浠锋牸寮�鍙� start 2023/01/17
+        this.Category = mcae.Product_Manual__r.Category4__c;
+        //甯傚満澶氬勾淇� 浠锋牸寮�鍙� end 2023/01/17
     }
     
     // 閬告姙銇曘倢銇亱銇c仧鐢�
@@ -4160,11 +4429,6 @@
         this.lineNo = lineNo;
         this.rec = record;
         //   (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start
-        // if (record.Return_Without_Repair__r.Agreed_Date__c!=null) {
-        //     this.Agreed_Date = '涓嶄负绌�';
-        // }else{
-        //     this.Agreed_Date = '涓虹┖';
-        // }
         if (record.Return_Without_Repair__r.Repair_List_Price_formula__c!=null) {
             this.Repair_Price_Auto = record.Return_Without_Repair__r.Repair_List_Price_formula__c;
         }
@@ -4177,7 +4441,7 @@
         this.proSerialName = record.Name;
         this.proSerialNumber = record.SerialNumber;
     }
-    // public AssetInfo(Integer lineNo, Asset record, Map<String,repair__c> assNewRepMap) {
+    // public AssetInfo(Integer lineNo, Asset record) {
     //     this.lineNo = lineNo;
     //     this.rec = record;
     //     //   (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start
diff --git a/force-app/main/default/pages/SelectAssetEstimateURF.page b/force-app/main/default/pages/SelectAssetEstimateURF.page
index c0a193c..ba34388 100644
--- a/force-app/main/default/pages/SelectAssetEstimateURF.page
+++ b/force-app/main/default/pages/SelectAssetEstimateURF.page
@@ -1232,6 +1232,24 @@
             var dayStr = '00' + contractDate.getDate();
             dayStr = dayStr.substring(dayStr.length-2, dayStr.length);
             var contractDateStr = contractDate.getFullYear() + '/' + monthStr + '/' + dayStr;
+            //璐告槗鍚堣 you 20230414 start
+            var AccDealerBlacklist = j$(escapeVfId('allPage:allForm:AccDealerBlacklist')).value();//榛戝悕鍗�,璀︾ず鍚嶅崟
+            var TradeComplianceStatusFlagFW = '{!$Label.TradeComplianceStatusFlagFW}';//璐告槗鍚堣寮�鍏�
+            var IFTradeComplianceAlert = '{!$Label.IFTradeComplianceAlert}';//璐告槗鍚堣鎻愰啋
+            if(TradeComplianceStatusFlagFW=='true'){
+            if(AccDealerBlacklist =='1'){
+               alert('鎮ㄦ墍閫夋嫨鐨勫鎴�(鍖婚櫌/缁忛攢鍟�)瀛樺湪璐告槗鍚堣椋庨櫓锛屾棤娉曠璁㈡湇鍔″悎鍚岋紝寤鸿鎮ㄥ悜瀹㈡埛鍋氬ソ涓嶇绾﹁鏄�,'+IFTradeComplianceAlert);
+               var reflag = interceptsend();
+               unblockUI();
+               return null;
+            }else if(AccDealerBlacklist =='2'){
+               if (!confirm('鎮ㄦ墍閫夋嫨鐨勫鎴�(鍖婚櫌/缁忛攢鍟�)瀛樺湪璐告槗鍚堣璀︾ず椋庨櫓锛屼笉寤鸿绛捐鏈嶅姟鍚堝悓锛岃鎮ㄧ‘璁ゆ槸鍚︾户缁敵璇�,'+IFTradeComplianceAlert)) {
+                    unblockUI();
+                    return null;
+                }
+            }
+            }
+            //璐告槗鍚堣 you 20230414 end
 
             //var neDt = contractDate.getFullYear() + contractDate.getMonth() + contractDate.getDate();
             //monthStr = '00' + (oldDate.getMonth()+1);
@@ -1400,6 +1418,9 @@
     <apex:inputHidden id="changedAfterPrint" value="{!changedAfterPrint}"/>
     <apex:inputHidden id="changedSubmitPrice" value="{!changedSubmitPrice}"/>
     <apex:inputHidden id="isSaveOrApproval" value="{!isSaveOrApproval}"/>
+    <!-- 璐告槗鍚堣 you 20230414-->
+    <apex:inputHidden id="AccDealerBlacklist" value="{!contract.AccDealerBlacklist__c}"/>
+    <apex:actionFunction name="interceptsend" action="{!interceptsend}"  oncomplete="unblockUI();"/>
 
     <!-- HWAG-B4R3SS  START 20181026-->
     <apex:actionFunction name="searchfunc" action="{!searchBtn}" rerender="Form,Block,assetSection2,pageMessages,allBlock" onComplete="unblockUI();"></apex:actionFunction>
diff --git a/force-app/main/default/pages/SelectAssetEstimateVM.page b/force-app/main/default/pages/SelectAssetEstimateVM.page
index 2644530..e0ae407 100644
--- a/force-app/main/default/pages/SelectAssetEstimateVM.page
+++ b/force-app/main/default/pages/SelectAssetEstimateVM.page
@@ -42,13 +42,8 @@
 
 var RCbottonChanged = 0;
 
-// 2022鏁呴殰鍝佸姞璐� start
-// var RCButtonDisable = document.getElementById("emailSend");
-// RCButtonDisable.style.display = "none";
-// 2022鏁呴殰鍝佸姞璐� end
 
 var hasSendEmail = {!hasSendEmail};
-console.log('***hasSendEmail',hasSendEmail);
 // if(hasSendEmail == true){
 //     j$(escapeVfId('allPage:allForm:emailSend')).attr("disabled", true);
 //     j$(escapeVfId('allPage:allForm:emailSend')).attr("class", 'btnDisabled');
@@ -161,6 +156,7 @@
     // if(!ResonCannotWarranty.contains("寮冧慨")){
     //     j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Repair_Price_Auto')).attr("display", none);
     // }
+
     if (isDisabled) {
 
         j$(escapeVfId('allPage:allForm:allBlock:contract:depart')).attr("disabled", true);
@@ -169,7 +165,6 @@
         j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget')).attr("disabled", true);
         j$(escapeVfId('allPage:allForm:allBlock:contract:EndUserType')).attr("disabled", true);
         var rowCnt = {!productCount};
-        console.log('isDisabled='+isDisabled);
         for (var i = 0; i < rowCnt; i++) {
             // alert(11111111111111 +rowCnt);
             var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
@@ -250,8 +245,35 @@
     // disable1();
     // 2021銆�8銆�26 鍚堝悓鎶ヤ环椤甸潰鐨勪紭鍖栵紝鏃犱繚鏈夎澶囩偣妫�瀵硅薄閫夋嫨妗嗗彉榛� fxk end
     console.log('ApprovalBtnDisabled=='+{!ApprovalBtnDisabled});
-    pageSetDisabled();
     refreshAsset({!productCount});
+    //涓婇檺鍚堝悓 20230103 hql start
+    // console.log('Limit_PriceHidden2=='+Limit_PriceHidden2);
+    var RequestquotationAmount = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val();
+    console.log('鐢宠鎶ヤ环閲戦='+RequestquotationAmount);
+    var AssetRepairSumPrice    = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPrice')).text();
+    console.log('鍚堝悓璁惧淇悊鎬婚='+AssetRepairSumPrice);
+    Limit_Price_Amount = (localParseFloat(AssetRepairSumPrice)+localParseFloat(RequestquotationAmount))*1.3;
+    Limit_Price_Amount = Math.round(Limit_Price_Amount);
+    // console.log('Limit_Price_Amount'+Limit_Price_Amount);
+    Limit_Price_AmountOne =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).value();
+    Limit_PriceHidden =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_PriceHidden')).value();
+
+    if (Limit_PriceHidden*1==0) {
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val(Limit_Price_Amount);
+    }
+    Limit_PriceHidden2 =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price2Hidden')).value();
+    if (Limit_PriceHidden2 == 'false') {
+        // lpa =  document.getElementById('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount');
+        // lpa.style.display = "none";
+        // console.log('闅愯棌瀹屾瘯');
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val('');
+    }
+    Price111 = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val();
+    // console.log('涓婇檺閲戦涓�'+Limit_Price_Amount);
+    // console.log('鍘熸湁涓婇檺閲戦涓�'+Limit_PriceHidden);
+    // console.log('涓嶆槸涓婇檺鍚堝悓鐨勯噾棰濅负'+Price111);
+    //涓婇檺鍚堝悓 20230103 hql end
+    pageSetDisabled();
     var createdDate = new Date('{!estimate.CreatedDate}');
     // 鎶ヤ环涓澶囩殑鏈鸿韩缂栫爜涓虹┖鏃剁殑鏂板搧鍚堝悓鏈夋晥鏈熷欢闀� 20200710 gzw
     var aLLManual = 'true';
@@ -340,6 +362,7 @@
     }
     
     if ('{!DecideBtnDisabled}' == 'false') {
+        // console.log('oldMainteReal淇敼瀹屾垚');
         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:oldMainteReal')).val(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text());
     }
 }
@@ -370,6 +393,7 @@
 }
 
 function checkDiscount(val) {
+    // var alerts = 0;
     if (val == null || val == "") {
         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val("");
         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discount_Rate')).text("");
@@ -381,10 +405,53 @@
         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val(0.00);
         return;
     }
+    // 鎶ヤ环閲戦鏀瑰杽 20230314 start
+    // var startime1 =  new Date(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:PastContractendday')).value());
+    // var startime2 = new Date(j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value());
+    // var result = (startime2-startime1)/(3600*24*1000);
+    // Is_Blank_period1 =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Is_Blank_period')).value();
+    // Cost_rate_ForecastF =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Cost_rate_ForecastF')).value();
+    // downprice = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceDown')).value();
+    // var renewTenOFF = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:renewTenOFF')).value();
+    // if (Is_Blank_period1 == 'true' && ((parseFloat(Cost_rate_ForecastF)<100)||Cost_rate_ForecastF.length == 0) && result <=1 && downprice > val ) {
+    //    alerts = 1;
+    // }
+    // if (alerts == 1 && renewTenOFF == 'false') {
+    //     if (confirm("鏈崟鍙互缁х画鐢宠10%鎶樻墸锛岃纭鏄惁鐢宠锛岀敵璇峰悗鍚堝悓寮�濮嬫棩鑷姩閿佸畾涓哄悎鍚岄瀹氬紑濮嬫棩锛屽悗缁棤娉曟洿鏀瑰悎鍚屽紑濮嬫棩")) {
+    //         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:renewTenOFF')).val(true);
+    //         val = val*0.9;
+    //         j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).attr("disabled", true);
+    //     } else {
+            
+    //     }
+    // }
+    // 鎶ヤ环閲戦鏀瑰杽 20230314 end
     val = localParseFloat(val);
     //val = Math.round(val * 100) / 100;
     val = Math.round(val);
     j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val(toNumComma(val));
+    //涓婇檺鍚堝悓 20230117 HQL start
+    var RequestquotationAmount = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val();
+    console.log('鐢宠鎶ヤ环閲戦='+RequestquotationAmount);
+    var AssetRepairSumPrice    = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPrice')).text();
+    console.log('鍚堝悓璁惧淇悊鎬婚='+AssetRepairSumPrice);
+    Limit_Price_Amount = (localParseFloat(AssetRepairSumPrice)+localParseFloat(RequestquotationAmount))*1.3;
+    Limit_Price_Amount = Math.round(Limit_Price_Amount);
+    Limit_Price_AmountOne =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).value();
+    Limit_PriceHidden =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_PriceHidden')).value();
+    // if (Limit_PriceHidden*1==0) {
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val(Limit_Price_Amount);
+    // }
+    Limit_PriceHidden2 =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price2Hidden')).value();
+    if (Limit_PriceHidden2 == 'false') {
+        // lpa =  document.getElementById('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount');
+        // lpa.style.display = "none";
+        // console.log('闅愯棌瀹屾瘯');
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val('');
+    }
+    amount = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).value();
+    console.log('涓婇檺閲戦濉叆锛�'+amount);
+    //涓婇檺鍚堝悓 20230117 HQL end
    makeRealPrice(1);
 }
 
@@ -418,7 +485,189 @@
     ISReducedpriceapproval = j$(escapeVfId('allPage:allForm:allBlock:ISReducedpriceapproval')).val();
     console.log('鏂规硶2鏄惁瀹℃壒閫氳繃=='+ISReducedpriceapproval+'==============');
 }
+var number1 = 0;
+// function seamlessRenew(cnt){
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start 
+//     var isSeamlessRenew = 0;
+//     var isSeamlessRenew1 = 0;
+//     var isSeamlessRenew3 = 0;
+//     var isSeamlessRenew4 = 0;
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 start
+//     var downPriceSum = 0;
+//     var upPriceSum = 0;
+//     var downPriceSum1 = 0;
+//     var upPriceSum1 = 0;
+//     var downPriceSum3 = 0;
+//     var upPriceSum3 = 0;
+//     var downPriceSum4 = 0;
+//     var upPriceSum4 = 0;
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 end
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 start
+//     var renewTenOFF = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:renewTenOFF')).value();
+//     if (renewTenOFF == 'true') {
+//         j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).attr("disabled", true);
+//     }
+//         document.getElementById("startdateaddsix1").value = addMonths(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:PastContractendday')).value(),6);
+//         document.getElementById("startdateaddsix2").value = addMonths(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:PastContractendday')).value(),6);
+//         document.getElementById("startdateaddsix3").value = addMonths(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:PastContractendday')).value(),12);
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 end
+//     for (var i = 0; i < cnt; i++) {
+//         // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 start
+//         var  downPrice1 = 0;
+//         var  upPrice1 = 0;
+//         var  downPrice3 = 0;
+//         var  upPrice3 = 0;
+//         var  downPrice4 = 0;
+//         var  upPrice4 = 0;
+//          var Price_YearTXT = 0;
+//         var LastMContract_Price = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContract_Price')).val());
+//         var isnew = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetNewHidden')).val();
+//         // 鍚堝悓鏈堟暟涔楃畻
+//         var month = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
+//         if (month == undefined || month == "") {
+//             month = 1;
+//         }
+//         var month2 = 0;
+//         if (month > 12) {
+//             month2 = month - 12;
+//             month = 12;
+//         }
+//         var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value();
+//         var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
+//         if(b != ''){
+//                     // var lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value());
+//                     var lastContRange = 0;
+//                     if(LastMContractRecord == 'VM_Contract'){
+//                         // lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
+//                         lastContRange = 36;
+//                     }else{
+//                         lastContRange = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':lastContRange')).value();
+//                     }
+//         }           
+//         var Punish = calculateNtoMRatio( lastContRange,(month + month2));
+//          // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 end
+//         if (!isDisabled) {
+//             var Adjustment_ratio_Lower = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_ratio_Lower')).val());
+//             var Adjustment_ratio_Upper = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_ratio_Upper')).val());
+//              strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
+//                 Price_YearTXT = strMoney * 12;
+//                 if (isnew == 'true') {
+//                     strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
+//                 } else {
+//                     strMoney = month * strMoney + month2 * strMoney;
+//                 }
+//             // 鏈嶅姟鍚堝悓鎶ヤ环瑙勫垯鏀瑰杽 20230227 start
+//                     var LastMContractID = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractID')).value();
+//                     // var ISStandardPricing = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ISStandardPricing')).value();
+//                     // 缂哄皯棣栫璁惧閫昏緫
+//                     if (LastMContractID == '') {
+//                         console.log('鏂扮璁惧');
+//                         j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(strMoney));
+//                         j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_priceHidden')).val(strMoney);
+//                         j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(strMoney));
+//                         j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_priceHidden')).val(strMoney);
+//                     }
+//             // 鏈嶅姟鍚堝悓鎶ヤ环瑙勫垯鏀瑰杽 20230227 end
+//             var startdate11 = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:PastContractendday')).value();
+//             var startdate1 = j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value();
+//             var startdate = new Date(startdate1);
+//             var startdatesix1 = new Date(addMonths(startdate11,6));
+//             startdatesix1.setDate(startdatesix1.getDate()-1);
+//             var startdatesix2 = new Date(addMonths(startdate11,6));
+//             startdatesix2.setDate(startdatesix2.getDate()+1);
+//             var startdatesix3 = new Date(addMonths(startdate11,12));
+//             startdatesix3.setDate(startdatesix3.getDate()+1);
+//             // 绗竴涓棩鏈�
+//             var result1 = Blankperiod(startdate,i,LastMContract_Price,Punish,Adjustment_ratio_Upper,Adjustment_ratio_Lower,strMoney,1);
+//             var arr=result1.split( '/');
+//             downPrice=parseInt(arr[0]);
+//             upPrice=parseInt(arr[1]);
+//             isSeamlessRenew=isSeamlessRenew+parseInt(arr[2]);
+//             // console.log('result1='+result1);
+//             // 绗簩涓棩鏈�
+//             var result2 = Blankperiod(startdatesix1,i,LastMContract_Price,Punish,Adjustment_ratio_Upper,Adjustment_ratio_Lower,strMoney,2);
+//             var arr2=result2.split( '/');
+//             downPrice1=parseInt(arr2[0]);
+//             upPrice1=parseInt(arr2[1]);
+//             isSeamlessRenew1=isSeamlessRenew1+parseInt(arr2[2]);
+//             // console.log('result2='+result2);
+//             // 绗笁涓棩鏈�
+//             var result3 = Blankperiod(startdatesix2,i,LastMContract_Price,Punish,Adjustment_ratio_Upper,Adjustment_ratio_Lower,strMoney,2);
+//             var arr3=result3.split( '/');
+//             downPrice3=parseInt(arr3[0]);
+//             upPrice3=parseInt(arr3[1]);
+//             isSeamlessRenew3=isSeamlessRenew3+parseInt(arr3[2]);
+//             // console.log('result3='+result3);
+//             // 绗洓涓棩鏈�
+//             var result4 = Blankperiod(startdatesix3,i,LastMContract_Price,Punish,Adjustment_ratio_Upper,Adjustment_ratio_Lower,strMoney,2);
+//             var arr4=result4.split( '/');
+//             downPrice4=parseInt(arr4[0]);
+//             upPrice4=parseInt(arr4[1]);
+//             isSeamlessRenew4=isSeamlessRenew4+parseInt(arr4[2]);
+//             // console.log('result4='+result4);
+//             // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 end
+//             // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 start
+//             downPriceSum = downPriceSum + localParseFloat(toNum(downPrice));
+//             upPriceSum =  upPriceSum + localParseFloat(toNum(upPrice));
+//             downPriceSum1 = downPriceSum1 + localParseFloat(toNum(downPrice1));
+//             upPriceSum1 =  upPriceSum1 + localParseFloat(toNum(upPrice1));
+//             downPriceSum3 = downPriceSum3 + localParseFloat(toNum(downPrice3));
+//             upPriceSum3=  upPriceSum3 + localParseFloat(toNum(upPrice3));
+//             downPriceSum4 = downPriceSum4 + localParseFloat(toNum(downPrice4));
+//             upPriceSum4=  upPriceSum4 + localParseFloat(toNum(upPrice4));
+//             // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 end
+//         }
+//     }
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start
+//     // console.log('isSeamlessRenew='+isSeamlessRenew);
+//         if (isSeamlessRenew==0) {
+//             j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Is_Blank_period')).val(true);
+//         }else{
+//             j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Is_Blank_period')).val(false);
+//         }
+//         var startime1 =  new Date(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:PastContractendday')).value());
+//         var startime2 = new Date(j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value());
+//         var result = (startime2-startime1)/(3600*24*1000);
+//         Is_Blank_period1 =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Is_Blank_period')).value();
+//         Cost_rate_ForecastF =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Cost_rate_ForecastF')).value();
+//         // 5.褰撻娴嬫垚鏈巼涓虹┖鏃跺疄缁╄繛鍔ㄤ环鏍兼槸鍚︿韩鍙�9鎶樹紭鎯�
+//         if (isSeamlessRenew==0 && ((parseFloat(Cost_rate_ForecastF)<100)||Cost_rate_ForecastF.length == 0)) {
+//             downPriceSum = downPriceSum*0.9;
+//             upPriceSum = upPriceSum*0.9;
+//         }
+//         if (isSeamlessRenew1==0) {
+//             downPriceSum1 = downPriceSum1*0.9;
+//             upPriceSum1 = upPriceSum1*0.9;
+//         }
+//         if (isSeamlessRenew3==0) {
+//             downPriceSum3 = downPriceSum3*0.9;
+//             upPriceSum3 = upPriceSum3*0.9;
+//         }
+//         if (isSeamlessRenew4==0) {
+//             downPriceSum4 = downPriceSum4*0.9;
+//             upPriceSum4 = upPriceSum4*0.9;
+//         }
+//         if (!isDisabled) {
+//         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUp')).text(toNumComma(Math.round(upPriceSum)));
+//         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUpHidden')).val(toNum(Math.round(upPriceSum)));
+//         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceDown')).text(toNumComma(Math.round(downPriceSum)));
+//         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceDownHidden')).val(toNum(Math.round(downPriceSum)));
+//         }
+//         document.getElementById("GuidePriceDown5").value = toNumComma(Math.round(downPriceSum));
+//         document.getElementById("GuidePriceUp5").value = toNumComma(Math.round(upPriceSum));
+//         document.getElementById("GuidePriceDown4").value = toNumComma(Math.round(downPriceSum1));
+//         document.getElementById("GuidePriceUp4").value = toNumComma(Math.round(upPriceSum1));
+//         document.getElementById("GuidePriceDown3").value = toNumComma(Math.round(downPriceSum3));
+//         document.getElementById("GuidePriceUp3").value = toNumComma(Math.round(upPriceSum3));
+//         document.getElementById("GuidePriceDown2").value = toNumComma(Math.round(downPriceSum4));
+//         document.getElementById("GuidePriceUp2").value = toNumComma(Math.round(upPriceSum4));
+//     // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end
+// } 
 function refreshAsset(cnt) {
+    console.log('鎵цrefreshAsset');
+    console.log('decide==='+{!DecideBtnDisabled});
+    
      // alert(cnt);
     // 鎻愪氦鍚庡氨椤甸潰涓嶈绠椾簡
     var isDisabled = {!PageDisabled};
@@ -434,25 +683,31 @@
     // 鏂板搧鍚堝悓 鍒ゆ柇
     var newCon = true;
     var contractStartDate = new Date(j$(escapeVfId('allPage:allForm:contractstartdate')).value());
-    //涓婇檺鍚堝悓 20230103 LY start
-    // var mainteReal = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text();
-    // Limit_Price_Amount = localParseFloat(mainteReal)*1.3;
-    // console.log('Limit_Price_Amount'+Limit_Price_Amount);
-    // j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val(Limit_Price_Amount);
-    
-    //涓婇檺鍚堝悓 20230103 LY end
     //澶氬勾淇濈画绛惧悎鍚屾暟閲� thh 20220316 start
     var GuranteeCount = 0;
     //澶氬勾淇濈画绛惧悎鍚屾暟閲� thh 20220316 end
+
+
 
     //2022鏁呴殰鍝佸姞璐� 鑾峰彇userInfo绠�妗e悕绉� 鏄惁涓篎SE start
     var isFSE = {!isFSE};
     // var isFSE = true;
     console.log('***isFSE',isFSE);
     //2022鏁呴殰鍝佸姞璐� 鑾峰彇userInfo绠�妗e悕绉� end
-
+    //20230208 涓婇檺鍚堝悓寮�鍙� hql start
+    if (isFSE) {
+        // lpa =  document.getElementById('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount');
+        // lpa.style.display = "none";
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).attr("disabled", true);
+        console.log('涓婇檺閲戦闅愯棌');
+    }
+    //20230208 涓婇檺鍚堝悓寮�鍙� hql end
     // 棰勫畾寮�濮嬫棩
     var startdate = new Date(j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value());
+    // 鎶ヤ环瑙勫垯鏀瑰杽
+    // document.getElementById("startdateaddsix4").value = j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value();
+    // 鎶ヤ环瑙勫垯鏀瑰杽
+    
     // 棰勫畾寮�濮嬫棩-6涓湀
     startdate.setMonth(startdate.getMonth() - 6);
     // 鐢宠鏃� 褰撳墠鏃ユ湡
@@ -479,6 +734,7 @@
         month = 12;
     }
     for (var i = 0; i < cnt; i++) {
+        // console.log('绗�'+i+'涓澶�');
         var strMoney = 0;
         var repairMoney = 0;
         // 琛岄」鐩� 鏈�楂樸�佹渶浣庝环鏍煎悎璁�
@@ -486,15 +742,20 @@
         // 涓嬬嚎浠锋牸
         var downPrice = 0;
         // 涓婄嚎浠锋牸
-        var upPrice = 0;
-        
+        var upPrice = 0; 
         // 12涓湀鍚堝悓閲戦
         var Price_YearTXT = 0;
-        
+
         var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
         var isnew = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetNewHidden')).val();
         var assetListmonth = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
-        console.log('***isManual=:'+isManual);
+
+        //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/09 start 
+        var VMassetListmonth = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Maintenance_Price_Year__c')).val();
+        // console.log('***鍚堝悓瀹氫环:'+VMassetListmonth);
+        //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/09 end  
+
+        // console.log('***isManual=:'+isManual);
         if (isManual == 'true') {
             var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert')).value();
             if (a != '') {
@@ -506,17 +767,21 @@
                 //}
 
                 strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
+
                 // alert(strMoney);
                 Price_YearTXT = strMoney * 12;
                 if (isnew == 'true') {
                     newCount ++;
                     strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
+
                 } else {
                     newCon = false;
                     strMoney = month * strMoney + month2 * strMoney;
+
                 }
                 var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value();
                 var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
+                // console.log('***缁翠慨鍚堝悓璁板綍绫诲瀷1'+LastMContractRecord);
                 if(b != ''){
                     conCCount ++;
                     // 1.鍚堝悓鏈熶笉婊′竴骞存椂锛屽悎鍚屾湡瓒呰繃涓�鍗婃墠鍙紑濮嬬画绛炬姤浠枫��(eg:11涓湀鐨勫悎鍚屼粠6涓湀鍚庢墠鍙姤浠枫��)
@@ -555,31 +820,137 @@
                     // 鍒ゆ柇鏈夋棤鎶ヤ环锛氭病鏈夋寜鐓ф爣鍑嗕环鏍煎疄闄呰仈鍔�
                     var Estimate_Num = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Estimate_NumHidden')).val();
                     if(Estimate_Num == 0){
-                        if(LastMContractRecord == 'VM_Contract'){
+                       if(LastMContractRecord == 'VM_Contract'){
                             // gzw 20220630  瀹為檯鑱斿姩6涓湀浠锋牸鍖哄垎
                             var nowdate = new Date();
                             lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
                             nowdate = nowdate.setMonth(nowdate.getMonth() + 6);
-                            if(nowdate < Date.parse(lastendDate)){
-                                upPrice = strMoney;
-                                downPrice = strMoney * 0.8;
+
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start 
+
+                            var Maxcoefficient =0;
+                            var Mincoefficient =0;
+
+                            var ContractMonth = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
+
+                            var AssetRate = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':AssetConsumptionRateNew')).val());
+                            // console.log('***娑堣垂鐜�:'+AssetRate);
+
+                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contractrate')).text(AssetRate +'%');
+
+                            if(AssetRate<= 50){
+                                Maxcoefficient = (1-0.3);
+                                Mincoefficient = (1-0.4);
+                            }else if(AssetRate>50 &&AssetRate<=60){
+                                Maxcoefficient = (1-0.2);
+                                Mincoefficient = (1-0.3);
+                                
+                            }else if(AssetRate>60 &&AssetRate<=70){
+                                Maxcoefficient = (1-0.15);
+                                Mincoefficient = (1-0.25);
+                                
+                            }else if(AssetRate>70 &&AssetRate<=80){
+                                Maxcoefficient = (1-0.1);
+                                Mincoefficient = (1-0.2);
+                                
+                            }else if(AssetRate>80 &&AssetRate<=90){
+                                Maxcoefficient = (1-0.05);
+                                Mincoefficient = (1-0.15);
+                                
+                            }else if(AssetRate>90 &&AssetRate<=100){
+                                Maxcoefficient = 1;
+                                Mincoefficient = (1-0.05);
+                                
+                            }else if(AssetRate>100 &&AssetRate<=110){
+                                Maxcoefficient = (1+0.05);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>110 &&AssetRate<=120){
+                                Maxcoefficient = (1+0.1);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>120 &&AssetRate<=130){
+                                Maxcoefficient = (1+0.2);
+                                Mincoefficient = (1+0.1);
+                                
+                            }else if(AssetRate>130 &&AssetRate<=140){
+                                Maxcoefficient = (1+0.25);
+                                Mincoefficient = (1+0.15);
+                                
+                            }else if(AssetRate>140){
+                                Maxcoefficient = (1+0.3);
+                                Mincoefficient = (1+0.2);
+                                
+                            }
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
+                            // console.log('***鏈�楂樼郴鏁�'+Maxcoefficient);
+                            // console.log('***鏈�浣庣郴鏁�'+Mincoefficient);
+
+                        if(nowdate < Date.parse(lastendDate)){
+                            //璁惧灏忎簬涓ゅ勾鍗�
+                            // upPrice = strMoney;
+                            // downPrice = strMoney * 0.8;
+                        // console.log('***灏忎簬2骞村崐')
+                        // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� start DC 2023/01/19  
+                            //甯傚満澶氬勾淇濊澶囧皬浜�2骞村崐
+                            var AssetModelNo = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Asset_Model_No__c')).value();
+                            var Category4 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Category4__c')).value();
+                            // console.log('***璁惧鍨嬪彿'+AssetModelNo);
+                            // console.log('***浜у搧绫诲瀷'+Category4);
+
+                            //璁惧璁惧娑堣垂鐜囧皬浜�1.4
+                            if(AssetRate<140){
+                                upPrice = VMassetListmonth * ContractMonth /12;
+                                // console.log('娑堣垂鐜囧皬浜�1.4 upPrice = 瀹氫环 *缁忓巻鏈堟暟 /12'+ upPrice);
+
+                                // if((AssetModelNo.includes('290')&&( Category4 =='BF'|| Category4=='BF鎵囨壂'||Category4=='CF'))|| Category4 =='URF'){
+                                //     downPrice = upPrice;
+                                //     // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏃犳渶浣庝环 downPrice '+ downPrice);
+
+                                // }else{
+                                    downPrice = upPrice * 0.8;
+                                    // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏈�浣庝环 downPrice = upPrice* 0.8锛�'+ downPrice);
+
+                                // }
                             }else{
-                                upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
-                                downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+                                upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                                downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;   
+                                // console.log('娑堣垂鐜囧ぇ浜�1.4 upPrice'+ upPrice);
+                                // console.log('娑堣垂鐜囧ぇ浜�1.4 downPrice'+ downPrice);
+                            }
+                            // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� end DC 2023/01/19  
+                            }else{
+                                // upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
+                                // downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+
+
+                                //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start  璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟
+                               
+                                upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                                downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;
+
+                                // console.log('璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟 upPrice'+ upPrice);
+                                // console.log('璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟 downPrice'+ downPrice);
+                                //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
+                            
+
                             }
                             // gzw 20220630  瀹為檯鑱斿姩6涓湀浠锋牸鍖哄垎
                         }else{
                             upPrice = strMoney;
                             downPrice = strMoney * 0.8;
+                            console.log('閫夋嫨1');
                         }
                     }else{
                         upPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Upper/100);
                         downPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Lower/100);
+                        console.log('閫夋嫨2');
                     }
                 }else{
                     //firstCCount ++;
                     upPrice = strMoney;
                     downPrice = strMoney * 0.8;
+                    console.log('閫夋嫨3');
                 }
                 // 涓婁笅闄愬洓鑸嶄簲鍏�
                 upPrice = upPrice.toFixed(2);
@@ -626,14 +997,19 @@
                 newCon = false;
             }
             strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
+
             Price_YearTXT = strMoney * 12;
             if (isnew == 'true') {
                 strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
+
             } else {
                 strMoney = month * strMoney + month2 * strMoney;
             }
+
             var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value(); 
             var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
+            // console.log('***缁翠慨鍚堝悓璁板綍绫诲瀷2'+LastMContractRecord);
+
             if(b != ''){
                 conCCount ++;
                 // 1.鍚堝悓鏈熶笉婊′竴骞存椂锛屽悎鍚屾湡瓒呰繃涓�鍗婃墠鍙紑濮嬬画绛炬姤浠枫��(eg:11涓湀鐨勫悎鍚屼粠6涓湀鍚庢墠鍙姤浠枫��)
@@ -679,21 +1055,124 @@
                         var nowdate = new Date();
                         lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
                         nowdate = nowdate.setMonth(nowdate.getMonth() + 6);
+                        // console.log('**缁撴潫鏃�',lastendDate);
+                        //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start 
+
+                            var Maxcoefficient =0;
+                            var Mincoefficient =0;
+
+                            var ContractMonth = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
+                            // console.log('***缁忓巻鏈堟暟'+ContractMonth);
+                            var AssetRate = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':AssetConsumptionRateNew')).val());
+                            // console.log('***娑堣垂鐜�:'+AssetRate);
+
+                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contractrate')).text(AssetRate +'%');
+
+                            if(AssetRate<= 50){
+                                Maxcoefficient = (1-0.3);
+                                Mincoefficient = (1-0.4);
+                            }else if(AssetRate>50 &&AssetRate<=60){
+                                Maxcoefficient = (1-0.2);
+                                Mincoefficient = (1-0.3);
+                                
+                            }else if(AssetRate>60 &&AssetRate<=70){
+                                Maxcoefficient = (1-0.15);
+                                Mincoefficient = (1-0.25);
+                                
+                            }else if(AssetRate>70 &&AssetRate<=80){
+                                Maxcoefficient = (1-0.1);
+                                Mincoefficient = (1-0.2);
+                                
+                            }else if(AssetRate>80 &&AssetRate<=90){
+                                Maxcoefficient = (1-0.05);
+                                Mincoefficient = (1-0.15);
+                                
+                            }else if(AssetRate>90 &&AssetRate<=100){
+                                Maxcoefficient = 1;
+                                Mincoefficient = (1-0.05);
+                                
+                            }else if(AssetRate>100 &&AssetRate<=110){
+                                Maxcoefficient = (1+0.05);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>110 &&AssetRate<=120){
+                                Maxcoefficient = (1+0.1);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>120 &&AssetRate<=130){
+                                Maxcoefficient = (1+0.2);
+                                Mincoefficient = (1+0.1);
+                                
+                            }else if(AssetRate>130 &&AssetRate<=140){
+                                Maxcoefficient = (1+0.25);
+                                Mincoefficient = (1+0.15);
+                                
+                            }else if(AssetRate>140){
+                                Maxcoefficient = (1+0.3);
+                                Mincoefficient = (1+0.2);
+                                
+                            }
+                            // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
+                            console.log('***鏈�楂樼郴鏁�'+Maxcoefficient);
+                            console.log('***鏈�浣庣郴鏁�'+Mincoefficient);
+
                         if(nowdate < Date.parse(lastendDate)){
-                            upPrice = strMoney;
-                            downPrice = strMoney * 0.8;
+                            //璁惧灏忎簬涓ゅ勾鍗�
+                            // upPrice = strMoney;
+                            // downPrice = strMoney * 0.8;
+                            
+                        // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� start DC 2023/01/19  
+                            //甯傚満澶氬勾淇濊澶囧皬浜�2骞村崐
+                            var AssetModelNo = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Asset_Model_No__c')).value();
+                            var Category4 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Category4__c')).value();
+                            // console.log('***璁惧鍨嬪彿'+AssetModelNo);
+                            // console.log('***浜у搧绫诲瀷'+Category4);
+
+                            //璁惧璁惧娑堣垂鐜囧皬浜�1.4
+                            if(AssetRate<140){
+                                upPrice = VMassetListmonth *ContractMonth / 12;
+                                // console.log('娑堣垂鐜囧皬浜�1.4 upPrice = VMassetListmonth *month /12'+ upPrice);
+
+                                // if((AssetModelNo.includes('290')&&( Category4 =='BF'|| Category4=='BF鎵囨壂'||Category4=='CF'))|| Category4 =='URF'){
+                                //     downPrice = upPrice;
+                                //     // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏃犳渶浣庝环 downPrice '+ downPrice);
+
+                                // }else{
+                                    downPrice = upPrice * 0.8;
+                                    // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏈�浣庝环 downPrice = upPrice* 0.8锛�'+ downPrice);
+
+                                // }
+                            }else{
+                                upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                                downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;   
+                                // console.log('娑堣垂鐜囧ぇ浜�1.4 upPrice'+ upPrice);
+                                // console.log('娑堣垂鐜囧ぇ浜�1.4 downPrice'+ downPrice);
+                            }
+                        // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� end DC 2023/01/19      
+
                         }else{
-                            upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
-                            downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+                            //璁惧澶т簬涓ゅ勾鍗�
+                            // upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
+                            // downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start  璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟
+                            upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                            downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;
+
+                            // console.log('璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟 upPrice'+ upPrice);
+                            // console.log('璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟 downPrice'+ downPrice);
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
                         }
                         // gzw 20220630  瀹為檯鑱斿姩6涓湀浠锋牸鍖哄垎
                     }else{
                         upPrice = strMoney;
                         downPrice = strMoney * 0.8;
+                        console.log('閫夋嫨4');
                     }
                 }else{
                     upPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Upper/100);
                     downPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Lower/100);
+                    // console.log('閫夋嫨5');
                 }
             }else{
                 if (isnew == 'true') {
@@ -712,39 +1191,42 @@
             //j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXT')).text(toNumComma(Price_YearTXT));
             //j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXTHidden')).val(Price_YearTXT);
             if (!isDisabled) {
+                
+                // else{
                 // 瀹為檯鑱斿姩浠锋牸 start
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice));
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_priceHidden')).val(downPrice);
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice));
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_priceHidden')).val(upPrice);
                 // 瀹為檯鑱斿姩浠锋牸 end
+                // }
             }
             //j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPrice')).text(toNumComma(strMoney));
             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPricePageHidden')).val(strMoney);
-            //<!-- (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start -->  
+            
 
+            //<!-- (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start -->  
             Repair_Price_AutoPrice = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Repair_Price_Auto'));
             Repair_Price_Auto = Repair_Price_AutoPrice.value();
             repairMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).value();
             Repair_Price_pass = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Repair_Price_pass')).val();
-            console.log((i+1)+'鍙穜epairMoney='+repairMoney);
-            console.log((i+1)+'鍙稲epair_Price_Auto='+Repair_Price_Auto);
+            // console.log((i+1)+'鍙穜epairMoney='+repairMoney);
+            // console.log((i+1)+'鍙稲epair_Price_Auto='+Repair_Price_Auto);
             if ((repairMoney+1)==1) {
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).val(Repair_Price_Auto);
-                console.log('repairMoney淇敼鎴愬姛');
+                // console.log('repairMoney淇敼鎴愬姛');
             }
             if ((Repair_Price_pass+1)==1) {
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Repair_Price_pass')).val(Repair_Price_Auto);
-                console.log('Repair_Price_pass淇敼鎴愬姛');
+                // console.log('Repair_Price_pass淇敼鎴愬姛');
             }
             repairMoney1 = localParseFloat(repairMoney);
             ISReducedpriceapproval = j$(escapeVfId('allPage:allForm:allBlock:ISReducedpriceapproval')).val();
-            console.log('ISReducedpriceapproval=='+ISReducedpriceapproval);
+            // console.log('ISReducedpriceapproval=='+ISReducedpriceapproval);
             var isDisabled = {!PageDisabled};
             if (ISReducedpriceapproval =='鏈夊叓鎶樹互涓嬪緟瀹℃壒' || ISReducedpriceapproval =='鏄�'|| isDisabled) {
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).attr("disabled", true);
             }else{
-                console.log('鏃犲叓鎶樹互涓嬪緟瀹℃壒鍜屾槸鐨勯噾棰�');
                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).attr("disabled", false);
             }
             ISReducedpriceapproval1 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ISReducedpriceapproval1')).val();
@@ -754,21 +1236,26 @@
                 isresduce = isresduce+1;
             }
           
-            console.log('鍒濆鍖杋sresduce='+isresduce);
-        
-            ResonCannotWarranty = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ResonCannotWarranty')).value();
+            // console.log('鍒濆鍖杋sresduce='+isresduce);
             rppa =  document.getElementById('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Repair_Price_Auto');
+            ResonCannotWarranty = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ResonCannotWarranty')).value();
+            // console.log('涓嶅彲鍙備繚鍘熷洜涓猴細'+ResonCannotWarranty);
+            // console.log('repairMoney鎵ц娆℃暟涓�'+repairMoney);
+            if(!(ResonCannotWarranty.indexOf("寮冧慨") != -1)&&(repairMoney+1)==1){
+                // if (!(situation.indexOf("淇悊涓�")!=-1)&& !(Agreed_Date.indexOf("涓虹┖")!=-1)) { 
+                    rppa.style.display = "none";
+                    j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).val('');
+                    // console.log('###淇敼鎴愬姛');
+                // }
+            }
+            
+            
             situation = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Asset_situation')).value();
             // Agreed_Date =  j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Agreed_Date')).value();
 
-            console.log('situation='+situation);
+            // console.log('situation='+situation);
             // console.log('Agreed_Date1='+Agreed_Date);
-            if(!(ResonCannotWarranty.indexOf("寮冧慨") != -1)&&(repairMoney+1)==1){
-                    rppa.style.display = "none";
-                    j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).val('');
-                    console.log('###淇敼鎴愬姛');
-            }
-            console.log('鍒ゆ柇1'+(situation.indexOf("淇悊涓�")!=-1));
+            
             // console.log('鍒ゆ柇'+(Agreed_Date.indexOf("涓嶄负绌�")!=-1));
             // if ((situation.indexOf("淇悊涓�")!=-1)&& (Agreed_Date.indexOf("涓嶄负绌�")!=-1)) {
             //     console.log('寮�濮嬫搷浣�2');
@@ -782,6 +1269,7 @@
         listSum = listSum + localParseFloat(toNum(strMoney));
         downPriceSum = downPriceSum + localParseFloat(toNum(downPrice));
         upPriceSum =  upPriceSum + localParseFloat(toNum(upPrice));
+        
     }
     
    
@@ -790,6 +1278,7 @@
     
     //j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetSumPrice')).text(toNumComma(listSum));
     //j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetSumPriceHidden')).val(toNum(listSum));
+
     if (!isDisabled) {
         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUp')).text(toNumComma(Math.round(upPriceSum)));
         j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUpHidden')).val(toNum(Math.round(upPriceSum)));
@@ -821,16 +1310,21 @@
     }else{
         result = '缁鍚堝悓';
     }
-    console.log(result);
+    // console.log(result);
     document.getElementById("allPage:allForm:allBlock:contractInfo:Contract_TypeTXT").innerHTML = result;
     document.getElementById("allPage:allForm:allBlock:contractInfo:Contract_TypeTXTHidden").value = result;
-     
     // 鍙栨秷閰稿寲姘�
     //NotUseOxygenatedWaterAmount(1);
     examinationPriceCal(cnt);
     getLastContractRate();
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230315 start
+    // seamlessRenew(cnt);
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230315 end
+    number1++;
+
 }
 function changeAsset(cnt) {
+    console.log('鎵ц浜哻hangeAsset');
     // alert(cnt);
     // 鎻愪氦鍚庡氨椤甸潰涓嶈绠椾簡
     var isDisabled = {!PageDisabled};
@@ -910,6 +1404,10 @@
         var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
         var isnew = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetNewHidden')).val();
         var assetListmonth = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
+        //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/09 start 
+        var VMassetListmonth = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Maintenance_Price_Year__c')).val();
+        //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/09 end 
+
         if (isManual == 'true') {
             var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert')).value();
             if (a != '') {
@@ -921,17 +1419,22 @@
                 //}
 
                 strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
-                // alert(strMoney);
+
+                var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
+                // // alert(strMoney);
+                // console.log('***缁翠慨鍚堝悓璁板綍绫诲瀷3'+LastMContractRecord);
+
                 Price_YearTXT = strMoney * 12;
                 if (isnew == 'true') {
                     newCount ++;
                     strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
+
                 } else {
                     newCon = false;
                     strMoney = month * strMoney + month2 * strMoney;
                 }
                 var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value();
-                var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
+                // var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
                 if(b != ''){
                     conCCount ++;
                     // 1.鍚堝悓鏈熶笉婊′竴骞存椂锛屽悎鍚屾湡瓒呰繃涓�鍗婃墠鍙紑濮嬬画绛炬姤浠枫��(eg:11涓湀鐨勫悎鍚屼粠6涓湀鍚庢墠鍙姤浠枫��)
@@ -975,12 +1478,108 @@
                             var nowdate = new Date();
                             lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
                             nowdate = nowdate.setMonth(nowdate.getMonth() + 6);
-                            if(nowdate < Date.parse(lastendDate)){
-                                upPrice = strMoney;
-                                downPrice = strMoney * 0.8;
+
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start 
+                            var Maxcoefficient =0;
+                            var Mincoefficient =0;
+
+                            var AssetRate = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':AssetConsumptionRateNew')).val());
+                            console.log('***娑堣垂鐜�:'+AssetRate);
+
+                            var ContractMonth = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
+
+                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contractrate')).text(AssetRate +'%');
+
+                            if(AssetRate<= 50){
+                                Maxcoefficient = (1-0.3);
+                                Mincoefficient = (1-0.4);
+                            }else if(AssetRate>50 &&AssetRate<=60){
+                                Maxcoefficient = (1-0.2);
+                                Mincoefficient = (1-0.3);
+                                
+                            }else if(AssetRate>60 &&AssetRate<=70){
+                                Maxcoefficient = (1-0.15);
+                                Mincoefficient = (1-0.25);
+                                
+                            }else if(AssetRate>70 &&AssetRate<=80){
+                                Maxcoefficient = (1-0.1);
+                                Mincoefficient = (1-0.2);
+                                
+                            }else if(AssetRate>80 &&AssetRate<=90){
+                                Maxcoefficient = (1-0.05);
+                                Mincoefficient = (1-0.15);
+                                
+                            }else if(AssetRate>90 &&AssetRate<=100){
+                                Maxcoefficient = 1;
+                                Mincoefficient = (1-0.05);
+                                
+                            }else if(AssetRate>100 &&AssetRate<=110){
+                                Maxcoefficient = (1+0.05);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>110 &&AssetRate<=120){
+                                Maxcoefficient = (1+0.1);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>120 &&AssetRate<=130){
+                                Maxcoefficient = (1+0.2);
+                                Mincoefficient = (1+0.1);
+                                
+                            }else if(AssetRate>130 &&AssetRate<=140){
+                                Maxcoefficient = (1+0.25);
+                                Mincoefficient = (1+0.15);
+                                
+                            }else if(AssetRate>140){
+                                Maxcoefficient = (1+0.3);
+                                Mincoefficient = (1+0.2);
+                                
+                            }
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
+                            // console.log('***鏈�楂樼郴鏁�'+Maxcoefficient);
+                            // console.log('***鏈�浣庣郴鏁�'+Mincoefficient);
+
+                        if(nowdate < Date.parse(lastendDate)){
+                            //璁惧灏忎簬涓ゅ勾鍗�
+                            // upPrice = strMoney;
+                            // downPrice = strMoney * 0.8;
+                        // console.log('***灏忎簬2骞村崐')
+                        // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� start DC 2023/01/19  
+                            //甯傚満澶氬勾淇濊澶囧皬浜�2骞村崐
+                            var AssetModelNo = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Asset_Model_No__c')).value();
+                            var Category4 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Category4__c')).value();
+                            // console.log('***璁惧鍨嬪彿'+AssetModelNo);
+                            // console.log('***浜у搧绫诲瀷'+Category4);
+
+                            //璁惧璁惧娑堣垂鐜囧皬浜�1.4
+                            if(AssetRate<140){
+                                upPrice = VMassetListmonth * ContractMonth / 12 ;
+                                // console.log('娑堣垂鐜囧皬浜�1.4 upPrice = VMassetListmonth *ContractMonth / 12'+ upPrice);
+
+                                // if((AssetModelNo.includes('290')&&( Category4 =='BF'|| Category4=='BF鎵囨壂'||Category4=='CF'))|| Category4 =='URF'){
+                                //     downPrice = upPrice;
+                                //     // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏃犳渶浣庝环 downPrice '+ downPrice);
+
+                                // }else{
+                                    downPrice = upPrice * 0.8;
+                                    // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏈�浣庝环 downPrice = upPrice* 0.8锛�'+ downPrice);
+
+                                // }
                             }else{
-                                upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
-                                downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+                                upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                                downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;   
+                                    // console.log('娑堣垂鐜囧ぇ浜�1.4 upPrice'+ upPrice);
+                                    // console.log('娑堣垂鐜囧ぇ浜�1.4 downPrice'+ downPrice);
+                            }
+                            // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� end DC 2023/01/19  
+
+                            }else{
+                                // upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
+                                // downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+
+                                //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start  璁惧澶т簬2骞村崐 缁浠锋牸 =瀹氫环*娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟
+                                upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                                downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;
+                                //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
                             }
                             // gzw 20220630  瀹為檯鑱斿姩6涓湀浠锋牸鍖哄垎
                         }else{
@@ -1041,14 +1640,17 @@
                 newCon = false;
             }
             strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
+
             Price_YearTXT = strMoney * 12;
             if (isnew == 'true') {
                 strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
             } else {
                 strMoney = month * strMoney + month2 * strMoney;
+
             }
             var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value(); 
             var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
+            console.log('***缁翠慨鍚堝悓璁板綍绫诲瀷4'+LastMContractRecord);
             if(b != ''){
                 conCCount ++;
                 // 1.鍚堝悓鏈熶笉婊′竴骞存椂锛屽悎鍚屾湡瓒呰繃涓�鍗婃墠鍙紑濮嬬画绛炬姤浠枫��(eg:11涓湀鐨勫悎鍚屼粠6涓湀鍚庢墠鍙姤浠枫��)
@@ -1094,12 +1696,108 @@
                         var nowdate = new Date();
                         lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
                         nowdate = nowdate.setMonth(nowdate.getMonth() + 6);
+
+                         //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start 
+                            var Maxcoefficient =0;
+                            var Mincoefficient =0;
+
+                            var AssetRate = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':AssetConsumptionRateNew')).val());
+                            console.log('***娑堣垂鐜�:'+AssetRate);
+
+                            var ContractMonth = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
+
+                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contractrate')).text(AssetRate +'%');
+
+                            if(AssetRate<= 50){
+                                Maxcoefficient = (1-0.3);
+                                Mincoefficient = (1-0.4);
+                            }else if(AssetRate>50 &&AssetRate<=60){
+                                Maxcoefficient = (1-0.2);
+                                Mincoefficient = (1-0.3);
+                                
+                            }else if(AssetRate>60 &&AssetRate<=70){
+                                Maxcoefficient = (1-0.15);
+                                Mincoefficient = (1-0.25);
+                                
+                            }else if(AssetRate>70 &&AssetRate<=80){
+                                Maxcoefficient = (1-0.1);
+                                Mincoefficient = (1-0.2);
+                                
+                            }else if(AssetRate>80 &&AssetRate<=90){
+                                Maxcoefficient = (1-0.05);
+                                Mincoefficient = (1-0.15);
+                                
+                            }else if(AssetRate>90 &&AssetRate<=100){
+                                Maxcoefficient = 1;
+                                Mincoefficient = (1-0.05);
+                                
+                            }else if(AssetRate>100 &&AssetRate<=110){
+                                Maxcoefficient = (1+0.05);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>110 &&AssetRate<=120){
+                                Maxcoefficient = (1+0.1);
+                                Mincoefficient = 1;
+                                
+                            }else if(AssetRate>120 &&AssetRate<=130){
+                                Maxcoefficient = (1+0.2);
+                                Mincoefficient = (1+0.1);
+                                
+                            }else if(AssetRate>130 &&AssetRate<=140){
+                                Maxcoefficient = (1+0.25);
+                                Mincoefficient = (1+0.15);
+                                
+                            }else if(AssetRate>140){
+                                Maxcoefficient = (1+0.3);
+                                Mincoefficient = (1+0.2);
+                                
+                            }
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
+                            // console.log('***鏈�楂樼郴鏁�'+Maxcoefficient);
+                            // console.log('***鏈�浣庣郴鏁�'+Mincoefficient);
+
                         if(nowdate < Date.parse(lastendDate)){
-                            upPrice = strMoney;
-                            downPrice = strMoney * 0.8;
+                            //璁惧灏忎簬涓ゅ勾鍗�
+                            // upPrice = strMoney;
+                            // downPrice = strMoney * 0.8;
+                        // console.log('***灏忎簬2骞村崐')
+                        // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� start DC 2023/01/19  
+                            //甯傚満澶氬勾淇濊澶囧皬浜�2骞村崐
+                            var AssetModelNo = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Asset_Model_No__c')).value();
+                            var Category4 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Category4__c')).value();
+                            // console.log('***璁惧鍨嬪彿'+AssetModelNo);
+                            // console.log('***浜у搧绫诲瀷'+Category4);
+
+                            //璁惧璁惧娑堣垂鐜囧皬浜�1.4
+                            if(AssetRate<140){
+                                upPrice = VMassetListmonth * ContractMonth /12;
+                                // console.log('娑堣垂鐜囧皬浜�1.4 upPrice = VMassetListmonth *ContractMonth /12'+ upPrice);
+
+                               // if((AssetModelNo.includes('290')&&( Category4 =='BF'|| Category4=='BF鎵囨壂'||Category4=='CF'))|| Category4 =='URF'){
+                                //     downPrice = upPrice;
+                                //     // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏃犳渶浣庝环 downPrice '+ downPrice);
+
+                                // }else{
+                                    downPrice = upPrice * 0.8;
+                                    // console.log('娑堣垂鐜囧皬浜�1.4 浜у搧鏈�浣庝环 downPrice = upPrice* 0.8锛�'+ downPrice);
+
+                                // }
+                            }else{
+                                upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                                downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;   
+                                // console.log('娑堣垂鐜囧ぇ浜�1.4 upPrice'+ upPrice);
+                                // console.log('娑堣垂鐜囧ぇ浜�1.4 downPrice'+ downPrice);
+                            }
+                            // 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� end DC 2023/01/19  
                         }else{
-                            upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
-                            downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+                            // upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
+                            // downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
+
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start  璁惧澶т簬2骞村崐 缁浠锋牸 = 瀹氫环 *娑堣垂鐜囧搴旂郴鏁� / 12 *鍚堝悓鏈堟暟
+                            upPrice = VMassetListmonth * ContractMonth *Maxcoefficient / 12;
+                            downPrice = VMassetListmonth * ContractMonth * Mincoefficient / 12;
+                            //甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end 
+
                         }
                         // gzw 20220630  瀹為檯鑱斿姩6涓湀浠锋牸鍖哄垎
                     }else{
@@ -1145,16 +1843,16 @@
             repairMoney1 = localParseFloat(repairMoney);
             ISReducedpriceapproval1 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ISReducedpriceapproval1')).val();
             ISReduced = j$(escapeVfId('allPage:allForm:allBlock:ISReducedpriceapproval')).val();
-            console.log('ISReduced='+ISReduced);
+            // console.log('ISReduced='+ISReduced);
             
-            console.log('Repair_Price_Auto='+Repair_Price_Auto);
-            console.log('绗�'+(i+1)+'涓澶嘔SReducedpriceapproval1='+ISReducedpriceapproval1);
-            console.log('repairMoney1='+repairMoney1);
+            // console.log('Repair_Price_Auto='+Repair_Price_Auto);
+            // console.log('绗�'+(i+1)+'涓澶嘔SReducedpriceapproval1='+ISReducedpriceapproval1);
+            // console.log('repairMoney1='+repairMoney1);
             
             Repair_Price_pass1 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Repair_Price_pass')).val();
             Repair_Price_pass2 = localParseFloat(Repair_Price_pass1);
-            console.log('缁撴灉='+(repairMoney1<Repair_Price_pass2));
-            console.log('Repair_Price_pass2='+Repair_Price_pass2);
+            // console.log('缁撴灉='+(repairMoney1<Repair_Price_pass2));
+            // console.log('Repair_Price_pass2='+Repair_Price_pass2);
             if (repairMoney1> 0 && repairMoney1<(Repair_Price_Auto*0.80) && Repair_Price_Auto != null && isFSE == true) {
                  if (Repair_Price_pass1!=null && repairMoney1<Repair_Price_pass2) {
                     alert('鐢变簬瀛樺湪鎶樻墸鐜囪秴杩�20%浠ヤ笂鐨勪慨鐞嗗姞璐瑰噺浠风敵璇凤紝璇峰厛鐐瑰嚮鈥滄彁浜C璇勪及鈥濇寜閽紝寰匯C璇勪及鍚庢湇鍔$鐞嗛儴浼氭帹杩涘鎵�');
@@ -1183,13 +1881,13 @@
             situation = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Asset_situation')).value();
             // Agreed_Date =  j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Agreed_Date')).value();
 
-            console.log('situation='+situation);
+            // console.log('situation='+situation);
             // console.log('Agreed_Date1='+Agreed_Date);
-            //if(ResonCannotWarranty!=null&&!(ResonCannotWarranty.indexOf("寮冧慨") != -1)){
-           //         rppa.style.display = "none";
-            //        j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).val('');
-            //       console.log('###淇敼鎴愬姛');
-           // }
+            // if(!(ResonCannotWarranty.indexOf("寮冧慨") != -1)){
+            //         rppa.style.display = "none";
+            //         // j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).val('');
+            //         // console.log('###淇敼鎴愬姛');
+            // }
             // if ((situation.indexOf("淇悊涓�")!=-1)&& (Agreed_Date.indexOf("涓虹┖")!=-1)) {
             //     console.log('寮�濮嬫搷浣�1');
             //     rppa.style.display = "none";
@@ -1207,7 +1905,7 @@
         downPriceSum = downPriceSum + localParseFloat(toNum(downPrice));
         upPriceSum =  upPriceSum + localParseFloat(toNum(upPrice));
     }
-    console.log('鏀瑰彉閲戦isresduce='+isresduce);
+    // console.log('鏀瑰彉閲戦isresduce='+isresduce);
      if (isresduce!=0) {
                 toChange1();
         }else{
@@ -1252,6 +1950,33 @@
      
     examinationPriceCal(cnt);
     getLastContractRate();
+    //涓婇檺鍚堝悓 20230214 hql start
+    var RequestquotationAmount = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val();
+    console.log('鐢宠鎶ヤ环閲戦='+RequestquotationAmount);
+    var AssetRepairSumPrice    = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPrice')).text();
+    console.log('鍚堝悓璁惧淇悊鎬婚='+AssetRepairSumPrice);
+    Limit_Price_Amount = (localParseFloat(AssetRepairSumPrice)+localParseFloat(RequestquotationAmount))*1.3;
+    Limit_Price_Amount = Math.round(Limit_Price_Amount);
+    // console.log('鍙栨暣1='+Math.round(124.5));
+    // console.log('鍙栨暣2='+Math.round(124.4));
+    // console.log('鍙栨暣3='+Math.round(124.6));
+    Limit_Price_AmountOne =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).value();
+    Limit_PriceHidden =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_PriceHidden')).value();
+    // if (Limit_PriceHidden*1==0) {
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val(Limit_Price_Amount);
+    // }
+    Limit_PriceHidden2 =  j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price2Hidden')).value();
+    if (Limit_PriceHidden2 == 'false') {
+        // lpa =  document.getElementById('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount');
+        // lpa.style.display = "none";
+        // console.log('闅愯棌瀹屾瘯');
+        j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Limit_Price_Amount')).val('');
+    }
+    console.log('涓婇檺閲戦涓�'+Limit_Price_Amount);
+    //涓婇檺鍚堝悓 20230214 hql end
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230315 start
+    // seamlessRenew(cnt);
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230315 end
 }
 
 
@@ -1481,8 +2206,136 @@
     //     return true;
     // }
 }
+// 鎶ヤ环瑙勫垯鏀瑰杽 20230310 start
+// function addMonths(yearMonthDay ,monthNum){
+//     var arr=yearMonthDay.split( '/');
+//     var year=parseInt(arr[0]);
+//     var month=parseInt(arr[1]);
+//     var day=parseInt(arr[2]);
+//     month=month+monthNum;
+//     if(month>12){//鏈堜唤鍔�
+//         var yearNum=parseInt( (month-1)/12);
+//         month=month%12==0?12 :month%12;
+//         year+=yearNum;
+//         }else if(month<=0){//鏈堜唤鍑�
+//             month=Math.abs( month);
+//             var yearNum=parseInt( (month+12)/12);
+//             year-=yearNum;
+//         }
+//         month=month<10?"0"+month :month;
+//         return year+"/"+month+"/"+day;
+// }
+// function Blankperiod(startdate,i,LastMContract_Price,Punish,Adjustment_ratio_Upper,Adjustment_ratio_Lower,strMoney,type){
+//             var  downPrice = 0;
+//             var  upPrice = 0;
+//             var  isSeamlessRenew = 0;
+//             Blank_period = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Blank_period')).value();
+//             var lastendDate1= j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value()
+//             var lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value());
+//             // console.log("lastendDate1="+lastendDate1); 
+//             var today = new Date();
+//             if (lastendDate1.length !=0) {
+//                 if (startdate == null) {
+//                     // console.log(1);
+//                      Blank_period=(today-lastendDate)/(3600*24*1000);
+//                 }else{
+//                     // console.log(2);
+//                     Blank_period=(startdate-lastendDate)/(3600*24*1000);
+//                 }
+//                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Blank_period')).val(Blank_period);
+//             }
+//             if (Number(Blank_period)<15&&Blank_period.length != 0) {
+//                 // console.log(3);
+//                 j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Blank_period')).val('鏃犵紳缁');
+//             }
+//             Blank_period1 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Blank_period')).value();
+//             // console.log('Blank_period1='+Blank_period1);
+//             // 2.鏃犵┖鐧芥湡璁惧鏄惁绠楁棤缂濈画绛捐澶� 鏄惁鍖呭惈鍦ㄦ棤缂濈画绛剧殑鎶ヤ环鍒ゆ柇涓紙棣栫鐨勮澶囷級?
+//             if (Blank_period1 != '鏃犵紳缁' && Blank_period.length != 0) {
+//                 isSeamlessRenew++;
+//             }
+//             // 1.瀹炵哗杩炲姩浠锋牸鍜岃澶囧弬淇濆畾浠� 閫昏緫鏌ョ湅
+//             upPrice1 = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Upper/100);
+//             downPrice1 = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Lower/100);
+//             // 瀹氫环8鎶�
+//             downPrice2 = strMoney * 0.8;
 
+//             upPrice1 = upPrice1.toFixed(2);
+//             upPrice2 = strMoney.toFixed(2);
+//             downPrice1 = downPrice1.toFixed(2);
+//             downPrice2 = downPrice2.toFixed(2);
+//             // console.log('LastMContract_Price='+LastMContract_Price);
+//             // console.log('upPrice1='+upPrice1);
+//             // console.log('downPrice1='+downPrice1);
+//             // console.log('upPrice2='+upPrice2);
+//             // console.log('downPrice2='+downPrice2);
+//             if (!isDisabled) {
+//                 if (Blank_period1.length==0) {
+//                     downPrice = downPrice2;
+//                     upPrice = upPrice2;
+//                 }
+//                 if (Blank_period1.length!=0 && Number(Blank_period1)<180 || Blank_period1 == '鏃犵紳缁' ) {
+//                     if (type == 1) {
+//                         console.log('缁璁惧灏忎簬6涓湀');
+//                         j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice1));
+//                         j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice1));
+//                     }
+//                      downPrice = downPrice1;
+//                      upPrice = upPrice1;
+//                 }
+//                 if (Blank_period1 != '鏃犵紳缁' && Number(Blank_period1)>180 && Number(Blank_period1)<365) {
+//                     if (downPrice1<downPrice2) {
+//                         if (type == 1) {
+//                             console.log('缁璁惧6-12涓湀1');
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice2));
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice2));
+//                         }
+                        
+//                         downPrice = downPrice2;
+//                         upPrice = upPrice2;
+//                     }else{
+//                          if (type == 1) {
+//                             console.log('缁璁惧6-12涓湀2');
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice1));
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice1));
+//                           }
+//                         downPrice = downPrice1;
+//                         upPrice = upPrice1;
+//                     }
+//                 }
+//                 if (Blank_period1 != '鏃犵紳缁' && Number(Blank_period1)>365) {
+
+//                     if (downPrice1<upPrice2) {
+//                         if (type == 1) {
+//                             console.log('缁璁惧12涓湀1');
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(upPrice2));
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice2));
+//                         }
+//                         downPrice = upPrice2;
+//                         upPrice = upPrice2;
+//                     }else{
+//                         if (type == 1) {
+//                             console.log('缁璁惧12涓湀2');
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice1));
+//                             j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice1));
+//                         }
+//                         downPrice = downPrice1;
+//                         upPrice = upPrice1;
+//                     }
+//                 }
+//             }
+//         return downPrice+"/"+upPrice+"/"+isSeamlessRenew;
+// }
+// 鎶ヤ环瑙勫垯鏀瑰杽 20230310 end
 function changeEstiStartdate(val) {
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 start
+       // var startday = addMonths(val,6);
+       // var startday1 = addMonths(val,12);
+       //  document.getElementById("startdateaddsix1").value = startday;
+       //  document.getElementById("startdateaddsix2").value = startday;
+       //  document.getElementById("startdateaddsix3").value = startday1;
+       //  document.getElementById("startdateaddsix4").value = val;
+    // 鎶ヤ环瑙勫垯鏀瑰杽 20230310 end
     if ('{!SaveBtnDisabled}' == 'false') {
         j$(escapeVfId('allPage:allForm:contractstartdate')).val(val);
         changeContractStartdate(val);
@@ -1654,6 +2507,25 @@
             var dayStr = '00' + contractDate.getDate();
             dayStr = dayStr.substring(dayStr.length-2, dayStr.length);
             var contractDateStr = contractDate.getFullYear() + '/' + monthStr + '/' + dayStr;
+            //璐告槗鍚堣 you 20230414 start
+            var AccDealerBlacklist = j$(escapeVfId('allPage:allForm:AccDealerBlacklist')).value();//榛戝悕鍗�,璀︾ず鍚嶅崟
+            var TradeComplianceStatusFlagFW = '{!$Label.TradeComplianceStatusFlagFW}';//璐告槗鍚堣寮�鍏�
+            var IFTradeComplianceAlert = '{!$Label.IFTradeComplianceAlert}';//璐告槗鍚堣鎻愰啋
+            if(TradeComplianceStatusFlagFW=='true'){
+            if(AccDealerBlacklist =='1'){
+               alert('鎮ㄦ墍閫夋嫨鐨勫鎴�(鍖婚櫌/缁忛攢鍟�)瀛樺湪璐告槗鍚堣椋庨櫓锛屾棤娉曠璁㈡湇鍔″悎鍚岋紝寤鸿鎮ㄥ悜瀹㈡埛鍋氬ソ涓嶇绾﹁鏄�,'+IFTradeComplianceAlert);
+               var reflag = interceptsend();
+               unblockUI();
+               return null;
+               
+            }else if(AccDealerBlacklist =='2'){
+               if (!confirm('鎮ㄦ墍閫夋嫨鐨勫鎴�(鍖婚櫌/缁忛攢鍟�)瀛樺湪璐告槗鍚堣璀︾ず椋庨櫓锛屼笉寤鸿绛捐鏈嶅姟鍚堝悓锛岃鎮ㄧ‘璁ゆ槸鍚︾户缁敵璇�,'+IFTradeComplianceAlert)) {
+                unblockUI();
+                return null;
+                }
+            }
+            }
+            //璐告槗鍚堣 you 20230414 end
 
             //var neDt = contractDate.getFullYear() + contractDate.getMonth() + contractDate.getDate();
             //monthStr = '00' + (oldDate.getMonth()+1);
@@ -1667,7 +2539,8 @@
             } else {
                 var oldp = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:oldMainteReal')).value());
                 var newp = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text());
-
+                // console.log('oldp='+oldp);
+                //  console.log('newp='+newp);
                 if (oldp != newp) {
                     // 20201106 楂樼珷浼� 鎻愰啋娑堟伅淇敼 start
                     j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
@@ -1858,6 +2731,10 @@
     <apex:inputHidden id="changedAfterPrint" value="{!changedAfterPrint}"/>
     <apex:inputHidden id="changedSubmitPrice" value="{!changedSubmitPrice}"/>
     <apex:inputHidden id="isSaveOrApproval" value="{!isSaveOrApproval}"/>
+    <!-- 璐告槗鍚堣 you 20230414-->
+    <apex:inputHidden id="AccDealerBlacklist" value="{!contract.AccDealerBlacklist__c}"/>
+
+    <apex:actionFunction name="interceptsend" action="{!interceptsend}"  oncomplete="unblockUI();"/>
 
     <!-- HWAG-B4R3SS  START 20181026-->
     <apex:actionFunction name="searchfunc" action="{!searchBtn}" rerender="Form,Block,assetSection2,pageMessages,allBlock" onComplete="unblockUI();"></apex:actionFunction>
@@ -1944,7 +2821,7 @@
         <apex:pageBlockSection title="鏈嶅姟鍚堝悓" id="contract">
         <!-- <apex:outputPanel/> -->
             <apex:outputPanel >
-            <table align="center" width="100%"  style="border-collapse:separate; border-spacing:0px 10px" >
+             <table align="center" width="100%"  style="border-collapse:separate; border-spacing:0px 10px" >
                 <tr>    
                     <td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">鎶ヤ环缂栫爜</label> </td>
                     <td width="50%" align="left"> <apex:outputField value="{!estimate.Name}"/> </td>
@@ -2084,21 +2961,35 @@
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Asset.fields.Department_Name__c.label}</th>
                         
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Asset.fields.Management_Code__c.label}</th>
+                        <!-- <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Asset_Consumption_rate__c.label}</th> -->
+                        <!-- <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Asset.fields.CurrentContract_End_Date__c.label}</th> -->
+                        <!-- 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/20  start-->
+                        <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset__c.fields.IS_VMContract_Asset__c.label}</th>
+ 
+                        <!-- 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/02/20  end-->
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Asset_Consumption_rate__c.label}</th>
-                        <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Asset.fields.CurrentContract_End_Date__c.label}</th>
+ 
+                        <!-- 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 start -->
+                        <!-- <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Asset_Consumption_rate__c.label}</th>
+ -->
+                        <!-- 甯傚満澶氬勾淇濅慨浠锋牸寮�鍙� DC 2023/1/30 end -->
+                        <th style="width:70px" class="headerRow  booleanColumn">
+                            <!-- 鏈�杩戜竴鏈熺淮淇悎鍚岀粨鏉� -->
+                            {!$ObjectType.Asset.fields.CurrentContract_End_Date__c.label}
+                        </th>
                         <!-- 瀹炵哗鑱斿姩浠锋牸璁$畻 start -->
                         <th style="width:35px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Adjustment_Upper_price__c.label}</th>
                         <th style="width:35px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Adjustment_Lower_price__c.label}</th>
                         <!-- 瀹炵哗鑱斿姩浠锋牸璁$畻 end -->
                         <!-- 闅愯棌鍚堝悓鏈堟暟
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract__c.fields.Contract_Range__c.label}</th>-->
-
-
-
-
-
-
-
+ 
+ 
+ 
+ 
+ 
+ 
+ 
                         
                         <!-- <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Asset.fields.Asset_Owner__c.label}</th>
                         <th style="width:90px" class="headerRow  booleanColumn">{!$ObjectType.Asset.fields.Accumulation_Repair_Amount__c.label}</th>
@@ -2106,12 +2997,12 @@
                         <th style="width:90px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Maintenance_Price_YearTXT__c.label}</th>-->
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Repair_Price__c.label}</th>
                         <!-- (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start -->
-
+ 
                         <th style="width:70px" class="headerRow ">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Repair_Price_Auto__c.label}</th>
-
+ 
                        <!-- (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� end -->
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Comment__c.label}</th>
-
+ 
                         <!-- (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� 绗笁鏂瑰洖褰� -->
                         <th style="width:70px" class="headerRow  booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Third_Party_Return__c.label}</th>
                     </tr>
@@ -2173,17 +3064,53 @@
                                
                                 <td class="dataCell" width="70px">
                                     <apex:outputField value="{!ar.rec.CurrentContract_F__r.Maintenance_Contract_No_F__c}" rendered="{!Not(ar.IsManual)}" id="Contract_No"/>
+ 
                                     <apex:inputHidden value="{!ar.rec.CurrentContract_F__r.RecordType_DeveloperName__c}" id="LastMContractRecord"/>
                                     <apex:inputField value="{!ar.rec.CurrentContract_F_asset__r.endDateGurantee_Text__c}" id="endDateGurantee_Text" style="display: none" showDatePicker="false"/>
                                     <apex:inputHidden value="{!ar.rec.CurrentContract_F__c}" id="LastMContractID"/>
+                                    <!-- 甯傚満澶氬勾淇濅环鏍煎紑鍙� start 20223/01/17 缁翠慨鍚堝悓/淇濇湁璁惧 璁惧娑堣垂鐜� -->
+ 
+ 
+                                    <!-- <apex:outputField value="{!ar.rec.CurrentContract_F_asset__r.IS_VMContract_Asset__c}" rendered="{!Not(ar.IsManual)}" id="IS_VMContract_Asset"/> -->
+ 
+                                    <apex:inputHidden value="{!ar.rec.CurrentContract_F_asset__r.Asset_Consumption_Rate__c}" id="AssetConsumptionRateNew"/>
+ 
+                                    <apex:inputHidden value="{!ar.rec.CurrentContract_F_asset__r.Maintenance_Price_Year__c}" id="Maintenance_Price_Year__c"/>
+ 
+                                 <!--    <apex:inputField value="{!ar.rec.CurrentContract_F_asset__r.Asset_Consumption_Rate__c}" id="AssetConsumptionRateNew2" style="display: none" showDatePicker="false" />
+ 
+                                    <apex:outputText value="{!ar.rec.CurrentContract_F_asset__r.Asset_Consumption_Rate__c}" id="AssetConsumptionRateNew3" rendered="{!Not(ar.IsManual)}" style="display: none"/> -->
+ 
+                                    <apex:inputField value="{!ar.rec.Product2.Asset_Model_No__c}" id="Asset_Model_No__c" style="display: none" showDatePicker="false"/>
+ 
+                                    <apex:inputField value="{!ar.rec.Product2.Category4__c}" id="Category4__c" style="display: none" showDatePicker="false"/>
+                                    <!-- 甯傚満澶氬勾淇濅环鏍煎紑鍙� end 20223/01/17 璁惧娑堣垂鐜� -->
+ 
                                 </td>
+                                 <!-- <td class="dataCell" width="70px"> -->
+                                    <!-- old: 鐩存帴鎷夸繚鏈夎澶囩殑鏈�杩戜竴鏈熺淮淇悎鍚� -->
+                                    <!-- <apex:outputField value="{!ar.rec.CurrentContract_F__r.Contract_End_Date__c}" rendered="{!(Not(ar.IsManual)&& ar.rec.CurrentContract_F__c != null)}" id="End_Date" /> -->
+                                    <!-- new: 鍦ㄨ幏鍙栦繚鏈夎澶囦俊鎭椂鐩存帴鍒ゆ柇淇濇湁璁惧鐨勫瓧娈垫椂闂达紙淇濅慨鏈熻嚦/鏈�杩戜竴鏈熺淮淇悎鍚岀粨鏉熸棩锛� -->
+                                   <!--  <apex:outputField value="{!ar.rec.CurrentContract_End_Date__c}" rendered="{!(Not(ar.IsManual) && ar.rec.CurrentContract_F__c != null )}" id="End_Date" />
+                                </td> -->
+                                 <!-- 甯傚満澶氬勾淇濅环鏍煎紑鍙� end 20223/02/20 鏄惁澶氬勾淇濊澶� start -->
+                                <td class="dataCell" width="90px" style="text-align:center">
+                                    <apex:outputField value="{!ar.rec.CurrentContract_F_asset__r.IS_VMContract_Asset__c}" rendered="{!Not(ar.IsManual)}" id="IS_VMContract_Asset"/>
+                                </td>
+                                 <!-- 甯傚満澶氬勾淇濅环鏍煎紑鍙� end 20223/02/20 鏄惁澶氬勾淇濊澶� end -->
+ 
                                 <td class="dataCell" width="90px" style="text-align:right" >
                                     <apex:outputField value="{!ar.mcae.Asset_Consumption_rate__c}" rendered="{!Not(ar.IsManual)}" id="Contractrate"/>
                                     <apex:inputHidden value="{!ar.rec.CurrentContract_F__r.Contract_Range__c}" id="lastContRange"/>
                                 </td>
+                                <!-- 2023/03/21  !ar.rec.CurrentContract_F_asset__r.IS_VMContract_Asset__c 涓簍rue  淇濇湁璁惧缁撴潫鏃堕棿锛歵rue:澶氬勾淇濓細淇濅慨鏈熻嚦锛沠alse.鏈�杩戜竴鏈熺淮淇悎鍚岀粨鏉熸棩 -->
                                 <td class="dataCell" width="70px">
-                                    <apex:outputField value="{!ar.rec.CurrentContract_F__r.Contract_End_Date__c}" rendered="{!(Not(ar.IsManual)&& ar.rec.CurrentContract_F__c != null)}" id="End_Date" />
+                                    <!-- old: 鐩存帴鎷夸繚鏈夎澶囩殑鏈�杩戜竴鏈熺淮淇悎鍚� -->
+                                    <!-- <apex:outputField value="{!ar.rec.CurrentContract_F__r.Contract_End_Date__c}" rendered="{!(Not(ar.IsManual)&& ar.rec.CurrentContract_F__c != null)}" id="End_Date" /> -->
+                                    <!-- new: 鍦ㄨ幏鍙栦繚鏈夎澶囦俊鎭椂鐩存帴鍒ゆ柇淇濇湁璁惧鐨勫瓧娈垫椂闂达紙淇濅慨鏈熻嚦/鏈�杩戜竴鏈熺淮淇悎鍚岀粨鏉熸棩锛� -->
+                                    <apex:outputField value="{!ar.rec.CurrentContract_End_Date__c}" rendered="{!(Not(ar.IsManual) && ar.rec.CurrentContract_F__c != null )}" id="End_Date" />
                                 </td>
+ 
                                  <!-- 瀹炵哗鑱斿姩浠锋牸璁$畻 start -->
                                 <td class="dataCell" width="35px">
                                     <apex:outputText value="{!ar.mcae.Adjustment_Upper_price__c}" id="Adjustment_Upper_price"/>
@@ -2192,6 +3119,10 @@
                                 </td>
                                 <td class="dataCell" width="35px" >
                                     <apex:outputText value="{!ar.mcae.Adjustment_Lower_price__c}" id="Adjustment_Lower_price"/>
+                                  <!--   // 鏈嶅姟鍚堝悓鎶ヤ环瑙勫垯鏀瑰杽 20230227 start -->
+                                      <!-- <apex:inputHidden value="{!ar.ISStandardPricing}" id="ISStandardPricing" /> -->
+ 
+                                  <!-- // 鏈嶅姟鍚堝悓鎶ヤ环瑙勫垯鏀瑰杽 20230227 end -->
                                     <apex:inputHidden value="{!ar.mcae.LastMContract_Price__c}" id="LastMContract_Price"/>
                                     <apex:inputHidden value="{!ar.mcae.Adjustment_ratio_Lower__c}" id="Adjustment_ratio_Lower"/>
                                     <apex:inputHidden value="{!ar.mcae.Adjustment_Lower_price__c}" id="Adjustment_Lower_priceHidden"/>
@@ -2199,7 +3130,7 @@
                                         <apex:inputHidden value="{!ar.mcae.Estimate_List_Price__c}" id="assetListPriceHidden"/>
                                         <apex:inputHidden value="{!ar.mcae.Estimate_List_Price_Page__c}" id="assetListPricePageHidden" />
                                         <apex:inputHidden value="{!ar.rec.CurrentContract_F__r.Estimate_Num__c}" id="Estimate_NumHidden" />
-
+ 
                                     </apex:outputPanel>
                                     
                                     <apex:outputPanel layout="none" rendered="{!Not($ObjectType.Maintenance_Contract_Asset_Estimate__c.createable)}" >
@@ -2209,14 +3140,17 @@
                                     <!-- 20200103 Gzw 璁$畻瀹為檯鎶ヤ环閲戦 start -->
                                         <apex:inputHidden value="{!ar.mcae.Estimate_Cost__c}" id="Estimate_Cost"/>
                                     <!-- 20200103 Gzw 璁$畻瀹為檯鎶ヤ环閲戦 end -->
-
+ 
                                 </td>
                                 <td class="dataCell" width="35px" style="text-align:right" >
                                     <apex:inputField value="{!ar.mcae.Repair_Price__c}" id="repairPrice" style="ime-mode: disabled; width:95%; text-align:right;" onchange="changeAsset({!productCount})"/>
                                 </td>
                                <!-- (2022骞�12鏈堜笂绾�)鏁呴殰鍝佸姞璐� start -->
                                 <td class="dataCell" width="35px" style="text-align:right" >
-                                    <apex:outputText value="{!ar.Repair_Price_Auto}" id="Repair_Price_Auto" style="width:95%; disabled:disabled;"/>
+                                     <!-- // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 start -->
+                                  <!--   <apex:inputField value="{!ar.mcae.Blank_period__c}" id="Blank_period" style="display:none"/> -->
+                                     <!-- // 鎶ヤ环瑙勫垯鏀瑰杽 20230308 start -->
+                                    <apex:outputText value="{!ar.Repair_Price_Auto}" id="Repair_Price_Auto" style="width:95%; "/>
                                     <!-- <apex:inputHiddenalue="{!ar.rec.Reson_Can_not_Warranty__c}" id="ResonCannotWarranty"/> -->
                                     <!-- <apex:outputText value="{!ar.Agreed_Date}" id="Agreed_Date" style="width:95%;display: none;"/> -->
                                     <apex:inputField value="{!ar.mcae.Repair_Price_pass__c}" id="Repair_Price_pass" style="width:95%;display: none;"/>
@@ -2233,16 +3167,16 @@
                                     <apex:inputCheckbox value="{!ar.mcae.Third_Party_Return__c}" id="Third_Party_Return__c"/>
                                 </td>
                             </tr>
-
+ 
                             <!-- LJPH-C9SCX7 銆愬鎵樸�戝悎鍚屾棤绌虹櫧鏈熺殑鎻愰啋  lt  20211221  start  -->
                             <!-- <script>
                                 DefaultStartDate();
                             </script> -->
                             <!-- LJPH-C9SCX7 銆愬鎵樸�戝悎鍚屾棤绌虹櫧鏈熺殑鎻愰啋  lt  20211221  end  -->
-
+ 
                             <apex:variable value="{!cnt + 1}" var="cnt" />
                         </apex:repeat>
-
+ 
                 </table>
                     </div>
 <!-- </div>
@@ -2434,9 +3368,9 @@
                         <th style="text-align: center">鐢宠鎶ヤ环閲戦</th>
                         <th style="text-align: center">鍚堝悓璁惧淇悊鎬婚</th>
                         <th style="text-align: center">鍚堝悓鎬婚噾棰�</th>
-                        <!-- 涓婇檺鍚堝悓 20230103 LY start -->
-                        <!-- <th style="text-align: center">涓婇檺閲戦</th> -->
-                        <!-- 涓婇檺鍚堝悓 20230103 LY end -->
+                        <!-- 涓婇檺鍚堝悓 20230103 hql start -->
+                        <th style="text-align: center">涓婇檺閲戦</th>
+                        <!-- 涓婇檺鍚堝悓 20230103 hql end -->
                     </tr>
                     <tr>
                         <td style="text-align: center">
@@ -2457,15 +3391,23 @@
                             <apex:inputHidden value="{!estimate.Asset_Repair_Sum_Price__c}" id="assetRepairSumPriceHidden" />
                         </td>
                         <td style="text-align: center">
-                            <apex:outputField value="{!estimate.Maintenance_Price__c}" id="mainteReal" />
+                            <apex:outputField value="{!estimate.Maintenance_Price__c}" id="mainteReal"/>
                             <apex:inputHidden value="{!estimate.Maintenance_Price__c}" id="mainteRealHidden"/>
                             <apex:inputHidden value="{!OldMaintenancePrice}" id="oldMainteReal"/>
                         </td>
-                        <!-- 涓婇檺鍚堝悓 20230103 LY start -->
-                       <!--  <td style="text-align: center">
+                        <!-- 涓婇檺鍚堝悓 20230103 hql start -->
+                        <td style="text-align: center">
                             <apex:inputField value="{!estimate.Limit_Price_Amount__c}" style="ime-mode: disabled; text-align: right; width:100px" id="Limit_Price_Amount" />
-                        </td> -->
-                        <!-- 涓婇檺鍚堝悓 20230103 LY end -->
+                            <apex:inputHidden value="{!isLimitPrice}" id="Limit_Price2Hidden" />
+                            <apex:inputHidden value="{!OldLimitPrice}" id="Limit_PriceHidden" />
+                            <!-- // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start  -->
+                            <!-- <apex:inputHidden value="{!Is_Blank_period}" id="Is_Blank_period" />
+                            <apex:inputField value="{!estimate.Maintenance_Contract__r.Past_Contract_end_day__c}" style="display:none"  id="PastContractendday" />
+                            <apex:inputHidden value="{!estimate.renewTen_OFF__c}" id="renewTenOFF" />
+                            <apex:inputHidden value="{!Cost_rate_ForecastF}" id="Cost_rate_ForecastF" /> -->
+                            <!-- // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end  -->
+                        </td>
+                        <!-- 涓婇檺鍚堝悓 20230103 hql end -->
                     </tr>
                     <tr>
                         <th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Service_discount_Rate__c.label}</th>
@@ -2511,6 +3453,71 @@
                         <td style="text-align: center"></td>
                     </tr>
                 </table>
+                <!-- // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 start  -->
+               <!--  <table style="width:100%">
+                    <tr>
+                        <th style="text-align: center" colspan="3">璇风粨鍚堝疄闄呭彲浠ョ绾︾殑鏃ユ湡锛岄�夋嫨鎭板綋鐨勭敵璇烽噾棰濓紝浠ュ厤鍚庣画绌虹櫧鏈熷彉鍖栧鑷存爣鍑嗛噾棰濆彉鍖栵紝鍐嶆鐢宠浠锋牸寤惰鏃堕棿</th>
+                        <th style="text-align: center"></th>
+                        <th style="text-align: center"></th>
+                    </tr>
+                    <tr>
+                        <th style="text-align: center">鏈璁″垝銆愬悎鍚岄瀹氬紑濮嬫棩銆�:<input type="text" id="startdateaddsix4" readonly="readonly" style="border: none;width:70px"></input> </th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶浣庝环鎬婚</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶楂樹环鎬婚</th>
+                    </tr>
+                    <tr>
+                        <td style="text-align: center"></td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceDown5" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceUp5" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                    </tr>
+                    <tr>
+                        <th style="text-align: center">褰撱�愬悎鍚岄瀹氬紑濮嬫棩銆戝湪<input type="text" id="startdateaddsix1" readonly="readonly" style="border: none;width:70px"></input> 涔嬪墠</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶浣庝环鎬婚</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶楂樹环鎬婚</th>
+                    </tr>
+                    <tr>
+                        <td style="text-align: center"></td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceDown4" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceUp4" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                    </tr>
+                    <tr>
+                        <th style="text-align: center">褰撱�愬悎鍚岄瀹氬紑濮嬫棩銆戝湪<input type="text" id="startdateaddsix2" readonly="readonly" style="border: none;width:70px"></input> 涔嬪悗</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶浣庝环鎬婚</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶楂樹环鎬婚</th>
+                    </tr>
+                    <tr>
+                        <td style="text-align: center"></td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceDown3" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceUp3" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                    </tr>
+                    <tr>
+                        <th style="text-align: center">褰撱�愬悎鍚岄瀹氬紑濮嬫棩銆戝湪<input type="text" id="startdateaddsix3" readonly="readonly" style="border: none;width:70px"></input> 涔嬪悗</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶浣庝环鎬婚</th>
+                        <th style="text-align: center">鏍囧噯浠锋牸鐨勬渶楂樹环鎬婚</th>
+                    </tr>
+                    <tr>
+                        <td style="text-align: center"></td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceDown2" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                        <td style="text-align: center">
+                            CNY<input type="text" id="GuidePriceUp2" readonly="readonly" style="border: none;width:70px"></input> 
+                        </td>
+                    </tr>
+                </table> -->
+                <!-- // 鎶ヤ环瑙勫垯鏀瑰杽 20230309 end  -->    
             </apex:outputPanel>
         </apex:pageblocksection>
 

--
Gitblit v1.9.1