From f221182c97f52bc7121b042b7ab16bf13813f851 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 26 八月 2025 14:39:54 +0800
Subject: [PATCH] bug修改

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java |   67 ++++++++++++++++++++++++++++-----
 1 files changed, 57 insertions(+), 10 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 fbfafa5..46944b8 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
@@ -32,6 +32,7 @@
 import javax.annotation.Resource;
 import java.util.Arrays;
 import java.util.List;
+import java.util.Objects;
 import java.util.Set;
 
 /**
@@ -64,10 +65,15 @@
 		return pageInfo.setRecords(list);
 	}
 
+    @Override
+    public List<GetSiteListDTO> getSiteListNolimit(GetSiteList siteList) {
+		Set<Integer> ids = null;
+		List<GetSiteListDTO> list = this.baseMapper.getSiteListNolimit( siteList, ids);
+		return list;
+    }
 
 
-
-	@Override
+    @Override
 	public PageInfo<GetSiteListDTO> getSiteList1(Long userId) {
 		GetSiteList siteList = new GetSiteList();
 		siteList.setPageCurr(1);
@@ -93,6 +99,10 @@
 		if(ajaxResult.isError()){
 			return ajaxResult;
 		}
+		SysUser sysUser = sysUserClient.queryUserByUserName(dto.getAccount()).getData();
+		if (Objects.nonNull(sysUser)){
+			return AjaxResult.error("账号已存在");
+		}
 		Site one = this.getOne(new LambdaQueryWrapper<Site>().eq(Site::getCode, dto.getCode()).eq(Site::getDelFlag, 0));
 		if(null != one){
 			return AjaxResult.error("站点编号重复");
@@ -100,37 +110,72 @@
 		this.save(dto);
 		// 添加登录账号
 		SysUser user = new SysUser();
-		user.setPhonenumber(dto.getPhone());
+		user.setPhonenumber(dto.getAccount());
 		user.setUserName(dto.getAccount());
 		user.setNickName(dto.getName());
 		user.setPassword(dto.getPassword());
 		user.setStatus("0");
 		user.setDelFlag("0");
 		user.setRoleId(2L);
-		R<Long> r = sysUserClient.addSysUser(user);
+		user.setSiteId(dto.getId());
+		R<Long> r = sysUserClient.addSysUserSite(user);
 		if(200 != r.getCode()){
 			throw new RuntimeException(r.getMsg());
 		}
+		dto.setUserId(r.getData());
+		this.updateById(dto);
 		return AjaxResult.success();
 	}
 	
 	
 	/**
 	 * 编辑站点
-	 * @param site
+	 * @param dto
 	 * @return
 	 */
 	@Override
-	public AjaxResult editSite(Site site) {
-		AjaxResult ajaxResult = addSiteVerify(site);
+	public AjaxResult editSite(SiteDTO dto) {
+		AjaxResult ajaxResult = addSiteVerify(dto);
 		if(ajaxResult.isError()){
 			return ajaxResult;
 		}
-		Site one = this.getOne(new LambdaQueryWrapper<Site>().eq(Site::getCode, site.getCode()).eq(Site::getDelFlag, 0));
-		if(null != one && !one.getCode().equals(site.getCode())){
+		Site one = this.getOne(new LambdaQueryWrapper<Site>().eq(Site::getCode, dto.getCode()).eq(Site::getDelFlag, 0));
+		if(null != one && !one.getCode().equals(dto.getCode())){
 			return AjaxResult.error("站点编号重复");
 		}
-		this.updateById(site);
+
+		// 通过站点id查询登录账号
+		SysUser sysUser = sysUserClient.queryUserBySiteId(dto.getId()).getData();
+		// 判断是否更换了账号  更换了账号判断是否已存在
+		if(null != sysUser && !sysUser.getUserName().equals(dto.getAccount())){
+			SysUser sysUser1 = sysUserClient.queryUserByUserName(dto.getAccount()).getData();
+			if(null != sysUser1){
+				return AjaxResult.error("账号已存在");
+			}
+			// 添加登录账号
+			SysUser user = new SysUser();
+			user.setPhonenumber(dto.getAccount());
+			user.setUserName(dto.getAccount());
+			user.setNickName(dto.getName());
+			user.setPassword(dto.getPassword());
+			user.setStatus("0");
+			user.setDelFlag("0");
+			user.setRoleId(2L);
+			user.setSiteId(dto.getId());
+			R<Long> r = sysUserClient.addSysUserSite(user);
+			if(200 != r.getCode()){
+				throw new RuntimeException(r.getMsg());
+			}
+			dto.setUserId(r.getData());
+			// 删除原有的登录账号
+			R res = sysUserClient.delSysUserById(sysUser.getUserId());
+		}
+		if(Objects.nonNull(sysUser) && sysUser.getUserName().equals(dto.getAccount())) {
+			// 修改密码
+			R res = sysUserClient.resetPassword(sysUser);
+		}
+
+		this.updateById(dto);
 		return AjaxResult.success();
 	}
 	
@@ -250,6 +295,8 @@
 		}
 		for (Integer id : ids) {
 			Site site = this.getById(id);
+			// 删除账号
+			sysUserClient.delSysUserById(site.getUserId());
 			this.removeById(site);
 		}
 		return AjaxResult.success();

--
Gitblit v1.7.1