buli
2023-07-14 e6068da47c1bef5517c9e5fdc8c726766867ad4e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
trigger ContentDocumentTrigger on ContentDocument(before delete) {
    System.debug('UserInfo.getUserId() = ' + UserInfo.getUserId());
    System.debug('System.Label.ByPassTrigger = ' + System.Label.ByPassTrigger);
    if ((!Test.isRunningTest()) && UserInfo.getUserId() == System.Label.ByPassTrigger) {
        System.debug('enter ContentDocumentTrigger but UserInfo.getUserId()==System.Label.ByPassTrigger');
        return;
    }
    System.debug('enter ContentDocumentTrigger');
    //     system.debug('Trigger.new = ' + (List<ContentDocument>) Trigger.new);
    //     system.debug('Trigger.old = ' + (List<ContentDocument>) Trigger.old);
 
    String invoiceStart = System.Label.invoiceStart;
    //     List<String> rentalIds = new List<String>();
    //     List<String> attIds = new List<String>();
    List<String> rentaldelIds = new List<String>();
    List<String> attdelIds = new List<String>();
 
    //     if (Trigger.isAfter && Trigger.isInsert) {
    //         for (ContentDocument cd : Trigger.new) {
    //             System.debug('cd.Id = ' + cd.Id);
    //             ContentDocumentLink cdl = [SELECT id, LinkedEntityId FROM ContentDocumentLink WHERE ContentDocumentId = :cd.Id];
    //             System.debug('cdl.LinkedEntityId = ' + cdl.LinkedEntityId);
    //             if (String.valueOf(cdl.LinkedEntityId).startsWith(invoiceStart)) {
    //                 rentalIds.add(cdl.LinkedEntityId);
    //                 attIds.add(cd.Id);
    //             }
    //         }
    //     }
 
    if (Trigger.isBefore && Trigger.isDelete) {
        for (ContentDocument cd : Trigger.old) {
            System.debug('cd.Id = ' + cd.Id);
            List<ContentDocumentLink> cdlList = [SELECT id, LinkedEntityId FROM ContentDocumentLink WHERE ContentDocumentId = :cd.Id];
            System.debug('cdlList = ' + cdlList);
            System.debug('cd.Id = ' + cd.Id);
            for (ContentDocumentLink cdl : cdlList) {
                if (String.valueOf(cdl.LinkedEntityId).startsWith(invoiceStart)) {
                    System.debug('String.valueOf(cdl.LinkedEntityId).startsWith(invoiceStart)');
                    rentaldelIds.add(cdl.LinkedEntityId);
                    attdelIds.add(cd.Id);
                }
            }
        }
    }
 
    //     if (rentalIds.size() > 0) {
    //         List<Consumable_order__c> rentalList = new List<Consumable_order__c>();
    //         for (Consumable_order__c ra : [SELECT Id FROM Consumable_order__c WHERE Id IN :rentalIds]) {
    //             ra.Consumable_pdf_insert_day__c = Date.today();
    //             ra.Order_Attachment__c = attIds[0];
    //             rentalList.add(ra);
    //         }
    //         ControllerUtil.updRentalApplyList(rentalList);
    //     }
 
    if (rentaldelIds.size() > 0) {
        System.debug('rentaldelIds = ' + rentaldelIds);
        System.debug('attdelIds = ' + attdelIds);
        List<Consumable_accessories_invoice__c> rentaldelList = new List<Consumable_accessories_invoice__c>();
        for (Consumable_accessories_invoice__c ra : [
            SELECT Id
            FROM Consumable_accessories_invoice__c
            WHERE Invoice_code__c IN :rentaldelIds AND Attachment_ID__c IN :attdelIds
        ]) {
            rentaldelList.add(ra);
        }
        System.debug('rentaldelList = ' + rentaldelList);
        ControllerUtil.delConsumableAccessoriesInvoiceSet(rentaldelList);
    }
}