| | |
| | | * 客户同步 在SP、GI主担当变化时更新询价权限 |
| | | */ |
| | | trigger AccountTrigger on Account (after insert, after update, before delete, before insert, before update, after delete ) { |
| | | if (StaticParameter.EscapeAccountTrigger) { |
| | | System.debug('Escape、EscapeAccountTrigger:::::' + StaticParameter.EscapeAccountTrigger); |
| | | return; |
| | | } |
| | | |
| | | if ((Trigger.isAfter && Trigger.isInsert) || (Trigger.isAfter && Trigger.isUpdate) || (Trigger.isBefore && Trigger.isDelete)) { |
| | | // 同步到 Account2__c |
| | | AccountTrigger.syncAccount2(Trigger.new, Trigger.newMap, Trigger.old, Trigger.oldMap); |
| | |
| | | } |
| | | } |
| | | //HWAG-B4PCZ5 2018-09-19 end |
| | | if (StaticParameter.EscapeAccountTrigger) { |
| | | System.debug('Escape、EscapeAccountTrigger:::::' + StaticParameter.EscapeAccountTrigger); |
| | | return; |
| | | } |
| | | //NFM112 2021/11/10 start |
| | | List<String> IdList = new List<String>(); |
| | | for(Account account : Trigger.new){ |
| | | Account old = Trigger.oldMap.get(account.Id); |
| | | if(old.FirstParagraph__c != account.FirstParagraph__c || old.MonthlyPayment__c != account.MonthlyPayment__c){ |
| | | IdList.add(account.Id); |
| | | } |
| | | } |
| | | if(IdList.size()>0){ |
| | | for(String Id : IdList){ |
| | | BatchIF_Log__c iflog = new BatchIF_Log__c(); |
| | | iflog.Type__c = 'NFM112'; |
| | | iflog.Log__c = 'callout start\n'; |
| | | insert iflog; |
| | | //iflog = [Select Id, Name from BatchIF_Log__c where Id = :iflog.Id]; |
| | | //System.debug(Logginglevel.DEBUG, 'NFM112_' + iflog.Name + ' start'); |
| | | NFM112Controller.executeNotFuture(iflog.Id, Id); |
| | | } |
| | | } |
| | | //NFM112 2021/11/10 end |
| | | } |
| | | //add wangweipeng 2022/02/10 start |
| | | //经销商的性质发生变化,那么需要发邮件,其中一个收件人为大区助理 |
| | | //大区助理:根据此经销商所在的那个大区,来判断到底发给谁,每个大区助理都有一个人,目前是存到自定义源数据里面了 |
| | | if(Trigger.isBefore){ |
| | | //用于存放此经销商是那个大区 |
| | | Set<String> setStaff = new Set<String>(); |
| | | if(Trigger.isUpdate){ |
| | | for (Account acc : Trigger.new) { |
| | | //判断当前修改的客户是否为经销商 |
| | | if(acc.RecordTypeId == '01210000000Qem1'){ |
| | | //如果是修改经销商,那么判断此经销商的先款标识是否发生变化,如果发送变化,那么就更新一下大区 |
| | | if(acc.FirstParagraphEnd__c != Trigger.oldMap.get(acc.Id).FirstParagraphEnd__c){ |
| | | setStaff.add(acc.Salesdepartment_HP__c); |
| | | } |
| | | } |
| | | } |
| | | }else if(Trigger.isInsert){ |
| | | for (Account acc : Trigger.new) { |
| | | //判断当前新增的客户是否为经销商 |
| | | if(acc.RecordTypeId == '01210000000Qem1'){ |
| | | setStaff.add(acc.Salesdepartment_HP__c); |
| | | } |
| | | } |
| | | } |
| | | if(setStaff.size() > 0){ |
| | | //获取对应的自定义元数据 |
| | | List<FSE_Regional_Assistant_Account__mdt> usrList = [select id,MasterLabel,DeveloperName,UserName__c,UserId__c from FSE_Regional_Assistant_Account__mdt where MasterLabel in :setStaff]; |
| | | if(usrList != null && usrList.size() > 0){ |
| | | //获取大区对应的助理人的id |
| | | if(Trigger.isUpdate){ |
| | | for (Account acc : Trigger.new) { |
| | | for(FSE_Regional_Assistant_Account__mdt fraam : usrList){ |
| | | if(acc.FirstParagraphEnd__c != Trigger.oldMap.get(acc.Id).FirstParagraphEnd__c){ |
| | | if(fraam.MasterLabel == acc.Salesdepartment_HP__c){ |
| | | acc.FSE_Regional_Assistant_Account__c = fraam.UserId__c; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }else if(Trigger.isInsert){ |
| | | for (Account acc : Trigger.new) { |
| | | for(FSE_Regional_Assistant_Account__mdt fraam : usrList){ |
| | | if(fraam.MasterLabel == acc.Salesdepartment_HP__c){ |
| | | acc.FSE_Regional_Assistant_Account__c = fraam.UserId__c; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //add wangweipeng 2022/02/10 end |
| | | |
| | | // if(Trigger.isUpdate){ |
| | | // List<String> IdList = new List<String>(); |
| | | // for(Account account : Trigger.new){ |
| | | // Account old = Trigger.oldMap.get(account.Id); |
| | | // if(old.FirstParagraph__c != account.FirstParagraph__c || old.MonthlyPayment__c != account.MonthlyPayment__c){ |
| | | // IdList.add(account.Id); |
| | | // } |
| | | // } |
| | | // if(IdList.size()>0){ |
| | | // UpdateContractAimAmountHandler.sendToSAP(IdList); |
| | | // } |
| | | // } |
| | | } |