package com.ltkj.hosp.domain; import java.io.File; import java.util.Date; import java.util.List; 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 com.ltkj.common.annotation.Excel; import com.ltkj.common.annotation.Excels; import com.ltkj.common.core.domain.BaseEntity; import com.ltkj.common.core.domain.entity.SysDept; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import org.springframework.web.multipart.MultipartFile; /** * 体检记录对象 tj_order * * @author ltkj * @date 2022-11-21 */ @Data @NoArgsConstructor @AllArgsConstructor @ApiModel(value = "体检记录对象") public class TjOrder extends BaseEntity { private static final long serialVersionUID = 1L; /** * 主键id */ @TableId(type = IdType.AUTO) @JsonSerialize(using = ToStringSerializer.class) private Long orderId; @TableField(exist = false) private File files; /** * 用户id(外键) */ @ApiModelProperty(value = "用户id") @JsonSerialize(using = ToStringSerializer.class) private Long userId; /** * 客户对象 */ @TableField(exist = false) @ApiModelProperty(value = "客户对象") // @Excel(name = "客户名称", targetAttr = "cusName", type = Excel.Type.EXPORT, defaultValue = "无") private TjCustomer customer; /** * 体检类型 */ @Excel(name = "体检类型", readConverterExp = "2=个人,1=团队") @ApiModelProperty(value = "体检类型") private String tjType; /** * 体检号(时间戳生成) */ @Excel(name = "体检号") @ApiModelProperty(value = "体检号") private String tjNumber; /** * 流水号(时间戳生成) */ // @Excel(name = "流水号", defaultValue = "无") @ApiModelProperty(value = "流水号") @JsonSerialize(using = ToStringSerializer.class) private String tjSerialNumber; /** * 所选套餐(绑定套餐表) */ // @Excel(name = "所选套餐", defaultValue = "无") @ApiModelProperty(value = "所选套餐") @JsonSerialize(using = ToStringSerializer.class) private String pacId; @TableField(exist = false) @Excel(name = "套餐名") private String pacName; /** * 体检完成时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", defaultValue = "暂未完成") @ApiModelProperty(value = "体检完成时间") @TableField(fill = FieldFill.INSERT_UPDATE, updateStrategy = FieldStrategy.IGNORED) private Date finishTime; /** * 出报告时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "报告时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", defaultValue = "暂无报告") @ApiModelProperty(value = "出报告时间") @TableField(fill = FieldFill.INSERT_UPDATE) private Date reportTime; /** * 单位ID(外键) */ @ApiModelProperty(value = "单位ID") // @Excel(name = "单位ID", defaultValue = "无") @JsonSerialize(using = ToStringSerializer.class) private String firmId; @ApiModelProperty(value = "单位名称") @Excel(name = "单位") private String firmName; /** * 部门名 */ @Excel(name = "部门", defaultValue = "无") @ApiModelProperty(value = "部门") private String firmDeptName; /** * 在单位工号 */ @Excel(name = "工号", defaultValue = "无") @ApiModelProperty(value = "在单位工号") @JsonSerialize(using = ToStringSerializer.class) private String firmWorkId; @ApiModelProperty(value = "客户照片") private String photo; /** * 总检医生名字 */ @Excel(name = "总检医生", defaultValue = "无") @ApiModelProperty(value = "总检医生") @TableField(fill = FieldFill.INSERT_UPDATE) private String checkDoctor; /** * 总检时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "总检时间", defaultValue = "无", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "总检时间") @TableField(fill = FieldFill.INSERT_UPDATE) private Date checkTime; /** * 总体建议 */ // @Excel(name = "总体建议", defaultValue = "无") @ApiModelProperty(value = "总体建议") private String checkAdvice; /** * 发布时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") // @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", defaultValue = "暂未发布") @ApiModelProperty(value = "发布时间") @TableField(fill = FieldFill.INSERT_UPDATE) private Date releaseTime; /** * 是否发送邮件 */ // @Excel(name = "是否发送邮件", readConverterExp = "1=已发送,0=未发送") @ApiModelProperty(value = "是否发送邮件") private String sendEmail; /** * 是否发送短信 */ // @Excel(name = "是否发送短信", readConverterExp = "1=已发送,0=未发送") @ApiModelProperty(value = "是否发送短信") private String sendMessage; @Excel(name = "总检审核状态", readConverterExp = "1=已审核,0=未审核") @ApiModelProperty(value = "总检审核状态") private Integer checkStatus; /** * 是否复检 */ // @Excel(name = "是否复检", readConverterExp = "1=否,0=是") @ApiModelProperty(value = "是否复检") private Integer isReturn; /** * 报告最后打印时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = " 打印时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", defaultValue = "无") @ApiModelProperty(value = "报告最后打印时间") @TableField(fill = FieldFill.INSERT_UPDATE) private Date printLastTime; /** * 报告最后下载时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") // @Excel(name = "web最后下载报告时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", defaultValue = "无") @ApiModelProperty(value = "报告最后下载时间") @TableField(fill = FieldFill.INSERT_UPDATE) private Date downloadLastTime; /** * 所在单位名称 */ @TableField(exist = false) @ApiModelProperty(value = "所在单位名称") // @Excel(name = "单位") private String dictCompName; /** * 所选套餐信息名称 */ @TableField(exist = false) @ApiModelProperty(value = "所选套餐信息名称") // @Excel(name = "") private String tjPackageName; /** * 体检记录中的客户名字 */ @TableField(exist = false) @ApiModelProperty(value = "体检记录中的客户名字") @Excel(name = "姓名") private String tjCustomerName; /** * 体检记录中的客户性别 */ @TableField(exist = false) @ApiModelProperty(value = "体检记录中的客户性别") @Excel(name = "性别", readConverterExp = "0=男,1=女") private Long tjCustomerSex; /** * 体检记录中的客户年龄 */ @TableField(exist = false) @ApiModelProperty(value = "体检记录中的客户年龄") @Excel(name = "年龄") private Integer tjCustomerAge; /** * 体检记录中的客户电话 */ @TableField(exist = false) @ApiModelProperty(value = "体检记录中的客户电话") @Excel(name = "电话") private String tjCustomerPhone; /** * 体检记录中的客户身份证号码 */ @TableField(exist = false) @ApiModelProperty(value = "体检记录中的客户身份证号码") @Excel(name = "证件号") private String tjCusIdCard; /** * 该体检记录中的详情项目记录 */ @TableField(exist = false) @ApiModelProperty(value = "该体检记录中的单项详情项目记录") private List tjOrderList; /** * 该体检记录对应的流水订单对象 */ @TableField(exist = false) @ApiModelProperty(value = "该体检记录对应的流水订单对象") private TjFlowingWater tjFlowingWater; /** * 该体检记录中的收费详情记录 */ @TableField(exist = false) @ApiModelProperty(value = "该体检记录中的收费详情记录") private List tjChargingStandardList; /** * 登记时间集合 */ @TableField(exist = false) @ApiModelProperty(value = "登记时间集合") private List createTimeList; /** * 完成时间集合 */ @TableField(exist = false) @ApiModelProperty(value = "完成时间集合") private List finishTimeList; /** * 出报告集合 */ @TableField(exist = false) @ApiModelProperty(value = "报告时间集合") private List reportTimeList; /** * 条码 */ @ApiModelProperty(value = "条码") private String tm; @ApiModelProperty("团队编号") private String teamNo; /** * 体检完成状态 */ @TableField(exist = false) @ApiModelProperty(value = "体检完成状态") private String tjFinishStatus; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "发票打印时间") @TableField(exist = false) private Date printTime; @ApiModelProperty(value = "发票打印人员") @TableField(exist = false) private String printName; @ApiModelProperty("证件类型") @TableField(exist = false) private String idType; @ApiModelProperty("年龄单位") @TableField(exist = false) private String ageUnit; @ApiModelProperty("职业") @TableField(exist = false) private String career; @ApiModelProperty("已打印未打印") @TableField(exist = false) private Integer type = 0; @ApiModelProperty("个人模板id") @TableField(exist = false) private String grMoBanId; @ApiModelProperty("体检次数") @TableField(exist = false) private String tjCount; @ApiModelProperty("微信支付订单主键id") @TableField(updateStrategy = FieldStrategy.IGNORED) private String mallOrderId; /** * 体检状态 */ // @Excel(name = "体检状态", defaultValue = "无") @ApiModelProperty(value = "体检状态") private Integer status; /** * 初审 */ @ApiModelProperty(value = "初审医生") private String confirmDoctor; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "初审时间") @TableField(fill = FieldFill.UPDATE) private Date confirmTime; @ApiModelProperty(value = "初审驳回理由") // 0同意1拒绝 private String confirmStatus; @ApiModelProperty(value = "分组id") private String groupId; @ApiModelProperty(value = "分组id") private String firmDeptId; /** * 核收状态 */ @ApiModelProperty(value = "核收状态") private Integer heshouStatus; /** * 核收人 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "核收时间") @TableField(fill = FieldFill.UPDATE) private Date heshouTime; /** * 核收人 */ @ApiModelProperty(value = "核收人") @TableField(fill = FieldFill.UPDATE) private String heshouDoctor; /** * 有无会诊 */ @ApiModelProperty(value = "有无会诊") private Integer isHz; /** * 报告领取方式 */ @ApiModelProperty(value = "报告领取方式") private String getType; /** * 报告领取地址 */ @TableField(exist = false) private TjReportGetAddress addAddress; /** * 体检类别 */ @ApiModelProperty("体检类别") // @Excel(name = "体检类别") private String tjCategory; @ApiModelProperty("就诊编号") @Excel(name = "就诊编号") private String cardId; @ApiModelProperty("预约号") private String reservationId; @ApiModelProperty(value = "折扣") private String discount; @TableField(exist = false) private Integer dycs; @TableField(exist = false) @Excel(name = "体检状态") private String zt; /** * 接害工龄年 */ private String zhiyeJhgln; /** * 接害工龄月 */ private String zhiyeJhgly; /** * 开始接害日期 */ private Date zhiyeKsjhrq; /** * 工号 */ private String zhiyeGh; /** * 车间 */ private String zhiyeCj; @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) .append("orderId", getOrderId()) .append("userId", getUserId()) .append("tjType", getTjType()) .append("tjNumber", getTjNumber()) .append("tjSerialNumber", getTjSerialNumber()) .append("pacId", getPacId()) .append("createTime", getCreateTime()) .append("finishTime", getFinishTime()) .append("updateTime", getUpdateTime()) .append("reportTime", getReportTime()) .append("createBy", getCreateBy()) .append("updateBy", getUpdateBy()) .append("deleted", getDeleted()) .append("firmId", getFirmId()) .append("firmDeptName", getFirmDeptName()) .append("firmWorkId", getFirmWorkId()) .toString(); } }