123
chenjingwu
2024-04-25 8347df6e673d0f5c28391c1475999c065715f72d
force-app/main/default/classes/MaintenanceProductDataController.cls
@@ -1171,11 +1171,48 @@
                        }
                        Ins.add(upMpd);    
                    }
                    List<Maintenance_Product_Data_Details__c> exIntList = new List<Maintenance_Product_Data_Details__c>();
                    if(RecordTypeName.equals('GuranteeMain')){
                        List<String> idList = new List<String>();
                        for (MpdDetailsInfo ass : mpdDetailsRecords){
                            if(ass.mpded.Id != null && ass.mpded.Id != ''){
                                idList.add(ass.mpded.Id);
                            }
                        }
                        List<Maintenance_Product_Data_Details__c> exDetailList = [select Id,MultiYearWarranty__c,MultiYearWarranty__r.AgeLimit__c,MultiYearWarranty__r.MultiOneYearWarrantyPrice__c,MultiYearWarranty__r.AmountWithheld__c,AgeLimit__c,AgeLimit_Old__c,MultiOneYearWarrantyPrice__c,MultiOneYearWarrantyPrice_Old__c,AmountWithheld__c,AmountWithheld_Old__c,ProductsID__c,ProductsID__r.Name from Maintenance_Product_Data_Details__c where ProductsID__c in:idList and RecordTypeId = '012C50000000jefIAA'];
                        Integer str = 0;
                        for(List<ExMpdDetailsInfo> li: exmpdDetailsRecordsMap.values()){
                            for(ExMpdDetailsInfo ex: li){
                                if(ex.mpdrdd.AgeLimit__c > 0){
                                    Maintenance_Product_Data_Details__c InsAfterDel = new Maintenance_Product_Data_Details__c();
                                    InsAfterDel.Maintenance_Product_Data__c = mpd_Name[0].id;
                                    InsAfterDel.Name = mpd_Name[0].Name + '-ex'+ str;
                                    InsAfterDel.AgeLimit__c = ex.mpdrdd.AgeLimit__c;
                                    InsAfterDel.MultiYearWarranty__c = ex.mpdrdd.MultiYearWarranty__c;
                                    InsAfterDel.MultiOneYearWarrantyPrice__c = ex.mpdrdd.MultiOneYearWarrantyPrice__c;
                                    InsAfterDel.AmountWithheld__c = ex.mpdrdd.AmountWithheld__c;
                                    InsAfterDel.ProductsID__c = ex.mpdrdd.ProductsID__c;
                                    InsAfterDel.AgeLimit_Old__c = ex.Prod.AgeLimit__c;
                                    InsAfterDel.MultiOneYearWarrantyPrice_Old__c = ex.Prod.MultiOneYearWarrantyPrice__c;
                                    InsAfterDel.AmountWithheld_Old__c = ex.Prod.AmountWithheld__c;
                                    InsAfterDel.RecordTypeId = '012C50000000jefIAA';
                                    exIntList.add(InsAfterDel);
                                    str++;
                                }
                            }
                        }
                    // chenjingwu 3+2多年保修   20240417 end
                   }
                    if(isWarning){
                        return null;
                    }else{
                        if(Ins.size()>0){
                            update Ins;
                            if(exIntList.size() > 0){
                                delete exDetailList;
                                upsert exIntList;
                            }
                            return UnabletoEdit();
                        }
                        else{