From bdb1a98b64a2cf59bcfd575c579aa0742e0de954 Mon Sep 17 00:00:00 2001
From: chenjingwu <chenjingwu@prec-tech.com>
Date: 星期五, 24 五月 2024 17:21:32 +0800
Subject: [PATCH] 1
---
force-app/main/default/pages/AssetQR.page | 63 +++++++++++++++++++++++--------
1 files changed, 46 insertions(+), 17 deletions(-)
diff --git a/force-app/main/default/pages/AssetQR.page b/force-app/main/default/pages/AssetQR.page
index 68ebdb5..ca6c362 100644
--- a/force-app/main/default/pages/AssetQR.page
+++ b/force-app/main/default/pages/AssetQR.page
@@ -10,35 +10,64 @@
var img = div.getElementsByTagName("img");
var src = img[0].src;
src = src.substring(22, src.length);
-
sforce.connection.sessionId = '{!GETSESSIONID()}';
-
- var record = sforce.connection.query("select id from Attachment where ParentId = \'{!Asset.Id}\' and name = \'QRCode\'");
-
+ // var record = sforce.connection.query("select id from Attachment where ParentId = \'{!Asset.Id}\' and name = \'QRCode\'");
+ var record = sforce.connection.query("SELECT ContentDocumentId from ContentDocumentLink where LinkedEntityId =\'{!Asset.Id}\'");
+ var records;
+ if(record.size > 0){
+ records = record.getArray("records");
+ var idList = records.map(obj => "'" + obj.ContentDocumentId + "'").join(",");
+ record = sforce.connection.query("SELECT Id,Title, OwnerId, ContentModifiedDate FROM ContentDocument WHERE Id IN (" + idList + ") AND Title = 'QRCode'");
+ }
// 鏃€伀銇傘倢銇扮劇瑕�
if (record.size == 0) {
- var atta = new sforce.SObject("Attachment");
- atta.Name = "QRCode";
- atta.ParentId = "{!Asset.Id}";
- atta.Body = src;
- var result = sforce.connection.create([atta]);
+ // var atta = new sforce.SObject("Attachment");
+ // atta.Name = "QRCode";
+ // atta.ParentId = "{!Asset.Id}";
+ // atta.Body = src;
+ // var result = sforce.connection.create([atta]);
+ var version = new sforce.SObject("ContentVersion");
+ version.VersionData = src;
+ version.Title = "QRCode";
+ version.ContentLocation= 's';
+ version.PathOnClient="QRCode.jpg";
+ var versionResult = sforce.connection.create([version]);
+ record = sforce.connection.query("SELECT ContentDocumentId FROM ContentVersion WHERE Id =\'" + versionResult[0].id + "\'");
+ records = record.getArray("records");
+ var link = new sforce.SObject("ContentDocumentLink");
+ link.ContentDocumentId = records[0].ContentDocumentId;
+ link.LinkedEntityId = "{!Asset.Id}";
+ link.ShareType = 'I';
+ link.Visibility = 'AllUsers';
+ var result = sforce.connection.create([link]);
+
var es = new sforce.SObject("Asset");
es.Id = "{!Asset.Id}";
- es.QRId__c = result[0].id;
+ es.QRId__c = versionResult[0].id;
es.Fixture_QRCode_Text__c = "{!Asset.Fixture_QRCode__c}";
result = sforce.connection.update([es]);
} else if ("{!Asset.QRId__c}" == null || "{!Asset.QRId__c}" == '' || "{!Asset.Fixture_QRCode__c}" != "{!Asset.Fixture_QRCode_Text__c}"){
- var records = record.getArray("records");
- var atta = new sforce.SObject("Attachment");
- atta.Name = "QRCode";
- atta.Body = src;
- atta.Id = records[0].Id;
- var result = sforce.connection.update([atta]);
+ // var records = record.getArray("records");
+ // var version =
+ // var atta = new sforce.SObject("Attachment");
+ // atta.Name = "QRCode";
+ // atta.Body = src;
+ // atta.Id = records[0].Id;
+ // var result = sforce.connection.update([atta]);
+
+ var result = sforce.connection.query("SELECT Id from ContentDocumentLink where ContentDocumentId = \'" + records[0].ContentDocumentId + "\'");
+ var version = sforce.connection.query("SELECT Id from ContentVersion where ContentDocumentId = \'" + records[0].ContentDocumentId + "\'");
+ var versions = version.getArray("records");
+ var atta = new sforce.SObject("ContentVersion");
+ atta.VersionData = src;
+ atta.Id = versions[0].Id;
+ version = sforce.connection.update([atta]);
+ records = result.getArray("records");
var es = new sforce.SObject("Asset");
es.Id = "{!Asset.Id}";
- es.QRId__c = result[0].id;
+ es.QRId__c = atta.Id;
es.Fixture_QRCode_Text__c = "{!Asset.Fixture_QRCode__c}";
result = sforce.connection.update([es]);
// TODO Name澶夈倧銈嬪彲鑳芥�с亗銈娿�乽psert銇仐銇俱仚
--
Gitblit v1.9.1