From 675ad74a96337da89845179a9606116d1f32e621 Mon Sep 17 00:00:00 2001
From: 李彤 <litong@prec-tech.com>
Date: 星期四, 17 十一月 2022 15:42:40 +0800
Subject: [PATCH] 新建修理提示信息

---
 force-app/main/default/classes/ChoiceAssetController.cls |  147 +++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 117 insertions(+), 30 deletions(-)

diff --git a/force-app/main/default/classes/ChoiceAssetController.cls b/force-app/main/default/classes/ChoiceAssetController.cls
index fb4bd8b..872e355 100644
--- a/force-app/main/default/classes/ChoiceAssetController.cls
+++ b/force-app/main/default/classes/ChoiceAssetController.cls
@@ -72,12 +72,21 @@
         //1.鍙煡鎵�100鏉′繚鏈夎澶囨暟鎹�
         String fuselageNumberTrim = String.isNotBlank(FuselageNumber)?FuselageNumber.trim():'';
         String serialNumber = '%' + String.escapeSingleQuotes(fuselageNumberTrim.replaceAll('%', '\\%')) + '%';
-        List < Asset > assetListed =    [SELECT Id,name,SerialNumber,InstallDate,Information_From__c,Asset_situation__c,
+        List < Asset > assetListed =    [SELECT Id,name,SerialNumber,InstallDate,
+                                            // Information_From__c,// 20220927 ljh XLIU-CJN62G
+                                            Asset_situation__c,
                                             Order_No__c,Account.Name,Status,Department_Class__c,Hospital__r.Owner.Name,
                                             Hospital__r.Owner.Phone,Installation_Site__c,CurrentContract__c,
                                             Product2.Asset_Model_No__c,Hospital__r.Name,Department_Class__r.Name ,
-                                            Department_Class__r.Id,Ji_Zhong_Guan_Li_Ku_Cun__c
+                                            Department_Class__r.Id,
+                                            // Ji_Zhong_Guan_Li_Ku_Cun__c,// 20220927 ljh XLIU-CJN62G
+                                            Posting_Date__c,Extend_Gurantee_DateTo__c,CurrentContract_End_Date__c,// 20220927 ljh XLIU-CJN62G
+                                            Account.RecordTypeId
                                             ,Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c
+                                            ,Account.Parent.FSE_SP_Main_Leader__r.Work_Location__c
+                                            //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221012 start
+                                            ,PartSupplyFinishDate__c
+                                            //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221012 end
                                         FROM Asset where Id != null AND Repairing_Count__c >= 0 AND SerialNumber like :serialNumber LIMIT 100
 
                                         ];
@@ -85,7 +94,6 @@
         for (Asset ast: assetListed) {
             choiceAssetInfoRecordsview.add(new ChoiceAssetInfo(ast));
         }
-
     }
 
     // 妫�绱�
@@ -139,17 +147,39 @@
             ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '鍙兘閫夋嫨涓�涓繚鏈夎澶�'));
             return null;
         }
-
+        //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221012 start
+        List<Asset> ass = [select id,Product_ID__c from Asset where ID = :ast.Id];
+        List<Product2> p2 = [select id,Name,Can_Repair__c 
+                        from Product2 where 
+                        ID = :ass[0].Product_ID__c];
+        String canRepair = p2[0].Can_Repair__c;
+        if (canRepair=='绗笁鏂�'){
+            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '闈炴垜鍙镐慨鐞嗗璞★紝鏃犳硶鏂板缓淇悊锛屽鏈変笉鏄庤鍜ㄨCIC'));
+            return null;
+        }
+        if (canRepair=='涓�' || String.isBlank(canRepair)){
+            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '鏈澶囨棤娉曟柊寤轰慨鐞�'));
+            return null;
+        }
+        //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221012 end
         return createData(ast);
     }
 
+    
     public PageReference createData(Asset ast) {
         String url = '/';
         String joint_1 = '=';
         String joint_2 = '_lkid=';
         String joint_3 = '&CF';
         String joint_4 = '&';
-
+        //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 start
+        List<Asset> ass = [select id,Product_ID__c from Asset where ID = :ast.Id];
+        List<Product2> p2 = [select id,Name,Can_Repair__c 
+                        from Product2 where 
+                        ID = :ass[0].Product_ID__c];
+        String canRepair = p2[0].Can_Repair__c;
+        system.debug('1111111111111111111'+canRepair);
+        //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 end
         if ('Repair'.equals(dataType)) {
             String Delivered_Product_Id = '00N10000002Dx1X'; //璁惧鍨嬪彿 
             String Account_Id = '00N10000002Dx5n'; //绉戝
@@ -181,23 +211,30 @@
             String  ActualVisitDateThird_Id= '';//涓夋涓婇棬鏃�
             String  SubOrderCompleteDate_Id= '';//鎶ヤ慨鍗曞鐞嗗畬鎴愭棩
             String  SubOrderCreatedDate_Id= '';//鎶ヤ慨鍗曠敵璇蜂慨鐞嗘棩
+            //LLIU-CGX5E9 LY 20220812 start
+            String  DateReceiptQuestions_Id = '';//闂鑱旂粶鏀跺埌鏃�
+            //LLIU-CGX5E9 LY 20220812 end
+            //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 start
+            String  Excwork_location_Id = '';//璺宠繃缁翠慨涓績
+            //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 end
             String  engineerSendDate_Id= '';//宸ョ▼甯堜慨鐞嗗搧瀵勯�佹棩
-            if (NFMUtil.isSandbox()) { //娴嬭瘯鐜
-                RepairApplicant_Id = '00N1m0000054ufW'; //鎶ヤ慨浜�
-                // RepairApplicantPosition_Id = '00N1m0000054ufV'; //鎶ヤ慨浜哄矖浣�  
-                RepairApplicantHospital_Id = '00N1m0000054ufU'; //鎶ヤ慨浜哄尰闄�  
-                RepairApplicantDepartment_Id = '00N1m0000054ufT'; //鎶ヤ慨浜虹瀹�
-                baoxiuzidan = '00N1m0000054ufZ'; //鎶ヤ慨瀛愬崟 
-                faqiri = '00N1m0000054ufa'; //鎶ヤ慨鍙戣捣鏃�
-                shouliri = '00N1m0000054ufS'; //宸ョ▼甯堝彈鐞嗘棩
+            // if (NFMUtil.isSandbox()) { //娴嬭瘯鐜
+            //     RepairApplicant_Id = '00N1m0000054ufW'; //鎶ヤ慨浜�
+            //     // RepairApplicantPosition_Id = '00N1m0000054ufV'; //鎶ヤ慨浜哄矖浣�  
+            //     RepairApplicantHospital_Id = '00N1m0000054ufU'; //鎶ヤ慨浜哄尰闄�  
+            //     RepairApplicantDepartment_Id = '00N1m0000054ufT'; //鎶ヤ慨浜虹瀹�
+            //     //baoxiuzidan = '00N1m0000054ufZ'; //鎶ヤ慨瀛愬崟 
+            //     baoxiuzidan = '00N10000009H1rR'; //鎶ヤ慨瀛愬崟
+            //     faqiri = '00N1m0000054ufa'; //鎶ヤ慨鍙戣捣鏃�
+            //     shouliri = '00N1m0000054ufS'; //宸ョ▼甯堝彈鐞嗘棩
                 
-                PlannedVisitDay_Id= '00N1m000005SRiF';//璁″垝涓婇棬鏃�
-                ActualVisitDateFirst_Id= '00N1m000005SRiK';//涓�娆′笂闂ㄦ棩
-                ActualVisitDateSecond_Id= '00N1m000005SRiP';//浜屾涓婇棬鏃�
-                ActualVisitDateThird_Id= '00N1m000005SRiU';//涓夋涓婇棬鏃�
-                SubOrderCompleteDate_Id= '00N1m000005SRmg';//鎶ヤ慨鍗曞鐞嗗畬鎴愭棩
-                SubOrderCreatedDate_Id= '00N1m000005SRmW';//鎶ヤ慨鍗曠敵璇蜂慨鐞嗘棩
-            } else { //姝e紡鐜
+            //     PlannedVisitDay_Id= '00N1m000005SRiF';//璁″垝涓婇棬鏃�
+            //     ActualVisitDateFirst_Id= '00N1m000005SRiK';//涓�娆′笂闂ㄦ棩
+            //     ActualVisitDateSecond_Id= '00N1m000005SRiP';//浜屾涓婇棬鏃�
+            //     ActualVisitDateThird_Id= '00N1m000005SRiU';//涓夋涓婇棬鏃�
+            //     SubOrderCompleteDate_Id= '00N1m000005SRmg';//鎶ヤ慨鍗曞鐞嗗畬鎴愭棩
+            //     SubOrderCreatedDate_Id= '00N1m000005SRmW';//鎶ヤ慨鍗曠敵璇蜂慨鐞嗘棩
+            // } else { //姝e紡鐜
                 RepairApplicant_Id = '00N10000009H1rQ'; //鎶ヤ慨浜�
                 // RepairApplicantPosition_Id = ''; //鎶ヤ慨浜哄矖浣�  
                 RepairApplicantHospital_Id = '00N10000009H1rP'; //鎶ヤ慨浜哄尰闄�  
@@ -213,9 +250,20 @@
                 ActualVisitDateThird_Id= '00N10000009H1r8';//涓夋涓婇棬鏃�
                 SubOrderCompleteDate_Id= '00N10000009H1ri';//鎶ヤ慨鍗曞鐞嗗畬鎴愭棩
                 SubOrderCreatedDate_Id= '00N10000009H1rj';//鎶ヤ慨鍗曠敵璇蜂慨鐞嗘棩
-            }
+                //LLIU-CGX5E9 LY 20220812 start
+                DateReceiptQuestions_Id= '00N10000008rsVQ';//闂鑱旂粶鏀跺埌鏃�
+                //LLIU-CGX5E9 LY 20220812 end
+                //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 start
+                Excwork_location_Id = '00N10000009HAJl';//璺宠繃缁翠慨涓績
+                //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 end
+            //}
 
             url += 'a0J/e?retURL=%2F';
+            //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 start
+            if (canRepair=='RC閫佷慨'){
+                url += joint_4 + Excwork_location_Id + joint_1 + true;
+            }
+            //XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221110 end
             url += joint_3 + Delivered_Product_Id + joint_1 + ast.Name;
             url += joint_3 + Delivered_Product_Id + joint_2 + ast.Id;
 
@@ -239,8 +287,8 @@
             url += joint_4 + RepairApplicantHospital_Id + joint_1 + repairSubOrder.Hospital__r.Name;//鎶ヤ慨浜哄尰闄�
             url += joint_4 + RepairApplicantDepartment_Id + joint_1 + repairSubOrder.Department__r.Name;//鎶ヤ慨浜虹瀹�
 
-            if (repairSubOrder.ProblemDescription__c != null) {
-                url += joint_4 + Repair_Detail_Id + joint_1 + repairSubOrder.ProblemDescription__c;
+            if (repairSubOrder.ResponseResultDesc__c != null) { //2022/04/07   zhangyuheng  ProblemDescription__c>ResponseResultDesc__c
+                url += joint_4 + Repair_Detail_Id + joint_1 + repairSubOrder.ResponseResultDesc__c;
             }
             url += joint_4 + guzhang + joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.FaultTime__c);
             //add         wangweipeng                 2022/02/11              start
@@ -252,13 +300,50 @@
             url += joint_4 +  ActualVisitDateSecond_Id+ joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.ActualVisitDateSecon__c);//浜屾涓婇棬鏃�
             url += joint_4 +  ActualVisitDateThird_Id+ joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.ActualVisitDateThird__c);//涓夋涓婇棬鏃�
             url += joint_4 +  SubOrderCompleteDate_Id+ joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.ApplicationTime__c);//鎶ヤ慨鍗曞鐞嗗畬鎴愭棩
+            //LLIU-CGX5E9 LY 20220812 start
+            url += joint_4 +  DateReceiptQuestions_Id+ joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.ApplicationTime__c);//闂鑱旂粶鏀跺埌鏃�
+            //LLIU-CGX5E9 LY 20220812 end
             url += joint_4 +  SubOrderCreatedDate_Id+ joint_1 + NFMUtil.formatDateTime2StrSprit(Date.today());//鎶ヤ慨鍗曠敵璇蜂慨鐞嗘棩
 
             url += joint_4 + shouliri + joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.ReceiverTime__c);
 
             //add     wangweipeng        2022/01/26       start
-            url += joint_4 +  SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//淇悊鍝佽繑閫佸湴
+            // url += joint_4 +  SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//淇悊鍝佽繑閫佸湴      //2022/4/7  zhangyuheng 娉ㄩ噴
             //add     wangweipeng        2022/01/26       end
+            //add     zhangyuheng        2022/04/07       start
+            if (String.isNotBlank(ast.Account.RecordTypeId)) {
+                if (ast.Account.RecordTypeId == '01210000000QemQAAS' || //鎴樼暐绉戝 ET
+                    ast.Account.RecordTypeId == '01210000000QemL' || //鎴樼暐绉戝 娑堝寲绉�
+                    ast.Account.RecordTypeId == '01210000000Qezy' || //鎴樼暐绉戝 鍏朵粬
+                    ast.Account.RecordTypeId == '01210000000Qf03' || //鎴樼暐绉戝 涓嶆槑
+                    ast.Account.RecordTypeId == '01210000000QezZ' || //鎴樼暐绉戝 鍛煎惛绉�
+                    ast.Account.RecordTypeId == '01210000000Qezo' || //鎴樼暐绉戝 濡囩
+                    ast.Account.RecordTypeId == '01210000000Qeze' || //鎴樼暐绉戝 鏅绉�
+                    ast.Account.RecordTypeId == '01210000000Qezj' || //鎴樼暐绉戝 娉屽翱绉�
+                    ast.Account.RecordTypeId == '01210000000Qezt'    //鎴樼暐绉戝 鑰抽蓟鍠夌
+                    ) { //鎴樼暐绉戝
+                    if (String.isNotBlank(ast.Account.Parent.FSE_SP_Main_Leader__r.Work_Location__c)) {
+                        url += joint_4 +  SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//淇悊鍝佽繑閫佸湴
+                    }else {
+                        // continue;
+                    }
+                }
+                if (ast.Account.RecordTypeId == '01210000000QfmRAAS' || //绉戝 鍛煎惛绉�
+                    ast.Account.RecordTypeId == '01210000000QfmH' || //绉戝 鏅绉�
+                    ast.Account.RecordTypeId == '01210000000Qfmb' || //绉戝 鍏朵粬
+                    ast.Account.RecordTypeId == '01210000000QfmM' || //绉戝 濡囩
+                    ast.Account.RecordTypeId == '01210000000QfmC' || //绉戝 娉屽翱绉�
+                    ast.Account.RecordTypeId == '01210000000Qfm7' || //绉戝 娑堝寲绉�
+                    ast.Account.RecordTypeId == '01210000000Qfm2'    //绉戝 鑰抽蓟鍠夌
+                    ) { //绉戝
+                    if (String.isNotBlank(ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c)) {
+                        url += joint_4 +  SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//淇悊鍝佽繑閫佸湴
+                    }else {
+                        // continue;
+                    }
+                }
+            }
+            //add     zhangyuheng        2022/04/07       end
             
             url += joint_3 + Incharge_Staff_Id + joint_1 + repairSubOrder.Owner.Name;
             url += joint_3 + Incharge_Staff_Id + joint_2 + repairSubOrder.OwnerId;
@@ -276,11 +361,11 @@
             String Generation_Source_Id = '00N10000002FHF6';//QIS鏉ユ簮
             String Name_Id = 'Name';//QIS绠$悊鍙风爜
 
-            if (NFMUtil.isSandbox()) {
-                baoxiuzidan = '00N1m000005STFv'; //鎶ヤ慨瀛愬崟
-            } else {
+            // if (NFMUtil.isSandbox()) {
+            //     baoxiuzidan = '00N1m000005STFv'; //鎶ヤ慨瀛愬崟
+            // } else {
                 baoxiuzidan = '00N10000009H22X'; //鎶ヤ慨瀛愬崟
-            }
+            // }
             url += 'a0f/e?retURL=%2Fa0f%2Fo&RecordType=01210000000RLWc&ent=01I10000000T5b1';
 
             url += joint_3 + Delivered_Product_Id + joint_1 + ast.Name;
@@ -317,10 +402,12 @@
     private String makeSoql() {
 
         String start = '';
-        String soql = 'select Id,name,SerialNumber,InstallDate,Information_From__c,Asset_situation__c,Order_No__c,Account.Name,Status,Department_Class__c, ';
+        String soql = 'select Id,name,SerialNumber,InstallDate,Asset_situation__c,Order_No__c,Account.Name,Status,Department_Class__c, ';
 
         soql += 'Hospital__r.Owner.Name,Hospital__r.Owner.Phone,Installation_Site__c,CurrentContract__c,Product2.Asset_Model_No__c,Hospital__r.Name,Department_Class__r.Name ,Department_Class__r.Id,';
-        soql += 'Ji_Zhong_Guan_Li_Ku_Cun__c,Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c';
+        soql += 'Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c,Account.RecordTypeId';
+        soql += ',Posting_Date__c,Extend_Gurantee_DateTo__c,CurrentContract_End_Date__c  ';// 20220927 ljh XLIU-CJN62G
+        soql += ',PartSupplyFinishDate__c ';//XLIU-CJM7Z9 銆愬鎵樸�戞柊寤轰慨鐞嗘彁绀轰俊鎭紙鍋滀骇鍙婇潪淇悊瀵硅薄鍝侊級LY 20221012 
         soql += ' from Asset where Id != null AND Repairing_Count__c = 0 ';
         if (String.isNotBlank(FuselageNumber) || String.isNotBlank(AssetModel) || String.isNotBlank(HospitalName)) {
             soql += ' AND (';

--
Gitblit v1.9.1