@ -9,8 +9,10 @@ import cn.iocoder.yudao.module.system.api.social.SocialClientApi;
import cn.iocoder.yudao.module.system.api.social.dto.SocialWxaSubscribeMessageSendReqDTO ;
import cn.iocoder.yudao.module.system.controller.admin.taskinfo.vo.TaskInfoRespVO ;
import cn.iocoder.yudao.module.system.dal.dataobject.enterpriseinspections.EnterpriseInspectionsDO ;
import cn.iocoder.yudao.module.system.dal.dataobject.taskinfo.TaskInfoDO ;
import cn.iocoder.yudao.module.system.dal.mysql.enterprise.EnterpriseMapper ;
import cn.iocoder.yudao.module.system.dal.mysql.enterpriseinspections.EnterpriseInspectionsMapper ;
import cn.iocoder.yudao.module.system.dal.mysql.taskinfo.TaskInfoMapper ;
import cn.iocoder.yudao.module.system.service.taskinfo.TaskInfoService ;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper ;
import lombok.extern.slf4j.Slf4j ;
@ -18,6 +20,7 @@ import org.redisson.executor.TasksService;
import org.springframework.stereotype.Component ;
import javax.annotation.Resource ;
import java.util.ArrayList ;
import java.util.HashMap ;
import java.util.List ;
import java.util.Map ;
@ -35,6 +38,8 @@ public class TaskSendStartMessageJob implements JobHandler {
EnterpriseInspectionsMapper enterpriseInspectionsMapper ;
@Resource
NotifyMessageSendApi notifyMessageSendApi ;
@Resource
TaskInfoMapper taskInfoMapper ;
@Override
public String execute ( String param ) throws Exception {
@ -58,31 +63,43 @@ public class TaskSendStartMessageJob implements JobHandler {
message . put ( "time5" , DateUtil . format ( beforeTaskInfo . getEndDate ( ) . atStartOfDay ( ) , DateUtils . FORMAT_YEAR_MONTH_DAY ) ) ;
reqDTO . setMessages ( message ) ;
socialClientApi . sendWxaSubscribeMessage ( reqDTO ) ;
}
catch ( Exception e ) {
log . error ( "任务发送通知错误:" , e . toString ( ) ) ;
}
//修改任务状态
final TaskInfoDO taskInfoDO = taskInfoMapper . selectById ( beforeTaskInfo . getId ( ) ) ;
taskInfoDO . setStatus ( 2 ) ;
taskInfoMapper . updateById ( taskInfoDO ) ;
//执法任务更改状态
LambdaQueryWrapper < EnterpriseInspectionsDO > wrapper = new LambdaQueryWrapper < > ( ) ;
wrapper . eq ( EnterpriseInspectionsDO : : getTaskId , x . getId ( ) ) ;
List < EnterpriseInspectionsDO > enterpriseInspectionsDOList = enterpriseInspectionsMapper . selectList ( wrapper ) ;
if ( enterpriseInspectionsDOList ! = null & & enterpriseInspectionsDOList . size ( ) > 0 ) {
List < EnterpriseInspectionsDO > list = new ArrayList < > ( ) ;
for ( EnterpriseInspectionsDO enterpriseInspectionsDO : enterpriseInspectionsDOList ) {
//站内信发送通知
NotifySendSingleToUserReqDTO notifyMessage = new NotifySendSingleToUserReqDTO ( ) ;
notifyMessage . setUserId ( Long . valueOf ( enterpriseInspectionsDO . getUserId ( ) ) ) ;
notifyMessage . setTemplateCode ( "task_messages" ) ;
Map < String , Object > templateParams = new HashMap < > ( ) ;
templateParams . put ( "title" , beforeTaskInfo . getTitle ( ) ) ;
templateParams . put ( "startTime" , beforeTaskInfo . getStartDate ( ) ) ;
notifyMessage . setTemplateParams ( templateParams ) ;
notifyMessageSendApi . sendSingleMessageToAdmin ( notifyMessage ) ;
enterpriseInspectionsDO . setStatus ( 2 ) ;
list . add ( enterpriseInspectionsDO ) ;
}
enterpriseInspectionsMapper . updateBatch ( list ) ;
}
}
//执法任务更改状态
LambdaQueryWrapper < EnterpriseInspectionsDO > wrapper = new LambdaQueryWrapper < > ( ) ;
wrapper . eq ( EnterpriseInspectionsDO : : getTaskId , x . getId ( ) ) ;
List < EnterpriseInspectionsDO > enterpriseInspectionsDOList = enterpriseInspectionsMapper . selectList ( wrapper ) ;
if ( enterpriseInspectionsDOList ! = null & & enterpriseInspectionsDOList . size ( ) > 0 ) {
for ( EnterpriseInspectionsDO enterpriseInspectionsDO : enterpriseInspectionsDOList ) {
//站内信发送通知
NotifySendSingleToUserReqDTO notifyMessage = new NotifySendSingleToUserReqDTO ( ) ;
notifyMessage . setUserId ( Long . valueOf ( enterpriseInspectionsDO . getUserId ( ) ) ) ;
notifyMessage . setTemplateCode ( "task_messages" ) ;
Map < String , Object > templateParams = new HashMap < > ( ) ;
templateParams . put ( "title" , beforeTaskInfo . getTitle ( ) ) ;
templateParams . put ( "startTime" , beforeTaskInfo . getStartDate ( ) ) ;
notifyMessage . setTemplateParams ( templateParams ) ;
notifyMessageSendApi . sendSingleMessageToAdmin ( notifyMessage ) ;
enterpriseInspectionsDO . setStatus ( 2 ) ;
}
}
enterpriseInspectionsMapper . updateBatch ( enterpriseInspectionsDOList ) ;
} ) ;
} ) ;
return "发送消息任务数量:" + beforeTaskInfoList . size ( ) ;