| | |
| | | public with sharing class lexPCLLostReportLwcController { |
| | | public static Product2 pro2; |
| | | public static string oppId; |
| | | public static string lostReportId; |
| | | public Product2 pro2 { get; set; } |
| | | public string oppId { get; set; } |
| | | public string lostReportId { get; set; } |
| | | // 当前页面状态 Create,View and Edit, MarketEdit |
| | | public static string pageStatus; |
| | | public string pageStatus { get; set; } |
| | | // 失单,部分失单 |
| | | public static string lostType; |
| | | public static Set<ID> deleteBrandIDSet = new Set<ID>(); |
| | | public static string submitFlag; |
| | | public static LostReport LostReport; |
| | | public static integer brandNo; |
| | | public static integer RemoveBrandNo; |
| | | public static integer setBrandNo; |
| | | public static integer brandCount; |
| | | public string lostType {get; set;} |
| | | public Set<ID> deleteBrandIDSet = new Set<ID>(); |
| | | public string submitFlag {get; set;} |
| | | public LostReport LostReport {get; set;} |
| | | public integer brandNo {get; set;} |
| | | public integer RemoveBrandNo {get; set;} |
| | | public integer setBrandNo {get; set;} |
| | | public integer brandCount {get; set;} |
| | | // add tcm 20211122 start |
| | | public static integer topNum; |
| | | public static integer secondNum; |
| | | public integer topNum {get; set;} |
| | | public integer secondNum {get; set;} |
| | | // add tcm 20211122 end |
| | | |
| | | |
| | | |
| | | // 竞争对手对照关系表,key是品牌名字,value是ID |
| | | public static map<string,id> CompetitionMap; |
| | | |
| | | // public PCLLostReportController(ApexPages.StandardController controller) { |
| | | // this(); |
| | | // } |
| | | // public PCLLostReportController(){ |
| | | // oppId = |
| | | // ApexPages.currentPage().getParameters().get('oppId') == null ? '' |
| | | // : ApexPages.currentPage().getParameters().get('oppId'); |
| | | // lostReportId = |
| | | // ApexPages.currentPage().getParameters().get('Id') == null ? '' |
| | | // : ApexPages.currentPage().getParameters().get('Id'); |
| | | // pageStatus = |
| | | // ApexPages.currentPage().getParameters().get('pageStatus') == null ? '' |
| | | // : ApexPages.currentPage().getParameters().get('pageStatus'); |
| | | // lostType = |
| | | // ApexPages.currentPage().getParameters().get('lostType') == null ? '' |
| | | // : ApexPages.currentPage().getParameters().get('lostType'); |
| | | // submitFlag = ApexPages.currentPage().getParameters().get('submitFlag') == null ? '' |
| | | // : ApexPages.currentPage().getParameters().get('submitFlag'); |
| | | |
| | | // } |
| | | // 初始化 |
| | | @AuraEnabled |
| | | public static String init(){ |
| | | public void initForApex(string oppId1,string lostReportId1,string pageStatus1,string lostType1,string submitFlag1){ |
| | | oppId = oppId1; |
| | | lostReportId = lostReportId; |
| | | pageStatus = pageStatus1; |
| | | lostType = lostType1; |
| | | submitFlag = submitFlag1; |
| | | } |
| | | public String init(){ |
| | | if(string.isblank(pageStatus)) { |
| | | // 这里需要报错没有传参数 |
| | | return '页面出错,请刷新后重试!'; |
| | |
| | | // 读取竞争对手品牌 |
| | | // BrandmapSet(); |
| | | if(string.isNotEmpty(submitFlag)) { |
| | | return '提交成功!'; |
| | | return '提交成功!'; |
| | | |
| | | } |
| | | return null; |
| | | return null; |
| | | } |
| | | // 编辑 只有系统管理员或者草案中可以编辑 |
| | | @AuraEnabled |
| | | public static String edit2(){ |
| | | public String edit2(){ |
| | | if( userinfo.getProfileId() == (ID) '00e10000000Y3o5AAC' || |
| | | '草案'.equals(LostReport.LostReport.Report_Status__c) |
| | | ) { |
| | |
| | | init(); |
| | | } |
| | | else{ |
| | | return '只有在草案中才能进行编辑!'; |
| | | return '只有在草案中才能进行编辑!'; |
| | | } |
| | | return null; |
| | | } |
| | | // 设置品牌 |
| | | @AuraEnabled |
| | | public static void setBrand(){ |
| | | public void setBrand(){ |
| | | list<LostBrand> LostBrandlist = LostReport.LostBrands; |
| | | LostBrand tempBrand = LostBrandlist.get(setBrandNo); |
| | | string brandName = tempBrand.lostBrand.Lost_By_Company__c; |
| | |
| | | } |
| | | } |
| | | // 设置品牌 |
| | | @AuraEnabled |
| | | public static void setbrandmannual(){ |
| | | public void setbrandmannual(){ |
| | | list<LostBrand> LostBrandlist = LostReport.LostBrands; |
| | | LostBrand tempBrand = LostBrandlist.get(setBrandNo); |
| | | string brandName = tempBrand.lostBrand.Lost_By_Company__c; |
| | |
| | | } |
| | | } |
| | | // 保存 |
| | | @AuraEnabled |
| | | public static String save(){ |
| | | public String save(){ |
| | | |
| | | if(!DataCheck()) { |
| | | return null; |
| | |
| | | |
| | | // } |
| | | // 数据检查 |
| | | @AuraEnabled |
| | | public static boolean DataCheck(){ |
| | | public boolean DataCheck(){ |
| | | boolean dataCheck = true; |
| | | if(string.isBlank(LostReport.LostReport.LostType__c)) |
| | | { |
| | |
| | | |
| | | return dataCheck; |
| | | } |
| | | @AuraEnabled |
| | | public static list<LostBrand> brandcopy(){ |
| | | public list<LostBrand> brandcopy(){ |
| | | list<LostBrand> tempbrands = new list<LostBrand>(); |
| | | for(LostBrand tempbrand: LostReport.LostBrands) { |
| | | LostBrand LostBrand = |
| | |
| | | return tempbrands; |
| | | } |
| | | // 数据录入 |
| | | @AuraEnabled |
| | | public static boolean dataEntry(){ |
| | | public boolean dataEntry(){ |
| | | system.debug('save---start:'); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | Lost_cancel_report__c templostReport = LostReport.lostReport.clone(); |
| | |
| | | LostReport.lostReport = templostReport; |
| | | LostReport.LostBrands = tempBrands; |
| | | // 这里需要写一些报错信息 |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,ex.getMessage())); |
| | | return false; |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | // 取消 |
| | | // public PageReference cancel(){ |
| | | // PageReference page = new PageReference('/'+oppId); |
| | | // page.setRedirect(true); |
| | | // return page; |
| | | // } |
| | | |
| | | // 提交 |
| | | // public PageReference submit(){ |
| | | // if(!'草案'.equals(LostReport.LostReport.Report_Status__c) ) { |
| | | // return '只有在草案中才能提交申请!'; |
| | | // } |
| | | |
| | | // Savepoint sp = Database.setSavepoint(); |
| | | // try{ |
| | | // LostReport.lostReport.Report_Status__c = '提交'; |
| | | // update LostReport.lostReport; |
| | | // Approval.ProcessSubmitRequest psr = new Approval.ProcessSubmitRequest(); |
| | | // psr.setObjectId(lostReportId); |
| | | // Approval.ProcessResult submitResult = Approval.process(psr); |
| | | // PageReference page = new PageReference('/apex/PCLLostReportPage'); |
| | | // page.getParameters().put('Id', lostReportId); |
| | | // page.getParameters().put('pageStatus', 'View'); |
| | | // page.getParameters().put('submitFlag', '1'); |
| | | |
| | | // page.setRedirect(true); |
| | | // return page; |
| | | // }catch(exception ex) { |
| | | // Database.rollback(sp); |
| | | // return ex.getMessage(); |
| | | // } |
| | | // } |
| | | public Map<string,Object> submit(){ |
| | | Map<string,string> messages = new Map<string,string>(); |
| | | if(!'草案'.equals(LostReport.LostReport.Report_Status__c) ) { |
| | | messages.put('error', '只有在草案中才能提交申请!'); |
| | | return messages; |
| | | } |
| | | Map<string,Object> objs = new Map<string,Object>(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | try{ |
| | | LostReport.lostReport.Report_Status__c = '提交'; |
| | | update LostReport.lostReport; |
| | | Approval.ProcessSubmitRequest psr = new Approval.ProcessSubmitRequest(); |
| | | psr.setObjectId(lostReportId); |
| | | Approval.ProcessResult submitResult = Approval.process(psr); |
| | | objs.put('uri', '/apex/PCLLostReportPage'); |
| | | objs.put('Id', lostReportId); |
| | | objs.put('pageStatus', 'View'); |
| | | objs.put('submitFlag', '1'); |
| | | return objs; |
| | | }catch(exception ex) { |
| | | Database.rollback(sp); |
| | | messages.put('error', ex.getMessage()); |
| | | return messages; |
| | | } |
| | | } |
| | | // 添加品牌 |
| | | @AuraEnabled |
| | | public static String addBrand(){ |
| | | public String addBrand(){ |
| | | LostReport.LostBrands.add(new LostBrand(LostReport.LostBrands.size())); |
| | | brandCount = LostReport.LostBrands.size(); |
| | | return null; |
| | | } |
| | | // 删除品牌 这个有参数brandNo,才知道是删除那个品牌 |
| | | @AuraEnabled |
| | | public static String Remove(){ |
| | | public String Remove(){ |
| | | system.debug('RemoveBrandNo:'+RemoveBrandNo); |
| | | list<LostBrand> tempLostBrands = new List<lostBrand>(); |
| | | Integer i = 0; |
| | |
| | | } |
| | | // 添加型号, 这个有参数brandNo,才知道是添加到那个品牌 |
| | | // update tcm 20211125 添加型号时自动带出品牌 start |
| | | @AuraEnabled |
| | | public static String addProduct(){ |
| | | public String addProduct(){ |
| | | system.debug('brandNo:'+brandNo); |
| | | LostBrand tempLostBrand = LostReport.LostBrands.get(brandNo); |
| | | // PCLLostProduct__c plp = new PCLLostProduct__c(Competitor__c=CompetitionMap.get(LostReport.LostBrands[brandNo].lostBrand.Lost_By_Company__c)); |
| | |
| | | // update tcm 20211125 添加型号时自动带出品牌 end |
| | | // 页面的数据结构 |
| | | public class LostReport { |
| | | @AuraEnabled |
| | | public Lost_cancel_report__c lostReport { get; set; } |
| | | @AuraEnabled |
| | | public list<LostBrand> LostBrands { get; set; } |
| | | public LostReport(){ |
| | | lostReport = new Lost_cancel_report__c(); |
| | |
| | | } |
| | | |
| | | public class LostBrand { |
| | | @AuraEnabled |
| | | public PCLLostBrand__c lostBrand; |
| | | @AuraEnabled |
| | | public Integer lineNo; |
| | | @AuraEnabled |
| | | public list<PCLLostProducts> LostProducts; |
| | | @AuraEnabled |
| | | public Integer ProductSize; |
| | | public PCLLostBrand__c lostBrand { get; set; } |
| | | public Integer lineNo { get; set; } |
| | | public list<PCLLostProducts> LostProducts { get; set; } |
| | | public Integer ProductSize {get; set;} |
| | | public LostBrand( integer lineNo ){ |
| | | lostBrand = new PCLLostBrand__c(); |
| | | this.lineNo = lineNo; |
| | |
| | | } |
| | | // add tcm 20211119 start |
| | | public class PCLLostProducts { |
| | | @AuraEnabled |
| | | public Integer lineNo2; |
| | | @AuraEnabled |
| | | public PCLLostProduct__c LostProductss; |
| | | @AuraEnabled |
| | | public Boolean bool; |
| | | public Integer lineNo2 { get; set; } |
| | | public PCLLostProduct__c LostProductss { get; set; } |
| | | public Boolean bool { get; set; } |
| | | |
| | | public PCLLostProducts() { |
| | | this.lineNo2 = 0; |
| | |
| | | // add tcm 20211119 end |
| | | |
| | | // add tcm 20211118 start |
| | | @AuraEnabled |
| | | public static void search() { |
| | | public 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].LostProductss.ProductCategory__c=null; |