From 1b1fedf11fa800a8dfeba43acc2fc8c7582f03a9 Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期四, 08 八月 2024 17:03:08 +0800
Subject: [PATCH] 8.8.1

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java |   48 +++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 37 insertions(+), 11 deletions(-)

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 8b9cc32..8377509 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
@@ -4,15 +4,21 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.account.api.dto.UnitListQueryDto;
+import com.ruoyi.account.api.dto.UserDetailDto;
 import com.ruoyi.account.api.dto.UserListQueryDto;
 import com.ruoyi.account.api.model.TAppUser;
+import com.ruoyi.account.api.model.TAppUserCar;
 import com.ruoyi.account.api.model.TAppUserTag;
 import com.ruoyi.account.api.model.TAppUserVipDetail;
+import com.ruoyi.account.service.TAppUserCarService;
 import com.ruoyi.account.service.TAppUserService;
 import com.ruoyi.account.service.TAppUserTagService;
 import com.ruoyi.account.service.TAppUserVipDetailService;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.utils.bean.BeanUtils;
+import com.ruoyi.common.core.web.domain.BasePojo;
 import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.order.api.feignClient.ChargingOrderClient;
 import com.ruoyi.other.api.domain.TCompany;
 import com.ruoyi.other.api.domain.TUserTag;
 import com.ruoyi.other.api.feignClient.OtherClient;
@@ -51,6 +57,12 @@
 
     @Resource
     private TAppUserVipDetailService tAppUserVipDetailService;
+    @Resource
+    private ChargingOrderClient chargingOrderClient;
+
+    @Resource
+    private TAppUserCarService appUserCarService;
+
     @ApiOperation(value = "单位管理列表", tags = {"用户管理-单位管理"})
     @PostMapping(value = "/unit/page")
     public R<Page<TCompany>> unitPage(@RequestBody UnitListQueryDto unitListQueryDto) {
@@ -167,16 +179,30 @@
         return R.ok();
     }
 
-//    @ApiOperation(value = "用户详情", tags = {"用户管理-用户列表"})
-//    @PostMapping(value = "/user/detail/{id}")
-//    public R userDetail(@PathVariable Long id) {
-//        TAppUser user = appUserService.getById(id);
-//        if (user.getVipId()!=null) {
-//            R<Map<Integer, String>> vipMap = otherClient.getVipMap(Arrays.asList(user.getVipId()));
-//            user.setVipName(vipMap.getData().get(user.getVipId()));
-//        }
-//        //获取累计充电数量
-//
-//    }
+    @ApiOperation(value = "用户详情", tags = {"用户管理-用户列表"})
+    @PostMapping(value = "/user/detail/{id}")
+    public R<UserDetailDto> userDetail(@PathVariable Long id) {
+        TAppUser user = appUserService.getById(id);
+        UserDetailDto userDetailDto =  new UserDetailDto();
+        BeanUtils.copyProperties(user,userDetailDto);
+        if (user.getVipId()!=null) {
+            R<Map<Integer, String>> vipMap = otherClient.getVipMap(Arrays.asList(user.getVipId()));
+            user.setVipName(vipMap.getData().get(user.getVipId()));
+        }
+        //获取累计充电数量
+        R<Long> useOrderCount = chargingOrderClient.useOrderCount(user.getId());
+        userDetailDto.setOrderCount(useOrderCount.getData());
+        R<TCompany> tCompanyR = otherClient.unitDetail(user.getCompanyId());
+        if (tCompanyR.getData()!=null){
+            userDetailDto.setUnitName(tCompanyR.getData().getName());
+        }
+        List<TAppUserCar> carList = appUserCarService.lambdaQuery().eq(TAppUserCar::getAppUserId, id).orderByDesc(BasePojo::getCreateTime).list();
+        userDetailDto.setCarList(carList);
+
+        List<Integer> tagIds = appUserTagService.lambdaQuery().eq(TAppUserTag::getAppUserId, id).orderByDesc(TAppUserTag::getCreateTime).list().stream().map(TAppUserTag::getUserTagId).collect(Collectors.toList());
+        R<Map<Integer, String>> tagMap = otherClient.getTagMap(tagIds);
+        userDetailDto.setTagName(tagMap.getData().values().toString());
+        return R.ok(userDetailDto);
+    }
 }
 

--
Gitblit v1.7.1