package org.dromara.web.domain.vo;

import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.web.domain.PatientAccount;

import java.io.Serial;
import java.io.Serializable;



/**
 * 患者账户信息视图对象 patient_account
 *
 * @author Lion Li
 * @date 2025-08-07
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PatientAccount.class)
public class PatientAccountVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @ExcelProperty(value = "主键ID")
    private Long id;

    /**
     * 患者ID
     */
    @ExcelProperty(value = "患者ID")
    private Long patientId;

    /**
     * 患者姓名
     */
    @ExcelProperty(value = "患者姓名")
    private String patientName;

    /**
     * 患者病例ID
     */
    @ExcelProperty(value = "患者病例ID")
    private Long patientCaseId;

    /**
     * 身份证号
     */
    @ExcelProperty(value = "身份证号")
    private String idCard;

    /**
     * 性别：1-男，2-女
     */
    @ExcelProperty(value = "性别：1-男，2-女")
    private Long sex;

    /**
     * 联系电话
     */
    @ExcelProperty(value = "联系电话")
    private String phone;

    /**
     * 账户
     */
    @ExcelProperty(value = "账户")
    private String serialNo;

    /**
     * 账户余额
     */
    @ExcelProperty(value = "账户余额")
    private Long totalAmount;

    /**
     * 账户充值
     */
    @ExcelProperty(value = "账户充值")
    private Long totalIncome;

    /**
     * 账户消费
     */
    @ExcelProperty(value = "账户消费")
    private Long totalExpand;

    /**
     * 待缴金额
     */
    @ExcelProperty(value = "待缴金额")
    private Long unpaidAmount;

    /**
     * 可用金额
     */
    @ExcelProperty(value = "可用金额")
    private Long availableAmount;

    /**
     * 授信金额
     */
    @ExcelProperty(value = "授信金额")
    private Long creditAmount;

    /**
     * 可用授信额度
     */
    @ExcelProperty(value = "可用授信额度")
    private Long creditLimit;

    /**
     * 状态：0-正常，1-禁用
     */
    @ExcelProperty(value = "状态：0-正常，1-禁用")
    private Long status;

    /**
     * 激活状态：0-未激活，1-已激活
     */
    @ExcelProperty(value = "激活状态：0-未激活，1-已激活")
    private Long activated;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     * 待处理事项
     */
    @ExcelProperty(value = "待处理事项")
    private String waitingTask;

    /**
     * 患者科室
     */
    private Long doorId;

    /**
     * 门诊/住院号
     */
    private String patientNo;

    /**
     * 病区
     */
    private Long wardId;

    /**
     * 病区名称
     */
    private String wardName;

    private String deptName;

    /**
     * 诊疗卡号
     */
    private String treatNum;

    private String visitType;


}
