| | |
| | | public with sharing class lexPCLLostReportLwcController { |
| | | |
| | | public static Product2 pro2 { get; set; } |
| | | |
| | | |
| | | public static string oppId { get; set; } |
| | | |
| | |
| | | |
| | | 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) |
| | |
| | | pickList.put('洗消机', xixiaoji); |
| | | pickList.put('光源', guangyuan); |
| | | pickList.put('其他', qita); |
| | | pickList.put('全部',lstPickvals); |
| | | return JSON.serialize(pickList); |
| | | } |
| | | @AuraEnabled |
| | |
| | | submitFlag = submitFlag1; |
| | | return init1(); |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | return new Map<string,object>(); |
| | | } |
| | | } |
| | | // 初始化 |
| | |
| | | Lost_Reason_Sub__c,Lost_By_Company__c, |
| | | LostTotalAmount__c,LostType__c, |
| | | Report_Status__c,Sales_assistant__c, |
| | | TotalAmountLost__c, |
| | | InclusionUltrasound__c, //20230506 lt DB202304618804 包含超声 |
| | | ModifyAfterApproval__c,Approved_Day__c,//20230814 lt DB202308068183 失单报告审批节点增加助理审批节点 add |
| | | Opportunity__c, Opportunity__r.Sales_assistant_ID__c, |
| | |
| | | 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, |
| | |
| | | FROM ProcessInstance where TargetObjectId =:LostReport.lostReport.id order by CreatedDate DESC |
| | | ]; |
| | | if(pros.size() > 0){ |
| | | |
| | | List<ProcessInstanceHistory> items = new List<ProcessInstanceHistory>(); |
| | | 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.ActorId); |
| | | } |
| | | } |
| | | LostReport.approvalHistorys = items; |
| | | }else{ |
| | |
| | | // Map<String,String> ele = new Map<String,String>(); |
| | | // LostReport.LostBrands[0].columns.add(); |
| | | maps.put('LostReport', LostReport); |
| | | maps.put('userId',UserInfo.getUserId()); |
| | | return maps; |
| | | } |
| | | @AuraEnabled |
| | |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | return e.getDmlMessage(0); |
| | | } |
| | | } |
| | | // 数据录入 |
| | |
| | | Map<String,String> messageMap = new Map <String,String>(); |
| | | system.debug('save---start:'); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | try{ |
| | | |
| | | // 待完成,这里需要把第一个品牌的信息赋值到这个失单报告上去,还有需要把各个品牌金额汇总加起来; |
| | | //system.debug('LostReport.LostBrands:'+LostReport.LostBrands); |
| | | // 设置记录类型 |
| | | report.lostReport.recordTypeID = report.lostReport.LostType__c== '失单'?Schema.SObjectType.Lost_cancel_report__c.getRecordTypeInfosByDeveloperName().get('PCL_Lost_report').getRecordTypeId() : Schema.SObjectType.Lost_cancel_report__c.getRecordTypeInfosByDeveloperName().get('PCL_PartLost_report').getRecordTypeId(); |
| | | report.lostReport.LostTotalAmount__c = 0; |
| | | report.lostReport.of_lost_system_processor__c = 0; |
| | | report.lostReport.TotalAmountLost__c = 0; |
| | | report.lostReport.Lost_reason_main__c = null; |
| | | report.lostReport.Lost_Reason_Sub__c = null; |
| | | report.lostReport.Lost_By_Company__c = null; |
| | |
| | | for(LostBrand tempLostBrand : report.LostBrands) { |
| | | if(string.isNotBlank(tempLostBrand.lostBrand.Lost_By_Company__c)) { |
| | | report.lostReport.LostTotalAmount__c += tempLostBrand.lostBrand.LostPrice__c; |
| | | Decimal med = tempLostBrand.lostBrand.LostPrice__c/1.13/1000; |
| | | Decimal med1 = med.setScale(2); |
| | | // System.debug('---lt123不含税数值(人工)Decimal---'+med); |
| | | // System.debug('---lt123不含税数值(人工)Decimal两位小数---'+med1); |
| | | report.lostReport.TotalAmountLost__c += med1; |
| | | report.lostReport.Lost_reason_main__c = |
| | | report.lostReport.Lost_reason_main__c == null |
| | | ? tempLostBrand.lostBrand.Lost_reason_main__c |
| | |
| | | } |
| | | } |
| | | } |
| | | if (report.lostReport.Report_Status__c != '草案') { |
| | | |
| | | List<ProcessInstance> pros = [ |
| | | SELECT |
| | | ProcessDefinition.Name, |
| | |
| | | for(ProcessInstance pro: pros){ |
| | | items.addAll(pro.StepsAndWorkitems); |
| | | } |
| | | report.approvalHistorys = items; |
| | | }else{ |
| | | List<ProcessInstanceHistory> items = new List<ProcessInstanceHistory>(); |
| | | report.approvalHistorys = items; |
| | | } |
| | | if(items.size() > 0){ |
| | | report.approvalHistorys = items; |
| | | }else{ |
| | | List<ProcessInstanceHistory> items1 = new List<ProcessInstanceHistory>(); |
| | | report.approvalHistorys = items1; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | // 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()); |
| | | } |
| | | |
| | | return messageMap; |
| | | } |
| | | |
| | | return messageMap; |
| | | } |
| | | |
| | | |
| | | // 提交 |
| | | @AuraEnabled |
| | |
| | | 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()); |
| | | } |
| | | return messages; |
| | | objs.put('error',e.getDmlMessage(0)); |
| | | return objs; |
| | | } |
| | | } |
| | | // +++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| | |
| | | } |
| | | } |
| | | } |
| | | // 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; |
| | |
| | | , ProductCategory__c |
| | | from Product2 where Id =:lostProduct]; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | return e.getDmlMessage(0); |
| | | } |
| | | return JSON.serialize(prd); |
| | | } |
| | |
| | | Approval.ProcessResult result = Approval.process(req); |
| | | return null; |
| | | } catch (Exception e) { |
| | | return e.getMessage(); |
| | | return e.getDmlMessage(0); |
| | | } |
| | | |
| | | } |
| | |
| | | ApprovalHistoryUtil.reassignStep(workItemList, newActorId); |
| | | return null; |
| | | } catch (Exception e) { |
| | | return e.getMessage(); |
| | | return e.getDmlMessage(0); |
| | | } |
| | | |
| | | } |