From 315be47531c8c4cec9187e80a660dd3a8b77193e Mon Sep 17 00:00:00 2001
From: zhibing.pu <393733352@qq.com>
Date: 星期五, 16 八月 2024 15:29:29 +0800
Subject: [PATCH] 新增加管理后台接口和修复运行异常问题
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 122 +++++
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java | 1
ruoyi-api/ruoyi-api-chargingPile/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports | 3
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyExchangeOrder.java | 17
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java | 2
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/IntegralRuleFallbackFactory.java | 43 +
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RoleSiteClient.java | 2
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TOrderEvaluateService.java | 19
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysRoleClient.java | 3
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java | 54 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java | 107 ++++
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java | 41 +
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java | 2
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TExchangeOrderService.java | 22
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrder.java | 4
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml | 12
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/CouponClient.java | 26 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderEvaluateController.java | 29 +
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java | 2
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderInfo.java | 59 ++
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserIntegralChangeFallbackFactory.java | 32 +
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserIntegralChangeClient.java | 20
ruoyi-service/ruoyi-order/pom.xml | 7
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserAddressController.java | 15
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java | 34 +
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java | 5
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java | 1
ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports | 4
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java | 2
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TRoleSiteController.java | 6
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserIntegralChangeController.java | 28 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java | 18
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/OrderEvaluateVo.java | 23
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java | 15
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 34 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java | 122 +++++
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java | 2
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java | 12
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/ExchangeOrderGoodsInfo.java | 54 ++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderList.java | 32 +
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserAddressClient.java | 26 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java | 22
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/CouponFallbackFactory.java | 34 +
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingLotController.java | 2
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java | 15
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyChargingOrderList.java | 17
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/GoodsFallbackFactory.java | 32 +
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java | 7
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 30 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderAccountingStrategyController.java | 4
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java | 4
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/IntegralRuleClient.java | 24 +
ruoyi-api/ruoyi-api-other/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports | 3
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyExchangeOrderList.java | 30 +
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserAddressFallbackFactory.java | 33 +
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCoupon.java | 10
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/UserSiteClient.java | 2
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java | 17
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TCouponMapper.xml | 2
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java | 4
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/GoodsClient.java | 25 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java | 12
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TEvaluationTagController.java | 15
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TUserSiteController.java | 4
64 files changed, 1,339 insertions(+), 71 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserAddressFallbackFactory.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserAddressFallbackFactory.java
new file mode 100644
index 0000000..7e36950
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserAddressFallbackFactory.java
@@ -0,0 +1,33 @@
+package com.ruoyi.account.api.factory;
+
+import com.ruoyi.account.api.feignClient.AppUserAddressClient;
+import com.ruoyi.account.api.model.TAppUserAddress;
+import com.ruoyi.account.api.model.TAppUserIntegralChange;
+import com.ruoyi.common.core.domain.R;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 11:02
+ */
+@Component
+public class AppUserAddressFallbackFactory implements FallbackFactory<AppUserAddressClient> {
+
+ private static final Logger log = LoggerFactory.getLogger(AppUserAddressFallbackFactory.class);
+
+
+ @Override
+ public AppUserAddressClient create(Throwable throwable) {
+ log.error("用户地址调用失败:{}", throwable.getMessage());
+ return new AppUserAddressClient(){
+
+ @Override
+ public R<TAppUserAddress> getAppUserAddressById(Long id) {
+ return R.fail("根据id获取用户地址信息失败:" + throwable.getMessage());
+ }
+ };
+ }
+}
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserIntegralChangeFallbackFactory.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserIntegralChangeFallbackFactory.java
new file mode 100644
index 0000000..da91d05
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserIntegralChangeFallbackFactory.java
@@ -0,0 +1,32 @@
+package com.ruoyi.account.api.factory;
+
+import com.ruoyi.account.api.feignClient.AppUserIntegralChangeClient;
+import com.ruoyi.account.api.model.TAppUserIntegralChange;
+import com.ruoyi.common.core.domain.R;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 11:02
+ */
+@Component
+public class AppUserIntegralChangeFallbackFactory implements FallbackFactory<AppUserIntegralChangeClient> {
+
+ private static final Logger log = LoggerFactory.getLogger(AppUserIntegralChangeFallbackFactory.class);
+
+
+ @Override
+ public AppUserIntegralChangeClient create(Throwable throwable) {
+ log.error("账户积分变动调用失败:{}", throwable.getMessage());
+ return new AppUserIntegralChangeClient(){
+
+ @Override
+ public R addAppUserIntegralChange(TAppUserIntegralChange appUserIntegralChange) {
+ return R.fail("添加积分变动记录失败:" + throwable.getMessage());
+ }
+ };
+ }
+}
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserAddressClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserAddressClient.java
new file mode 100644
index 0000000..b284de8
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserAddressClient.java
@@ -0,0 +1,26 @@
+package com.ruoyi.account.api.feignClient;
+
+import com.ruoyi.account.api.factory.AppUserAddressFallbackFactory;
+import com.ruoyi.account.api.model.TAppUserAddress;
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.common.core.domain.R;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 14:47
+ */
+@FeignClient(contextId = "AppUserAddressClient", value = ServiceNameConstants.ACCOUNT_SERVICE, fallbackFactory = AppUserAddressFallbackFactory.class)
+public interface AppUserAddressClient {
+
+
+ /**
+ * 根据id获取用户地址信息
+ * @param id
+ * @return
+ */
+ @PostMapping("/t-app-user-address/getAppUserAddressById")
+ R<TAppUserAddress> getAppUserAddressById(Long id);
+}
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
index 931d00a..9812ddd 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
@@ -37,6 +37,11 @@
* @param id
* @return
*/
- @GetMapping(value = "/user/getUserById")
+ @PostMapping(value = "/t-app-user/user/getUserById")
R<TAppUser> getUserById(Long id);
+
+
+
+ @PostMapping("/t-app-user/")
+ R updateAppUser(TAppUser appUser);
}
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserIntegralChangeClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserIntegralChangeClient.java
new file mode 100644
index 0000000..dfc2d19
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserIntegralChangeClient.java
@@ -0,0 +1,20 @@
+package com.ruoyi.account.api.feignClient;
+
+import com.ruoyi.account.api.model.TAppUserIntegralChange;
+import com.ruoyi.common.core.domain.R;
+import org.springframework.web.bind.annotation.PostMapping;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 11:01
+ */
+public interface AppUserIntegralChangeClient {
+
+ /**
+ * 添加积分变动记录
+ * @param appUserIntegralChange
+ * @return
+ */
+ @PostMapping("/t-app-user-integral-change/addAppUserIntegralChange")
+ R addAppUserIntegralChange(TAppUserIntegralChange appUserIntegralChange);
+}
diff --git a/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 3c87b41..40f7d82 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,3 +1,5 @@
com.ruoyi.account.api.factory.AppUserFallbackFactory
com.ruoyi.account.api.factory.AppCouponFallbackFactory
-com.ruoyi.account.api.factory.AppUserCarFallbackFactory
\ No newline at end of file
+com.ruoyi.account.api.factory.AppUserCarFallbackFactory
+com.ruoyi.account.api.factory.AppUserIntegralChangeFallbackFactory
+com.ruoyi.account.api.factory.AppUserAddressFallbackFactory
\ No newline at end of file
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
new file mode 100644
index 0000000..ee67b6f
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
@@ -0,0 +1,41 @@
+package com.ruoyi.chargingPile.api.factory;
+
+import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
+import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
+import com.ruoyi.chargingPile.api.model.TChargingGun;
+import com.ruoyi.chargingPile.api.model.TChargingPile;
+import com.ruoyi.common.core.domain.R;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * 充电桩服务降级处理
+ *
+ * @author ruoyi
+ */
+@Component
+public class ChargingGunFallbackFactory implements FallbackFactory<ChargingGunClient>
+{
+ private static final Logger log = LoggerFactory.getLogger(ChargingGunFallbackFactory.class);
+
+ @Override
+ public ChargingGunClient create(Throwable throwable) {
+ log.error("充电枪调用失败:{}", throwable.getMessage());
+ return new ChargingGunClient() {
+
+ @Override
+ public R<String> getAllName(Integer id) {
+ return R.fail("根据id获取充电枪完整名称失败:" + throwable.getMessage());
+ }
+
+ @Override
+ public R<TChargingGun> getChargingGunById(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
new file mode 100644
index 0000000..015c04b
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
@@ -0,0 +1,34 @@
+package com.ruoyi.chargingPile.api.feignClient;
+
+import com.ruoyi.chargingPile.api.factory.ChargingGunFallbackFactory;
+import com.ruoyi.chargingPile.api.model.TChargingGun;
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.common.core.domain.R;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/15 19:36
+ */
+@FeignClient(contextId = "ChargingGunClient", value = ServiceNameConstants.CHARGINGPILE_SERVICE, fallbackFactory = ChargingGunFallbackFactory.class)
+public interface ChargingGunClient {
+
+ /**
+ * 根据id获取充电枪完整名称
+ * @param id
+ * @return
+ */
+ @PostMapping("/t-charging-gun/getAllName")
+ R<String> getAllName(Integer id);
+
+
+ /**
+ * 根据id获取充电枪
+ * @param id
+ * @return
+ */
+ @PostMapping("/t-charging-gun/getChargingGunById")
+ R<TChargingGun> getChargingGunById(Integer id);
+}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
index 7487856..024bd8a 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
@@ -25,5 +25,4 @@
@PostMapping(value = "/t-charging-pile/getChargingPileBySiteId")
public R<List<TChargingPile>> getChargingPileBySiteId(@RequestParam("siteId") Integer siteId);
-
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java
index 0312dd8..b6f8169 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java
@@ -23,7 +23,7 @@
/**
* 通过站点id查询停车场信息
*/
- @GetMapping(value = "/t-parking-lot/getLotBySiteId")
+ @PostMapping(value = "/t-parking-lot/getLotBySiteId")
public R<TParkingLot> getLotBySiteId(@RequestParam("siteId") Integer siteId);
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-chargingPile/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 2a1a113..e5e3ae5 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,3 +1,4 @@
com.ruoyi.chargingPile.api.factory.ChargingPileFallbackFactory
com.ruoyi.chargingPile.api.factory.SiteFallbackFactory
-com.ruoyi.chargingPile.api.factory.ParkingLotFallbackFactory
\ No newline at end of file
+com.ruoyi.chargingPile.api.factory.ParkingLotFallbackFactory
+com.ruoyi.chargingPile.api.factory.ChargingGunFallbackFactory
\ No newline at end of file
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java
index c09794d..c9ede24 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java
@@ -6,6 +6,7 @@
import com.ruoyi.order.api.factory.ChargingOrderFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@@ -25,7 +26,7 @@
* @param days 天数
* @return
*/
- @GetMapping("/t-charging-order-accounting-strategy/getTotalElectricQuantity")
+ @PostMapping("/t-charging-order-accounting-strategy/getTotalElectricQuantity")
R<List<List<Map<String, Object>>>> getTotalElectricQuantity(Integer days, @RequestParam("siteIds") Set<Integer> siteIds);
@@ -34,6 +35,6 @@
* @param days
* @return
*/
- @GetMapping("/t-charging-order-getDailyChargingDegree-strategy/getUtilizationTrend")
+ @PostMapping("/t-charging-order-getDailyChargingDegree-strategy/getUtilizationTrend")
R<List<Double>> getDailyChargingDegree(Integer days, @RequestParam("siteIds") Set<Integer> siteIds);
}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
index 2ac0181..b7402f2 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
@@ -37,6 +37,6 @@
* @param chargingGunId 充电枪id
* @return
*/
- @GetMapping(value = "/t-charging-order/getOrderDetailByGunId")
+ @PostMapping(value = "/t-charging-order/getOrderDetailByGunId")
R<TChargingOrder> getOrderDetailByGunId(@RequestParam("chargingGunId") Integer chargingGunId);
}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrder.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrder.java
index 7cfd713..5644202 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrder.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrder.java
@@ -89,6 +89,10 @@
@ApiModelProperty(value = "状态(0=未知,1=等待中,2=启动中,3=充电中,4=停止中,5=已结束)")
@TableField("status")
private Integer status;
+
+ @ApiModelProperty(value = "结束方式(0=异常终止,1=主动终止,2=满电终止,3=费用不足终止)")
+ @TableField("end_mode")
+ private Integer endMode;
@ApiModelProperty(value = "充值金额")
@TableField("recharge_amount")
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java
index 77bbbe7..7b4f546 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java
@@ -28,7 +28,7 @@
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
- @TableId(value = "id", type = IdType.AUTO)
+ @TableId(value = "id", type = IdType.NONE)
private Long id;
@ApiModelProperty(value = "订单类型(1=充电订单,2=购物订单,3=兑换订单,4=会员订单)")
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCoupon.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCoupon.java
index cd229d3..b76933d 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCoupon.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCoupon.java
@@ -38,7 +38,15 @@
@ApiModelProperty(value = "优惠券名称")
@TableField("name")
private String name;
-
+
+ @ApiModelProperty(value = "封面图")
+ @TableField("cover_picture")
+ private String coverPicture;
+
+ @ApiModelProperty(value = "详情图片")
+ @TableField("details_picture")
+ private String detailsPicture;
+
@ApiModelProperty(value = "优惠方式(1=满减,2=抵扣)")
@TableField("preferential_mode")
private Integer preferentialMode;
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/CouponFallbackFactory.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/CouponFallbackFactory.java
new file mode 100644
index 0000000..f5821e7
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/CouponFallbackFactory.java
@@ -0,0 +1,34 @@
+package com.ruoyi.other.api.factory;
+
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.other.api.domain.TCoupon;
+import com.ruoyi.other.api.domain.TGoods;
+import com.ruoyi.other.api.feignClient.CouponClient;
+import com.ruoyi.other.api.feignClient.GoodsClient;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 13:48
+ */
+@Component
+public class CouponFallbackFactory implements FallbackFactory<CouponClient> {
+
+ private static final Logger log = LoggerFactory.getLogger(CouponFallbackFactory.class);
+
+ @Override
+ public CouponClient create(Throwable throwable) {
+ log.error("优惠券调用失败:{}", throwable.getMessage());
+ return new CouponClient() {
+
+ @Override
+ public R<TCoupon> getCouponById(Integer id) {
+ return R.fail("根据id获取优惠券信息失败:" + throwable.getMessage());
+ }
+ };
+ }
+
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/GoodsFallbackFactory.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/GoodsFallbackFactory.java
new file mode 100644
index 0000000..2f57fab
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/GoodsFallbackFactory.java
@@ -0,0 +1,32 @@
+package com.ruoyi.other.api.factory;
+
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.other.api.domain.TGoods;
+import com.ruoyi.other.api.feignClient.GoodsClient;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 13:48
+ */
+@Component
+public class GoodsFallbackFactory implements FallbackFactory<GoodsClient> {
+
+ private static final Logger log = LoggerFactory.getLogger(GoodsFallbackFactory.class);
+
+ @Override
+ public GoodsClient create(Throwable throwable) {
+ log.error("商品调用失败:{}", throwable.getMessage());
+ return new GoodsClient() {
+
+ @Override
+ public R<TGoods> getGoodsById(Integer id) {
+ return R.fail("根据id获取商品信息失败:" + throwable.getMessage());
+ }
+ };
+ }
+
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/IntegralRuleFallbackFactory.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/IntegralRuleFallbackFactory.java
new file mode 100644
index 0000000..a1f7ab5
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/IntegralRuleFallbackFactory.java
@@ -0,0 +1,43 @@
+package com.ruoyi.other.api.factory;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.api.dto.TagListQueryDto;
+import com.ruoyi.account.api.dto.UnitListQueryDto;
+import com.ruoyi.account.api.vo.CouponListVOVO;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.other.api.domain.TCompany;
+import com.ruoyi.other.api.domain.TIntegralRule;
+import com.ruoyi.other.api.domain.TUserTag;
+import com.ruoyi.other.api.feignClient.IntegralRuleClient;
+import com.ruoyi.other.api.feignClient.OtherClient;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 商品服务降级处理
+ *
+ * @author ruoyi
+ */
+@Component
+public class IntegralRuleFallbackFactory implements FallbackFactory<IntegralRuleClient>
+{
+ private static final Logger log = LoggerFactory.getLogger(IntegralRuleFallbackFactory.class);
+
+ @Override
+ public IntegralRuleClient create(Throwable throwable) {
+ log.error("积分规则调用失败:{}", throwable.getMessage());
+ return new IntegralRuleClient() {
+
+
+ @Override
+ public R<TIntegralRule> getSet() {
+ return R.fail("获取积分设置失败:" + throwable.getMessage());
+ }
+ };
+ }
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/CouponClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/CouponClient.java
new file mode 100644
index 0000000..f2f6fd6
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/CouponClient.java
@@ -0,0 +1,26 @@
+package com.ruoyi.other.api.feignClient;
+
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.other.api.domain.TCoupon;
+import com.ruoyi.other.api.factory.CouponFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 14:00
+ */
+@FeignClient(contextId = "CouponClient", value = ServiceNameConstants.OTHER_SERVICE, fallbackFactory = CouponFallbackFactory.class)
+public interface CouponClient {
+
+
+ /**
+ * 根据id获取优惠券信息
+ * @param id
+ * @return
+ */
+ @PostMapping("/t-coupon/getCouponById")
+ R<TCoupon> getCouponById(Integer id);
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/GoodsClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/GoodsClient.java
new file mode 100644
index 0000000..05c44ec
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/GoodsClient.java
@@ -0,0 +1,25 @@
+package com.ruoyi.other.api.feignClient;
+
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.other.api.domain.TGoods;
+import com.ruoyi.other.api.factory.GoodsFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 13:47
+ */
+@FeignClient(contextId = "GoodsClient", value = ServiceNameConstants.OTHER_SERVICE, fallbackFactory = GoodsFallbackFactory.class)
+public interface GoodsClient {
+
+ /**
+ * 根据id获取商品信息
+ * @param id
+ * @return
+ */
+ @PostMapping("/t-goods/getGoodsById")
+ R<TGoods> getGoodsById(Integer id);
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/IntegralRuleClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/IntegralRuleClient.java
new file mode 100644
index 0000000..9659c83
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/IntegralRuleClient.java
@@ -0,0 +1,24 @@
+package com.ruoyi.other.api.feignClient;
+
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.other.api.domain.TIntegralRule;
+import com.ruoyi.other.api.factory.IntegralRuleFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 10:54
+ */
+@FeignClient(contextId = "IntegralRuleClient", value = ServiceNameConstants.OTHER_SERVICE, fallbackFactory = IntegralRuleFallbackFactory.class)
+public interface IntegralRuleClient {
+
+ /**
+ * 获取积分设置
+ * @return
+ */
+ @PostMapping("/integral/getSet")
+ R<TIntegralRule> getSet();
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RoleSiteClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RoleSiteClient.java
index e4dc369..7dd2db2 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RoleSiteClient.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RoleSiteClient.java
@@ -26,7 +26,7 @@
* @param roleId
* @return
*/
- @GetMapping("/t-role-site/getSiteIds")
+ @PostMapping("/t-role-site/getSiteIds")
R<List<Integer>> getSiteIds(Long roleId);
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java
index 4d7e87a..ea305af 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java
@@ -33,6 +33,6 @@
* @param tagIds
* @return
*/
- @GetMapping("/t-evaluation-tag/getListByIds")
+ @PostMapping("/t-evaluation-tag/getListByIds")
R<List<TEvaluationTag>> getListByIds(List<Integer> tagIds);
}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/UserSiteClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/UserSiteClient.java
index 4cd3910..68d0746 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/UserSiteClient.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/UserSiteClient.java
@@ -26,7 +26,7 @@
* @param userId
* @return
*/
- @GetMapping("/t-user-site/getSiteIds")
+ @PostMapping("/t-user-site/getSiteIds")
R<List<Integer>> getSiteIds(Long userId);
diff --git a/ruoyi-api/ruoyi-api-other/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-other/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index bbbaed4..3398b1d 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-other/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -2,4 +2,5 @@
com.ruoyi.other.api.factory.UserSiteFallbackFactory
com.ruoyi.other.api.factory.RoleSiteFallbackFactory
com.ruoyi.other.api.factory.TEvaluationTagFallbackFactory
-com.ruoyi.other.api.factory.VipFallbackFactory
\ No newline at end of file
+com.ruoyi.other.api.factory.VipFallbackFactory
+com.ruoyi.other.api.factory.IntegralRuleFallbackFactory
\ No newline at end of file
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysRoleClient.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysRoleClient.java
index 10edd4c..16472fa 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysRoleClient.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysRoleClient.java
@@ -7,6 +7,7 @@
import com.ruoyi.system.api.model.GetSysRoleByIds;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
import java.util.List;
@@ -17,7 +18,7 @@
@FeignClient(contextId = "SysRoleClient", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = SysRoleFallbackFactory.class)
public interface SysRoleClient {
- @GetMapping("/role/getSysRoleByIds")
+ @PostMapping("/role/getSysRoleByIds")
public R<List<SysRole>> getSysRoleByIds(GetSysRoleByIds ids);
}
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java
index 4dff3cc..d0f2eb4 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java
@@ -51,7 +51,7 @@
* @param userId
* @return
*/
- @GetMapping("/user/queryRoleByUserId/{userId}")
+ @PostMapping("/user/queryRoleByUserId/{userId}")
R<SysRole> queryRoleByUserId(@PathVariable("userId") Long userId);
@@ -60,7 +60,7 @@
* @param roleId
* @return
*/
- @GetMapping("/user/queryRoleByRoleId/{roleId}")
+ @PostMapping("/user/queryRoleByRoleId/{roleId}")
R<SysRole> queryRoleByRoleId(@PathVariable("roleId") Long roleId);
/**
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
index b22299a..1ab7ca1 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
@@ -314,7 +314,7 @@
* @return
*/
@ResponseBody
- @GetMapping(value = "/getSysRoleByIds")
+ @PostMapping(value = "/getSysRoleByIds")
public R<List<SysRole>> getSysRoleByIds(@RequestBody GetSysRoleByIds ids){
List<SysRole> sysRoleByIds = roleService.getSysRoleByIds(ids.getIds());
return R.ok(sysRoleByIds);
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
index 20f1847..bc9e7b5 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -595,7 +595,7 @@
* @param userId
* @return
*/
- @GetMapping("/queryRoleByUserId/{userId}")
+ @PostMapping("/queryRoleByUserId/{userId}")
public R<SysRole> queryRoleByUserId(@PathVariable("userId") Long userId){
SysUserRole one = sysUserRoleService.getOne(Wrappers.lambdaQuery(SysUserRole.class)
.eq(SysUserRole::getUserId, userId)
@@ -611,7 +611,7 @@
}
- @GetMapping("/queryRoleByRoleId/{roleId}")
+ @PostMapping("/queryRoleByRoleId/{roleId}")
public R<SysRole> queryRoleByRoleId(@PathVariable("roleId") Long roleId){
return R.ok( roleService.getOne(Wrappers.lambdaQuery(SysRole.class)
.eq(SysRole::getRoleId, roleId)
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserAddressController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserAddressController.java
index f1bb29d..277bfdd 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserAddressController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserAddressController.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.account.api.model.TAppUserAddress;
import com.ruoyi.account.service.TAppUserAddressService;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -72,6 +73,18 @@
public AjaxResult<Boolean> deleteById(@RequestParam("id") Integer id) {
return AjaxResult.ok(appUserAddressService.removeById(id));
}
-
+
+
+ /**
+ * 根据id获取地址信息
+ * @param id
+ * @return
+ */
+ @PostMapping(value = "/getAppUserAddressById/{id}")
+ public R<TAppUserAddress> getAppUserAddressById(@PathVariable Long id){
+ TAppUserAddress userAddress = appUserAddressService.getById(id);
+ return R.ok(userAddress);
+ }
+
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
index 839c64a..f8237ff 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -355,10 +355,23 @@
* @param id
* @return
*/
- @GetMapping(value = "/user/getUserById/{id}")
+ @PostMapping(value = "/user/getUserById/{id}")
public R<TAppUser> getUserById(@PathVariable Long id){
TAppUser appUser = appUserService.getById(id);
return R.ok(appUser);
}
+
+
+ /**
+ * 修改用户信息
+ * @param appUser
+ * @return
+ */
+ @ResponseBody
+ @PostMapping("/user/updateAppUser")
+ public R updateAppUser(@RequestBody TAppUser appUser){
+ appUserService.updateById(appUser);
+ return R.ok();
+ }
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserIntegralChangeController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserIntegralChangeController.java
index acea96c..b721c52 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserIntegralChangeController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserIntegralChangeController.java
@@ -1,8 +1,15 @@
package com.ruoyi.account.controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.account.api.model.TAppUserIntegralChange;
+import com.ruoyi.account.service.TAppUserIntegralChangeService;
+import com.ruoyi.common.core.domain.R;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.time.ZoneOffset;
+import java.time.format.DateTimeFormatter;
/**
* <p>
@@ -16,5 +23,22 @@
@RequestMapping("/t-app-user-integral-change")
public class TAppUserIntegralChangeController {
+ @Resource
+ private TAppUserIntegralChangeService appUserIntegralChangeService;
+
+
+ /**
+ * 添加积分变动记录
+ * @param appUserIntegralChange
+ * @return
+ */
+ @ResponseBody
+ @PostMapping("/addAppUserIntegralChange")
+ public R addAppUserIntegralChange(@RequestBody TAppUserIntegralChange appUserIntegralChange){
+ String code = Math.random() * 1000 + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"));
+ appUserIntegralChange.setCode(code);
+ appUserIntegralChangeService.save(appUserIntegralChange);
+ return R.ok();
+ }
}
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 6ef7c88..e9f4b05 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
@@ -3,9 +3,12 @@
import com.ruoyi.chargingPile.api.dto.TChargingGunDTO;
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.TChargingGunVO;
import com.ruoyi.chargingPile.service.TChargingGunService;
+import com.ruoyi.chargingPile.service.TChargingPileService;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.log.annotation.Log;
@@ -16,6 +19,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@@ -33,6 +37,9 @@
public class TChargingGunController {
private final TChargingGunService chargingGunService;
+
+ @Resource
+ private TChargingPileService chargingPileService;
@Autowired
public TChargingGunController(TChargingGunService chargingGunService) {
@@ -118,5 +125,32 @@
public void downloadQRCode(@PathVariable Integer id, HttpServletResponse response){
// todo 待完善
}
+
+
+ /**
+ * 根据id获取充电枪完整名称
+ * @param id
+ * @return
+ */
+ @ResponseBody
+ @PostMapping(value = "/getAllName/{id}")
+ public R<String> getAllName(@PathVariable Integer id){
+ TChargingGun chargingGun = chargingGunService.getById(id);
+ TChargingPile chargingPile = chargingPileService.getById(chargingGun.getChargingPileId());
+ return R.ok(chargingPile.getName() + chargingGun.getName());
+ }
+
+
+ /**
+ * 根据id获取充电枪详情
+ * @param id
+ * @return
+ */
+ @ResponseBody
+ @PostMapping(value = "/getChargingGunById/{id}")
+ public R<TChargingGun> getChargingGunById(@PathVariable Integer id){
+ TChargingGun chargingGun = chargingGunService.getById(id);
+ return R.ok(chargingGun);
+ }
}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
index 8be1229..11b8807 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
@@ -80,7 +80,6 @@
}
-
@ResponseBody
@GetMapping("/pageChargingPileList")
@ApiOperation(value = "获取充电桩列表数据", tags = {"管理后台-充电桩信息"})
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingLotController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingLotController.java
index 3ad4a91..aca8121 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingLotController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingLotController.java
@@ -130,7 +130,7 @@
/**
* 通过站点id查询停车场信息
*/
- @GetMapping(value = "/getLotBySiteId")
+ @PostMapping(value = "/getLotBySiteId")
public R<TParkingLot> getLotBySiteId(@RequestParam("siteId") Integer siteId){
return R.ok(parkingLotService.getOne(Wrappers.lambdaQuery(TParkingLot.class)
.eq(TParkingLot::getSiteId, siteId)));
diff --git a/ruoyi-service/ruoyi-order/pom.xml b/ruoyi-service/ruoyi-order/pom.xml
index 3488348..193649c 100644
--- a/ruoyi-service/ruoyi-order/pom.xml
+++ b/ruoyi-service/ruoyi-order/pom.xml
@@ -60,7 +60,12 @@
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
-
+
+ <dependency>
+ <groupId>com.alibaba.cloud</groupId>
+ <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
+ </dependency>
+
<!-- SpringBoot Actuator -->
<dependency>
<groupId>org.springframework.boot</groupId>
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderAccountingStrategyController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderAccountingStrategyController.java
index eb4fe5b..b24aa02 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderAccountingStrategyController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderAccountingStrategyController.java
@@ -34,7 +34,7 @@
* @return
*/
@ResponseBody
- @GetMapping("/getTotalElectricQuantity/{days}")
+ @PostMapping("/getTotalElectricQuantity/{days}")
public R<List<List<Map<String, Object>>>> getTotalElectricQuantity(@PathVariable Integer days, @RequestParam("siteIds") Set<Integer> siteIds){
List<List<Map<String, Object>>> list = chargingOrderAccountingStrategyService.getTotalElectricQuantity(days, siteIds);
return R.ok(list);
@@ -47,7 +47,7 @@
* @return
*/
@ResponseBody
- @GetMapping("/getDailyChargingDegree/{days}")
+ @PostMapping("/getDailyChargingDegree/{days}")
public R<List<Double>> getDailyChargingDegree(@PathVariable Integer days, @RequestParam("siteIds") Set<Integer> siteIds){
List<Double> list = chargingOrderAccountingStrategyService.getDailyChargingDegree(days, siteIds);
return R.ok(list);
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index d05882b..5f8f666 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -3,13 +3,21 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.core.web.page.BasePage;
+import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.order.api.model.TChargingOrder;
import com.ruoyi.order.api.query.TChargingCountQuery;
+import com.ruoyi.order.dto.GetMyChargingOrderList;
+import com.ruoyi.order.dto.MyChargingOrderInfo;
import com.ruoyi.order.service.TChargingOrderService;
import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
/**
* <p>
@@ -58,11 +66,31 @@
* @param chargingGunId 充电枪id
* @return
*/
- @GetMapping(value = "/getOrderDetailByGunId")
+ @PostMapping(value = "/getOrderDetailByGunId")
public R<TChargingOrder> getOrderDetailByGunId(@RequestParam("chargingGunId") Integer chargingGunId){
TChargingOrder one = chargingOrderService.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getChargingGunId, chargingGunId)
.eq(TChargingOrder::getDelFlag, 0).eq(TChargingOrder::getStatus, 3));
return R.ok(one);
}
+
+
+
+
+ @ResponseBody
+ @GetMapping(value = "/getMyChargingOrderList")
+ @ApiOperation(value = "获取充电记录列表", tags = {"小程序-充电记录"})
+ public AjaxResult<Map<String, Object>> getMyChargingOrderList(GetMyChargingOrderList query){
+ Map<String, Object> orderList = chargingOrderService.getMyChargingOrderList(query);
+ return AjaxResult.success(orderList);
+ }
+
+
+ @ResponseBody
+ @GetMapping(value = "/getMyChargingOrderInfo")
+ @ApiOperation(value = "获取充电记订单明细", tags = {"小程序-充电记录"})
+ public AjaxResult<MyChargingOrderInfo> getMyChargingOrderInfo(String id){
+ MyChargingOrderInfo myChargingOrderInfo = chargingOrderService.getMyChargingOrderInfo(id);
+ return AjaxResult.success(myChargingOrderInfo);
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
index 0208eb3..d5dc5e8 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
@@ -6,26 +6,25 @@
import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
import com.ruoyi.chargingPile.api.model.TChargingPile;
import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.web.page.PageInfo;
-import com.ruoyi.order.api.model.TChargingOrder;
+import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.order.api.model.TExchangeOrder;
import com.ruoyi.order.api.model.TShoppingOrder;
import com.ruoyi.order.api.query.TActivityStatisticsQuery;
-import com.ruoyi.order.api.vo.TActivityStatisticslVO;
import com.ruoyi.order.api.vo.TActivityVO;
+import com.ruoyi.order.dto.ExchangeOrderGoodsInfo;
+import com.ruoyi.order.dto.GetMyExchangeOrder;
+import com.ruoyi.order.dto.MyExchangeOrderList;
import com.ruoyi.order.service.TChargingOrderService;
import com.ruoyi.order.service.TExchangeOrderService;
import com.ruoyi.order.service.TShoppingOrderService;
import com.ruoyi.order.service.TVipOrderService;
-import com.ruoyi.order.service.impl.TChargingOrderServiceImpl;
import io.swagger.annotations.Api;
-import io.swagger.models.auth.In;
-import org.springframework.beans.factory.annotation.Autowired;
+import io.swagger.annotations.ApiOperation;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
+import javax.annotation.Resource;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@@ -41,17 +40,14 @@
@RestController
@RequestMapping("/t-exchange-order")
public class TExchangeOrderController {
- @Autowired
+ @Resource
private TShoppingOrderService tShoppingOrderService;
- @Autowired
+ @Resource
private TExchangeOrderService exchangeOrderService;
- @Autowired
- private TChargingOrderService chargingOrderService;
- @Autowired
- private TVipOrderService vipOrderService;
- @Autowired
+
+ @Resource
private AppUserClient appUserClient;
- @Autowired
+ @Resource
private ChargingPileClient chargingPileClient;
/**
* 管理后台 活动费用统计
@@ -148,11 +144,27 @@
return R.ok(strings);
}
- /**
- * 管理后台 根据t_app_coupon订单ids查询积分兑换优惠券的订单编号
- * @param goodsIds 订单号-商品类型
- * @return
- */
-
+
+
+
+
+
+
+ @GetMapping("/getMyExchangeOrder")
+ @ApiOperation(value = "获取兑换记录列表", tags = {"小程序-兑换记录"})
+ public AjaxResult<List<MyExchangeOrderList>> getMyExchangeOrder(GetMyExchangeOrder query){
+ List<MyExchangeOrderList> list = exchangeOrderService.getMyExchangeOrder(query);
+ return AjaxResult.success(list);
+ }
+
+
+
+ @GetMapping("/getGoodsExchangeOrder/{id}")
+ @ApiOperation(value = "获取兑换订单详情", tags = {"小程序-兑换记录"})
+ public AjaxResult<ExchangeOrderGoodsInfo> getGoodsExchangeOrder(@PathVariable String id){
+ ExchangeOrderGoodsInfo goodsExchangeOrder = exchangeOrderService.getGoodsExchangeOrder(id);
+ return AjaxResult.success(goodsExchangeOrder);
+ }
+
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java
index d1615ae..9188660 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java
@@ -4,6 +4,8 @@
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.order.api.model.TOrderAppeal;
import com.ruoyi.order.api.query.TOrderAppealQuery;
import com.ruoyi.order.api.vo.TOrderAppealVO;
import com.ruoyi.order.service.TOrderAppealService;
@@ -53,8 +55,18 @@
public AjaxResult<TOrderAppealVO> getDetailById(@RequestParam("id") Integer id) {
return AjaxResult.ok(orderAppealService.getDetailById(id));
}
-
-
-
+
+
+
+ @ResponseBody
+ @GetMapping(value = "/addOrderAppeal")
+ @ApiOperation(value = "申诉订单", tags = {"小程序-充电记录(个人中心)"})
+ public AjaxResult addOrderAppeal(@RequestBody TOrderAppeal orderAppeal){
+ Long appUserId = tokenService.getLoginUser().getUserid();
+ orderAppeal.setAppUserId(appUserId);
+ orderAppeal.setStatus(1);
+ orderAppealService.save(orderAppeal);
+ return AjaxResult.success();
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderEvaluateController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderEvaluateController.java
index 844f56e..977579c 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderEvaluateController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderEvaluateController.java
@@ -9,11 +9,10 @@
import com.ruoyi.order.api.vo.TOrderEvaluateVO;
import com.ruoyi.order.dto.GetOrderEvaluatePageList;
import com.ruoyi.order.dto.GetOrderEvaluatePageListDTO;
+import com.ruoyi.order.dto.OrderEvaluateVo;
import com.ruoyi.order.service.TOrderEvaluateService;
import com.ruoyi.other.api.vo.TEvaluationTagVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
+import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -111,6 +110,28 @@
public AjaxResult<SiteDetailEvaluateVO> getSiteDetailEveList(@RequestParam(value = "siteId")@ApiParam(value = "站点id")Integer siteId) {
return AjaxResult.ok(orderEvaluateService.getSiteDetailEveList(siteId));
}
-
+
+
+
+
+ @PostMapping(value = "/addOrderEvaluate")
+ @ApiOperation(value = "添加评价记录", tags = {"小程序-充电记录"})
+ public AjaxResult addOrderEvaluate(@RequestBody OrderEvaluateVo query){
+ return orderEvaluateService.addOrderEvaluate(query);
+ }
+
+
+ @GetMapping(value = "/getOrderEvaluate")
+ @ApiOperation(value = "获取订单评价详情", tags = {"小程序-充电记录"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(value = "订单id", name = "orderId", required = true),
+ @ApiImplicitParam(value = "订单类型(1=充电订单,2=购物订单,3=兑换订单,4=会员订单)", name = "orderType", required = true),
+ })
+ public AjaxResult<OrderEvaluateVo> getOrderEvaluate(@PathVariable Integer orderId, Integer orderType){
+ OrderEvaluateVo orderEvaluate = orderEvaluateService.getOrderEvaluate(orderId, orderType);
+ return AjaxResult.success(orderEvaluate);
+ }
+
+
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/ExchangeOrderGoodsInfo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/ExchangeOrderGoodsInfo.java
new file mode 100644
index 0000000..bb080b4
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/ExchangeOrderGoodsInfo.java
@@ -0,0 +1,54 @@
+package com.ruoyi.order.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 14:07
+ */
+@Data
+@ApiModel
+public class ExchangeOrderGoodsInfo {
+ @ApiModelProperty("订单id")
+ private String id;
+ @ApiModelProperty("状态(1=待发货,2=待收货,3=已完成,4=已取消)")
+ private Integer status;
+ @ApiModelProperty("收货人姓名")
+ private String consignee;
+ @ApiModelProperty("电话")
+ private String phone;
+ @ApiModelProperty("地址")
+ private String address;
+ @ApiModelProperty("快递公司")
+ private String expressCompany;
+ @ApiModelProperty("快递单号")
+ private String expressNumber;
+ @ApiModelProperty("商品名称")
+ private String name;
+ @ApiModelProperty("商品图片")
+ private String imgUrl;
+ @ApiModelProperty("兑换数量")
+ private Integer purchaseQuantity;
+ @ApiModelProperty("兑换积分单价")
+ private Integer unitPoints;
+ @ApiModelProperty("订单编号")
+ private String code;
+ @ApiModelProperty("下单时间")
+ private String createTime;
+ @ApiModelProperty("兑换总积分")
+ private Integer points;
+ @ApiModelProperty("备注")
+ private String remark;
+ @ApiModelProperty("发货时间")
+ private String deliveryTime;
+ @ApiModelProperty("完成时间")
+ private String finishTime;
+ @ApiModelProperty("优惠券类型(1=充电优惠券,2=购物优惠券)")
+ private Integer couponType;
+ @ApiModelProperty("优惠券有效天数")
+ private Integer days;
+ @ApiModelProperty("有效期截止时间")
+ private String endTime;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyChargingOrderList.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyChargingOrderList.java
new file mode 100644
index 0000000..5e8e9eb
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyChargingOrderList.java
@@ -0,0 +1,17 @@
+package com.ruoyi.order.dto;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/15 19:11
+ */
+@Data
+@ApiModel
+public class GetMyChargingOrderList extends BasePage {
+ @ApiModelProperty("0=全部,1=待评价")
+ private Integer type;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyExchangeOrder.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyExchangeOrder.java
new file mode 100644
index 0000000..64520c0
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/GetMyExchangeOrder.java
@@ -0,0 +1,17 @@
+package com.ruoyi.order.dto;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 13:34
+ */
+@Data
+@ApiModel
+public class GetMyExchangeOrder extends BasePage {
+ @ApiModelProperty("状态(0=全部,1=待发货,2=待收货,3=已完成)")
+ private Integer status;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderInfo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderInfo.java
new file mode 100644
index 0000000..65d4294
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderInfo.java
@@ -0,0 +1,59 @@
+package com.ruoyi.order.dto;
+
+import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 9:08
+ */
+@Data
+@ApiModel
+public class MyChargingOrderInfo {
+ @ApiModelProperty("订单id")
+ private String id;
+ @ApiModelProperty("订单编号")
+ private String code;
+ @ApiModelProperty("订单时间")
+ private String createTime;
+ @ApiModelProperty("订单状态(0=未知,1=等待中,2=启动中,3=充电中,4=停止中,5=已结束)")
+ private Integer status;
+ @ApiModelProperty("订单标题")
+ private String title;
+ @ApiModelProperty("充电模式(1=超级快充,2=快充,3=慢充)")
+ private Integer chargeMode;
+ @ApiModelProperty("充电枪名称")
+ private String name;
+ @ApiModelProperty("车牌号")
+ private String licensePlate;
+ @ApiModelProperty("充电开始时间")
+ private Long startTime;
+ @ApiModelProperty("充电结束时间")
+ private Long endTime;
+ @ApiModelProperty("充电费")
+ private BigDecimal orderAmount;
+ @ApiModelProperty("实际消费")
+ private BigDecimal paymentAmount;;
+ @ApiModelProperty("充值金额")
+ private BigDecimal rechargeAmount;
+ @ApiModelProperty("优惠券抵扣")
+ private BigDecimal couponDiscountAmount;
+ @ApiModelProperty("会员抵扣")
+ private BigDecimal vipDiscountAmount;
+ @ApiModelProperty("退回金额")
+ private BigDecimal refundAmount;
+ @ApiModelProperty("阶段费用明细")
+ private List<TChargingOrderAccountingStrategy> stageCost;
+ @ApiModelProperty("电流电压曲线")
+ private Map<String, Object> currentAndVoltage;
+ @ApiModelProperty("功率曲线")
+ private Map<String, Object> power;
+ @ApiModelProperty("是否可申诉(0=否,1=是)")
+ private Integer actionable;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderList.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderList.java
new file mode 100644
index 0000000..e38ea6e
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyChargingOrderList.java
@@ -0,0 +1,32 @@
+package com.ruoyi.order.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/15 18:59
+ */
+@Data
+@ApiModel
+public class MyChargingOrderList {
+ @ApiModelProperty("订单id")
+ private String id;
+ @ApiModelProperty("订单状态(0=未知,1=等待中,2=启动中,3=充电中,4=停止中,5=已结束)")
+ private Integer status;
+ @ApiModelProperty("标题")
+ private String title;
+ @ApiModelProperty("充电度数")
+ private BigDecimal chargingDegree;
+ @ApiModelProperty("充电桩枪名称")
+ private String name;
+ @ApiModelProperty("结束方式(0=异常终止,1=主动终止,2=满电终止,3=费用不足终止)")
+ private Integer endMode;
+ @ApiModelProperty("支付金额")
+ private BigDecimal payMoney;
+ @ApiModelProperty("订单时间")
+ private String createTime;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyExchangeOrderList.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyExchangeOrderList.java
new file mode 100644
index 0000000..6f4c588
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/MyExchangeOrderList.java
@@ -0,0 +1,30 @@
+package com.ruoyi.order.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 13:36
+ */
+@Data
+@ApiModel
+public class MyExchangeOrderList {
+ @ApiModelProperty("订单id")
+ private String id;
+ @ApiModelProperty("兑换积分单价")
+ private Integer unitPoints;
+ @ApiModelProperty("兑换总积分")
+ private Integer points;
+ @ApiModelProperty("兑换数量")
+ private Integer purchaseQuantity;
+ @ApiModelProperty("订单类型(1=商品,2=优惠券)")
+ private Integer orderType;
+ @ApiModelProperty("状态(1=待发货,2=待收货,3=已完成,4=已取消)")
+ private Integer status;
+ @ApiModelProperty("名称")
+ private String name;
+ @ApiModelProperty("图片")
+ private String imgUrl;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/OrderEvaluateVo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/OrderEvaluateVo.java
new file mode 100644
index 0000000..bcbd782
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/OrderEvaluateVo.java
@@ -0,0 +1,23 @@
+package com.ruoyi.order.dto;
+
+import com.ruoyi.order.api.model.TOrderEvaluate;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/8/16 10:25
+ */
+@Data
+@ApiModel
+public class OrderEvaluateVo extends TOrderEvaluate {
+ @ApiModelProperty("评价标签id")
+ private List<Integer> tagIds;
+
+ @ApiModelProperty("评价标签名称")
+ private List<String> tagName;
+
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
index 2d6a017..1b186da 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
@@ -4,6 +4,9 @@
import com.ruoyi.order.api.model.TChargingOrder;
import org.apache.ibatis.annotations.Mapper;
+import java.util.List;
+import java.util.Map;
+
/**
* <p>
* Mapper 接口
@@ -14,5 +17,15 @@
*/
@Mapper
public interface TChargingOrderMapper extends BaseMapper<TChargingOrder> {
-
+
+
+ /**
+ * 获取小程序充电记录列表数据
+ * @param appUserId
+ * @param type
+ * @param pageCurr
+ * @param pageSize
+ * @return
+ */
+ List<TChargingOrder> getMyChargingOrderList(Long appUserId, Integer type, Integer pageCurr, Integer pageSize);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
index 5650b83..d5e9755 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
@@ -1,7 +1,12 @@
package com.ruoyi.order.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.common.core.web.page.BasePage;
import com.ruoyi.order.api.model.TChargingOrder;
+import com.ruoyi.order.dto.GetMyChargingOrderList;
+import com.ruoyi.order.dto.MyChargingOrderInfo;
+
+import java.util.Map;
/**
* <p>
@@ -12,5 +17,20 @@
* @since 2024-08-07
*/
public interface TChargingOrderService extends IService<TChargingOrder> {
-
+
+
+ /**
+ * 获取小程序充电记录列表数据
+ * @param query
+ * @return
+ */
+ Map<String, Object> getMyChargingOrderList(GetMyChargingOrderList query);
+
+
+ /**
+ * 获取小程序充电记录明细
+ * @param id
+ * @return
+ */
+ MyChargingOrderInfo getMyChargingOrderInfo(String id);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TExchangeOrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TExchangeOrderService.java
index 9246415..baf7452 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TExchangeOrderService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TExchangeOrderService.java
@@ -2,6 +2,11 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.order.api.model.TExchangeOrder;
+import com.ruoyi.order.dto.ExchangeOrderGoodsInfo;
+import com.ruoyi.order.dto.GetMyExchangeOrder;
+import com.ruoyi.order.dto.MyExchangeOrderList;
+
+import java.util.List;
/**
* <p>
@@ -12,5 +17,20 @@
* @since 2024-08-07
*/
public interface TExchangeOrderService extends IService<TExchangeOrder> {
-
+
+
+ /**
+ * 获取小程序兑换记录
+ * @param query
+ * @return
+ */
+ List<MyExchangeOrderList> getMyExchangeOrder(GetMyExchangeOrder query);
+
+
+ /**
+ * 获取兑换订单详情
+ * @param id
+ * @return
+ */
+ ExchangeOrderGoodsInfo getGoodsExchangeOrder(String id);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TOrderEvaluateService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TOrderEvaluateService.java
index 534d681..3098ba9 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TOrderEvaluateService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TOrderEvaluateService.java
@@ -1,6 +1,7 @@
package com.ruoyi.order.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.order.api.model.TOrderEvaluate;
import com.ruoyi.order.api.query.TOrderEvaluateQuery;
@@ -8,7 +9,9 @@
import com.ruoyi.order.api.vo.TOrderEvaluateVO;
import com.ruoyi.order.dto.GetOrderEvaluatePageList;
import com.ruoyi.order.dto.GetOrderEvaluatePageListDTO;
+import com.ruoyi.order.dto.OrderEvaluateVo;
import com.ruoyi.other.api.vo.TEvaluationTagVO;
+import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@@ -50,4 +53,20 @@
* @return
*/
PageInfo<GetOrderEvaluatePageListDTO> getPageList(GetOrderEvaluatePageList pageList);
+
+
+ /**
+ * 评价订单
+ * @param query
+ * @return
+ */
+ AjaxResult addOrderEvaluate(OrderEvaluateVo query);
+
+
+ /**
+ * 根据订单id获取
+ * @param orderId
+ * @return
+ */
+ OrderEvaluateVo getOrderEvaluate(Integer orderId, Integer orderType);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
index de40f2c..f189465 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -1,10 +1,33 @@
package com.ruoyi.order.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.api.feignClient.AppUserCarClient;
+import com.ruoyi.account.api.model.TAppUserCar;
+import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
+import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
+import com.ruoyi.chargingPile.api.feignClient.SiteClient;
+import com.ruoyi.chargingPile.api.model.Site;
+import com.ruoyi.chargingPile.api.model.TChargingGun;
+import com.ruoyi.common.core.web.page.BasePage;
+import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.order.api.model.TChargingOrder;
+import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy;
+import com.ruoyi.order.dto.GetMyChargingOrderList;
+import com.ruoyi.order.dto.MyChargingOrderInfo;
+import com.ruoyi.order.dto.MyChargingOrderList;
import com.ruoyi.order.mapper.TChargingOrderMapper;
+import com.ruoyi.order.service.TChargingOrderAccountingStrategyService;
import com.ruoyi.order.service.TChargingOrderService;
import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
+import java.time.ZoneOffset;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
/**
* <p>
@@ -16,5 +39,102 @@
*/
@Service
public class TChargingOrderServiceImpl extends ServiceImpl<TChargingOrderMapper, TChargingOrder> implements TChargingOrderService {
-
+
+ @Resource
+ private ChargingGunClient chargingGunClient;
+
+ @Resource
+ private SiteClient siteClient;
+
+ @Resource
+ private AppUserCarClient appUserCarClient;
+
+ @Resource
+ private TChargingOrderAccountingStrategyService chargingOrderAccountingStrategyService;
+
+ @Resource
+ private TokenService tokenService;
+
+
+
+
+ /**
+ * 获取小程序充电记录列表数据
+ * @param query
+ * @return
+ */
+ @Override
+ public Map<String, Object> getMyChargingOrderList(GetMyChargingOrderList query) {
+ Long appUserId = tokenService.getLoginUser().getUserid();
+ Map<String, Object> map = new HashMap<>();
+ int size = this.baseMapper.getMyChargingOrderList(appUserId, 1, null, null).size();
+ map.put("number", size);
+ List<TChargingOrder> list = this.baseMapper.getMyChargingOrderList(appUserId, query.getType(), query.getPageCurr(), query.getPageSize());
+ List<MyChargingOrderList> orderLists = new ArrayList<>();
+ for (TChargingOrder tChargingOrder : list) {
+ MyChargingOrderList myChargingOrderList = new MyChargingOrderList();
+ myChargingOrderList.setId(tChargingOrder.getId().toString());
+ myChargingOrderList.setStatus(tChargingOrder.getStatus());
+ Site site = siteClient.getSiteByIds(Arrays.asList(tChargingOrder.getSiteId())).getData().get(0);
+ myChargingOrderList.setTitle(site.getName());
+ myChargingOrderList.setChargingDegree(tChargingOrder.getChargingCapacity());
+ String name = chargingGunClient.getAllName(tChargingOrder.getChargingGunId()).getData();
+ myChargingOrderList.setName(name);
+ myChargingOrderList.setEndMode(tChargingOrder.getEndMode());
+ BigDecimal payMoney = tChargingOrder.getStatus() < 4 ? tChargingOrder.getRechargeAmount() : tChargingOrder.getPaymentAmount();
+ myChargingOrderList.setPayMoney(payMoney);
+ myChargingOrderList.setCreateTime(tChargingOrder.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ orderLists.add(myChargingOrderList);
+ }
+ map.put("list", orderLists);
+ return map;
+ }
+
+
+ /**
+ * 获取充电订单明细
+ * @param id 订单id
+ * @return
+ */
+ @Override
+ public MyChargingOrderInfo getMyChargingOrderInfo(String id) {
+ TChargingOrder chargingOrder = this.getById(id);
+ MyChargingOrderInfo myChargingOrderInfo = new MyChargingOrderInfo();
+ myChargingOrderInfo.setId(id);
+ myChargingOrderInfo.setCode(chargingOrder.getCode());
+ myChargingOrderInfo.setCreateTime(chargingOrder.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ myChargingOrderInfo.setStatus(chargingOrder.getStatus());
+ Site site = siteClient.getSiteByIds(Arrays.asList(chargingOrder.getSiteId())).getData().get(0);
+ myChargingOrderInfo.setTitle(site.getName());
+ TChargingGun chargingGun = chargingGunClient.getChargingGunById(chargingOrder.getChargingGunId()).getData();
+ myChargingOrderInfo.setChargeMode(chargingGun.getChargeMode());
+ String name = chargingGunClient.getAllName(chargingOrder.getChargingGunId()).getData();
+ myChargingOrderInfo.setName(name);
+ if(null != chargingOrder.getAppUserCarId()){
+ TAppUserCar tAppUserCar = appUserCarClient.getCarByIds(Arrays.asList(chargingOrder.getAppUserCarId())).getData().get(0);
+ myChargingOrderInfo.setLicensePlate(tAppUserCar.getLicensePlate());
+ }else{
+ myChargingOrderInfo.setLicensePlate("无");
+ }
+ myChargingOrderInfo.setStartTime(chargingOrder.getStartTime().toInstant(ZoneOffset.of("+8")).toEpochMilli());
+ myChargingOrderInfo.setEndTime(chargingOrder.getEndTime().toInstant(ZoneOffset.of("+8")).toEpochMilli());
+ myChargingOrderInfo.setOrderAmount(chargingOrder.getOrderAmount());
+ myChargingOrderInfo.setPaymentAmount(chargingOrder.getPaymentAmount());
+ myChargingOrderInfo.setRechargeAmount(chargingOrder.getRechargeAmount());
+ myChargingOrderInfo.setCouponDiscountAmount(chargingOrder.getCouponDiscountAmount());
+ myChargingOrderInfo.setVipDiscountAmount(chargingOrder.getVipDiscountAmount());
+ myChargingOrderInfo.setRefundAmount(chargingOrder.getRefundAmount());
+ List<TChargingOrderAccountingStrategy> stageCost = chargingOrderAccountingStrategyService.list(
+ new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().eq(TChargingOrderAccountingStrategy::getChargingOrderId, id)
+ .orderByAsc(TChargingOrderAccountingStrategy::getStartTime)
+ );
+ myChargingOrderInfo.setStageCost(stageCost);
+ // todo 待完善
+ //再MongoDB中获取数据
+ myChargingOrderInfo.setCurrentAndVoltage(null);
+ //再MongoDB中获取数据
+ myChargingOrderInfo.setPower(null);
+ myChargingOrderInfo.setActionable(myChargingOrderInfo.getEndTime() + 604800000L > System.currentTimeMillis() ? 0 : 1);
+ return myChargingOrderInfo;
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java
index 84f4764..341d6b7 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java
@@ -1,10 +1,27 @@
package com.ruoyi.order.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.api.feignClient.AppUserAddressClient;
+import com.ruoyi.account.api.model.TAppUserAddress;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.api.model.TExchangeOrder;
+import com.ruoyi.order.dto.ExchangeOrderGoodsInfo;
+import com.ruoyi.order.dto.GetMyExchangeOrder;
+import com.ruoyi.order.dto.MyExchangeOrderList;
import com.ruoyi.order.mapper.TExchangeOrderMapper;
import com.ruoyi.order.service.TExchangeOrderService;
+import com.ruoyi.other.api.domain.TCoupon;
+import com.ruoyi.other.api.domain.TGoods;
+import com.ruoyi.other.api.feignClient.CouponClient;
+import com.ruoyi.other.api.feignClient.GoodsClient;
+import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
/**
* <p>
@@ -16,5 +33,108 @@
*/
@Service
public class TExchangeOrderServiceImpl extends ServiceImpl<TExchangeOrderMapper, TExchangeOrder> implements TExchangeOrderService {
-
+
+ @Resource
+ private TokenService tokenService;
+
+ @Resource
+ private GoodsClient goodsClient;
+
+ @Resource
+ private CouponClient couponClient;
+
+ @Resource
+ private AppUserAddressClient appUserAddressClient;
+
+
+
+
+
+
+ /**
+ * 获取小程序兑换记录
+ * @param query
+ * @return
+ */
+ @Override
+ public List<MyExchangeOrderList> getMyExchangeOrder(GetMyExchangeOrder query) {
+ Long userid = tokenService.getLoginUser().getUserid();
+ LambdaQueryWrapper<TExchangeOrder> wrapper = new LambdaQueryWrapper<TExchangeOrder>().eq(TExchangeOrder::getDelFlag, 0).eq(TExchangeOrder::getAppUserId, userid);
+ if(query.getStatus() == 0){
+ wrapper.ne(TExchangeOrder::getStatus, 4);
+ }else{
+ wrapper.eq(TExchangeOrder::getStatus, query.getStatus());
+ }
+ List<TExchangeOrder> list = this.list(wrapper.orderByDesc(TExchangeOrder::getCreateTime).last(" limit " + query.getPageCurr() + "," + query.getPageSize()));
+ List<MyExchangeOrderList> pageList = new ArrayList<>();
+ for (TExchangeOrder tExchangeOrder : list) {
+ MyExchangeOrderList exchangeOrderList = new MyExchangeOrderList();
+ exchangeOrderList.setId(tExchangeOrder.getId().toString());
+ exchangeOrderList.setUnitPoints(tExchangeOrder.getPoints() / tExchangeOrder.getPurchaseQuantity());
+ exchangeOrderList.setPoints(tExchangeOrder.getPoints());
+ exchangeOrderList.setPurchaseQuantity(tExchangeOrder.getPurchaseQuantity());
+ exchangeOrderList.setOrderType(tExchangeOrder.getOrderType());
+ exchangeOrderList.setStatus(tExchangeOrder.getStatus());
+ String name = "";
+ String imgUrl = "";
+ if(tExchangeOrder.getOrderType() == 1){
+ TGoods goods = goodsClient.getGoodsById(tExchangeOrder.getGoodsId()).getData();
+ name = goods.getName();
+ imgUrl = goods.getCoverPicture();
+ }else{
+ TCoupon coupon = couponClient.getCouponById(tExchangeOrder.getGoodsId()).getData();
+ name = coupon.getName();
+ imgUrl = coupon.getCoverPicture();
+ }
+ exchangeOrderList.setName(name);
+ exchangeOrderList.setImgUrl(imgUrl);
+ pageList.add(exchangeOrderList);
+ }
+ return pageList;
+ }
+
+
+ /**
+ * 获取兑换订单详情
+ * @param id
+ * @return
+ */
+ @Override
+ public ExchangeOrderGoodsInfo getGoodsExchangeOrder(String id) {
+ TExchangeOrder exchangeOrder = this.getById(id);
+ ExchangeOrderGoodsInfo info = new ExchangeOrderGoodsInfo();
+ info.setId(id);
+ info.setStatus(exchangeOrder.getStatus());
+ TAppUserAddress userAddress = appUserAddressClient.getAppUserAddressById(exchangeOrder.getAppUserAddressId()).getData();
+ info.setConsignee(userAddress.getName());
+ info.setPhone(userAddress.getPhone());
+ info.setAddress(userAddress.getAddress());
+ info.setExpressCompany(exchangeOrder.getExpressCompany());
+ info.setExpressNumber(exchangeOrder.getExpressNumber());
+ String name = "";
+ String imgUrl = "";
+ if(exchangeOrder.getOrderType() == 1){
+ TGoods goods = goodsClient.getGoodsById(exchangeOrder.getGoodsId()).getData();
+ name = goods.getName();
+ imgUrl = goods.getCoverPicture();
+ }else{
+ TCoupon coupon = couponClient.getCouponById(exchangeOrder.getGoodsId()).getData();
+ info.setCouponType(coupon.getType());
+ info.setDays(coupon.getDays());
+ info.setEndTime(coupon.getEndTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ name = coupon.getName();
+ imgUrl = coupon.getCoverPicture();
+ }
+ info.setName(name);
+ info.setImgUrl(imgUrl);
+ info.setPurchaseQuantity(exchangeOrder.getPurchaseQuantity());
+ info.setUnitPoints(exchangeOrder.getPoints() / exchangeOrder.getPurchaseQuantity());
+ info.setCode(exchangeOrder.getCode());
+ info.setCreateTime(exchangeOrder.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ info.setPoints(exchangeOrder.getPoints());
+ info.setRemark(exchangeOrder.getRemark());
+ info.setDeliveryTime(exchangeOrder.getConsignerTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ info.setFinishTime(exchangeOrder.getReceivingTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ return info;
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
index 6916f8a..e0f76a8 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
@@ -1,19 +1,26 @@
package com.ruoyi.order.service.impl;
+import cn.hutool.db.DaoTemplate;
+import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.api.feignClient.AppUserCarClient;
import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.feignClient.AppUserIntegralChangeClient;
import com.ruoyi.account.api.model.TAppUser;
import com.ruoyi.account.api.model.TAppUserCar;
import com.ruoyi.account.api.feignClient.AppUserClient;
import com.ruoyi.account.api.model.TAppUser;
+import com.ruoyi.account.api.model.TAppUserIntegralChange;
import com.ruoyi.chargingPile.api.feignClient.SiteClient;
import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.chargingPile.api.vo.TAccountingStrategyVO;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.api.model.TChargingOrder;
import com.ruoyi.order.api.model.TOrderEvaluate;
import com.ruoyi.order.api.model.TOrderEvaluateTag;
@@ -22,19 +29,26 @@
import com.ruoyi.order.api.vo.TOrderEvaluateVO;
import com.ruoyi.order.dto.GetOrderEvaluatePageList;
import com.ruoyi.order.dto.GetOrderEvaluatePageListDTO;
+import com.ruoyi.order.dto.OrderEvaluateVo;
import com.ruoyi.order.mapper.TChargingOrderMapper;
import com.ruoyi.order.mapper.TOrderEvaluateMapper;
import com.ruoyi.order.mapper.TOrderEvaluateTagMapper;
+import com.ruoyi.order.service.TChargingOrderService;
import com.ruoyi.order.service.TOrderEvaluateService;
import com.ruoyi.other.api.domain.TEvaluationTag;
+import com.ruoyi.other.api.domain.TIntegralRule;
+import com.ruoyi.other.api.feignClient.IntegralRuleClient;
import com.ruoyi.other.api.feignClient.TEvaluationTagClient;
import com.ruoyi.other.api.vo.TEvaluationTagVO;
+import io.seata.spring.annotation.GlobalTransactional;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import javax.annotation.Resource;
+import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
@@ -66,6 +80,19 @@
@Resource
private SiteClient siteClient;
+
+ @Resource
+ private TokenService tokenService;
+
+ @Resource
+ private TChargingOrderService chargingOrderService;
+
+ @Resource
+ private IntegralRuleClient integralRuleClient;
+
+ @Resource
+ private AppUserIntegralChangeClient appUserIntegralChangeClient;
+
@@ -202,4 +229,84 @@
}
return pageInfo.setRecords(list);
}
+
+
+ /**
+ * 评价订单
+ * @param query
+ * @return
+ */
+ @Override
+ @GlobalTransactional(rollbackFor = Exception.class)//分布式事务
+ public AjaxResult addOrderEvaluate(OrderEvaluateVo query) {
+ TOrderEvaluate orderEvaluate = this.getOne(new LambdaQueryWrapper<TOrderEvaluate>().eq(TOrderEvaluate::getOrderId, query.getOrderId())
+ .eq(TOrderEvaluate::getOrderType, query.getOrderType()).eq(TOrderEvaluate::getDelFlag, 0));
+ if(null != orderEvaluate){
+ return AjaxResult.error("不能重复评价");
+ }
+ orderEvaluate = new TOrderEvaluate();
+ BeanUtils.copyProperties(query, orderEvaluate);
+ Long userid = tokenService.getLoginUser().getUserid();
+ orderEvaluate.setAppUserId(userid);
+ if(query.getOrderType() == 1){
+ TChargingOrder chargingOrder = chargingOrderService.getById(query.getOrderId());
+ orderEvaluate.setAppUserCarId(chargingOrder.getAppUserCarId());
+ }
+ this.save(orderEvaluate);
+
+ List<Integer> tagIds = query.getTagIds();
+ for (Integer tagId : tagIds) {
+ TOrderEvaluateTag orderEvaluateTag = new TOrderEvaluateTag();
+ orderEvaluateTag.setOrderEvaluateId(orderEvaluate.getId());
+ orderEvaluateTag.setEvaluationTagId(tagId);
+ orderEvaluateTagMapper.insert(orderEvaluateTag);
+ }
+
+ //判断发放积分 文字+图片+5星好评
+ if(StringUtils.isNotEmpty(query.getContent()) && StringUtils.isNotEmpty(query.getImgUrl()) && 5 == query.getMark()){
+ TIntegralRule data = integralRuleClient.getSet().getData();
+ String credit = data.getCredit();
+ //积分
+ Integer num1 = JSON.parseObject(credit).getInteger("num1");
+ if(null != num1 && 0 < num1){
+ TAppUser appUser = appUserClient.getUserById(userid).getData();
+ Integer points = appUser.getPoints();
+ appUser.setPoints(appUser.getPoints() + num1);
+ appUserClient.updateAppUser(appUser);
+
+ //积分变动明细
+ TAppUserIntegralChange appUserIntegralChange = new TAppUserIntegralChange();
+ appUserIntegralChange.setAppUserId(appUser.getId());
+ appUserIntegralChange.setChangeType(3);
+ appUserIntegralChange.setHistoricalIntegral(points);
+ appUserIntegralChange.setCurrentIntegral(points + num1);
+ appUserIntegralChange.setCreateTime(LocalDateTime.now());
+ appUserIntegralChangeClient.addAppUserIntegralChange(appUserIntegralChange);
+ }
+ }
+ return AjaxResult.success();
+ }
+
+
+ /**
+ * 获取订单评价
+ * @param orderId 订单id
+ * @param orderType 订单类型
+ * @return
+ */
+ @Override
+ public OrderEvaluateVo getOrderEvaluate(Integer orderId, Integer orderType) {
+ TOrderEvaluate orderEvaluate = this.getOne(new LambdaQueryWrapper<TOrderEvaluate>().eq(TOrderEvaluate::getOrderId, orderId).eq(TOrderEvaluate::getOrderType, orderType));
+ if(null != orderEvaluate){
+ OrderEvaluateVo orderEvaluateVo = new OrderEvaluateVo();
+ BeanUtils.copyProperties(orderEvaluate, orderEvaluateVo);
+ List<TOrderEvaluateTag> tOrderEvaluateTags = orderEvaluateTagMapper.selectList(new LambdaQueryWrapper<TOrderEvaluateTag>().eq(TOrderEvaluateTag::getOrderEvaluateId, orderEvaluate.getId()));
+ List<Integer> tagId = tOrderEvaluateTags.stream().map(TOrderEvaluateTag::getEvaluationTagId).collect(Collectors.toList());
+ List<TEvaluationTag> data = evaluationTagClient.getListByIds(tagId).getData();
+ List<String> collect = data.stream().map(TEvaluationTag::getName).collect(Collectors.toList());
+ orderEvaluateVo.setTagName(collect);
+ return orderEvaluateVo;
+ }
+ return null;
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
index f41d4d6..418f126 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
@@ -19,6 +19,7 @@
<result column="start_time" property="startTime" />
<result column="end_time" property="endTime" />
<result column="status" property="status" />
+ <result column="end_mode" property="endMode"/>
<result column="recharge_amount" property="rechargeAmount" />
<result column="recharge_payment_type" property="rechargePaymentType" />
<result column="recharge_payment_status" property="rechargePaymentStatus" />
@@ -43,4 +44,15 @@
id, code, order_type, order_classification, app_user_id, app_user_car_id,site_id, parking_lot_id, charging_pile_id, charging_gun_id, start_time, end_time, status, recharge_amount, recharge_payment_type, recharge_payment_status, recharge_serial_number, order_amount, app_coupon_id, coupon_discount_amount, vip_discount, vip_discount_amount, payment_amount, refund_code, refund_amount, refund_status, refund_serial_number, refund_time, create_time, del_flag
</sql>
+
+ <select id="getMyChargingOrderList" resultMap="BaseResultMap">
+ select * from t_charging_order where del_flag = 0 and app_user_id = #{appUserId}
+ <if test="1 == type">
+ and id not in (select order_id from t_order_evaluate where order_type = 1 and app_user_id = #{appUserId} and del_flag = 0)
+ </if>
+ order by create_time desc
+ <if test="null != pageCurr and null != pageSize">
+ limit #{pageCurr}, #{pageSize}
+ </if>
+ </select>
</mapper>
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
index f2d803e..67abca2 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
@@ -127,5 +127,17 @@
}
return R.ok(list);
}
+
+
+ /**
+ * 根据id获取优惠券信息
+ * @param id
+ * @return
+ */
+ @PostMapping(value = "/getCouponById/{id}")
+ public R<TCoupon> getCouponById(@PathVariable Integer id){
+ TCoupon coupon = tCouponService.getById(id);
+ return R.ok(coupon);
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TEvaluationTagController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TEvaluationTagController.java
index 6b55808..9a49776 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TEvaluationTagController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TEvaluationTagController.java
@@ -1,6 +1,7 @@
package com.ruoyi.other.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.BasePage;
@@ -96,10 +97,20 @@
* @param tagIds
* @return
*/
- @GetMapping("/getListByIds")
- public R<List<TEvaluationTag>> getListByIds(List<Integer> tagIds){
+ @PostMapping("/getListByIds")
+ public R<List<TEvaluationTag>> getListByIds(@RequestBody List<Integer> tagIds){
List<TEvaluationTag> tEvaluationTags = evaluationTagService.listByIds(tagIds);
return R.ok(tEvaluationTags);
}
+
+
+
+ @ResponseBody
+ @GetMapping("/getRandomEvaluationTag")
+ @ApiOperation(value = "获取随机的4个评价标签", tags = {"小程序-充电记录"})
+ public AjaxResult<List<TEvaluationTag>> getRandomEvaluationTag(){
+ List<TEvaluationTag> list = evaluationTagService.list(new LambdaQueryWrapper<TEvaluationTag>().last(" order by RAND() limit 0, 4"));
+ return AjaxResult.success(list);
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
index f714570..bea875b 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
@@ -1,6 +1,7 @@
package com.ruoyi.other.controller;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.other.api.domain.TActivity;
@@ -57,5 +58,16 @@
public AjaxResult<PageInfo<TGoods>> pageList(@RequestBody GoodsDTO dto) {
return AjaxResult.ok(goodsService.pageList(dto));
}
+
+ /**
+ * 根据id获取商品信息
+ * @param id
+ * @return
+ */
+ @PostMapping("/getGoodsById/{id}")
+ public R<TGoods> getGoodsById(@PathVariable Integer id){
+ TGoods goods = goodsService.getById(id);
+ return R.ok(goods);
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
index 712ef14..6db70fe 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.other.api.domain.THtml;
import com.ruoyi.other.api.domain.TIntegralRule;
import com.ruoyi.other.api.dto.SaveIntegralDTO;
@@ -32,12 +33,18 @@
private THtmlService htmlService;
@Autowired
private TIntegralRuleService integralRuleService;
- @GetMapping("/getSet")
+
+
+
+ @PostMapping("/getSet")
@ApiOperation(value = "获取积分设置")
public R<TIntegralRule> getSet() {
TIntegralRule res = integralRuleService.getOne(new QueryWrapper<>());
return R.ok(res);
}
+
+
+
@PostMapping("/saveSet")
@ApiOperation(value = "保存积分设置")
public R saveSet(@RequestBody TIntegralRule dto) {
@@ -94,5 +101,13 @@
}
return R.ok();
}
+
+
+ @GetMapping("/getIntegralRule")
+ @ApiOperation(tags = {"小程序-充电记录"},value = "获取积分规则设置")
+ public AjaxResult<String> getIntegralRule(){
+ TIntegralRule one = integralRuleService.getOne(null);
+ return AjaxResult.success(one);
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TRoleSiteController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TRoleSiteController.java
index 043a2cd..089747c 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TRoleSiteController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TRoleSiteController.java
@@ -32,8 +32,8 @@
* @return
*/
@ResponseBody
- @GetMapping("/getSiteIds")
- public R<List<Integer>> getSiteIds(Long roleId){
+ @PostMapping("/getSiteIds/{roleId}")
+ public R<List<Integer>> getSiteIds(@PathVariable Long roleId){
List<TRoleSite> list = roleSiteService.list(new LambdaQueryWrapper<TRoleSite>().eq(TRoleSite::getRoleId, roleId));
List<Integer> collect = list.stream().map(TRoleSite::getSiteId).collect(Collectors.toList());
return R.ok(collect);
@@ -45,7 +45,7 @@
* @return
*/
@ResponseBody
- @PostMapping("/getSiteIds")
+ @PostMapping("/addRoleSite")
public R addRoleSite(@RequestBody List<TRoleSite> roleSites){
roleSiteService.saveBatch(roleSites);
return R.ok();
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TUserSiteController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TUserSiteController.java
index 686f3b9..8b5327c 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TUserSiteController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TUserSiteController.java
@@ -33,8 +33,8 @@
* @return
*/
@ResponseBody
- @GetMapping("/getSiteIds")
- public R<List<Integer>> getSiteIds(Long userId){
+ @PostMapping("/getSiteIds/{userId}")
+ public R<List<Integer>> getSiteIds(@PathVariable Long userId){
List<TUserSite> list = userSiteService.list(new LambdaQueryWrapper<TUserSite>().eq(TUserSite::getUserId, userId));
List<Integer> collect = list.stream().map(TUserSite::getSiteId).collect(Collectors.toList());
return R.ok(collect);
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TCouponMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TCouponMapper.xml
index 517753e..ae8d93a 100644
--- a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TCouponMapper.xml
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TCouponMapper.xml
@@ -7,6 +7,8 @@
<id column="id" property="id" />
<result column="type" property="type" />
<result column="name" property="name" />
+ <result column="cover_picture" property="coverPicture"/>
+ <result column="details_picture" property="detailsPicture"/>
<result column="preferential_mode" property="preferentialMode" />
<result column="discount_amount" property="discountAmount" />
<result column="meet_the_conditions" property="meetTheConditions" />
--
Gitblit v1.7.1