From 84b24801b8e0e071589ea57b29e64f73e13b1c0c Mon Sep 17 00:00:00 2001
From: 付煜 <fuyu3103346691@163.com>
Date: 星期一, 21 三月 2022 14:54:15 +0800
Subject: [PATCH] SWAG-CCEB67【委托】【重要】保有设备所属变更审批报错
---
force-app/main/default/classes/AssetModifyBelongsChangeHandler.cls | 58 +++++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 39 insertions(+), 19 deletions(-)
diff --git a/force-app/main/default/classes/AssetModifyBelongsChangeHandler.cls b/force-app/main/default/classes/AssetModifyBelongsChangeHandler.cls
index a0f1e46..fce9c4a 100644
--- a/force-app/main/default/classes/AssetModifyBelongsChangeHandler.cls
+++ b/force-app/main/default/classes/AssetModifyBelongsChangeHandler.cls
@@ -41,11 +41,12 @@
// 鍚堝悓璇环缂栫爜 缁翠慨鍚堝悓/淇濇湁璁惧闆嗗悎
Map<String,List<Maintenance_Contract_Asset__c>> OppAssMap = new Map<String,List<Maintenance_Contract_Asset__c>>();
// 鐩爣瀹㈡埛 鍚堝悓璇环缂栫爜set
- Map <string, Set<Maintenance_Contract_Asset__c>> vMOppMap = new map <string, Set<Maintenance_Contract_Asset__c>>();
+ Map <string, Set<Maintenance_Contract__c>> vMOppMap = new map <string, Set<Maintenance_Contract__c>>();
+ // Map <string, Set<Maintenance_Contract_Asset__c>> vMOppMap = new map <string, Set<Maintenance_Contract_Asset__c>>();
//add by rentx LJPH-C493WW
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� start
- List<Maintenance_Contract__c> MainCList=new List<Maintenance_Contract__c>();
+ Map<String,Maintenance_Contract__c> MainCMap=new Map<String,Maintenance_Contract__c>();
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� end
if(idList != null && idList.size() > 0){
@@ -152,11 +153,18 @@
//update by rentx LJPH-C493WW start
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� start
if (!vMOppMap.containsKey(accountIdStr)) {
- vMOppMap.put(accountIdStr, new Set<Maintenance_Contract_Asset__c>());
+ vMOppMap.put(accountIdStr, new Set<Maintenance_Contract__c>());
+ // vMOppMap.put(accountIdStr, new Set<Maintenance_Contract_Asset__c>());
}
- vMOppMap.get(accountIdStr).add(maAssetMap.get(asset.Id));
+ Maintenance_Contract__c maintenancecontc=new Maintenance_Contract__c();
+ maintenancecontc.Id = maAssetMap.get(asset.Id).Maintenance_Contract__c;
+ maintenancecontc.Add_Number__c = maAssetMap.get(asset.Id).Maintenance_Contract__r.Add_Number__c;
+ maintenancecontc.Management_Code__c = maAssetMap.get(asset.Id).Maintenance_Contract__r.Management_Code__c;
+ vMOppMap.get(accountIdStr).add(maintenancecontc);
+ // vMOppMap.get(accountIdStr).add(maAssetMap.get(asset.Id));
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� end
//update by rentx LJPH-C493WW end
+ System.debug('maAssetMap.get(asset.Id)=====锛�'+maAssetMap.get(asset.Id));
}
}
System.debug('154::: vMOppMap '+vMOppMap);
@@ -169,16 +177,20 @@
if (vMOppMap.size() > 0) {
for (String str : vMOppMap.keySet()) {
//update by rentx LJPH-C493WW start
- Set<Maintenance_Contract_Asset__c> vset = vMOppMap.get(str);
+ Set<Maintenance_Contract__c> vset = vMOppMap.get(str);
+ //Set<Maintenance_Contract_Asset__c> vset = vMOppMap.get(str);
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� start
- for (Maintenance_Contract_Asset__c mcodes : vset) {
+ for (Maintenance_Contract__c mcodes : vset) {
+ //for (Maintenance_Contract_Asset__c mcodes : vset) {
Maintenance_Contract__c vmc = new Maintenance_Contract__c();
vmc.Name = accMap.get(str).Parent.Parent.Name + '澶氬勾淇濅慨';
vmc.Status__c = '濂戠磩';
system.debug('mcodes==='+mcodes);
// List<String> mcodestrList= mcodes.split('@');
- String mcode =mcodes.Maintenance_Contract__r.Management_Code__c;
- String mcid=(String)mcodes.Maintenance_Contract__c;
+ // String mcode =mcodes.Maintenance_Contract__r.Management_Code__c;
+ // String mcid=(String)mcodes.Maintenance_Contract__c;
+ String mcode =mcodes.Management_Code__c;
+ String mcid=(String)mcodes.Id;
// String addNumber =mcodestrList[1];
Map<String,Decimal> addnumMap = new Map<String,Decimal>();
if (String.isNotBlank(mcode) && mcode.substring(mcode.length()-3,mcode.length()-2) == '-' ) {
@@ -186,17 +198,24 @@
Integer count = Integer.valueOf(mcode.substring(mcode.length()-2,mcode.length()));
vmc.Management_CodeVM__c = startstr + String.valueOf(count +1).leftPad(2,'0');
- mcodes.Maintenance_Contract__r.Add_Number__c=count +1;
- addnumMap.put(mcid,mcodes.Maintenance_Contract__r.Add_Number__c);
+ // mcodes.Maintenance_Contract__r.Add_Number__c=count +1;
+ // addnumMap.put(mcid,mcodes.Maintenance_Contract__r.Add_Number__c);
+ mcodes.Add_Number__c=count +1;
+ addnumMap.put(mcid,mcodes.Add_Number__c);
}else{
- system.debug('mcodes.Maintenance_Contract__r.Add_Number__c'+mcodes.Maintenance_Contract__r.Add_Number__c);
- if(mcodes.Maintenance_Contract__r.Add_Number__c==null||mcodes.Maintenance_Contract__r.Add_Number__c==0){
+ system.debug('mcodes.Maintenance_Contract__r.Add_Number__c'+mcodes.Add_Number__c);
+ if(mcodes.Add_Number__c==null||mcodes.Add_Number__c==0){
+ // if(mcodes.Maintenance_Contract__r.Add_Number__c==null||mcodes.Maintenance_Contract__r.Add_Number__c==0){
vmc.Management_CodeVM__c = mcode + '-01';
- mcodes.Maintenance_Contract__r.Add_Number__c=1;
- addnumMap.put(mcid,mcodes.Maintenance_Contract__r.Add_Number__c);
+ // mcodes.Maintenance_Contract__r.Add_Number__c=1;
+ // addnumMap.put(mcid,mcodes.Maintenance_Contract__r.Add_Number__c);
+ mcodes.Add_Number__c=1;
+ addnumMap.put(mcid,mcodes.Add_Number__c);
}else{
- Decimal addnum = mcodes.Maintenance_Contract__r.Add_Number__c+1;
- if(mcodes.Maintenance_Contract__r.Add_Number__c<=9){
+ // Decimal addnum = mcodes.Maintenance_Contract__r.Add_Number__c+1;
+ // if(mcodes.Maintenance_Contract__r.Add_Number__c<=9){
+ Decimal addnum = mcodes.Add_Number__c+1;
+ if(mcodes.Add_Number__c<=9){
vmc.Management_CodeVM__c = mcode + '-0'+addnum;
}else{
vmc.Management_CodeVM__c = mcode + '-'+addnum;
@@ -231,7 +250,7 @@
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� start
mctrobject.Id=mac.Maintenance_Contract__c;
mctrobject.Add_Number__c=addnumMap.get(mac.Maintenance_Contract__c);
- MainCList.add(mctrobject);
+ MainCMap.put(mctrobject.Id,mctrobject);
system.debug('mctrobject.Id===='+mctrobject.Id);
system.debug('mctrobject.Add_Number__c======='+mctrobject.Add_Number__c);
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� end
@@ -316,8 +335,9 @@
update assetList;
}
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� start
- if(MainCList != null && MainCList.size() > 0){
- update MainCList;
+ if(MainCMap != null && MainCMap.size() > 0){
+ List<Maintenance_Contract__c> mainList=MainCMap.values();
+ update mainList;
}
//LJPH-C493WW fy 銆愬鎵樸�� 銆愬骞翠繚鍚堝悓銆戝骞翠繚璁惧杞Щ閫犳垚鐨勫悎鍚岄棶棰� end
}
--
Gitblit v1.9.1