From 2c3d6d192684544c38df54ebb304ddab127c2c53 Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 26 五月 2023 16:41:19 +0800
Subject: [PATCH] backup signoff
---
force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls | 56 +++++++++++++++++++++++++++++++++++---------------------
1 files changed, 35 insertions(+), 21 deletions(-)
diff --git a/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls b/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls
index 711e8c0..b2fccf3 100644
--- a/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls
+++ b/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls
@@ -1,34 +1,34 @@
global without sharing class SyncProvinceWIndowToSignForm implements Database.Batchable<sObject>, Database.Stateful {
private Set<String> changedWindowProvince { get; set; }
-
- global SyncProvinceWIndowToSignForm(Set<String> changedWindowProvince) {
- this.changedWindowProvince = changedWindowProvince;
- }
-
- global Database.QueryLocator start(Database.BatchableContext BC) {
- String query = 'select Sales_assistant_name_text__c,isProcessed__c,OCM_man_province_cus__c from eSignForm__c ';
- if (changedWindowProvince != null && changedWindowProvince.size() > 0) {
- if (!Test.isRunningTest()) {
- query += ' where isProcessed__c = false and Group_purchase_PCL__c = false and OCM_man_province_cus__c = :changedWindowProvince ';
- }
- system.debug('SOQL:' + query);
- return Database.getQueryLocator(query);
- }
- return null;
- }
+ private final string JCKStr ='闆嗛噰璇�';
private static Map<String,OCM_Management_Province__c> provinceManagementMap{set;get;}
public static Map<String,OCM_Management_Province__c> getManagementProvince(){
if(provinceManagementMap !=null && provinceManagementMap.keySet().size()>0 ){
return provinceManagementMap;
}
provinceManagementMap = new Map<String,OCM_Management_Province__c>();
- List <OCM_Management_Province__c > ompList = [select id, Name, SalesManage__c,GI_assistant__c,Window1__c from OCM_Management_Province__c];
+ List <OCM_Management_Province__c > ompList = [select id, Name, SalesManage__c,GI_assistant__c,SP_assistant__c from OCM_Management_Province__c];
for (OCM_Management_Province__c omp: ompList) {
provinceManagementMap.put(omp.Name,omp);
}
return provinceManagementMap;
}
+ global SyncProvinceWIndowToSignForm(Set<String> changedWindowProvince) {
+ this.changedWindowProvince = changedWindowProvince;
+ }
+
+ global Database.QueryLocator start(Database.BatchableContext BC) {
+ String query = 'select Sales_assistant_name_text__c,isProcessed__c,OCM_man_province_cus__c,Statu_Achievements__r.Opportunity__r.Opportunity_Category__c,Group_purchase_PCL__c from eSignForm__c ';
+ if (changedWindowProvince != null && changedWindowProvince.size() > 0) {
+ if (!Test.isRunningTest()) {
+ query += ' where isProcessed__c = false and (OCM_man_province_cus__c = :changedWindowProvince or Group_purchase_PCL__c = true)';
+ }
+ system.debug('SOQL:' + query);
+ return Database.getQueryLocator(query);
+ }
+ return null;
+ }
global void execute(Database.BatchableContext BC, List<eSignForm__c> signFormList) {
system.debug('sign form list size:' + signFormList.size());
// 鍙栧緱OCM绠$悊鐪佷俊鎭�
@@ -37,10 +37,24 @@
List<eSignForm__c> updList = new List<eSignForm__c>();
if (signFormList != null && signFormList.size() > 0) {
for (eSignForm__c temp : signFormList) {
- String provinceName = Test.isRunningTest() ? '鍖椾含甯�' : temp.OCM_man_province_cus__c;
- if (provinceName != '' && provinceMap.containsKey(provinceName) && provinceMap.get(provinceName).Window1__c != null) {
- temp.Sales_assistant_name_text__c = provinceMap.get(provinceName).Window1__c;
- updList.add(temp);
+ String oppType = String.isBlank(temp.Statu_Achievements__r.Opportunity__r.Opportunity_Category__c)?'':temp.Statu_Achievements__r.Opportunity__r.Opportunity_Category__c;
+ system.debug('Opportunity Type:'+ oppType);
+ String provinceName = Test.isRunningTest() ? '鍖椾含甯�' : (temp.Group_purchase_PCL__c?JCKStr:temp.OCM_man_province_cus__c);
+ Boolean userGIId =(oppType == 'GI' || oppType == 'BF' || oppType == 'ET')?true:false;
+ if(provinceName != ''&& provinceMap.containsKey(provinceName)){
+ String GIId = provinceMap.get(provinceName).GI_assistant__c!=null?provinceMap.get(provinceName).GI_assistant__c:'';
+ STring SPId = provinceMap.get(provinceName).SP_assistant__c!=null?provinceMap.get(provinceName).SP_assistant__c:'';
+ Boolean updateGIId = (userGIId && GIId!='' && temp.Sales_assistant_name_text__c != GIId) ? true:false;
+ Boolean updateSPId = ((!userGIId) && SPId!='' && temp.Sales_assistant_name_text__c!=SPId)? true:false;
+ if(updateGIId) {
+ temp.Sales_assistant_name_text__c = provinceMap.get(provinceName).GI_assistant__c;
+ }
+ if(updateSPId){
+ temp.Sales_assistant_name_text__c = provinceMap.get(provinceName).SP_assistant__c;
+ }
+ if(updateGIId || updateSPId){
+ updList.add(temp);
+ }
}
}
// 绛炬敹鍗曟洿鏂�
--
Gitblit v1.9.1