From b224c081c0e21dad51f0f628d5c1fbfd4245cddd Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 14 Aug 2025 15:08:59 +0800
Subject: [PATCH] refactor(websocket): 重构 WebSocket 相关代码
---
src/main/java/cc/mrbird/febs/mall/controller/order/AdminMallOrderController.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 46 insertions(+), 5 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/order/AdminMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/order/AdminMallOrderController.java
index 48aa205..2ce691d 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/order/AdminMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/order/AdminMallOrderController.java
@@ -399,6 +399,44 @@
return new FebsResponse().success();
}
+ @GetMapping("confirmLeaderOrder")
+ @ControllerEndpoint(operation = "确认货到达自提点", exceptionMessage = "操作失败")
+ public FebsResponse confirmLeaderOrder(MallOrderInfo mallOrderInfoDto){
+ String orderIds = mallOrderInfoDto.getOrderIds();
+ List<String> ids = StrUtil.splitTrim(orderIds, ",");
+ for(String id : ids){
+ long orderId = Long.parseLong(id);
+ MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId);
+ if(ObjectUtil.isEmpty(mallOrderInfo)){
+// continue;
+ return new FebsResponse().fail().message("订单不存在");
+ }
+ Integer status = mallOrderInfo.getStatus() == null ? 0 : mallOrderInfo.getStatus();
+ if(OrderStatusEnum.WAIT_SHIPPING.getValue() != status){
+// continue;
+ return new FebsResponse().fail().message("订单不是待发货状态");
+ }
+ mallOrderInfo.setStatus(OrderStatusEnum.WAIT_FINISH.getValue());
+ mallOrderInfoMapper.updateById(mallOrderInfo);
+
+// OrderStateDto orderStateDto = new OrderStateDto();
+// String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId());
+// orderStateDto.setGoodsName(StrUtil.sub(productNames,0,15)+"...");
+// String takeUniqueCode = mallOrderInfo.getTakeUniqueCode();
+// MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode);
+// orderStateDto.setAddressArea(mallTeamLeader.getAddressArea());
+// orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,20)+"...");
+// orderStateDto.setRemark("果蔬等生鲜,请尽快取货");
+// orderStateDto.setLeaderPhone(mallTeamLeader.getPhone());
+// orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId());
+// DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getCode());
+// orderStateDto.setTemplateId(dataDictionaryCustom.getValue());
+// iXcxPayService.pushOrderToAddress(orderStateDto);
+// iXcxPayService.uniformMessageSend(orderStateDto);
+ }
+ return new FebsResponse().success();
+ }
+
@GetMapping("deliverOrder")
@ControllerEndpoint(operation = "导出订单列表,系统自动发货", exceptionMessage = "操作失败")
public FebsResponse deliverOrder(MallOrderInfo mallOrderInfoDto){
@@ -475,7 +513,7 @@
orderSheet.setTitle(title);
// String[] header = {"订单编号", "订单详情(商品*数量)", "订单金额", "用户提货码", "配送方式", "用户姓名", "用户电话","用户地址", "团长名称", "团长手机号码", "自提点名称"};
- String[] header = {"订单编号", "订单详情(商品*数量)", "订单金额", "用户提货码", "用户姓名", "用户电话","用户地址", "团长名称", "团长手机号码", "自提点名称"};
+ String[] header = {"订单编号", "订单详情(商品*数量)", "订单金额", "用户提货码", "用户姓名", "用户电话","用户地址", "联系人", "联系号码", "自提点名称"};
orderSheet.setHeaders(header);
QueryRequest request = new QueryRequest();
@@ -484,13 +522,17 @@
List<MallOrderInfo> dataList = new ArrayList<>();
String orderIds = mallOrderInfo.getOrderIds();
List<String> ids = StrUtil.splitTrim(orderIds, ",");
+ String takeUniqueCode = "";
for(String id : ids){
long orderId = Long.parseLong(id);
MallOrderInfo mallOrderInfo1 = mallOrderInfoMapper.selectAllOrderInfoByIdAndTakeUniqueCode(orderId,mallOrderInfo.getTakeUniqueCode());
if(ObjectUtil.isNotEmpty(mallOrderInfo1)){
dataList.add(mallOrderInfo1);
+ takeUniqueCode = mallOrderInfo1.getTakeUniqueCode();
}
}
+
+ MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode);
// List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords();
List<List<Object>> list = new ArrayList<>();
if (CollUtil.isNotEmpty(dataList)) {
@@ -518,9 +560,9 @@
temp.add(item.getPhone());
temp.add(item.getAddress());
- temp.add(item.getLeaderName());
- temp.add(item.getLeaderPhone());
- temp.add(item.getAddressArea());
+ temp.add(mallTeamLeader.getName());
+ temp.add(mallTeamLeader.getPhone());
+ temp.add(mallTeamLeader.getAddressArea());
list.add(temp);
// adminMallOrderService.updateOrderStateAndDeliveryState(item.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue());
}
@@ -528,7 +570,6 @@
orderSheet.setDataList(list);
res.add(orderSheet);
response = ResponseHeadUtil.setExcelHead(response);
- MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(mallOrderInfo.getTakeUniqueCode());
String name = mallTeamLeader.getName();
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(name+"-"+title + DateUtil.format(new Date(), "yyyyMMDDHHmmss") + ".xlsx".trim(), "UTF-8"));
--
Gitblit v1.9.1