From 178e2536417ded3b4e98a192ff47cc87870dc75f Mon Sep 17 00:00:00 2001 From: leomon <2233021400@qq.com> Date: Thu, 26 Jun 2025 01:15:36 +0800 Subject: [PATCH] 订单消息接口优化 --- oying-system/src/main/java/com/oying/modules/message/domain/dto/MessageOrderSellerDTO.java | 18 ++++++ oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderSellerController.java | 64 ++++++++++++++++++-- oying-system/src/main/java/com/oying/modules/message/service/MessageOrderSellerService.java | 7 + oying-system/src/main/java/com/oying/modules/message/domain/MessageOrderSeller.java | 16 ++++- oying-system/src/main/java/com/oying/modules/message/mapper/MessageOrderSellerMapper.java | 4 + oying-system/src/main/java/com/oying/modules/message/service/impl/MessageOrderSellerServiceImpl.java | 18 ++++- oying-system/src/main/resources/mapper/message/MessageOrderSellerMapper.xml | 20 ++++++ 7 files changed, 127 insertions(+), 20 deletions(-) diff --git a/oying-system/src/main/java/com/oying/modules/message/domain/MessageOrderSeller.java b/oying-system/src/main/java/com/oying/modules/message/domain/MessageOrderSeller.java index f6b81ae..763f274 100644 --- a/oying-system/src/main/java/com/oying/modules/message/domain/MessageOrderSeller.java +++ b/oying-system/src/main/java/com/oying/modules/message/domain/MessageOrderSeller.java @@ -26,22 +26,30 @@ @ApiModelProperty(value = "id") private Integer id; - @NotNull + @ApiModelProperty(value = "orderId") private Integer orderId; - @NotBlank + + @ApiModelProperty(value = "storeId") + private Integer storeId; + + @ApiModelProperty(value = "messageType") private String messageType; - @NotBlank + @ApiModelProperty(value = "messageContent") private String messageContent; - @NotBlank + @ApiModelProperty(value = "link") private String link; + + @ApiModelProperty(value = "flag") + private Integer flag=0; + // @ApiModelProperty(value = "createTime") // private Timestamp createTime; diff --git a/oying-system/src/main/java/com/oying/modules/message/domain/dto/MessageOrderSellerDTO.java b/oying-system/src/main/java/com/oying/modules/message/domain/dto/MessageOrderSellerDTO.java new file mode 100644 index 0000000..f33e962 --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/message/domain/dto/MessageOrderSellerDTO.java @@ -0,0 +1,18 @@ +package com.oying.modules.message.domain.dto; + + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class MessageOrderSellerDTO { + + private Integer orderId; + + private String messageType; + + private String messageContent; + +} diff --git a/oying-system/src/main/java/com/oying/modules/message/mapper/MessageOrderSellerMapper.java b/oying-system/src/main/java/com/oying/modules/message/mapper/MessageOrderSellerMapper.java index be1783a..2fd121f 100644 --- a/oying-system/src/main/java/com/oying/modules/message/mapper/MessageOrderSellerMapper.java +++ b/oying-system/src/main/java/com/oying/modules/message/mapper/MessageOrderSellerMapper.java @@ -19,4 +19,8 @@ IPage<MessageOrderSeller> findAll(@Param("criteria") MessageOrderSellerQueryCriteria criteria, Page<Object> page); List<MessageOrderSeller> findAll(@Param("criteria") MessageOrderSellerQueryCriteria criteria); + + List<MessageOrderSeller> findByStoreId(String storeId); + + Boolean updateMessageOrderSellerRead(Integer orderId); } diff --git a/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderSellerController.java b/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderSellerController.java index 80456f1..6fcf7d7 100644 --- a/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderSellerController.java +++ b/oying-system/src/main/java/com/oying/modules/message/rest/MessageOrderSellerController.java @@ -1,8 +1,10 @@ package com.oying.modules.message.rest; +import cn.hutool.core.bean.BeanUtil; import com.oying.annotation.Log; import com.oying.modules.message.domain.MessageOrderSeller; import com.oying.modules.message.domain.MessageOrderSeller; +import com.oying.modules.message.domain.dto.MessageOrderSellerDTO; import com.oying.modules.message.service.MessageOrderSellerService; import com.oying.modules.message.domain.dto.MessageOrderSellerQueryCriteria; import com.oying.utils.R; @@ -74,16 +76,62 @@ // return new ResponseEntity<>(HttpStatus.OK); // } - //订单状态变化通知 - @GetMapping("/status/{order_id}") - @ApiOperation("查询一条订单状态变化通知") - public R<String> getMessageOrderSeller(@PathVariable Integer order_id) { - MessageOrderSeller messageOrderSeller = messageOrderSellerService.findByOrderId(order_id); - String message = messageOrderSeller.getMessageType(); +// //订单状态变化通知 +// @GetMapping("/status/{order_id}") +// @ApiOperation("查询一条订单状态变化通知") +// public R<String> getMessageOrderSeller(@PathVariable Integer order_id) { +// MessageOrderSeller messageOrderSeller = messageOrderSellerService.findByOrderId(order_id); +// String message = messageOrderSeller.getMessageType(); +// +//// return new ResponseEntity<>(message, HttpStatus.OK); +// return R.success(message); +// } + //根据store_id 返回list订单状态变化通知 + @GetMapping("/status/store/{store_id}") + @ApiOperation("根据store_id 返回list订单状态变化通知") + public R<List<MessageOrderSellerDTO>> getMessageOrderSeller(@PathVariable String store_id) { + List<MessageOrderSeller> messageOrderSeller = messageOrderSellerService.findByStoreId(store_id); + //转换为MessageOrderSellerDTO huto tools + List<MessageOrderSellerDTO> dtoList = BeanUtil.copyToList(messageOrderSeller, MessageOrderSellerDTO.class); + //判断store_id存在 + if (messageOrderSeller == null) { + return R.fail("store_id不存在"); + }else{return R.success(dtoList);} -// return new ResponseEntity<>(message, HttpStatus.OK); - return R.success(message); } + //让前端标记已读 + @PostMapping("/read/{order_id}") + @ApiOperation("让前端标记已读 按条") + public R<String> getMessageOrderSellerRead(@PathVariable Integer order_id) { + if(messageOrderSellerService.updateMessageOrderSellerRead(order_id)){ + return R.success("已读"); + }else{ + return R.fail("id不存在"); + } + + + } + + //让后端队友更新我的表 + @PostMapping("/update/seller") + @ApiOperation("让后端队友更新消息表") + public R<String> updateMessageOrderSeller(@RequestBody MessageOrderSeller resources) { + //插入一条数据 + if(messageOrderSellerService.saveOrUpdate(resources)) + return R.success("更新成功"); + return R.fail("更新失败"); +// if(messageOrderSellerService.updateById(resources)){ +// return R.success("更新成功"); +// }else{ +// return R.fail("更新失败"); +// } + } + + + + + + //订单送达通知 @GetMapping("/deliver/{order_id}") @ApiOperation("查询一条订单送达通知") diff --git a/oying-system/src/main/java/com/oying/modules/message/service/MessageOrderSellerService.java b/oying-system/src/main/java/com/oying/modules/message/service/MessageOrderSellerService.java index 29d672b..c4e5361 100644 --- a/oying-system/src/main/java/com/oying/modules/message/service/MessageOrderSellerService.java +++ b/oying-system/src/main/java/com/oying/modules/message/service/MessageOrderSellerService.java @@ -1,9 +1,8 @@ package com.oying.modules.message.service; -import com.oying.modules.message.domain.MessageOrderBuyer; import com.oying.modules.message.domain.MessageOrderSeller; import com.oying.modules.message.domain.dto.MessageOrderSellerQueryCriteria; -import java.util.Map; + import java.util.List; import java.io.IOException; import javax.servlet.http.HttpServletResponse; @@ -59,4 +58,8 @@ */ void download(List<MessageOrderSeller> all, HttpServletResponse response) throws IOException; public MessageOrderSeller findByOrderId(Integer orderId) ; + + List<MessageOrderSeller> findByStoreId(String storeId); + + boolean updateMessageOrderSellerRead(Integer orderId); } diff --git a/oying-system/src/main/java/com/oying/modules/message/service/impl/MessageOrderSellerServiceImpl.java b/oying-system/src/main/java/com/oying/modules/message/service/impl/MessageOrderSellerServiceImpl.java index 1668632..25d8344 100644 --- a/oying-system/src/main/java/com/oying/modules/message/service/impl/MessageOrderSellerServiceImpl.java +++ b/oying-system/src/main/java/com/oying/modules/message/service/impl/MessageOrderSellerServiceImpl.java @@ -1,7 +1,6 @@ package com.oying.modules.message.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.oying.modules.message.domain.MessageOrderBuyer; import com.oying.modules.message.domain.MessageOrderSeller; import com.oying.utils.FileUtil; import lombok.RequiredArgsConstructor; @@ -13,12 +12,11 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.oying.utils.PageUtil; -import java.util.List; -import java.util.Map; + +import java.util.*; import java.io.IOException; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.LinkedHashMap; + import com.oying.utils.PageResult; /** @@ -81,4 +79,14 @@ public MessageOrderSeller findByOrderId(Integer orderId) { return baseMapper.selectOne(new QueryWrapper<MessageOrderSeller>().eq("order_id", orderId)); } + + @Override + public List<MessageOrderSeller> findByStoreId(String storeId) { + return messageOrderSellerMapper.findByStoreId(storeId); + } + + @Override + public boolean updateMessageOrderSellerRead(Integer orderId) { + return messageOrderSellerMapper.updateMessageOrderSellerRead(orderId); + } } diff --git a/oying-system/src/main/resources/mapper/message/MessageOrderSellerMapper.xml b/oying-system/src/main/resources/mapper/message/MessageOrderSellerMapper.xml index 759100b..5bccf2c 100644 --- a/oying-system/src/main/resources/mapper/message/MessageOrderSellerMapper.xml +++ b/oying-system/src/main/resources/mapper/message/MessageOrderSellerMapper.xml @@ -4,6 +4,7 @@ <resultMap id="BaseResultMap" type="com.oying.modules.message.domain.MessageOrderSeller"> <id column="id" property="id"/> <result column="order_id" property="orderId"/> + <result column="store_id" property="storeId"/> <result column="message_type" property="messageType"/> <result column="message_content" property="messageContent"/> <result column="link" property="link"/> @@ -11,11 +12,13 @@ <result column="update_time" property="updateTime"/> <result column="create_by" property="createBy"/> <result column="update_by" property="updateBy"/> + <result column="flag" property="flag"/> </resultMap> <sql id="Base_Column_List"> - id, order_id, message_type, message_content, link, create_time, update_time, create_by, update_by + id, order_id,store_id, message_type, message_content, link, create_time, update_time, create_by, update_by,flag </sql> + <select id="findAll" resultMap="BaseResultMap"> select @@ -25,4 +28,19 @@ </where> order by id desc </select> + + <select id="findByStoreId" resultType="com.oying.modules.message.domain.MessageOrderSeller" + parameterType="java.lang.String"> +# 根据store_id(不是主键)返回 list + select + <include refid="Base_Column_List"/> + from message_order_seller + where store_id = #{storeId} and flag = 0 + order by id desc + </select> + <update id="updateMessageOrderSellerRead" parameterType="java.lang.Integer"> + update message_order_seller + set flag = 1 + where order_id = #{orderId} + </update> </mapper> \ No newline at end of file -- Gitblit v1.9.3