package com.zt.plat.module.contractorder.dal.dataobject.contract;

import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
import lombok.*;

/**
 * 价款结算条款 DO
 *
 * @author 后台管理
 */
@TableName("bse_ctrt_fmu")
@KeySequence("bse_ctrt_fmu_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
 * 支持业务基类继承：isBusiness=true 时继承 BusinessBaseDO，否则继承 BaseDO
 */
public class ContractFormulaDO extends BusinessBaseDO {

    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 合同主键
     */
    @TableField("CTRT_ID")
    private Long contractId;
    /**
     * 公式类型;单价/总价/水扣款/加工费
     */
    @TableField("FMU_TP")
    private String formulaType;
    /**
     * 公式
     */
    @TableField("FMU_CALT")
    private String formulaCalculate;
    /**
     * 编码公式
     */
    @TableField("NUM_FMU")
    private String numberFormula;
    /**
     * 物料名称
     */
    @TableField("MTRL_NAME")
    private String materialName;
    /**
     * 物料编码
     */
    @TableField("MTRL_NUM")
    private String materialNumber;
    /**
     * 计算小数位
     */
    @TableField("DEC_PNT")
    private Long decimalPoint;
    /**
     * 金属元素编码
     */
    @TableField("ELEM_NUM")
    private String elementNumber;
    /**
     * 金属元素缩写
     */
    @TableField("ELEM_ABBR")
    private String elementAbbreviation;
    /**
     * 金属元素名称
     */
    @TableField("ELEM_NAME")
    private String elementName;
    /**
     * 结算类型，多条使用逗号分隔（字典：PRCH_STLM_TP）
     */
    @TableField("STLM_TP")
    private String settlementType;
}