123
chenjingwu
2024-04-26 c158f99320226e98ec29dc89af7bccdc13b4bdf5
force-app/main/default/classes/MaintenanceUpdateProductHandler.cls
@@ -149,7 +149,7 @@
            //Map<String,String> mpdId = new Map<String,String>();
            // chenjingwu 3+2多年保修 20240226 start
            List<MultiYearWarranty__c> muUPdate = new List<MultiYearWarranty__c>();
            List<String> muIdList = new List<String>();
            List<String> proIdList = new List<String>();
            // chenjingwu 3+2多年保修 20240226 end
            List<Maintenance_Product_Data_Details__c> mpdDetailsStatus = new List<Maintenance_Product_Data_Details__c>();
            for(Maintenance_Product_Data_Details__c mpdDetails : mpdList){
@@ -157,8 +157,9 @@
                Product2 product2 = new Product2();
                // chenjingwu 3+2多年保修 20240226 start
                MultiYearWarranty__c mu = new MultiYearWarranty__c();
                if(mpdDetails.MultiYearWarranty__c != '' && mpdDetails.MultiYearWarranty__c != null){
                    muIdList.add(mpdDetails.MultiYearWarranty__c);
                System.debug('chen=>' + mpdDetails);
                if(String.isNotBlank(mpdDetails.ProductsID__c)){
                    proIdList.add(mpdDetails.ProductsID__c);
                }
                // chenjingwu 3+2多年保修 20240226 end
                //mpdId.put(mpdDetails.Maintenance_Product_Data__c,mpdDetails.Maintenance_Product_Data__c);
@@ -458,16 +459,17 @@
                    mu.AmountWithheld__c = mpdDetails.AmountWithheld__c;
                    mu.ProductName__c = mpdDetails.ProductsID__c;
                    muUPdate.add(mu);
                }else{
                    //跟新标识
                    product2.IsFromSAP__c = true;
                    product2Update.add(product2);
                }
                // chenjingwu 3+2多年保修 20240226 end
                //跟新标识
                product2.IsFromSAP__c = true;
                product2Update.add(product2);
            }
            // chenjingwu 3+2多年保修 20240226 start
            if(muUPdate.size()>0 && muUPdate !=null ){
                if(muIdList.size()>0 && muIdList !=null ){
                    List<MultiYearWarranty__c> muList = [select Id from MultiYearWarranty__c where ProductName__c in:muIdList];
                if(proIdList.size()>0 && proIdList !=null ){
                    List<MultiYearWarranty__c> muList = [select Id from MultiYearWarranty__c where ProductName__c in:proIdList];
                    delete muList;
                }
                Database.SaveResult[] lsr = Database.insert(muUPdate, false);