From 04b5460cb4ee685cc7e64585a28b888d0b56b028 Mon Sep 17 00:00:00 2001 From: fengxiaohang <15076273430@163.com> Date: Fri, 20 Jun 2025 10:14:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95=E3=80=81?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- qrcode/1933713270742081537.png | Bin 0 -> 435 bytes qrcode/1935226754499760129.png | Bin 0 -> 410 bytes .../wzj/soopin/goods/domain/vo/ProductVO.java | 3 + .../resources/mapper/goods/ProductMapper.xml | 3 + .../order/controller/OrderController.java | 3 +- .../wzj/soopin/order/domain/bo/OrderBo.java | 3 + .../wzj/soopin/order/domain/entity/Order.java | 4 ++ .../domain/entity/OrderOperateHistory.java | 1 + .../order/domain/vo/ManagerOrderDetailVO.java | 2 +- .../domain/vo/OrderOperateHistoryVO.java | 6 +- .../wzj/soopin/order/domain/vo/OrderVO.java | 3 + .../order/service/impl/OrderServiceImpl.java | 58 +++++++++--------- .../impl/VerificationCodeServiceImpl.java | 2 + .../src/main/resources/mapper/OrderMapper.xml | 9 ++- 14 files changed, 61 insertions(+), 36 deletions(-) create mode 100644 qrcode/1933713270742081537.png create mode 100644 qrcode/1935226754499760129.png diff --git a/qrcode/1933713270742081537.png b/qrcode/1933713270742081537.png new file mode 100644 index 0000000000000000000000000000000000000000..e885c953bdf7f4b503673032fe72023edf4d3187 GIT binary patch literal 435 zcmV;k0ZjghP){`649Kx{YZz#ANZB{fh^M1os?sEUepSuImUz5zq0V zojQ`V@q!OegMh$hh|#w`cAyHfm`;$6obrE&2xMrTkXvi(LqZ%@N(4HjGdCsHl656A z1LpdP2+9!xHCPumGIp|vKqBEC)q)wdevh=2gzx!TU?+UZPz8jxxEjX7CZNI(A+ZIf=+|C40iik& z?WK>5TSB0TOYwURZ@!h1V9S6KX>%SPM1;dFI|ef9_li_X*upN$Q zIU+0ZkkrUrn#vU1 zkzDr`1~OZpZK$L%CHgUn8%VB>0$b?cV2O+5o}tbf(gv;d_DwG(3#mUli=T<8rghbR z4C77lSChJ(_NKkgjD@J4I>bJ`I}dXZq55QNj8@;zM6`8I?pabv7pd9$aHpU~0&HbW zWIlorqom*Bh@6jiLcM$3B3wlNApg!PC<|OfPsT1a z)=`2v2Pw*nu_$cm!$K&hJXVTFhL88wK$3y%Wk{X+x(Gr?>s3*@*hk2)^W+V55=u%{ zA4YB=8cF|BSk{>c3K5a%$&T7Mk~ffF<0dyDZgMsG0nu&TexIKp{Qv*}07*qoM6N<$ Ef>)5Y&Hw-a literal 0 HcmV?d00001 diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/domain/vo/ProductVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/domain/vo/ProductVO.java index b7e94b1d2..fa96789df 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/domain/vo/ProductVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/domain/vo/ProductVO.java @@ -121,6 +121,9 @@ public class ProductVO extends BaseAudit { @Schema(description = "销量") private String sales; + @Schema(description = "商品类型 1.团购;->2.拼团;3->秒杀") + private Integer type; + @Schema(description = "配送方式 1->到店核销;2->自提;3->配送;") private Integer distribution; diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml index 876fab248..c6f7b8726 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml @@ -81,6 +81,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND p.name LIKE CONCAT('%', #{query.nameLike}, '%') + + AND p.out_product_id = #{query.outProductId} + AND p.publish_status = #{query.publishStatus} diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java index 1352d6f05..0db694d7c 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java @@ -99,7 +99,6 @@ public class OrderController extends BaseController { @Log(title = "订单表", businessType = BusinessType.INSERT) @PostMapping("/add") public R add(@RequestBody Order order) { - order.setWithdrawStatus(1); return service.insert(order); } @@ -148,7 +147,7 @@ public class OrderController extends BaseController { @Tag(name ="订单日志") @GetMapping("/log/{orderId}") public R log(@PathVariable Long orderId){ - return R.ok(service.log(orderId)); + return R.ok (service.log(orderId)); } @Tag(name ="订单解密") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/bo/OrderBo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/bo/OrderBo.java index a79b80152..4699fa918 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/bo/OrderBo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/bo/OrderBo.java @@ -125,6 +125,9 @@ public class OrderBo { @Schema(description = "提现状态:1->等待转账;2->转帐中;3->转账成功;4->转账失败") private Integer withdrawStatus; + @Schema(description = "买家手机号") + private String memberPhoneEncrypted; + public Wrapper toWrapper() { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/Order.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/Order.java index 2136638c3..cbb830c54 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/Order.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/Order.java @@ -180,4 +180,8 @@ public class Order extends BaseAudit { @Schema(description = "配送方式 1->到店核销;2->自提;3->配送;") private Integer distribution; + + @Schema(description = "核销码") + private String code; + } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/OrderOperateHistory.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/OrderOperateHistory.java index 671c9e20d..105cd6bba 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/OrderOperateHistory.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/entity/OrderOperateHistory.java @@ -36,6 +36,7 @@ public class OrderOperateHistory extends BaseAudit { @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") private Integer orderStatus; + @Schema(description = "备注") @Excel(name = "备注") private String note; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/ManagerOrderDetailVO.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/ManagerOrderDetailVO.java index db4a160e7..b1d31b172 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/ManagerOrderDetailVO.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/ManagerOrderDetailVO.java @@ -9,7 +9,7 @@ import java.util.List; @Data @Schema(description = "后台订单详情对象") -public class ManagerOrderDetailVO { +public class ManagerOrderDetailVO { @Schema(description = "订单id") private Long orderId; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderOperateHistoryVO.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderOperateHistoryVO.java index e537fc712..9782c59bc 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderOperateHistoryVO.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderOperateHistoryVO.java @@ -33,10 +33,14 @@ public class OrderOperateHistoryVO extends BaseAudit { private String operateMan; /** 订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单 */ - @Schema(description = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") + @Schema(description = "修改后的订 单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") private Integer orderStatus; + @Schema(description = "原来的订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") + @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") + private Integer status; + /** 备注 */ @Schema(description = "备注") @Excel(name = "备注") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderVO.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderVO.java index ddb713e2b..3bf3f52b3 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderVO.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/domain/vo/OrderVO.java @@ -204,5 +204,8 @@ public class OrderVO extends BaseAudit { @Schema(description = "配送方式 1->到店核销;2->自提;3->配送;") private Integer distribution; + @Schema(description = "核销码") + private String code; + } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/OrderServiceImpl.java index 9bce37fd4..e6e538d93 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/OrderServiceImpl.java @@ -3,7 +3,6 @@ package com.wzj.soopin.order.service.impl; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -31,15 +30,14 @@ import com.wzj.soopin.order.mapper.OrderMapper; import com.wzj.soopin.order.mapper.OrderOperateHistoryMapper; import com.wzj.soopin.order.service.OrderService; import com.wzj.soopin.order.service.VerificationCodeService; -import com.wzj.soopin.order.utils.PageUtil; import com.wzj.soopin.order.utils.SecurityUtils; import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.event.Constants; import org.dromara.common.core.utils.PhoneUtils; -import org.dromara.system.domain.SysOperLog; import org.dromara.system.domain.SysTenant; import org.dromara.system.mapper.SysOperLogMapper; import org.dromara.system.mapper.SysTenantMapper; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.Pageable; @@ -104,13 +102,12 @@ public class OrderServiceImpl extends ServiceImpl implements * @return 订单表 */ public ManagerOrderDetailVO selectById(Long id) { - // 1. 原有订单查询逻辑保持不变 + Order order = orderMapper.selectById(id); if (order == null){ throw new RuntimeException("查不到订单信息"); } - // 2. 原有VO封装逻辑保持不变 ManagerOrderDetailVO managerOrderDetailVO = new ManagerOrderDetailVO(); //封装订单信息 managerOrderDetailVO.setOrderId(id); @@ -139,12 +136,10 @@ public class OrderServiceImpl extends ServiceImpl implements managerOrderAddressVo.setName(order.getReceiverName()); managerOrderDetailVO.setAddressInfo(managerOrderAddressVo); - // 3. 原有会员查询逻辑保持不变 Member member = memberMapper.selectById(order.getMemberId()); managerOrderDetailVO.setUserName(member.getNickname()); managerOrderDetailVO.setUserPhone(member.getPhoneHidden()); - // 4. 新增租户信息查询(完全独立新增,不影响原有逻辑) if (order.getTenantId() != null) { SysTenant tenant = sysTenantMapper.selectOne( new QueryWrapper() @@ -157,7 +152,6 @@ public class OrderServiceImpl extends ServiceImpl implements } } - // 5. 原有商品查询逻辑保持不变 QueryWrapper qw = new QueryWrapper<>(); qw.eq("order_id", order.getId()); List orderItemList = orderItemMapper.selectList(qw); @@ -232,6 +226,7 @@ public class OrderServiceImpl extends ServiceImpl implements public R insert(Order order) { order.setCreateTime(LocalDateTime.now()); order.setWithdrawStatus(1); + order.setStatus(6); int insert = orderMapper.insert(order); if (insert>1){ return R.fail("订单创建失败"); @@ -424,29 +419,35 @@ public class OrderServiceImpl extends ServiceImpl implements /** * 根据订单id查询订单操作日志 + * * @param orderId 订单id * @return 结果 */ - public List log(Long orderId) { -// LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); -// wrapper.eq(OrderOperateHistory::getOrderId, orderId); -// wrapper.in(OrderOperateHistory::getOrderStatus, Arrays.asList(0, 1, 2, 3, 4)); -// wrapper.orderByDesc(OrderOperateHistory::getCreateTime); -// List historyList = orderOperateHistoryMapper.selectList(wrapper); -// return historyList; + public List log(Long orderId) { + // 查询订单操作历史记录 + LambdaQueryWrapper historyWrapper = new LambdaQueryWrapper<>(); + historyWrapper.eq(OrderOperateHistory::getOrderId, orderId); + historyWrapper.orderByDesc(OrderOperateHistory::getCreateTime); + List historyList = orderOperateHistoryMapper.selectList(historyWrapper); - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(SysOperLog::getTitle, "订单表") - .eq(SysOperLog::getOperatorType, 1) - .select( - SysOperLog::getTitle, - SysOperLog::getBusinessType, - SysOperLog::getOperName, - SysOperLog::getDeptName, - SysOperLog::getStatus, - SysOperLog::getOperTime - ); - return sysOperLogMapper.selectList(wrapper); + // 关联查询订单状态 + LambdaQueryWrapper orderWrapper = new LambdaQueryWrapper<>(); + orderWrapper.select(Order::getId, Order::getStatus); + orderWrapper.eq(Order::getId, orderId); + Order order = orderMapper.selectOne(orderWrapper); + + // 转换为VO对象 + List voList = new ArrayList<>(); + Integer orderStatus = order != null ? order.getStatus() : null; + + for (OrderOperateHistory history : historyList) { + OrderOperateHistoryVO vo = new OrderOperateHistoryVO(); + BeanUtils.copyProperties(history, vo); + vo.setStatus(orderStatus); + voList.add(vo); + } + + return voList; } public R decryptPhone(Long orderId) { @@ -496,7 +497,7 @@ public class OrderServiceImpl extends ServiceImpl implements .map(OrderVO::getId) .collect(Collectors.toList()); - // 根据订单id查询订单详情(oms_order_item表) + // 根据订单id查询订单详情 QueryWrapper orderItemQueryWrapper = new QueryWrapper<>(); orderItemQueryWrapper.in("order_id", orderIds); List orderItemList = orderItemMapper.selectList(orderItemQueryWrapper); @@ -515,7 +516,6 @@ public class OrderServiceImpl extends ServiceImpl implements skuQueryWrapper.in("id", skuIds); List skuList = skuMapper.selectList(skuQueryWrapper); - // 按照sku_id分组pms_sku数据 Map skuMapById = skuList.stream() .collect(Collectors.toMap(Sku::getId, sku -> sku)); diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/VerificationCodeServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/VerificationCodeServiceImpl.java index 0df398a86..7fa2f618a 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/VerificationCodeServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/VerificationCodeServiceImpl.java @@ -53,6 +53,8 @@ public class VerificationCodeServiceImpl extends ServiceImpl AND o.member_id LIKE CONCAT('%', #{query.memberId}, '%') + + AND um.phone_encrypted LIKE CONCAT('%', #{query.memberPhoneEncrypted}, '%') + - AND o.receiver_phone LIKE CONCAT('%', #{receiverPhone}, '%') + AND o.receiver_phone LIKE CONCAT('%', #{query.receiverPhone}, '%') AND o.status LIKE CONCAT('%', #{query.status}, '%') @@ -305,10 +308,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND o.type LIKE CONCAT('%', #{query.type}, '%') - AND o.withdraw_status LIKE CONCAT('%', #{withdrawStatus}, '%') + AND o.withdraw_status LIKE CONCAT('%', #{query.withdrawStatus}, '%') - AND o.aftersale_status LIKE CONCAT('%', #{aftersaleStatus}, '%') + AND o.aftersale_status LIKE CONCAT('%', #{query.aftersaleStatus}, '%') AND o.create_time >= #{query.startTime, jdbcType=TIMESTAMP}