| | |
| | | * @Author: chen jing wu |
| | | * @Date: 2023-04-12 11:16:07 |
| | | * @LastEditors: chen jing wu |
| | | * @LastEditTime: 2023-05-15 13:40:51 |
| | | * @LastEditTime: 2023-09-08 16:57:51 |
| | | */ |
| | | 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>(); |
| | | 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; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | } |
| | | return res; |
| | | } |
| | | @AuraEnabled |
| | | public static InitData initForPredictedDateChangeButton(String recordId){ |
| | | InitData res = new InitData(); |
| | |
| | | IF_Submit__c , |
| | | Trade__c, |
| | | Is_Corrosion__c, |
| | | If_Authorizing_Lock__c |
| | | If_Authorizing_Lock__c, |
| | | AccDealerBlacklist__c, |
| | | Agency1__c, |
| | | Agency2__c, |
| | | Hospital__c, |
| | | OwnerId, |
| | | Sales_assistant_name_text__c |
| | | from Opportunity where Id =: recordId |
| | | ]; |
| | | res.AccDealerBlacklist = opportunity.AccDealerBlacklist__c; |
| | | res.angency1 = opportunity.Agency1__c; |
| | | res.angency2 = opportunity.Agency2__c; |
| | | res.accname = opportunity.Hospital__c; |
| | | res.ownerids = opportunity.OwnerId; |
| | | res.ddid = opportunity.Sales_assistant_name_text__c; |
| | | res.agency1Id = opportunity.Agency1_ID_18__c; |
| | | res.stageName = opportunity.StageName; |
| | | res.sapSendOK = opportunity.SAP_Send_OK__c; |
| | |
| | | res.systemProfileId = getProfileIdByName(lexLightingButtonConstant.SYSTEM_PROFILE_NAME); |
| | | res.s1ProfileId = getProfileIdByName(lexLightingButtonConstant.S1_PROFILE_NAME); |
| | | 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); |
| | | } |
| | |
| | | res.salesManagerDepartmentID = opportunity.Sales_manager_departmentID__c; |
| | | res.salesOwnerBuchang = opportunity.Sales_owner_buchang__c; |
| | | 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; |
| | | } |
| | | @AuraEnabled |
| | | public static InitData initForLexQuoteEntryNewbotton(String recordId){ |
| | | InitData res = new InitData(); |
| | | try { |
| | | Opportunity opportunity = [ |
| | | select |
| | | Agency_Is_Delete__c, |
| | | Account_Is_Active__c, |
| | | Hospital_Is_Active__c, |
| | | RecordTypeId, |
| | | Estimation_Decision__c |
| | | from Opportunity where Id =: recordId |
| | | ]; |
| | | res.agencyIsDeletec = opportunity.Agency_Is_Delete__c; |
| | | res.accountIsActivec = opportunity.Account_Is_Active__c; |
| | | res.hospitalIsActivec = opportunity.Hospital_Is_Active__c; |
| | | res.recordTypeId = opportunity.RecordTypeId; |
| | | res.estimationDecisionc = opportunity.Estimation_Decision__c; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | } |
| | | return res; |
| | | } |
| | | @AuraEnabled |
| | | public static Boolean describeSObjectCommon (String objname) |
| | | { |
| | | Schema.DescribeSobjectResult schemaMap = Schema.describeSObjects(new String[]{objname})[0]; |
| | | return schemaMap.isCreateable(); |
| | | } |
| | | |
| | | @AuraEnabled |
| | | public static InitData initForQuotationRequestButton(String recordId){ |
| | | InitData res = new InitData(); |
| | |
| | | CurrencyIsoCode |
| | | from Opportunity where Id =: recordId |
| | | ]; |
| | | Report cnyReport = [SELECT Id FROM Report WHERE Name = :lexLightingButtonConstant.REPORT_NAME_FOR_CNY limit 1]; |
| | | Report usdReport = [SELECT Id FROM Report WHERE Name = :lexLightingButtonConstant.REPORT_NAME_FOR_USD limit 1]; |
| | | res.currencyIsoCode = opportunity.CurrencyIsoCode; |
| | | res.reportForCNYId = cnyReport.Id; |
| | | res.reportForUSDId = usdReport.Id; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | } |
| | |
| | | res.accountId = opp.AccountId; |
| | | res.accountName = acc.Name; |
| | | 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()); |
| | | } |
| | |
| | | res.estimationDecision = opp.Estimation_Decision__c; |
| | | res.sapSendOK = opp.SAP_Send_OK__c; |
| | | res.ifAuthorizingLock = opp.If_Authorizing_Lock__c; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | } |
| | | return res; |
| | | } |
| | | |
| | | @AuraEnabled |
| | | public static InitData initForSpecilaApplyCreateButton(String recordId){ |
| | | InitData res = new InitData(); |
| | | try { |
| | | Opportunity opp = [ |
| | | select |
| | | Forecast_this_month__c |
| | | from Opportunity where Id =: recordId |
| | | ]; |
| | | 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; |
| | | } |
| | | @AuraEnabled |
| | | public static InitData initForSpecilaApplyCreateAchButton(String recordId){ |
| | | InitData res = new InitData(); |
| | | try { |
| | | Statu_Achievements__c ach = [ |
| | | select |
| | | Id, |
| | | Monthly_forecast_shipping__c, |
| | | Opportunity__c |
| | | from Statu_Achievements__c where Id =: recordId |
| | | ]; |
| | | res.oppId = ach.Opportunity__c; |
| | | 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; |
| | | } |
| | | @AuraEnabled |
| | | public static InitData initForNewOpportunityFileButton(String recordId){ |
| | | InitData res = new InitData(); |
| | | try { |
| | | Opportunity opp = [ |
| | | select |
| | | Stock_apply_status__c |
| | | from Opportunity where Id =: recordId |
| | | ]; |
| | | res.stockApplyStatus = opp.Stock_apply_status__c; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | } |
| | |
| | | select id, |
| | | Tender_information__r.subInfoType__c |
| | | from Tender_Opportunity_Link__c |
| | | where (Tender_information__r.subInfoType__c =:lexLightingButtonConstant.SUB_INFO_TYPE_SCRAPPED_LABEL OR Tender_information__r.subInfoType__c =:lexLightingButtonConstant.SUB_INFO_TYPE_FLOW_LABEL) and Opportunity__c =: recordId |
| | | 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 pro.Id; |
| | | } catch (Exception e) { |
| | | throw new AuraHandledException(e.getMessage()); |
| | | } |
| | | } |
| | | @AuraEnabled |
| | | public static String changeTrade(String oppId){ |
| | | |
| | | List<Quote> quoList = [select id from Quote where OpportunityId = :oppId]; |
| | | List<OpportunityLineItem> oppLI = [select id from OpportunityLineItem where Opportunity.id = :oppId]; |
| | | |
| | | Opportunity opp = new Opportunity(); |
| | | opp.id = oppId; |
| | | opp.Estimation_Decision__c = false; |
| | | opp.Estimation_Id__c = null; |
| | | opp.Quote_Update_Sum__c = null; |
| | | opp.Estimation_No__c = null; |
| | | opp.Estimation_Proposal_Date__c = null; |
| | | opp.Estimation_Name__c = null; |
| | | // LHJ SWAG-C9QAAJ 去掉 Start |
| | | // opp.Authorized_Finish_Sales__c = null; |
| | | // opp.Authorized_DB_No__c = null; |
| | | // opp.Authorized_Date__c = null; |
| | | // opp.Autholization_Activated_Date__c = null; |
| | | // opp.Bidding_Content__c = null; |
| | | // opp.Bid_Date__c = null; |
| | | // opp.Bidding_No__c = null; |
| | | // opp.Bidding_Project_Name__c = null; |
| | | // LHJ End |
| | | |
| | | Savepoint sp = Database.setSavepoint(); |
| | | try { |
| | | delete quoList; |
| | | delete oppLI; |
| | | update opp; |
| | | return '1'; |
| | | } catch (Exception ex) { |
| | | Database.rollback(sp); |
| | | return ex.getMessage() + ' | Line:' + ex.getLineNumber(); |
| | | } |
| | | } |
| | | public class InitData{ |
| | |
| | | public String s1ProfileId; |
| | | @AuraEnabled |
| | | public String accountName; |
| | | @AuraEnabled |
| | | public String recordTypeId; |
| | | @AuraEnabled |
| | | public String reportForCNYId; |
| | | @AuraEnabled |
| | | public String reportForUSDId; |
| | | @AuraEnabled |
| | | public String oppForecastStatus; |
| | | @AuraEnabled |
| | | public String oppId; |
| | | @AuraEnabled |
| | | public String AccDealerBlacklist; |
| | | @AuraEnabled |
| | | public String angency1; |
| | | @AuraEnabled |
| | | public String angency2; |
| | | @AuraEnabled |
| | | public String accname; |
| | | @AuraEnabled |
| | | public String ownerids; |
| | | @AuraEnabled |
| | | public String ddid; |
| | | @AuraEnabled |
| | | public String agencyIsDeletec; |
| | | @AuraEnabled |
| | | public String accountIsActivec; |
| | | @AuraEnabled |
| | | public String hospitalIsActivec; |
| | | @AuraEnabled |
| | | public Boolean estimationDecisionc; |
| | | @AuraEnabled |
| | | public String reportStatus; |
| | | @AuraEnabled |
| | | public String reportId; |
| | | } |
| | | } |