mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-08-10 16:21:52 +08:00
fix:mall vo @Schema required = true => requiredMode = Schema.RequiredMode.REQUIRED
This commit is contained in:
@@ -12,22 +12,22 @@ import javax.validation.constraints.NotNull;
|
||||
@Data
|
||||
public class DeliveryExpressBaseVO {
|
||||
|
||||
@Schema(description = "快递公司编码", required = true)
|
||||
@Schema(description = "快递公司编码", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "快递公司编码不能为空")
|
||||
private String code;
|
||||
|
||||
@Schema(description = "快递公司名称", required = true, example = "李四")
|
||||
@Schema(description = "快递公司名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
@NotNull(message = "快递公司名称不能为空")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "快递公司logo")
|
||||
private String logo;
|
||||
|
||||
@Schema(description = "排序", required = true)
|
||||
@Schema(description = "排序", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "排序不能为空")
|
||||
private Integer sort;
|
||||
|
||||
@Schema(description = "状态", required = true, example = "1")
|
||||
@Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "状态不能为空")
|
||||
private Integer status;
|
||||
|
||||
|
@@ -1,7 +1,10 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.delivery.vo.express;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 快递公司 Response VO")
|
||||
@@ -10,10 +13,10 @@ import java.time.LocalDateTime;
|
||||
@ToString(callSuper = true)
|
||||
public class DeliveryExpressRespVO extends DeliveryExpressBaseVO {
|
||||
|
||||
@Schema(description = "编号", required = true, example = "6592")
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "6592")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "创建时间", required = true)
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
|
@@ -13,7 +13,7 @@ import javax.validation.constraints.NotNull;
|
||||
@ToString(callSuper = true)
|
||||
public class DeliveryExpressUpdateReqVO extends DeliveryExpressBaseVO {
|
||||
|
||||
@Schema(description = "编号", required = true, example = "6592")
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "6592")
|
||||
@NotNull(message = "编号不能为空")
|
||||
private Long id;
|
||||
|
||||
|
@@ -12,15 +12,15 @@ import javax.validation.constraints.NotNull;
|
||||
@Data
|
||||
public class DeliveryExpressTemplateBaseVO {
|
||||
|
||||
@Schema(description = "模板名称", required = true, example = "王五")
|
||||
@Schema(description = "模板名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
|
||||
@NotNull(message = "模板名称不能为空")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "配送计费方式 1:按件 2:按重量 3:按体积", required = true)
|
||||
@Schema(description = "配送计费方式 1:按件 2:按重量 3:按体积", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "配送计费方式 1:按件 2:按重量 3:按体积不能为空")
|
||||
private Integer chargeMode;
|
||||
|
||||
@Schema(description = "排序", required = true)
|
||||
@Schema(description = "排序", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "排序不能为空")
|
||||
private Integer sort;
|
||||
|
||||
|
@@ -1,7 +1,10 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.delivery.vo.expresstemplate;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 快递运费模板 Response VO")
|
||||
@@ -10,10 +13,10 @@ import java.time.LocalDateTime;
|
||||
@ToString(callSuper = true)
|
||||
public class DeliveryExpressTemplateRespVO extends DeliveryExpressTemplateBaseVO {
|
||||
|
||||
@Schema(description = "编号,自增", required = true, example = "371")
|
||||
@Schema(description = "编号,自增", requiredMode = Schema.RequiredMode.REQUIRED, example = "371")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "创建时间", required = true)
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
|
@@ -12,10 +12,10 @@ import lombok.NoArgsConstructor;
|
||||
@AllArgsConstructor
|
||||
public class DeliveryExpressTemplateSimpleRespVO {
|
||||
|
||||
@Schema(description = "模版编号", required = true, example = "1024")
|
||||
@Schema(description = "模版编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "模板名称", required = true, example = "测试模版")
|
||||
@Schema(description = "模板名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "测试模版")
|
||||
private String name;
|
||||
|
||||
}
|
||||
|
@@ -15,7 +15,7 @@ import java.util.List;
|
||||
@ToString(callSuper = true)
|
||||
public class DeliveryExpressTemplateUpdateReqVO extends DeliveryExpressTemplateBaseVO {
|
||||
|
||||
@Schema(description = "编号", required = true, example = "371")
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "371")
|
||||
@NotNull(message = "编号不能为空")
|
||||
private Long id;
|
||||
|
||||
|
@@ -18,49 +18,49 @@ import java.time.LocalTime;
|
||||
@Data
|
||||
public class DeliveryPickUpStoreBaseVO {
|
||||
|
||||
@Schema(description = "门店名称", required = true, example = "李四")
|
||||
@Schema(description = "门店名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
@NotBlank(message = "门店名称不能为空")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "门店简介", example = "我是门店简介")
|
||||
private String introduction;
|
||||
|
||||
@Schema(description = "门店手机", required = true, example = "15601892312")
|
||||
@Schema(description = "门店手机", requiredMode = Schema.RequiredMode.REQUIRED, example = "15601892312")
|
||||
@NotBlank(message = "门店手机不能为空")
|
||||
@Mobile
|
||||
private String phone;
|
||||
|
||||
@Schema(description = "区域编号", required = true, example = "18733")
|
||||
@Schema(description = "区域编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "18733")
|
||||
@NotNull(message = "区域编号不能为空")
|
||||
private Integer areaId;
|
||||
|
||||
@Schema(description = "门店详细地址", required = true, example = "复旦大学路 188 号")
|
||||
@Schema(description = "门店详细地址", requiredMode = Schema.RequiredMode.REQUIRED, example = "复旦大学路 188 号")
|
||||
@NotBlank(message = "门店详细地址不能为空")
|
||||
private String detailAddress;
|
||||
|
||||
@Schema(description = "门店 logo", required = true, example = "https://www.iocoder.cn/1.png")
|
||||
@Schema(description = "门店 logo", requiredMode = Schema.RequiredMode.REQUIRED, example = "https://www.iocoder.cn/1.png")
|
||||
@NotBlank(message = "门店 logo 不能为空")
|
||||
private String logo;
|
||||
|
||||
@Schema(description = "营业开始时间", required = true)
|
||||
@Schema(description = "营业开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "营业开始时间不能为空")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "HH:mm")
|
||||
private LocalTime openingTime;
|
||||
|
||||
@Schema(description = "营业结束时间", required = true)
|
||||
@Schema(description = "营业结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "营业结束时间不能为空")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "HH:mm")
|
||||
private LocalTime closingTime;
|
||||
|
||||
@Schema(description = "纬度", required = true, example = "5.88")
|
||||
@Schema(description = "纬度", requiredMode = Schema.RequiredMode.REQUIRED, example = "5.88")
|
||||
@NotNull(message = "纬度不能为空")
|
||||
private Double latitude;
|
||||
|
||||
@Schema(description = "经度", required = true, example = "6.99")
|
||||
@Schema(description = "经度", requiredMode = Schema.RequiredMode.REQUIRED, example = "6.99")
|
||||
@NotNull(message = "经度不能为空")
|
||||
private Double longitude;
|
||||
|
||||
@Schema(description = "门店状态", required = true, example = "1")
|
||||
@Schema(description = "门店状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "门店状态不能为空")
|
||||
@InEnum(CommonStatusEnum.class)
|
||||
private Integer status;
|
||||
|
@@ -1,7 +1,10 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.delivery.vo.pickup;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 自提门店 Response VO")
|
||||
@@ -10,10 +13,10 @@ import java.time.LocalDateTime;
|
||||
@ToString(callSuper = true)
|
||||
public class DeliveryPickUpStoreRespVO extends DeliveryPickUpStoreBaseVO {
|
||||
|
||||
@Schema(description = "编号", required = true, example = "23128")
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23128")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "创建时间", required = true)
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
|
@@ -1,9 +1,11 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.delivery.vo.pickup;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import javax.validation.constraints.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - 自提门店更新 Request VO")
|
||||
@Data
|
||||
@@ -11,7 +13,7 @@ import javax.validation.constraints.*;
|
||||
@ToString(callSuper = true)
|
||||
public class DeliveryPickUpStoreUpdateReqVO extends DeliveryPickUpStoreBaseVO {
|
||||
|
||||
@Schema(description = "编号", required = true, example = "23128")
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23128")
|
||||
@NotNull(message = "编号不能为空")
|
||||
private Long id;
|
||||
|
||||
|
@@ -36,7 +36,7 @@ public class AppTradeAfterSaleCreateReqVO {
|
||||
/**
|
||||
* @see AfterSaleStatusEnum
|
||||
*/
|
||||
@Schema(description = "操作类型", required = true, example = "1")
|
||||
@Schema(description = "操作类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "操作类型不能为空")
|
||||
private String operateType;
|
||||
|
||||
|
@@ -11,48 +11,48 @@ import java.util.List;
|
||||
@Data
|
||||
public class AppTradeAfterSalePageItemRespVO {
|
||||
|
||||
@Schema(description = "售后编号", required = true, example = "1024")
|
||||
@Schema(description = "售后编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "售后流水号", required = true, example = "1146347329394184195")
|
||||
@Schema(description = "售后流水号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1146347329394184195")
|
||||
private String no;
|
||||
|
||||
@Schema(description = "售后状态", required = true, example = "1")
|
||||
@Schema(description = "售后状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "售后方式", required = true, example = "1")
|
||||
@Schema(description = "售后方式", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Integer way;
|
||||
|
||||
@Schema(description = "售后类型", required = true, example = "1")
|
||||
@Schema(description = "售后类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Integer type;
|
||||
|
||||
@Schema(description = "申请原因", required = true, example = "1")
|
||||
@Schema(description = "申请原因", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private String applyReason;
|
||||
|
||||
@Schema(description = "补充描述", required = true, example = "1")
|
||||
@Schema(description = "补充描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private String applyDescription;
|
||||
|
||||
@Schema(description = "补充凭证图片", required = true, example = "1")
|
||||
@Schema(description = "补充凭证图片", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private List<String> applyPicUrls;
|
||||
|
||||
// ========== 交易订单相关 ==========
|
||||
|
||||
@Schema(description = "交易订单编号", required = true, example = "1")
|
||||
@Schema(description = "交易订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Long orderId;
|
||||
|
||||
@Schema(description = "交易订单流水号", required = true, example = "1")
|
||||
@Schema(description = "交易订单流水号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private String orderNo;
|
||||
|
||||
@Schema(description = "交易订单项编号", required = true, example = "1")
|
||||
@Schema(description = "交易订单项编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Long orderItemId;
|
||||
|
||||
@Schema(description = "商品 SPU 编号", required = true, example = "1")
|
||||
@Schema(description = "商品 SPU 编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Long spuId;
|
||||
|
||||
@Schema(description = "商品 SPU 名称", required = true, example = "1")
|
||||
@Schema(description = "商品 SPU 名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private String spuName;
|
||||
|
||||
@Schema(description = "商品 SKU 编号", required = true, example = "1")
|
||||
@Schema(description = "商品 SKU 编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Long skuId;
|
||||
|
||||
/**
|
||||
@@ -60,10 +60,10 @@ public class AppTradeAfterSalePageItemRespVO {
|
||||
*/
|
||||
private List<AppProductPropertyValueDetailRespVO> properties;
|
||||
|
||||
@Schema(description = "商品图片", required = true, example = "https://www.iocoder.cn/01.jpg")
|
||||
@Schema(description = "商品图片", requiredMode = Schema.RequiredMode.REQUIRED, example = "https://www.iocoder.cn/01.jpg")
|
||||
private String picUrl;
|
||||
|
||||
@Schema(description = "退货商品数量", required = true, example = "1")
|
||||
@Schema(description = "退货商品数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Integer count;
|
||||
|
||||
// ========== 审批相关 ==========
|
||||
|
@@ -17,7 +17,7 @@ public class AppTradeCartAddReqVO {
|
||||
@NotNull(message = "数量不能为空")
|
||||
private Integer count;
|
||||
|
||||
@Schema(description = "是否添加到购物车", required = true, example = "true")
|
||||
@Schema(description = "是否添加到购物车", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
|
||||
@NotNull(message = "是否添加购物车不能为空")
|
||||
private Boolean addStatus;
|
||||
|
||||
|
@@ -25,10 +25,10 @@ public class AppTradeCartListRespVO {
|
||||
@Data
|
||||
public static class Cart {
|
||||
|
||||
@Schema(description = "购物项的编号", required = true, example = "1024")
|
||||
@Schema(description = "购物项的编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "商品数量", required = true, example = "1")
|
||||
@Schema(description = "商品数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Integer count;
|
||||
|
||||
/**
|
||||
|
@@ -10,11 +10,11 @@ import javax.validation.constraints.NotNull;
|
||||
@Data
|
||||
public class AppTradeCartUpdateReqVO {
|
||||
|
||||
@Schema(description = "编号", required = true, example = "1024")
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
@NotNull(message = "编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "商品数量", required = true, example = "1")
|
||||
@Schema(description = "商品数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "数量不能为空")
|
||||
@Min(message = "数量必须大于 0", value = 1L)
|
||||
private Integer count;
|
||||
|
@@ -6,9 +6,7 @@ import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.iocoder.yudao.framework.common.core.KeyValue;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.common.enums.TerminalEnum;
|
||||
import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
|
||||
import cn.iocoder.yudao.module.member.api.address.AddressApi;
|
||||
@@ -25,9 +23,7 @@ import cn.iocoder.yudao.module.promotion.api.coupon.CouponApi;
|
||||
import cn.iocoder.yudao.module.promotion.api.coupon.dto.CouponUseReqDTO;
|
||||
import cn.iocoder.yudao.module.system.api.notify.NotifyMessageSendApi;
|
||||
import cn.iocoder.yudao.module.system.api.notify.dto.NotifySendSingleToUserReqDTO;
|
||||
import cn.iocoder.yudao.module.system.api.notify.dto.NotifyTemplateReqDTO;
|
||||
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
||||
import cn.iocoder.yudao.module.system.enums.notify.NotifyTemplateTypeEnum;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderDeliveryReqVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderCreateReqVO;
|
||||
@@ -357,28 +353,12 @@ public class TradeOrderServiceImpl implements TradeOrderService {
|
||||
// TODO 芋艿:发送订单变化的消息
|
||||
|
||||
// TODO 芋艿:发送站内信 fix
|
||||
// TODO @puhui999:使用 sendSingleMessageToMember 呀;走模版;不用判断模版是否存在哈
|
||||
// 1、获取模版编码为 order_delivery 的模版,判断是否存在 存在放回 true
|
||||
if (!notifyMessageSendApi.validateNotifyTemplate("order_delivery")) {
|
||||
// 1、1 站内信模版不存在则创建模版
|
||||
NotifyTemplateReqDTO templateReqDTO = new NotifyTemplateReqDTO();
|
||||
templateReqDTO.setName("订单发货通知模版");
|
||||
templateReqDTO.setCode("order_delivery");
|
||||
templateReqDTO.setType(NotifyTemplateTypeEnum.NOTIFICATION_MESSAGE.getType()); // 系统消息
|
||||
// 获取操作用户
|
||||
// AdminUserRespDTO user = adminUserApi.getUser(userId);
|
||||
// templateReqDTO.setNickname(user.getNickname());
|
||||
templateReqDTO.setNickname(UserTypeEnum.ADMIN.getName());
|
||||
templateReqDTO.setContent("订单:{orderId}{msg}");
|
||||
templateReqDTO.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
notifyMessageSendApi.createNotifyTemplate(templateReqDTO);
|
||||
}
|
||||
// 2、构造消息
|
||||
// 1、构造消息
|
||||
Map<String, Object> msgMap = new HashMap<>();
|
||||
msgMap.put("orderId", deliveryReqVO.getId());
|
||||
msgMap.put("msg", TradeOrderStatusEnum.DELIVERED.getStatus());
|
||||
// 2、发送站内信
|
||||
notifyMessageSendApi.sendSingleMessageToAdmin(
|
||||
notifyMessageSendApi.sendSingleMessageToMember(
|
||||
new NotifySendSingleToUserReqDTO()
|
||||
.setUserId(userId)
|
||||
.setTemplateCode("order_delivery")
|
||||
|
Reference in New Issue
Block a user