| | |
| | | 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, |
| | |
| | | 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].OriginalActor.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); |
| | | } |
| | | } |
| | | 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 |
| | |
| | | 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); |
| | | } |
| | | if(items.size() > 0){ |
| | | report.approvalHistorys = items; |
| | | }else{ |
| | | List<ProcessInstanceHistory> items = new List<ProcessInstanceHistory>(); |
| | | report.approvalHistorys = items; |
| | | 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()); |
| | | } |
| | | // 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; |
| | |
| | | }else { |
| | | objs.put('error', ''+ e.getMessage()); |
| | | } |
| | | return messages; |
| | | return objs; |
| | | } |
| | | } |
| | | // +++++++++++++++++++++++++++++++++++++++++++++++++++++++ |