public virtual class LexSearchProductIraiController { //lexSearchProduct所需要的方法 //add author:kkbes // @AuraEnabled // public static List getCl(){ // SearchProductController searchProduct= new SearchProductController(); // searchProduct.serContact(); // List getCl = searchProduct.cl; // return getCl; // } public class InitData{ @AuraEnabled public String searchMode; @AuraEnabled // 検索モード public String trade {get;set;} @AuraEnabled // hidden項目からもらった CNY か USD の文字列 public String lineNo {get;set;} @AuraEnabled // 親画面の選択した行 public String val {get;set;} @AuraEnabled // 親画面のからの検索文字列 public String celon {get;set;} @AuraEnabled // 親画面のからの検索文字列 Celon询价增加 2022-04-24 ssm public String SearchName {get;set;} @AuraEnabled // 検索文字列 public List cl {get;set;} @AuraEnabled public String LabelOT; @AuraEnabled public String Labelsuit; @AuraEnabled public String LabelAl; } @AuraEnabled public static InitData init(){ InitData data=new InitData(); data.searchMode=''; data.trade='CNY'; // hidden項目からもらった CNY か USD の文字列 data.lineNo='3123'; // 親画面の選択した行 data.val='123'; // 親画面のからの検索文字列 data.celon=null; // 親画面のからの検索文字列 Celon询价增加 2022-04-24 ssm data.SearchName=''; // 検索文字列 data.cl=new List(); data.LabelOT=Product2.OT_CODE_no_link__c.getDescribe().getLabel(); data.Labelsuit=Product2.suitDepartment__c.getDescribe().getLabel(); data.LabelAl=Product2.Alternative_Products__c.getDescribe().getLabel(); // data.LabelI=Product_Set__c.Quote_Select_Info__c.getDescribe().getLabel(); return data; } public Boolean getHascl(List cl) { Boolean rtn = true; if (cl != null && cl.size() > 0) { rtn = false; } return rtn; } public LexSearchProductIraiController(){ } // public LexSearchProductIraiController(ApexPages.StandardController controller){ // this(); // } // public LexSearchProductIraiController() { // this.trade = Apexpages.currentPage().getParameters().get('trade'); // this.lineNo = Apexpages.currentPage().getParameters().get('lineno'); // this.val = Apexpages.currentPage().getParameters().get('val'); // this.celon = Apexpages.currentPage().getParameters().get('celon'); // if (val!=null && val!=''){ // SearchName = val; // val = null; // } // cl = new List(); // } @AuraEnabled public static InitData serContact(String trade,String searchMode,String celon,String SearchName){ InitData data=new InitData(); String x = '×'; String searchSql = 'select Id,Product2Id,Product2.Name,Product2.ProductCode,Product2.StorageStatus__c,Product2.OT_CODE_no_link__c, Product2.Alternative_Products__c, ' + 'Product2.Foreign_Trade_Cost_US__c, Product2.Foreign_Trade_List_US__c, Product2.Intra_Trade_Cost_RMB__c, Product2.Intra_Trade_List_RMB__c, ' + 'Product2.Asset_Model_No__c, Product2.Serial_Lot_No__c, Product2.Sales_Possibility__c, Product2.Estimation_Entry_Possibility__c, ' + 'Product2.SFDA_Status__c, Product2.Qty_Unit__c, Product2.BSSCategory__c, Product2.Asset_loaner_category__c, Product2.Packing_list_manual__c ' // 多年保修 start + ' ,Product2.Extend_new_product_gurantee_MD__c , Product2.Extend_new_product_gurantee__c , Product2.Entend_gurantee_period_all__c , ' + ' Product2.Intra_Trade_Gurantee_RMB__c ' //外贸多年保 取产品主数据上的外贸金额及报价 精琢技术 wql 2021/01/04 start + ',Product2.Intra_Trade_Foreign_RMB__c,Product2.NoDiscount_Foreign__c,Product2.Repair_Contract_USD__c ' //外贸多年保 取产品主数据上的外贸金额及报价 精琢技术 wql 2021/01/04 end //+ ' , Product2.If_Consumable__c ' //增加产品不可取消多年保逻辑 精琢技术 wql 2020/09/02 start 阿西赛多 2020/12/29 start + ' , Product2.Intra_Trade_Service_RMB__c,Product2.CanNotCancelledGurantee__c,Product2.Is_DangerousChemicals__c ' //增加产品不可取消多年保逻辑 精琢技术 wql 2020/09/02 end 阿西赛多 2020/12/29 end + ' , Product2.GuranteeType__c , product2.VenderName__c , product2.Maintenance_Price_Year__c ' // 多年保修 end // 20221020 ljh SWAG-CJ98AJ start + ' , Product2.suitDepartment__c ' // 20221020 ljh SWAG-CJ98AJ end //SFDC停止预警(预计消耗到期日) lt 20210929 add start + ' , Product2.Estimated_ConsumptionDueDate__c ' //SFDC停止预警(预计消耗到期日) lt 20210929 add end + 'FROM PricebookEntry '; //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 Start //注释原来逻辑 String whereStr = 'Where Product2.Asset_Model_No__c != null And Product2.Manual_Entry__c = false And Product2.Estimation_Entry_Possibility__c !=' + '\'' + x + '\' ' // String whereStr = 'Where Product2.Asset_Model_No__c != null And Product2.Manual_Entry__c = false ' //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 end + 'AND CurrencyIsoCode =' + '\'' + String.escapeSingleQuotes(trade) + '\' ' + 'AND IsActive = true '; String whereSql = ''; if (searchMode == 'CS') { whereSql += 'and Product2.Asset_loaner_category__c = \'为耗材管理\' '; } if (SearchName != null && SearchName != '') { String likename = String.escapeSingleQuotes(SearchName); String prdcd = String.escapeSingleQuotes(SearchName); if (likename.indexOf('*') >= 0) { // TODO escapeは考量してないけど、問題ないと思います。一文字の _ の対応はいらないと思います。 likename = likename.replace('*', '%'); } else { // default両側あいまい検索 likename = '%' + likename + '%'; } whereSql += 'and (Product2.Name Like ' + '\'' + likename + '\' or Product2.ProductCode = ' + '\'' + prdcd + '\' or Product2.Asset_Model_No__c Like ' + '\'' + likename + '\') '; } if (trade=='CNY') { //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 Start //注释原逻辑 // whereSql += 'and Product2.Intra_Trade_List_RMB__c > 0 and Product2.Intra_Trade_Cost_RMB__c > 0'; whereSql += ''; } else if(trade=='USD'){ // whereSql += 'and Product2.Foreign_Trade_List_US__c > 0 and Product2.Foreign_Trade_Cost_US__c > 0'; whereSql += ''; //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 end } else { system.debug(' trade = '+ trade); } // Celon询价修改 2022-04-24 ssm start celon = String.isNotBlank(celon) ? celon : null; whereSql += ' and Product2.Celon_Product__c = :celon '; // Celon询价修改 2022-04-24 ssm end searchSql = searchSql + whereStr + whereSql; //20211123 lt update 450 原500 searchSql += ' order by Product2.Asset_Model_No__c Limit 450'; System.debug('searchSql::::::' + searchSql); System.debug('whereStr::::::' + whereStr); System.debug('whereSql::::::' + whereSql); // system.debug(searchSql); List pbes = Database.query(searchSql); data.cl = new List(); for (Integer i = 0; i < pbes.size(); i++) { ProductLine pl = new ProductLine(i, pbes[i]); data.cl.add(pl); } return data; } public class ProductLine { @AuraEnabled public Integer idx {get; set;} @AuraEnabled public PricebookEntry pbe {get; set;} @AuraEnabled public Decimal Intra_Trade_Cost_RMB {get; set;} @AuraEnabled public Decimal Foreign_Trade_Cost_US {get; set;} @AuraEnabled public String NameCode {get; set;} @AuraEnabled public String Sales_Possibility {get; set;} @AuraEnabled public String Bsscategory {get; set;} @AuraEnabled public String Product_Id {get; set;} @AuraEnabled public String PricebookEntryId {get; set;} @AuraEnabled public Decimal Packing_list_manual { get; set; } @AuraEnabled // 多年保修 start public string GuranteeType {get;set;} @AuraEnabled public Decimal Entend_gurantee_period_all { get; set; } @AuraEnabled public Decimal Intra_Trade_Gurantee_RMB { get; set; } @AuraEnabled public Decimal Intra_Trade_Service_RMB { get; set; } @AuraEnabled //2021/01/06 liying start public Decimal NoDiscount_Foreign {get; set;} @AuraEnabled //2021/01/06 liying end public string VenderName {get; set;} @AuraEnabled public decimal Maintenance_Price_Year {get; set; } @AuraEnabled //外贸多年保 取产品主数据上的外贸金额以及维修合同报价 精琢技术 wql 2021/01/04 start public Decimal Intra_Trade_Gurantee_USD { get; set; } @AuraEnabled public Decimal Intra_Trade_Service_USD { get; set; } @AuraEnabled public decimal Maintenance_Price_Year_USD {get; set; } @AuraEnabled //外贸多年保 取产品主数据上的外贸金额以及维修合同报价 精琢技术 wql 2021/01/04 end //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 Start //是否登录报价 public boolean Estimation_Entry_Possibility {get; set; } @AuraEnabled //成本是否为空 public boolean CostFlag {get; set; } @AuraEnabled //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 end //增加产品不可取消多年保逻辑 精琢技术 wql 2020/09/02 start public boolean CanNotCancelledGurantee {get; set;} @AuraEnabled //增加产品不可取消多年保逻辑 精琢技术 wql 2020/09/02 end //增加阿西赛多逻辑 精琢技术 wql 2020/12/29 start public boolean Is_DangerousChemicals {get; set;} //增加阿西赛多逻辑 精琢技术 wql 2020/12/29 end // 多年保修 end public ProductLine(Integer i, PricebookEntry pbe) { this.idx = i; this.pbe = pbe; this.Intra_Trade_Cost_RMB = pbe.Product2.Intra_Trade_Cost_RMB__c; this.Foreign_Trade_Cost_US = pbe.Product2.Foreign_Trade_Cost_US__c; this.NameCode = pbe.Product2.ProductCode; this.Sales_Possibility = pbe.Product2.Sales_Possibility__c; this.Bsscategory = pbe.Product2.BSSCategory__c; this.Product_Id = pbe.Product2Id; this.PricebookEntryId = pbe.Id; this.Packing_list_manual = pbe.Product2.Packing_list_manual__c; // 多年保修 start this.GuranteeType = pbe.Product2.GuranteeType__c; this.Entend_gurantee_period_all = pbe.Product2.Entend_gurantee_period_all__c; this.Intra_Trade_Gurantee_RMB = pbe.Product2.Intra_Trade_Gurantee_RMB__c; this.Intra_Trade_Service_RMB= pbe.Product2.Intra_Trade_Service_RMB__c; //2021/01/06 liying start this.NoDiscount_Foreign=pbe.Product2.NoDiscount_Foreign__c; //2021/01/06 liying end this.Maintenance_Price_Year = pbe.Product2.Maintenance_Price_Year__c; //外贸多年保 取产品主数据上的外贸金额以及维修合同报价 精琢技术 wql 2021/01/04 start this.Intra_Trade_Gurantee_USD = pbe.Product2.Intra_Trade_Foreign_RMB__c; this.Intra_Trade_Service_USD = pbe.Product2.NoDiscount_Foreign__c; this.Maintenance_Price_Year_USD = pbe.Product2.Repair_Contract_USD__c; //外贸多年保 取产品主数据上的外贸金额以及维修合同报价 精琢技术 wql 2021/01/04 end if(pbe.Product2.VenderName__c==null|| pbe.Product2.VenderName__c.trim().length() == 0){ this.VenderName =' 无 '; }else{ this.VenderName = pbe.Product2.VenderName__c; } // 多年保修 end //增加产品不可取消多年保逻辑 精琢技术 wql 2020/09/02 start this.CanNotCancelledGurantee = pbe.Product2.CanNotCancelledGurantee__c; //增加产品不可取消多年保逻辑 精琢技术 wql 2020/09/02 end //增加阿西赛多逻辑 精琢技术 wql 2020/12/29 start this.Is_DangerousChemicals = pbe.Product2.Is_DangerousChemicals__c; //增加阿西赛多逻辑 精琢技术 wql 2020/12/29 end //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 Start //是否登录报价 System.debug('aaaaaa:'+pbe.Product2.Estimation_Entry_Possibility__c); if(pbe.Product2.Estimation_Entry_Possibility__c=='×' ){ this.Estimation_Entry_Possibility = true; }else{ this.Estimation_Entry_Possibility = false; } //成本是否为空 system.debug('bbbbb:'+pbe.Product2.Intra_Trade_Cost_RMB__c); if(pbe.Product2.Intra_Trade_Cost_RMB__c > 0 ){ this.CostFlag = false; }else{ this.CostFlag = true; } //HWAG-BLWB9F 询价报价:多年保产品未登录计提金额时不可报价 精琢技术 2020/03/03 end } } }