From 91e2a286bb5b72172bb2e2d5f96be03439c51f72 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 08 Dec 2023 10:46:24 +0800
Subject: [PATCH] 驾驶舱代码

---
 src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 51 insertions(+), 8 deletions(-)

diff --git a/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java b/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
index d340b03..2605633 100644
--- a/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
+++ b/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -17,10 +17,10 @@
 package org.springblade.modules.place.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.AllArgsConstructor;
 import org.apache.logging.log4j.util.Strings;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity;
@@ -32,17 +32,16 @@
 import org.springblade.modules.place.entity.PlaceRelEntity;
 import org.springblade.modules.place.excel.PlaceAndRelExcel;
 import org.springblade.modules.place.excel.PlaceExcel;
+import org.springblade.modules.place.mapper.PlaceMapper;
 import org.springblade.modules.place.service.IPlaceExtService;
 import org.springblade.modules.place.service.IPlacePoiLabelService;
 import org.springblade.modules.place.service.IPlaceRelService;
-import org.springblade.modules.place.vo.PlaceVO;
-import org.springblade.modules.place.mapper.PlaceMapper;
 import org.springblade.modules.place.service.IPlaceService;
+import org.springblade.modules.place.vo.PlaceVO;
 import org.springblade.modules.system.entity.User;
 import org.springblade.modules.system.service.IUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
@@ -101,7 +100,7 @@
 	 * @return
 	 */
 	@Override
-	public List<TreeNode> selectPlaceNodeList(Long userId) {
+	public List<TreeStringNode> selectPlaceNodeList(Long userId) {
 		return baseMapper.selectPlaceNodeList(userId.toString());
 	}
 
@@ -154,24 +153,36 @@
 	public User bindUserHandle(PlaceVO placeVO) {
 		User newUser = new User();
 		if (null!=placeVO.getPhone() && !placeVO.getPhone().equals("")) {
+			placeVO.setPrincipal(placeVO.getUsername());
+			placeVO.setPrincipalPhone(placeVO.getPhone());
 			//根据手机号查询库里的数据
 			User userParams = new User();
 			userParams.setPhone(placeVO.getPhone());
 			User user = userService.getOne(Condition.getQueryWrapper(userParams));
 
-			if (user != null) {
+			if (null!=user) {
 				//如果用户存在,则该用户id绑定场所
 				placeVO.setPrincipalUserId(user.getId());
 				newUser = user;
+				// 判断用户是否包含了居民角色,不包含则需更新
+				if (!user.getRoleId().contains("1717429059648606209")){
+					user.setRoleId(user.getRoleId() + ",1717429059648606209");
+					//更新
+					userService.updateById(user);
+				}
 			} else {
 				//如果用户不存在,则新增一个用户
 				newUser.setAccount(placeVO.getPhone());
 				newUser.setPhone(placeVO.getPhone());
 				newUser.setName(placeVO.getUsername());
 				newUser.setRealName(placeVO.getUsername());
-				// 目前暂定居民角色,默认密码为 123456
+				// 社区群众部门
+				newUser.setDeptId("1727979636479037441");
+				// 目前暂定居民角色,
 				newUser.setRoleId("1717429059648606209");
+				//默认密码为 123456
 				newUser.setPassword("123456");
+				// 设置机构
 				// 用户新增
 				boolean submit = userService.submit(newUser);
 				//绑定id
@@ -310,6 +321,8 @@
 				PlaceEntity placeEntity = new PlaceEntity();
 				placeEntity.setHouseCode(placeExcel.getHouseCode());
 				placeEntity.setPrincipalUserId(userId);
+				placeEntity.setPrincipal(placeExcel.getName());
+				placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber());
 				placeEntity.setCreateTime(new Date());
 				placeEntity.setCreateUser(AuthUtil.getUserId());
 				placeEntity.setUpdateTime(new Date());
@@ -375,6 +388,9 @@
 				placeEntity.setPlaceName(placeExcel.getPlaceName());
 				placeEntity.setLocaltion(placeExcel.getAddress());
 				placeEntity.setPrincipalUserId(userId);
+				placeEntity.setPrincipal(placeExcel.getName());
+				placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber());
+				placeEntity.setPrincipalUserId(userId);
 				placeEntity.setCreateTime(new Date());
 				placeEntity.setCreateUser(AuthUtil.getUserId());
 				placeEntity.setUpdateTime(new Date());
@@ -430,4 +446,31 @@
 			placeLabelBind(placeVO);
 		}
 	}
+
+	/**
+	 * 场所数据处理-用户信息(场所负责人信息写入到场所表)
+	 */
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public Object placeUserHandle() {
+		// 查询出有用户id 的场所
+		List<PlaceEntity> list = baseMapper.getHasUserIdPlaceList();
+		// 遍历
+		for (PlaceEntity placeEntity : list) {
+			// 查询对应的用户信息
+			User user = userService.getById(placeEntity.getPrincipalUserId());
+			if (null!=user) {
+				// 设置场所负责人,手机号
+				if (null != user.getRealName() && !user.getRealName().equals("")) {
+					placeEntity.setPrincipal(user.getRealName());
+				}
+				if (null != user.getPhone() && !user.getPhone().equals("")) {
+					placeEntity.setPrincipalPhone(user.getPhone());
+				}
+				// 更新场所信息
+				updateById(placeEntity);
+			}
+		}
+		return null;
+	}
 }

--
Gitblit v1.9.3