Browse Source

点击分享链接,查看活动详情

dev_shibei_match
yinzuomei 4 years ago
parent
commit
e7eb348678
  1. 4
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  2. 28
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/act/form/ActDetailByLinkFormDTO.java
  3. 14
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/act/result/ActDetailByLinkResultDTO.java
  4. 22
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/act/controller/GroupActInfoController.java
  5. 14
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/act/service/GroupActInfoService.java
  6. 38
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/act/service/impl/GroupActInfoServiceImpl.java
  7. 9
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/InvitationRecordService.java
  8. 14
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/impl/InvitationRecordServiceImpl.java

4
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -173,7 +173,9 @@ public enum EpmetErrorCode {
//8910的msg动态赋值
GROUP_ACT_CAN_NOT_COMMENT(8910,"当前活动,不能评论"),
SIGN_IN_TIME_NOT_START(8911,"未到签到时间,不允许签到"),
SIGN_IN_TIME_PASSED(8912,"当前时间已超过签到时间");
SIGN_IN_TIME_PASSED(8912,"当前时间已超过签到时间"),
INVITATION_NOT_EXIST(8913,"链接不存在");
private int code;
private String msg;

28
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/act/form/ActDetailByLinkFormDTO.java

@ -0,0 +1,28 @@
package com.epmet.resi.group.dto.act.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 015点击分享链接查看活动详情
*
* @author yinzuomei@elink-cn.com
* @date 2021/4/21 11:14
*/
@Data
public class ActDetailByLinkFormDTO implements Serializable {
private static final long serialVersionUID = 287086994875005175L;
public interface AddUserInternalGroup {
}
@NotBlank(message = "invitationRecordId不能为空", groups = AddUserInternalGroup.class)
private String invitationRecordId;
/**
* 当前用户id
*/
@NotBlank(message = "tokenDto获取userId为空", groups = AddUserInternalGroup.class)
private String userId;
}

14
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/act/result/ActDetailByLinkResultDTO.java

@ -0,0 +1,14 @@
package com.epmet.resi.group.dto.act.result;
import lombok.Data;
/**
* 015点击分享链接查看活动详情
*
* @author yinzuomei@elink-cn.com
* @date 2021/4/21 11:16
*/
@Data
public class ActDetailByLinkResultDTO extends ActDetailResultDTO{
private String invitationRecordId;
}

22
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/act/controller/GroupActInfoController.java

@ -23,10 +23,8 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.modules.act.service.GroupActInfoService;
import com.epmet.resi.group.dto.act.GroupActIdDTO;
import com.epmet.resi.group.dto.act.form.ActDetailFormDTO;
import com.epmet.resi.group.dto.act.form.ActReadViewFormDTO;
import com.epmet.resi.group.dto.act.form.CancelActFormDTO;
import com.epmet.resi.group.dto.act.form.PublishGroupActFormDTO;
import com.epmet.resi.group.dto.act.form.*;
import com.epmet.resi.group.dto.act.result.ActDetailByLinkResultDTO;
import com.epmet.resi.group.dto.act.result.ActDetailResultDTO;
import com.epmet.resi.group.dto.notice.result.NoticeReadListResultDTO;
import org.springframework.beans.factory.annotation.Autowired;
@ -108,4 +106,20 @@ public class GroupActInfoController {
ValidatorUtils.validateEntity(formDTO,CancelActFormDTO.AddUserShowGroup.class,CancelActFormDTO.AddUserInternalGroup.class);
return new Result<GroupActIdDTO>().ok(groupActInfoService.cancelAct(formDTO));
}
/**
* @return com.epmet.commons.tools.utils.Result<com.epmet.resi.group.dto.act.result.ActDetailByLinkResultDTO>
* @param tokenDto
* @param formDTO
* @author yinzuomei
* @description 015点击分享链接查看活动详情
* @Date 2021/4/21 11:17
**/
@PostMapping("actdetailbylink")
public Result<ActDetailByLinkResultDTO> queryActDetailByLink(@LoginUser TokenDto tokenDto, @RequestBody ActDetailByLinkFormDTO formDTO){
formDTO.setUserId(tokenDto.getUserId());
ValidatorUtils.validateEntity(formDTO,ActDetailByLinkFormDTO.AddUserInternalGroup.class);
return new Result<ActDetailByLinkResultDTO>().ok(groupActInfoService.queryActDetailByLink(formDTO));
}
}

14
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/act/service/GroupActInfoService.java

@ -21,10 +21,8 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.modules.act.entity.GroupActInfoEntity;
import com.epmet.resi.group.dto.act.GroupActIdDTO;
import com.epmet.resi.group.dto.act.GroupActInfoDTO;
import com.epmet.resi.group.dto.act.form.ActDetailFormDTO;
import com.epmet.resi.group.dto.act.form.ActReadViewFormDTO;
import com.epmet.resi.group.dto.act.form.CancelActFormDTO;
import com.epmet.resi.group.dto.act.form.PublishGroupActFormDTO;
import com.epmet.resi.group.dto.act.form.*;
import com.epmet.resi.group.dto.act.result.ActDetailByLinkResultDTO;
import com.epmet.resi.group.dto.act.result.ActDetailResultDTO;
import com.epmet.resi.group.dto.notice.result.NoticeReadListResultDTO;
@ -75,4 +73,12 @@ public interface GroupActInfoService extends BaseService<GroupActInfoEntity> {
* @return com.epmet.resi.group.dto.act.GroupActInfoDTO
*/
GroupActInfoDTO getGroupActInfoDTO(String groupActId);
/**
* 015点击分享链接查看活动详情
*
* @param formDTO
* @return com.epmet.resi.group.dto.act.result.ActDetailByLinkResultDTO
*/
ActDetailByLinkResultDTO queryActDetailByLink(ActDetailByLinkFormDTO formDTO);
}

38
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/act/service/impl/GroupActInfoServiceImpl.java

@ -55,15 +55,15 @@ import com.epmet.modules.act.service.GroupActInfoService;
import com.epmet.modules.constant.GroupActConstant;
import com.epmet.modules.constant.UserMessageConstant;
import com.epmet.modules.group.service.ResiGroupService;
import com.epmet.modules.invitation.service.InvitationRecordService;
import com.epmet.modules.member.service.ResiGroupMemberService;
import com.epmet.resi.group.dto.act.GroupActIdDTO;
import com.epmet.resi.group.dto.act.GroupActInfoDTO;
import com.epmet.resi.group.dto.act.form.ActDetailFormDTO;
import com.epmet.resi.group.dto.act.form.ActReadViewFormDTO;
import com.epmet.resi.group.dto.act.form.CancelActFormDTO;
import com.epmet.resi.group.dto.act.form.PublishGroupActFormDTO;
import com.epmet.resi.group.dto.act.form.*;
import com.epmet.resi.group.dto.act.result.ActDetailByLinkResultDTO;
import com.epmet.resi.group.dto.act.result.ActDetailResultDTO;
import com.epmet.resi.group.dto.group.ResiGroupDTO;
import com.epmet.resi.group.dto.invitation.InvitationRecordDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
import com.epmet.resi.group.dto.notice.result.NoticeReadListResultDTO;
import lombok.extern.slf4j.Slf4j;
@ -115,6 +115,8 @@ public class GroupActInfoServiceImpl extends BaseServiceImpl<GroupActInfoDao, Gr
private ActSignInRecordService actSignInRecordService;
@Autowired
private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient;
@Autowired
private InvitationRecordService invitationRecordService;
/**
* 003发布编辑组织活动
@ -416,6 +418,10 @@ public class GroupActInfoServiceImpl extends BaseServiceImpl<GroupActInfoDao, Gr
@Override
public ActDetailResultDTO queryActDetail(ActDetailFormDTO formDTO) {
GroupActInfoEntity groupActInfoEntity=baseDao.selectById(formDTO.getGroupActId());
if(null==groupActInfoEntity){
throw new RenException(String.format("根据groupActId:%s,查询活动信息为null",formDTO.getGroupActId()));
}
//当前内容仅允许组内成员查看
ResiGroupMemberDTO resiGroupMemberDTO=resiGroupMemberService.getResiGroupMember(groupActInfoEntity.getGroupId(),formDTO.getUserId());
if(null==resiGroupMemberDTO){
throw new RenException(EpmetErrorCode.NOT_IN_GROUP_CAN_NOT_VIEW.getCode(), EpmetErrorCode.NOT_IN_GROUP_CAN_NOT_VIEW.getMsg());
@ -425,7 +431,9 @@ public class GroupActInfoServiceImpl extends BaseServiceImpl<GroupActInfoDao, Gr
resultDTO.setTextList(groupActContentDao.selectContentList(formDTO.getGroupActId(),GroupActConstant.TEXT));
resultDTO.setImgList(groupActContentDao.selectContentList(formDTO.getGroupActId(),GroupActConstant.IMG));
resultDTO.setCanceledReason(GroupActConstant.CANCELED.equals(resultDTO.getStatus()) ? actOperationRecordDao.selectCanceledReason(formDTO.getGroupActId()) : StrConstant.EPMETY_STR);
handleSignInDesc(resultDTO,formDTO.getUserId());
resultDTO.setUserRole(resiGroupMemberDTO.getGroupLeaderFlag());
// 有签到后不可以修改活动时间:true可以修改,false不可以,
resultDTO.setStartTimeEditFlag(groupActInfoEntity.getSignedInNum()>NumConstant.ZERO?false:true);
@ -673,4 +681,26 @@ public class GroupActInfoServiceImpl extends BaseServiceImpl<GroupActInfoDao, Gr
public GroupActInfoDTO getGroupActInfoDTO(String groupActId) {
return ConvertUtils.sourceToTarget(baseDao.selectById(groupActId), GroupActInfoDTO.class);
}
/**
* 015点击分享链接查看活动详情
*
* @param formDTO
* @return com.epmet.resi.group.dto.act.result.ActDetailByLinkResultDTO
*/
@Override
public ActDetailByLinkResultDTO queryActDetailByLink(ActDetailByLinkFormDTO formDTO) {
InvitationRecordDTO invitationRecordDTO = invitationRecordService.get(formDTO.getInvitationRecordId());
if (null == invitationRecordDTO) {
log.warn("invitation_record is null invitationRecordId=" + formDTO.getInvitationRecordId());
throw new RenException(EpmetErrorCode.INVITATION_NOT_EXIST.getCode(), EpmetErrorCode.INVITATION_NOT_EXIST.getMsg());
}
ActDetailFormDTO actDetailFormDTO = new ActDetailFormDTO();
actDetailFormDTO.setUserId(formDTO.getUserId());
actDetailFormDTO.setGroupActId(invitationRecordDTO.getSourceId());
ActDetailResultDTO actDetailResultDTO = queryActDetail(actDetailFormDTO);
ActDetailByLinkResultDTO resultDTO = ConvertUtils.sourceToTarget(actDetailResultDTO, ActDetailByLinkResultDTO.class);
resultDTO.setInvitationRecordId(formDTO.getInvitationRecordId());
return resultDTO;
}
}

9
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/InvitationRecordService.java

@ -19,6 +19,7 @@ package com.epmet.modules.invitation.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.modules.invitation.entity.InvitationRecordEntity;
import com.epmet.resi.group.dto.invitation.InvitationRecordDTO;
import com.epmet.resi.group.dto.invitation.form.GetInvitationFormDTO;
import com.epmet.resi.group.dto.invitation.form.ShareFormDTO;
import com.epmet.resi.group.dto.invitation.result.GetInvitationResultDTO;
@ -47,4 +48,12 @@ public interface InvitationRecordService extends BaseService<InvitationRecordEnt
* @Description 通知活动分享Id查询数据
**/
GetInvitationResultDTO getInvitation(GetInvitationFormDTO formDTO);
/**
* 根据主键查询
*
* @param id
* @return com.epmet.resi.group.dto.invitation.InvitationRecordDTO
*/
InvitationRecordDTO get(String id);
}

14
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/impl/InvitationRecordServiceImpl.java

@ -27,6 +27,7 @@ import com.epmet.modules.invitation.entity.InvitationRecordEntity;
import com.epmet.modules.invitation.service.InvitationRecordService;
import com.epmet.modules.notice.dao.NoticeDao;
import com.epmet.modules.notice.entity.NoticeEntity;
import com.epmet.resi.group.dto.invitation.InvitationRecordDTO;
import com.epmet.resi.group.dto.invitation.form.GetInvitationFormDTO;
import com.epmet.resi.group.dto.invitation.form.ShareFormDTO;
import com.epmet.resi.group.dto.invitation.result.GetInvitationResultDTO;
@ -34,8 +35,6 @@ import com.epmet.resi.group.dto.invitation.result.ShareResultDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collection;
/**
* 分享记录(话题通知...后续支持增加)
*
@ -110,4 +109,15 @@ public class InvitationRecordServiceImpl extends BaseServiceImpl<InvitationRecor
GetInvitationResultDTO resultDTO = ConvertUtils.sourceToTarget(entity, GetInvitationResultDTO.class);
return resultDTO;
}
/**
* 根据主键查询
*
* @param id
* @return com.epmet.resi.group.dto.invitation.InvitationRecordDTO
*/
@Override
public InvitationRecordDTO get(String id) {
return ConvertUtils.sourceToTarget(baseDao.selectById(id),InvitationRecordDTO.class);
}
}
Loading…
Cancel
Save