package com.ruoyi.system.domain; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.Date; /** * 医疗保险账户实体类 */ @Data public class MedicalInsuranceAccount { // 医疗保险账户ID @TableId(type = IdType.AUTO) private Integer id; // 用户ID private Integer userId; // 保单ID private Integer policyId; // 保险产品ID private Integer productId; // 保险总额度 private BigDecimal totalQuota; // 账户余额(用户申请使用才扣) private BigDecimal remainingBalance ; //待领金额 private BigDecimal amountClaimed; //已领取金额 private BigDecimal alreadyReceived; // 已使用金额(用户申请使用才增加) private BigDecimal amountAlreadyUsed; // 账户生效日期 private LocalDate effectiveDate; // 账户失效日期 private LocalDate expiryDate; // 账户状态 private AccountStatus accountStatus; // 创建时间 private Date createdAt; // 更新时间 private Date updatedAt; // 账户状态枚举 public enum AccountStatus { ACTIVE("生效中"), SUSPENDED("已暂停"), CLOSED("已关闭"), PENDING("待生效"); private final String description; AccountStatus(String description) { this.description = description; } public String getDescription() { return description; } } }