
package com.tmerclub.cloud.biz.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * DTO
 *
 * @author lhd
 * @date 2021-05-14 09:35:32
 */
@Data
@ToString
public class NotifyLogDTO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "消息记录表")
    private Long logId;

    @Schema(description = "用户昵称or手机号")
    private String nickName;

    @Schema(description = "发送手机号")
    private String userMobile;

    @Schema(description = "通知的用户id")
    private String remindId;

    @Schema(description = "系统类型 0用户端 1商家端 2平台端 3供应商端")
    private Integer sysType;

    @Schema(description = "店铺id")
    private Long shopId;

    @Schema(description = "店铺名称")
    private String shopName;

    @Schema(description = "关联的订单id(等级)")
    private Long bizId;

    @Schema(description = "通知类型 1.短信发送 2.公众号订阅消息 3.站内消息")
    private Integer remindType;

    @Schema(description = "通知模板")
    private Long templateId;

    @Schema(description = "1.订单催付 2.付款成功通知 3.商家同意退款 4.商家拒绝退款 5.核销提醒 6.发货提醒 7.拼团失败提醒 8.拼团成功提醒 9.拼团开团提醒 10.会员升级提醒 101.退款临近超时提醒 102.确认收货提醒 103.买家发起退款提醒 104.买家已退货提醒 105用户支付成功提醒 106商品下架提醒 107商品审核结果提醒 108代销商品变更提醒 109待发货提醒 110待采购提醒 111待收货提醒 112营销活动下架 113活动审核结果提醒")
    private Integer sendType;

    @Schema(description = "通知内容")
    private String message;

    @Schema(description = "是否阅读 1已读 0未读")
    private Integer status;

    /**
     * 开始时间
     */
    @Schema(description = "发布开始时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /**
     * 结束时间
     */
    @Schema(description = "发布结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;


}
