package cn.iocoder.yudao.module.crm.controller.admin.bidbond.vo;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.constraints.NotNull;
|
import lombok.Data;
|
import org.springframework.format.annotation.DateTimeFormat;
|
|
import java.math.BigDecimal;
|
import java.time.LocalDate;
|
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
|
|
@Schema(description = "管理后台 - CRM 投标保证金创建/更新 Request VO")
|
@Data
|
public class CrmBidBondSaveReqVO {
|
|
@Schema(description = "保证金记录编号", example = "1024")
|
private Long id;
|
|
@Schema(description = "客户编号(招标方)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
@NotNull(message = "客户(招标方)不能为空,请选择本次投标的客户")
|
private Long customerId;
|
|
@Schema(description = "项目名称", example = "某某医院设备采购项目")
|
private String projectName;
|
|
@Schema(description = "招标编号", example = "ZB-2026-001")
|
private String tenderNo;
|
|
@Schema(description = "关联销售订单ID(销售台账)", example = "2048")
|
private Long saleOrderId;
|
|
@Schema(description = "保证金金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "50000.00")
|
@NotNull(message = "保证金金额不能为空,请填写本次向客户缴纳的保证金金额")
|
private BigDecimal bondAmount;
|
|
@Schema(description = "缴纳日期", example = "2026-11-05")
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
|
private LocalDate payDate;
|
|
@Schema(description = "中标结果:0 待开标、1 已中标、2 未中标", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
@NotNull(message = "中标结果不能为空,请选择待开标/已中标/未中标")
|
private Integer bidResult;
|
|
@Schema(description = "退回状态:0 未退回、1 部分退回、2 已退回、3 无需退回", example = "0")
|
private Integer refundStatus;
|
|
@Schema(description = "退回金额", example = "50000.00")
|
private BigDecimal refundAmount;
|
|
@Schema(description = "退回日期", example = "2026-12-01")
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
|
private LocalDate refundDate;
|
|
@Schema(description = "备注")
|
private String remark;
|
|
}
|