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

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nest.springwrap.core.mp.base.BaseEntity;
import org.nest.springwrap.core.tenant.mp.TenantEntity;

/**
 * <p>
 * 物业-收费-前台收费-账单信息表
 * </p>
 *
 * @author baichaojie
 * @since 2024-09-26
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("saas_park_property_bill_information")
@ApiModel(value="SaasParkPropertyBillInformation对象", description="物业-收费-前台收费-账单信息表")
public class SaasParkPropertyBillInformation extends BaseEntity {

    /**
     * 项目id
     */
    @ApiModelProperty(name = "parkId", value = "项目id")
    private Long parkId;
    /**
     * 客户名称
     */
    @ApiModelProperty(name = "personName", value = "客户名称")
    private String personName;
    /**
     * 客户id
     */
    @ApiModelProperty(name = "personId", value = "客户id")
    private Long personId;
    /**
     * 手机号
     */
    @ApiModelProperty(name = "tel", value = "手机号")
    private String tel;
    /**
     * 入住时间
     */
    @ApiModelProperty(name = "checkInTime", value = "入住时间")
    private Date checkInTime;
    /**
     * 建筑面积
     */
    @ApiModelProperty(name = "buildArea", value = "建筑面积")
    private Float buildArea;
    /**
     * 计费面积
     */
    @ApiModelProperty(name = "billingArea", value = "计费面积")
    private Float billingArea;
    /**
     * 房间id
     */
    @ApiModelProperty(name = "roomId", value = "房间id")
    private Long roomId;
    /**
     * 房间号
     */
    @ApiModelProperty(name = "roomNo", value = "房间号")
    private String roomNo;
    /**
     * 账单状态
     */
    @ApiModelProperty(name = "billStatus", value = "账单状态")
    private Integer billStatus;
    /**
     * 应收日期
     */
    @ApiModelProperty(name = "receivableDate", value = "应收日期")
    private Date receivableDate;
    /**
     * 收费类型id
     */
    @ApiModelProperty(name = "feeTypeId", value = "收费类型id")
    private Long feeTypeId;
    /**
     * 起始日期
     */
    @ApiModelProperty(name = "startDate", value = "起始日期")
    private Date startDate;
    /**
     * 结束日期
     */
    @ApiModelProperty(name = "endDate", value = "结束日期")
    private Date endDate;
    /**
     * 账单金额
     */
    @ApiModelProperty(name = "billAmount", value = "账单金额")
    private Float billAmount;
    /**
     * 应收金额
     */
    @ApiModelProperty(name = "receivableAmount", value = "应收金额")
    private Float receivableAmount;
    /**
     * 待收金额
     */
    @ApiModelProperty(name = "pendingAmount", value = "待收金额")
    private Float pendingAmount;
    /**
     * 已缴金额
     */
    @ApiModelProperty(name = "paidAmount", value = "已缴金额")
    private Float paidAmount;
    /**
     * 税率
     */
    @ApiModelProperty(name = "taxRate", value = "税率")
    private Float taxRate;
    /**
     * 税额
     */
    @ApiModelProperty(name = "taxAmount", value = "税额")
    private Float taxAmount;
    /**
     * 滞纳金
     */
    @ApiModelProperty(name = "lateFee", value = "滞纳金")
    private Float lateFee;
    /**
     * 调整金额
     */
    @ApiModelProperty(name = "adjustAmount", value = "调整金额")
    private Float adjustAmount;
    /**
     * 减免金额
     */
    @ApiModelProperty(name = "reductionAmount", value = "减免金额")
    private Float reductionAmount;
    /**
     * 收费方式(1预存款冲抵、2线下收费)
     */
    @ApiModelProperty(name = "feeType", value = "收费方式(1预存款冲抵、2线下收费)")
    private Integer feeType;
    /**
     * 收款日期
     */
    @ApiModelProperty(name = "paymentDate", value = "收款日期")
    private Date paymentDate;
    /**
     * 面积
     */
    @ApiModelProperty(name = "area", value = "面积")
    private Float area;
    /**
     * 用量
     */
    @ApiModelProperty(name = "consumption", value = "用量")
    private Float consumption;
    /**
     * 关联的已出未出账单表
     */
    @ApiModelProperty(name = "relativeReceivableManageId", value = "关联的已出未出账单表")
    private Long relativeReceivableManageId;
    /**
     * 合同编号
     */
    @ApiModelProperty(name = "contractNumber", value = "合同编号")
    private String contractNumber;



}
