|
|
|
@ -19,6 +19,7 @@ package com.elink.esua.epdc.modules.activity.service.impl; |
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.elink.esua.epdc.activity.ActBannerDTO; |
|
|
|
import com.elink.esua.epdc.activity.ActInfoDTO; |
|
|
|
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO; |
|
|
|
import com.elink.esua.epdc.activity.form.ActInfoFormDTO; |
|
|
|
@ -33,22 +34,25 @@ import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; |
|
|
|
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; |
|
|
|
|
|
|
|
import com.elink.esua.epdc.commons.tools.utils.Result; |
|
|
|
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; |
|
|
|
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; |
|
|
|
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; |
|
|
|
import com.elink.esua.epdc.constant.ActStateConstant; |
|
|
|
import com.elink.esua.epdc.dto.ScheduleJobDTO; |
|
|
|
import com.elink.esua.epdc.modules.activity.dao.ActInfoDao; |
|
|
|
import com.elink.esua.epdc.modules.activity.entity.ActInfoEntity; |
|
|
|
import com.elink.esua.epdc.modules.activity.redis.ActInfoRedis; |
|
|
|
|
|
|
|
import com.elink.esua.epdc.modules.activity.service.ActBannerService; |
|
|
|
import com.elink.esua.epdc.modules.activity.service.ActInfoService; |
|
|
|
import com.elink.esua.epdc.modules.feign.JobFeignClient; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.Date; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
/** |
|
|
|
* 活动信息表 |
|
|
|
@ -61,6 +65,10 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private ActInfoRedis actInfoRedis; |
|
|
|
@Autowired |
|
|
|
private ActBannerService actBannerService; |
|
|
|
@Autowired |
|
|
|
private JobFeignClient jobFeignClient; |
|
|
|
|
|
|
|
@Override |
|
|
|
public PageData<ActInfoDTO> page(Map<String, Object> params) { |
|
|
|
@ -101,9 +109,40 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void save(ActInfoDTO dto) { |
|
|
|
public Result save(ActInfoDTO dto) { |
|
|
|
|
|
|
|
ActInfoEntity entity = ConvertUtils.sourceToTarget(dto, ActInfoEntity.class); |
|
|
|
insert(entity); |
|
|
|
//保存banner信息
|
|
|
|
ActBannerDTO bannerDto = new ActBannerDTO(); |
|
|
|
bannerDto.setActId(entity.getId()); |
|
|
|
bannerDto.setTitle(dto.getTitle()); |
|
|
|
bannerDto.setBannerImg(dto.getBannerUrl()); |
|
|
|
bannerDto.setBannerType("0"); |
|
|
|
bannerDto.setBannerPosition("0"); |
|
|
|
bannerDto.setUrl(""); |
|
|
|
bannerDto.setStatus(dto.getIsBanner()); |
|
|
|
bannerDto.setStatusTime(new Date()); |
|
|
|
bannerDto.setDeptId(dto.getDeptId()); |
|
|
|
ValidatorUtils.validateEntity(bannerDto, AddGroup.class, DefaultGroup.class); |
|
|
|
actBannerService.save(bannerDto); |
|
|
|
ScheduleJobDTO jobDTO = new ScheduleJobDTO(); |
|
|
|
jobDTO.setBeanName("AutoAuditActUserTask"); |
|
|
|
jobDTO.setParams(entity.getId()); |
|
|
|
jobDTO.setStatus(1); |
|
|
|
String cron = ""; |
|
|
|
Calendar calendar = Calendar.getInstance(); |
|
|
|
calendar.setTime(dto.getActStartTime()); |
|
|
|
int year = calendar.get(Calendar.YEAR); |
|
|
|
int month = calendar.get(Calendar.MONTH) + 1; |
|
|
|
int day = calendar.get(Calendar.DATE); |
|
|
|
int hours = calendar.get(Calendar.HOUR_OF_DAY); |
|
|
|
int minutes = calendar.get(Calendar.MINUTE); |
|
|
|
System.out.println(dto.getActStartTime()); |
|
|
|
|
|
|
|
cron = "0 "+ minutes +" "+ hours + " " + day + " " + month + " ? " + year + "-" + year; |
|
|
|
jobDTO.setCronExpression(cron); |
|
|
|
return jobFeignClient.save(jobDTO); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
|