From 92daf066bde1d9b60c1c5132b1ec21abbe0daffc Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 01 十一月 2024 18:03:40 +0800
Subject: [PATCH] 修改

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java |   62 +++++++++++++++++++++++-------
 1 files changed, 47 insertions(+), 15 deletions(-)

diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
index aacf87e..079b76d 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
@@ -1,9 +1,13 @@
 package com.ruoyi.chargingPile.service.impl;
 
+import com.alibaba.fastjson2.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.feignClient.AppUserVipDetailClient;
 import com.ruoyi.account.api.model.TAppUser;
+import com.ruoyi.account.api.model.TAppUserVipDetail;
+import com.ruoyi.account.api.vo.GetAppUserVipDetail;
 import com.ruoyi.chargingPile.api.dto.GetSiteListDTO;
 import com.ruoyi.chargingPile.api.model.Site;
 import com.ruoyi.chargingPile.api.model.TChargingGun;
@@ -18,6 +22,7 @@
 import com.ruoyi.chargingPile.domain.SiteMenu;
 import com.ruoyi.chargingPile.mapper.SiteMapper;
 import com.ruoyi.chargingPile.service.*;
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.ServletUtils;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.web.domain.AjaxResult;
@@ -80,7 +85,8 @@
 	
 	@Resource
 	private IntegrationClient integrationClient;
-
+	@Resource
+	private AppUserVipDetailClient vipDetailClient;
 	
 	
 	/**
@@ -88,6 +94,7 @@
 	 * @param siteList
 	 * @return
 	 */
+
 	@Override
 	public PageInfo<GetSiteListDTO> getSiteList(GetSiteList siteList) {
 		Set<Integer> ids = null;
@@ -95,12 +102,15 @@
 		SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData();
 		Integer roleType = sysUser.getRoleType();
 		Integer objectId = sysUser.getObjectId();
+		R<Integer> admin = sysUserClient.isAdmin(SecurityUtils.getUserId());
 		//合作商
 		if(roleType == 2){
 			ids = partnerService.authSite(objectId, SiteMenu.SITE_LIST);
 		}else{
 			//非管理员需要根据角色和用户配置查询允许的站点数据
-			if(!SecurityUtils.isAdmin(SecurityUtils.getUserId())){
+			//改用roleId=1来判断
+			if(admin.getData()!=1){
+//			if(!SecurityUtils.isAdmin(SecurityUtils.getUserId())){
 				List<Integer> data = userSiteClient.getSiteIds(sysUser.getUserId()).getData();
 				List<SysUserRoleVo> data2 = sysUserRoleClient.getRoleByUserId(sysUser.getUserId()).getData();
 				if(data2.size() > 0){
@@ -134,12 +144,14 @@
 		SysUser sysUser = sysUserClient.getSysUser(userId).getData();
 		Integer roleType = sysUser.getRoleType();
 		Integer objectId = sysUser.getObjectId();
+		R<Integer> admin = sysUserClient.isAdmin(SecurityUtils.getUserId());
+
 		//合作商
 		if(roleType == 2){
 			ids = partnerService.authSite(objectId, SiteMenu.SITE_LIST);
 		}else{
 			//非管理员需要根据角色和用户配置查询允许的站点数据
-			if(!SecurityUtils.isAdmin(SecurityUtils.getUserId())){
+			if(admin.getData()!=1){
 				List<Integer> data = userSiteClient.getSiteIds(sysUser.getUserId()).getData();
 				List<SysUserRoleVo> data2 = sysUserRoleClient.getRoleByUserId(sysUser.getUserId()).getData();
 				List<Integer> data1 = roleSiteClient.getSiteIds(data2.get(0).getRoleId()).getData();
@@ -280,9 +292,9 @@
 	@Override
 	public PageInfo<SiteVO> pageList(SiteQuery query,Integer isLogin) {
 		TAppUser appUser = null;
+		// 获取当前登录用户id
+		Long userId = tokenService.getLoginUserApplet().getUserId();
 		if(isLogin == 1){
-			// 获取当前登录用户id
-			Long userId = tokenService.getLoginUserApplet().getUserId();
 			// 根据id查询用户信息
 			appUser = appUserClient.getUserById(userId).getData();
 		}
@@ -290,11 +302,22 @@
 		List<SiteVO> list = this.baseMapper.pageList(query,pageInfo);
 		if(Objects.nonNull(appUser) && Objects.nonNull(appUser.getVipId())){
 			// 查询会员信息
-			TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
-			if(Objects.nonNull(vip) && vip.getType() == 2){
-				list.forEach(item -> {
-					item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
-				});
+//			TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
+			GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail();
+			getAppUserVipDetail.setAppUserId(userId);
+			getAppUserVipDetail.setVipId(appUser.getVipId());
+			R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
+			TAppUserVipDetail data1 = appUserVipDetail.getData();
+			if(Objects.nonNull(data1)){
+				String vipJson = data1.getVipJson();
+				TVip vip = JSON.parseObject(vipJson, TVip.class);
+				if(Objects.nonNull(vip) && vip.getType() == 2){
+					list.forEach(item -> {
+						if(Objects.nonNull(vip.getDiscount())){
+							item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
+						}
+					});
+				}
 			}
 		}
 		pageInfo.setRecords(list);
@@ -378,11 +401,20 @@
 		List<SiteVO> list = this.baseMapper.getMapSiteList(query);
 		if(Objects.nonNull(appUser) && Objects.nonNull(appUser.getVipId())){
 			// 查询会员信息
-			TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
-			if(Objects.nonNull(vip) && vip.getType() == 2){
-				list.forEach(item -> {
-					item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
-				});
+//			TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
+			GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail();
+			getAppUserVipDetail.setAppUserId(userId);
+			getAppUserVipDetail.setVipId(appUser.getVipId());
+			R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
+			TAppUserVipDetail data1 = appUserVipDetail.getData();
+			if(Objects.nonNull(data1)){
+				String vipJson = data1.getVipJson();
+				TVip vip = JSON.parseObject(vipJson, TVip.class);
+				if(Objects.nonNull(vip) && vip.getType() == 2){
+					list.forEach(item -> {
+						item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
+					});
+				}
 			}
 		}
 		return list;

--
Gitblit v1.7.1