|
|
|
@ -115,8 +115,8 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
return ConvertUtils.sourceToTarget(entityList, ActInfoDTO.class); |
|
|
|
} |
|
|
|
|
|
|
|
private QueryWrapper<ActInfoEntity> getWrapper(Map<String, Object> params){ |
|
|
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
|
|
|
private QueryWrapper<ActInfoEntity> getWrapper(Map<String, Object> params) { |
|
|
|
String id = (String) params.get(FieldConstant.ID_HUMP); |
|
|
|
|
|
|
|
QueryWrapper<ActInfoEntity> wrapper = new QueryWrapper<>(); |
|
|
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
|
|
|
@ -152,10 +152,12 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
ActInfoEntity entity = ConvertUtils.sourceToTarget(dto, ActInfoEntity.class); |
|
|
|
updateById(entity); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 活动列表-移动app端用 |
|
|
|
* |
|
|
|
* @Params: [formDto] |
|
|
|
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>> |
|
|
|
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.item.result.ItemResultDTO>> |
|
|
|
* @Author: lipengfei |
|
|
|
* @Date: 2019/10/19 16:47 |
|
|
|
*/ |
|
|
|
@ -166,10 +168,12 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
List<ActInfoAppResultDTO> data = baseDao.signupListItemsByApp(formDto); |
|
|
|
return new Result<List<ActInfoAppResultDTO>>().ok(data); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 活动列表-移动app端用 |
|
|
|
* |
|
|
|
* @Params: [formDto] |
|
|
|
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>> |
|
|
|
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.item.result.ItemResultDTO>> |
|
|
|
* @Author: lipengfei |
|
|
|
* @Date: 2019/10/19 16:47 |
|
|
|
*/ |
|
|
|
@ -281,6 +285,7 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
return new Result<ActInfoDetailAppResultDTO>().ok(resultDTO); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* @param actId 活动id |
|
|
|
* @param userId 用户id |
|
|
|
@ -291,111 +296,156 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
**/ |
|
|
|
public String getCurrentUserStatus(String actId, String userId) { |
|
|
|
ActInfoEntity actInfoEntity = baseDao.selectById(actId); |
|
|
|
String currentUserStatus = ""; |
|
|
|
//用户当前状态(0-我要报名,1-取消报名,2-已报满,3-未开始,4-我要打卡,5-更新打卡,6-已结束,7-已取消)
|
|
|
|
//1、查询用户活动关系
|
|
|
|
|
|
|
|
// 活动已取消
|
|
|
|
if (ActStateConstant.ACT_INFO_STATUS_UNDERCARRIAGE.equals(actInfoEntity.getActStatus())) { |
|
|
|
return ActUserStatusConstant.CANCELED; |
|
|
|
} |
|
|
|
|
|
|
|
Date currentTime = new Date(); |
|
|
|
// 活动已经结束:当前时间已经过了活动结束时间并且也已经过了打卡截止时间
|
|
|
|
if (currentTime.after(actInfoEntity.getActEndTime()) && currentTime.after(actInfoEntity.getSigninEndTime())) { |
|
|
|
return ActUserStatusConstant.FINISHED; |
|
|
|
} |
|
|
|
|
|
|
|
// 查询用户活动关系
|
|
|
|
QueryWrapper<ActUserRelationEntity> actUserRelationWrapper = new QueryWrapper<>(); |
|
|
|
actUserRelationWrapper.eq("ACT_ID", actId) |
|
|
|
.eq("USER_ID", userId) |
|
|
|
.orderByDesc("CREATED_TIME").last("limit 1"); |
|
|
|
ActUserRelationEntity actUserRelationEntity = actUserRelationDao.selectOne(actUserRelationWrapper); |
|
|
|
//2、查询用户打卡记录
|
|
|
|
List<ActUserClockLogEntity> actUserClockLogList = new ArrayList<ActUserClockLogEntity>(); |
|
|
|
if (null != actUserRelationEntity) { |
|
|
|
QueryWrapper<ActUserClockLogEntity> actUserClockLogWrapper = new QueryWrapper<>(); |
|
|
|
actUserClockLogWrapper.eq("ACT_USER_ID", actUserRelationEntity.getId()); |
|
|
|
actUserClockLogList = actUserClockLogDao.selectList(actUserClockLogWrapper); |
|
|
|
if (null == actUserRelationEntity) { |
|
|
|
return getCurrentUserStatusNotSignUp(actInfoEntity, currentTime); |
|
|
|
} else { |
|
|
|
return getCurrentUserStatusHasSignUp(actInfoEntity, actUserRelationEntity, currentTime); |
|
|
|
} |
|
|
|
Date currentTime = new Date(); |
|
|
|
// 活动取消:已取消
|
|
|
|
if (ActStateConstant.ACT_INFO_STATUS_UNDERCARRIAGE.equals(actInfoEntity.getActStatus())) { |
|
|
|
currentUserStatus = ActUserStatusConstant.CANCELED; |
|
|
|
} else if (currentTime.after(actInfoEntity.getActEndTime()) && currentTime.after(actInfoEntity.getSigninEndTime())) { |
|
|
|
// 活动已经结束:当前时间已经过了活动结束时间并且也已经过了打卡截止时间
|
|
|
|
currentUserStatus = ActUserStatusConstant.FINISHED; |
|
|
|
} else if (currentTime.after(actInfoEntity.getActEndTime()) && currentTime.before(actInfoEntity.getSigninEndTime())) { |
|
|
|
/*活动结束-打卡截止时间 |
|
|
|
1、当前用户未报名 显示一结束 |
|
|
|
2、当前用户已报名(审核通过)未打卡的显示 我要打卡 |
|
|
|
3、当前用户已报名(已经打过卡的)显示更新打卡 |
|
|
|
4、当前用户已经报名(未审核的、审核未通过、已经取消报名的)-已结束*/ |
|
|
|
if (null == actUserRelationEntity) { |
|
|
|
currentUserStatus = ActUserStatusConstant.FINISHED; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& ActUserRelationStatusConstant.APPROVED.equals(actUserRelationEntity.getStatus()) |
|
|
|
&& CollUtil.isEmpty(actUserClockLogList)) { |
|
|
|
currentUserStatus = ActUserStatusConstant.CLOCK; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& ActUserRelationStatusConstant.CLOCK.equals(actUserRelationEntity.getStatus()) |
|
|
|
&& CollUtil.isNotEmpty(actUserClockLogList)) { |
|
|
|
currentUserStatus = ActUserStatusConstant.UPDATE_CLOCK; |
|
|
|
} else if (null != actUserRelationEntity && (ActUserRelationStatusConstant.SIGN_UP.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserRelationEntity.getStatus()))) { |
|
|
|
currentUserStatus = ActUserStatusConstant.FINISHED; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 用户是否有活动打卡记录 |
|
|
|
* |
|
|
|
* @param actUserRelationId 用户活动关系id |
|
|
|
* @return boolean |
|
|
|
* @author work@yujt.net.cn |
|
|
|
* @date 2020/4/8 17:31 |
|
|
|
*/ |
|
|
|
private boolean isClocked(String actUserRelationId) { |
|
|
|
QueryWrapper<ActUserClockLogEntity> actUserClockLogWrapper = new QueryWrapper<>(); |
|
|
|
actUserClockLogWrapper.eq("ACT_USER_ID", actUserRelationId); |
|
|
|
Integer count = actUserClockLogDao.selectCount(actUserClockLogWrapper); |
|
|
|
return count > NumConstant.ZERO; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 用户已报名活动时,判断用户活动状态 |
|
|
|
* |
|
|
|
* @param actInfoEntity 当前活动 |
|
|
|
* @param actUserRelationEntity 用户活动关系 |
|
|
|
* @param currentTime 当前时间 |
|
|
|
* @return java.lang.String |
|
|
|
* @author work@yujt.net.cn |
|
|
|
* @date 2020/4/8 17:11 |
|
|
|
*/ |
|
|
|
private String getCurrentUserStatusHasSignUp(ActInfoEntity actInfoEntity, ActUserRelationEntity actUserRelationEntity, Date currentTime) { |
|
|
|
|
|
|
|
String actUserStatus = actUserRelationEntity.getStatus(); |
|
|
|
|
|
|
|
// 已确认过积分,直接返回
|
|
|
|
if (ActUserRelationStatusConstant.CONFIRM_ADD_POINTS.equals(actUserStatus) |
|
|
|
|| ActUserRelationStatusConstant.REFUSE_ADD_POINTS.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.POINTS_CONFIRM; |
|
|
|
} |
|
|
|
|
|
|
|
boolean isClocked = isClocked(actUserRelationEntity.getId()); |
|
|
|
|
|
|
|
if (currentTime.after(actInfoEntity.getActEndTime()) && currentTime.before(actInfoEntity.getSigninEndTime())) { |
|
|
|
/*活动结束;打卡未截止*/ |
|
|
|
// 审核通过且未打卡的显示 我要打卡
|
|
|
|
if (ActUserRelationStatusConstant.APPROVED.equals(actUserStatus) && !isClocked) { |
|
|
|
return ActUserStatusConstant.CLOCK; |
|
|
|
} |
|
|
|
// (已经打过卡的)显示更新打卡
|
|
|
|
if (ActUserRelationStatusConstant.CLOCK.equals(actUserStatus) && isClocked) { |
|
|
|
return ActUserStatusConstant.UPDATE_CLOCK; |
|
|
|
} |
|
|
|
// 未审核的、审核未通过、已经取消报名的)- 已结束
|
|
|
|
if (ActUserRelationStatusConstant.SIGN_UP.equals(actUserStatus) |
|
|
|
|| ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserStatus) |
|
|
|
|| ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.FINISHED; |
|
|
|
} |
|
|
|
} else if (currentTime.after(actInfoEntity.getSigninStartTime()) && currentTime.before(actInfoEntity.getSigninEndTime())) { |
|
|
|
/*活动打卡时间段内: |
|
|
|
1、当前用户未报名 不显示:进行中 |
|
|
|
2、当前用户已报名且未打卡 我要打卡 |
|
|
|
3、当前用户已报名且已打卡 更新打卡 |
|
|
|
4、当前用户报名未审核、取消报名、或者审核不通过的-显示进行中*/ |
|
|
|
if (null == actUserRelationEntity) { |
|
|
|
currentUserStatus = ActUserStatusConstant.ON_GOING; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& ActUserRelationStatusConstant.APPROVED.equals(actUserRelationEntity.getStatus()) |
|
|
|
&& CollUtil.isEmpty(actUserClockLogList)) { |
|
|
|
currentUserStatus = ActUserStatusConstant.CLOCK; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& ActUserRelationStatusConstant.CLOCK.equals(actUserRelationEntity.getStatus()) |
|
|
|
&& CollUtil.isNotEmpty(actUserClockLogList)) { |
|
|
|
currentUserStatus = ActUserStatusConstant.UPDATE_CLOCK; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& (ActUserRelationStatusConstant.SIGN_UP.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserRelationEntity.getStatus()))) { |
|
|
|
currentUserStatus = ActUserStatusConstant.ON_GOING; |
|
|
|
/* 活动打卡时间段内 */ |
|
|
|
// 审核通过且未打卡的显示 我要打卡
|
|
|
|
if (ActUserRelationStatusConstant.APPROVED.equals(actUserStatus) && !isClocked) { |
|
|
|
return ActUserStatusConstant.CLOCK; |
|
|
|
} |
|
|
|
// (已经打过卡的)显示更新打卡
|
|
|
|
if (ActUserRelationStatusConstant.CLOCK.equals(actUserStatus) && isClocked) { |
|
|
|
return ActUserStatusConstant.UPDATE_CLOCK; |
|
|
|
} |
|
|
|
// 未审核的、审核未通过、已经取消报名的)- 进行中
|
|
|
|
if (ActUserRelationStatusConstant.SIGN_UP.equals(actUserStatus) |
|
|
|
|| ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserStatus) |
|
|
|
|| ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.ON_GOING; |
|
|
|
} |
|
|
|
} else if (currentTime.before(actInfoEntity.getSignupEndTime())) { |
|
|
|
/*报名截至时间前: |
|
|
|
1、当前用户未报名底部显示按钮 我要报名(不限名额或者未报满的) |
|
|
|
2、当前用户未报名且活动名额已满底部显示按钮 已报满(限制名额且已经报满的) |
|
|
|
3、当前用户已报名(未审核、审核通过的)底部显示按钮 取消报名 |
|
|
|
4、当前用户(报名审核未通过或者已经取消报名的)可再次报名-我要报名*/ |
|
|
|
if (null == actUserRelationEntity && (NumConstant.ZERO==actInfoEntity.getActQuotaCategory() |
|
|
|
||actInfoEntity.getActQuota() > actInfoEntity.getSignupNum())) { |
|
|
|
currentUserStatus = ActUserStatusConstant.SIGN_UP; |
|
|
|
} else if (null == actUserRelationEntity && (NumConstant.ONE==actInfoEntity.getActQuotaCategory() |
|
|
|
&&actInfoEntity.getActQuota().equals(actInfoEntity.getSignupNum()))) { |
|
|
|
currentUserStatus = ActUserStatusConstant.FULL_SIGN_UP; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& (ActUserRelationStatusConstant.SIGN_UP.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.APPROVED.equals(actUserRelationEntity.getStatus()))) { |
|
|
|
currentUserStatus = ActUserStatusConstant.CANCEL_SIGN_UP; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& (ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserRelationEntity.getStatus()))) { |
|
|
|
currentUserStatus = ActUserStatusConstant.SIGN_UP; |
|
|
|
/*报名截至时间前 */ |
|
|
|
//(未审核、审核通过的)底部显示按钮 取消报名
|
|
|
|
if (ActUserRelationStatusConstant.SIGN_UP.equals(actUserStatus) || ActUserRelationStatusConstant.APPROVED.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.CANCEL_SIGN_UP; |
|
|
|
} |
|
|
|
// (报名审核未通过或者已经取消报名的)可再次报名-我要报名
|
|
|
|
if (ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserStatus) || ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.SIGN_UP; |
|
|
|
} |
|
|
|
} else if (currentTime.after(actInfoEntity.getSignupEndTime()) && currentTime.before(actInfoEntity.getActStartTime())) { |
|
|
|
/*报名截至时间到活动未开始时间段内: |
|
|
|
1、当前用户未报名底部显示按钮 -未开始 |
|
|
|
2、当前用户已经取消报名的-未开始 |
|
|
|
3、当前用户已报名且审核通过、未审核 -取消报名 |
|
|
|
4、当前用户已报名审核不通过 -未开始*/ |
|
|
|
if (null == actUserRelationEntity) { |
|
|
|
currentUserStatus = ActUserStatusConstant.NOT_STARTED; |
|
|
|
} else if (null != actUserRelationEntity && ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserRelationEntity.getStatus())) { |
|
|
|
currentUserStatus = ActUserStatusConstant.NOT_STARTED; |
|
|
|
} else if (null != actUserRelationEntity |
|
|
|
&& (ActUserRelationStatusConstant.APPROVED.equals(actUserRelationEntity.getStatus()) |
|
|
|
|| ActUserRelationStatusConstant.SIGN_UP.equals(actUserRelationEntity.getStatus()))) { |
|
|
|
currentUserStatus = ActUserStatusConstant.CANCEL_SIGN_UP; |
|
|
|
} else if (null != actUserRelationEntity && ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserRelationEntity.getStatus())) { |
|
|
|
currentUserStatus = ActUserStatusConstant.NOT_STARTED; |
|
|
|
/*报名截止但 活动未开始 */ |
|
|
|
// 已经取消报名的-未开始
|
|
|
|
if (ActUserRelationStatusConstant.CANCEL_SIGN_UP.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.NOT_STARTED; |
|
|
|
} |
|
|
|
// 已报名审核不通过 -未开始
|
|
|
|
if (ActUserRelationStatusConstant.NOT_APPROVED.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.NOT_STARTED; |
|
|
|
} |
|
|
|
// 已报名且审核通过、未审核 -取消报名
|
|
|
|
if (ActUserRelationStatusConstant.APPROVED.equals(actUserStatus) || ActUserRelationStatusConstant.SIGN_UP.equals(actUserStatus)) { |
|
|
|
return ActUserStatusConstant.CANCEL_SIGN_UP; |
|
|
|
} |
|
|
|
} |
|
|
|
return ActUserStatusConstant.FINISHED; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 用户未报名活动时,判断用户活动状态 |
|
|
|
* |
|
|
|
* @param actInfoEntity 当前活动 |
|
|
|
* @param currentTime 当前时间 |
|
|
|
* @return java.lang.String |
|
|
|
* @author work@yujt.net.cn |
|
|
|
* @date 2020/4/8 16:55 |
|
|
|
*/ |
|
|
|
private String getCurrentUserStatusNotSignUp(ActInfoEntity actInfoEntity, Date currentTime) { |
|
|
|
if (currentTime.before(actInfoEntity.getSignupEndTime())) { |
|
|
|
/*报名结束前*/ |
|
|
|
if (NumConstant.ZERO == actInfoEntity.getActQuotaCategory() || actInfoEntity.getActQuota() > actInfoEntity.getSignupNum()) { |
|
|
|
// 我要报名(不限名额或者未报满的)
|
|
|
|
return ActUserStatusConstant.SIGN_UP; |
|
|
|
} else { |
|
|
|
// 已报满(限制名额且已经报满的)
|
|
|
|
return ActUserStatusConstant.FULL_SIGN_UP; |
|
|
|
} |
|
|
|
} else if (currentTime.after(actInfoEntity.getSignupEndTime()) && currentTime.before(actInfoEntity.getActStartTime())) { |
|
|
|
/*报名结束,活动未开始*/ |
|
|
|
return ActUserStatusConstant.NOT_STARTED; |
|
|
|
} else if (currentTime.after(actInfoEntity.getSigninStartTime()) && currentTime.before(actInfoEntity.getSigninEndTime())) { |
|
|
|
// 活动打卡时间段内: 显示:进行中
|
|
|
|
return ActUserStatusConstant.ON_GOING; |
|
|
|
} else { |
|
|
|
return ActUserStatusConstant.FINISHED; |
|
|
|
} |
|
|
|
return currentUserStatus; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@ -426,7 +476,7 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
updateById(infoEntity); |
|
|
|
//banner表 浏览数+1
|
|
|
|
ActBannerDTO bannerDto = actBannerService.getBannerInfo(actId); |
|
|
|
if (bannerDto != null){ |
|
|
|
if (bannerDto != null) { |
|
|
|
bannerDto.setBrowseNum(bannerDto.getBrowseNum() + 1); |
|
|
|
ActBannerEntity bannerEntity = ConvertUtils.sourceToTarget(bannerDto, ActBannerEntity.class); |
|
|
|
actBannerService.updateById(bannerEntity); |
|
|
|
@ -434,11 +484,10 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* 活动保存到banner |
|
|
|
* |
|
|
|
* @params [entity] |
|
|
|
* @return void |
|
|
|
* @params [entity] |
|
|
|
* @author liuchuang |
|
|
|
* @since 2020/2/6 20:44 |
|
|
|
*/ |
|
|
|
@ -461,11 +510,10 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* 创建定时任务(活动开始后将未审核的报名人员自动置为审核通过或不通过) |
|
|
|
* |
|
|
|
* @params [actId, actStartTime] |
|
|
|
* @return Result |
|
|
|
* @params [actId, actStartTime] |
|
|
|
* @author liuchuang |
|
|
|
* @since 2020/2/6 21:10 |
|
|
|
*/ |
|
|
|
@ -482,9 +530,9 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit |
|
|
|
int day = calendar.get(Calendar.DATE); |
|
|
|
int hours = calendar.get(Calendar.HOUR_OF_DAY); |
|
|
|
int minutes = calendar.get(Calendar.MINUTE); |
|
|
|
int second=calendar.get(Calendar.SECOND); |
|
|
|
int second = calendar.get(Calendar.SECOND); |
|
|
|
|
|
|
|
cron = second +" "+ minutes +" "+ hours + " " + day + " " + month + " ? " + year + "-" + year; |
|
|
|
cron = second + " " + minutes + " " + hours + " " + day + " " + month + " ? " + year + "-" + year; |
|
|
|
jobDTO.setCronExpression(cron); |
|
|
|
return jobFeignClient.save(jobDTO); |
|
|
|
} |
|
|
|
|