From c74a6f59490cfb9a0ee37f70427739b74e7fbd58 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 20 五月 2026 08:50:29 +0800
Subject: [PATCH] 代码生成

---
 server/admin/src/main/java/com/doumee/api/business/OrdersController.java |  139 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 106 insertions(+), 33 deletions(-)

diff --git a/server/admin/src/main/java/com/doumee/api/business/OrdersController.java b/server/admin/src/main/java/com/doumee/api/business/OrdersController.java
index 983a2e0..5bfa6ba 100644
--- a/server/admin/src/main/java/com/doumee/api/business/OrdersController.java
+++ b/server/admin/src/main/java/com/doumee/api/business/OrdersController.java
@@ -2,44 +2,48 @@
 
 import com.doumee.api.BaseController;
 import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.constants.Constants;
 import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.dao.business.model.Orders;
+import com.doumee.dao.dto.ConfirmArriveDTO;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.dao.dto.DispatchDTO;
+import com.doumee.dao.dto.HandleOrderExceptionDTO;
+import com.doumee.dao.dto.ManualRefundDTO;
+import com.doumee.dao.vo.OrderDetailVO;
+import com.doumee.dao.vo.OrderDispatchVO;
+import com.doumee.dao.vo.OrdersExportVO;
+import com.doumee.dao.vo.OrderSummaryVO;
 import com.doumee.service.business.OrdersService;
-import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.SecurityUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 瀵勫瓨璁㈠崟绠$悊
+ * @author rk
+ * @date 2026/04/10
  */
-@Api(tags = "璁㈠崟淇℃伅璁板綍")
+@Api(tags = "瀵勫瓨璁㈠崟")
 @RestController
 @RequestMapping("/business/orders")
 public class OrdersController extends BaseController {
 
     @Autowired
     private OrdersService ordersService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:orders:create")
-    public ApiResponse create(@RequestBody Orders orders) {
-        return ApiResponse.success(ordersService.create(orders));
-    }
 
     @ApiOperation("鏍规嵁ID鍒犻櫎")
     @GetMapping("/delete/{id}")
@@ -53,7 +57,7 @@
     @GetMapping("/delete/batch")
     @RequiresPermissions("business:orders:delete")
     public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
+        String[] idArray = ids.split(",");
         List<Integer> idList = new ArrayList<>();
         for (String id : idArray) {
             idList.add(Integer.valueOf(id));
@@ -62,42 +66,111 @@
         return ApiResponse.success(null);
     }
 
-//    @ApiOperation("鏍规嵁ID淇敼")
-//    @PostMapping("/updateById")
-//    @RequiresPermissions("business:orders:update")
-//    public ApiResponse updateById(@RequestBody Orders orders) {
-//        ordersService.updateById(orders);
-//        return ApiResponse.success(null);
-//    }
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:orders:update")
+    public ApiResponse updateById(@RequestBody Orders orders) {
+        ordersService.updateById(orders);
+        return ApiResponse.success(null);
+    }
 
     @ApiOperation("鍒嗛〉鏌ヨ")
     @PostMapping("/page")
     @RequiresPermissions("business:orders:query")
-    public ApiResponse<PageData<Orders>> findPage (@RequestBody PageWrap<Orders> pageWrap) {
+    public ApiResponse<PageData<Orders>> findPage(@RequestBody PageWrap<Orders> pageWrap) {
         return ApiResponse.success(ordersService.findPage(pageWrap));
+    }
+
+    @ApiOperation("璁㈠崟姹囨�荤粺璁�")
+    @PostMapping("/summary")
+    @RequiresPermissions("business:orders:query")
+    public ApiResponse<OrderSummaryVO> findSummary(@RequestBody PageWrap<Orders> pageWrap) {
+        return ApiResponse.success(ordersService.findSummary(pageWrap));
     }
 
     @ApiOperation("瀵煎嚭Excel")
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:orders:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Orders> pageWrap, HttpServletResponse response) {
-        List<Orders> ordersList = ordersService.findPage(pageWrap).getRecords();
-        ExcelExporter.build(Orders.class).export(ordersList, "璁㈠崟淇℃伅璁板綍", response);
+    public void exportExcel(@RequestBody PageWrap<Orders> pageWrap, HttpServletResponse response) {
+        List<Orders> records = ordersService.findPage(pageWrap).getRecords();
+        List<OrdersExportVO> exportList = new ArrayList<>();
+        for (Orders o : records) {
+            OrdersExportVO vo = new OrdersExportVO();
+            vo.setCode(o.getCode());
+            vo.setGoodsInfo(o.getGoodsInfo());
+            vo.setTypeName(o.getType() != null ? (o.getType() == 0 ? "灏卞湴瀛樺彇" : "寮傚湴瀛樺彇") : "");
+            vo.setOrderLevel(Constants.getDriverLevelName(Objects.nonNull(o.getOrderLevel())?Integer.valueOf(o.getOrderLevel()):Constants.ZERO));
+            vo.setDeclaredFee(String.valueOf(Constants.getFormatMoney(o.getDeclaredFee())));
+            vo.setBasicAmount(String.valueOf(Constants.getFormatMoney(o.getBasicAmount())));
+            vo.setTotalAmount(String.valueOf(Constants.getFormatMoney(o.getTotalAmount())));
+            vo.setPayAmount(String.valueOf(Constants.getFormatMoney(o.getPayAmount())));
+            vo.setUrgentAmount(String.valueOf(Constants.getFormatMoney(o.getUrgentAmount())));
+            vo.setRefundAmount(String.valueOf(Constants.getFormatMoney(o.getRefundAmount())));
+            vo.setOverdueAmount(String.valueOf(Constants.getFormatMoney(o.getOverdueAmount())));
+            vo.setExceptionAmount(String.valueOf(Constants.getFormatMoney(o.getExceptionAmount())));
+            vo.setDeductionAmount(String.valueOf(Constants.getFormatMoney(o.getDeductionAmount())));
+            vo.setStatusDesc(o.getStatusDesc());
+            vo.setSettlementDesc(o.getSettlementStatus() != null ? (o.getSettlementStatus() == 1 ? "宸茬粨绠�" : "寰呯粨绠�") : "");
+            vo.setPayTime(o.getPayTime());
+            vo.setCreateTime(o.getCreateTime());
+            exportList.add(vo);
+        }
+        String fileName = "璁㈠崟绠$悊瀵煎嚭_" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
+        ExcelExporter.build(OrdersExportVO.class).export(exportList, fileName, response);
     }
 
-    @ApiOperation("鏍规嵁ID鏌ヨ ")
+    @ApiOperation("鏍规嵁ID鏌ヨ")
     @GetMapping("/{id}")
     @RequiresPermissions("business:orders:query")
     public ApiResponse findById(@PathVariable Integer id) {
         return ApiResponse.success(ordersService.findById(id));
     }
 
-    @ApiOperation("骞冲彴鍙栨秷璁㈠崟")
-    @GetMapping("/cancel")
+    @ApiOperation("璁㈠崟璇︽儏")
+    @GetMapping("/detail/{id}")
+    @RequiresPermissions("business:orders:query")
+    public ApiResponse<OrderDetailVO> findDetail(@PathVariable Integer id) {
+        return ApiResponse.success(ordersService.findDetail(id));
+    }
+
+    @ApiOperation("鎵嬪姩娲惧崟淇℃伅")
+    @GetMapping("/dispatch/{id}")
+    @RequiresPermissions("business:orders:query")
+    public ApiResponse<OrderDispatchVO> findDispatchInfo(@PathVariable Integer id) {
+        return ApiResponse.success(ordersService.findDispatchInfo(id));
+    }
+
+    @ApiOperation("璁㈠崟娲惧崟")
+    @PostMapping("/dispatch")
     @RequiresPermissions("business:orders:update")
-    public ApiResponse cancel(@RequestParam Integer id) {
-        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
-        ordersService.platformCancel(id,loginUserInfo);
+    public ApiResponse dispatch(@RequestBody DispatchDTO dto) {
+        ordersService.dispatch(dto);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵嬪姩瑙﹀彂璁㈠崟缁撶畻")
+    @PostMapping("/settle")
+    @RequiresPermissions("business:orders:update")
+    public ApiResponse settleOrders() {
+        ordersService.settleOrders();
+        return ApiResponse.success("缁撶畻瀹屾垚");
+    }
+
+    @ApiOperation("鎵嬪姩閫�娆�")
+    @PostMapping("/manualRefund")
+    @RequiresPermissions("business:orders:update")
+    @PreventRepeat
+    public ApiResponse manualRefund(@RequestBody @Valid ManualRefundDTO dto) {
+        ordersService.manualRefund(dto, this.getLoginUser().getId());
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
+    @PreventRepeat
+    @ApiOperation("璁㈠崟寮傚父澶勭悊")
+    @PostMapping("/handleException")
+    @RequiresPermissions("business:orders:update")
+    public ApiResponse handleException(@RequestBody @Valid HandleOrderExceptionDTO dto) {
+        ordersService.handleOrderException(dto);
         return ApiResponse.success("鎿嶄綔鎴愬姛");
     }
 

--
Gitblit v1.9.3