From 14b32f6d07a3f0636b17e32ec6e35fb66f708c17 Mon Sep 17 00:00:00 2001 From: dzq Date: Sat, 12 Apr 2025 11:17:54 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E8=AE=A2=E5=8D=95):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=89=8B=E6=9C=BA=E5=8F=B7=E7=A0=81=E3=80=81=E5=86=85=E9=83=A8?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=A0=87=E8=AF=86=E5=92=8C=E4=BC=81=E4=B8=9A?= =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E7=94=A8=E6=88=B7ID=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 为了支持更多用户信息的存储和识别,新增了手机号码、内部用户标识和企业微信用户ID字段。这些字段将用于订单管理和用户身份验证。 --- .../shop/order/OrderApplicationService.java | 3 +++ .../order/command/SubmitOrderCommand.java | 21 ++++++++++++++++++- .../domain/shop/order/db/ShopOrderEntity.java | 12 +++++++++++ .../domain/shop/order/dto/ShopOrderDTO.java | 19 +++++++++++++++++ sql/20250328_return_approval.sql | 9 +++++++- 5 files changed, 62 insertions(+), 2 deletions(-) diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java index aebbb35..530cb2c 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java @@ -128,6 +128,9 @@ public class OrderApplicationService { orderModel.generateOrderNumber(); orderModel.setTotalAmount(BigDecimal.valueOf(0)); orderModel.setPaymentMethod(command.getPaymentType()); + orderModel.setMobile(command.getMobile()); + orderModel.setIsInternal(command.getIsInternal()); + orderModel.setUserid(command.getQyUserid()); orderModel.insert(); processOrderGoods(orderModel, goodsList); diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/command/SubmitOrderCommand.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/command/SubmitOrderCommand.java index 40cb562..a7e7a5f 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/command/SubmitOrderCommand.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/command/SubmitOrderCommand.java @@ -3,15 +3,34 @@ package com.agileboot.domain.shop.order.command; import com.agileboot.domain.shop.order.db.ShopOrderEntity; import com.agileboot.domain.shop.order.db.ShopOrderGoodsEntity; import java.util.List; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data public class SubmitOrderCommand { + @ApiModelProperty("微信用户唯一标识") private String openid; + @ApiModelProperty("系统用户ID") private String userid; + @ApiModelProperty("企业ID") private String corpid; + @ApiModelProperty("订单主体信息") private ShopOrderEntity order; - // 支付类型'wechat' | 'balance' + + @ApiModelProperty("支付类型 wechat:微信 balance:余额") private String paymentType; + + @ApiModelProperty("订单商品明细列表") private List goodsList; + + @ApiModelProperty("联系电话") + private String mobile; + + @ApiModelProperty("企业微信用户ID或汇邦云用户ID") + private String qyUserid; + + @ApiModelProperty("是否内部订单 0否 1汇邦云用户 2企业微信用户") + private Integer isInternal; } \ No newline at end of file diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/db/ShopOrderEntity.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/db/ShopOrderEntity.java index 9cbb826..ffbce36 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/db/ShopOrderEntity.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/db/ShopOrderEntity.java @@ -45,6 +45,18 @@ public class ShopOrderEntity extends BaseEntity { @TableField("trade_id") private String tradeId; + @ApiModelProperty("手机号码") + @TableField("mobile") + private String mobile; + + @ApiModelProperty("企业微信用户ID或汇邦云用户ID") + @TableField("userid") + private String userid; + + @ApiModelProperty("是否内部用户(0否 1汇邦云用户 2企业微信用户)") + @TableField("is_internal") + private Integer isInternal; + @ApiModelProperty("业务系统订单ID(对接外部系统)") @TableField("biz_order_id") private String bizOrderId; diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/dto/ShopOrderDTO.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/dto/ShopOrderDTO.java index 8a82691..9abb590 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/dto/ShopOrderDTO.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/dto/ShopOrderDTO.java @@ -1,12 +1,16 @@ package com.agileboot.domain.shop.order.dto; import cn.hutool.core.bean.BeanUtil; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + import com.agileboot.domain.shop.order.db.ShopOrderEntity; import java.math.BigDecimal; import java.util.Date; import lombok.Data; @Data +@ApiModel(value = "ShopOrderDTO对象", description = "商品订单DTO") public class ShopOrderDTO { public ShopOrderDTO(ShopOrderEntity entity) { @@ -23,14 +27,29 @@ public class ShopOrderDTO { } } + @ApiModelProperty("订单唯一ID") private Long orderId; + @ApiModelProperty("ucid") private String ucid; + @ApiModelProperty("openid") private String openid; + @ApiModelProperty("支付网关交易id") private String tradeId; + @ApiModelProperty("订单总金额") private BigDecimal totalAmount; + @ApiModelProperty("订单状态(1待付款 2已付款 3已发货 4已完成 5已取消)") private Integer status; + @ApiModelProperty("支付状态(1未支付 2已支付 3退款中 4已退款)") private Integer payStatus; + @ApiModelProperty("支付方式") private String paymentMethod; + @ApiModelProperty("支付时间") private Date payTime; private Date createTime; + @ApiModelProperty("手机号码") + private String mobile; + @ApiModelProperty("是否内部用户(0否 1是)") + private Integer isInternal; + @ApiModelProperty("业务系统订单ID(对接外部系统)") + private String bizOrderId; } \ No newline at end of file diff --git a/sql/20250328_return_approval.sql b/sql/20250328_return_approval.sql index 83ed210..5434cb9 100644 --- a/sql/20250328_return_approval.sql +++ b/sql/20250328_return_approval.sql @@ -58,4 +58,11 @@ ADD COLUMN cover_img VARCHAR(512) COMMENT '封面图URL'; UPDATE shop_order_goods sog INNER JOIN shop_goods sg ON sog.goods_id = sg.goods_id SET sog.goods_name = sg.goods_name, - sog.cover_img = sg.cover_img; \ No newline at end of file + sog.cover_img = sg.cover_img; + +ALTER TABLE `shop_order` +ADD COLUMN `mobile` varchar(30) DEFAULT NULL COMMENT '手机号码' AFTER `trade_id`, +ADD COLUMN `is_internal` TINYINT(1) DEFAULT 0 COMMENT '是否内部用户(0否 1是)'; + +ALTER TABLE `shop_order` +ADD COLUMN `userid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '企业微信用户ID或汇邦云用户ID' AFTER `mobile`;