package cn.com.ty.lift.business.contract.dao.entity;

import java.math.BigDecimal;
import java.time.LocalDate;

import cn.com.ty.lift.business.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 实体类 - 表：payment
 * @author bieao
 * @since 2019-12-11 14:22:13
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class Payment extends BaseEntity {

	public Payment() {
		this.planMoney = new BigDecimal(0);
		this.workMoney = new BigDecimal(0);
		this.amountInvoice = new BigDecimal(0);
	}

	/**
	 * 收付款ID
	 */
	@TableId(value = "id",type = IdType.ID_WORKER)
	private Long id;

	/**
	 * 合同id
	 */
	private Long contractsId;

	/**
	 * 收付款类型  (1:维保，2:大修)
	 */
	private Integer type;

	/**
	 * 摘要 1服务积分 2贡献积分
	 */
	@Deprecated
	private String summary;

	/**
	 * 应收金额
	 */
	private BigDecimal planMoney;

	/**
	 * 实收金额
	 */
	private BigDecimal workMoney;

	/**
	 * 应收时间
	 */
	private LocalDate planDate;

	/**
	 * 实收时间
	 */
	private LocalDate workDate;

	/**
	 * 收款人编号
	 */
	private Long cashierUser;

	/**
	 * 是否上传票据
	 */
	private Integer isTicket;

	/**
	 * 是否上传银行回单
	 */
	private Integer isCollection;

	/**
	 * 备注
	 */
	private String remarks;

	/**
	 * 收付款状态
	 */
	@Deprecated
	private Integer status;

	/**
	 * 票据图片
	 */
	private String noteImgUrl;

	/**
	 * 银行回执单图片
	 */
	private String bankImgUrl;

	/**
	 * 收付款编号
	 */
	private String code;

	/**
	 * 开票金额
	 */
	private BigDecimal amountInvoice;

	/**
	 * 开票日期
	 */
	private LocalDate billingDate;

	/**
	 * 期数
	 */
	private String periods;

	/**
	 * 项目名称
	 */
	private String costName;

	/**
	 * 项目描述
	 */
	private String costDesc;
}