package cn.superdesk.uniorder.openapicall.thirdpart.szhtxx.electronicInvoice.dto.request;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

/**
 * @Description: 第三方 单个 发票请求信息主体
 * JsonIgnoreProperties 为 jackson 向
 * JsonIgnore 为 spring mvc 向
 * @Author: linjinyu
 * @CreateDate: 2021/12/24 下午2:45
 * @UpdateUser: linjinyu
 * @UpdateDate: 2021/12/24 下午2:45
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
@JsonIgnoreProperties(value = {"xmjeBigDecimal", "seBigDecimal", "seBigDecimalOriginal", "slBigDecimal"})
@Builder(toBuilder = true)
@AllArgsConstructor
@NoArgsConstructor
@Data
public class SingleBillingRequestBodyKpContentXmxxItemVo implements Serializable {

    @ApiModelProperty("xmmc: 商品名称;")
    private String xmmc;
    @ApiModelProperty("xmdw: 单位;")
    private String xmdw;
    @ApiModelProperty("ggxh: 型号;")
    private String ggxh;

    @ApiModelProperty("hsbz: 含税标志;")
    private String hsbz;
    @ApiModelProperty("yhzcbs: 优惠政策标识;")
    private String yhzcbs;

    @ApiModelProperty("fphxz: 发票行性质;")
    private String fphxz;

    @ApiModelProperty("lslbs: 零税率标识;")
    private String lslbs;
    @ApiModelProperty("zzstsgl: 增值税特殊管理;")
    private String zzstsgl;


    @ApiModelProperty("xmsl: 数量;")
    private Integer    xmsl;
    @ApiModelProperty("xmdj: 单价;")
    private BigDecimal xmdj;


    @ApiModelProperty("kce: 扣除额;")
    private String kce;
    @ApiModelProperty("xmje: 项目金额;")
    private String xmje;
    @ApiModelProperty("se: 税额;")
    private String se;


    @ApiModelProperty("spbm: 税收分类编码;")
    private String spbm;
    @ApiModelProperty("sl: 税率;")
    private String sl;


    /**************************************** spring MVC 向屏蔽 返回 start ****************************************/

    @JsonIgnore
    @ApiModelProperty("xmje: 项目金额;校验用-原")
    private BigDecimal xmjeBigDecimal;
    @JsonIgnore
    @ApiModelProperty("se: 税额;")
    private BigDecimal seBigDecimal;
    @JsonIgnore
    @ApiModelProperty("se: 税额;校验用-原")
    private BigDecimal seBigDecimalOriginal;
    @JsonIgnore
    @ApiModelProperty("sl: 税率;")
    private BigDecimal slBigDecimal;

    /**************************************** spring MVC 向屏蔽 返回   end ****************************************/

}