package com.kidgrow.oprationcenter.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.NotEmpty;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020
*
* @version 1.0
* @Description:
* @Project: 用户中心
* @CreateDate: Created in 2020-09-17 17:24:49
* @Author: liuke
*/
@Data
@EqualsAndHashCode(callSuper = false)
@NoArgsConstructor
@AllArgsConstructor
@TableName("saas_client_pay")
public class SaasClientPay {
private static final long serialVersionUID = 1L;
@TableId(value = "id",type = IdType.UUID)
private String id;
/**
* 诊断医生所在科室
*/
@NotEmpty(message = "科室的名称不能为空")
private String createHospitalDepartment;
/**
* 科室的唯一标识
*/
@NotEmpty(message = "科室的唯一标识不能为空")
private String createHospitalDepartid;
/**
* 创建医院的唯一标识
*/
@NotNull(message = "创建医院的唯一标识不能为空")
private Long createHospitalId;
/**
* 创建医院名称
*/
@NotEmpty(message = "医院名称不能为空")
private String createHospitalName;
/**
* 医生id
*/
@NotEmpty(message = "医生id不能为空")
private String createDoctorId; /**
* 医生姓名
*/
@NotEmpty(message = "医生姓名不能为空")
private String createDoctorName;
/**
* 金额 (单位为分)
*/
private Integer payPrice;
/**
* 内部订单号
*/
private String outTradeNo;
/**
* 支付完成时间
*/
private Date payTime;
/**
* 支付状态0订单创建1订单提交到网关2订单支付成功-1订单支付失败
*/
private Integer payStatus;
/**
* 支付方式,暂时只用微信和支付宝0为微信1为支付宝
*/
private Integer payMethod;
/**
* 关联诊断记录ID
*/
@NotEmpty(message = "关联诊断记录ID不能为空")
private String diaId;
/**
* 孩子的id
*/
@NotEmpty(message = "孩子的id")
private String childId;
/**
* 支付宝交易号 微信支付订单号
*/
private String tradeNo;
/**
* 微信生成的预支付会话标识
*/
private String prepayId;
/**
* 支付给喜高的费用
*/
private Integer payKidgrow;
/**
支付给客户的费用
*/
private Integer payCustom;
/**
* 支付状态
*/
private Boolean type;
private String childName;
/**
* 孩子的出生日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai")
private Date childBirthday;
/**
* 孩子的性别
*/
private Integer childSex;
@JsonSerialize(
using = ToStringSerializer.class
)
@DateTimeFormat(
pattern = "yyyy-MM-dd HH:mm:ss"
)
@JsonFormat(
timezone = "GMT+8",
pattern = "yyyy-MM-dd HH:mm:ss"
)
@TableField(
fill = FieldFill.INSERT
)
private Date createTime;
@DateTimeFormat(
pattern = "yyyy-MM-dd HH:mm:ss"
)
@JsonFormat(
timezone = "GMT+8",
pattern = "yyyy-MM-dd HH:mm:ss"
)
@TableField(
fill = FieldFill.INSERT_UPDATE
)
private Date updateTime;
@JsonSerialize(
using = ToStringSerializer.class
)
@TableField(
fill = FieldFill.INSERT
)
private long createUserId;
@TableField(
fill = FieldFill.INSERT
)
private String createUserName;
@JsonSerialize(
using = ToStringSerializer.class
)
@TableField(
fill = FieldFill.INSERT_UPDATE
)
private long updateUserId;
@TableField(
fill = FieldFill.INSERT_UPDATE
)
private String updateUserName;
}