diff --git a/TODOs.md b/TODOs.md
index e86578e..ac84600 100644
--- a/TODOs.md
+++ b/TODOs.md
@@ -21,6 +21,7 @@
后台订单管理页
+每个人创建账号的时候填充一些测试数据进去
门禁端左侧提示文字修改
diff --git a/backend/microservice-common/src/main/java/com/cxyxiaomo/epp/common/vo/OrderVO.java b/backend/microservice-common/src/main/java/com/cxyxiaomo/epp/common/vo/OrderVO.java
index 8610f87..b2bc585 100644
--- a/backend/microservice-common/src/main/java/com/cxyxiaomo/epp/common/vo/OrderVO.java
+++ b/backend/microservice-common/src/main/java/com/cxyxiaomo/epp/common/vo/OrderVO.java
@@ -47,8 +47,8 @@ public class OrderVO implements Serializable {
String price = order.getOrderPrice().setScale(2, RoundingMode.FLOOR).toPlainString();
orderVO.setOrderPrice(price);
- if (order.getOrderDate() != null) {
- orderVO.setPayDate(order.getOrderDate().toString().replace("T", " "));
+ if (order.getPayDate() != null) {
+ orderVO.setPayDate(order.getPayDate().toString().replace("T", " "));
}
if (order.getCancelDate() != null) {
orderVO.setCancelDate(order.getCancelDate().toString().replace("T", " "));
diff --git a/backend/microservice-provider-shop-8003/src/main/java/com/cxyxiaomo/epp/shop/controller/OrderController.java b/backend/microservice-provider-shop-8003/src/main/java/com/cxyxiaomo/epp/shop/controller/OrderController.java
index 9ae493e..4af3a5d 100644
--- a/backend/microservice-provider-shop-8003/src/main/java/com/cxyxiaomo/epp/shop/controller/OrderController.java
+++ b/backend/microservice-provider-shop-8003/src/main/java/com/cxyxiaomo/epp/shop/controller/OrderController.java
@@ -223,4 +223,42 @@ public class OrderController {
return Res.success(success ? "取消成功" : "取消失败");
}
+
+ @PostMapping("/miniprogram/confirmOrder")
+ @ResponseBody
+ public Res confirmOrder(@RequestBody JSONObject params) {
+ Long orderId = params.getLong("orderId");
+ if (orderId == null) {
+ return Res.error("参数错误");
+ }
+
+ // 查询订单详情
+ Order order = orderService.getOrderById(orderId);
+ if (order == null) {
+ return Res.error("订单不存在");
+ }
+
+ //判断是否可以取消
+ OrderStatus orderStatus = OrderStatus.get(order.getOrderStatus());
+ switch (orderStatus) {
+ case PENDING:
+ return Res.error("订单尚未支付,不可确认收货");
+ case PROCESSING:
+ return Res.error("订单尚未发货,不可确认收货");
+ case SHIPPED:
+ // 可以确认收货
+ break;
+ case DELIVERED:
+ return Res.error("您已确认收货,无需再次确认");
+ case CANCELLED:
+ return Res.error("订单已取消,不可确认收货");
+ default:
+ return Res.error("当前订单状态无法确认收货");
+ }
+
+ // 更新支付信息
+ Boolean success = orderService.updateOrderStatus(orderId, OrderStatus.DELIVERED);
+
+ return Res.success(success ? "确认收货成功" : "确认收货失败");
+ }
}
diff --git a/weixin-miniprogram/pages/shop/orderDetail.js b/weixin-miniprogram/pages/shop/orderDetail.js
index 3e3ec77..6ec80d4 100644
--- a/weixin-miniprogram/pages/shop/orderDetail.js
+++ b/weixin-miniprogram/pages/shop/orderDetail.js
@@ -188,6 +188,39 @@ Page({
})
},
+ // 订单状态:已发货,点击确认收货
+ confirmReceipt() {
+ // 点击确认收货按钮
+ wx.showModal({
+ title: '是否确认收货?',
+ content: '未收到货时请不要点击确认',
+ complete: (res) => {
+ if (res.confirm) {
+ (async () => {
+ this.clearPageData()
+ let confirmResult = await orderService.confirmOrder(this.data.orderId)
+ console.log("confirmResult", confirmResult)
+ this.onLoad(this.data._options)
+ this.refreshMyOrderPage()
+ wx.showModal({
+ title: '操作结果',
+ content: confirmResult || "操作失败,请重试",
+ showCancel: false,
+ complete: (res) => {
+ // wx.navigateBack({
+ // delta: getCurrentPages().length - 1
+ // })
+ // wx.navigateTo({
+ // url: "/pages/shop/orderDetail?orderId=" + this.data.orderId,
+ // })
+ }
+ })
+ })();
+ }
+ }
+ })
+ },
+
loadPageData() {
(async () => {
console.log("orderId", this.data.orderId)
diff --git a/weixin-miniprogram/pages/shop/orderDetail.wxml b/weixin-miniprogram/pages/shop/orderDetail.wxml
index 2bf8e00..4a1c45f 100644
--- a/weixin-miniprogram/pages/shop/orderDetail.wxml
+++ b/weixin-miniprogram/pages/shop/orderDetail.wxml
@@ -45,6 +45,8 @@
订单取消时间:{{order.cancelDate}}
订单发货时间:{{order.shipDate}}
确认收货时间:{{order.deliverDate}}
+ 发货快递单号:{{order.expressId}}
+ 发货备注信息:{{order.comment}}
订单详情
@@ -86,10 +88,12 @@
❕无法操作已取消订单
+ 当前订单尚未发货,可以取消
取消订单
当前订单不可取消,请耐心等待
+ 确认收货
✅订单已送达
-
\ No newline at end of file
+
diff --git a/weixin-miniprogram/services/order.js b/weixin-miniprogram/services/order.js
index 5bdd32b..26a91fa 100644
--- a/weixin-miniprogram/services/order.js
+++ b/weixin-miniprogram/services/order.js
@@ -61,3 +61,14 @@ export function cancelOrder(orderId) {
}
})
}
+
+/** 确认收货 */
+export function confirmOrder(orderId) {
+ return send_request({
+ url: '/shop/order/miniprogram/confirmOrder',
+ method: "POST",
+ data: {
+ "orderId": orderId,
+ }
+ })
+}