高章伟
2022-02-18 8b5f4c6c281cfa548f92de52c8021e37aa81901e
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
trigger SyncMBOpportunityLineItem on OpportunityLineItem (after insert, before delete) {
/*    // MB_目标产品插入用
    List<MB_TargetLineItem__c> ins_tlis = new List<MB_TargetLineItem__c>();
    // MB_目标产品删除用
    List<String> del_parentTliIds = new List<String>();
    // MB_询价产品插入用
    List<MB_OpportunityLineItem__c> ins_olis = new List<MB_OpportunityLineItem__c>();
    // MB_询价产品删除用
    List<String> del_parentOliIds = new List<String>();
    
    if (Trigger.isInsert) {
        for (OpportunityLineItem oppli : Trigger.new) {
            if (oppli.RecordType_Name__c == 'Target') {
                // 目标
                MB_TargetLineItem__c mboppli = new MB_TargetLineItem__c(
                      OpportunityLineItemId__c = oppli.Id
                    , Opportunity__c = oppli.OpportunityId
                    , CurrencyIsoCode = oppli.CurrencyIsoCode
                    , Product2__c = oppli.Product2Id__c
                    , NumberOfObjective_146P__c = oppli.NumberOfObjective__c
                    , Objective_146P__c = oppli.Objective__c
                    , BSS_Category__c = oppli.BSS_Category__c
                    , ITEM_Code__c = oppli.ProductCode__c
                    , List_price__c = oppli.ListPrice__c
                    , UnitPrice__c = oppli.UnitPrice__c
                    , Qty__c = oppli.Quantity
// CIC 125725 start
//                    , OwnerId = oppli.Owner_ID__c
                    , State_Text__c = oppli.State__c      // Owner.Province_address__c
                    , Opp_OCM_text__c = oppli.OCM_category__c
                    , Opportunity_Category_text__c = oppli.Opportunity_Category__c
                    , Distributor_InCharge_opp__c = oppli.Distributor_InCharge_opp__c
// CIC 125725 end
                );
                ins_tlis.add(mboppli);
            }
            // 引合 と 目標 両方
            {
                MB_OpportunityLineItem__c mboppli = new MB_OpportunityLineItem__c(
                      OpportunityLineItemId__c = oppli.Id
                    , Opportunity__c = oppli.OpportunityId
                    , CurrencyIsoCode = oppli.CurrencyIsoCode
                    , Product2__c = oppli.Product2Id__c
                    , NumberOfObjective_146P__c = oppli.NumberOfObjective__c
                    , Objective_146P__c = oppli.Objective__c
                    , BSS_Category__c = oppli.BSS_Category__c
                    , ITEM_Code__c = oppli.ProductCode__c
                    , List_price__c = oppli.ListPrice__c
                    , UnitPrice__c = oppli.UnitPrice__c
                    , Qty__c = oppli.Quantity
                    , OCM_Sales_Forecast__c = oppli.OCM_Sales_Forecast__c
// CIC 125725 start
//                    , OwnerId = oppli.Owner_ID__c
                    , State_Text__c = oppli.SaleProvince_SAP__c
                    , Opp_OCM_text__c = oppli.OCM_category__c
                    , Opportunity_Category_text__c = oppli.Opportunity_Category__c
                    , Distributor_InCharge_opp__c = oppli.Distributor_InCharge_opp__c
                    , Group_purchase_PCL__c = oppli.Group_purchase_PCL__c
// CIC 125725 end
                );
                if (oppli.RecordType_Name__c == 'Target') {
                    mboppli.State_Text__c = oppli.State__c;
                }
                ins_olis.add(mboppli);
            }
        }
    } else if (Trigger.isDelete) {
        for (OpportunityLineItem oppli : Trigger.old) {
            if (oppli.RecordType_Name__c == 'Target') {
                // 目标
                del_parentTliIds.add(oppli.Id);
            }
            // 引合 と 目標 両方
            {
                // 询价 引合
                del_parentOliIds.add(oppli.Id);
            }
        }
    }
    if (del_parentTliIds.size() > 0) {
        ControllerUtil.delMBTgtLineItemList(del_parentTliIds);
    }
    if (ins_tlis.size() > 0) {
        ControllerUtil.insMBTgtLineItemList(ins_tlis);
    }
    if (del_parentOliIds.size() > 0) {
        ControllerUtil.delMBOppLineItemList(del_parentOliIds);
    }
    if (ins_olis.size() > 0) {
        ControllerUtil.insMBOppLineItemList(ins_olis);
    }*/
}