From 4205d0ec95f513be79b2bcea15d2628083c4a503 Mon Sep 17 00:00:00 2001
From: chenjingwu <chenjingwu@prec-tech.com>
Date: 星期五, 26 四月 2024 14:10:50 +0800
Subject: [PATCH] 123

---
 force-app/main/default/classes/MaintenanceProductDataController.cls |   41 ++++++++++++++++++++++++++---------------
 1 files changed, 26 insertions(+), 15 deletions(-)

diff --git a/force-app/main/default/classes/MaintenanceProductDataController.cls b/force-app/main/default/classes/MaintenanceProductDataController.cls
index 81a633d..1383e54 100644
--- a/force-app/main/default/classes/MaintenanceProductDataController.cls
+++ b/force-app/main/default/classes/MaintenanceProductDataController.cls
@@ -543,20 +543,22 @@
                 exmpdDetailsRecordsViewMap = new Map<String,List<ExMpdDetailsInfo>>(); 
                 muCountMap = new Map<String,Integer>();
                 muCountViewMap = new Map<String,Integer>();
-                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'];
+                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 Maintenance_Product_Data__c =:id and ProductsID__c in:idList and RecordTypeId = '012C50000000jefIAA'];
                     for(String id: idList){
+                        Integer lineNo = 0;
                         List<ExMpdDetailsInfo> exList = new List<ExMpdDetailsInfo>();
                         List<ExMpdDetailsInfo> exViewList = new List<ExMpdDetailsInfo>();
                         for(Maintenance_Product_Data_Details__c mpdd: exDetailList){
                             if(id == mpdd.ProductsID__c){
-                                exList.add(new ExMpdDetailsInfo(mpdd));
-                                exViewList.add(new ExMpdDetailsInfo(mpdd));
+                                exList.add(new ExMpdDetailsInfo(mpdd,lineNo));
+                                exViewList.add(new ExMpdDetailsInfo(mpdd,lineNo));
+                                lineNo++;
                             }
                         }
                         if(exList.size() <= 0){
-                            exViewList.add(new ExMpdDetailsInfo());
+                            exViewList.add(new ExMpdDetailsInfo(lineNo));
                         }
-                        ExMpdDetailsInfo exd = new ExMpdDetailsInfo();
+                        ExMpdDetailsInfo exd = new ExMpdDetailsInfo(lineNo);
                         exd.mpdrdd.ProductsID__c = id;
                         exList.add(exd);
                         muCountMap.put(id,exList.size());
@@ -915,7 +917,7 @@
                          }
                      }
                      // chenjingwu 3+2澶氬勾淇濅慨 20240417 end
-                    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'];
+                    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 Maintenance_Product_Data__c =:mpd_Name[0].id and ProductsID__c in:idList and RecordTypeId = '012C50000000jefIAA'];
                     if(exDetailList.size() <= 0){
                         // chenjingwu 3+2澶氬勾淇濅慨 20240417 start 
                         muList = [select Id,AgeLimit__c,MultiOneYearWarrantyPrice__c,AmountWithheld__c,ProductName__r.Name,ProductName__c from MultiYearWarranty__c where ProductName__c in: idList order By ProductName__c];
@@ -1393,15 +1395,20 @@
     }
     public String ProId {get;set;}
     public Integer index{get;set;}
-    public PageReference addEx(){
-        ExMpdDetailsInfo ex = new ExMpdDetailsInfo();
-        ex.mpdrdd.Id = ProId;
+    public void addEx(){
+        ExMpdDetailsInfo ex = new ExMpdDetailsInfo(exmpdDetailsRecordsMap.get(ProId).size());
+        ex.mpdrdd.ProductsID__c = ProId;
         exmpdDetailsRecordsMap.get(ProId).add(ex);
-        return null;
+        muCountMap.put(ProId,muCountMap.get(ProId) + 1); 
     }
-    public PageReference deleteEx(){
+    public void deleteEx(){
+        for(Integer i=index + 1;i < exmpdDetailsRecordsMap.get(ProId).size();i++){
+            System.debug('chen=>' + i);
+            System.debug('chen=>' + exmpdDetailsRecordsMap.get(ProId)[i]);
+            exmpdDetailsRecordsMap.get(ProId)[i].lineNo -= 1;
+        }
         exmpdDetailsRecordsMap.get(ProId).remove(index);
-        return null;
+        muCountMap.put(ProId,muCountMap.get(ProId) - 1); 
     }
     
     //鎼滅储鏃剁殑sql
@@ -1617,22 +1624,26 @@
         public Boolean canSelect { get; set; }
         public MultiYearWarranty__c Prod { get; set; }
         public Maintenance_Product_Data_Details__c mpdrdd {get; set;}
+        public Integer lineNo{get; set;}
 
-        public ExMpdDetailsInfo(Maintenance_Product_Data_Details__c e) {
+        public ExMpdDetailsInfo(Maintenance_Product_Data_Details__c e,Integer lineNo1) {
+            lineNo = lineNo1;
             check = true;
             oldCheck = true;
             mpdrdd = e;
             Prod = e.MultiYearWarranty__r;
             canSelect = true;
         }
-        public ExMpdDetailsInfo(MultiYearWarranty__c e) {
+        public ExMpdDetailsInfo(MultiYearWarranty__c e,Integer lineNo1) {
+            lineNo = lineNo1;
             check = false;
             oldCheck = false;
             mpdrdd = new Maintenance_Product_Data_Details__c();
             Prod = e;
             canSelect = true;
         }
-        public ExMpdDetailsInfo() {
+        public ExMpdDetailsInfo(Integer lineNo1) {
+            lineNo = lineNo1;
             check = false;
             oldCheck = false;
             mpdrdd = new Maintenance_Product_Data_Details__c();

--
Gitblit v1.9.1