From 928399eceec50e3d37ea08669a12789a9410a9d2 Mon Sep 17 00:00:00 2001
From: 沙世明 <shashiming@prec-tech.com>
Date: 星期二, 22 十一月 2022 16:51:16 +0800
Subject: [PATCH] 111

---
 force-app/main/default/classes/Product2Handler.cls |   98 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 98 insertions(+), 0 deletions(-)

diff --git a/force-app/main/default/classes/Product2Handler.cls b/force-app/main/default/classes/Product2Handler.cls
index 1596610..925f3db 100644
--- a/force-app/main/default/classes/Product2Handler.cls
+++ b/force-app/main/default/classes/Product2Handler.cls
@@ -16,6 +16,9 @@
         // SWAG-BHE9GK LHJ 绔炰簤瀵规墜浜у搧鑷姩缂栫爜 Start
         SetCompetitorCode();
         // SWAG-BHE9GK LHJ 绔炰簤瀵规墜浜у搧鑷姩缂栫爜 End
+        // WLIG-CKKA4M xxf 銆愬鎵樸�戙�愪骇鍝佷富鏁版嵁銆戞敞鍐岃瘉鏇存柊鍚庨儴鍒嗗瓧娈典俊鎭湭鑷姩浠e叆 Start
+        AutomaticallyBringData();
+        // WLIG-CKKA4M xxf 銆愬鎵樸�戙�愪骇鍝佷富鏁版嵁銆戞敞鍐岃瘉鏇存柊鍚庨儴鍒嗗瓧娈典俊鎭湭鑷姩浠e叆 End
     }
     protected override void beforeUpdate() {
         beforeSetValue();
@@ -102,6 +105,101 @@
     }
     // SWAG-BHE9GK LHJ 绔炰簤瀵规墜浜у搧鑷姩缂栫爜 End
 
+
+    // WLIG-CKKA4M xxf 銆愬鎵樸�戙�愪骇鍝佷富鏁版嵁銆戞敞鍐岃瘉鏇存柊鍚庨儴鍒嗗瓧娈典俊鎭湭鑷姩浠e叆 Start
+    private void AutomaticallyBringData() {
+        List<String> noNewList = new List<String>();
+        System.debug('鎻掑叆鍓峮oNewList:' + 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('鎻掑叆鍚巒oNewList:' + 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锛圵锛夌骇缁翠慨鍙傝�冧环鏍�
+                    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;//姝e紡鐜涓猴細钀ヤ笟缁熻鍒嗙被
+                    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 銆愬鎵樸�戙�愪骇鍝佷富鏁版嵁銆戞敞鍐岃瘉鏇存柊鍚庨儴鍒嗗瓧娈典俊鎭湭鑷姩浠e叆 end
+
     private void beforeSetValue() {
 
         for (Product2 nObj : newList) {

--
Gitblit v1.9.1