From 3a414ec8f1715b3b72e06f8598e08e6a8729ca23 Mon Sep 17 00:00:00 2001
From: 彭锟 <pengkun@prec-tech.com>
Date: 星期四, 24 三月 2022 17:41:02 +0800
Subject: [PATCH] Merge branch 'master' of http://47.92.229.245:8089/r/OlyMEBG

---
 force-app/main/default/classes/BatchSelectRepairPageController.cls |   73 +++++++++++++++++++-----
 force-app/main/default/pages/BatchSelectRepairPage.page            |   68 ++++++++++------------
 2 files changed, 88 insertions(+), 53 deletions(-)

diff --git a/force-app/main/default/classes/BatchSelectRepairPageController.cls b/force-app/main/default/classes/BatchSelectRepairPageController.cls
index e1526dd..c64e452 100644
--- a/force-app/main/default/classes/BatchSelectRepairPageController.cls
+++ b/force-app/main/default/classes/BatchSelectRepairPageController.cls
@@ -15,46 +15,77 @@
         RevalInfo = new RetrievalData();
     }
 
+    public List<SelectOption> getStatusItems() {
+        List<SelectOption> options = new List<SelectOption>();
+        options.add(new SelectOption('','--鏃�--'));
+        options.add(new SelectOption('鑽夋涓�','鑽夋涓�'));
+        options.add(new SelectOption('1.鍙楃悊瀹屾瘯','1.鍙楃悊瀹屾瘯'));
+        options.add(new SelectOption('2.缁翠慨鎶ヤ环闃舵','2.缁翠慨鎶ヤ环闃舵'));
+        options.add(new SelectOption('3.缁翠慨闃舵','3.缁翠慨闃舵'));
+        options.add(new SelectOption('4.淇悊鍝佽繑閫侀樁娈�','4.淇悊鍝佽繑閫侀樁娈�'));
+        options.add(new SelectOption('5.瀹屾瘯','5.瀹屾瘯'));
+        options.add(new SelectOption('0.鍙栨秷','0.鍙栨秷'));
+        options.add(new SelectOption('0.鍒犻櫎','0.鍒犻櫎'));
+        options.add(new SelectOption('0.鐢宠瀹屾瘯','0.鐢宠瀹屾瘯'));
+        return options;
+    }
+
+    public List<SelectOption> getSiteRepairItems() {
+        List<SelectOption> options = new List<SelectOption>();
+        options.add(new SelectOption('','--鏃�--'));
+        options.add(new SelectOption('RC淇悊','RC淇悊'));
+        options.add(new SelectOption('鐩撮�丼ORC淇悊','鐩撮�丼ORC淇悊'));
+        options.add(new SelectOption('鐩撮�丱GZ淇悊','鐩撮�丱GZ淇悊'));
+        options.add(new SelectOption('鍔炰簨澶勪慨鐞�','鍔炰簨澶勪慨鐞�'));
+        options.add(new SelectOption('鐜板満淇悊','鐜板満淇悊'));
+        return options;
+    }
+
     public PageReference RetrievalBtn() {
         RepairList = new List<Repair__c>();
         RAInfoList = new List<RepairData>();
-        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))){
+        if(String.isBlank(RevalInfo.Status1) && String.isBlank(RevalInfo.RepairName) && String.isBlank(RevalInfo.SAPRepairNo) 
+            && String.isBlank(RevalInfo.SerialNumber) && String.isBlank(RevalInfo.repair.Incharge_Staff__c) && String.isBlank(RevalInfo.onSiteRepair)
+            && String.isBlank(String.valueOf(RevalInfo.repair.Aware_date__c)) && String.isBlank(RevalInfo.workLocationSelect)){
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '璇疯嚦灏戞坊鍔犱竴涓绱㈡潯浠�!'));
             return null;
         }
         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 + '%\' ';
+        if(String.isNotBlank(RevalInfo.Status1)){
+            sql += ' and Status1__c = \'' + RevalInfo.Status1 + '\'';
         }
         if(String.isNotBlank(RevalInfo.RepairName)){
-            sql += ' and Name like \'%' + RevalInfo.RepairName + '%\' ';
+            sql += ' and Name like \'%' + RevalInfo.RepairName + '%\'';
         }
         if(String.isNotBlank(RevalInfo.SAPRepairNo)){
-            sql += ' and SAP_Service_Repair_No__c like \'%' + RevalInfo.SAPRepairNo + '%\' ';
+            sql += ' and SAP_Service_Repair_No__c like \'%' + RevalInfo.SAPRepairNo + '%\'';
         }
         if(String.isNotBlank(RevalInfo.SerialNumber)){
-            sql += ' and SerialNumber__c like \'%' + 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 + '\' ';
+            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);
+        if(String.isNotBlank(String.valueof(RevalInfo.repair.Aware_date__c))){
+            String day = String.valueof(RevalInfo.repair.Aware_date__c);
             day = day.substring(0,10);
             sql += ' and FSE_ApplyForRepair_Day__c = ' + day;
         }
-        sql += ' limit 201';
+        if(String.isNotBlank(RevalInfo.onSiteRepair)){
+            sql += ' and On_site_repair__c = \'' + RevalInfo.onSiteRepair + '\'';
+        }
+        if(String.isNotBlank(RevalInfo.workLocationSelect)){
+            sql += ' and work_location_select__c like \'%' + RevalInfo.workLocationSelect + '%\'';
+        }
+        sql += ' limit 200';
         System.debug('sql1:' + sql);
         if(String.isNotBlank(sql)){
             RepairList = Database.query(sql);
         }
-        if(RepairList.size() > 200){
+        if(RepairList.size() == 200){
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '妫�绱㈡暟鎹お澶�,璇风缉灏忔绱㈣寖鍥达紒'));
-            return null;
         }
         if(RepairList.size() <= 0){
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '娌℃绱㈠埌浠讳綍淇悊'));
@@ -108,6 +139,16 @@
     public static PageReference generateAttachment(List<Repair__c> repList){
         PageReference pdfPage;
         List<Attachment> attachments = new List<Attachment>();
+        List<String> attachmentNameList = new List<String>();
+        List<Attachment> isGeneratedPDFList = new List<Attachment>();
+        //鍒犻櫎宸插瓨鍦ㄧ殑闄勪欢锛岀敓鎴愭柊鐨勯檮浠�
+        for(Repair__c re : repList){   
+            attachmentNameList.add(re.name + '_' + 'MaintenanceCommission.pdf');
+        }
+        isGeneratedPDFList = [select id from Attachment where name IN:attachmentNameList];
+        if(isGeneratedPDFList.size() > 0){
+            delete isGeneratedPDFList;
+        }
         for(Repair__c re : repList){       
             pdfPage = new PageReference('/apex/MaintenanceCommissionPDF?id=' + re.Id);
             Blob pdfBody;
@@ -127,10 +168,12 @@
     }
 
     public class RetrievalData {
-        public String Status2{ get; set; }
+        public String Status1{ get; set; }
         public String RepairName{ get; set; }
         public String SAPRepairNo{ get; set; }
         public String SerialNumber{ get; set; }
+        public String onSiteRepair{ get; set; }
+        public String workLocationSelect{ get; set; }
         public Repair__c repair{ get; set; }
         public RetrievalData(){
             repair = new Repair__c();
diff --git a/force-app/main/default/pages/BatchSelectRepairPage.page b/force-app/main/default/pages/BatchSelectRepairPage.page
index 5cf2d1a..0dd6f47 100644
--- a/force-app/main/default/pages/BatchSelectRepairPage.page
+++ b/force-app/main/default/pages/BatchSelectRepairPage.page
@@ -55,36 +55,16 @@
         //鍏ㄩ�夊姛鑳�
         function checkAll() {
             var cnt = j$(escapeVfId('raCnt')).val();
-            if (j$(escapeVfId('Page:allForm:allBlock:j_id56:checkAll')).attr('checked') == 'checked') {
+            if (j$(escapeVfId('Page:allForm:allBlock:j_id66:checkAll')).attr('checked') == 'checked') {
                 for (var i = 0; i < cnt; i++) {
-                    j$(escapeVfId('Page:allForm:allBlock:j_id56:records:' + i + ':checklist')).attr('checked',true);
+                    j$(escapeVfId('Page:allForm:allBlock:j_id66:records:' + i + ':checklist')).attr('checked',true);
                 }
             } else {
                 for (var i = 0; i < cnt; i++) {
-                    j$(escapeVfId('Page:allForm:allBlock:j_id56:records:' + i + ':checklist')).attr('checked',false);
+                    j$(escapeVfId('Page:allForm:allBlock:j_id66:records:' + i + ':checklist')).attr('checked',false);
                 }
             }
         }
-        //妫�绱㈠姛鑳�
-        // function RetrievalBtnJS() {
-        //     var RepairName = j$(escapeVfId("Page:Form:Block:RAInfoList:0:RepairName")).value();
-        //     var SAPRepairNo = j$(escapeVfId("Page:Form:Block:RAInfoList:0:SAPRepairNo")).value();
-        //     var HospitalName = j$(escapeVfId("Page:Form:Block:RAInfoList:0:HospitalName")).value();
-        //     blockme();
-        //     RetrievalBtn();
-        // }
-        //璺宠浆鎵撳嵃PDF椤甸潰
-        // function showPDFJS() {
-        //     blockme();
-        //     showPDF();
-        //     var raIdList = j$(escapeVfId('raIdList')).val();
-        //     if(raIdList != null && raIdList != ''){
-        //         var Id = raIdList.split();
-        //         for(var i = 0; i < Id.size(); i++){
-        //             window.open('apex/MaintenanceCommissionPDF?id=' + Id[i]);
-        //         }
-        //     }
-        // }
     </script>
     <apex:form id="allForm" style="margin: 10px 10px;">
         <apex:actionFunction name="RetrievalBtn" action="{!RetrievalBtn}" rerender="Form, message" onComplete="unblockUI();"/>
@@ -100,46 +80,60 @@
                         <table>
                             <tr><td style="text-align: left;padding-right: 100px;">&nbsp;</td></tr>
                             <tr>
-                                <!-- <td style="text-align: left;padding-right: 100px;">&nbsp;</td> -->
-                                <td style="text-align: right; width:200px;">
-                                    <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="鐘舵��2"/>
+                                <td style="text-align: right; width:100px;">
+                                    <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="鐘舵��1"/>
                                 </td>
-                                <td style="text-align: left;">
-                                    <apex:inputText id="Status2" value="{!RevalInfo.Status2}"/>
+                                <td style="text-align: left;position: relative; top: 7px;">
+                                    <apex:selectList value="{!RevalInfo.Status1}" size="1" style="width: 150px; height: 24px;">
+                                        <apex:selectOptions value="{!StatusItems}"/>
+                                    </apex:selectList><p/>
                                 </td>
-                                <td style="text-align: right; width:200px;">
+                                <td style="text-align: right; width:150px;">
                                     <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="RS淇悊鍗曞彿"/>
                                 </td>
                                 <td style="text-align: left;">
                                     <apex:inputText id="RepairName" value="{!RevalInfo.RepairName}"/>
                                 </td>
-                                <td style="text-align: right; width:150px;">
+                                <td style="text-align: right; width:130px;">
                                     <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="SAP淇悊鍗曞彿"/>
                                 </td>
-                                <td style="text-align: left;padding-right: 100px;">
+                                <td style="text-align: left;padding-right: 70px;">
                                     <apex:inputText id="SAPRepairNo" value="{!RevalInfo.SAPRepairNo}"/>
+                                </td>
+                                <td style="text-align: right; width:60px;">
+                                    <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="鏈嶅姟鏂瑰紡"/>
+                                </td>
+                                <td style="text-align: left;position: relative; top: 7px;">
+                                    <apex:selectList value="{!RevalInfo.onSiteRepair}" size="1" style="width: 150px; height: 24px;">
+                                        <apex:selectOptions value="{!SiteRepairItems}"/>
+                                    </apex:selectList><p/>
                                 </td>
                             </tr>
                             <tr><td style="text-align: left;padding-right: 100px;">&nbsp;</td></tr>
                             <tr>
-                                <!-- <td style="text-align: left;padding-right: 100px;">&nbsp;</td> -->
                                 <td style="text-align: right; width:100px;">
                                     <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="鏈鸿韩缂栫爜"/>
                                 </td>
                                 <td style="text-align: left;">
                                     <apex:inputText id="SerialNumber" value="{!RevalInfo.SerialNumber}"/>
                                 </td>
-                                <td style="text-align: right; width:200px;">
+                                <td style="text-align: right; width:150px;">
                                     <apex:outputLabel style="font-weight: bold; " value="淇悊濮旀墭鑰�"/>
                                 </td>
                                 <td style="text-align: left;">
                                     <apex:inputField id="InchargeStaffName" value="{!RevalInfo.repair.Incharge_Staff__c}"/>
                                 </td>
-                                <td style="text-align: right; width:150px;">
+                                <td style="text-align: right; width:130px;">
                                     <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="FSE鐢宠鏃�"/>
                                 </td>
-                                <td style="text-align: left;padding-right: 80px;">
-                                    <apex:inputField id="FSE_ApplyForRepair_Day" value="{!RevalInfo.repair.Final_complete_day__c}"/>
+                                <td style="text-align: left;padding-right: 50px;">
+                                    <apex:inputField id="FSE_ApplyForRepair_Day" value="{!RevalInfo.repair.Aware_date__c}"/>
+                                </td>
+                                <td style="text-align: right; width:60px;">
+                                    <apex:outputLabel style="font-weight: bold; padding-right: 5px;" value="缁翠慨涓績"/>
+                                </td>
+                                <td style="text-align: left;">
+                                    <apex:inputText id="workLocationSelect" value="{!RevalInfo.workLocationSelect}"/>
                                 </td>
                             </tr>
                             <tr><td style="text-align: left;padding-right: 100px;">&nbsp;</td></tr>
@@ -150,7 +144,6 @@
                             </tr>
                         </table>
                     </apex:pageBlock>  
-                    <!-- <div style="font-size:12px;"> -->
                     <apex:pageBlock title="璇︾粏淇℃伅" >
                         <input type="hidden" id="raCnt" value="{!RACount}" />
                         <apex:commandButton style="width:80px;" value="鎵撳嵃PDF" action="{!showPDF}" onclick="blockme();" reRender="allForm,message" onComplete="unblockUI();"/>
@@ -227,7 +220,6 @@
                         </table>
                         </div>
                     </apex:pageBlock>
-                    <!-- </div> -->
                 </div>
             </apex:pageBlock>
         </apex:outputPanel>

--
Gitblit v1.9.1