package org.dromara.domain.houseInfo.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.domain.houseInfo.PropertyFee;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;


/**
 * 物业费管理视图对象 property_fee
 *
 * @author boman
 * @date 2025-04-11
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PropertyFee.class)
public class PropertyFeeVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 物业费信息主键
     */
    @ExcelProperty(value = "物业费信息主键")
    private Long propertyId;

    /**
     * 房屋信息主键id
     */
    @ExcelProperty(value = "房屋信息主键id")
    private Long houseId;

    /**
     * 权利人姓名
     */
    @ExcelProperty(value = "权利人姓名")
    private String ownerName;

    /**
     * 房屋坐落位置
     */
    @ExcelProperty(value = "房屋坐落位置")
    private String location;

    /**
     * 房屋面积，单位为平方米
     */
    @ExcelProperty(value = "房屋面积，单位为平方米")
    private Long area;

    /**
     * 不动产单元号，唯一标识不动产单元
     */
    @ExcelProperty(value = "不动产单元号，唯一标识不动产单元")
    private String propertyUnitNumber;

    /**
     * 房屋的详细门牌号
     */
    @ExcelProperty(value = "房屋的详细门牌号")
    private String detailedAddress;

    /**
     * 是否有车位，Y表示有，N表示无
     */
    @ExcelProperty(value = "是否有车位，Y表示有，N表示无")
    private String hasParkingSpace;

    /**
     * 车位编号
     */
    @ExcelProperty(value = "车位编号")
    private String parkingNumber;

    /**
     * 房屋所在小区名称
     */
    @ExcelProperty(value = "房屋所在小区名称")
    private String communityName;

    /**
     * 物业费缴费年份
     */
    @ExcelProperty(value = "物业费缴费年份")
    private String year;

    /**
     * 业主缴费时间
     */
    @ExcelProperty(value = "业主缴费时间")
    private String time;

    /**
     * 应缴物业费用
     */
    @ExcelProperty(value = "应缴物业费用")
    private BigDecimal tenementExpense;

    /**
     * 应缴车位费用
     */
    @ExcelProperty(value = "应缴车位费用")
    private BigDecimal parkingExpense;

    /**
     * 应缴能耗费用
     */
    @ExcelProperty(value = "应缴能耗费用")
    private BigDecimal energyExpense;

    /**
     * 应缴总费用
     */
    @ExcelProperty(value = "应缴总费用")
    private BigDecimal totalExpense;

    /**
     * 是否缴费，Y表示有，N表示无
     */
    @ExcelProperty(value = "是否缴费，Y表示有，N表示无")
    private String isExpense;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;


}
