From d357906f3b10b51bd6d115d3ffeeeea35687de86 Mon Sep 17 00:00:00 2001
From: wangfukang <15630117759@163.com>
Date: Sun, 20 Sep 2026 11:09:09 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E6=8B=BC=E5=9B=A2=E6=95=B0?=
=?UTF-8?q?=E6=8D=AE1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/resources/application.yml | 7 +
hiver-admin/test-output/test-report.html | 16 +-
.../java/cc/hiver/core/dao/WorkerDao.java | 4 +
.../java/cc/hiver/core/entity/Worker.java | 4 +
.../cc/hiver/core/service/WorkerService.java | 2 +
.../core/serviceimpl/JPushServiceImpl.java | 1 +
.../core/serviceimpl/WorkerServiceImpl.java | 5 +
.../MallDeliveryOrderController.java | 67 +++
.../mall/controller/MallOrderController.java | 22 +
.../mall/controller/OrderController.java | 2 +-
.../mall/controller/ShopAreaController.java | 79 ++-
.../hiver/mall/controller/ShopController.java | 366 +++++++++---
.../controller/ShopTakeawayController.java | 7 +
.../controller/UserAddressController.java | 37 +-
.../mall/controller/WorkerController.java | 37 +-
.../dao/mapper/MallDeliveryOrderMapper.java | 10 +
.../hiver/mall/entity/MallDeliveryOrder.java | 6 +
.../main/java/cc/hiver/mall/entity/Shop.java | 9 +
.../java/cc/hiver/mall/entity/ShopArea.java | 10 +-
.../cc/hiver/mall/entity/ShopTakeaway.java | 11 +
.../cc/hiver/mall/entity/UserAddress.java | 8 +
.../cc/hiver/mall/mq/OrderAsyncProducer.java | 31 ++
.../mall/mq/OrderCloudPrintConsumer.java | 50 ++
.../cc/hiver/mall/mq/OrderQueueConfig.java | 28 +
.../mall/pojo/dto/BusinessHourPeriod.java | 22 +
.../query/MallDeliveryOrderPageQuery.java | 9 +
.../hiver/mall/service/ShopAreaService.java | 4 +-
.../mybatis/MallDeliveryOrderService.java | 10 +
.../mall/serviceimpl/ShopAreaServiceImpl.java | 108 +++-
.../mall/serviceimpl/ShopServiceImpl.java | 117 ++--
.../serviceimpl/ShopTakeawayServiceImpl.java | 59 +-
.../mybatis/MallDeliveryOrderServiceImpl.java | 58 +-
.../mybatis/MallOrderGroupServiceImpl.java | 1 +
.../mybatis/MallOrderServiceImpl.java | 39 ++
.../mybatis/MallRefundRecordServiceImpl.java | 58 +-
.../mall/utils/DaQuCloudPrintService.java | 106 ++++
.../cc/hiver/mall/utils/DaQuPrinterUtil.java | 521 ++++++++++++++++++
.../mall/utils/DaQuReceiptRenderUtil.java | 313 +++++++++++
.../mall/utils/ShopBusinessHourUtil.java | 218 ++++++++
.../resources/db/shop_area_geo_polygon.sql | 2 +
.../main/resources/db/shop_cloud_print.sql | 4 +
.../main/resources/db/shop_starting_price.sql | 2 +
.../db/shop_takeaway_business_hours.sql | 16 +
.../resources/db/transfer_worker_delivery.sql | 8 +
.../main/resources/db/user_address_geo.sql | 3 +
.../mapper/MallDeliveryOrderMapper.xml | 130 ++++-
.../main/resources/mapper/ShopAreaMapper.xml | 65 ++-
.../resources/mapper/ShopTakeawayMapper.xml | 10 +-
.../resources/mapper/UserAddressMapper.xml | 6 +-
49 files changed, 2454 insertions(+), 254 deletions(-)
create mode 100644 hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/mq/OrderCloudPrintConsumer.java
create mode 100644 hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/dto/BusinessHourPeriod.java
create mode 100644 hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/utils/DaQuCloudPrintService.java
create mode 100644 hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/utils/DaQuPrinterUtil.java
create mode 100644 hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/utils/DaQuReceiptRenderUtil.java
create mode 100644 hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/utils/ShopBusinessHourUtil.java
create mode 100644 hiver-modules/hiver-mall/src/main/resources/db/shop_area_geo_polygon.sql
create mode 100644 hiver-modules/hiver-mall/src/main/resources/db/shop_cloud_print.sql
create mode 100644 hiver-modules/hiver-mall/src/main/resources/db/shop_starting_price.sql
create mode 100644 hiver-modules/hiver-mall/src/main/resources/db/shop_takeaway_business_hours.sql
create mode 100644 hiver-modules/hiver-mall/src/main/resources/db/transfer_worker_delivery.sql
create mode 100644 hiver-modules/hiver-mall/src/main/resources/db/user_address_geo.sql
diff --git a/hiver-admin/src/main/resources/application.yml b/hiver-admin/src/main/resources/application.yml
index 758473f8..79de7f07 100644
--- a/hiver-admin/src/main/resources/application.yml
+++ b/hiver-admin/src/main/resources/application.yml
@@ -3,6 +3,12 @@ jasypt:
encryptor:
password: hiver
+daqu:
+ printer:
+ appid: 1550073157890342912
+ appSecret: cxtFP8nYWx7VC48ov9V5QJ1HpGenWu4a
+ apiBaseUrl: https://api.trenditiot.com
+
ie:
aliyun:
green:
@@ -537,6 +543,7 @@ logging:
jpush:
appKey: 130f556e8473c9b558777fe3
masterSecret: 2b4e5196dfc40a78db36480d
+ apnsProduction: true
aliyun:
openapi:
accessKeyId: 56640
diff --git a/hiver-admin/test-output/test-report.html b/hiver-admin/test-output/test-report.html
index 267b60c5..174185cb 100644
--- a/hiver-admin/test-output/test-report.html
+++ b/hiver-admin/test-output/test-report.html
@@ -35,7 +35,7 @@
Hiver
-九月 09, 2026 10:15:14
+九月 19, 2026 15:49:28
@@ -84,7 +84,7 @@
passTest
-
10:15:14 上午 / 0.021 secs
+
15:49:29 下午 / 0.022 secs
@@ -92,9 +92,9 @@
#test-id=1
passTest
-
09.09.2026 10:15:14
-
09.09.2026 10:15:14
-
0.021 secs
+
09.19.2026 15:49:29
+
09.19.2026 15:49:29
+
0.022 secs
@@ -104,7 +104,7 @@
| Pass |
- 10:15:14 |
+ 15:49:29 |
Test passed
|
@@ -128,13 +128,13 @@
Started
-
九月 09, 2026 10:15:14
+
九月 19, 2026 15:49:28
Ended
-
九月 09, 2026 10:15:14
+
九月 19, 2026 15:49:29
diff --git a/hiver-core/src/main/java/cc/hiver/core/dao/WorkerDao.java b/hiver-core/src/main/java/cc/hiver/core/dao/WorkerDao.java
index 1284d127..842c2f0a 100644
--- a/hiver-core/src/main/java/cc/hiver/core/dao/WorkerDao.java
+++ b/hiver-core/src/main/java/cc/hiver/core/dao/WorkerDao.java
@@ -27,6 +27,10 @@ public interface WorkerDao extends HiverBaseDao
{
@Query("update Worker w set w.isFullTime=?2 where w.workerId=?1")
void changeFullTime(String id, Integer isFullTime);
+ @Modifying
+ @Query("update Worker w set w.canTransferOrder=?2 where w.workerId=?1")
+ void changeCanTransferOrder(String id, Integer canTransferOrder);
+
@Modifying
@Query("update Worker w set w.workerStatus=?2 where w.workerId = ?1")
void delById(String id, Integer workerStatusDisable);
diff --git a/hiver-core/src/main/java/cc/hiver/core/entity/Worker.java b/hiver-core/src/main/java/cc/hiver/core/entity/Worker.java
index 01264a95..fa1946b1 100644
--- a/hiver-core/src/main/java/cc/hiver/core/entity/Worker.java
+++ b/hiver-core/src/main/java/cc/hiver/core/entity/Worker.java
@@ -203,6 +203,10 @@ public class Worker implements Serializable {
@Column(name = "is_full_time")
private Integer isFullTime = 0;
+ @ApiModelProperty(value = "鏄惁鍙互鎺ヤ腑杞崟锛0鍚 1鏄")
+ @Column(name = "can_transfer_order")
+ private Integer canTransferOrder = 0;
+
@ApiModelProperty(value = "璇勫垎")
@Column(name = "score")
private BigDecimal score;
diff --git a/hiver-core/src/main/java/cc/hiver/core/service/WorkerService.java b/hiver-core/src/main/java/cc/hiver/core/service/WorkerService.java
index c0d71375..9b4fc08c 100644
--- a/hiver-core/src/main/java/cc/hiver/core/service/WorkerService.java
+++ b/hiver-core/src/main/java/cc/hiver/core/service/WorkerService.java
@@ -56,6 +56,8 @@ public interface WorkerService extends HiverBaseService {
void changeFullTime(String id, Integer isFullTime);
+ void changeCanTransferOrder(String id, Integer canTransferOrder);
+
/**
* 鍒犻櫎锛堜慨鏀逛负绂佺敤鐘舵侊級
*
diff --git a/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java b/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java
index 49ba54f0..846097e0 100644
--- a/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java
+++ b/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java
@@ -83,6 +83,7 @@ public class JPushServiceImpl implements JPushService {
.setApnsProduction(Boolean.TRUE.equals(apnsProduction))
.build())
.build();
+ System.out.println("JPush send target: " + registrationId + ", apnsProduction: " + apnsProduction + ", orderId: " + orderId);
PushResult result = jPushClient.sendPush(payload);
System.out.println("Push result: " + result);
} catch (Exception e) {
diff --git a/hiver-core/src/main/java/cc/hiver/core/serviceimpl/WorkerServiceImpl.java b/hiver-core/src/main/java/cc/hiver/core/serviceimpl/WorkerServiceImpl.java
index b7e74f94..40d5c47c 100644
--- a/hiver-core/src/main/java/cc/hiver/core/serviceimpl/WorkerServiceImpl.java
+++ b/hiver-core/src/main/java/cc/hiver/core/serviceimpl/WorkerServiceImpl.java
@@ -253,6 +253,11 @@ public class WorkerServiceImpl implements WorkerService {
workerDao.changeFullTime(id, isFullTime);
}
+ @Override
+ public void changeCanTransferOrder(String id, Integer canTransferOrder) {
+ workerDao.changeCanTransferOrder(id, canTransferOrder);
+ }
+
/**
* 鍒犻櫎锛堜慨鏀逛负绂佺敤鐘舵侊級
*
diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallDeliveryOrderController.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallDeliveryOrderController.java
index 257f8dd7..6e2d9315 100644
--- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallDeliveryOrderController.java
+++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallDeliveryOrderController.java
@@ -257,10 +257,65 @@ public class MallDeliveryOrderController {
q.setTransferDelivery(1);
q.setDeliveryType(1);
q.setOrder("transferDelivery");
+ if (Boolean.TRUE.equals(q.getTransferWorkerView())) {
+ q.setShopId(null);
+ q.setStatus(1);
+ q.setTransferArriveEmpty(true);
+ }
IPage page = mallDeliveryOrderService.pageDelivery(q);
return new ResultUtil