From fd9df05c48c09b4d7f39a3b401882bda226dedea Mon Sep 17 00:00:00 2001
From: 19626 <1962676589@qq.com>
Date: 星期二, 31 十月 2023 20:38:18 +0800
Subject: [PATCH] 近期修改

---
 force-app/main/default/classes/NotetoPdfHandler.cls |   37 ++++++++++++++++++++++++++-----------
 1 files changed, 26 insertions(+), 11 deletions(-)

diff --git a/force-app/main/default/classes/NotetoPdfHandler.cls b/force-app/main/default/classes/NotetoPdfHandler.cls
index 2c54f00..3bd97b3 100644
--- a/force-app/main/default/classes/NotetoPdfHandler.cls
+++ b/force-app/main/default/classes/NotetoPdfHandler.cls
@@ -1,4 +1,5 @@
 public without sharing class NotetoPdfHandler extends Oly_TriggerHandler {
+    // 20231103 闄堜含姝� Lightning鏂囦欢淇敼 Start
     @TestVisible
     private Map<Id, ContentDocumentLink> newMap;
     @TestVisible
@@ -16,13 +17,19 @@
     }
     @TestVisible
     protected override void afterInsert() {
+        Set<Id> ids = new Set<Id>();
+        for (ContentDocumentLink link : newList) {
+            ids.add(link.ContentDocumentId);
+        }
+        List<ContentVersion> version = [select Id from ContentVersion where ContentDocumentId in: ids and FileType = 'SNOTE'];
+        if(version != null){
+            NotetoPdf();
+        }
         // 淇悊ID
-	    NotetoPdf();
-	    // NoteMail();
+	    NoteMail();
     }
 	// 淇悊鍜孮IS鏂板缓澶囨敞鏃讹紝鐢熸垚瀵瑰簲鐨凱DF
     private void NotetoPdf() {
-    	StaticParameter.AttachmentTrigger = false;
 	    List<String> Rlist = new List<String>();
 	    // QisID
 	    for (ContentDocumentLink link : newList) {
@@ -47,12 +54,14 @@
         List<Messaging.SingleEmailMessage> sendMails = new List<Messaging.SingleEmailMessage>();
         List<String> Rlist = new List<String>();
         List<String> ParentIdList = new List<String>();
+        Map<String,String> idMap = new Map<String,String>();
         // QisID
         for (ContentDocumentLink link : newList) {
             if(String.valueOf(link.LinkedEntityId).startsWith('a0J') 
                 || String.valueOf(link.LinkedEntityId).startsWith('a0f')){
                 Rlist.add(link.ContentDocumentId);
                 ParentIdList.add(link.LinkedEntityId);
+                idMap.put(link.ContentDocumentId,link.LinkedEntityId);
             }
         }
         // for (Attachment att : newList) {
@@ -63,7 +72,7 @@
         //     }
         // }
         // List<Attachment> NtList = [Select id,ParentId,Name,Body FROM Attachment where Id in : Rlist];
-        List<ContentVersion> verList = [select Id,Title,VersionData,ContentDocumentId from ContentVersion where ContentDocumentId in: Rlist];
+        List<ContentVersion> verList = [select Id,TextPreview,Title,VersionData,ContentDocumentId from ContentVersion where ContentDocumentId in: Rlist];
         Map<Id,Repair__c> updateRprMap = new Map<Id,Repair__c>();
         Map<Id,QIS_Report__c> updateQisMap = new Map<Id,QIS_Report__c>();
         for (Repair__c re :[select id,Name,SerialNumber__c,Delivered_Product__r.Name,HP_Name__c
@@ -89,14 +98,19 @@
         }
         List<User> userList = [select Id, Name, Email, Manager.Email from User where id IN :IdList];
         for (ContentVersion version : verList) {
-            ContentDocumentLink link = [select LinkedEntityId from ContentDocumentLink where ContentDocumentId =: version.ContentDocumentId limit 1];
-            String titName = updateRprMap.containsKey(link.LinkedEntityId)? updateRprMap.get(link.LinkedEntityId).Name : updateQisMap.get(link.LinkedEntityId).Name;
-            String prname = updateRprMap.containsKey(link.LinkedEntityId)? updateRprMap.get(link.LinkedEntityId).Delivered_Product__r.Name : updateQisMap.get(link.LinkedEntityId).nonyushohin__r.Name;
-            String Serial = updateRprMap.containsKey(link.LinkedEntityId)? updateRprMap.get(link.LinkedEntityId).SerialNumber__c : updateQisMap.get(link.LinkedEntityId).lot_or_serial__c;
-            String accountname = updateRprMap.containsKey(link.LinkedEntityId)? updateRprMap.get(link.LinkedEntityId).HP_Name__c : updateQisMap.get(link.LinkedEntityId).Hospital__r.Name;
+            String linkedEntityId = idMap.get(version.ContentDocumentId);
+            String titName = updateRprMap.containsKey(linkedEntityId)? updateRprMap.get(linkedEntityId).Name : updateQisMap.get(linkedEntityId).Name;
+            String prname = updateRprMap.containsKey(linkedEntityId)? updateRprMap.get(linkedEntityId).Delivered_Product__r.Name : updateQisMap.get(linkedEntityId).nonyushohin__r.Name;
+            String Serial = updateRprMap.containsKey(linkedEntityId)? updateRprMap.get(linkedEntityId).SerialNumber__c : updateQisMap.get(linkedEntityId).lot_or_serial__c;
+            String accountname = updateRprMap.containsKey(linkedEntityId)? updateRprMap.get(linkedEntityId).HP_Name__c : updateQisMap.get(linkedEntityId).Hospital__r.Name;
             String title = '';
             String body = '';
-            title = '銆愪慨鐞�/QIS銆戯細' + titName + '宸叉柊澧炴枃浠讹紝璇锋煡鐪�';
+            if(version.TextPreview != null){
+                title = '銆愪慨鐞�/QIS銆戯細' + titName + '宸叉柊澧炲娉紝璇锋煡鐪�';
+            }else{
+                title = '銆愪慨鐞�/QIS銆戯細' + titName + '宸叉柊澧炴枃浠讹紝璇锋煡鐪�';
+            }
+            
             body += '鐢ㄦ埛鍚嶏細' + accountname;
             body += '<br/>';
             body += '浜у搧鍚嶇О/鍨嬪彿 锛�' + prname;
@@ -108,7 +122,7 @@
             body += '鎿嶄綔鎷呭綋锛�' + UserInfo.getName();
             body += '<br/>';
             body += '<br/>';
-            body += '閾炬帴锛�' + baseUrl + '/' + link.LinkedEntityId +' ';
+            body += '閾炬帴锛�' + baseUrl + '/' + linkedEntityId +' ';
             //鏀朵欢閭
             List<String> toMailList = new List<String>();
             String uId = UserInfo.getUserId();
@@ -133,4 +147,5 @@
         }
         Messaging.SendEmailResult[] results = messaging.sendEmail(sendMails);
     }
+    // 20231103 闄堜含姝� Lightning鏂囦欢淇敼 End
 }
\ No newline at end of file

--
Gitblit v1.9.1