19626
2023-10-23 1727a4f4d02e429475608e60f142a63bc24127bc
force-app/main/default/classes/lexPCLLostReportLwcController.cls
@@ -1,6 +1,6 @@
public with sharing class lexPCLLostReportLwcController {
   public static Product2 pro2 { get; set; }
   public static string oppId { get; set; }
@@ -19,16 +19,10 @@
   public static integer brandNo {get; set;}
   public static integer RemoveBrandNo {get; set;}
   public static integer setBrandNo {get; set;}
   public static integer brandCount {get; set;}
   // add tcm 20211122 start
   public static integer topNum {get; set;}
   public static integer secondNum {get; set;}
   // add tcm 20211122 end
   @AuraEnabled(cacheable=true)
@@ -92,6 +86,7 @@
      pickList.put('洗消机', xixiaoji);
      pickList.put('光源', guangyuan);
      pickList.put('其他', qita);
      pickList.put('全部',lstPickvals);
        return JSON.serialize(pickList);
    }
   @AuraEnabled
@@ -104,7 +99,7 @@
         submitFlag = submitFlag1;
         return init1();
      } catch (Exception e) {
         throw new AuraHandledException(e.getMessage());
         return new Map<string,object>();
      }
   }
   // 初始化
@@ -210,6 +205,7 @@
            Lost_reason_main__c,Lost_Reason_Sub__c,Name,Agency__c, AgencyMannual__c,
            Lost_cancel_report__c,Lost_By_Company_Mannual__c,ChannelSpecificReasons__c,
            ( select id,PCLLostBrand__c,LostProduct__c,
            isSpec__c,
            LostProduct__r.Name,
              LostProductMannual__c,            //SWAG-C6P9PX lt 20210913 add
              ProductCategory__c,
@@ -310,14 +306,14 @@
         if(pros.size() > 0){
            
            List<ProcessInstanceHistory> items = new List<ProcessInstanceHistory>();
            maps.put('allowUserId',pros[0].StepsAndWorkitems[0].OriginalActor.Id);
            maps.put('allowUserId',pros[0].StepsAndWorkitems[0].Actor.Id);
            maps.put('userProfileId',UserInfo.getProfileId());
            for(ProcessInstance pro: pros){
               items.addAll(pro.StepsAndWorkitems);
            }
            for(ProcessInstanceHistory pro: pros[0].StepsAndWorkitems){
               if(pro.StepStatus == 'Started'){
                  maps.put('submitUserId',pro.OriginalActorId);
                  maps.put('submitUserId',pro.ActorId);
               }
            }
            LostReport.approvalHistorys = items;
@@ -381,7 +377,7 @@
         }
         
      } catch (Exception e) {
         throw new AuraHandledException(e.getMessage());
         return e.getDmlMessage(0);
      }
   }
   // 数据录入
@@ -392,7 +388,7 @@
      Map<String,String> messageMap = new Map <String,String>();
      system.debug('save---start:');
      Savepoint sp = Database.setSavepoint();
      try{
         // 待完成,这里需要把第一个品牌的信息赋值到这个失单报告上去,还有需要把各个品牌金额汇总加起来;
         //system.debug('LostReport.LostBrands:'+LostReport.LostBrands);
         // 设置记录类型
@@ -561,28 +557,9 @@
         // lostReportId = report.lostReport.id;
         system.debug('save---end:');
         messageMap.put('LostReport',JSON.serialize(report));
      }catch (Exception e) {
         Database.rollback(sp);
         // 这里需要写一些报错信息
         // if (e.getMessage().contains(',')) {
            //     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);
            //     messageMap.put('error', ''+ newStr);
            // }else {
            //     messageMap.put('error', ''+ e.getMessage());
            // }
         messageMap.put('error', ''+ e.getMessage());
         return messageMap;
      }
      return messageMap;
   }
   
   // 提交
   @AuraEnabled
@@ -633,18 +610,7 @@
         return objs;
      }catch(exception e) {
         Database.rollback(sp);
         if (e.getMessage().contains(',')) {
                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);
                objs.put('error', ''+ newStr);
            }else {
                objs.put('error', ''+ e.getMessage());
            }
         objs.put('error',e.getDmlMessage(0));
         return objs;
      }
   }
@@ -764,30 +730,7 @@
         }
      }
   }
   // add tcm 20211119 end
   // add tcm 20211118 start
   public static void search() {
      if (LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.LostProduct__c==null) {
         LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.ProductClass__c=null;
         LostReport.LostBrands[topNum].LostProducts[secondNum].bool=false;
      }else {
         Product2 prd = [select Id,ProductClass__c
         , ProductCategory__c
         from Product2 where Id =:LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.LostProduct__c];
         if (prd.ProductCategory__c!=null) {
            LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.ProductClass__c=prd.ProductClass__c;
            LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.ProductCategory__c=prd.ProductCategory__c;
            LostReport.LostBrands[topNum].LostProducts[secondNum].bool=true;
         }else {
            LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.ProductClass__c=null;
            LostReport.LostBrands[topNum].LostProducts[secondNum].LostProductss.ProductCategory__c=null;
            LostReport.LostBrands[topNum].LostProducts[secondNum].bool=false;
         }
      }
   }
   @AuraEnabled
   public static string searchProduct(String lostProduct){
      Product2 prd = null;
@@ -797,7 +740,7 @@
         , ProductCategory__c 
         from Product2 where Id =:lostProduct];
      } catch (Exception e) {
         throw new AuraHandledException(e.getMessage());
         return e.getDmlMessage(0);
      }
      return JSON.serialize(prd);
   }
@@ -821,7 +764,7 @@
         Approval.ProcessResult result = Approval.process(req);
         return null; 
      } catch (Exception e) {
         return e.getMessage();
         return e.getDmlMessage(0);
      }
        
    }
@@ -833,7 +776,7 @@
           ApprovalHistoryUtil.reassignStep(workItemList, newActorId);
         return null;
      } catch (Exception e) {
         return e.getMessage();
         return e.getDmlMessage(0);
      }
        
    }