package com.tofly.third.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
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.time.LocalDateTime;

@Data
@TableName(value = "BM_SJ")
@ApiModel
public class BmSj extends Model<BmSj> {

    private static final long serialVersionUID = 1L;

    /**
     * 水价编码
     */
    @TableId(value = "CODE", type = IdType.INPUT)
    @ApiModelProperty(value = "水价编码")
    private String code;

    /**
     * 水价名称
     */
    @ApiModelProperty(value = "水价名称")
    private String name;
    /**
     * 水价
     */
    @ApiModelProperty(value = "水价")
    private BigDecimal sj;

    /**
     * 用水类型
     */
    @ApiModelProperty(value = "用水类型")
    private String yslx;
    /**
     * 所属公司
     */
    @ApiModelProperty(value = "所属公司")
    private String ssgs;

    /**
     * 操作人员
     */
    @ApiModelProperty(value = "操作人员")
    private String czry;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime czsj;

    /**
     * IC卡充值限量(方)
     */
    @ApiModelProperty(value = "IC卡充值限量(方)")
    private Long czxl;

    /**
     * IC卡年充值限量(方)
     */
    @ApiModelProperty(value = "IC卡年充值限量(方)")
    private Long nxl;

    /**
     * 阶梯标志（1是，0否）
     */
    @ApiModelProperty(value = "阶梯标志（1是，0否）")
    private String jtbz="0";

    /**
     * 阶梯1水量止数
     */
    @ApiModelProperty(value = "阶梯1水量止数")
    private BigDecimal jt1Zs;

    /**
     * 阶梯1算费水价
     */
    @ApiModelProperty(value = "阶梯1算费水价")
    private BigDecimal jt1Sj;

    /**
     * 阶梯2水量止数
     */
    @ApiModelProperty(value = "阶梯2水量止数")
    private BigDecimal jt2Zs;

    /**
     * 阶梯2算费水价
     */
    @ApiModelProperty(value = "阶梯2算费水价")
    private BigDecimal jt2Sj;

    /**
     * 阶梯3水量止数
     */
    @ApiModelProperty(value = "阶梯3水量止数")
    private BigDecimal jt3Zs;

    /**
     * 阶梯3算费水价
     */
    @ApiModelProperty(value = "阶梯3算费水价")
    private BigDecimal jt3Sj;

    /**
     * 阶梯4水量止数
     */
    @ApiModelProperty(value = "阶梯4水量止数")
    private BigDecimal jt4Zs;

    /**
     * 阶梯4算费水价
     */
    @ApiModelProperty(value = "阶梯4算费水价")
    private BigDecimal jt4Sj;

    /**
     * 污水费单价
     */
    @ApiModelProperty(value = "污水费单价")
    private BigDecimal wsfdj;

    /**
     * 垃圾费单价
     */
    @ApiModelProperty(value = "垃圾费单价")
    private BigDecimal ljfdj;

    /**
     * 水资源费单价
     */
    @ApiModelProperty(value = "水资源费单价")
    private BigDecimal szyfdj;
    /**
     * 阶梯人口水量
     */
    @ApiModelProperty(value = "阶梯人口水量")
    private BigDecimal jtrksl;

    /**
     * 阶梯人口基数
     */
    @ApiModelProperty(value = "阶梯人口基数")
    private BigDecimal jtrkjs;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String bz;

    /**
     * 是否启用：0不启用，1启用
     */
    @ApiModelProperty(value = "是否启用：0不启用，1启用")
    private String isdisabled = "1";

    /**
     * 修改日期
     */
    @ApiModelProperty(value = "修改日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime xgrq;

    /**
     * 阶梯计算类型（0：正常；1：月阶梯；2：年阶梯）
     */
    @ApiModelProperty(value = "阶梯计算类型（0：正常；1：月阶梯；2：年阶梯）")
    private Integer jtjslx;

    /**
     * 阶梯算费方式（SL：按水量；BL：按比例）
     */
    @ApiModelProperty(value = "阶梯算费方式（SL：按水量；BL：按比例）")
    private String jtsffs;

    /**
     * 税率：单位（%）0,3,6,13
     */
    @ApiModelProperty(value = "税率：单位（%）0,3,6,13")
    private Integer taxrate;

}
