提交 bada2a15 authored 作者: 吕本才's avatar 吕本才

fix(promotion-service): 增加下班判断

上级 f1d5c555
......@@ -10,6 +10,7 @@ import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityTaskClockDa
import com.wangxiaolu.promotion.domain.activity.mapper.TemporaryActivityTaskClockMapper;
import com.wangxiaolu.promotion.domain.activity.mapper.entity.TemporaryActivityTaskClockDO;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryActivityTaskWrapperDto;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryClockWrapper;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryPhotoWrapper;
import com.wangxiaolu.promotion.enums.activity.ActivityClockTaskStatus;
import com.wangxiaolu.promotion.enums.activity.ActivityPhotoType;
......@@ -199,6 +200,14 @@ public class TemporaryActivityTaskClockServiceImpl extends ServiceImpl<Temporary
}
/**
* 查询当前用户指定任务类型的任务
* 未完成状态下,不可编辑
* 下班状态下,已完成 未完成状态不可编辑
* 未下班状态下 在拍照要求时间段内,都可以编辑
* @param taskType
* @return
*/
@Override
public TemporaryActivityTaskClockRes queryByMyTaskType(Integer taskType) {
// 从header获取token标识
......@@ -212,23 +221,34 @@ public class TemporaryActivityTaskClockServiceImpl extends ServiceImpl<Temporary
.setIsDelete(FlagType.NO.getType());
TemporaryActivityTaskClockDO taskClockDO = temporaryActivityTaskClockDao.selectOne(wrapper);
if (taskClockDO != null) {
TemporaryClockWrapper wr = new TemporaryClockWrapper();
wr.setId(taskClockDO.getClockId());
TemporaryClockDto byId = clockQueryService.findClockInfo(wr);
TemporaryActivityTaskClockRes res = new TemporaryActivityTaskClockRes();
BeanUtils.copyProperties(taskClockDO, res);
// 未完成状态的情况下,不可编辑
if(taskClockDO.getTaskStatus() == ActivityClockTaskStatus.UNCOMPLETED.getType()){
res.setEditableFlag(false);
}else{
// 是否可以编辑
Date requiredlockTime = res.getRequiredlockTime();
if (taskClockDO.getTaskType() == ActivityPhotoType.RANDOM_TASK.getType() && requiredlockTime != null) {
Date now = new Date();
if (now.compareTo(requiredlockTime) > 0
&& now.compareTo(DateUtil.offsetMinute(requiredlockTime,15)) < 0) {
Date clockOutTime = byId.getClockOutTime();
if(ObjectUtil.isEmpty(clockOutTime)){
// 未下班 未完成状态的情况下,不可编辑
if(taskClockDO.getTaskStatus() == ActivityClockTaskStatus.UNCOMPLETED.getType()){
res.setEditableFlag(false);
}else{
// 是否可以编辑
Date requiredLockTime = res.getRequiredlockTime();
if (taskClockDO.getTaskType() == ActivityPhotoType.RANDOM_TASK.getType() && requiredLockTime != null) {
Date now = new Date();
if (now.compareTo(requiredLockTime) > 0
&& now.compareTo(DateUtil.offsetMinute(requiredLockTime,15)) < 0) {
res.setEditableFlag(true);
}
}
if (taskClockDO.getTaskType() == ActivityPhotoType.POS_PHOTO.getType()){
res.setEditableFlag(true);
}
}
}
// 查询图片
TemporaryPhotoWrapper photoWrapper = new TemporaryPhotoWrapper()
.setClockId(taskClockDO.getClockId())
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论