package com.dayou.vo;

import com.dayou.annotation.Excel;
import com.dayou.entity.Personal;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;
import java.util.Set;

/**
 * 类说明：
 *
 * @author: wucl
 * @since: 2024/3/1
 * created with IntelliJ IDEA.
 */
@Data
public class PersonalVO extends Personal {

    /**
     * 面积
     */
    @Excel(name = "面积")
    private BigDecimal acreage;
    /**
     * 单价
     */
    @Excel(name = "单价")
    private BigDecimal price;
    /**
     * 总价
     */
    @Excel(name = "总价")
    private BigDecimal amount;
    /**
     * 客户名称
     */
    @Excel(name = "客户名称")
    private String clientName;
    /**
     * 业务来源
     */
    @Excel(name = "业务来源")
    private String clientSubName;
    /**
     * 客户联系人
     */
    @Excel(name = "客户联系人")
    private String contactName;
    /**
     * 联系人电话
     */
    @Excel(name = "联系人电话")
    private String contactTel;
    /**
     * 客户经理
     */
    private String clientManager;
    /**
     * 外业人员
     */
    private String outwardStaffName;
    /**
     * 内业人员
     */
    private String inwardStaffName;
    /**
     * 定价人员
     */
    private String pricingStaffName;
    /**
     * 应收款
     */
    @Excel(name = "应收款")
    private BigDecimal shouldAmount;
    /**
     * 实收款
     */
    @Excel(name = "实收款")
    private BigDecimal realAmount;

    /**
     *  当前实例节点id
     */
    private Long currentNodeId;
    /**
     * 当前实例节点名称
     */
    private String currentNodeName;
    /**
     * 当前实例节点编码
     */
    private String currentNodeCode;
    /**
     * 当前节点处理人id
     */
    private Long handlerId;
    /**
     * 当前节点处理人
     */
    private String handlerName;

    private Long nodeId;
    /**
     * 客户联系人部门
     */
    private String cDepartment;
    /**
     * 客户联系人职位
     */
    private String cDuty;
    /**
     * 终端客户名称
     */
    private String tTerminalClienteleName;
    /**
     * 终端联系电话
     */
    private String tCompanyMobile;
    /**
     * 终端客户联系人
     */
    private String tTerminalClienteleContactName;
    /**
     * 终端客户联系人电话
     */
    private String tMobile;

    /**
     * 当前节点创建时间
     */
    private Date nodeTime;

    /**
     * 任务id
     */
    private Long taskId;

    /**
     * 任务创建时间
     */
    private Date taskCreated;

    /**
     * location 字段别名，认领实收款时方便页面展示
     */
    private String orderName;

    private String startDate;

    private String endDate;

    private String nodeCode;

    private String comments;

    private Long orderFundId;

    /**
     * 委托人
     */
    private String bailor;

    /**
     * 开票金额查询条件(跟排序用的开票金额字段冲突了,所以新增这个)
     */
    private BigDecimal invoiceAmountCondition;

    /**
     * 是否有实收款
     */
    private Boolean hasRealAmount;

    /**
     * 开票金额
     */
    @Excel(name = "开票金额")
    private BigDecimal invoiceAmount;

    /**
     * 下单时间
     */
    @Excel(name = "下单时间")
    private Date created;

    /**
     * 最新实收款认领日期
     */
    private Date claimDateTime;

    /**
     * 是否认领实收款
     */
    private Boolean personalRealAmount;

    /**
     * 价值时点
     */
    private LocalDate valueTiming;

    /**
     * 已出产品
     */
    private String productions;

    /**
     * 下单日期
     */
    private LocalDate xCreated;

    private Set<Long> userIds;

    /**
     * 项目作废（查询条件）
     */
    private Boolean isCancellation;

}
