package com.example.demo.domain.entity; import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serial; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; import java.util.HashSet; import java.util.List; import java.util.Set; @Data @NoArgsConstructor @JsonIgnoreProperties(ignoreUnknown = true) public class User implements Serializable { @Serial private static final long serialVersionUID = 1L; private Integer id; // 客户id private Integer jwcode; // 精网号 private String name; // 客户姓名 private String market; // 所属地区 @ExcelIgnore private String marketName; // 所属地区 @ExcelIgnore private BigDecimal sumPermanentGold; // 历史永久金币 @ExcelIgnore private BigDecimal sumFreeJune; // 历史六月免费金币 @ExcelIgnore private BigDecimal sumFreeDecember; // 历史十二月免费金币 @ExcelIgnore private BigDecimal sumTaskGold; // 历史任务金币 private BigDecimal sumGold;// 金币总数 private BigDecimal currentPermanentGold; // 当前永久金币 private BigDecimal currentFreeJune; // 当前六月免费金币 private BigDecimal currentFreeDecember; // 当前十二月免费金币 private BigDecimal currentTaskGold; // 当前任务金币 private Integer rechargeNum; // 充值次数 @ExcelIgnore private Integer sumConsume; // 历史消费 private Integer consumeNum; // 消费次数 @ExcelIgnore private BigDecimal sumConsumePermanent; @ExcelIgnore private BigDecimal sumConsumeTask; @ExcelIgnore private BigDecimal sumConsumeFree; @ExcelIgnore private List markets; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") private Date firstRecharge; // 首充日期 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") private Date createTime; // 创建时间 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") private Date updateTime; // 更新时间 @ExcelIgnore private String sortField; //排序字段 @ExcelIgnore private String sortOrder; //排序顺序 @ExcelIgnore private Integer flag;//是否员工号 @ExcelIgnore private Integer UserFlag;//是否员工号 @ExcelIgnore private Set roles = new HashSet<>(); // 用户角色集合 public boolean hasRole(String role) { return roles != null && roles.contains(role); } }