package org.dromara.work.domain.bo;

import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpClient;

import java.util.Date;
import java.util.List;

/**
 * 客户业务对象 tp_client
 *
 * @author Maosw
 * @date 2024-08-12
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpClient.class, reverseConvertGenerate = false)
public class TpClientBo extends BaseEntity {

    /**
     * id
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 所属客服
     */
    private Long sid;

    /**
     * 所属用户
     */
    private Long uid;

    /**
     * 客户编号
     */
    private String code;

    /**
     * 客服编号
     */
    private String sname;

    /**
     * 客户姓名
     */
    private String name;

    /**
     * 电话号码
     */
    private String phone;

    /**
     * 性别
     */
    private String sex;

    /**
     * 客户类型
     */
    private Long type;

    /**
     * 主营业务类型
     */
    private Long ywtype;

    /**
     * 状态（1=正常，2=禁用）
     */
    private Long state;

    /**
     * 备注
     */
    private String remark;

    /**
     * 录入时间
     */
    private Date addTime;

    /**
     * 是否删除（1=未删除，2=已删除）
     */
    private Integer isDel;

    /**
     * 操作人
     */
    private String addUser;

    /**
     * 会员等级
     */
    private Long vip;

    /**
     * 改图会员
     */
    private Long gtVip;

    /**
     * 健康状态 1:健康 2:流失中 3:已流失
     */
    private Integer health;

    /**
     * 多客服 1:多客服 2:多客服有余额
     */
    private Integer multi;

    /**
     * 省
     */
    private String province;

    /**
     * 市
     */
    private String city;

    /**
     * 地区
     */
    private String area;

    /**
     * 客户ID集合
     */
    private List<Long> ids;

}
