From 7c7cb195462c2ded7bfe4105959ea36d1dd68ded Mon Sep 17 00:00:00 2001
From: 19626 <1962676589@qq.com>
Date: 星期三, 11 十月 2023 19:26:36 +0800
Subject: [PATCH] 近期修改
---
force-app/main/default/classes/OpportunityLightingButtonController.cls | 253 ++++++++++++++++++++++++++++++++++++++------------
1 files changed, 193 insertions(+), 60 deletions(-)
diff --git a/force-app/main/default/classes/OpportunityLightingButtonController.cls b/force-app/main/default/classes/OpportunityLightingButtonController.cls
index aef53cc..03f0d91 100644
--- a/force-app/main/default/classes/OpportunityLightingButtonController.cls
+++ b/force-app/main/default/classes/OpportunityLightingButtonController.cls
@@ -4,23 +4,36 @@
* @Author: chen jing wu
* @Date: 2023-04-12 11:16:07
* @LastEditors: chen jing wu
- * @LastEditTime: 2023-09-08 16:57:51
+ * @LastEditTime: 2023-10-10 17:08:13
*/
public with sharing class OpportunityLightingButtonController {
@AuraEnabled
- public static List<Lost_cancel_report__c> queryForEditLostButton(String recordId){
- List<Lost_cancel_report__c> res = new List<Lost_cancel_report__c>();
+ public static Map<String,Object> queryForEditLostButton(String recordId){
+ Map<String,Object> objs = new Map<String,Object>();
+ Report1 rep = new Report1();
try {
List<Lost_cancel_report__c> re = [
select id,
Report_Status__c,
RecordTypeId
from Lost_cancel_report__c where RecordTypeId != '01210000000R4hHAAS' and Opportunity__c =: recordId];
- res = re;
+ rep.lostReport = re;
+ objs.put('report',rep);
+ Schema.DescribeSObjectResult s = Lost_cancel_report__c.sObjectType.getDescribe();
+ if( !s.isCreateable()) {
+ objs.put('error',true);
+ }else{
+ objs.put('error',false);
+ }
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+ objs.put('error',e.getMessage());
+ return objs;
}
- return res;
+ return objs;
+ }
+ public class Report1{
+ @AuraEnabled
+ public List<Lost_cancel_report__c> lostReport;
}
@AuraEnabled
public static InitData initForPredictedDateChangeButton(String recordId){
@@ -34,7 +47,7 @@
res.createdDay = opportunity.Created_Day__c;
res.directLossFLG = opportunity.DirectLossFLG__c;
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -99,7 +112,7 @@
res.s62ProfileId = getProfileIdByName(lexLightingButtonConstant.S62_PROFILE_NAME);
res.m4ProfileId = getProfileIdByName(lexLightingButtonConstant.M4_PROFILE_NAME);
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -114,7 +127,7 @@
];
res.ifOpenBid = opportunity.ifOpenBid__c;
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -129,7 +142,7 @@
];
res.ifOpenBid = opportunity.ifOpenBid__c;
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -143,7 +156,7 @@
from Opportunity where Id =: recordId];
res.accountId = opportunity.AccountId;
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -159,7 +172,7 @@
res.accountId = opportunity.AccountId;
res.userId = UserInfo.getUserId();
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -175,7 +188,7 @@
res.accountId = opportunity.AccountId;
res.userId = UserInfo.getUserId();
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -213,7 +226,7 @@
res.s4ProfileId = getProfileIdByName(lexLightingButtonConstant.S4_PROFILE_NAME);
res.recordTypeId = Schema.SObjectType.Request_tedner_doc__c.getRecordTypeInfosByName().get(lexLightingButtonConstant.RECORD_TYPE_NAME_BY_AUTHORIZATION_REQUEST).getRecordTypeId();
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return res;
}
@@ -253,7 +266,7 @@
res.salesOwnerBuchangID = opportunity.Sales_owner_buchangID__c;
res.recordTypeId = Schema.SObjectType.Lost_cancel_report__c.getRecordTypeInfosByName().get(lexLightingButtonConstant.RECORD_TYPE_NAME_BY_OPPO_CANCEL_REPORT).getRecordTypeId();
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -265,6 +278,7 @@
select
StageName,
SAP_Send_OK__c,
+ Cnt_Lost_cancel_Draft__c,
Cnt_Lost_cancel_report__c,
Name,
Sales_assistant_name__c,
@@ -285,8 +299,15 @@
res.salesManagerDepartmentID = opportunity.Sales_manager_departmentID__c;
res.salesOwnerBuchang = opportunity.Sales_owner_buchang__c;
res.salesOwnerBuchangID = opportunity.Sales_owner_buchangID__c;
+ res.cntLostCancelDraft = opportunity.Cnt_Lost_cancel_Draft__c;
+ Schema.DescribeSObjectResult s = Lost_cancel_report__c.sObjectType.getDescribe();
+ if( !s.isCreateable()) {
+ res.isHavePower = false;
+ }else{
+ res.isHavePower = true;
+ }
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -309,7 +330,7 @@
res.recordTypeId = opportunity.RecordTypeId;
res.estimationDecisionc = opportunity.Estimation_Decision__c;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -333,7 +354,7 @@
res.biddingProjectNameBidId = opportunity.Bidding_Project_Name_Bid__r.Id;
res.estimationId = opportunity.Estimation_Id__c;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -350,7 +371,7 @@
res.stockApplyStatus = opportunity.Stock_apply_status__c;
res.lastOpportunityFileId = opportunity.Last_opportunity_file__r.Id;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -369,7 +390,7 @@
res.reportForCNYId = cnyReport.Id;
res.reportForUSDId = usdReport.Id;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -388,7 +409,7 @@
res.sapSendOK = oppo.SAP_Send_OK__c;
res.isAuthorized = oppo.IsAuthorized__c;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -426,7 +447,7 @@
res.opportunityCategory = opp.Opportunity_Category__c;
res.agency1Name = opp.Agency1__r.Name;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -451,7 +472,7 @@
res.opportunityNo = oppo.Opportunity_No__c;
res.isAuthorized = oppo.IsAuthorized__c;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -466,7 +487,7 @@
];
res.accountId = opp.AccountId;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -490,7 +511,7 @@
res.name = opp.Name;
// res.recordTypeId = Schema.SObjectType.Task.getRecordTypeInfosByName().get(lexLightingButtonConstant.RECORD_TYPE_NAME_BY_INQUIRY_FOLLOW_UP).getRecordTypeId();
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -511,7 +532,7 @@
res.sapSendOK = opp.SAP_Send_OK__c;
res.ifAuthorizingLock = opp.If_Authorizing_Lock__c;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -528,7 +549,7 @@
res.oppForecastStatus = opp.Forecast_this_month__c;
res.recordTypeId = Schema.SObjectType.OpportunitySpecialApply__c.getRecordTypeInfosByName().get(lexLightingButtonConstant.RECORD_TYPE_NAME_BY_SPECIL_APPLY_CREATE).getRecordTypeId();
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -547,7 +568,7 @@
res.oppForecastStatus = ach.Monthly_forecast_shipping__c;
res.recordTypeId = Schema.SObjectType.OpportunitySpecialApply__c.getRecordTypeInfosByName().get(lexLightingButtonConstant.RECORD_TYPE_NAME_BY_SPECIL_APPLY_CREATE_ACH).getRecordTypeId();
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -562,7 +583,7 @@
];
res.stockApplyStatus = opp.Stock_apply_status__c;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+
}
return res;
}
@@ -577,10 +598,7 @@
update opp;
return null;
} catch (Exception e) {
- String eMessage = e.getMessage();
- Integer left = eMessage.indexOf(',') + 1;
- Integer right = eMessage.length();
- return eMessage.substring(left,right);
+ return errorMessage(e);
}
}
@AuraEnabled
@@ -592,10 +610,7 @@
update opp;
return null;
} catch (Exception e) {
- String eMessage = e.getMessage();
- Integer left = eMessage.indexOf(',') + 1;
- Integer right = eMessage.length();
- return eMessage.substring(left,right);
+ return errorMessage(e);
}
}
@AuraEnabled
@@ -609,10 +624,7 @@
update opp;
return null;
} catch (Exception e) {
- String eMessage = e.getMessage();
- Integer left = eMessage.indexOf(',') + 1;
- Integer right = eMessage.length();
- return eMessage.substring(left,right);
+ return errorMessage(e);
}
}
@AuraEnabled
@@ -628,10 +640,7 @@
update opp;
return null;
} catch (Exception e) {
- String eMessage = e.getMessage();
- Integer left = eMessage.indexOf(',') + 1;
- Integer right = eMessage.length();
- return eMessage.substring(left,right);
+ return errorMessage(e);
}
}
@AuraEnabled
@@ -643,7 +652,7 @@
id
from InquiryPredictsDateChange__c where Predicted_Date_Status__c = :LightingButtonConstant.PREDICTED_DATE_STATUS and Opportunity__c =:recordId];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return rac;
}
@@ -657,7 +666,7 @@
taskStatus__c
from task__c where OpportunityId__c =: recordId and name like :obscureName];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return tasks;
}
@@ -671,7 +680,7 @@
taskStatus__c
from task__c where OpportunityId__c =: recordId and name like :obscureName];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return tasks;
}
@@ -686,7 +695,7 @@
where (Tender_information__r.subInfoType__c =:lexLightingButtonConstant.SUB_INFO_TYPE_SCRAPPED_LABEL OR Tender_information__r.subInfoType__c =:lexLightingButtonConstant.SUB_INFO_TYPE_FLOW_LABEL OR Tender_information__r.TerminateApprovalStatus__c= :lexLightingButtonConstant.SUB_INFO_TYPE_APPROVE) and Opportunity__c =: recordId
];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return links;
}
@@ -701,7 +710,7 @@
from QuoteIrai__c where Note__c like :opportunityId and QuoteIrai_Status__c =:lexLightingButtonConstant.QUOTEIRAI_STATUS_DRAFT
];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return quotes;
}
@@ -717,7 +726,7 @@
FROM Agency_Hospital_Link__c WHERE Agency__c =: agency1Id AND Hospital__c =: hospitalId
];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return links;
}
@@ -732,7 +741,7 @@
Name FROM RecordType WHERE SobjectType =: sobjectType And developerName=: developerName And IsActive =: isActive
];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return types;
}
@@ -748,7 +757,7 @@
DurableId From FieldDefinition WHERE EntityDefinition.QualifiedApiName =: qualifiedApiName
];
} catch (Exception e) {
- System.debug('e:****' + e);
+
}
return fields;
}
@@ -761,10 +770,7 @@
processResults.add(Approval.process(request));
return processResults[0].errors;
} catch (Exception e) {
- String eMessage = e.getMessage();
- Integer left = eMessage.indexOf(',') + 1;
- Integer right = eMessage.length();
- return eMessage.substring(left,right);
+ return errorMessage(e);
}
}
@AuraEnabled
@@ -778,7 +784,7 @@
];
return user.Id;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+ return errorMessage(e);
}
}
@AuraEnabled
@@ -792,8 +798,117 @@
];
return pro.Id;
} catch (Exception e) {
- throw new AuraHandledException(e.getMessage());
+ return errorMessage(e);
}
+ }
+ @AuraEnabled
+ public static string queryForProfileId(){
+ return UserInfo.getProfileId();
+ }
+ @AuraEnabled
+ public static Boolean queryQuote(String estimationId){
+ Boolean bo;
+ try {
+ Quote qu = [select Have_Virtual__c from Quote where Id =: estimationId];
+ bo = qu.Have_Virtual__c;
+ } catch (Exception e) {
+
+ }
+ return bo;
+ }
+
+ @AuraEnabled
+ public static String initCopy(String recordId){
+ String s='';
+ try {
+ String objectName = 'Opportunity'; // 瑕佽幏鍙栧瓧娈电殑瀵硅薄鍚�
+ Map<String, Schema.SObjectType> globalDescribe = Schema.getGlobalDescribe();
+ Schema.SObjectType objType = globalDescribe.get(objectName);
+ if (objType != null) {
+ Schema.DescribeSObjectResult objDescribe = objType.getDescribe();
+ Map<String, Schema.SObjectField> fieldMap = objDescribe.fields.getMap();
+ s+='SELECT ';
+ // 鐜板湪锛宖ieldMap涓寘鍚簡瀵硅薄鐨勬墍鏈夊瓧娈典俊鎭�
+ for (String fieldName : fieldMap.keySet()) {
+ if(!fieldName.equals('id')
+ &&!fieldName.equals('Id') &&!fieldName.equals('Opportunity_No__c'))
+ s+=fieldName+',';
+ }
+
+ s=s.removeEnd(',');
+ s+=' FROM Opportunity where id=\''+recordId+'\'';
+ system.debug('SQL:'+s);
+ List<Opportunity> opportunitys = Database.query(s);
+ s='';
+ if(opportunitys.size()>0){
+ system.debug('in!');
+ for (String fieldName : fieldMap.keySet()) {
+ String formaF=fieldMap.get(fieldName).getDescribe().getName();
+ if(opportunitys.get(0).get(fieldName)!=null&&!opportunitys.get(0).get(fieldName).equals('null')){
+ if(formaF.equals('Id')
+ ||formaF.equals('OwnerId')
+ ||formaF.equals('CreatedDate')
+ ||formaF.equals('CreatedById')
+ )
+ {
+ continue;
+ }
+ Object val=opportunitys.get(0).get(fieldName);
+ if(val instanceof Date ){
+ String str=String.valueOf(val);
+ str=str.replace(' ','T');
+ str+='.000Z';
+ s+=formaF+'='+str+',';
+ }else if (val instanceof DateTime){
+ String str=String.valueOf(val);
+ str=str.replace(' ','T');
+ str+='.000Z';
+ s+=formaF+'='+str+',';
+ }else{
+ s+=formaF+'='+opportunitys.get(0).get(fieldName)+',';
+ }
+
+ }
+ }
+ s=s.removeEnd(',');
+ return s;
+ }
+ }
+ return s;
+ } catch (Exception e) {
+
+ }
+ return s;
+ }
+
+ public static String forma(String str){
+ String res='';
+ String stra='a';
+ Integer a=stra.charAt(0);
+ String strz='z';
+ Integer z=strz.charAt(0);
+ String strAa='A';
+ Integer bA=strAa.charAt(0);
+ String strZz='Z';
+ Integer bZ=strZz.charAt(0);
+ String strx='_';
+ Integer x=strx.charAt(0);
+ List<Integer> charArr = new List<Integer>();
+ Integer change=bA-a;
+ Integer st=(str.charAt(0)+change);
+ charArr.add(st);
+ for(Integer i=0;i<str.length()-2;i++){
+ Integer c=str.charAt(i);
+ Integer nextC=str.charAt(i+1);
+ if(c==x&&nextC>=a&&nextC<z&&i!=str.length()-2){
+ nextC+=change;
+ }
+ charArr.add(nextC);
+ }
+ res=String.fromCharArray(charArr);
+ res+=str.substring(str.length()-1,str.length());
+
+ return res;
}
@AuraEnabled
public static String changeTrade(String oppId){
@@ -828,8 +943,24 @@
return '1';
} catch (Exception ex) {
Database.rollback(sp);
- return ex.getMessage() + ' | Line:' + ex.getLineNumber();
+ return errorMessage(ex);
}
+ }
+
+ public static string errorMessage(Exception e){
+ 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);
+ return newStr;
+ }else {
+ return e.getMessage();
+ }
+
}
public class InitData{
@AuraEnabled
@@ -982,5 +1113,7 @@
public String reportStatus;
@AuraEnabled
public String reportId;
+ @AuraEnabled
+ public Boolean isHavePower;
}
}
\ No newline at end of file
--
Gitblit v1.9.1