| | |
| | | package com.panzhihua.timejob.jobhandler; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.util.ObjectUtils; |
| | | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.panzhihua.common.model.dtos.community.integral.admin.AddComActIntegralUserDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.integral.admin.ComActActivityPeopleVO; |
| | | import com.panzhihua.common.model.vos.partybuilding.PartyBuildingActivityVO; |
| | | import com.panzhihua.common.model.vos.user.SysUserNoticeVO; |
| | | import com.panzhihua.common.service.community.CommunityService; |
| | | import com.panzhihua.common.service.partybuilding.PartyBuildingService; |
| | | import com.panzhihua.common.service.user.UserService; |
| | | import com.xxl.job.core.biz.model.ReturnT; |
| | | import com.xxl.job.core.handler.annotation.XxlJob; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.util.ObjectUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | /** |
| | | * @program: springcloud_k8s_panzhihuazhihuishequ |
| | |
| | | private PartyBuildingService partyBuildingService; |
| | | @Resource |
| | | private UserService userService; |
| | | @Resource |
| | | private CommunityService communityService; |
| | | |
| | | /** |
| | | * 定时任务刷新党建动态发布状态 |
| | | * |
| | | * @return 刷新个数 |
| | | * @throws Exception 出现的异常 |
| | | * @throws Exception |
| | | * 出现的异常 |
| | | */ |
| | | @XxlJob("timedtaskpartybuildingstatusJobHandler") |
| | | public ReturnT<String> timedtaskpartybuildingstatusJobHandler(String param) throws Exception { |
| | | log.info("定时任务刷新党建动态发布状态"); |
| | | R r=partyBuildingService.timedTaskPartyBuildingStatus(); |
| | | return new ReturnT(r.getData()); |
| | | R r = partyBuildingService.timedTaskPartyBuildingStatus(); |
| | | log.info("执行结果【{}】", r.toString()); |
| | | return ReturnT.SUCCESS; |
| | | } |
| | | |
| | | /** |
| | | * 定时任务取消党建活动 |
| | | * |
| | | * @return 取消个数 |
| | | * @throws Exception 出现的异常 |
| | | * @throws Exception |
| | | * 出现的异常 |
| | | */ |
| | | @XxlJob("timedTaskPartyBuildingActivityJobHandler") |
| | | public ReturnT<String> timedTaskPartyBuildingActivityJobHandler(String param) throws Exception { |
| | | log.info("定时任务取消党建活动"); |
| | | R r=partyBuildingService.timedTaskPartyBuildingActivity(); |
| | | R r = partyBuildingService.timedTaskPartyBuildingActivity(); |
| | | if (R.isOk(r)) { |
| | | Object data = r.getData(); |
| | | List<PartyBuildingActivityVO> partyBuildingActivityVOS= JSONArray.parseArray(JSONArray.toJSONString(data),PartyBuildingActivityVO.class); |
| | | if (!ObjectUtils.isEmpty(partyBuildingActivityVOS)) { |
| | | partyBuildingActivityVOS.forEach(partyBuildingActivityVO -> { |
| | | List<Long> userIds = partyBuildingActivityVO.getUserIds(); |
| | | if (!ObjectUtils.isEmpty(userIds)) { |
| | | userIds.forEach(aLong -> { |
| | | SysUserNoticeVO sysUserNoticeVO = new SysUserNoticeVO(); |
| | | sysUserNoticeVO.setUserId(aLong); |
| | | sysUserNoticeVO.setType(1); |
| | | sysUserNoticeVO.setBusinessType(2); |
| | | sysUserNoticeVO.setBusinessTitle(partyBuildingActivityVO.getName()); |
| | | sysUserNoticeVO.setBusinessTime(new Date()); |
| | | sysUserNoticeVO.setBusinessId(partyBuildingActivityVO.getId()); |
| | | sysUserNoticeVO.setStatus(0); |
| | | sysUserNoticeVO.setTitle("活动因故取消"); |
| | | sysUserNoticeVO.setBusinessContent("报名人数不足活动自动取消"); |
| | | sysUserNoticeVO.setBusinessStatus(1); |
| | | R r2 = userService.addNotice(sysUserNoticeVO); |
| | | if (R.isOk(r2)) { |
| | | log.info("新增党建活动取消通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO)); |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | if (!ObjectUtils.isEmpty(data)) { |
| | | List<PartyBuildingActivityVO> partyBuildingActivityVOS = |
| | | JSONArray.parseArray(JSONArray.toJSONString(data), PartyBuildingActivityVO.class); |
| | | if (!ObjectUtils.isEmpty(partyBuildingActivityVOS)) { |
| | | partyBuildingActivityVOS.forEach(partyBuildingActivityVO -> { |
| | | List<Long> userIds = partyBuildingActivityVO.getUserIds(); |
| | | if (!ObjectUtils.isEmpty(userIds)) { |
| | | userIds.forEach(aLong -> { |
| | | SysUserNoticeVO sysUserNoticeVO = new SysUserNoticeVO(); |
| | | sysUserNoticeVO.setUserId(aLong); |
| | | sysUserNoticeVO.setType(1); |
| | | sysUserNoticeVO.setBusinessType(2); |
| | | sysUserNoticeVO.setBusinessTitle(partyBuildingActivityVO.getName()); |
| | | sysUserNoticeVO.setBusinessTime(new Date()); |
| | | sysUserNoticeVO.setBusinessId(partyBuildingActivityVO.getId()); |
| | | sysUserNoticeVO.setStatus(0); |
| | | sysUserNoticeVO.setTitle("活动因故取消"); |
| | | sysUserNoticeVO.setBusinessContent("报名人数不足活动自动取消"); |
| | | sysUserNoticeVO.setBusinessStatus(1); |
| | | R r2 = userService.addNotice(sysUserNoticeVO); |
| | | if (R.isOk(r2)) { |
| | | log.info("新增党建活动取消通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO)); |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | return new ReturnT(r.getData()); |
| | | |
| | | log.info("执行结果【{}】", r.toString()); |
| | | return ReturnT.SUCCESS; |
| | | } |
| | | |
| | | /** |
| | | * 定时任务刷新党建活动的各个状态 除取消外 |
| | | * |
| | | * @return 刷新个数 |
| | | * @throws Exception 出现的异常 |
| | | * @throws Exception |
| | | * 出现的异常 |
| | | */ |
| | | @XxlJob("timedTaskPartyBuildingActivityAllJobHandler") |
| | | public ReturnT<String> timedTaskPartyBuildingActivityAllJobHandler(String param) throws Exception { |
| | | log.info("定时任务刷新党建活动的各个状态 除取消外"); |
| | | R r=partyBuildingService.timedTaskPartyBuildingActivityAll(); |
| | | return new ReturnT(r.getData()); |
| | | R r = partyBuildingService.timedTaskPartyBuildingActivityAll(); |
| | | if (R.isOk(r)) { |
| | | // 获取待结束的活动列表 |
| | | List<Long> activityList = JSONArray.parseArray(JSONArray.toJSONString(r.getData()), Long.class); |
| | | if (!activityList.isEmpty()) { |
| | | log.info("党员活动结束计算积分"); |
| | | activityList.forEach(activityId -> { |
| | | R r1 = partyBuildingService.getTaskPbActivityPeopleList(activityId); |
| | | if (R.isOk(r1)) { |
| | | List<ComActActivityPeopleVO> peopleList = |
| | | JSONArray.parseArray(JSONArray.toJSONString(r1.getData()), ComActActivityPeopleVO.class); |
| | | if (!peopleList.isEmpty()) { |
| | | peopleList.forEach(people -> { |
| | | communityService.addIntegralTradeAdmin(new AddComActIntegralUserDTO( |
| | | people.getActivityId(), AddComActIntegralUserDTO.integralType.cydyhd, |
| | | people.getCommunityId(), people.getUserId())); |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | log.info("执行结果【{}】", r.toString()); |
| | | return ReturnT.SUCCESS; |
| | | } |
| | | } |