package com.qmth.sop.business.bean.result;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.sop.business.bean.dto.UserArchivesDto;
import com.qmth.sop.common.enums.ProductTypeEnum;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * @Description: 项目派单信息
 * @Author: CaoZixuan
 * @Date: 2023-08-31
 */
public class CrmProjectResult {

    @ApiModelProperty("项目单号")
    private String crmNo;

    @ApiModelProperty("项目名称")
    private String crmName;

    @ApiModelProperty("派单时间")
    private Long crmBeginTime;

    @ApiModelProperty("客户经理id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long customManagerId;

    @ApiModelProperty("客户经理名称")
    private String customManagerName;

    @ApiModelProperty("客户类型")
    private ProductTypeEnum customType;

    @ApiModelProperty("客户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long customId;

    @ApiModelProperty("客户名称")
    private String customName;

    @ApiModelProperty("客户省份")
    private String customProvince;

    @ApiModelProperty("客户城市")
    private String customCity;

    @ApiModelProperty("客户县区")
    private String customArea;

    @ApiModelProperty("客户地址")
    private String customAddress;

    @ApiModelProperty("服务档位")
    private String level;

    @ApiModelProperty("考试开始时间")
    private Long examStartTime;

    @ApiModelProperty("考试结束时间")
    private Long examEndTime;

    @ApiModelProperty("实施产品id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long productId;

    @ApiModelProperty("实施产品名称")
    private String productName;

    @ApiModelProperty("服务单元id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long serviceUnitId;

    @ApiModelProperty("服务单元名称")
    private String serviceUnitName;

    @ApiModelProperty("大区经理id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long regionManagerId;

    @ApiModelProperty("大区经理名称")
    private String regionManagerName;

    @ApiModelProperty("区域协调人集合")
    private List<UserArchivesDto> regionCoordinatorList;

    @ApiModelProperty("项目经理集合")
    private List<UserArchivesDto> projectManagerList;

    @ApiModelProperty("工程师集合")
    private List<UserArchivesDto> engineerList;

    @ApiModelProperty(value = "标准人天")
    private Integer peoperDay;

    @ApiModelProperty(value = "过程变量")
    private String processVar;

    public String getCrmNo() {
        return crmNo;
    }

    public void setCrmNo(String crmNo) {
        this.crmNo = crmNo;
    }

    public String getCrmName() {
        return crmName;
    }

    public void setCrmName(String crmName) {
        this.crmName = crmName;
    }

    public Long getCrmBeginTime() {
        return crmBeginTime;
    }

    public void setCrmBeginTime(Long crmBeginTime) {
        this.crmBeginTime = crmBeginTime;
    }

    public Long getCustomManagerId() {
        return customManagerId;
    }

    public void setCustomManagerId(Long customManagerId) {
        this.customManagerId = customManagerId;
    }

    public String getCustomManagerName() {
        return customManagerName;
    }

    public void setCustomManagerName(String customManagerName) {
        this.customManagerName = customManagerName;
    }

    public ProductTypeEnum getCustomType() {
        return customType;
    }

    public void setCustomType(ProductTypeEnum customType) {
        this.customType = customType;
    }

    public Long getCustomId() {
        return customId;
    }

    public void setCustomId(Long customId) {
        this.customId = customId;
    }

    public String getCustomName() {
        return customName;
    }

    public void setCustomName(String customName) {
        this.customName = customName;
    }

    public String getCustomProvince() {
        return customProvince;
    }

    public void setCustomProvince(String customProvince) {
        this.customProvince = customProvince;
    }

    public String getCustomCity() {
        return customCity;
    }

    public void setCustomCity(String customCity) {
        this.customCity = customCity;
    }

    public String getCustomArea() {
        return customArea;
    }

    public void setCustomArea(String customArea) {
        this.customArea = customArea;
    }

    public String getCustomAddress() {
        return customAddress;
    }

    public void setCustomAddress(String customAddress) {
        this.customAddress = customAddress;
    }

    public String getLevel() {
        return level;
    }

    public void setLevel(String level) {
        this.level = level;
    }

    public Long getExamStartTime() {
        return examStartTime;
    }

    public void setExamStartTime(Long examStartTime) {
        this.examStartTime = examStartTime;
    }

    public Long getExamEndTime() {
        return examEndTime;
    }

    public void setExamEndTime(Long examEndTime) {
        this.examEndTime = examEndTime;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Long getServiceUnitId() {
        return serviceUnitId;
    }

    public void setServiceUnitId(Long serviceUnitId) {
        this.serviceUnitId = serviceUnitId;
    }

    public String getServiceUnitName() {
        return serviceUnitName;
    }

    public void setServiceUnitName(String serviceUnitName) {
        this.serviceUnitName = serviceUnitName;
    }

    public Long getRegionManagerId() {
        return regionManagerId;
    }

    public void setRegionManagerId(Long regionManagerId) {
        this.regionManagerId = regionManagerId;
    }

    public String getRegionManagerName() {
        return regionManagerName;
    }

    public void setRegionManagerName(String regionManagerName) {
        this.regionManagerName = regionManagerName;
    }

    public List<UserArchivesDto> getRegionCoordinatorList() {
        return regionCoordinatorList;
    }

    public void setRegionCoordinatorList(List<UserArchivesDto> regionCoordinatorList) {
        this.regionCoordinatorList = regionCoordinatorList;
    }

    public List<UserArchivesDto> getProjectManagerList() {
        return projectManagerList;
    }

    public void setProjectManagerList(List<UserArchivesDto> projectManagerList) {
        this.projectManagerList = projectManagerList;
    }

    public List<UserArchivesDto> getEngineerList() {
        return engineerList;
    }

    public void setEngineerList(List<UserArchivesDto> engineerList) {
        this.engineerList = engineerList;
    }

    public Integer getPeoperDay() {
        return peoperDay;
    }

    public void setPeoperDay(Integer peoperDay) {
        this.peoperDay = peoperDay;
    }

    public String getProcessVar() {
        return processVar;
    }

    public void setProcessVar(String processVar) {
        this.processVar = processVar;
    }
}
