package com.dk.mdm.model.vo.mac; import cn.afterturn.easypoi.excel.annotation.Excel; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.annotation.*; import com.dk.common.infrastructure.annotaiton.ExportTitle; import com.dk.common.infrastructure.handler.JsonTypeHandler; import com.dk.common.infrastructure.handler.TimestampTypeHandler; import com.dk.common.infrastructure.handler.UuidTypeHandler; import com.dk.common.model.pojo.PageInfo; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; /** * 收【退】款单 */ @Data @AllArgsConstructor @NoArgsConstructor @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @ExportTitle("收【退】款单") @TableName(value = "t_mac_receipt", autoResultMap = true) @ApiModel(value="实体类:收【退】款单", description="表名:t_mac_receipt") public class ReceiptVO extends PageInfo implements Serializable { /* * 数据库字段 */ /** * 收款单ID */ // @TableId(value = "receipt_id", type = IdType.AUTO) @ApiModelProperty(value = "收款单ID") @TableField(typeHandler = UuidTypeHandler.class) private String receiptId; /** * 收款单号 */ @Excel(name = "收款单号") @ApiModelProperty(value = "收款单号") private String receiptNo; /** * 收款日期 (账务日期) */ @Excel(name = "收款日期 (账务日期)") @ApiModelProperty(value = "收款日期 (账务日期)") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @TableField(typeHandler = TimestampTypeHandler.class) private LocalDate receiptDate; /** * 收款类型 (【系统字典】收款、退款) */ @Excel(name = "收款类型 (【系统字典】收款、退款)") @ApiModelProperty(value = "收款类型 (【系统字典】收款、退款)") private String receiptType; /** * 销售订单ID (订单开单时收的款,记录此id) */ @Excel(name = "销售订单ID (订单开单时收的款,记录此id)") @ApiModelProperty(value = "销售订单ID (订单开单时收的款,记录此id)") @TableField(typeHandler = UuidTypeHandler.class) private String orderId; /** * 客户ID (账务对象) */ @Excel(name = "客户ID (账务对象)") @ApiModelProperty(value = "客户ID (账务对象)") @TableField(typeHandler = UuidTypeHandler.class) private String cusId; /** * 部门 */ @Excel(name = "部门") @ApiModelProperty(value = "部门") @TableField(typeHandler = UuidTypeHandler.class) private String orgId; /** * 员工 */ @Excel(name = "员工") @ApiModelProperty(value = "员工") @TableField(typeHandler = UuidTypeHandler.class) private String staffId; /** * 收款账户 */ @Excel(name = "收款账户") @ApiModelProperty(value = "收款账户") @TableField(typeHandler = UuidTypeHandler.class) private String receiptMac; /** * 收款金额 */ @Excel(name = "收款金额") @ApiModelProperty(value = "收款金额") private BigDecimal receiptAmt; /** * 应收款单 */ @Excel(name = "应收款单") @ApiModelProperty(value = "应收款单") @TableField(typeHandler = UuidTypeHandler.class) private String receivableId; /** * 优惠金额 */ @Excel(name = "优惠金额") @ApiModelProperty(value = "优惠金额") private BigDecimal waiveAmt; /** * 还款金额 */ @Excel(name = "还款金额") @ApiModelProperty(value = "还款金额") private BigDecimal handleAmt; /** * 剩余金额 (应收金额-优惠金额-还款金额) */ @Excel(name = "剩余金额 (应收金额-优惠金额-还款金额)") @ApiModelProperty(value = "剩余金额 (应收金额-优惠金额-还款金额)") private BigDecimal residueAmt; /** * 备注 */ @Excel(name = "备注") @ApiModelProperty(value = "备注") private String remarks; /** * 附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...) */ @Excel(name = "附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)") @ApiModelProperty(value = "附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)") @TableField(typeHandler = JsonTypeHandler.class) private JSONObject annexPaths; /** * 制单员 */ @Excel(name = "制单员") @ApiModelProperty(value = "制单员") @TableField(typeHandler = UuidTypeHandler.class) private String makeStaff; /** * 制单时间 */ @Excel(name = "制单时间") @ApiModelProperty(value = "制单时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField(typeHandler = TimestampTypeHandler.class) private LocalDateTime makeTime; /** * 有效标识 (1:正常 0:停用) */ @Excel(name = "有效标识 (1:正常 0:停用)") @ApiModelProperty(value = "有效标识 (1:正常 0:停用)") private Boolean flgValid; /** * 企业ID */ @TableField(fill = FieldFill.INSERT) @Excel(name = "企业ID") @ApiModelProperty(value = "企业ID") private Integer cpId; /** * 创建时间 (触发器自动处理) */ @Excel(name = "创建时间 (触发器自动处理)", format = "yyyy-MM-dd HH:mm:ss", width = 20) @ApiModelProperty(value = "创建时间 (触发器自动处理)") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField(typeHandler = TimestampTypeHandler.class) private LocalDateTime opCreateTime; /** * 创建用户 (触发器自动处理) */ @Excel(name = "创建用户 (触发器自动处理)") @ApiModelProperty(value = "创建用户 (触发器自动处理)") @TableField(typeHandler = UuidTypeHandler.class) private String opCreateUserId; /** * 修改时间 (触发器自动处理) */ @Excel(name = "修改时间 (触发器自动处理)", format = "yyyy-MM-dd HH:mm:ss", width = 20) @ApiModelProperty(value = "修改时间 (触发器自动处理)") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField(typeHandler = TimestampTypeHandler.class) private LocalDateTime opUpdateTime; /** * 修改用户 (触发器自动处理) */ @Excel(name = "修改用户 (触发器自动处理)") @ApiModelProperty(value = "修改用户 (触发器自动处理)") @TableField(typeHandler = UuidTypeHandler.class) private String opUpdateUserId; /** * 数据操作应用 (触发器自动处理) */ @Excel(name = "数据操作应用 (触发器自动处理)") @ApiModelProperty(value = "数据操作应用 (触发器自动处理)") private String opAppCode; /** * 数据时间戳 (触发器自动处理) */ @Excel(name = "数据时间戳 (触发器自动处理)") @ApiModelProperty(value = "数据时间戳 (触发器自动处理)") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField(typeHandler = TimestampTypeHandler.class) private LocalDateTime opTimestamp; /** * 数据操作数据库用户 (触发器自动处理) */ @Excel(name = "数据操作数据库用户 (触发器自动处理)") @ApiModelProperty(value = "数据操作数据库用户 (触发器自动处理)") private String opDbUser; /* * 相关属性 * @TableField(exist = false) */ /* * 关联属性 + 查询条件 * @TableField(exist = false) */ private static final long serialVersionUID = 1L; }