|
@@ -307,12 +307,21 @@ public class TimingTask {
|
|
}
|
|
}
|
|
DateTimeFormatter dt = DateTimeFormatter.ofPattern("HH:mm");
|
|
DateTimeFormatter dt = DateTimeFormatter.ofPattern("HH:mm");
|
|
String str = dt.format(now);
|
|
String str = dt.format(now);
|
|
|
|
+ String date = DateTimeFormatter.ofPattern("yyyy-MM-dd").format(localDate);
|
|
List<TimeType> typeList = timeTypeMapper.selectList(new QueryWrapper<TimeType>().isNotNull("alert_time")
|
|
List<TimeType> typeList = timeTypeMapper.selectList(new QueryWrapper<TimeType>().isNotNull("alert_time")
|
|
.ge("alert_time", str));
|
|
.ge("alert_time", str));
|
|
typeList.forEach(t->{
|
|
typeList.forEach(t->{
|
|
if (str.equals(t.getAlertTime())) {
|
|
if (str.equals(t.getAlertTime())) {
|
|
//发送推送提醒
|
|
//发送推送提醒
|
|
- List<Map<String, Object>> userList = userMapper.getPushUserList(t.getCompanyId(),t.getAlertType());
|
|
|
|
|
|
+ Company company = companyMapper.selectById(t.getCompanyId());
|
|
|
|
+ //开通了OA功能,有请假模块的,需要把当前请假的排除掉
|
|
|
|
+ List<Map<String, Object>> userList = null;
|
|
|
|
+ if (company.getPackageOa() == 1) {
|
|
|
|
+ userList = userMapper.getPushUserList(t.getCompanyId(),t.getAlertType(), date);
|
|
|
|
+ } else {
|
|
|
|
+ userList = userMapper.getPushUserList(t.getCompanyId(),t.getAlertType(), null);
|
|
|
|
+ }
|
|
|
|
+
|
|
List<WxCorpInfo> cpList = wxCorpInfoMapper.selectList(new QueryWrapper<WxCorpInfo>().eq("company_id", t.getCompanyId()));
|
|
List<WxCorpInfo> cpList = wxCorpInfoMapper.selectList(new QueryWrapper<WxCorpInfo>().eq("company_id", t.getCompanyId()));
|
|
userList.forEach(u->{
|
|
userList.forEach(u->{
|
|
if (u.get("corpwxUserid") != null){
|
|
if (u.get("corpwxUserid") != null){
|
|
@@ -337,7 +346,7 @@ public class TimingTask {
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
- List<Map<String, Object>> dingdingUserList = userMapper.getPushDingdingUserList(str);
|
|
|
|
|
|
+ List<Map<String, Object>> dingdingUserList = userMapper.getPushDingdingUserList(str, date);
|
|
//钉钉平台的用批量发送, 每分钟5000个
|
|
//钉钉平台的用批量发送, 每分钟5000个
|
|
int minuteSize = 5000;
|
|
int minuteSize = 5000;
|
|
int minuteTimes = dingdingUserList.size()/minuteSize + (dingdingUserList.size()%minuteSize==0?0:1);
|
|
int minuteTimes = dingdingUserList.size()/minuteSize + (dingdingUserList.size()%minuteSize==0?0:1);
|