From d8dc84a3d56df839895f1c417a4d9cbee763d262 Mon Sep 17 00:00:00 2001
From: 高章伟 <gaozhangwei@prec-tech.com>
Date: 星期五, 03 三月 2023 14:50:59 +0800
Subject: [PATCH] gzw 测试环境代码更新

---
 force-app/main/default/classes/AssetUpdateContractBatch.cls |   30 +++++++++++++++++++++++-------
 1 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/force-app/main/default/classes/AssetUpdateContractBatch.cls b/force-app/main/default/classes/AssetUpdateContractBatch.cls
index c320880..0a276db 100644
--- a/force-app/main/default/classes/AssetUpdateContractBatch.cls
+++ b/force-app/main/default/classes/AssetUpdateContractBatch.cls
@@ -86,6 +86,7 @@
             ' , RecordType_DeveloperName__c  ' +
             '  from Maintenance_Contract__c '
             + ' where Status__c in (\'濂戠磩\',\'濂戠磩婧�浜哱') ';
+
         if (string.isNotBlank(TestID) ) {
             query += ' and id =: TestID';
         } else if (TestIDList != null && TestIDList.size() > 0) {
@@ -98,7 +99,7 @@
            query += ' and Contract_End_Date__c = ' + 
                     testDate.addDays(-1).format().replace('/', '-'); 
         }
-        system.debug('query:'+query);
+        //system.debug('query:'+query);
         testDate = Datecheck(testDate);
 
         return Database.getQueryLocator(query);
@@ -106,6 +107,7 @@
 
     global void execute(Database.BatchableContext BC,
                         list<Maintenance_Contract__c> MCList) {
+        
 
         map<string, asset> updateAssetMap = new map<string, asset>();
         map<string, Maintenance_Contract__c> UpdateMCMap =
@@ -152,6 +154,7 @@
              Maintenance_Contract__r.Estimation_Id__r.Submit_quotation_day__c,
              Maintenance_Contract__r.RecordType.DeveloperName
              , ifHaveleftInPrevious__c
+             ,Maintenance_Contract__r.URF_Contract__c
              from Maintenance_Contract_Asset__c
              where Maintenance_Contract__c in: mcIDmap.keyset()
             ];
@@ -233,13 +236,15 @@
             allAssetIDSet.add(mca.Asset__c);
             newToOldMCA.put(mca.id, null);
         }
-        //system.debug('allAssetIDSet:' + allAssetIDSet);
+        system.debug('allAssetIDSet:' + allAssetIDSet);
         //system.debug('newToOldMCA:' + newToOldMCA);
         allAssetList =
             [select id, CurrentContract_F__c,
              CurrentContract_F__r.Contract_End_Date__c,
              CurrentContract_F_asset__c,
              CurrentContract_F_asset__r.endDate_sum__c
+             ,URF_Maintenance_Contract__c
+             ,URF_Maintenance_Contract__r.Contract_End_Date__c
              from asset
              where id in: allAssetIDSet];
         // 鏇存柊淇濇湁璁惧涓婄殑涓婁竴鏈熺淮淇悎鍚屽拰缁翠慨鍚堝悓淇濇湁璁惧
@@ -247,20 +252,30 @@
         for (asset ass : allAssetList) {
             Maintenance_Contract_Asset__c tempMCA =
                 assetIDtoMCA.get(ass.Id);
-            if (tempMCA != null &&
+            if (tempMCA != null) {
+                if (tempMCA.Maintenance_Contract__r.URF_Contract__c==true && 
+                    (ass.URF_Maintenance_Contract__c == null ||
+                       ass.URF_Maintenance_Contract__r.Contract_End_Date__c <= tempMCA.endDate_sum__c
+                        )) {
+                    ass.URF_Maintenance_Contract__c = tempMCA.Maintenance_Contract__c;
+                }
+                if (tempMCA.Maintenance_Contract__r.URF_Contract__c==false &&
                     (
                         ass.CurrentContract_F__c == null  ||
                         ass.CurrentContract_F_asset__c == null ||
                         ass.CurrentContract_F_asset__r.endDate_sum__c <=
                         tempMCA.endDate_sum__c
-
-                    ) ) {
-                ass.CurrentContract_F__c = tempMCA.Maintenance_Contract__c;
-                ass.CurrentContract_F_asset__c = tempMCA.id;
+                    )
+                    ){
+                    ass.CurrentContract_F__c = tempMCA.Maintenance_Contract__c;
+                    ass.CurrentContract_F_asset__c = tempMCA.id;
+                }
+                
                 updateAssetMap.put(ass.id, ass);
             }
 
         }
+        
         //妫�绱㈠嚭鍘嗗眾淇濇湁璁惧
         list<Maintenance_Contract_Asset__c> allMCAList =
             [select Id, Asset__c, Maintenance_Contract__c,
@@ -469,6 +484,7 @@
                 failedCount ++;
             }
         }
+        system.debug('11111111111111111111111updateAssetMap'+updateAssetMap.values());
         updateAsset (updateAssetMap.values());
     }
     global void finish(Database.BatchableContext BC) {

--
Gitblit v1.9.1