From e0207d7029b4e90ea1e4efeab5c3c5591f0e59c3 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 29 八月 2024 16:28:10 +0800
Subject: [PATCH] 申诉
---
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java | 10 +++
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java | 20 +++++-
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java | 6 ++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java | 54 ++++++++++++------
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 24 ++++++++
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteNameVO.java | 24 ++++++++
6 files changed, 116 insertions(+), 22 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
index ee67b6f..3c9c594 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
@@ -4,6 +4,7 @@
import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
import com.ruoyi.chargingPile.api.model.TChargingGun;
import com.ruoyi.chargingPile.api.model.TChargingPile;
+import com.ruoyi.chargingPile.api.vo.SiteNameVO;
import com.ruoyi.common.core.domain.R;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -36,6 +37,11 @@
public R<TChargingGun> getChargingGunById(Integer id) {
return R.fail("根据id获取充电枪失败:" + throwable.getMessage());
}
+
+ @Override
+ public R<SiteNameVO> getAllInfoById(Integer id) {
+ return R.fail("通过枪id获取站点、桩、枪的名称失败:" + throwable.getMessage());
+ }
};
}
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
index 149625a..1e9cf96 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
@@ -2,6 +2,7 @@
import com.ruoyi.chargingPile.api.factory.ChargingGunFallbackFactory;
import com.ruoyi.chargingPile.api.model.TChargingGun;
+import com.ruoyi.chargingPile.api.vo.SiteNameVO;
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.R;
import org.springframework.cloud.openfeign.FeignClient;
@@ -32,4 +33,13 @@
*/
@PostMapping("/t-charging-gun/getChargingGunById/{id}")
R<TChargingGun> getChargingGunById(@PathVariable("id") Integer id);
+
+ /**
+ * 通过枪id获取站点、桩、枪的名称VO
+ * @param id
+ * @return
+ */
+ @PostMapping("/t-charging-gun/getAllInfoById/{id}")
+ R<SiteNameVO> getAllInfoById(@PathVariable("id") Integer id);
+
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteNameVO.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteNameVO.java
new file mode 100644
index 0000000..06049e4
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteNameVO.java
@@ -0,0 +1,24 @@
+package com.ruoyi.chargingPile.api.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@ApiModel(value = "获取站点、桩、枪的名称VO")
+public class SiteNameVO implements Serializable {
+
+ @ApiModelProperty(value = "站点名称")
+ private String siteName;
+ @ApiModelProperty(value = "桩名称")
+ private String pileName;
+ @ApiModelProperty(value = "桩号")
+ private Integer pileNumber;
+ @ApiModelProperty(value = "枪名称")
+ private String gunName;
+ @ApiModelProperty(value = "枪号")
+ private String gunNumber;
+
+}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java
index cafe08b..4ba0101 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java
@@ -4,6 +4,8 @@
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
@Data
@ApiModel(value = "TOrderAppealVO对象", description = "订单申诉VO对象")
@@ -15,10 +17,20 @@
@ApiModelProperty(value = "购物订单")
private TShoppingOrder shoppingOrder;
- @ApiModelProperty(value = "兑换订单")
- private TExchangeOrder exchangeOrder;
+ @ApiModelProperty(value = "商品名称")
+ private String goodsName;
+ @ApiModelProperty(value = "商品图片")
+ private String goodsPicture;
- @ApiModelProperty(value = "会员订单")
- private TVipOrder vipOrder;
+ @ApiModelProperty(value = "站点名称")
+ private String siteName;
+ @ApiModelProperty(value = "桩名称")
+ private String pileName;
+ @ApiModelProperty(value = "桩号")
+ private Integer pileNumber;
+ @ApiModelProperty(value = "枪名称")
+ private String gunName;
+ @ApiModelProperty(value = "枪号")
+ private String gunNumber;
}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java
index 4120f07..fe5e167 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java
@@ -4,10 +4,13 @@
import cn.hutool.core.img.ImgUtil;
import cn.hutool.core.io.FileUtil;
import com.ruoyi.chargingPile.api.dto.TChargingGunDTO;
+import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.chargingPile.api.model.TChargingGun;
import com.ruoyi.chargingPile.api.model.TChargingPile;
import com.ruoyi.chargingPile.api.query.TChargingGunQuery;
+import com.ruoyi.chargingPile.api.vo.SiteNameVO;
import com.ruoyi.chargingPile.api.vo.TChargingGunVO;
+import com.ruoyi.chargingPile.service.ISiteService;
import com.ruoyi.chargingPile.service.TChargingGunService;
import com.ruoyi.chargingPile.service.TChargingPileService;
import com.ruoyi.chargingPile.util.QRCodeUtils;
@@ -52,6 +55,8 @@
@Resource
private TChargingPileService chargingPileService;
+ @Resource
+ private ISiteService siteService;
@Autowired
public TChargingGunController(TChargingGunService chargingGunService) {
@@ -184,5 +189,24 @@
TChargingGun chargingGun = chargingGunService.getById(id);
return R.ok(chargingGun);
}
+ /**
+ * 根据id获取充电枪详情
+ * @param id
+ * @return
+ */
+ @ResponseBody
+ @PostMapping(value = "/getAllInfoById/{id}")
+ public R<SiteNameVO> getAllInfoById(@PathVariable Integer id){
+ SiteNameVO siteNameVO = new SiteNameVO();
+ TChargingGun chargingGun = chargingGunService.getById(id);
+ siteNameVO.setGunName(chargingGun.getName());
+ siteNameVO.setGunNumber(chargingGun.getCode());
+ TChargingPile chargingPile = chargingPileService.getById(id);
+ siteNameVO.setPileName(chargingPile.getName());
+ siteNameVO.setPileNumber(chargingPile.getNumber());
+ Site site = siteService.getById(id);
+ siteNameVO.setSiteName(site.getName());
+ return R.ok(siteNameVO);
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java
index 4bc05f6..a4d30ce 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java
@@ -2,6 +2,10 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
+import com.ruoyi.chargingPile.api.model.Site;
+import com.ruoyi.chargingPile.api.model.TChargingPile;
+import com.ruoyi.chargingPile.api.vo.SiteNameVO;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.order.api.model.*;
import com.ruoyi.order.api.query.TOrderAppealQuery;
@@ -9,11 +13,14 @@
import com.ruoyi.order.mapper.*;
import com.ruoyi.order.service.TChargingOrderService;
import com.ruoyi.order.service.TOrderAppealService;
+import com.ruoyi.other.api.domain.TGoods;
+import com.ruoyi.other.api.feignClient.GoodsClient;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
/**
@@ -30,11 +37,11 @@
@Autowired
private TChargingOrderMapper chargingOrderMapper;
@Autowired
- private TExchangeOrderMapper exchangeOrderMapper;
- @Autowired
private TShoppingOrderMapper shoppingOrderMapper;
@Autowired
- private TVipOrderMapper vipOrderMapper;
+ private GoodsClient goodsClient;
+ @Autowired
+ private ChargingGunClient chargingGunClient;
@Override
public PageInfo<TOrderAppealVO> pageList(TOrderAppealQuery query) {
@@ -44,21 +51,23 @@
// 查询当前页的订单
List<TChargingOrder> chargingOrders = chargingOrderMapper.selectList(Wrappers.lambdaQuery(TChargingOrder.class)
.in(TChargingOrder::getId, orderIds));
- List<TExchangeOrder> exchangeOrders = exchangeOrderMapper.selectList(Wrappers.lambdaQuery(TExchangeOrder.class)
- .in(TExchangeOrder::getId, orderIds));
List<TShoppingOrder> shoppingOrders = shoppingOrderMapper.selectList(Wrappers.lambdaQuery(TShoppingOrder.class)
.in(TShoppingOrder::getId, orderIds));
- List<TVipOrder> vipOrders = vipOrderMapper.selectList(Wrappers.lambdaQuery(TVipOrder.class)
- .in(TVipOrder::getId, orderIds));
list.forEach(item -> {
if (item.getOrderType() == 1) {
- item.setChargingOrder(chargingOrders.stream().filter(chargingOrder -> chargingOrder.getId().equals(item.getOrderId())).findFirst().orElse(null));
- } else if (item.getOrderType() == 2) {
- item.setExchangeOrder(exchangeOrders.stream().filter(exchangeOrder -> exchangeOrder.getId().equals(item.getOrderId())).findFirst().orElse(null));
+ TChargingOrder tChargingOrder = chargingOrders.stream().filter(chargingOrder -> chargingOrder.getId().equals(item.getOrderId())).findFirst().orElse(null);
+ if(Objects.nonNull(tChargingOrder)){
+ item.setChargingOrder(chargingOrders.stream().filter(chargingOrder -> chargingOrder.getId().equals(item.getOrderId())).findFirst().orElse(null));
+ SiteNameVO siteNameVO = chargingGunClient.getAllInfoById(tChargingOrder.getChargingGunId()).getData();
+ item.setGunName(siteNameVO.getGunName());
+ item.setGunNumber(siteNameVO.getGunNumber());
+ item.setPileName(siteNameVO.getPileName());
+ item.setPileNumber(siteNameVO.getPileNumber());
+ item.setSiteName(siteNameVO.getSiteName());
+ }
}else if (item.getOrderType() == 3) {
- item.setShoppingOrder(shoppingOrders.stream().filter(shoppingOrder -> shoppingOrder.getId().equals(item.getOrderId())).findFirst().orElse(null));
- }else if (item.getOrderType() == 4) {
- item.setVipOrder(vipOrders.stream().filter(vipOrder -> vipOrder.getId().equals(item.getOrderId())).findFirst().orElse(null));
+ TShoppingOrder tShoppingOrder = shoppingOrders.stream().filter(shoppingOrder -> shoppingOrder.getId().equals(item.getOrderId())).findFirst().orElse(null);
+ setGoodsInfo(item,tShoppingOrder);
}
});
pageInfo.setRecords(list);
@@ -73,13 +82,22 @@
// 查询申诉详情
if (orderAppeal.getOrderType() == 1) {
orderAppealVO.setChargingOrder(chargingOrderMapper.selectById(orderAppeal.getOrderId()));
- } else if (orderAppeal.getOrderType() == 2) {
- orderAppealVO.setExchangeOrder(exchangeOrderMapper.selectById(orderAppeal.getOrderId()));
}else if (orderAppeal.getOrderType() == 3) {
- orderAppealVO.setShoppingOrder(shoppingOrderMapper.selectById(orderAppeal.getOrderId()));
- }else if (orderAppeal.getOrderType() == 4) {
- orderAppealVO.setVipOrder(vipOrderMapper.selectById(orderAppeal.getOrderId()));
+ TShoppingOrder tShoppingOrder = shoppingOrderMapper.selectById(orderAppeal.getOrderId());
+ setGoodsInfo(orderAppealVO,tShoppingOrder);
}
return orderAppealVO;
}
+
+ private void setGoodsInfo(TOrderAppealVO orderAppealVO,TShoppingOrder tShoppingOrder){
+ if(Objects.nonNull(tShoppingOrder)){
+ orderAppealVO.setShoppingOrder(tShoppingOrder);
+ TGoods goods = goodsClient.getGoodsById(tShoppingOrder.getGoodsId()).getData();
+ if(Objects.nonNull(goods)){
+ orderAppealVO.setGoodsName(goods.getName());
+ orderAppealVO.setGoodsPicture(goods.getCoverPicture());
+ }
+ }
+ }
+
}
--
Gitblit v1.7.1