Browse Source

联调bug修改

dev_shibei_match
yinzuomei 5 years ago
parent
commit
78972ac06d
  1. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java
  2. 47
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java
  3. 2
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/SummaryActFormDTO.java
  4. 23
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActDetailResultDTO.java
  5. 23
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/FinishedActDetailResultDTO.java
  6. 33
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/InProgressActDetailResultDTO.java
  7. 4
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/WorkActController.java
  8. 83
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActServiceImpl.java
  9. 9
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActUserServiceImpl.java
  10. 28
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java

@ -51,4 +51,5 @@ public interface NumConstant {
String FIVE_STR = "5";
String POSITIVE_EIGHT_STR = "+8";
String EMPTY_STR = "";
String ONE_NEG_STR = "-1";
}

47
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java

@ -8,6 +8,7 @@
package com.epmet.commons.tools.utils;
import com.epmet.commons.tools.constant.NumConstant;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.joda.time.LocalDate;
@ -488,6 +489,13 @@ public class DateUtils {
return format.format(timestamp * 1000);
}
/**
* @return java.util.Date
* @param minStr yyyy-MM-dd HH:mm字符串
* @author yinzuomei
* @description 改为yyyy-MM-dd HH:mm:00 时间点
* @Date 2020/7/29 13:38
**/
public static Date minStrToSecondDate(String minStr){
if(StringUtils.isNotBlank(minStr)&&minStr.length()==16){
String date=minStr.concat(":00");
@ -502,6 +510,14 @@ public class DateUtils {
return null;
}
/**
* @return java.lang.Integer
* @param startDate
* @param endDate
* @author yinzuomei
* @description 计算两个时间点之间相隔分钟数
* @Date 2020/7/29 13:38
**/
public static Integer calculateMin(Date startDate,Date endDate){
long start=startDate.getTime();
long end=endDate.getTime();
@ -510,4 +526,35 @@ public class DateUtils {
System.out.println("两个时间之间的分钟差为:" + minutes);
return minutes;
}
/**
* @return java.lang.String
* @param dateOne
* @param dateTwo
* @author yinzuomei
* @description 相等0 -1: dateOne早于dateTwo; 1: dateOne晚于dateTwo
* @Date 2020/7/29 15:31
**/
public static String comparteDate(Date dateOne,Date dateTwo){
long dateOneTime =dateOne.getTime();
long dateTwoTime= dateTwo.getTime();
String result="";
if(dateOneTime==dateTwoTime){
result= NumConstant.ZERO_STR;
}else if(dateOneTime<dateTwoTime){
result=NumConstant.ONE_NEG_STR;
}else if(dateOneTime>dateTwoTime){
result=NumConstant.ONE_STR;
}
return result;
}
public static void main(String[] args) {
Date today=new Date();
Date yesterDay=DateUtils.parse("2020-07-28 15:33:00","yyyy-MM-dd HH:mm:ss");
Date tomorrow=DateUtils.parse("2020-07-30 15:33:00","yyyy-MM-dd HH:mm:ss");
System.out.println(comparteDate(today,today));
System.out.println(comparteDate(yesterDay,today));
System.out.println(comparteDate(tomorrow,today));
}
}

2
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/SummaryActFormDTO.java

@ -29,5 +29,5 @@ public class SummaryActFormDTO implements Serializable {
@Valid
@Size(min=1,message = "活动详情不能为空",groups = {AddUserShowGroup.class})
private List<PublishActContentFormDTO> actContent;
private List<PublishActContentFormDTO> actSummary;
}

23
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActDetailResultDTO.java

@ -124,4 +124,27 @@ public class CanceledActDetailResultDTO implements Serializable {
", actContent=" + actContent +
'}';
}
//新增签到相关信息
/**
* 签到开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInStartTime;
/**
* 签到截止时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInEndTime;
/**
* 活动签到打卡地点
*/
private String signInAddress;
/**
* 活动签到打卡半径(单位)
*/
private Integer signInRadius;
}

23
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/FinishedActDetailResultDTO.java

@ -113,4 +113,27 @@ public class FinishedActDetailResultDTO implements Serializable {
@JsonIgnore
private String createdBy;
//新增签到相关信息
/**
* 签到开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInStartTime;
/**
* 签到截止时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInEndTime;
/**
* 活动签到打卡地点
*/
private String signInAddress;
/**
* 活动签到打卡半径(单位)
*/
private Integer signInRadius;
}

33
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/InProgressActDetailResultDTO.java

@ -98,4 +98,37 @@ public class InProgressActDetailResultDTO implements Serializable {
@JsonIgnore
private String createdBy;
/**
* 活动状态报名中signing_up截止报名: end_sign_up; 已开始 in_progress; 已报满 enough
*/
private String status="";
/**
* 已报名人数
*/
private Integer signedUp;
//新增签到相关信息
/**
* 签到开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInStartTime;
/**
* 签到截止时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInEndTime;
/**
* 活动签到打卡地点
*/
private String signInAddress;
/**
* 活动签到打卡半径(单位)
*/
private Integer signInRadius;
}

4
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/WorkActController.java

@ -200,8 +200,8 @@ public class WorkActController {
@PostMapping("summaryact")
public Result summaryAct(@RequestBody SummaryActFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, SummaryActFormDTO.AddUserInternalGroup.class);
if(null!=formDTO.getActContent()&&formDTO.getActContent().size()>0){
ValidatorUtils.validateEntity(formDTO.getActContent(), SummaryActFormDTO.AddUserShowGroup.class);
if(null!=formDTO.getActSummary()&&formDTO.getActSummary().size()>0){
ValidatorUtils.validateEntity(formDTO.getActSummary(), SummaryActFormDTO.AddUserShowGroup.class);
}
workActService.summaryAct(formDTO);
return new Result();

83
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActServiceImpl.java

@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.epmet.commons.tools.constant.AppClientConstant;
import com.epmet.commons.tools.constant.MqConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.form.mq.MqBaseMsgDTO;
import com.epmet.commons.tools.dto.form.mq.eventmsg.BasePointEventMsg;
@ -532,11 +533,12 @@ public class WorkActServiceImpl implements WorkActService {
Date nowDate = new Date();
for (InProgressActResultDTO inProgressActResultDTO : list) {
// 活动状态:报名中:signing_up;截止报名: end_sign_up; 已开始: in_progress; 已报满: enough
if (nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == -1
|| nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == 0) {
/*if (nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == -1
|| nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == 0) {*/
if (!NumConstant.ONE_STR.equals(DateUtils.comparteDate(nowDate, inProgressActResultDTO.getSignUpEndTime()))) {
logger.info(String.format("当前时间%s报名截止时间%s处于报名中",
DateUtils.format(nowDate,DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getSignUpEndTime(),DateUtils.DATE_TIME_PATTERN)));
DateUtils.format(nowDate, DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getSignUpEndTime(), DateUtils.DATE_TIME_PATTERN)));
//截止报名时间之前(包含报名时间截止时间点)
if (!inProgressActResultDTO.getActQuotaCategory()) {
//如果是不限制名额,则显示报名中
@ -555,20 +557,25 @@ public class WorkActServiceImpl implements WorkActService {
continue;
}
}
} else if (nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == 1
&&nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == -1) {
}
/*else if (nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == 1
&&nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == -1) {*/
else if (NumConstant.ONE_STR.equals(DateUtils.comparteDate(nowDate, inProgressActResultDTO.getSignUpEndTime()))
&& NumConstant.ONE_NEG_STR.equals(DateUtils.comparteDate(nowDate, inProgressActResultDTO.getActStartTime()))) {
logger.info(String.format("当前时间%s报名截止时间%s活动预计开始时间%s界面显示截止报名",
DateUtils.format(nowDate,DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getSignUpEndTime(),DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getActStartTime(),DateUtils.DATE_TIME_PATTERN)));
DateUtils.format(nowDate, DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getSignUpEndTime(), DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getActStartTime(), DateUtils.DATE_TIME_PATTERN)));
//活动报名截止-活动预计开始之间显示截止报名
inProgressActResultDTO.setStatus("end_sign_up");
continue;
} else if (nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == 1
|| nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == 0) {
}
/*else if (nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == 1
|| nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == 0) {*/
else if (!NumConstant.ONE_NEG_STR.equals(DateUtils.comparteDate(nowDate, inProgressActResultDTO.getActStartTime()))) {
logger.info(String.format("当前时间%s活动预计开始时间%s界面显示已开始",
DateUtils.format(nowDate,DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getActStartTime(),DateUtils.DATE_TIME_PATTERN)));
DateUtils.format(nowDate, DateUtils.DATE_TIME_PATTERN),
DateUtils.format(inProgressActResultDTO.getActStartTime(), DateUtils.DATE_TIME_PATTERN)));
//活动预计开始时间点之后,包含活动预计开始时间点,显示 已开始
inProgressActResultDTO.setStatus("in_progress");
continue;
@ -732,8 +739,54 @@ public class WorkActServiceImpl implements WorkActService {
public InProgressActDetailResultDTO inProgressDetail(String actId) {
InProgressActDetailResultDTO resultDTO = actInfoDao.selectInProgressDetail(actId);
if (null != resultDTO) {
Date nowDate=new Date();
// 活动状态:报名中:signing_up;截止报名: end_sign_up; 已开始: in_progress; 已报满: enough
/*if (nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == -1
|| nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == 0) {*/
if (!NumConstant.ONE_STR.equals(DateUtils.comparteDate(nowDate, resultDTO.getSignUpEndTime()))) {
logger.info(String.format("当前时间%s报名截止时间%s处于报名中",
DateUtils.format(nowDate, DateUtils.DATE_TIME_PATTERN),
DateUtils.format(resultDTO.getSignUpEndTime(), DateUtils.DATE_TIME_PATTERN)));
//截止报名时间之前(包含报名时间截止时间点)
if (!resultDTO.getActQuotaCategory()) {
//如果是不限制名额,则显示报名中
resultDTO.setStatus("signing_up");
logger.info("活动不限制名额,界面显示 报名中");
} else {
//固定名额,且已报名人数<活动需要人数显示报名中
if (resultDTO.getActQuota() > resultDTO.getSignedUp()) {
logger.info("活动限制名额,未报满,界面显示报名中");
resultDTO.setStatus("signing_up");
} else if (resultDTO.getActQuota().equals(resultDTO.getSignedUp())) {
resultDTO.setStatus("enough");
logger.info("活动限制名额,且已报满,界面显示已报满");
}
}
}
/*else if (nowDate.compareTo(inProgressActResultDTO.getSignUpEndTime()) == 1
&&nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == -1) {*/
else if (NumConstant.ONE_STR.equals(DateUtils.comparteDate(nowDate, resultDTO.getSignUpEndTime()))
&& NumConstant.ONE_NEG_STR.equals(DateUtils.comparteDate(nowDate, resultDTO.getActStartTime()))) {
logger.info(String.format("当前时间%s报名截止时间%s活动预计开始时间%s界面显示截止报名",
DateUtils.format(nowDate, DateUtils.DATE_TIME_PATTERN),
DateUtils.format(resultDTO.getSignUpEndTime(), DateUtils.DATE_TIME_PATTERN),
DateUtils.format(resultDTO.getActStartTime(), DateUtils.DATE_TIME_PATTERN)));
//活动报名截止-活动预计开始之间显示截止报名
resultDTO.setStatus("end_sign_up");
}
/*else if (nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == 1
|| nowDate.compareTo(inProgressActResultDTO.getActStartTime()) == 0) {*/
else if (!NumConstant.ONE_NEG_STR.equals(DateUtils.comparteDate(nowDate, resultDTO.getActStartTime()))) {
logger.info(String.format("当前时间%s活动预计开始时间%s界面显示已开始",
DateUtils.format(nowDate, DateUtils.DATE_TIME_PATTERN),
DateUtils.format(resultDTO.getActStartTime(), DateUtils.DATE_TIME_PATTERN)));
//活动预计开始时间点之后,包含活动预计开始时间点,显示 已开始
resultDTO.setStatus("in_progress");
}
//查询活动详情
List<ActPreviewContentResultDTO> list = actContentDao.selectByActId(actId);
resultDTO.setActContent(list);
//当前活动是否是我发布的
if(resultDTO.getCreatedBy().equals(loginUserUtil.getLoginUserId())){
resultDTO.setIsMyPublish(true);
}else{
@ -921,7 +974,7 @@ public class WorkActServiceImpl implements WorkActService {
//审核
List<String> textList=new ArrayList<>();
List<String> imgList=new ArrayList<>();
for(PublishActContentFormDTO actContent:formDTO.getActContent()){
for(PublishActContentFormDTO actContent:formDTO.getActSummary()){
if(ActConstant.ACT_CONTENT_TYPE_TEXT.equals(actContent.getContentType())){
textList.add(actContent.getContent());
}else if(ActConstant.ACT_CONTENT_TYPE_IMG.equals(actContent.getContentType())){
@ -931,7 +984,7 @@ public class WorkActServiceImpl implements WorkActService {
this.auditActContent(textList,imgList);
//插入act_summary记录
int orderNum=1;
for(PublishActContentFormDTO actContentFormDTO:formDTO.getActContent()){
for(PublishActContentFormDTO actContentFormDTO:formDTO.getActSummary()){
ActSummaryEntity actSummaryEntity=new ActSummaryEntity();
actSummaryEntity.setActId(formDTO.getActId());
actSummaryEntity.setContent(actContentFormDTO.getContent());

9
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActUserServiceImpl.java

@ -2,6 +2,7 @@ package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.constant.AppClientConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
@ -262,13 +263,17 @@ public class WorkActUserServiceImpl implements WorkActUserService {
actInfo.setRefusedNum(actUserRelationService.selectCountUser(actId,ActConstant.ACT_USER_STATUS_REFUSED));
//已取消总人数
actInfo.setCanceledNum(actUserRelationService.selectCountUser(actId,ActConstant.ACT_USER_STATUS_CANCELD));
//true:固定名额 false: 不限制名额
if(actInfo.getActQuotaCategory()){
//固定名额
Integer totalSignUp=actInfo.getAuditingNum()+actInfo.getPassedNum();
actInfo.setTotalSignUp(totalSignUp);
//true:固定名额 false: 不限制名额
if(actInfo.getActQuotaCategory()){
//剩余报名名额
Integer residueNum=actInfo.getActQuota()-totalSignUp;
actInfo.setResidueNum(residueNum);
}else{
//不信名额
actInfo.setResidueNum(NumConstant.ZERO);
}
}
return actInfo;

28
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActInfoDao.xml

@ -605,7 +605,11 @@
ai.REQUIREMENT AS requirement,
ai.CANCEL_TIME AS cancelTime,
ai.CANCEL_REASON AS cancelReason,
ai.CREATED_BY as createdBy
ai.CREATED_BY as createdBy,
ai.SIGN_IN_START_TIME as signInStartTime,
ai.SIGN_IN_END_TIME as signInEndTime,
ai.SIGN_IN_ADDRESS as signInAddress,
ai.SIGN_IN_RADIUS as signInRadius
FROM
act_info ai
WHERE
@ -634,7 +638,11 @@
AI.SUMMARY_FLAG AS summaryFlag,
AI.ACTUAL_START_TIME AS actualStartTime,
AI.ACTUAL_END_TIME AS actualEndTime,
ai.CREATED_BY as createdBy
ai.CREATED_BY as createdBy,
ai.SIGN_IN_START_TIME as signInStartTime,
ai.SIGN_IN_END_TIME as signInEndTime,
ai.SIGN_IN_ADDRESS as signInAddress,
ai.SIGN_IN_RADIUS as signInRadius
FROM
act_info ai
WHERE
@ -659,7 +667,21 @@
ai.REWARD AS reward,
ai.SPONSOR_NAME AS sponsorName,
ai.REQUIREMENT AS requirement,
ai.CREATED_BY as createdBy
ai.CREATED_BY as createdBy,
(
SELECT
count( aur.id )
FROM
act_user_relation aur
WHERE
aur.ACT_ID = ai.ID
AND aur.DEL_FLAG = '0'
AND ( aur.`STATUS` = 'auditing' OR aur.`STATUS` = 'passed' )
) AS signedUp,
ai.SIGN_IN_START_TIME as signInStartTime,
ai.SIGN_IN_END_TIME as signInEndTime,
ai.SIGN_IN_ADDRESS as signInAddress,
ai.SIGN_IN_RADIUS as signInRadius
FROM
act_info ai
WHERE

Loading…
Cancel
Save