From 9b197b7fac92278fb591ea8f4942c7d5687cb5ce Mon Sep 17 00:00:00 2001
From: 李金换 <lijinhuan@prec-tech.com>
Date: 星期一, 28 三月 2022 18:01:22 +0800
Subject: [PATCH] LJPH-C8FB4P【委托】配合PBI设备覆盖率的数据准备0328
---
force-app/main/default/classes/InventorySendMailBatch.cls | 62 ++++++++++++++++---------------
1 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/force-app/main/default/classes/InventorySendMailBatch.cls b/force-app/main/default/classes/InventorySendMailBatch.cls
index 85b0129..0ab9959 100644
--- a/force-app/main/default/classes/InventorySendMailBatch.cls
+++ b/force-app/main/default/classes/InventorySendMailBatch.cls
@@ -10,26 +10,24 @@
}
global Database.QueryLocator start(Database.BatchableContext BC) {
- if (Test.isRunningTest()) {
- return Database.getQueryLocator(
- [select Id, Name, Email, Manager.Email from User where isActive = true and (ProfileId = :System.label.ProfileId_2S6
- or ProfileId = :System.label.ProfileId_2S7 or ProfileId = :System.label.ProfileId_2S8) limit 1]
- );
- } else {
- return Database.getQueryLocator(
- [select Id, Name, Email, Manager.Email from User where isActive = true and (ProfileId = :System.label.ProfileId_2S6
- or ProfileId = :System.label.ProfileId_2S7 or ProfileId = :System.label.ProfileId_2S8)]
- );
- }
-
+ return Database.getQueryLocator(
+ [SELECT (select userOrGroupId from groupMembers) FROM group WHERE name = '鏍锋湰鐩樼偣灏忕粍']
+ );
}
- global void execute(Database.BatchableContext BC, List<sObject> User) {
- List<User> UserList = User;
+ global void execute(Database.BatchableContext BC, List<group> gList) {
+ List<String> IdList = new List<String>();
+ if (gList != null && gList.size() > 0) {
+ for (Group g : gList) {
+ for (GroupMember gm : g.groupMembers) {
+ IdList.add(gm.userOrGroupId);
+ }
+ }
+ }
Date toDate = Date.today();
Integer day = Integer.valueOf(toDate.day());
- if(System.Test.isRunningTest()|| (UserList.size() > 0 && (day == 6 || day == 14))){
- sendMail(UserList);
+ if(System.Test.isRunningTest() || (IdList.size() > 0 && (day == 10 || day == 14))){
+ sendMail(IdList);
}
}
@@ -62,12 +60,13 @@
iflog.Log__c += logstr;
iflog.ErrorLog__c = Errorstr;
}
-
insert iflog;
}
- public boolean sendMail(List<User> userList) {
+ public boolean sendMail(List<String> IdList) {
boolean rs = true;
+ List<User> userList = [select Id, Name, Email, Manager.Email from User where id IN :IdList];
+ List<Messaging.SingleEmailMessage> sendMails = new List<Messaging.SingleEmailMessage>();
for(User user : userList){
String title = '';
String body = '';
@@ -85,24 +84,27 @@
toMailList.add(user.Email);
//鎶勯�佺殑閭
List<String> ccMailList = new List<String>();
- ccMailList.add(user.Manager.Email);
- List<Messaging.SingleEmailMessage> sendMails = new List<Messaging.SingleEmailMessage>();
+ if(user.Manager.Email != null){
+ ccMailList.add(user.Manager.Email);
+ }
Messaging.SingleEmailMessage messageNEW = new Messaging.SingleEmailMessage();
messageNEW.subject = title;
messageNEW.htmlBody = body;
messageNEW.setCharset('UTF-8');
messageNEW.toAddresses = toMailList;
- messageNEW.ccAddresses = ccMailList;
+ if(ccMailList.size() > 0){
+ messageNEW.ccAddresses = ccMailList;
+ }
sendMails.add(messageNEW);
-
- Messaging.SendEmailResult[] results = messaging.sendEmail(sendMails);
- for (Integer i = 0; i < results.size(); i++) {
- if (results[i].success == false) {
- system.debug('=====send mail error:' + results[i].errors[0].message);
- result = false;
- Errorstr += 'sendMail error:' + results[i].errors[0].message + '\n';
- rs = false;
- }
+ }
+ //鍦ㄥ崟涓簨鍔′腑锛屽彧鑳借皟鐢╯end鏂规硶 10 娆°��
+ Messaging.SendEmailResult[] results = messaging.sendEmail(sendMails);
+ for (Integer i = 0; i < results.size(); i++) {
+ if (results[i].success == false) {
+ system.debug('=====send mail error:' + results[i].errors[0].message);
+ result = false;
+ Errorstr += 'sendMail error:' + results[i].errors[0].message + '\n';
+ rs = false;
}
}
return rs;
--
Gitblit v1.9.1