From c1d20b425b10e8ba59f102dd1ab413055883eed0 Mon Sep 17 00:00:00 2001
From: 彭雪彬 <1724387007@qq.com>
Date: Mon, 14 Jul 2025 16:57:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/xin' into pxb

---
 oying-system/src/main/java/com/oying/modules/sh/rest/OrderController.java |  107 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 107 insertions(+), 0 deletions(-)

diff --git a/oying-system/src/main/java/com/oying/modules/sh/rest/OrderController.java b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderController.java
new file mode 100644
index 0000000..2815777
--- /dev/null
+++ b/oying-system/src/main/java/com/oying/modules/sh/rest/OrderController.java
@@ -0,0 +1,107 @@
+package com.oying.modules.sh.rest;
+
+import com.oying.annotation.Log;
+import com.oying.modules.sh.domain.Order;
+import com.oying.modules.sh.domain.request.GeneratorOrder;
+import com.oying.modules.sh.domain.request.SubmitOrder;
+import com.oying.modules.sh.service.OrderService;
+import com.oying.modules.sh.domain.dto.OrderQueryCriteria;
+import com.oying.utils.R;
+import com.oying.utils.SecurityUtils;
+import lombok.RequiredArgsConstructor;
+
+import java.util.List;
+
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+import io.swagger.annotations.*;
+
+import java.io.IOException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
+/**
+ * @author lixin
+ * @date 2025-06-11
+ **/
+@RestController
+@RequiredArgsConstructor
+@Api(tags = "SH:订单信息")
+@RequestMapping("/api/order")
+public class OrderController {
+
+    private final OrderService orderService;
+
+    @ApiOperation("导出数据")
+    @GetMapping(value = "/download")
+    @PreAuthorize("@el.check('order:list')")
+    public void exportOrder(HttpServletResponse response, OrderQueryCriteria criteria) throws IOException {
+        orderService.download(orderService.queryAll(criteria), response);
+    }
+
+    @GetMapping
+    @ApiOperation("查询订单信息")
+    @PreAuthorize("@el.check('order:list')")
+    public ResponseEntity<Object> queryOrder(OrderQueryCriteria criteria) {
+        Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize());
+        return new ResponseEntity<>(R.success(orderService.queryAll(criteria, page)), HttpStatus.OK);
+    }
+
+    @GetMapping("mini")
+    @ApiOperation("小程序:查询订单信息列")
+    public ResponseEntity<Object> miniQueryOrder(OrderQueryCriteria criteria) {
+        Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize());
+        criteria.setUserId(SecurityUtils.getCurrentUserId());
+        return new ResponseEntity<>(R.success(orderService.queryAll(criteria, page)), HttpStatus.OK);
+    }
+
+    @PostMapping
+    @Log("新增订单信息")
+    @ApiOperation("新增订单信息")
+    @PreAuthorize("@el.check('order:add')")
+    public ResponseEntity<Object> create(@Validated @RequestBody Order order) {
+        orderService.create(order);
+        return new ResponseEntity<>(R.success(), HttpStatus.CREATED);
+    }
+
+    @PostMapping("generator")
+    @Log("小程序:生成确认订单")
+    @ApiOperation("小程序:生成确认订单")
+    public ResponseEntity<Object> generatorOrder(@Validated @RequestBody GeneratorOrder generator) {
+        return new ResponseEntity<>(R.success(orderService.generatorOrder(generator)), HttpStatus.CREATED);
+    }
+
+    @PostMapping("submit")
+    @Log("小程序:提交订单")
+    @ApiOperation("小程序:提交订单")
+    public ResponseEntity<Object> submitOrder(@Validated @RequestBody SubmitOrder submit, HttpServletRequest request) {
+        return new ResponseEntity<>(R.success(orderService.submitOrder(submit, request)), HttpStatus.CREATED);
+    }
+
+    @DeleteMapping
+    @Log("删除订单信息")
+    @ApiOperation("删除订单信息")
+    public ResponseEntity<Object> deleteOrder(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) {
+        orderService.deleteAll(ids);
+        return new ResponseEntity<>(R.success(), HttpStatus.OK);
+    }
+
+    @Log("关闭订单")
+    @ApiOperation("关闭订单")
+    @PostMapping(value = "/closeOrder")
+    public ResponseEntity<Object> closeOrder(@RequestParam String orderNum) {
+        orderService.closeOrder(orderNum);
+        return new ResponseEntity<>(R.success(), HttpStatus.OK);
+    }
+
+    @ApiOperation("订单号查询订单")
+    @GetMapping(value = "/getByOrderNum")
+    public ResponseEntity<Object> getByOrderNum(@RequestParam String orderNum) {
+        return new ResponseEntity<>(R.success(orderService.getByOrderNum(orderNum)), HttpStatus.OK);
+    }
+}

--
Gitblit v1.9.3