Browse Source

heart-work:保存活动草稿api 补充提交

dev_shibei_match
yinzuomei 5 years ago
parent
commit
b278dabcfc
  1. 172
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/DraftActInfoFormDTO.java
  2. 70
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/PublishActInfoFormDTO.java
  3. 25
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/ActPreviewContentResultDTO.java
  4. 76
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/ActPreviewResultDTO.java
  5. 12
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/LatestDraftActInfoResultDTO.java
  6. 10
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LatestActContentService.java
  7. 10
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LatestActInfoService.java
  8. 13
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LatestActContentServiceImpl.java
  9. 13
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LatestActInfoServiceImpl.java
  10. 9
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActDraftServiceImpl.java

172
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/DraftActInfoFormDTO.java

@ -0,0 +1,172 @@
package com.epmet.dto.form.work;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.Valid;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;
/**
* 预览-保存活动草稿入参DTO
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/21 13:17
*/
@Data
public class DraftActInfoFormDTO implements Serializable {
private static final long serialVersionUID = -4967079570884814526L;
public interface AddUserInternalGroup {
}
public interface AddDraftUserShowGroup extends CustomerClientShowGroup {
}
@Valid
private List<DraftActContentFormDTO> actContent;
/**
* 活动草稿id,如果是编辑之前的活动草稿此列是有值的
*/
private String actDraftId;
/**
* 如果是重新发布活动此列是有值的
*/
private String actId;
/**
* 客户id
*/
@NotBlank(message = "客户id不能为空", groups = {AddUserInternalGroup.class})
private String customerId;
/**
* 活动标题
*/
@NotBlank(message = "活动标题不能为空", groups = {AddDraftUserShowGroup.class})
private String title;
/**
* 封面图
*/
private String coverPic;
/**
* 活动地点
*/
private String actAddress;
/**
* 活动地点-经度
*/
private String actLongitude;
/**
* 活动地点-纬度
*/
private String actLatitude;
/**
* 活动预计开始时间yyyy-MM-dd HH:mm
*/
private String actStartTime;
/**
* 活动预计结束时间yyyy-MM-dd HH:mm
*/
private String actEndTime;
/**
* 活动人数
*/
@Min(0)
private Integer actQuota;
/**
* 活动积分
*/
@Min(0)
private Integer reward;
/**
* 报名审核true只有志愿者才可以参加活动false: 只要是居民就可以参加活动
*/
private Boolean volunteerLimit;
/**
* 报名审核 true: 需人工审核 false: 无需审核
*/
private Boolean auditSwitch;
/**
* 报名截止时间yyyy-MM-dd HH:mm
*/
private String signUpEndTime;
/**
* 报名条件
*/
private String requirement;
/**
* 签到开始时间yyyy-MM-dd HH:mm
*/
private String signInStartTime;
/**
* 签到结束时间: yyyy-MM-dd HH:mm
*/
private String signInEndTime;
/**
* 签到地址
*/
private String signInAddress;
/**
* 签到地址-纬度
*/
private String signInLatitude;
/**
* 签到地址-经度
*/
private String signInLongitude;
/**
* 签到有效范围()
*/
@Min(0)
private Integer signInRadius;
/**
* 主办方id
*/
private String sponsorId;
/**
* 主办方类型以网格名义grid , 以机关名义 agency
*/
private String sponsorType;
/**
* 主办方名称
*/
private String sponsorName;
/**
* 联系人
*/
private String sponsorContacts;
/**
* 联系电话
*/
private String sponsorTel;
}

70
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/SaveActInfoFormDTO.java → epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/PublishActInfoFormDTO.java

@ -11,18 +11,23 @@ import java.io.Serializable;
import java.util.List;
/**
* 预览-保存活动草稿入参DTO
* 发布活动-入参
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/21 13:17
* @date 2020/7/21 16:15
*/
@Data
public class SaveActInfoFormDTO implements Serializable {
private static final long serialVersionUID = -4967079570884814526L;
public interface AddUserInternalGroup {}
public interface AddUserShowGroup extends CustomerClientShowGroup {}
public class PublishActInfoFormDTO implements Serializable {
private static final long serialVersionUID = -2066903357493362692L;
public interface AddUserInternalGroup {
}
public interface AddUserShowGroup extends CustomerClientShowGroup {
}
@Valid
private List<SaveActContentFormDTO> actContent;
private List<PublishActContentFormDTO> actContent;
/**
* 活动草稿id,如果是编辑之前的活动草稿此列是有值的
@ -35,46 +40,52 @@ public class SaveActInfoFormDTO implements Serializable {
*/
private String actId;
/**
* 客户id
*/
@NotBlank(message = "客户id不能为空", groups = {AddUserInternalGroup.class})
private String customerId;
/**
* 活动标题
*/
@NotBlank(message = "活动标题不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "活动标题不能为空", groups = {AddUserShowGroup.class})
private String title;
/**
* 封面图
*/
@NotBlank(message = "封面图不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "封面图不能为空", groups = {AddUserShowGroup.class})
private String coverPic;
/**
* 活动地点
*/
@NotBlank(message = "活动地点不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "活动地点不能为空", groups = {AddUserShowGroup.class})
private String actAddress;
/**
* 活动地点-经度
*/
@NotBlank(message = "活动地点经度不能为空", groups = {AddUserInternalGroup.class })
@NotBlank(message = "活动地点经度不能为空", groups = {AddUserInternalGroup.class})
private String actLongitude;
/**
* 活动地点-纬度
*/
@NotBlank(message = "活动地点经度不能为空", groups = {AddUserInternalGroup.class })
@NotBlank(message = "活动地点经度不能为空", groups = {AddUserInternalGroup.class})
private String actLatitude;
/**
* 活动预计开始时间yyyy-MM-dd HH:mm
*/
@NotBlank(message = "活动预计开始时间不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "活动预计开始时间不能为空", groups = {AddUserShowGroup.class})
private String actStartTime;
/**
* 活动预计结束时间yyyy-MM-dd HH:mm
*/
@NotBlank(message = "活动预计结束时间不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "活动预计结束时间不能为空", groups = {AddUserShowGroup.class})
private String actEndTime;
/**
@ -92,55 +103,55 @@ public class SaveActInfoFormDTO implements Serializable {
/**
* 报名审核true只有志愿者才可以参加活动false: 只要是居民就可以参加活动
*/
@NotNull(message = "报名身份不能为空",groups = {AddUserInternalGroup.class})
@NotNull(message = "报名身份不能为空", groups = {AddUserInternalGroup.class})
private Boolean volunteerLimit;
/**
* 报名审核 true: 需人工审核 false: 无需审核
*/
@NotNull(message = "报名审核方式不能为空",groups = {AddUserInternalGroup.class})
@NotNull(message = "报名审核方式不能为空", groups = {AddUserInternalGroup.class})
private Boolean auditSwitch;
/**
* 报名截止时间yyyy-MM-dd HH:mm
*/
@NotBlank(message = "报名截止时间不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "报名截止时间不能为空", groups = {AddUserShowGroup.class})
private String signUpEndTime;
/**
* 报名条件
*/
@NotBlank(message = "报名条件不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "报名条件不能为空", groups = {AddUserShowGroup.class})
private String requirement;
/**
* 签到开始时间yyyy-MM-dd HH:mm
*/
@NotBlank(message = "签到开始时间不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "签到开始时间不能为空", groups = {AddUserShowGroup.class})
private String signInStartTime;
/**
* 签到结束时间: yyyy-MM-dd HH:mm
*/
@NotBlank(message = "签到结束时间不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "签到结束时间不能为空", groups = {AddUserShowGroup.class})
private String signInEndTime;
/**
* 签到地址
*/
@NotBlank(message = "签到地址不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "签到地址不能为空", groups = {AddUserShowGroup.class})
private String signInAddress;
/**
* 签到地址-纬度
*/
@NotBlank(message = "签到地址-纬度不能为空", groups = {AddUserInternalGroup.class })
@NotBlank(message = "签到地址-纬度不能为空", groups = {AddUserInternalGroup.class})
private String signInLatitude;
/**
* 签到地址-经度
*/
@NotBlank(message = "签到地址-经度不能为空", groups = {AddUserInternalGroup.class })
@NotBlank(message = "签到地址-经度不能为空", groups = {AddUserInternalGroup.class})
private String signInLongitude;
/**
@ -152,31 +163,30 @@ public class SaveActInfoFormDTO implements Serializable {
/**
* 主办方id
*/
@NotBlank(message = "主办方id不能为空", groups = {AddUserInternalGroup.class })
@NotBlank(message = "主办方id不能为空", groups = {AddUserInternalGroup.class})
private String sponsorId;
/**
* 主办方类型以网格名义grid , 以机关名义 agency
*/
@NotBlank(message = "主办方类型不能为空", groups = {AddUserInternalGroup.class })
@NotBlank(message = "主办方类型不能为空", groups = {AddUserInternalGroup.class})
private String sponsorType;
/**
* 主办方名称
*/
@NotBlank(message = "主办方名称不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "主办方名称不能为空", groups = {AddUserShowGroup.class})
private String sponsorName;
/**
* 联系人
* 联系人
*/
@NotBlank(message = "联系人不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "联系人不能为空", groups = {AddUserShowGroup.class})
private String sponsorContacts;
/**
* 联系电话
*/
@NotBlank(message = "联系电话不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "联系电话不能为空", groups = {AddUserShowGroup.class})
private String sponsorTel;
}

25
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/ActPreviewContentResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.result.work;
import lombok.Data;
import java.io.Serializable;
/**
* 活动预览详情页-活动内容详情
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/21 17:39
*/
@Data
public class ActPreviewContentResultDTO implements Serializable {
private static final long serialVersionUID = -3351984717336783565L;
/**
* 内容
*/
private String content;
/**
* 内容类型 图片img文字text
*/
private String contentType;
}

76
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/ActPreviewResultDTO.java

@ -1,8 +1,11 @@
package com.epmet.dto.result.work;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 活动预览-查看活动详情返参修改
@ -13,4 +16,77 @@ import java.io.Serializable;
@Data
public class ActPreviewResultDTO implements Serializable {
private static final long serialVersionUID = 8655407962470027973L;
/**
* 活动草稿id
*/
private String actDraftId;
/**
* 活动标题
*/
private String title;
/**
* 活动人数
*/
private Integer actQuota;
/**
* true:固定名额 false 不限制名额
*/
private Boolean actQuotaCategory;
/**
* 活动积分
*/
private Integer reward;
/**
* 活动开始时间yyyy-MM-dd HH:mm
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date actStartTime;
/**
* 活动结束时间yyyy-MM-dd HH:mm
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date actEndTime;
/**
* 活动地点
*/
private String actAddress;
/**
* 报名截止时间yyyy-MM-dd HH:mm
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signUpEndTime;
/**
* 报名条件
*/
private String requirement;
/**
* 主办方名称
*/
private String sponsorName;
/**
* 联系人
*/
private String sponsorContacts;
/**
* 联系电话
*/
private String sponsorTel;
/**
* 活动详情
*/
private List<ActPreviewContentResultDTO> actContent;
}

12
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/LatestDraftActInfoResultDTO.java

@ -39,13 +39,13 @@ public class LatestDraftActInfoResultDTO implements Serializable {
/**
* 报名开始时间
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signUpStartTime;
/**
* 报名截止时间
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signUpEndTime;
/**
@ -56,13 +56,13 @@ public class LatestDraftActInfoResultDTO implements Serializable {
/**
* 活动预计开始时间
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date actStartTime;
/**
* 活动预计结束时间
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date actEndTime;
/**
@ -83,13 +83,13 @@ public class LatestDraftActInfoResultDTO implements Serializable {
/**
* 签到开始时间
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInStartTime;
/**
* 签到截止时间
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date signInEndTime;
/**

10
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LatestActContentService.java

@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.LatestActContentDTO;
import com.epmet.dto.result.work.ActDraftContentDTOResultDTO;
import com.epmet.dto.result.work.ActPreviewContentResultDTO;
import com.epmet.entity.LatestActContentEntity;
import java.util.List;
@ -121,4 +122,13 @@ public interface LatestActContentService extends BaseService<LatestActContentEnt
* @Date 2020/7/20 22:59
**/
List<ActDraftContentDTOResultDTO> selectActContentList(String actId);
/**
* @return java.util.List<com.epmet.dto.result.work.ActPreviewContentResultDTO>
* @param actDraftId latest_act_info主键
* @author yinzuomei
* @description 预览-查看活动详情
* @Date 2020/7/21 17:47
**/
List<ActPreviewContentResultDTO> previewActContent(String actDraftId);
}

10
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LatestActInfoService.java

@ -20,6 +20,7 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.LatestActInfoDTO;
import com.epmet.dto.result.work.ActPreviewResultDTO;
import com.epmet.dto.result.work.LatestDraftActInfoResultDTO;
import com.epmet.entity.LatestActInfoEntity;
@ -130,4 +131,13 @@ public interface LatestActInfoService extends BaseService<LatestActInfoEntity> {
* @Date 2020/7/20 22:59
**/
LatestDraftActInfoResultDTO getLatestActDraft(String userId);
/**
* @return com.epmet.dto.result.work.ActPreviewResultDTO
* @param actDraftId latest_act_info主键
* @author yinzuomei
* @description 预览-查看活动详情
* @Date 2020/7/21 17:45
**/
ActPreviewResultDTO previewActInfo(String actDraftId);
}

13
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LatestActContentServiceImpl.java

@ -26,6 +26,7 @@ import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.dao.LatestActContentDao;
import com.epmet.dto.LatestActContentDTO;
import com.epmet.dto.result.work.ActDraftContentDTOResultDTO;
import com.epmet.dto.result.work.ActPreviewContentResultDTO;
import com.epmet.entity.LatestActContentEntity;
import com.epmet.redis.LatestActContentRedis;
import com.epmet.service.LatestActContentService;
@ -140,4 +141,16 @@ public class LatestActContentServiceImpl extends BaseServiceImpl<LatestActConten
return baseDao.selectActContentList(actId);
}
/**
* @param actDraftId latest_act_info主键
* @return java.util.List<com.epmet.dto.result.work.ActPreviewContentResultDTO>
* @author yinzuomei
* @description 预览-查看活动详情
* @Date 2020/7/21 17:47
**/
@Override
public List<ActPreviewContentResultDTO> previewActContent(String actDraftId) {
return null;
}
}

13
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LatestActInfoServiceImpl.java

@ -26,6 +26,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.LatestActInfoDao;
import com.epmet.dto.LatestActInfoDTO;
import com.epmet.dto.result.work.ActPreviewResultDTO;
import com.epmet.dto.result.work.LatestDraftActInfoResultDTO;
import com.epmet.entity.LatestActInfoEntity;
import com.epmet.redis.LatestActInfoRedis;
@ -164,5 +165,17 @@ public class LatestActInfoServiceImpl extends BaseServiceImpl<LatestActInfoDao,
return baseDao.selectLatestActDraft(userId);
}
/**
* @param actDraftId latest_act_info主键
* @return com.epmet.dto.result.work.ActPreviewResultDTO
* @author yinzuomei
* @description 预览-查看活动详情
* @Date 2020/7/21 17:45
**/
@Override
public ActPreviewResultDTO previewActInfo(String actDraftId) {
return null;
}
}

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

@ -131,7 +131,14 @@ public class WorkActDraftServiceImpl implements WorkActDraftService {
**/
@Override
public ActPreviewResultDTO previewActDetail(ActPreviewFormDTO formDTO) {
return null;
ActPreviewResultDTO actPreviewResultDTO = latestActInfoService.previewActInfo(formDTO.getActDraftId());
if (null != actPreviewResultDTO) {
List<ActPreviewContentResultDTO> actContent = latestActContentService.previewActContent(formDTO.getActDraftId());
if (null != actContent && actContent.size() > 0) {
actPreviewResultDTO.setActContent(actContent);
}
}
return actPreviewResultDTO;
}
private List<LatestActContentDTO> constructLatestActContent(List<DraftActContentFormDTO> actContent,String actDraftId) {

Loading…
Cancel
Save