package com.ruoyi.ibs.list.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 营销清单
 *
 * @author ruoyi
 */
public class MarketingList {
    /**
     * 清单类型
     */
    private String listType;

    /**
     * 清单名称
     */
    private String groupName;
    /**
     * 客户数
     */
    private Long customerNum;
    /**
     * 关联活动
     */
    private String campaignName;

    /**
     * 活动创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 活动紧急程度
     */
    private String campaignDegree;

    /**
     * 活动开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /**
     * 活动结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    /**
     * 客户号
     */
    private String custId;
    /**
     * 客户名
     */
    private String custName;
    /**
     * 手机号码
     */
    private String custPhone;
    /**
     * 身份证
     */
    private String custIdc;
    /**
     * 分群id
     */
    private String groupId;

    /**
     * 活动id
     */
    private String campaignId;
    /**活动认领类型,0强制认领，1可选认领 */
    private String claimType;

    /**机构认领状态,0待认领，1已认领 */
    private String orgClaimStatus;

    /**机构分配状态,0待分配，1已分配 */
    private String orgDistributeStatus;

    /**客户经理认领状态状态,0待分配，1已分配 */
    private String custClaimStatus;

    /** 活动认领结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date claimEndTime;


    public String getListType() {
        return listType;
    }

    public void setListType(String listType) {
        this.listType = listType;
    }

    public String getGroupName() {
        return groupName;
    }

    public void setGroupName(String groupName) {
        this.groupName = groupName;
    }

    public Long getCustomerNum() {
        return customerNum;
    }

    public void setCustomerNum(Long customerNum) {
        this.customerNum = customerNum;
    }

    public String getCampaignName() {
        return campaignName;
    }

    public void setCampaignName(String campaignName) {
        this.campaignName = campaignName;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCampaignDegree() {
        return campaignDegree;
    }

    public void setCampaignDegree(String campaignDegree) {
        this.campaignDegree = campaignDegree;
    }


    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getCustId() {
        return custId;
    }

    public void setCustId(String custId) {
        this.custId = custId;
    }

    public String getCustPhone() {
        return custPhone;
    }

    public void setCustPhone(String custPhone) {
        this.custPhone = custPhone;
    }

    public String getCustIdc() {
        return custIdc;
    }

    public void setCustIdc(String custIdc) {
        this.custIdc = custIdc;
    }

    public String getGroupId() {
        return groupId;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }

    public String getCampaignId() {
        return campaignId;
    }

    public void setCampaignId(String campaignId) {
        this.campaignId = campaignId;
    }

    public String getCustName() {
        return custName;
    }

    public void setCustName(String custName) {
        this.custName = custName;
    }

    public String getClaimType() {
        return claimType;
    }

    public void setClaimType(String claimType) {
        this.claimType = claimType;
    }

    public String getOrgClaimStatus() {
        return orgClaimStatus;
    }

    public void setOrgClaimStatus(String orgClaimStatus) {
        this.orgClaimStatus = orgClaimStatus;
    }

    public String getOrgDistributeStatus() {
        return orgDistributeStatus;
    }

    public void setOrgDistributeStatus(String orgDistributeStatus) {
        this.orgDistributeStatus = orgDistributeStatus;
    }

    public String getCustClaimStatus() {
        return custClaimStatus;
    }

    public void setCustClaimStatus(String custClaimStatus) {
        this.custClaimStatus = custClaimStatus;
    }


    public Date getClaimEndTime() {
        return claimEndTime;
    }

    public void setClaimEndTime(Date claimEndTime) {
        this.claimEndTime = claimEndTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("listType", getListType())
                .append("groupName", getGroupName())
                .append("customerNum", getCustomerNum())
                .append("campaignName", getCampaignName())
                .append("createTime", getCreateTime())
                .append("campaignDegree", getCampaignDegree())
                .append("startTime", getStartTime())
                .append("endTime", getEndTime())
                .append("custId", getCustId())
                .append("custIdc", getCustIdc()).append("custName", getCustName())
                .append("custPhone", getCustPhone()).append("groupId", getGroupId()).append("campaignId", getCampaignId())
                .toString();
    }
}
