From 962519811b7c4be07f30d09e791798b0ea79d3ae Mon Sep 17 00:00:00 2001
From: 黄千龙 <huangqianlong@prec-tech.com>
Date: 星期三, 08 三月 2023 09:54:02 +0800
Subject: [PATCH] 同步代码
---
force-app/main/default/classes/AssetUpdateContractBatch.cls | 97 ++++++++++--------------------------------------
1 files changed, 21 insertions(+), 76 deletions(-)
diff --git a/force-app/main/default/classes/AssetUpdateContractBatch.cls b/force-app/main/default/classes/AssetUpdateContractBatch.cls
index 91cbdcd..0a276db 100644
--- a/force-app/main/default/classes/AssetUpdateContractBatch.cls
+++ b/force-app/main/default/classes/AssetUpdateContractBatch.cls
@@ -107,25 +107,7 @@
global void execute(Database.BatchableContext BC,
list<Maintenance_Contract__c> MCList) {
- //URF闄愭鍚堝悓2鏈� LY 20220908 start
- set<id> mcIDSet = new set<id>();
- for (Maintenance_Contract__c tempMCA : MCList) {
- mcIDSet.add(tempMCA.id);
- }
- //鑾峰彇闈為檺娆″悎鍚�
- List<Maintenance_Contract__c> mcPList =[select id , previousTotalRepairAmount__c , currentTotalRepairAmount__c ,
- previousTotalContractAmount__c , currentTotalContractAmountVM__c , currentTotalGuaranteePrice__c
- , RecordType_DeveloperName__c
- from Maintenance_Contract__c
- where URF_Contract__c = false and ID in :mcIDSet];
- //鑾峰彇闄愭鍚堝悓
- List<Maintenance_Contract__c> urfMCList =[select id , previousTotalRepairAmount__c , currentTotalRepairAmount__c ,
- previousTotalContractAmount__c , currentTotalContractAmountVM__c , currentTotalGuaranteePrice__c
- , RecordType_DeveloperName__c
- from Maintenance_Contract__c
- where URF_Contract__c = true and ID in :mcIDSet];
-
- //URF闄愭鍚堝悓2鏈� LY 20220908 end
+
map<string, asset> updateAssetMap = new map<string, asset>();
map<string, Maintenance_Contract__c> UpdateMCMap =
@@ -142,7 +124,7 @@
Set<ID> allAssetIDSet = new Set<ID>();
List<asset> allAssetList = new List<asset>();
// 鍒濆鍖栫淮淇悎鍚屾秷璐圭巼鐩稿叧閲戦瀛楁涓�0;
- for (Maintenance_Contract__c tempMC : mcPList) {
+ for (Maintenance_Contract__c tempMC : MCList) {
mcIDmap.put(tempMC.id,null);
tempMC.currentTotalRepairAmount__c = 0;
tempMC.previousTotalRepairAmount__c = 0;
@@ -172,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()
];
@@ -253,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];
// 鏇存柊淇濇湁璁惧涓婄殑涓婁竴鏈熺淮淇悎鍚屽拰缁翠慨鍚堝悓淇濇湁璁惧
@@ -267,70 +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);
}
}
- //URF闄愭鍚堝悓2鏈� LY 20220908 start
- Map<string,Maintenance_Contract__c> mcURFIDmap = new Map<string,Maintenance_Contract__c>();
- for (Maintenance_Contract__c tempURFMC : urfMCList) {
- mcURFIDmap.put(tempURFMC.Id, null);
- }
- //妫�绱㈡湰娆¢檺娆″悎鍚岀殑淇濇湁璁惧
- List<Maintenance_Contract_Asset__c> mcURFList =
- [select Id, Asset__c, Maintenance_Contract__c,
- Estimate_Cost_formula__c,
- startDate_sum__c,
- endDate_sum__c,
- No_discount__c,
- GuaranteePrice_Amount_Text__c,
- Maintenance_Contract__r.Status__c,
- Maintenance_Contract__r.Name,
- Maintenance_Contract__r.Contract_End_Date__c,
- Maintenance_Contract__r.Contract_Start_Date__c,
- Maintenance_Contract__r.RecordType_DeveloperName__c,
- Maintenance_Contract__r.Estimation_Id__r.Submit_quotation_day__c,
- Maintenance_Contract__r.RecordType.DeveloperName
- , ifHaveleftInPrevious__c
- from Maintenance_Contract_Asset__c
- where Maintenance_Contract__c in: mcURFIDmap.keyset()
- ];
- Set<ID> allURFAssetIDSet = new Set<ID>();
- Map<string, Maintenance_Contract_Asset__c> assetIDtoURF =new Map<string, Maintenance_Contract_Asset__c>();
- for (Maintenance_Contract_Asset__c mcaURF : mcURFList) {
- // 鎵惧嚭鏉ユ绱㈠嚭鏉ョ殑缁翠慨鍚堝悓淇濇湁涓殑鏈�鏂扮殑
- if (assetIDtoURF.containsKey(mcaURF.Asset__c)) {
- Maintenance_Contract_Asset__c tempURF =
- assetIDtoURF.get(mcaURF.Asset__c);
- if (tempURF.endDate_sum__c < mcaURF.endDate_sum__c) {
- assetIDtoURF.put(mcaURF.Asset__c, mcaURF);
- }
- } else {
- assetIDtoURF.put(mcaURF.Asset__c, mcaURF);
- }
- allURFAssetIDSet.add(mcaURF.Asset__c);
- }
- List<asset> allURFAssetList =[select id, URF_Maintenance_Contract__c
- from asset
- where id in: allURFAssetIDSet];
- for (asset ass : allURFAssetList) {
- Maintenance_Contract_Asset__c tempMCA =
- assetIDtoURF.get(ass.Id);
- ass.URF_Maintenance_Contract__c = tempMCA.Maintenance_Contract__c;
- updateAssetMap.put(ass.id, ass);
-
- }
- //URF闄愭鍚堝悓2鏈� LY 20220908 end
+
//妫�绱㈠嚭鍘嗗眾淇濇湁璁惧
list<Maintenance_Contract_Asset__c> allMCAList =
[select Id, Asset__c, Maintenance_Contract__c,
--
Gitblit v1.9.1