package co.yixiang.yshop.module.member.controller.app.user.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;

@Schema(description = "用户 APP - 用户个人信息 Response VO")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class AppUserInfoRespVO {

    @Schema(description = "用户id", requiredMode = Schema.RequiredMode.REQUIRED, example = "yshop")
    private Long id;

    @Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "yshop")
    private String nickname;

    @Schema(description = "用户头像", requiredMode = Schema.RequiredMode.REQUIRED, example = "/infra/file/get/35a12e57-4297-4faa-bf7d-7ed2f211c952")
    private String avatar;

    @Schema(description = "用户手机号", requiredMode = Schema.RequiredMode.REQUIRED, example = "15601691300")
    private String mobile;

    @Schema(description = "生日", requiredMode = Schema.RequiredMode.REQUIRED, example = "2023-10-11")
    private String birthday;

    @Schema(description = "性别", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    private Integer sex;

    @Schema(description = "用户余额")
    private BigDecimal nowMoney;

    @Schema(description = "佣金金额")
    private BigDecimal brokeragePrice;

    @Schema(description = "用户剩余积分")
    private BigDecimal integral;

    @Schema(description = "核销权限")
    private Boolean writeOffAuthority;

    @Schema(description = "邀请码")
    private String invitationCode;

    @Schema(description = "优惠券数量")
    private Integer couponNumber;
}
