From 7c1335ff559c08bbcef479bd2b01a08a1f4e55f2 Mon Sep 17 00:00:00 2001 From: guyue <1721849008@qq.com> Date: 星期五, 15 八月 2025 10:59:18 +0800 Subject: [PATCH] 增加json时区,修付开始采集状态,修改导出校验 --- src/main/java/com/linghu/controller/OrderController.java | 153 ++++++++++++++++++++------------------------------- 1 files changed, 60 insertions(+), 93 deletions(-) diff --git a/src/main/java/com/linghu/controller/OrderController.java b/src/main/java/com/linghu/controller/OrderController.java index ea27ecc..49afe6a 100644 --- a/src/main/java/com/linghu/controller/OrderController.java +++ b/src/main/java/com/linghu/controller/OrderController.java @@ -4,15 +4,25 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.databind.util.BeanUtil; import com.linghu.model.common.ResponseResult; -import com.linghu.model.entity.Order; +import com.linghu.model.entity.Keyword; +import com.linghu.model.entity.Orders; +import com.linghu.model.dto.KeywordDto; import com.linghu.model.dto.OrderDto; +import com.linghu.model.page.CustomPage; +import com.linghu.service.KeywordService; import com.linghu.service.OrderService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; +import javax.validation.Valid; import java.text.SimpleDateFormat; +import java.time.LocalDateTime; import java.util.Date; import java.util.List; @@ -20,138 +30,95 @@ * 订单管理接口 */ @RestController -@RequestMapping("/order") +@RequestMapping("/orders") +@Api(value = "订单管理接口", tags = "订单管理") public class OrderController { @Autowired private OrderService orderService; + /** * 新增订单 */ @PostMapping - public ResponseResult<Order> add(@RequestBody OrderDto orderDto) { - //将dto转entity - Order order = new Order(); - BeanUtils.copyProperties(orderDto, order); - - if (order.getClient_name() == null || order.getClient_name().trim().isEmpty()) { - return ResponseResult.error("客户名称不能为空"); - } - - // 生成订单ID:日期+当天的订单数量(如:202507060001) - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd"); - String dateStr = dateFormat.format(new Date()); - - // 查询当天订单数量 - LambdaQueryWrapper<Order> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.likeRight(Order::getOrder_id, dateStr); - long count = orderService.count(queryWrapper); - - // 生成订单ID - String orderId = String.format("%s%04d", dateStr, count + 1); - order.setOrder_id(orderId); - - // 设置初始状态 - order.setStatus(1); // 待处理 - order.setDel_flag(0); // 未删除 - order.setCreate_time(new Date()); - //保存关键词 - boolean saveOrderWithKeywords = orderService.saveOrderWithKeywords(orderDto); - - - if (orderService.save(order)) { - return ResponseResult.success(order); - } - return ResponseResult.error("添加订单失败"); + @Transactional // 开启事务 + @ApiOperation(value = "新增订单") + public ResponseResult<Orders> add(@Valid @RequestBody OrderDto orderDto) { + return orderService.getOrdersResponseResult(orderDto); } /** * 删除订单(逻辑删除) */ @DeleteMapping("/{orderId}") + @ApiOperation(value = "删除订单") public ResponseResult<Void> delete(@PathVariable String orderId) { - Order order = orderService.getById(orderId); - if (order == null) { - return ResponseResult.error("订单不存在"); - } - - order.setDel_flag(1); - order.setUpdate_time(new Date()); - - if (orderService.updateById(order)) { - return ResponseResult.success(); - } - return ResponseResult.error("删除订单失败"); + return orderService.getVoidResponseResult(orderId); } + + /** * 更新订单 */ @PutMapping - public ResponseResult<Void> update(@RequestBody Order order) { - if (order.getOrder_id() == null) { - return ResponseResult.error("订单ID不能为空"); - } - if (order.getClient_name() == null || order.getClient_name().trim().isEmpty()) { - return ResponseResult.error("客户名称不能为空"); - } - - Order existingOrder = orderService.getById(order.getOrder_id()); - if (existingOrder == null) { - return ResponseResult.error("订单不存在"); - } - - order.setUpdate_time(new Date()); - - if (orderService.updateById(order)) { - return ResponseResult.success(); - } - return ResponseResult.error("更新订单失败"); + @ApiOperation(value = "更新订单") + public ResponseResult<Void> update(@Valid @RequestBody OrderDto orderDto) { + return orderService.updateOrder(orderDto); } + /** * 根据ID查询订单 */ @GetMapping("/{orderId}") - public ResponseResult<Order> getById(@PathVariable String orderId) { - Order order = orderService.getById(orderId); - if (order == null || order.getDel_flag() == 1) { - return ResponseResult.error("订单不存在"); - } - return ResponseResult.success(order); + @ApiOperation("根据ID查询订单") + public ResponseResult<Orders> getById(@PathVariable String orderId) { + return orderService.getOrderById(orderId); } + + /** * 查询订单列表 */ @GetMapping - public ResponseResult<List<Order>> list( + @ApiOperation("查询订单列表") + public ResponseResult<CustomPage<Orders>> list( @RequestParam(required = false) Integer pageNum, @RequestParam(required = false) Integer pageSize, @RequestParam(required = false) String clientName, - @RequestParam(required = false) Integer status) { + @RequestParam(required = false) Integer status, + @RequestParam(required = false) String timeRange) { - LambdaQueryWrapper<Order> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(Order::getDel_flag, 0); // 只查询未删除的订单 + return orderService.getCustomPageResponseResult(pageNum, pageSize, clientName, status, timeRange); + } - // 添加查询条件 - if (clientName != null && !clientName.trim().isEmpty()) { - queryWrapper.like(Order::getClient_name, clientName); - } - if (status != null) { - queryWrapper.eq(Order::getStatus, status); - } - // 分页查询 - if (pageNum != null && pageSize != null) { - Page<Order> pageInfo = new Page<>(pageNum, pageSize); - Page<Order> result = orderService.page(pageInfo, queryWrapper); - return ResponseResult.success(result.getRecords()); - } - // 不分页 - List<Order> list = orderService.list(queryWrapper); - return ResponseResult.success(list); + /** + * 获取客户列表 + * @param + * @return + */ + @GetMapping("/clientList") + @ApiOperation("获取客户列表") + public ResponseResult<CustomPage<String>> getClientList(@RequestParam(required = false) String clientName, + @RequestParam(required = false,defaultValue = "1") Integer pageNum, + @RequestParam(required = false, defaultValue = "100") Integer pageSize) { + + Page<String> result = orderService.getClientList(clientName,pageNum, pageSize); + + + return ResponseResult.success(new CustomPage<>( result)); + } + + + @GetMapping("/{orderId}/keywordList") + @ApiOperation("获取订单关联的关键词及提问词") + public ResponseResult<List<KeywordDto>> getKeywordList(@PathVariable String orderId){ + List<KeywordDto> result = orderService.getKeywordListByOrderId(orderId); + return ResponseResult.success(result); } } \ No newline at end of file -- Gitblit v1.7.1