| trigger DiscountProductApplicationApprove on DiscountProductApplication__c(before insert, after insert,before update,after update) { | 
|   | 
|     if (Trigger.isBefore) { | 
|         //存放ocsm管理省 | 
|         List < String > provinceList = new List < String > (); | 
|         Map < String, String > provinceOwnerMap = new Map < String, String > (); | 
|         for (DiscountProductApplication__c local : Trigger.New) { | 
|             provinceList.add(local.OCSM_province__c); | 
|         } | 
|         //检索OCSM管理省对象 | 
|         List < OCM_Management_Province__c > ompList = [select id, Name, Consum_assistant4__c from OCM_Management_Province__c where Name IN: provinceList]; | 
|         //存放map<省,担当> | 
|         for (OCM_Management_Province__c omp: ompList) { | 
|             provinceOwnerMap.put(omp.Name, omp.Consum_assistant4__c); | 
|         } | 
|         DiscountProductApplication__c old = null; | 
|         for (DiscountProductApplication__c local : Trigger.New) { | 
|             if (Trigger.isUpdate) { | 
|                 old = Trigger.oldMap.get(local.Id); | 
|             } | 
|             // 审批人設定 | 
|             if ((Trigger.isInsert | 
|                 || old.ApplicationStatus__c != local.ApplicationStatus__c) | 
|                  && local.ApplicationStatus__c == '申请中' && local.RecordType_DeveloperName__c == 'ProductDiscount' | 
|             ){ | 
|                 local.AP_Manager__c = provinceOwnerMap.get(local.OCSM_province__c); | 
|             } | 
|         } | 
|     } | 
|   | 
|     DiscountProductApplicationApproveHandler handler = new DiscountProductApplicationApproveHandler(); | 
|     handler.run(); | 
| } |