package com.oying.modules.fee.domain; import com.oying.modules.fee.utils.enums.CategoryTypeEnum; import lombok.Getter; import lombok.Setter; import cn.hutool.core.bean.BeanUtil; import io.swagger.annotations.ApiModelProperty; import cn.hutool.core.bean.copier.CopyOptions; import java.sql.Timestamp; import java.math.BigDecimal; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; /** * @description / * @author lixin * @date 2025-10-07 **/ @Getter @Setter @TableName("fee_base_fees") public class BaseFees implements Serializable { @TableId(value = "fee_id", type = IdType.AUTO) @ApiModelProperty(value = "运费ID") private Long feeId; @NotBlank @ApiModelProperty(value = "城市等级") private String level; @NotNull @ApiModelProperty(value = "品类类型 (普通、特殊)") private CategoryTypeEnum categoryType; @NotNull @ApiModelProperty(value = "基础运费金额") private BigDecimal feeAmount; @NotNull @ApiModelProperty(value = "生效日期") private Timestamp effectiveDate; @ApiModelProperty(value = "创建者") private String createBy; @ApiModelProperty(value = "更新者") private String updateBy; @ApiModelProperty(value = "创建日期") private Timestamp createTime; @NotNull @ApiModelProperty(value = "更新时间") private Timestamp updateTime; public void copy(BaseFees source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } }