diff --git a/qrcode/1933713270742081537.png b/qrcode/1933713270742081537.png
new file mode 100644
index 000000000..e885c953b
Binary files /dev/null and b/qrcode/1933713270742081537.png differ
diff --git a/qrcode/1935226754499760129.png b/qrcode/1935226754499760129.png
new file mode 100644
index 000000000..c28c42c3f
Binary files /dev/null and b/qrcode/1935226754499760129.png differ
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}