package cn.iocoder.yudao.module.crm.dal.dataobject.bidbond; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.math.BigDecimal; import java.time.LocalDate; /** * CRM 投标保证金 DO * * 销售投标场景:公司向客户(招标方)缴纳保证金,记录是否中标以及未中标后的退款进度, * 中标后可关联「销售台账」中的销售订单。 */ @TableName("crm_bid_bond") @KeySequence("crm_bid_bond_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class CrmBidBondDO extends BaseDO { @TableId private Long id; /** * 保证金单号 */ private String no; /** * 客户编号(招标方) */ private Long customerId; /** * 项目名称 */ private String projectName; /** * 招标编号 */ private String tenderNo; /** * 关联报价单编号 */ private Long quotationId; /** * 关联报价单号快照 */ private String quotationNo; /** * 当前报价轮次 */ private Integer quotationRound; /** * 关联销售订单 ID(销售台账) */ private Long saleOrderId; /** * 关联销售订单号快照 */ private String saleOrderNo; /** * 保证金金额 */ private BigDecimal bondAmount; /** * 缴纳日期 */ private LocalDate payDate; /** * 中标结果:0 待开标、1 已中标、2 未中标 * * 枚举 {@link cn.iocoder.yudao.module.crm.enums.bidbond.CrmBidResultEnum} */ private Integer bidResult; /** * 退回状态:0 未退回、1 部分退回、2 已退回、3 无需退回 * * 枚举 {@link cn.iocoder.yudao.module.crm.enums.bidbond.CrmBidBondRefundStatusEnum} */ private Integer refundStatus; /** * 退回金额 */ private BigDecimal refundAmount; /** * 退回日期 */ private LocalDate refundDate; /** * 备注 */ private String remark; }