From 3c06a459c494487b38be63be5a036001d3f13634 Mon Sep 17 00:00:00 2001 From: zhangyongzhangyong <2012005003@qq.coom> Date: Wed, 5 Aug 2020 15:13:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E8=AF=A6=E6=83=85=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=8F=8D=E5=8F=82=EF=BC=9A=E7=AD=BE=E5=88=B0=E6=97=B6?= =?UTF-8?q?=E9=97=B4=EF=BC=9B=20=E5=A2=9E=E5=8A=A0=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=9A=E5=88=A4=E6=96=AD=E6=98=AF=E5=90=A6=E5=9C=A8=E7=AD=BE?= =?UTF-8?q?=E5=88=B0=E6=97=B6=E9=97=B4=E5=86=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/exception/EpmetErrorCode.java | 2 ++ .../dto/form/resi/ResiActContentFormDTO.java | 1 - .../dto/form/resi/ResiActSignInFormDTO.java | 1 - .../result/resi/ResiActDetailResultDTO.java | 10 ++++++++ .../resi/ResiActRegistrationResultDTO.java | 2 +- .../controller/ResiActListController.java | 14 +++++++++++ .../com/epmet/service/ActInfoService.java | 10 ++++++++ .../service/impl/ActInfoServiceImpl.java | 24 +++++++++++++++---- .../src/main/resources/mapper/ActInfoDao.xml | 2 ++ 9 files changed, 58 insertions(+), 8 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index 23c6567af2..1ca4a859fd 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -86,6 +86,8 @@ public enum EpmetErrorCode { // 活动报名失败,弹窗:志愿者认证 NON_CERTIFIED_VOLUNTEER(8511, "是否认证志愿者,完成报名"), ACT_TIME_CONFLICT(8512, "报名失败。您本次报名活动时间与已报名活动时间间隔较短,为了不影响您已报名的活动,请选择其他时间的活动,谢谢。"), + SIGN_IN_TIME_NO(8513, "签到时间还未到~"), + SIGN_IN_TIME_END(8514, "签到时间已结束~"), // 该错误不会提示给前端,只是后端传输错误信息用。 ACCESS_SQL_FILTER_MISSION_ARGS(8701, "缺少生成权限过滤SQL所需参数"), diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActContentFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActContentFormDTO.java index 1297ccb96c..9f7fba3fd0 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActContentFormDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActContentFormDTO.java @@ -2,7 +2,6 @@ package com.epmet.dto.form.resi; import lombok.Data; -import javax.validation.constraints.Min; import javax.validation.constraints.NotBlank; import java.io.Serializable; diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActSignInFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActSignInFormDTO.java index f315a04449..edd1acf91d 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActSignInFormDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiActSignInFormDTO.java @@ -17,7 +17,6 @@ package com.epmet.dto.form.resi; -import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; import lombok.Data; import javax.validation.constraints.Min; diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java index fe8ef51b45..555ece4796 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java @@ -142,4 +142,14 @@ public class ResiActDetailResultDTO implements Serializable { * 用户是否已报名该活动 true用户已报名;false用户未报名 */ private Boolean isRegistration; + + /** + * 打卡开始时间(yyyy-MM-dd HH:mm) + */ + private String signInStartTime; + + /** + * 打卡截止时间(yyyy-MM-dd HH:mm) + */ + private String signInEndTime; } diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActRegistrationResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActRegistrationResultDTO.java index 14e8cbd9b3..0ebb4ae3b2 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActRegistrationResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActRegistrationResultDTO.java @@ -23,7 +23,7 @@ import java.io.Serializable; /** - * 活动内容 + * 活动-错误提示信息 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-07-19 diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiActListController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiActListController.java index 5b7412b415..684965c721 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiActListController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiActListController.java @@ -317,4 +317,18 @@ public class ResiActListController { ValidatorUtils.validateEntity(formDto, ResiActBaseFormDTO.AddUserInternalGroup.class); return actInfoService.actLookBackAssembly(formDto); } + + /** + * 检查是否在 活动签到时间 范围内 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @Author zhangyong + * @Date 15:03 2020-08-05 + **/ + @PostMapping("checksignintime") + public Result checkSignInTime(@RequestBody ResiActContentFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, ResiActContentFormDTO.AddUserInternalGroup.class); + return actInfoService.checkSignInTime(formDTO); + } } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/ActInfoService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/ActInfoService.java index 7fc4eb4963..d1f698480d 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/ActInfoService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/ActInfoService.java @@ -235,4 +235,14 @@ public interface ActInfoService extends BaseService { * @Date 13:39 2020-07-21 **/ Result> actLookBackAssembly(ResiLatestActFormDTO formDTO); + + /** + * 检查是否在 活动签到时间 范围内 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @Author zhangyong + * @Date 15:03 2020-08-05 + **/ + Result checkSignInTime(ResiActContentFormDTO formDTO); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java index 6e42b0c56d..2fc4a666cb 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActInfoServiceImpl.java @@ -23,7 +23,6 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; -import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; @@ -37,7 +36,6 @@ import com.epmet.dto.form.resi.*; import com.epmet.dto.result.resi.*; import com.epmet.entity.ActInfoEntity; import com.epmet.entity.ActUserRelationEntity; -import com.epmet.redis.ActInfoRedis; import com.epmet.service.ActInfoService; import com.epmet.service.ActUserRelationService; import com.epmet.utils.CaculateDistance; @@ -61,9 +59,6 @@ public class ActInfoServiceImpl extends BaseServiceImpl lookBackAct = baseDao.selectListLookBackActAssembly(formDTO); return new Result>().ok(lookBackAct); } + + @Override + public Result checkSignInTime(ResiActContentFormDTO formDTO) { + ResiActRegistrationResultDTO resultDTO = new ResiActRegistrationResultDTO(); + resultDTO.setFlag(NumConstant.ZERO); + Date currentTime = new Date(); + // 查询 活动信息 + ActInfoEntity entity = baseDao.selectById(formDTO.getActId()); + if (currentTime.before(entity.getSignInStartTime())){ + // 签到时间还未到~ + resultDTO.setTip(EpmetErrorCode.SIGN_IN_TIME_NO.getMsg()); + resultDTO.setFlag(EpmetErrorCode.SIGN_IN_TIME_NO.getCode()); + } else if (currentTime.after(entity.getSignInEndTime())){ + // 签到时间已结束~ + resultDTO.setTip(EpmetErrorCode.SIGN_IN_TIME_END.getMsg()); + resultDTO.setFlag(EpmetErrorCode.SIGN_IN_TIME_END.getCode()); + } + return new Result().ok(resultDTO); + } } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml index a5de7c102e..17dbb6c169 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml @@ -400,6 +400,8 @@ DATE_FORMAT(i.SIGN_UP_END_TIME,'%Y-%m-%d %H:%i') signUpEndTime, DATE_FORMAT(i.ACT_START_TIME,'%Y-%m-%d %H:%i') actStartTime, DATE_FORMAT(i.ACT_END_TIME,'%Y-%m-%d %H:%i') actEndTime, + DATE_FORMAT(i.SIGN_IN_START_TIME,'%Y-%m-%d %H:%i') signInStartTime, + DATE_FORMAT(i.SIGN_IN_END_TIME,'%Y-%m-%d %H:%i') signInEndTime, i.ACT_ADDRESS actAddress, i.ACT_QUOTA_CATEGORY actQuotaCategory, -- 活动名额类型(true:固定名额(1) false: 不限制名额(0)) i.ACT_QUOTA actQuota,