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

import com.jeesharp.framework.pojo.dto.BaseSaveDTO;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * 运费模板地区配置保存请求 DTO：与收货地址省/市/区编码匹配，可覆盖模板首续费。
 *
 * @author jeesharp
 * @since 2026-05-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class MallFreightTemplateRegionSaveDTO extends BaseSaveDTO {

    @NotBlank(message = "运费模板不能为空")
    private String templateId;

    /** 行政区划编码，英文逗号分隔；全国兜底 * */
    private String regionCodes;

    /** 与编码对应的中文展示名 */
    private String regionNames;

    /** 本区域首费（元），null 表示不覆盖模板 */
    private BigDecimal firstFee;

    /** 本区域续费（元），null 表示不覆盖模板 */
    private BigDecimal continueFee;

    /** 匹配优先级，升序 */
    private Integer sortOrder;
}
