From e14d6d0619330cad423f06493e3aa2371faa2a8f Mon Sep 17 00:00:00 2001
From: 19626 <1962676589@qq.com>
Date: 星期六, 09 九月 2023 14:02:23 +0800
Subject: [PATCH] Sit期间修改

---
 force-app/main/default/classes/ReportController.cls |  248 ++++++++++++++++++++++++++++++++-----------------
 1 files changed, 162 insertions(+), 86 deletions(-)

diff --git a/force-app/main/default/classes/ReportController.cls b/force-app/main/default/classes/ReportController.cls
index 518ec43..8535a6b 100644
--- a/force-app/main/default/classes/ReportController.cls
+++ b/force-app/main/default/classes/ReportController.cls
@@ -70,7 +70,7 @@
             res.profileId = UserInfo.getProfileId();
             res.userId = UserInfo.getUserId();
             res.luShengId = getUserIdByName(LightingButtonConstant.LU_SHENG_NAME);
-            res.huDiAnId = getUserIdByName(LightingButtonConstant.HU_DI_AN_NAME);
+            // res.huDiAnId = getUserIdByName(LightingButtonConstant.HU_DI_AN_NAME);
             res.systemProfileId = getProfileIdByName(LightingButtonConstant.SYSTEM_PROFILE_NAME);
             System.debug(LoggingLevel.INFO, '*** res: ' + res);
         } catch (Exception e) {
@@ -294,13 +294,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //OPDtoSIS鎿嶄綔鏇存柊鐩稿簲鏁版嵁
@@ -314,13 +318,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
 
@@ -337,13 +345,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //瀹屾瘯鎿嶄綔鏇存柊鐩稿簲鏁版嵁
@@ -358,13 +370,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //OCSM瑕佹姤鍛婃搷浣滄洿鏂扮浉搴旀暟鎹�
@@ -378,13 +394,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
 
@@ -399,13 +419,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //DispatchOCSMQARA鎿嶄綔鏇存柊鐩稿簲鏁版嵁
@@ -419,13 +443,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //OCSM涓嶈鎶ュ憡鎿嶄綔鏇存柊鐩稿簲鏁版嵁
@@ -439,13 +467,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
 
@@ -460,13 +492,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     
@@ -501,13 +537,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
 
@@ -550,13 +590,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //VOC鍥炵瓟鏇存柊鐩稿簲鏁版嵁
@@ -568,17 +612,33 @@
             User[] records = [SELECT  Job_Category__c FROM User WHERE Id = :createdById];
             List<String> userAccess = new List<String>();
             if (records[0].Job_Category__c == LightingButtonConstant.TYPE_OF_SALES_SERVICES) {
-            userAccess.add(rac.JingliApprovalManager__c + LightingButtonConstant.USER_ACCESS_READ);
-            userAccess.add(rac.BuchangApprovalManager__c + LightingButtonConstant.USER_ACCESS_READ);
-            rac.VOC_CreatedBy_jingli__c = rac.JingliApprovalManager__c;
-            rac.VOC_CreatedBy_buzhang__c = rac.BuchangApprovalManager__c;
-            } else {
-            userAccess.add(rac.SalesManager__c + LightingButtonConstant.USER_ACCESS_READ);
-            userAccess.add(rac.BuchangApprovalManagerSales__c + LightingButtonConstant.USER_ACCESS_READ);
-            rac.VOC_CreatedBy_jingli__c = rac.SalesManager__c;
-            rac.VOC_CreatedBy_buzhang__c = rac.BuchangApprovalManagerSales__c;
+            if(rac.JingliApprovalManager__c != null){
+                userAccess.add(rac.JingliApprovalManager__c + LightingButtonConstant.USER_ACCESS_READ);
+                rac.VOC_CreatedBy_jingli__c = rac.JingliApprovalManager__c;
             }
-            userAccess.add(rac.ZongjianApprovalManager__c + LightingButtonConstant.USER_ACCESS_READ);
+            if(rac.BuchangApprovalManager__c != null){
+                userAccess.add(rac.BuchangApprovalManager__c + LightingButtonConstant.USER_ACCESS_READ);
+                rac.VOC_CreatedBy_buzhang__c = rac.BuchangApprovalManager__c;
+            }
+            
+            
+            } else {
+                if(rac.SalesManager__c != null){
+                    userAccess.add(rac.SalesManager__c + LightingButtonConstant.USER_ACCESS_READ);
+                    rac.VOC_CreatedBy_jingli__c = rac.SalesManager__c;
+                }
+                if(rac.BuchangApprovalManagerSales__c != null){
+                    userAccess.add(rac.BuchangApprovalManagerSales__c + LightingButtonConstant.USER_ACCESS_READ);
+                    rac.VOC_CreatedBy_buzhang__c = rac.BuchangApprovalManagerSales__c;
+                }
+           
+            
+            
+            
+            }
+            if(rac.ZongjianApprovalManager__c != null){
+                userAccess.add(rac.ZongjianApprovalManager__c + LightingButtonConstant.USER_ACCESS_READ);
+            }
             String rtn = ControllerUtil.setSObjectShare(LightingButtonConstant.SOBJECT_NAME_OF_REPORT_SHARE,LightingButtonConstant.SOBJECT_NAME_OF_VOC_SHARE,recordId,userAccess,rac.Owner.Id);
             if (rtn != LightingButtonConstant.OK) {
             return rtn;
@@ -590,13 +650,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     //VOC鍒ゅ畾鏇存柊鐩稿簲鏁版嵁
@@ -608,26 +672,34 @@
                 // VOC瀵惧繙鑰呫伄绲岀悊閮ㄩ暦绶忕洠銈掕ō瀹�
                 User[] records = [SELECT Id, Job_Category__c, JingliApprovalManager__c, SalesManager__c, BuchangApprovalManager__c, BuchangApprovalManagerSales__c, ZongjianApprovalManager__c FROM User WHERE Id = :personId];
                 if (records[0].job_Category__c == LightingButtonConstant.TYPE_OF_SALES_SERVICES) {
-                    rac.VOC_jingli__c = records[0].JingliApprovalManager__c == null ? '' : records[0].JingliApprovalManager__c;
-                    rac.VOC_buzhang__c = records[0].BuchangApprovalManager__c == null ? '' : records[0].BuchangApprovalManager__c;
+                    rac.VOC_jingli__c = records[0].JingliApprovalManager__c == null ? null : records[0].JingliApprovalManager__c;
+                    rac.VOC_buzhang__c = records[0].BuchangApprovalManager__c == null ? null : records[0].BuchangApprovalManager__c;
                 } else {
-                    rac.VOC_jingli__c = records[0].SalesManager__c == null ? '' : records[0].SalesManager__c;
-                    rac.VOC_buzhang__c = records[0].BuchangApprovalManagerSales__c == null ? '' : records[0].BuchangApprovalManagerSales__c;
+                    rac.VOC_jingli__c = records[0].SalesManager__c == null ? null : records[0].SalesManager__c;
+                    rac.VOC_buzhang__c = records[0].BuchangApprovalManagerSales__c == null ? null : records[0].BuchangApprovalManagerSales__c;
                 }
-                rac.VOC_zongjian__c = records[0].ZongjianApprovalManager__c == null ? '' : records[0].ZongjianApprovalManager__c;
+                rac.VOC_zongjian__c = records[0].ZongjianApprovalManager__c == null ? null : records[0].ZongjianApprovalManager__c;
                 rac.Status__c = LightingButtonConstant.STATUS_VOC_CHECK_OVER;
                 rac.VOC_Finish__c = false;
                 Date serverTimestamp = Date.today();
                 rac.VOC_share_date__c = serverTimestamp;
                 // share
                 List<String> userAccess = new List<String>();
-                userAccess.add(rac.Responsible_Person__c + LightingButtonConstant.USER_ACCESS_EDIT);
-                userAccess.add(rac.VOC_jingli__c + LightingButtonConstant.USER_ACCESS_READ);
-                userAccess.add(rac.VOC_buzhang__c + LightingButtonConstant.USER_ACCESS_READ);
-                userAccess.add(rac.VOC_zongjian__c + LightingButtonConstant.USER_ACCESS_READ);
+                if(rac.Responsible_Person__c != null){
+                    userAccess.add(rac.Responsible_Person__c + LightingButtonConstant.USER_ACCESS_EDIT);
+                }
+                if(rac.VOC_jingli__c != null){
+                    userAccess.add(rac.VOC_jingli__c + LightingButtonConstant.USER_ACCESS_READ);
+                }
+                if(rac.VOC_buzhang__c != null){
+                    userAccess.add(rac.VOC_buzhang__c + LightingButtonConstant.USER_ACCESS_READ);
+                }
+                if(rac.VOC_zongjian__c != null){
+                    userAccess.add(rac.VOC_zongjian__c + LightingButtonConstant.USER_ACCESS_READ);
+                }
                 String rtn = ControllerUtil.setSObjectShare(LightingButtonConstant.SOBJECT_NAME_OF_REPORT_SHARE,LightingButtonConstant.SOBJECT_NAME_OF_VOC_SHARE,recordId,userAccess,rac.Owner.Id);
                 if (rtn != LightingButtonConstant.OK) {
-                    return null;
+                    return rtn;
                 }
                 update rac;
                 } else {
@@ -652,13 +724,17 @@
             return null;
         } catch (Exception e) {
             if (e.getMessage().contains(',')) {
-                String eMessage = e.getMessage();
-                Integer left = eMessage.indexOf(',');
-                Integer right = eMessage.length();
-                return eMessage.substring(left,right);
+                System.debug(LoggingLevel.INFO, '*** e: ' + e);
+                String exc = '' + e.getMessage();
+                Integer left = exc.indexOf(':') + 1;
+                Integer right = exc.lastIndexOf(':');
+                String str = exc.substring(left,right);
+                left = str.indexOf(',') +  1;
+                String newStr = str.substring(left);
+                return newStr;
             }else {
                 return e.getMessage();   
-            }  
+            }
         }
     }
     @AuraEnabled

--
Gitblit v1.9.1