package cn.iocoder.yudao.module.crm.dal.dataobject.refund; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.crm.enums.DictTypeConstants; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.math.BigDecimal; import java.time.LocalDateTime; /** * CRM 退费单 DO * * @author 超级管理员 */ @TableName("crm_refund") @KeySequence("crm_refund_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class CrmRefundDO extends BaseDO { @TableId private Long id; private String refundNo; private Long customerId; private String customerName; private Long contractId; private String contractNo; /** * 退费类型:电费退费/服务退订/容量退费(字典 crm_refund_type) */ private String refundType; private BigDecimal refundAmount; private String refundReason; private Long applyUserId; private String applyUserName; private LocalDateTime applyTime; /** * 审批状态 * * 枚举 {@link cn.iocoder.yudao.module.crm.enums.common.CrmAuditStatusEnum} */ private Integer auditStatus; /** * 审核人用户编号 * * 审批人由「系统管理 - 审批配置」按业务类型统一配置(业务编码 refund_approve), * 提交时不指定;此处记录实际执行审核的用户。 */ private Long reviewerId; /** 审核人姓名(审核时冗余记录,避免列表展示再查用户) */ private String reviewerName; /** 审核时间 */ private LocalDateTime reviewTime; /** 审核意见(审核通过时的意见 / 审核不通过时的原因) */ private String reviewRemark; private String remark; }