package com.yuchen.saas.park.api.vo.property;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.thinkunion.park.service.common.utils.AmtUtil;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 预存款抵扣欠费列表
 */
@Data
public class PropertyPrepaymentDeductListVo {
    /**
     * 账单id
     */
    @JsonIgnore
    private Long id;

    @JsonIgnore
    private Long customerId;
    /**
     * 客户名称
     */
    private String customerName;

    @JsonIgnore
    private Long houseId;
    /**
     * 资源代码
     */
    private String resourceCode;

    private Long feeId;
    /**
     * 收费标准
     */
    private String feeName;

    /**
     * 开始日期
     */
    private Date startDate;
    /**
     * 结束日期
     */
    private Date endDate;

//    /**
//     * 单价
//     */
//    @JsonIgnore
//    private Long priceFen;
//    public BigDecimal getPrice() {
//        return AmtUtil.fenToYuanObj(this.priceFen);
//    }
//
//    @JsonIgnore
//    private Integer priceUnitType;
//
//    /**
//     * 计价单位
//     */
//    private String priceUnitTypeName;
//    public String getPriceUnitTypeName() {
//        if (priceUnitType != null) {
//            return PriceUnitTypeEnum.convert(this.priceUnitType).getDesc();
//        }
//        return "";
//    }

    /**
     * 已缴金额
     */
    @JsonIgnore
    private long payAmtFen;
//    public BigDecimal getPayAmt() {
//        return AmtUtil.fenToYuan(this.payAmtFen);
//    }


    /**
     * 当前应收金额（未缴金额）
     */
    public BigDecimal noPayAmt;
    @JsonIgnore
    private long noPayAmtFen;
    public BigDecimal getNoPayAmt() {
        return AmtUtil.fenToYuan(this.noPayAmtFen);
    }

    @JsonIgnore
    private long feeItemId;
    /**
     * 预存款账户
     */
    private String feeItemName;

    @JsonIgnore
    private long deductAmtFen;
    /**
     * 预存款抵充额
     */
    public BigDecimal deductAmt;
    public BigDecimal getDeductAmt() {
        return AmtUtil.fenToYuan(this.deductAmtFen);
    }

    @JsonIgnore
    private long deductBalanceAmtFen;
    /**
     * 冲抵后账户余额
     */
    private BigDecimal deductBalanceAmt;
    public BigDecimal getDeductBalanceAmt() {
        return AmtUtil.fenToYuan(this.deductBalanceAmtFen);
    }


}
