shinnosuke
2026-09-18 c2f0ec3b3891bc177bdc58c2a111ab9c4fea911d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package com.talentcard.server.business.merchant;
 
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
 
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
 
public record MerchantProductUpdateRequest(
        @NotBlank(message = "商品名称不能为空") @Size(max = 128, message = "商品名称不能超过128个字符") String productName,
        /**
         * 商品金额。体检医院在后台团单里没有这一项(免费预约),所以不能用注解卡死最小值,
         * 由服务层按商家类型判断:非体检医院必须大于 0。
         */
        BigDecimal salePrice,
        @Size(max = 500, message = "商品封面地址无效") String coverUrl,
        @Size(max = 6, message = "详情图片不能超过6张") List<@Size(max = 500, message = "图片地址无效") String> productImages,
        @Size(max = 10000, message = "图文详情不能超过10000个字符") String detailText,
        Map<String, @Size(max = 160, message = "购买须知过长") String> purchaseNotice
) {
}