package org.dromara.resource.danmi_sms.common;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.EqualsAndHashCode;

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

@EqualsAndHashCode
public class DMSmsSendResultDtl implements Serializable {
  private static final long serialVersionUID = 1L;

  //到达时间
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  private Date receiveTime;

  //具体错误码描述
  private String respMessage;

  //计费数量
  private Integer chargingNum;

  //短信发送请求唯一ID
  private String smsId;

  //短信发送请求唯一ID
  private String phone;

  //响应结果集中返回，短信回执具体状态码
  private String respCode;

  //短信发送状态报告。0：成功；1：失败
  private Integer status;

  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  public void setReceiveTime(Date receiveTime) {
    this.receiveTime = receiveTime;
  }

  public void setRespMessage(String respMessage) {
    this.respMessage = respMessage;
  }

  public void setChargingNum(Integer chargingNum) {
    this.chargingNum = chargingNum;
  }

  public void setSmsId(String smsId) {
    this.smsId = smsId;
  }

  public void setPhone(String phone) {
    this.phone = phone;
  }

  public void setRespCode(String respCode) {
    this.respCode = respCode;
  }

  public void setStatus(Integer status) {
    this.status = status;
  }

  protected boolean canEqual(Object other) {
    return other instanceof DMSmsSendResultDtl;
  }

  public String toString() {
    return "DMSmsSendResultDtl(receiveTime=" + getReceiveTime() + ", respMessage=" + getRespMessage() + ", chargingNum=" + getChargingNum() + ", smsId=" + getSmsId() + ", phone=" + getPhone() + ", respCode=" + getRespCode() + ", status=" + getStatus() + ")";
  }

  public Date getReceiveTime() {
    return this.receiveTime;
  }

  public String getRespMessage() {
    return this.respMessage;
  }

  public Integer getChargingNum() {
    return this.chargingNum;
  }

  public String getSmsId() {
    return this.smsId;
  }

  public String getPhone() {
    return this.phone;
  }

  public String getRespCode() {
    return this.respCode;
  }

  public Integer getStatus() {
    return this.status;
  }
}
