package cn.lili.modules.lmk.domain.form; import cn.lili.base.AbsForm; import cn.lili.group.Add; import cn.lili.group.Update; import cn.lili.modules.lmk.domain.entity.CommissionRecord; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.BeanUtils; import org.springframework.lang.NonNull; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.Date; /** * 抽成记录表表单 * * @author peng * @since 2025-07-04 */ @Data @ApiModel(value = "CommissionRecord表单", description = "抽成记录表表单") public class CommissionRecordForm extends AbsForm { @NotNull(message = "店铺id不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("店铺id") private Long storeId; @NotNull(message = "商品id不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("商品id") private Long goodsId; @NotNull(message = "skuId不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("skuId") private Long skuId; @NotBlank(message = "商品名称不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("商品名称") private String goodsName; @NotBlank(message = "商品图片地址不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("商品图片地址") private String imgUrl; @NotNull(message = "商品单价不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("商品单价") private BigDecimal price; @NotNull(message = "商品数量不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("商品数量") private BigDecimal num; @NotNull(message = "商品总价不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("商品总价") private BigDecimal sumPrice; @NotNull(message = "当前抽成比例不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("当前抽成比例") private BigDecimal commission; @NotNull(message = "平台抽成金额不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("平台抽成金额") private BigDecimal commissionPrice; @NotNull(message = "扣除平台抽成金额不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("扣除平台抽成金额") private BigDecimal remainMoney; @NotBlank(message = "结算订单状态不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("结算订单状态") private String settlementStatus; @NotNull(message = "可以结算时间不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("可以结算时间") private Date canSettlementTime; @NotBlank(message = "交易单号不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("交易单号") private String tradeSn; @NotBlank(message = "子订单号不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("子订单号") private String sn; @NotBlank(message = "抽成类型(退款退佣金)不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("抽成类型(退款退佣金)") private String type; @NotBlank(message = "否确认收货不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("否确认收货") private String deliveryStatus; public static CommissionRecord getEntityByForm(@NonNull CommissionRecordForm form, CommissionRecord entity) { if(entity == null) { entity = new CommissionRecord(); } BeanUtils.copyProperties(form, entity); return entity; } }