package com.jeesharp.business.modules.mall.dto;

import com.jeesharp.framework.pojo.dto.BaseSaveDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 运费模板保存DTO
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class MallFreightTemplateSaveDTO extends BaseSaveDTO {

    /**
     * 模板名称
     */
    @NotBlank(message = "模板名称不能为空")
    private String templateName;

    /**
     * 计费类型：WEIGHT-按重量 ITEM-按件数 FREE-包邮
     */
    @NotBlank(message = "计费类型不能为空")
    private String chargeType;

    /**
     * 首重(kg)（按重量时）
     */
    private BigDecimal firstWeight;

    /**
     * 首费(元)
     */
    private BigDecimal firstFee;

    /**
     * 续重(kg)
     */
    private BigDecimal continueWeight;

    /**
     * 续费(元)
     */
    private BigDecimal continueFee;

    /**
     * 首件（按件数时）
     */
    private Integer firstItem;

    /**
     * 满X元包邮（可选）
     */
    private BigDecimal freeAmount;

    /**
     * 状态：0-禁用 1-启用
     */
    @NotNull(message = "状态不能为空")
    private Integer status;
}
