From 882e3dcbdaaab9a4661941f7d44ba6f0e5f024a6 Mon Sep 17 00:00:00 2001 From: quyixiao <2621048238@qq.com> Date: Mon, 25 Aug 2025 22:57:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/data/dao/vv/VvTradeOrderLineDao.java | 13 ++-- .../request/mm/order/VVOrderRequest.java | 4 +- .../alibaba/request/mm/order/VvToPackDTO.java | 38 ++++++++++++ .../api/alibaba/request/vv/AppCommentAdd.java | 31 ++++++++++ .../alibaba/request/vv/AppCommentUseful.java | 9 +++ .../api/controller/mm/OrderController.java | 59 +++++++++++++++---- .../controller/vv/AppCommentController.java | 22 ++++--- .../api/controller/vv/AppOrderController.java | 2 +- 8 files changed, 153 insertions(+), 25 deletions(-) create mode 100644 api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvToPackDTO.java diff --git a/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java b/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java index 1f4c38e..43bb34a 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java +++ b/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java @@ -9,9 +9,7 @@ package com.heyu.api.data.dao.vv; */ import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.lz.mybatis.plugin.annotations.GroupBy; -import com.lz.mybatis.plugin.annotations.LIKE; -import com.lz.mybatis.plugin.annotations.OrderBy; +import com.lz.mybatis.plugin.annotations.*; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -45,8 +43,15 @@ public interface VvTradeOrderLineDao extends BaseMapper - List selectVvTradeOrderLineByTradeOrderIds(List tradeOrderId); + List selectVvTradeOrderLineByTradeOrderIds(@IN List tradeOrderId, + @IF String status); List selectVvTradeOrderLineByTradeOrderIdSkuId(Long tradeOrderId, Long skuId); + + List selectVvTradeOrderLineByIds(@IN List id); + + + + List selectVvTradeOrderLineByTradeOrderId(Long tradeOrderId); } \ No newline at end of file diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VVOrderRequest.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VVOrderRequest.java index 97ef19a..0a5ac7b 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VVOrderRequest.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VVOrderRequest.java @@ -13,9 +13,9 @@ public class VVOrderRequest { */ private List orderIds; - private Integer pageNum; + private Integer pageNum = 1 ; - private Integer pageSize; + private Integer pageSize = 10 ; //买家手机号 private String buyerPhone; diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvToPackDTO.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvToPackDTO.java new file mode 100644 index 0000000..bae9b63 --- /dev/null +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvToPackDTO.java @@ -0,0 +1,38 @@ +package com.heyu.api.alibaba.request.mm.order; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +@Data +public class VvToPackDTO { + + /*** + * 子订单号 + */ + private List tradeOrderLineIds; + + + //包裹图片url + private List packageImageUrls; + + //订单追踪号 + private String trackNumber; + + //物流公司 + private String logisticsCompany; + + //发货地址 + private String shippingFrom; + + + //运费 + private BigDecimal shippingAmount; + + + +} + + diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentAdd.java b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentAdd.java index 05257f9..6797541 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentAdd.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentAdd.java @@ -1,8 +1,10 @@ package com.heyu.api.alibaba.request.vv; +import com.alibaba.fastjson.JSON; import lombok.Data; +import java.util.ArrayList; import java.util.List; @Data @@ -43,4 +45,33 @@ public class AppCommentAdd { private List commentDetailList; + public static void main(String[] args) { + AppCommentAdd appCommentAdd = new AppCommentAdd(); + appCommentAdd.setSkuId(91L); + appCommentAdd.setBuyerId(2L); + appCommentAdd.setTradeOrderId(3L); + appCommentAdd.setProductComment("东西很好"); + appCommentAdd.setServiceComment("服务态度好"); + appCommentAdd.setDescMatch(5); + appCommentAdd.setSellerService(2); + appCommentAdd.setLogisticsService(3); + + + List commentDetailList = new ArrayList<>(); + + AppCommentDetail appCommentDetail = new AppCommentDetail(); + appCommentDetail.setCommentUrl("9ewe"); + appCommentDetail.setType("image"); + commentDetailList.add(appCommentDetail); + + appCommentAdd.setCommentDetailList(commentDetailList); + + + System.out.println(JSON.toJSONString(appCommentAdd)); + + } + + + + } diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentUseful.java b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentUseful.java index 7cae0db..94da3f7 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentUseful.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCommentUseful.java @@ -1,5 +1,6 @@ package com.heyu.api.alibaba.request.vv; +import com.alibaba.fastjson.JSON; import lombok.Data; @Data @@ -25,6 +26,14 @@ public class AppCommentUseful { */ private Integer useful; + + public static void main(String[] args) { + AppCommentUseful appCommentUseful = new AppCommentUseful(); + appCommentUseful.setCommentId(6L); + appCommentUseful.setBuyerId(2L); + appCommentUseful.setUseful(1); + System.out.println(JSON.toJSONString(appCommentUseful)); + } } diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/OrderController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/OrderController.java index b2a4434..aa58320 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/OrderController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/OrderController.java @@ -1,8 +1,11 @@ package com.heyu.api.controller.mm; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.heyu.api.alibaba.request.mm.enums.OrderStatusEnums; import com.heyu.api.alibaba.request.mm.order.VVOrderRequest; +import com.heyu.api.alibaba.request.mm.order.VvToPackDTO; import com.heyu.api.alibaba.request.mm.order.resp.PackageDTO; import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp; import com.heyu.api.data.dao.vv.VvPackageDao; @@ -19,6 +22,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -48,7 +52,7 @@ public class OrderController { * 列表 */ @RequestMapping("/list") - public R list(VVOrderRequest vvOrderRequest) { + public R list(@RequestBody VVOrderRequest vvOrderRequest) { if (StringUtils.isNotBlank(vvOrderRequest.getProductName())) { List list = vvTradeOrderLineDao.selectVvTradeOrderLineByProductName(vvOrderRequest.getProductName()); List orderIds = new ArrayList<>(); @@ -61,6 +65,7 @@ public class OrderController { vvOrderRequest.setOrderIds(orderIds); } + PPageUtils pageUtils = PPageUtils.startPage(vvOrderRequest.getPageNum(), vvOrderRequest.getPageSize()) .doSelect(new ISelect() { @Override @@ -79,8 +84,6 @@ public class OrderController { ); } }); - - List vvTradeOrderEntities = pageUtils.getRows(); List tradeOrderIds = new ArrayList<>(); @@ -89,8 +92,7 @@ public class OrderController { tradeOrderIds.add(vvTradeOrderEntity.getId()); } - List list = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderIds(tradeOrderIds); - + List list = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderIds(tradeOrderIds, vvOrderRequest.getStatus()); List trackNumbers = new ArrayList<>(); for (VvTradeOrderLineEntity vvTradeOrderLineEntity : list) { @@ -140,8 +142,9 @@ public class OrderController { List vvTradeOrderLineEntitys = packageDTO.getVvTradeOrderLineEntityList(); if (vvTradeOrderLineEntitys == null) { - vvTradeOrderLineEntitys.add(tradeOrderLineEntity); + vvTradeOrderLineEntitys = new ArrayList<>(); } + vvTradeOrderLineEntitys.add(tradeOrderLineEntity); packageDTO.setVvTradeOrderLineEntityList(vvTradeOrderLineEntitys); packageDTOMap.put(tradeOrderLineEntity.getTrackNumber(), packageDTO); @@ -155,17 +158,53 @@ public class OrderController { for (Map.Entry entry : packageDTOMap.entrySet()) { packageList.add(entry.getValue()); } - - vvOrderListResp.setVvTradeOrderLineList(vvTradeOrderLineList); vvOrderListResp.setPackageList(packageList); vvOrderListResps.add(vvOrderListResp); } - - return R.ok().setData(vvOrderListResps); } + /*** + * 订单打包 + */ + @RequestMapping("/topack") + public R topack(@RequestBody VvToPackDTO vvOrderRequest) { + List vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvOrderRequest.getTradeOrderLineIds()); + VvTradeOrderEntity vvTradeOrderEntity = vvTradeOrderDao.selectVvTradeOrderById(vvTradeOrderLineEntityList.get(0).getTradeOrderId()); + VvPackageEntity vvPackageEntity = new VvPackageEntity(); + + if (CollectionUtils.isNotEmpty(vvOrderRequest.getPackageImageUrls())) { + vvPackageEntity.setPackageImageUrl(JSON.toJSONString(vvOrderRequest.getPackageImageUrls())); + } + vvPackageEntity.setLogisticsCompany(vvOrderRequest.getLogisticsCompany()); + vvPackageEntity.setShippingAmount(vvOrderRequest.getShippingAmount()); + vvPackageEntity.setShippingFrom(vvOrderRequest.getShippingFrom()); + vvPackageEntity.setShippingTo(vvTradeOrderEntity.getContry() + vvTradeOrderEntity.getCity() + vvTradeOrderEntity.getDistrict() + vvTradeOrderEntity.getBuyerDetailAddress()); + vvPackageEntity.setTrackNumber(vvPackageEntity.getTrackNumber()); + vvPackageEntity.setShippingAmount(vvPackageEntity.getShippingAmount()); + + vvPackageDao.insertOrUpdateVvPackage(vvPackageEntity); + for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) { + tradeOrderLineEntity.setTrackNumber(vvOrderRequest.getTrackNumber()); + tradeOrderLineEntity.setStatus(OrderStatusEnums.shipping.getStatus()); // 已经发货 + vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); + } + + List vvTradeOrderLineEntities = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(vvTradeOrderEntity.getId()); + boolean flag = true; + for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntities) { + if (OrderStatusEnums.wait_shipping.getStatus().equals(vvTradeOrderLineEntity.getStatus())) { + flag = false; + } + } + + if (flag) { + vvTradeOrderEntity.setStatus(OrderStatusEnums.shipping.getStatus()); + vvTradeOrderDao.updateVvTradeOrderById(vvTradeOrderEntity); + } + return R.ok(); + } } diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppCommentController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppCommentController.java index 6540873..217d9cb 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppCommentController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppCommentController.java @@ -60,7 +60,7 @@ public class AppCommentController { /*** * 列表 */ - @RequestMapping("/page/list") + @RequestMapping("/list") public R list(@RequestBody AppCommentRequest appCommentRequest) { PPageUtils pageUtils = null; @@ -209,23 +209,29 @@ public class AppCommentController { public R useful(@RequestBody AppCommentUseful appCommentRequest) { VvCommentUserfulEntity vvCommentUserful = vvCommentUserfulDao.selectVvCommentUserfulByCommentIdBuyerId(appCommentRequest.getCommentId(), appCommentRequest.getBuyerId()); if (appCommentRequest.getUseful() == 1) { - return R.error("已经点过了"); + if(vvCommentUserful !=null){ + return R.error("已经点过了"); + } } else if (appCommentRequest.getUseful() == -1) { if (vvCommentUserful == null) { return R.error("之前没有点过有用"); } vvCommentUserfulDao.deleteVvCommentUserfulById(vvCommentUserful.getId()); + } else { return R.ok(); } VvCommentEntity vvCommentEntity = vvCommentDao.selectVvCommentById(appCommentRequest.getCommentId()); vvCommentDao.updateVvCommentUserfulByCommidId(appCommentRequest.getUseful(), appCommentRequest.getCommentId()); - VvCommentUserfulEntity vvCommentUserfulEntity = new VvCommentUserfulEntity(); - vvCommentUserfulEntity.setBuyerId(appCommentRequest.getBuyerId()); - vvCommentUserfulEntity.setCommentId(appCommentRequest.getCommentId()); - vvCommentUserfulEntity.setProductId(vvCommentEntity.getProductId()); - vvCommentUserfulEntity.setSkuId(vvCommentEntity.getSkuId()); - vvCommentUserfulDao.insertOrUpdateVvCommentUserful(vvCommentUserfulEntity); + + if(appCommentRequest.getUseful() == 1 ){ + VvCommentUserfulEntity vvCommentUserfulEntity = new VvCommentUserfulEntity(); + vvCommentUserfulEntity.setBuyerId(appCommentRequest.getBuyerId()); + vvCommentUserfulEntity.setCommentId(appCommentRequest.getCommentId()); + vvCommentUserfulEntity.setProductId(vvCommentEntity.getProductId()); + vvCommentUserfulEntity.setSkuId(vvCommentEntity.getSkuId()); + vvCommentUserfulDao.insertOrUpdateVvCommentUserful(vvCommentUserfulEntity); + } return R.ok(); } diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java index 16d9362..9cf7ca0 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java @@ -100,7 +100,7 @@ public class AppOrderController { for (VvTradeOrderEntity vvTradeOrderEntity : vvTradeOrderEntities) { tradeOrderIds.add(vvTradeOrderEntity.getId()); } - List list = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderIds(tradeOrderIds); + List list = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderIds(tradeOrderIds,vvOrderRequest.getStatus()); List trackNumbers = new ArrayList<>(); for (VvTradeOrderLineEntity vvTradeOrderLineEntity : list) {