From 69186fc45df2899e84a1114188929fdebc6d79f9 Mon Sep 17 00:00:00 2001
From: 涂煌豪 <tuhuanghao@prec-tech.com>
Date: 星期三, 23 三月 2022 17:53:00 +0800
Subject: [PATCH] 打印维修委托书的页面和后台类修改

---
 force-app/main/default/classes/BatchSelectRepairPageController.cls |   95 ++++++++++++++++++++++-------------------------
 1 files changed, 44 insertions(+), 51 deletions(-)

diff --git a/force-app/main/default/classes/BatchSelectRepairPageController.cls b/force-app/main/default/classes/BatchSelectRepairPageController.cls
index 408374c..e1526dd 100644
--- a/force-app/main/default/classes/BatchSelectRepairPageController.cls
+++ b/force-app/main/default/classes/BatchSelectRepairPageController.cls
@@ -1,5 +1,5 @@
 public with sharing class BatchSelectRepairPageController {
-    public List<RetrievalData> RevalInfoList { get; set; }
+    public RetrievalData RevalInfo { get; set; }
     public List<RepairData> RAInfoList { get; set; }
     public List<Repair__c> RepairList { get; set; }
     public List<String> repairIdList{ get; set; }
@@ -12,62 +12,51 @@
     }
 
     public void init(){
-        RetrievalData reval = new RetrievalData();
-        RevalInfoList = new List<RetrievalData>();
-        reval.RepairName = null;
-        reval.SAPRepairNo = null;
-        reval.HospitalName = null;
-        RevalInfoList.add(reval);
+        RevalInfo = new RetrievalData();
     }
 
     public PageReference RetrievalBtn() {
         RepairList = new List<Repair__c>();
         RAInfoList = new List<RepairData>();
-        String RepairName;
-        String SAPRepairNo;
-        String HospitalName;
-        for(RetrievalData reval : RevalInfoList){
-            if(String.isNotBlank(reval.RepairName)){
-                RepairName = reval.RepairName;
-            }
-            if(String.isNotBlank(reval.SAPRepairNo)){
-                SAPRepairNo = reval.SAPRepairNo;
-            }
-            if(String.isNotBlank(reval.HospitalName)){
-                HospitalName = reval.HospitalName;
-            }
-        }
-        System.debug('RepairName1:' + RepairName);
-        if(String.isBlank(RepairName) && String.isBlank(SAPRepairNo) && String.isBlank(HospitalName)){
+        if(String.isBlank(RevalInfo.Status2) && String.isBlank(RevalInfo.RepairName) && String.isBlank(RevalInfo.SAPRepairNo) 
+            && String.isBlank(RevalInfo.SerialNumber) && String.isBlank(RevalInfo.repair.Incharge_Staff__c) 
+            && String.isBlank(String.valueOf(RevalInfo.repair.Final_complete_day__c))){
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '璇疯嚦灏戞坊鍔犱竴涓绱㈡潯浠�!'));
             return null;
         }
-        String sql = 'select Id, Name, SAP_Service_Repair_No__c, HP_Name__c, Department_Name__c from Repair__c ';
-        if(String.isNotBlank(RepairName)){
-            sql += ' where Name like \'%' + RepairName.trim() + '%\'';
-            if(String.isNotBlank(SAPRepairNo)){
-                sql += ' and SAP_Service_Repair_No__c like \'%' + SAPRepairNo.trim() + '%\'';
-                if(String.isNotBlank(HospitalName)){
-                    sql += ' and (HP_Name__c like \'%' + HospitalName.trim() + '%\' or Department_Name__c like \'%' + HospitalName.trim() + '%\')';
-                }
-            } else if(String.isNotBlank(HospitalName)) {
-                sql += ' and (HP_Name__c like \'%' + HospitalName.trim() + '%\' or Department_Name__c like \'%' + HospitalName.trim() + '%\')';
-            }
-        } else if(String.isNotBlank(SAPRepairNo)){
-            sql += ' where SAP_Service_Repair_No__c like \'%' + SAPRepairNo.trim() + '%\'';
-            if(String.isNotBlank(HospitalName)){
-                sql += ' and (HP_Name__c like \'%' + HospitalName.trim() + '%\' or Department_Name__c like \'%' + HospitalName.trim() + '%\')';
-            }
-        } else if(String.isNotBlank(HospitalName)){
-            sql += ' where HP_Name__c like \'%' + HospitalName.trim() + '%\' or Department_Name__c like \'%' + HospitalName.trim() + '%\'';
+        String sql = 'select Id, Name, SAP_Service_Repair_No__c, Status1__c, Status2__c, Delivered_Product__c, SerialNumber__c, ';
+        sql += 'HP_Name__c, State_Hospital__c, Incharge_Staff__c, FSE_ApplyForRepair_Day__c, work_location_select__c, On_site_repair__c,';
+        sql += 'Number_of_EffectiveContract__c, NewProductGuaranteeObject__c from Repair__c where Id != null ';
+        if(String.isNotBlank(RevalInfo.Status2)){
+            sql += ' and Status2__c like \'%' + RevalInfo.Status2 + '%\' ';
         }
-        sql += ' limit 5000';
-        RepairList = Database.query(sql);
-        if(RepairList.size() >= 5000 ){
-            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '妫�绱㈡暟鎹お澶�,璇风缉灏忔绱㈣寖鍥�'));
+        if(String.isNotBlank(RevalInfo.RepairName)){
+            sql += ' and Name like \'%' + RevalInfo.RepairName + '%\' ';
+        }
+        if(String.isNotBlank(RevalInfo.SAPRepairNo)){
+            sql += ' and SAP_Service_Repair_No__c like \'%' + RevalInfo.SAPRepairNo + '%\' ';
+        }
+        if(String.isNotBlank(RevalInfo.SerialNumber)){
+            sql += ' and SerialNumber__c like \'%' + RevalInfo.SerialNumber + '%\' ';
+        }
+        if(String.isNotBlank(RevalInfo.repair.Incharge_Staff__c)){
+            sql += ' and Incharge_Staff__c = \'' + RevalInfo.repair.Incharge_Staff__c + '\' ';
+        }
+        if(String.isNotBlank(String.valueof(RevalInfo.repair.Final_complete_day__c))){
+            String day = String.valueof(RevalInfo.repair.Final_complete_day__c);
+            day = day.substring(0,10);
+            sql += ' and FSE_ApplyForRepair_Day__c = ' + day;
+        }
+        sql += ' limit 201';
+        System.debug('sql1:' + sql);
+        if(String.isNotBlank(sql)){
+            RepairList = Database.query(sql);
+        }
+        if(RepairList.size() > 200){
+            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '妫�绱㈡暟鎹お澶�,璇风缉灏忔绱㈣寖鍥达紒'));
             return null;
         }
-        if(RepairList.size() <= 0 ){
+        if(RepairList.size() <= 0){
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '娌℃绱㈠埌浠讳綍淇悊'));
             return null;
         }
@@ -82,7 +71,8 @@
         repairIdList = new List<String>();
         RepairList = new List<Repair__c>();
         String url = '=';
-        if(RAInfoList == null){
+        System.debug('RAInfoList:' + RAInfoList);
+        if(RAInfoList == null || RAInfoList.isEmpty()){
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '璇峰厛妫�绱慨鐞�'));
             return null;
         }
@@ -100,14 +90,12 @@
                 for(String Id : repairIdList){
                     url += Id + '=';
                 }
-                System.debug('url1:'+url);
                 url = url.substring(0, url.lastIndexOf('='));
-                System.debug('url2:'+url);
                 PageReference pageRef = new PageReference('/apex/MaintenanceCommissionPDF?id' + url);
                 pageRef.setRedirect(true);
                 return pageRef;
             } else{
-                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '澶氬崟鎵撳嵃鏈�澶ф暟閲忎负50,璇烽�夋嫨灏戜簬50涓慨鐞�!'));
+                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '澶氬崟鎵撳嵃鏈�澶ф暟閲忎负50,璇烽�夋嫨灏戜簬50涓慨鐞嗭紒'));
                 return null;
             }
         } else{
@@ -139,9 +127,14 @@
     }
 
     public class RetrievalData {
+        public String Status2{ get; set; }
         public String RepairName{ get; set; }
         public String SAPRepairNo{ get; set; }
-        public String HospitalName{ get; set; }
+        public String SerialNumber{ get; set; }
+        public Repair__c repair{ get; set; }
+        public RetrievalData(){
+            repair = new Repair__c();
+        }
     }
 
     public class RepairData {

--
Gitblit v1.9.1