package com.ruoyi.account.api.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Set;
/**
*
*
*
*
* @author luodangjia
* @since 2024-11-21
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("t_app_user")
@ApiModel(value="AppUser对象", description="")
public class AppUser implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
@TableId("id")
private Long id;
@ApiModelProperty(value = "用户类型(1-普通用户,2-门店员工)")
private Integer userType;
@ApiModelProperty(value = "用户")
@TableField("name")
private String name;
@ApiModelProperty("会员名称")
@TableField(exist = false)
private String vipName;
@ApiModelProperty(value = "手机号")
@TableField("phone")
private String phone;
@ApiModelProperty(value = "头像")
@TableField("avatar")
private String avatar;
@ApiModelProperty(value = "会员id")
@TableField("vip_id")
private Integer vipId;
@ApiModelProperty(value = "微信openid")
@TableField("wx_openid")
private String wxOpenid;
@ApiModelProperty(value = "支付宝openid")
@TableField("ali_openid")
private String aliOpenid;
@ApiModelProperty(value = "状态(1=正常,2=冻结,3=注销)")
@TableField("status")
private Integer status;
@ApiModelProperty(value = "添加时间")
@TableField("create_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
@ApiModelProperty(value = "删除(0=否,1=是)")
@TableField("del_flag")
@TableLogic
private Boolean delFlag;
@ApiModelProperty(value = "0否1是第一次添加")
@TableField("first_add")
private Integer firstAdd;
@ApiModelProperty(value = "最后一次登录时间")
@TableField("last_login_time")
private LocalDateTime lastLoginTime;
@ApiModelProperty(value = "顶级推广人id")
@TableField("top_invite_id")
private Long topInviteId;
@ApiModelProperty(value = "推广人id")
@TableField("invite_user_id")
private Long inviteUserId;
@ApiModelProperty(value = "推广人姓名")
@TableField(exist = false)
private String inviteUserName;
@ApiModelProperty(value = "绑定门店id")
@TableField("shop_id")
private Long shopId;
@ApiModelProperty(value = "绑定门店名称")
@TableField(exist = false)
private String shopName;
@ApiModelProperty(value = "绑定门店列表")
@TableField(exist = false)
private List shopNames;
@ApiModelProperty(value = "绑定门店封面")
@TableField(exist = false)
private String shopCover;
@ApiModelProperty(value = "绑定门店地址")
@TableField(exist = false)
private String shopAddress;
@ApiModelProperty(value = "上级人员信息")
@TableField(exist = false)
private AppUser topUser;
@ApiModelProperty(value = "下级人员列表")
@TableField(exist = false)
private List bottomUsers;
@ApiModelProperty(value = "合伙人积分数")
@TableField("part_point")
private Integer partPoint;
@ApiModelProperty(value = "合伙人培育积分数")
@TableField("part_grow_point")
private Integer partGrowPoint;
@ApiModelProperty(value = "消费积分数")
@TableField("shop_point")
private Integer shopPoint;
@ApiModelProperty(value = "返佣积分数")
@TableField("share_point")
private Integer sharePoint;
@ApiModelProperty(value = "消费总金额")
@TableField("shop_amount")
private BigDecimal shopAmount;
@ApiModelProperty(value = "最后消费时间")
@TableField("last_shop_time")
private LocalDateTime lastShopTime;
@ApiModelProperty(value = "账户余额")
@TableField("balance")
private BigDecimal balance;
@ApiModelProperty(value = "可提现金额")
@TableField("withdrawable_amount")
private BigDecimal withdrawableAmount;
@ApiModelProperty(value = "已提现金额")
@TableField("withdrawn_amount")
private BigDecimal withdrawnAmount;
@ApiModelProperty(value = "充值总金额")
@TableField("total_recharge_amount")
private BigDecimal totalRechargeAmount;
@ApiModelProperty(value = "红包总金额")
@TableField("total_red_packet_amount")
private BigDecimal totalRedPacketAmount;
@ApiModelProperty(value = "分销总金额")
@TableField("total_distribution_amount")
private BigDecimal totalDistributionAmount;
@ApiModelProperty(value = "拉新人积分总数")
@TableField("total_invite_point")
private Integer totalInvitePoint;
@ApiModelProperty(value = "注册积分总数")
@TableField("total_register_point")
private Integer totalRegisterPoint;
@ApiModelProperty(value = "门店业绩积分")
@TableField("shop_achievement_point")
private Integer shopAchievementPoint;
@ApiModelProperty(value = "门店返佣积分")
@TableField("shop_share_point")
private Integer shopSharePoint;
@ApiModelProperty(value = "门店服务费(门店核销获得)")
@TableField("shop_service_fee")
private BigDecimal shopServiceFee;
@ApiModelProperty(value = "门店返佣金额(绑定用户消费后返佣)")
@TableField("shop_commission")
private BigDecimal shopCommission;
// @ApiModelProperty(value = "做工积分总数")
// @TableField("total_work_point")
// private Integer totalWorkPoint;
@ApiModelProperty(value = "每日分享积分")
@TableField("total_share_point")
private Integer totalSharePoint;
@ApiModelProperty(value = "每日签到积分")
@TableField("total_sign_point")
private Integer totalSignPoint;
@ApiModelProperty(value = "使用时长积分")
@TableField("total_hour_point")
private Integer totalHourPoint;
@ApiModelProperty(value = "技师业绩积分总数")
@TableField("total_performance_point")
private Integer totalPerformancePoint;
@ApiModelProperty(value = "总积分")
@TableField("total_point")
private Integer totalPoint;
@ApiModelProperty(value = "剩余积分(可用于消费的积分)")
@TableField("lave_point")
private Integer lavePoint;
@ApiModelProperty(value = "是否可更换推广人(0=否,1=是)")
@TableField("change_promoter")
private Integer changePromoter;
@ApiModelProperty(value = "经度")
@TableField("longitude")
private String longitude;
@ApiModelProperty(value = "纬度")
@TableField("latitude")
private String latitude;
@ApiModelProperty(value = "省")
@TableField("province")
private String province;
@ApiModelProperty(value = "省编号")
@TableField("province_code")
private String provinceCode;
@ApiModelProperty(value = "市")
@TableField("city")
private String city;
@ApiModelProperty(value = "市编号")
@TableField("city_code")
private String cityCode;
@ApiModelProperty(value = "区")
@TableField("district")
private String district;
@ApiModelProperty(value = "区编号")
@TableField("district_code")
private String districtCode;
@ApiModelProperty(value = "区编号")
@TableField("qr_code")
private String qrCode;
@ApiModelProperty("等级1会员数")
@TableField(exist = false)
private Long count1;
@ApiModelProperty("等级2会员数")
@TableField(exist = false)
private Long count2;
@ApiModelProperty("等级3会员数")
@TableField(exist = false)
private Long count3;
@ApiModelProperty("等级4会员数")
@TableField(exist = false)
private Long count4;
@ApiModelProperty("等级5会员数")
@TableField(exist = false)
private Long count5;
@ApiModelProperty("等级6会员数")
@TableField(exist = false)
private Long count6;
@ApiModelProperty("等级7会员数")
@TableField(exist = false)
private Long count7;
@ApiModelProperty("是否签到1是0否")
@TableField(exist = false)
private Integer isSign;
@ApiModelProperty("绑定门店id列表")
@TableField(exist = false)
private Set shopIds;
@ApiModelProperty(value = "降级预警")
@TableField("is_danger")
private Integer isDanger;
@ApiModelProperty(value = "最后下单时间")
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime lastOrderTime;
public String getIdStr(){
return String.valueOf(id);
}
}