FollowDetailVO.java 2.04 KB
package cn.fw.valhalla.domain.vo.follow;

import cn.fw.common.json.MaskMobilePhone;
import cn.fw.valhalla.common.utils.StringUtils;
import lombok.Data;

import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;

/**
 * @author : kurisu
 * @className : FollowDetailVO
 * @description : 跟进详情
 * @date: 2020-08-17 15:16
 */
@Data
public class FollowDetailVO {
    private Long id;
    /**
     * 档案id
     */
    private Long customerId;
    /**
     * 名称
     */
    private String name;
    /**
     * 手机号
     */
    @MaskMobilePhone
    private String mobile;
    /**
     * 手机号归属
     */
    private String region;
    /**
     * 真实电话号码
     */
    private String realMobile;
    /**
     * 车牌号
     */
    private String plateNo;
    /**
     * 车型
     */
    private String carModel;
    /**
     * 标签
     */
    private String tags;
    /**
     * 跟进次数
     */
    private Integer times;
    /**
     * 客户星级
     */
    private Integer cusLevel;
    /**
     * 进站次数
     */
    private Integer arrivalCount;
    /**
     * 所属服务顾问
     */
    private Long adviserId;
    /**
     * 服务顾问名称
     */
    private String adviserName;
    /**
     * 车架号
     */
    private String vin;
    /**
     * 跟进任务id
     */
    private Long taskId;
    /**
     * 逾期时间
     */
    private Date deadline;
    private String reason;
    /**
     * 是否已经打过电话
     */
    private Boolean hadCall;

    public long getCountdown() {
        if (Objects.isNull(deadline)) {
            return 0L;
        }
        long ms = deadline.getTime() - System.currentTimeMillis();
        return ms / 1000;
    }

    public List<String> getTags() {
        if (StringUtils.isValid(this.tags)) {
            return Arrays.stream(this.tags.split(","))
                    .filter(StringUtils::isValid)
                    .collect(Collectors.toList());
        }
        return null;
    }
}