From 1312ba82d4c880bdb5357d28e0d4af5b285f610f Mon Sep 17 00:00:00 2001
From: 高章伟 <gaozhangwei@prec-tech.com>
Date: 星期四, 10 三月 2022 15:54:39 +0800
Subject: [PATCH] 最近一月修改内容

---
 force-app/main/default/classes/RentalApplyEquipmentSetDetailHandler.cls |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/force-app/main/default/classes/RentalApplyEquipmentSetDetailHandler.cls b/force-app/main/default/classes/RentalApplyEquipmentSetDetailHandler.cls
index ece79ad..54058dc 100644
--- a/force-app/main/default/classes/RentalApplyEquipmentSetDetailHandler.cls
+++ b/force-app/main/default/classes/RentalApplyEquipmentSetDetailHandler.cls
@@ -2879,6 +2879,13 @@
     protected override void beforeUpdate() {
         if(!disabled){
             beforeSetValue();
+
+            // 涓嶅お纭畾姝ゅ鐞嗕細瀵瑰叾浠栧鐞嗘湁浠�涔堝奖鍝嶏紝闃叉鐢熶骇鐜鍙戠敓闂锛岀敤姝ゆ爣绛炬帶鍒�
+            // 绛夌‘璁ゆ病闂鍚庯紝鍦ㄥ垹闄�(Todo)
+            if (System.Label.Set_Queue_UniqueKey == 'TRUE') {
+                // 璁惧�兼帓闃熺殑UniqueKey
+                setUniqueKeyQueue();
+            }
         }
     }
     protected override void afterInsert() {
@@ -4602,6 +4609,30 @@
 
     }
 
+    private void setUniqueKeyQueue(){
+        Map<Id, Rental_Apply_Equipment_Set_Detail__c> olddetailMap = (Map<Id, Rental_Apply_Equipment_Set_Detail__c>) Trigger.oldMap;
+
+        for(Rental_Apply_Equipment_Set_Detail__c newdetail : (List<Rental_Apply_Equipment_Set_Detail__c>)trigger.new){
+            Rental_Apply_Equipment_Set_Detail__c olddetail = olddetailMap.get(newdetail.Id);
+            
+            if((olddetail.Queue_Number__c > 0  && newdetail.Queue_Number__c == 0)// 鏆傚畾鍒嗛厤
+                || (!olddetail.Cancel_Select__c && newdetail.Cancel_Select__c && olddetail.Queue_Number__c > 0)  //鍙栨秷(鎺掗槦涓紝鏆傚畾鍒嗛厤)
+                || (olddetail.Queue_Number__c > 0  && newdetail.Queue_Number__c == null )//鍒嗗崟
+                ){
+                // 娓呯┖鎺掗槦鐨刄niqueKey
+                newdetail.UniqueKey_Queue__c = null;
+            }
+
+            // 閲嶆帓鎴栬�呮帓闃烴o鍙樺寲鏃舵洿鏂�
+            if (!newdetail.Cancel_Select__c && newdetail.Queue_Number__c > 0 && newdetail.ExternalKey__c != null
+                && (newdetail.Queue_Number__c != olddetail.Queue_Number__c
+                    || newdetail.ExternalKey__c != olddetail.ExternalKey__c)) {
+                // 鎺掗槦鐨刄niqueKey璁惧��
+                newdetail.UniqueKey_Queue__c = newdetail.ExternalKey__c + ':' + newdetail.Queue_Number__c;
+            }
+        }
+    }
+
     /*
     private void reQueueNumber() {
         Map<String, List<Rental_Apply_Equipment_Set_Detail__c>> queueRaesdMap = new Map<String, List<Rental_Apply_Equipment_Set_Detail__c>>();

--
Gitblit v1.9.1