高章伟
2023-03-03 d8dc84a3d56df839895f1c417a4d9cbee763d262
force-app/main/default/triggers/SyncOpportunity.trigger
@@ -1,4 +1,9 @@
trigger SyncOpportunity on Opportunity (after delete, after insert, after update) {
    // SWAG-CE55BX 预测优化 start
    if (StaticParameter.EscapeOppandStaTrigger) {
        return;
    }
    // SWAG-CE55BX 预测优化 end
    if (StaticParameter.EscapeSyncOpportunityTrigger) {
System.debug('Escape、EscapeSyncOpportunityTrigger:::::' + StaticParameter.EscapeSyncOpportunityTrigger);
        return;
@@ -18,20 +23,22 @@
        for (Opportunity opp : Trigger.new) {
            // 古いデータの更新を禁止
            if (Trigger.isUpdate) {
                Boolean noChange = false;
                //20221229 lt DB202211430986 询价历史不使用字段
                // Boolean noChange = false;
                Opportunity oldOpp = (Opportunity) Trigger.oldMap.get(opp.Id);
                for (String colApiName : ControllerUtil.oppColumnList) {
                    colApiName = colApiName.trim();
                    if (opp.oldData_flg__c &&
                            Trigger.oldMap.get(opp.Id).get(colApiName) != Trigger.newMap.get(opp.Id).get(colApiName)) {
                        noChange = true;
                        break;
                    }
                }
                if (noChange) {
                    opp.addError('不能修改旧数据');
                    continue;
                }
                // for (String colApiName : ControllerUtil.oppColumnList) {
                //     colApiName = colApiName.trim();
                //     if (opp.oldData_flg__c &&
                //             Trigger.oldMap.get(opp.Id).get(colApiName) != Trigger.newMap.get(opp.Id).get(colApiName)) {
                //         noChange = true;
                //         break;
                //     }
                // }
                // if (noChange) {
                //     opp.addError('不能修改旧数据');
                //     continue;
                // }
                //20221229 lt DB202211430986 询价历史不使用字段
                // 更新だけど、Opportunity2__c の同期対象になるか?
                if (oldOpp.OwnerId == opp.OwnerId
                        && oldOpp.State_Text__c == opp.State_Text__c