package cn.iocoder.yudao.module.custom.vo;

import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.Date;

import static cn.iocoder.yudao.common.DictBaseConstants.*;

/**
 * 用于导出客户数据VO
 *
 * @author 小李
 * @date 19:20 2024/12/2
**/
@Data
@ExcelIgnoreUnannotated
public class CustomerExportVO {

    @ExcelProperty("客户名称")
    private String cusName;

    @ExcelProperty(value = "性别", converter = DictConvert.class)
    @DictFormat(DICT_SYS_USER_SEX)
    private String sex;

    @ExcelProperty("会员等级")
    private String levelName;

    @ExcelProperty("联系方式")
    private String phoneNumber;

    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ExcelProperty("生日")
    private LocalDateTime birthday;

    @ExcelProperty("住址")
    private String address;

    @ExcelProperty("是否挂账")
    private String isHangAccount;

    @ExcelProperty(value = "客户来源", converter = DictConvert.class)
    @DictFormat(DICT_CUS_DATA_FROM)
    private String dataFrom;

    @ExcelProperty(value = "最近办理业务", converter = DictConvert.class)
    @DictFormat(DICT_CUS_BUSI_TYPE)
    private String nearDoContent;

    @ExcelProperty("最近业务办理时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private LocalDateTime nearDoTime;

    @ExcelProperty(value = "客户状态", converter = DictConvert.class)
    @DictFormat(DICT_CUS_INFO_STATUS)
    private String status;
}
