package com.xinelu.manage.domain.signpatientpackage;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinelu.common.annotation.Excel;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 签约患者服务包信息对象 sign_patient_package
 *
 * @author haown
 * @date 2024-02-27
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "签约患者服务包信息对象", description = "sign_patient_package")
public class SignPatientPackage extends BaseEntity {

	private static final long serialVersionUID=1L;

    /** 主键id */
    private Long id;

    /** 患者信息表id */
    @ApiModelProperty(value = "患者信息表id")
    @Excel(name = "患者信息表id")
    private Long patientId;

	/** 患者签约记录表id */
	@ApiModelProperty(value = "患者签约记录表id")
	@Excel(name = "患者签约记录表id")
	private Long signPatientRecordId;

    /** 服务包表id */
    @ApiModelProperty(value = "服务包表id")
    @Excel(name = "服务包表id")
    private Long servicePackageId;

    /** 服务包名称 */
    @ApiModelProperty(value = "服务包名称")
    @Excel(name = "服务包名称")
    private String packageName;

    /** 服务包缴费状态，已缴费：PAID，未交费：UNPAID_FEES */
    @ApiModelProperty(value = "服务包缴费状态，已缴费：PAID，未交费：UNPAID_FEES")
    @Excel(name = "服务包缴费状态，已缴费：PAID，未交费：UNPAID_FEES")
    private String packagePaymentStatus;

    /** 服务包价格，小数点后两位 */
    @ApiModelProperty(value = "服务包价格，小数点后两位")
    @Excel(name = "服务包价格，小数点后两位")
    private BigDecimal packagePrice;

    /** 服务开始时间，格式：yyyy-MM-dd HH:mm:ss */
    @ApiModelProperty(value = "服务开始时间，格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "服务开始时间，格式：yyyy-MM-dd HH:mm:ss", width = 30, dateFormat = "yyyy-MM-dd")
    private LocalDateTime serviceStartTime;

    /** 服务结束时间，格式：yyyy-MM-dd HH:mm:ss */
    @ApiModelProperty(value = "服务结束时间，格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "服务结束时间，格式：yyyy-MM-dd HH:mm:ss", width = 30, dateFormat = "yyyy-MM-dd")
    private LocalDateTime serviceEndTime;

	/**
	 * 服务包期限
	 */
	@ApiModelProperty(value = "服务包期限")
	@Excel(name = "服务包期限")
	private Integer packageTerm;

	/**
	 * 服务包期限单位，年，月，日
	 */
	@ApiModelProperty(value = "服务包期限单位，年，月，日")
	@Excel(name = "服务包期限单位，年，月，日")
	private String packageTermUnit;

}
