package com.tofly.feesapi.sfgl.entity.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
 * @author lihaoli
 * @date 2024/6/7
 */
@Data
@ApiModel("欠费明细变更参数DTO")
public class YyQfmxBg {
    /**
     * 欠费ID:用于部分收费时拆分欠费，newid()
     */
    @ApiModelProperty(value = "欠费ID:用于部分收费时拆分欠费，newid()")
    private String id;
    /**
     * 抄表人员姓名
     */
    @ApiModelProperty(value = "抄表人员姓名")
    private String cbryxm;
    /**
     * 抄表日期
     */
    @ApiModelProperty(value = "抄表日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cbrq;
    /**
     * 录入日期
     */
    @ApiModelProperty(value = "录入日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lrrq;
    /**
     * 计算日期
     */
    @ApiModelProperty(value = "计算日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date jsrq;
    /**
     * 应收水量（sl+sl1+sl2+sl3）
     */
    @ApiModelProperty(value = "应收水量（sl+sl1+sl2+sl3）")
    private BigDecimal yssl = BigDecimal.ZERO;
    /**
     * 应收水费（sf+sf1+sf2+sf3）
     */
    @ApiModelProperty(value = "应收水费（sf+sf1+sf2+sf3）")
    private BigDecimal yssf = BigDecimal.ZERO;
    /**
     * 应收污水费（wsf+wsf1+wsf2+wsf3）
     */
    @ApiModelProperty(value = "应收污水费（wsf+wsf1+wsf2+wsf3）")
    private BigDecimal yswsf = BigDecimal.ZERO;
    /**
     * 应收垃圾费
     */
    @ApiModelProperty(value = "应收垃圾费")
    private BigDecimal ysljf = BigDecimal.ZERO;
    /**
     * 应收水资源费
     */
    @ApiModelProperty(value = "应收水资源费", position = 11)
    private BigDecimal ysszyf = BigDecimal.ZERO;
    /**
     * 应收金额=应收水费+应收污水费+应收垃圾费+应收其他费（yssf+yswsf+ysLJF+ysqt）
     */
    @ApiModelProperty(value = "应收金额=应收水费+应收污水费+应收垃圾费+应收水资源费+应收其他费（yssf+yswsf+ysLJF+ysqt）")
    private BigDecimal ysje = BigDecimal.ZERO;
    /**
     * 阶梯1水量
     */
    @ApiModelProperty(value = "阶梯1水量")
    private BigDecimal jt1sl = BigDecimal.ZERO;
    /**
     * 阶梯1水价
     */
    @ApiModelProperty(value = "阶梯1水价")
    private BigDecimal jt1sj = BigDecimal.ZERO;
    /**
     * 阶梯1水费
     */
    @ApiModelProperty(value = "阶梯1水费")
    private BigDecimal jt1sf = BigDecimal.ZERO;
    /**
     * 阶梯2水量
     */
    @ApiModelProperty(value = "阶梯2水量")
    private BigDecimal jt2sl = BigDecimal.ZERO;
    /**
     * 阶梯2水价
     */
    @ApiModelProperty(value = "阶梯2水价")
    private BigDecimal jt2sj = BigDecimal.ZERO;
    /**
     * 阶梯2水费
     */
    @ApiModelProperty(value = "阶梯2水费")
    private BigDecimal jt2sf = BigDecimal.ZERO;
    /**
     * 阶梯3水量
     */
    @ApiModelProperty(value = "阶梯3水量")
    private BigDecimal jt3sl = BigDecimal.ZERO;
    /**
     * 阶梯3水价
     */
    @ApiModelProperty(value = "阶梯3水价")
    private BigDecimal jt3sj = BigDecimal.ZERO;
    /**
     * 阶梯3水费
     */
    @ApiModelProperty(value = "阶梯3水费")
    private BigDecimal jt3sf = BigDecimal.ZERO;
    /**
     * 抄表计算方式（正常单价计费，一表多价计费，阶梯计费, 一表多价含阶梯，超定额，两高一剩；用于查询显示）
     */
    @ApiModelProperty(value = "抄表计算方式（正常单价计费，一表多价计费，阶梯计费, 一表多价含阶梯，超定额，两高一剩；用于查询显示）")
    private String cbjsfs;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String bz;
    /**
     * 抄表类型bm_cblx.bm
     */
    @ApiModelProperty(value = "抄表类型bm_cblx.bm")
    private String cblx;
    /**
     * 水价2.阶梯1水量
     */
    @ApiModelProperty(value = "水价2.阶梯1水量")
    private BigDecimal sj1Jt1sl = BigDecimal.ZERO;
    /**
     * 水价2.阶梯1水价
     */
    @ApiModelProperty(value = "水价2.阶梯1水价")
    private BigDecimal sj1Jt1sj = BigDecimal.ZERO;
    /**
     * 水价2.阶梯1水费
     */
    @ApiModelProperty(value = "水价2.阶梯1水费")
    private BigDecimal sj1Jt1sf = BigDecimal.ZERO;
    /**
     * 水价2.阶梯2水量
     */
    @ApiModelProperty(value = "水价2.阶梯2水量")
    private BigDecimal sj1Jt2sl = BigDecimal.ZERO;
    /**
     * 水价2.阶梯2水价
     */
    @ApiModelProperty(value = "水价2.阶梯2水价")
    private BigDecimal sj1Jt2sj = BigDecimal.ZERO;
    /**
     * 水价2.阶梯2水费
     */
    @ApiModelProperty(value = "水价2.阶梯2水费")
    private BigDecimal sj1Jt2sf = BigDecimal.ZERO;
    /**
     * 水价2.阶梯3水量
     */
    @ApiModelProperty(value = "水价2.阶梯3水量")
    private BigDecimal sj1Jt3sl = BigDecimal.ZERO;
    /**
     * 水价2.阶梯3水价
     */
    @ApiModelProperty(value = "水价2.阶梯3水价")
    private BigDecimal sj1Jt3sj = BigDecimal.ZERO;
    /**
     * 水价2.阶梯3水费
     */
    @ApiModelProperty(value = "水价2.阶梯3水费")
    private BigDecimal sj1Jt3sf = BigDecimal.ZERO;
    /**
     * 水价3.阶梯1水量
     */
    @ApiModelProperty(value = "水价3.阶梯1水量")
    private BigDecimal sj2Jt1sl;
    /**
     * 水价3.阶梯1水价
     */
    @ApiModelProperty(value = "水价3.阶梯1水价")
    private BigDecimal sj2Jt1sj = BigDecimal.ZERO;
    /**
     * 水价3.阶梯1水费
     */
    @ApiModelProperty(value = "水价3.阶梯1水费")
    private BigDecimal sj2Jt1sf = BigDecimal.ZERO;
    /**
     * 水价3.阶梯2水量
     */
    @ApiModelProperty(value = "水价3.阶梯2水量")
    private BigDecimal sj2Jt2sl = BigDecimal.ZERO;
    /**
     * 水价3.阶梯2水价
     */
    @ApiModelProperty(value = "水价3.阶梯2水价")
    private BigDecimal sj2Jt2sj = BigDecimal.ZERO;
    /**
     * 水价3.阶梯2水费
     */
    @ApiModelProperty(value = "水价3.阶梯2水费")
    private BigDecimal sj2Jt2sf = BigDecimal.ZERO;
    /**
     * 水价3.阶梯3水量
     */
    @ApiModelProperty(value = "水价3.阶梯3水量")
    private BigDecimal sj2Jt3sl = BigDecimal.ZERO;
    /**
     * 水价3.阶梯3水价
     */
    @ApiModelProperty(value = "水价3.阶梯3水价")
    private BigDecimal sj2Jt3sj = BigDecimal.ZERO;
    /**
     * 水价3.阶梯3水费
     */
    @ApiModelProperty(value = "水价3.阶梯3水费")
    private BigDecimal sj2Jt3sf = BigDecimal.ZERO;
    /**
     * 抄表卡ID，对应yh_cbkxx.id
     */
    @ApiModelProperty(value = "抄表卡ID，对应yh_cbkxx.id")
    private String cbkid;
    /**
     * 用水月份
     */
    @ApiModelProperty(value = "用水月份")
    private String ysyf;
    /**
     * 财务日期
     */
    @ApiModelProperty(value = "财务日期")
    private String cwrq;
    /**
     * 上次读数
     */
    @ApiModelProperty(value = "上次读数")
    private BigDecimal scds;
    /**
     * 本次读数
     */
    @ApiModelProperty(value = "本次读数")
    private BigDecimal bcds;
    /**
     * 旧表止读
     */
    @ApiModelProperty(value = "旧表止读")
    private BigDecimal jbzd;
    /**
     * 新表起度
     */
    @ApiModelProperty(value = "新表起度")
    private BigDecimal xbqd;
    /**
     * 加减量
     */
    @ApiModelProperty(value = "加减量")
    private BigDecimal jjl;
    /**
     * 水量
     */
    @ApiModelProperty(value = "水量")
    private BigDecimal sl;
    /**
     * 水价编码
     */
    @ApiModelProperty(value = "水价编码")
    private String sjbm;
    /**
     * 水价
     */
    @ApiModelProperty(value = "水价")
    private BigDecimal sj = BigDecimal.ZERO;
    /**
     * 水费
     */
    @ApiModelProperty(value = "水费")
    private BigDecimal sf = BigDecimal.ZERO;
    /**
     * 污水费单价
     */
    @ApiModelProperty(value = "污水费单价")
    private BigDecimal wsfdj = BigDecimal.ZERO;
    /**
     * 污水费
     */
    @ApiModelProperty(value = "污水费")
    private BigDecimal wsf = BigDecimal.ZERO;
    /**
     * 垃圾费单价
     */
    @ApiModelProperty(value = "垃圾费单价")
    private BigDecimal ljfdj = BigDecimal.ZERO;
    /**
     * 垃圾费
     */
    @ApiModelProperty(value = "垃圾费")
    private BigDecimal ljf = BigDecimal.ZERO;
    /**
     * 水资源费单价
     */
    @ApiModelProperty(value = "水资源费单价")
    private BigDecimal szyfDj = BigDecimal.ZERO;
    /**
     * 水资源费
     */
    @ApiModelProperty(value = "水资源费")
    private BigDecimal szyf = BigDecimal.ZERO;
    /**
     * 水价编码3（一表多价时存储）
     */
    @ApiModelProperty(value = "水价编码2（一表多价时存储）")
    private String sjbm1;
    /**
     * 水价2（一表多价时存储）
     */
    @ApiModelProperty(value = "水价2（一表多价时存储）")
    private BigDecimal sj1 = BigDecimal.ZERO;
    /**
     * 水量2（一表多价时存储）
     */
    @ApiModelProperty(value = "水量2（一表多价时存储）")
    private BigDecimal sl1 = BigDecimal.ZERO;
    /**
     * 水费2（一表多价时存储）
     */
    @ApiModelProperty(value = "水费2（一表多价时存储）")
    private BigDecimal sf1 = BigDecimal.ZERO;
    /**
     * 污水费单价2
     */
    @ApiModelProperty(value = "污水费单价2")
    private BigDecimal wsfdj1 = BigDecimal.ZERO;
    /**
     * 污水费2
     */
    @ApiModelProperty(value = "污水费2")
    private BigDecimal wsf1 = BigDecimal.ZERO;
    /**
     * 垃圾费单价2
     */
    @ApiModelProperty(value = "垃圾费单价2")
    private BigDecimal ljfdj1 = BigDecimal.ZERO;
    /**
     * 垃圾费2
     */
    @ApiModelProperty(value = "垃圾费2")
    private BigDecimal ljf1 = BigDecimal.ZERO;
    /**
     * 水资源费单价2
     */
    @ApiModelProperty(value = "水资源费单价2")
    private BigDecimal szyfDj1 = BigDecimal.ZERO;
    /**
     * 水资源费2
     */
    @ApiModelProperty(value = "水资源费2")
    private BigDecimal szyf1 = BigDecimal.ZERO;
    /**
     * 水价编码3（一表多价时存储）
     */
    @ApiModelProperty(value = "水价编码3（一表多价时存储）")
    private String sjbm2;
    /**
     * 水价3（一表多价时存储）
     */
    @ApiModelProperty(value = "水价3（一表多价时存储）")
    private BigDecimal sj2 = BigDecimal.ZERO;
    /**
     * 水量3（一表多价时存储）
     */
    @ApiModelProperty(value = "水量3（一表多价时存储）")
    private BigDecimal sl2 = BigDecimal.ZERO;
    /**
     * 水费3（一表多价时存储）
     */
    @ApiModelProperty(value = "水费3（一表多价时存储）")
    private BigDecimal sf2 = BigDecimal.ZERO;
    /**
     * 污水费单价3
     */
    @ApiModelProperty(value = "污水费单价3")
    private BigDecimal wsfdj2 = BigDecimal.ZERO;
    /**
     * 污水费3
     */
    @ApiModelProperty(value = "污水费3")
    private BigDecimal wsf2 = BigDecimal.ZERO;
    /**
     * 垃圾费单价3
     */
    @ApiModelProperty(value = "垃圾费单价3")
    private BigDecimal ljfdj2 = BigDecimal.ZERO;
    /**
     * 垃圾费3
     */
    @ApiModelProperty(value = "垃圾费3")
    private BigDecimal ljf2 = BigDecimal.ZERO;
    /**
     * 水资源费单价3
     */
    @ApiModelProperty(value = "水资源费单价3")
    private BigDecimal szyfDj2 = BigDecimal.ZERO;
    /**
     * 水资源费3
     */
    @ApiModelProperty(value = "水资源费3")
    private BigDecimal szyf2 = BigDecimal.ZERO;
    /**
     * 水量4（一表多价时存储）
     */
    @ApiModelProperty(value = "水量4（一表多价时存储）")
    private BigDecimal sl3 = BigDecimal.ZERO;

    @ApiModelProperty(value = "年度累计量(计算前）")
    private BigDecimal jtzqljlJsq = BigDecimal.ZERO;

    @ApiModelProperty(value = "滞纳金")
    private BigDecimal znj = BigDecimal.ZERO;

    @ApiModelProperty(value = "批准人")
    private String pzr;

    @ApiModelProperty(value = "工单减免原因")
    private String gdyx;

    @ApiModelProperty(value = "减免类型")
    private String jyType;

    @ApiModelProperty(value = "垃圾费减免标志(1是0否)")
    private String ljfJmbz;
}
