| | |
| | | // SWAG-BHE9GK LHJ 竞争对手产品自动编码 Start |
| | | SetCompetitorCode(); |
| | | // SWAG-BHE9GK LHJ 竞争对手产品自动编码 End |
| | | // WLIG-CKKA4M xxf 【委托】【产品主数据】注册证更新后部分字段信息未自动代入 Start |
| | | AutomaticallyBringData(); |
| | | // WLIG-CKKA4M xxf 【委托】【产品主数据】注册证更新后部分字段信息未自动代入 End |
| | | } |
| | | protected override void beforeUpdate() { |
| | | beforeSetValue(); |
| | |
| | | } |
| | | // SWAG-BHE9GK LHJ 竞争对手产品自动编码 End |
| | | |
| | | |
| | | // WLIG-CKKA4M xxf 【委托】【产品主数据】注册证更新后部分字段信息未自动代入 Start |
| | | private void AutomaticallyBringData() { |
| | | List<String> noNewList = new List<String>(); |
| | | System.debug('插入前noNewList:' + noNewList); |
| | | for(Product2 prd : newList){ |
| | | System.debug('prd:' + prd); |
| | | System.debug('prd_Asset_Model_No__c:' + prd.Asset_Model_No__c); |
| | | System.debug('newList:' + newList); |
| | | if (prd.Asset_Model_No__c != null) { |
| | | noNewList.add(prd.Asset_Model_No__c); |
| | | } |
| | | System.debug('插入后noNewList:' + noNewList); |
| | | } |
| | | if (!noNewList.isEmpty()) { |
| | | |
| | | List<Product2> prdList = [select Id, Name,Asset_Model_No__c,MDM_Name__c, |
| | | Maintenance_Price_Year__c,Extend_new_product_gurantee_MD__c, |
| | | Extend_Gurantee_Start_MD__c,Extend_Gurantee_End_MD__c, |
| | | Entend_gurantee_period_MD__c,Extend_new_product_gurantee__c, |
| | | Extend_Gurantee_Start__c,Extend_Gurantee_End__c,Entend_gurantee_period__c, |
| | | CanNotCancelledGurantee__c,Service_Category1__c, |
| | | Service_Category2__c,Service_Category3__c, |
| | | Service_Category4__c,Service_Category5__c, |
| | | Service_Category6__c,Service_Category7__c, |
| | | Can_Repair__c,RepairListPriceLevelA__c, |
| | | RepairListPriceLevelB__c,RepairListPriceLevelC__c, |
| | | PartSupplyFinishDate__c,EndSaleDate__c,ProductClass__c,ProductCategory__c, |
| | | Period_Filter_Classify1__c,Period_Filter_Classify2__c, |
| | | Intra_Trade_Service_RMB_Date1__c,Intra_Trade_Service_RMB_Date2__c, |
| | | Intra_Trade_Service_RMB_EndDate1__c,Intra_Trade_Service_RMB_EndDate2__c, |
| | | Intra_Trade_Service_RMB_1__c,Intra_Trade_Service_RMB_2__c |
| | | from Product2 |
| | | where Asset_Model_No__c in :noNewList |
| | | order by CreatedDate desc]; |
| | | System.debug('prdList:' + prdList); |
| | | if (prdList.isEmpty()) { |
| | | return; |
| | | } |
| | | Map<String, Product2> prdMap = new Map<String, Product2>(); |
| | | for (Product2 pro2 : prdList) { |
| | | if (!prdMap.isEmpty() && prdMap.containskey(pro2.Asset_Model_No__c)) { |
| | | } else { |
| | | prdMap.put(pro2.Asset_Model_No__c, pro2); |
| | | System.debug('prdMap.isEmpty():' + prdMap.isEmpty()); |
| | | System.debug('prdMap.containskey:' + prdMap.containskey(pro2.Asset_Model_No__c)); |
| | | System.debug('prdMap:' + prdMap); |
| | | } |
| | | } |
| | | try { |
| | | for(Product2 prd : newList){ |
| | | System.debug('插入前:' + prd.MDM_Name__c); |
| | | prd.MDM_Name__c = prdMap.get(prd.Asset_Model_No__c).MDM_Name__c;//产品名(MDM) |
| | | prd.Maintenance_Price_Year__c = prdMap.get(prd.Asset_Model_No__c).Maintenance_Price_Year__c;//维修合同报价 |
| | | prd.CanNotCancelledGurantee__c = prdMap.get(prd.Asset_Model_No__c).CanNotCancelledGurantee__c;//不可取消多年保修 |
| | | prd.ProductClass__c = prdMap.get(prd.Asset_Model_No__c).ProductClass__c;//市场产品类别 |
| | | prd.ProductCategory__c = prdMap.get(prd.Asset_Model_No__c).ProductCategory__c;//市场区分 |
| | | prd.Entend_gurantee_period__c = prdMap.get(prd.Asset_Model_No__c).Entend_gurantee_period__c;//服务保修期(年) |
| | | prd.Entend_gurantee_period_MD__c = prdMap.get(prd.Asset_Model_No__c).Entend_gurantee_period_MD__c;//市场保修期(年) |
| | | prd.Extend_Gurantee_Start_MD__c = prdMap.get(prd.Asset_Model_No__c).Extend_Gurantee_Start_MD__c;//市场保修开始日 |
| | | prd.Extend_Gurantee_End_MD__c = prdMap.get(prd.Asset_Model_No__c).Extend_Gurantee_End_MD__c;//市场保修结束日 |
| | | prd.Extend_Gurantee_Start__c = prdMap.get(prd.Asset_Model_No__c).Extend_Gurantee_Start__c;//服务保修开始日 |
| | | prd.Extend_Gurantee_End__c = prdMap.get(prd.Asset_Model_No__c).Extend_Gurantee_End__c;//服务保修结束日 |
| | | prd.Service_Category1__c = prdMap.get(prd.Asset_Model_No__c).Service_Category1__c;//第1服务分类 |
| | | prd.Service_Category2__c = prdMap.get(prd.Asset_Model_No__c).Service_Category2__c; |
| | | prd.Service_Category3__c = prdMap.get(prd.Asset_Model_No__c).Service_Category3__c; |
| | | prd.Service_Category4__c = prdMap.get(prd.Asset_Model_No__c).Service_Category4__c; |
| | | prd.Service_Category5__c = prdMap.get(prd.Asset_Model_No__c).Service_Category5__c; |
| | | prd.Service_Category6__c = prdMap.get(prd.Asset_Model_No__c).Service_Category6__c; |
| | | prd.Service_Category7__c = prdMap.get(prd.Asset_Model_No__c).Service_Category7__c; |
| | | prd.Can_Repair__c = prdMap.get(prd.Asset_Model_No__c).Can_Repair__c;//是否可维修 |
| | | prd.RepairListPriceLevelA__c = prdMap.get(prd.Asset_Model_No__c).RepairListPriceLevelA__c;//A(W)级维修参考价格 |
| | | prd.RepairListPriceLevelB__c = prdMap.get(prd.Asset_Model_No__c).RepairListPriceLevelB__c; |
| | | prd.RepairListPriceLevelC__c = prdMap.get(prd.Asset_Model_No__c).RepairListPriceLevelC__c; |
| | | prd.PartSupplyFinishDate__c = prdMap.get(prd.Asset_Model_No__c).PartSupplyFinishDate__c;//零件停止供应日期 |
| | | prd.EndSaleDate__c = prdMap.get(prd.Asset_Model_No__c).EndSaleDate__c;//停止销售日期 |
| | | prd.Period_Filter_Classify1__c = prdMap.get(prd.Asset_Model_No__c).Period_Filter_Classify1__c;//期初筛选用分类 |
| | | prd.Period_Filter_Classify2__c = prdMap.get(prd.Asset_Model_No__c).Period_Filter_Classify2__c;//正式环境为:营业统计分类 |
| | | prd.Intra_Trade_Service_RMB_Date1__c = prdMap.get(prd.Asset_Model_No__c).Intra_Trade_Service_RMB_Date1__c;//多年保价格有效开始日1 |
| | | prd.Intra_Trade_Service_RMB_Date2__c = prdMap.get(prd.Asset_Model_No__c).Intra_Trade_Service_RMB_Date2__c;//多年保价格有效开始日2 |
| | | prd.Intra_Trade_Service_RMB_EndDate1__c = prdMap.get(prd.Asset_Model_No__c).Intra_Trade_Service_RMB_EndDate1__c;//多年保价格有效结束日1 |
| | | prd.Intra_Trade_Service_RMB_EndDate2__c = prdMap.get(prd.Asset_Model_No__c).Intra_Trade_Service_RMB_EndDate2__c;//多年保价格有效结束日2 |
| | | prd.Intra_Trade_Service_RMB_1__c = prdMap.get(prd.Asset_Model_No__c).Intra_Trade_Service_RMB_1__c;//多年保价格1 |
| | | prd.Intra_Trade_Service_RMB_2__c = prdMap.get(prd.Asset_Model_No__c).Intra_Trade_Service_RMB_2__c;//多年保价格2 |
| | | System.debug('插入后:' + prd.MDM_Name__c); |
| | | } |
| | | } |
| | | catch (Exception e) { |
| | | ApexPages.addMessages(e); |
| | | } |
| | | } |
| | | |
| | | } |
| | | // WLIG-CKKA4M xxf 【委托】【产品主数据】注册证更新后部分字段信息未自动代入 end |
| | | |
| | | private void beforeSetValue() { |
| | | |
| | | for (Product2 nObj : newList) { |