package com.storlead.sales.pojo.vo.customer;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.storlead.framework.mybatis.entity.SysBaseField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

/**
 * @program: sp-sales-platform
 * @description:
 * @author: chenkq
 * @create: 2024-07-03 10:42
 */
@Data
public class CustomerMessageVO extends SysBaseField {
    /**
     * 客户名称、区域名称、归属人员、创建人员、客户状态、客户来源、客户类型、首联系人姓名、客户等级、信用等级、企业名称、企业网址、新增类型,新增类型（人工、导入）
     * 移入人员、移入时间、转移人、转移类型,移入人员、移入时间,删除人员、删除时间,置垃圾时间，操作人、合并时间、邮件标题、接收时间、邮箱、跟进时间、跟进内容、紧要程度
     * 、逾期时长、评论时间、评论内容
     */
    private Long id;

    @ApiModelProperty(value = "客户名称")
    private String customerName;

    @ApiModelProperty(value = "区域名称")
    private String areaName;

    @ApiModelProperty(value = "归属人员")
    private String ownerByName;

    @ApiModelProperty(value = "创建人员")
    private String createByName;

    @ApiModelProperty(value = "客户状态")
    private String customerStatusName;

    @ApiModelProperty(value = "客户来源")
    private String customerSourceName;

    @ApiModelProperty(value = "客户类型")
    private String customerTypeName;

    @ApiModelProperty(value = "首联系人姓名")
    private String liaisonName;

    @ApiModelProperty(value = "客户等级")
    private String customerLevelName;

    @ApiModelProperty(value = "信用等级")
    private String customerCreditLevelName;

    @ApiModelProperty(value = "企业名称")
    private String companyName;

    @ApiModelProperty(value = "企业网址")
    private String companyUrl;

    @ApiModelProperty(value = "新增类型")
    private String addType;

    @ApiModelProperty(value = "移入人员")
    private String moveByName;

    @ApiModelProperty(value = "移入时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime moveTime;

    @ApiModelProperty(value = "转移人")
    private String transferByName;

    @ApiModelProperty(value = "转移类型")
    private String transferType;

    @ApiModelProperty(value = "删除人员")
    private String deleteByName;

    @ApiModelProperty(value = "删除时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime deleteTime;

    @ApiModelProperty(value = "置垃圾时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime setPublicTime;
    @ApiModelProperty(value = "操作人")
    private String operateByName;
    @ApiModelProperty(value = "合并时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime mergeTime;

    @ApiModelProperty(value = "邮件标题")
    private String emailTitle;

    @ApiModelProperty(value = "接收时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime receiveTime;

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "跟进时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime followUpTime;

    @ApiModelProperty(value = "跟进内容")
    private String followUpContent;

    @ApiModelProperty(value = "紧要程度")
    private String urgentLevel;

    @ApiModelProperty(value = "逾期时长")
    private String overdueDuration;

    @ApiModelProperty(value = "评论时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime commentTime;

    @ApiModelProperty(value = "评论内容")
    private String commentContent;

    @ApiModelProperty(value = "消息内容")
    private String messageContent;

}
