From 0a3f9325599467015aecc4af7543dd10fe70ec56 Mon Sep 17 00:00:00 2001
From: yumenghui <953181891@qq.com>
Date: 星期五, 04 八月 2023 14:14:28 +0800
Subject: [PATCH] 附件修改

---
 force-app/main/default/pages/ReceivingNoteQR.page |   58 ++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 44 insertions(+), 14 deletions(-)

diff --git a/force-app/main/default/pages/ReceivingNoteQR.page b/force-app/main/default/pages/ReceivingNoteQR.page
index 6980fa8..dd1b059 100644
--- a/force-app/main/default/pages/ReceivingNoteQR.page
+++ b/force-app/main/default/pages/ReceivingNoteQR.page
@@ -13,29 +13,59 @@
 
             sforce.connection.sessionId = '{!GETSESSIONID()}';
             //20210312 you WLIG-BV8CHF start
-            var record = sforce.connection.query("select id from Attachment where ParentId = \'{!ReceivingNote__c.Id}\' and name = \'QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}\'");
+            // var record = sforce.connection.query("select id from Attachment where ParentId = \'{!ReceivingNote__c.Id}\' and name = \'QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}\'");
+            var record = sforce.connection.query("select Id,ContentDocumentId from ContentDocumentLink where LinkedEntityId = \'{!ReceivingNote__c.Id}\'");
+            if(record.size > 0){
+                var records = record.getArray("records");
+                var idList = records.map(obj => "'" + obj.ContentDocumentId + "'").join(",");
+                record = sforce.connection.query("select Id from ContentDocument where Id in (" + idList + ") and Title = \'QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}\'");
+            }   
             //20210312 you WLIG-BV8CHF end
             // 涓嶅瓨鍦╭r鏂囦欢鏃讹紝鏂扮敓鎴愪竴涓紝骞惰繛鍒版竻鍗曚笂
             if (record.size == 0) {
-                var atta = new sforce.SObject("Attachment");
-                //20210312 you WLIG-BV8CHF start
-                atta.Name = "QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}";
-                //20210312 you WLIG-BV8CHF end
-                atta.ParentId = "{!ReceivingNote__c.Id}";
-                atta.Body = src;
-                var result = sforce.connection.create([atta]);
+                var version = new sforce.SObject("ContentVersion");
+                version.VersionData = src;
+                version.Title = "QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}";
+                version.ContentLocation = 's';
+                version.PathOnClient= "QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}.jpg";
+                var versionResult = sforce.connection.create([version]);
+                record = sforce.connection.query("SELECT ContentDocumentId FROM ContentVersion WHERE Id =\'" + versionResult[0].id + "\'");
+                var records = record.getArray("records");
+                var link = new sforce.SObject("ContentDocumentLink");
+                link.ContentDocumentId = records[0].ContentDocumentId;
+                link.LinkedEntityId = "{!ReceivingNote__c.Id}";
+                link.ShareType = 'I';
+                link.Visibility = 'AllUsers';
+                var result = sforce.connection.create([link]);
+
+
+
+                // var atta = new sforce.SObject("Attachment");
+                // //20210312 you WLIG-BV8CHF start
+                // atta.Name = "QRCode-{!ReceivingNote__c.ReceivingNoteNo_New__c}";
+                // //20210312 you WLIG-BV8CHF end
+                // atta.ParentId = "{!ReceivingNote__c.Id}";
+                // atta.Body = src;
+                // var result = sforce.connection.create([atta]);
 
                 var es = new sforce.SObject("ReceivingNote__c");
                 es.Id = "{!ReceivingNote__c.Id}";
-                es.QRId__c = result[0].id;
+                es.QRId__c = versionResult[0].id;
                 result = sforce.connection.update([es]);
-            // 瀛樺湪qr鏃讹紝缁戝埌娓呭崟涓�
+            
             } else {
                 var records = record.getArray("records");
-                var es = new sforce.SObject("ReceivingNote__c");
-                es.Id = "{!ReceivingNote__c.Id}";
-                es.QRId__c = records[0].Id;
-                result = sforce.connection.update([es]);
+                var version = new sforce.SObject("ContentVersion");
+                version = sforce.connection.query("select Id,ContentDocumentId from ContentVersion where ContentDocumentId = \'" + records[0].id + "\'");
+                version = version.getArray("records"); 
+                // 瀛樺湪qr鏃讹紝缁戝埌娓呭崟涓�
+                if(version[0].Id != "{!ReceivingNote__c.QRId__c}"){
+                    var es = new sforce.SObject("ReceivingNote__c");
+                    es.Id = "{!ReceivingNote__c.Id}";
+                    es.QRId__c = version[0].id;
+                    result = sforce.connection.update([es]);
+                }
+                
             }
         }
 

--
Gitblit v1.9.1