Commit e326ba8c by 裴大威

Merge branch 'feature-zp-1002313new' into 'master'

feat 1002313

See merge request rays/pcloud-book!388
parents 7a22e2f6 0792ded9
......@@ -310,9 +310,29 @@ public class PushCheck {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "缺少立即发送字段");
}
if (!addParamDTO.getSendNow()) {
if (StringUtil.isEmpty(addParamDTO.getSendTime()) || DateUtils.getDateByStr(addParamDTO.getSendTime()).before(new Date())) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "自定义发送时间设置有误");
if (StringUtil.isEmpty(addParamDTO.getSendTime())) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "自定义发送时间不能为空");
}
String s="00,01,02,03,04";
if (s.contains(addParamDTO.getSendTime().substring(0,2))) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "自定义发送时间不正确");
}
if (StringUtil.isEmpty(addParamDTO.getStartTime())) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "自定义发送开始时间不能为空");
}
if (StringUtil.isEmpty(addParamDTO.getEndTime())) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "自定义发送结束时间不能为空");
}
if (null==addParamDTO.getPushType()) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "发送类型不能为空");
}
if (addParamDTO.getPushType()==2) {
if (StringUtil.isEmpty(addParamDTO.getWeekDays())) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "自定义发送周机不能为空");
}
}
}
if (ListUtils.isEmpty(addParamDTO.getPushItemList())) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "发送消息为空");
......
......@@ -38,6 +38,23 @@ public class SelfPushAddParamDTO {
* 发送时间
*/
private String sendTime;
/**
* 开始时间
*/
private String startTime;
/**
* 结束时间
*/
private String endTime;
/**
推送时间类型(1:每天发送 2:每周发送)
*/
private Integer pushType;
/**
*周几
*/
private String weekDays;
private String systemCode;
......
......@@ -91,5 +91,26 @@ public class SelfPushRecordDTO extends BaseDto{
@ApiModelProperty("创建人账号")
private String userName;
@ApiModelProperty("计划发送时间")
private String pushSendTime;
@ApiModelProperty("周几")
private String weekDays;
@ApiModelProperty("时间推送类型")
private Integer pushType;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("开始时间")
private Date startTime;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("结束时间")
private Date endTime;
@ApiModelProperty("发送时间拼接")
private String realSendTime;
}
......@@ -33,6 +33,25 @@ public class SelfPush extends BaseEntity{
private Boolean sendNow;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("开始时间")
private Date startTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("结束时间")
private Date endTime;
@ApiModelProperty("推送时间类型(1:每天发送 2:每周发送)")
private Integer pushType;
@ApiModelProperty("周几")
private String weekDays;
@ApiModelProperty("计划发送时间(不带日期)")
private String pushSendTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("发送时间")
private Date sendTime;
......@@ -42,6 +61,46 @@ public class SelfPush extends BaseEntity{
@ApiModelProperty("是否发送所有好友")
private Boolean sendAll;
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public Integer getPushType() {
return pushType;
}
public void setPushType(Integer pushType) {
this.pushType = pushType;
}
public String getWeekDays() {
return weekDays;
}
public void setWeekDays(String weekDays) {
this.weekDays = weekDays;
}
public String getPushSendTime() {
return pushSendTime;
}
public void setPushSendTime(String pushSendTime) {
this.pushSendTime = pushSendTime;
}
public String getAltId() {
return altId;
}
......
......@@ -29,7 +29,7 @@ public class SelfPushServiceImpl implements SelfPushService {
@Override
@RequestMapping(value = "/sendSelfMsgQuartz", method = RequestMethod.POST)
public void sendSelfMsgQuartz(@RequestBody Map<String, Object> map) {
Long pushId = JSON.parseObject(JSON.toJSONString(map.get("pushId")), new TypeReference<Long>() {});
Long pushId = JSON.parseObject(JSON.toJSONString(map.get("selfPushId")), new TypeReference<Long>() {});
if (null ==pushId){
return;
}
......
......@@ -114,7 +114,12 @@
i.create_time createTime,
i.send_time sendTime,
p.send_all sendAll,
p.create_user createUser
p.create_user createUser,
p.start_time startTime,
p.end_time endTime,
p.push_send_time pushSendTime,
p.week_days weekDays,
p.push_type pushType
FROM
self_push_item i
LEFT JOIN self_push p ON i.push_id = p.id
......
......@@ -12,20 +12,28 @@
<result column="send_time" property="sendTime" jdbcType="TIMESTAMP" />
<result column="book_group_id" property="bookGroupId" jdbcType="BIGINT" />
<result column="send_all" property="sendAll" jdbcType="BIT" />
<result column="start_time" property="startTime" jdbcType="TIMESTAMP" />
<result column="end_time" property="endTime" jdbcType="TIMESTAMP" />
<result column="push_type" property="pushType" jdbcType="BIT" />
<result column="week_days" property="weekDays" jdbcType="VARCHAR" />
<result column="push_send_time" property="pushSendTime" jdbcType="VARCHAR" />
</resultMap>
<sql id="Base_Column_List" >
id, alt_id, create_user, create_time, update_user, update_time, send_now, send_time, book_group_id, send_all
id, alt_id, create_user, create_time, update_user, update_time, send_now, send_time, book_group_id, send_all,start_time,end_time,
push_type,week_days,push_send_time
</sql>
<insert id="insert" parameterType="com.pcloud.book.push.entity.SelfPush" useGeneratedKeys="true" keyProperty="id">
insert into self_push (id, alt_id, create_user,
create_time, update_user, update_time, send_now, send_time, book_group_id, send_all
create_time, update_user, update_time, send_now, send_time, book_group_id, send_all,start_time,end_time,
push_type,week_days,push_send_time
)
values (#{id,jdbcType=BIGINT}, #{altId,jdbcType=VARCHAR}, #{createUser,jdbcType=BIGINT},
now(), #{updateUser,jdbcType=BIGINT}, now(), #{sendNow}, #{sendTime}, #{bookGroupId}, #{sendAll}
now(), #{updateUser,jdbcType=BIGINT}, now(), #{sendNow}, #{sendTime}, #{bookGroupId}, #{sendAll},#{startTime},
#{endTime},#{pushType},#{weekDays},#{pushSendTime}
)
</insert>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment