From 2ff297dd7af1aa54c7544e3b90ff20d6f1fa071b Mon Sep 17 00:00:00 2001 From: leomon <2233021400@qq.com> Date: Wed, 21 May 2025 02:48:11 +0800 Subject: [PATCH] 消息中心业务1.1 --- oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderLeaveController.java | 177 +++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 148 insertions(+), 29 deletions(-) diff --git a/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderLeaveController.java b/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderLeaveController.java index 3244192..8d3dfe9 100644 --- a/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderLeaveController.java +++ b/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderLeaveController.java @@ -1,10 +1,14 @@ package com.oying.modules.message.rest; +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.oying.annotation.Log; import com.oying.modules.message.domain.MessageOrderLeave; import com.oying.modules.message.service.MessageOrderLeaveService; import com.oying.modules.message.domain.dto.MessageOrderLeaveQueryCriteria; import lombok.RequiredArgsConstructor; + +import java.sql.Timestamp; import java.util.List; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -24,17 +28,17 @@ @RestController @RequiredArgsConstructor @Api(tags = "消息留言") -@RequestMapping("/api/messageOrderLeave") +@RequestMapping("/api/message/messageOrderLeave") public class MessageOrderLeaveController { private final MessageOrderLeaveService messageOrderLeaveService; - @ApiOperation("导出数据") - @GetMapping(value = "/download") - @PreAuthorize("@el.check('messageOrderLeave:list')") - public void exportMessageOrderLeave(HttpServletResponse response, MessageOrderLeaveQueryCriteria criteria) throws IOException { - messageOrderLeaveService.download(messageOrderLeaveService.queryAll(criteria), response); - } +// @ApiOperation("导出数据") +// @GetMapping(value = "/download") +// @PreAuthorize("@el.check('messageOrderLeave:list')") +// public void exportMessageOrderLeave(HttpServletResponse response, MessageOrderLeaveQueryCriteria criteria) throws IOException { +// messageOrderLeaveService.download(messageOrderLeaveService.queryAll(criteria), response); +// } @GetMapping @ApiOperation("查询消息留言") @@ -44,30 +48,145 @@ return new ResponseEntity<>(messageOrderLeaveService.queryAll(criteria,page),HttpStatus.OK); } - @PostMapping - @Log("新增消息留言") - @ApiOperation("新增消息留言") - @PreAuthorize("@el.check('messageOrderLeave:add')") - public ResponseEntity<Object> createMessageOrderLeave(@Validated @RequestBody MessageOrderLeave resources){ - messageOrderLeaveService.create(resources); - return new ResponseEntity<>(HttpStatus.CREATED); - } +// @PostMapping +// @Log("新增消息留言") +// @ApiOperation("新增消息留言") +// @PreAuthorize("@el.check('messageOrderLeave:add')") +// public ResponseEntity<Object> createMessageOrderLeave(@Validated @RequestBody MessageOrderLeave resources){ +// messageOrderLeaveService.create(resources); +// return new ResponseEntity<>(HttpStatus.CREATED); +// } - @PutMapping - @Log("修改消息留言") - @ApiOperation("修改消息留言") - @PreAuthorize("@el.check('messageOrderLeave:edit')") - public ResponseEntity<Object> updateMessageOrderLeave(@Validated @RequestBody MessageOrderLeave resources){ - messageOrderLeaveService.update(resources); +// @PutMapping +// @Log("修改消息留言") +// @ApiOperation("修改消息留言") +// @PreAuthorize("@el.check('messageOrderLeave:edit')") +// public ResponseEntity<Object> updateMessageOrderLeave(@Validated @RequestBody MessageOrderLeave resources){ +// messageOrderLeaveService.update(resources); +// return new ResponseEntity<>(HttpStatus.NO_CONTENT); +// } + +// @DeleteMapping +// @Log("删除消息留言") +// @ApiOperation("删除消息留言") +// @PreAuthorize("@el.check('messageOrderLeave:del')") +// public ResponseEntity<Object> deleteMessageOrderLeave(@ApiParam(value = "传ID数组[]") @RequestBody List<Integer> ids) { +// messageOrderLeaveService.deleteAll(ids); +// return new ResponseEntity<>(HttpStatus.OK); +// } + //顾客点击订单,传回订单id,根据订单id生成一条 消息留言 +// @PutMapping("/customer/{order_id}") +// @ApiOperation("顾客点击订单,传回订单id,根据订单id生成一条 留言,此时顾客可以留言") +// public ResponseEntity<Object> createMessageOrderLeave(@PathVariable("order_id") Integer id,@RequestParam String customerReview) { +// //创建对象 +// MessageOrderLeave messageOrderLeave = new MessageOrderLeave(); +// messageOrderLeave.setOrderId(id); +// //如果customerReview为空,默认为“用户未留言” +// messageOrderLeave.setCustomerReview(customerReview); +// //设置创建时间为当前时间 +// messageOrderLeave.setCreateTime(new Timestamp(System.currentTimeMillis())); +// //若表中order_id订单还没存在则调用update留言 +// +// +// if(messageOrderLeaveService.findByOrderId(id)==null){ +// messageOrderLeaveService.updateById(messageOrderLeave); +// return new ResponseEntity<>(HttpStatus.CREATED); +// } else { +// // 已存在则不保存,返回 OK 表示成功但无新资源创建 +// return new ResponseEntity<>(HttpStatus.OK); +// } +// +// } + + @PutMapping("/customer/{order_id}") + @ApiOperation("顾客点击订单,传回订单id,根据订单id更新一条留言") + public ResponseEntity<Object> updateMessageOrderLeaveCustomer(@PathVariable("order_id") Integer id, @RequestBody MessageOrderLeave messageOrderLeave1) { + // 根据 order_id 查找留言信息 + MessageOrderLeave messageOrderLeave = messageOrderLeaveService.findByOrderId(id); + + // 如果留言信息不存在,返回 404 Not Found + if (messageOrderLeave == null) { + return new ResponseEntity<>("Message order leave not found for order ID: " + id, HttpStatus.NOT_FOUND); + } + + // 设置顾客评价内容 + if (messageOrderLeave1.getCustomerReview() != null && !messageOrderLeave1.getCustomerReview().trim().isEmpty()) { + messageOrderLeave.setCustomerReview(messageOrderLeave1.getCustomerReview()); + } else { + messageOrderLeave.setCustomerReview("用户未留言"); + } + + // 更新最后一次操作的时间 + messageOrderLeave.setCreateTime(new Timestamp(System.currentTimeMillis())); + + // 调用服务层更新数据 + boolean updated = messageOrderLeaveService.updateById(messageOrderLeave); + + // 如果更新失败,返回 500 Internal Server Error + if (!updated) { + return new ResponseEntity<>("Failed to update message order leave", HttpStatus.INTERNAL_SERVER_ERROR); + } + + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + //商家对订单id进行回复 +// @PutMapping("/seller/{order_id}") +// @ApiOperation("商家对订单id进行回复") +// public ResponseEntity<Object> updateMessageOrderLeave(@PathVariable("order_id") Integer id, @RequestParam String sellerReply) { +// // 检查 sellerReply 是否为空 +// if (sellerReply == null || sellerReply.trim().isEmpty()) { +// return new ResponseEntity<>("sellerReply is required", HttpStatus.BAD_REQUEST); +// } +// +// // 根据 order_id 查找留言信息 +// MessageOrderLeave messageOrderLeave = messageOrderLeaveService.findByOrderId(id); +// +// // 如果没有找到对应的留言信息,返回 404 Not Found +// if (messageOrderLeave == null) { +// return new ResponseEntity<>("Message order leave not found for order ID: " + id, HttpStatus.NOT_FOUND); +// } +// +// // 设置商家回复内容 +// messageOrderLeave.setSellerReply(sellerReply); +// // 更新最后一次操作的时间 +// messageOrderLeave.setCreateTime(new Timestamp(System.currentTimeMillis())); +// +// // 调用服务层更新数据 +// boolean updated = messageOrderLeaveService.updateById(messageOrderLeave); +// +// // 如果更新失败,返回 500 Internal Server Error +// if (!updated) { +// return new ResponseEntity<>("Failed to update message order leave", HttpStatus.INTERNAL_SERVER_ERROR); +// } +// +// return new ResponseEntity<>(HttpStatus.NO_CONTENT); +// } + //商家对订单id进行回复 订单id必须唯一限制 否则会报错 + @PutMapping("/seller/{order_id}") + @ApiOperation("商家对订单id进行回复") + public ResponseEntity<Object> updateMessageOrderLeaveSeller(@PathVariable("order_id") Integer id, @RequestBody MessageOrderLeave messageOrderLeave1) { + // 根据 order_id 查找留言信息 + MessageOrderLeave messageOrderLeave = messageOrderLeaveService.findByOrderId(id); + + // 如果没有找到对应的留言信息,返回 404 Not Found + if (messageOrderLeave == null) { + return new ResponseEntity<>("Message order leave not found for order ID: " + id, HttpStatus.NOT_FOUND); + } + + // 设置商家回复内容 + messageOrderLeave.setSellerReply(messageOrderLeave1.getSellerReply()); + // 更新最后一次操作的时间 + messageOrderLeave.setCreateTime(new Timestamp(System.currentTimeMillis())); + + // 调用服务层更新数据 + boolean updated = messageOrderLeaveService.updateById(messageOrderLeave); + + // 如果更新失败,返回 500 Internal Server Error + if (!updated) { + return new ResponseEntity<>("Failed to update message order leave", HttpStatus.INTERNAL_SERVER_ERROR); + } + return new ResponseEntity<>(HttpStatus.NO_CONTENT); } - @DeleteMapping - @Log("删除消息留言") - @ApiOperation("删除消息留言") - @PreAuthorize("@el.check('messageOrderLeave:del')") - public ResponseEntity<Object> deleteMessageOrderLeave(@ApiParam(value = "传ID数组[]") @RequestBody List<Integer> ids) { - messageOrderLeaveService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } } -- Gitblit v1.9.3