From be79f02230177efe76ebcf8c1644d944eec221aa Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sat, 23 Dec 2023 20:00:46 +0800
Subject: [PATCH] 场所新增时(网格员)网格挂接

---
 src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java |   10 ++++++++++
 src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.java            |    7 +++++++
 src/main/java/org/springblade/modules/grid/service/IGridmanService.java         |    8 ++++++++
 src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java  |   21 +++++++++++++++++++++
 src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.xml             |   10 ++++++++++
 5 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.java b/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.java
index 39732d3..a33b415 100644
--- a/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.java
+++ b/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.java
@@ -58,4 +58,11 @@
 	 * 网格员表 自定义详情
 	 */
     GridmanVO getDetail(@Param("gridman") GridmanEntity gridman);
+
+	/**
+	 * 查询网格id
+	 * @param userId
+	 * @return
+	 */
+    Integer getGridIdByUserId(@Param("userId") Long userId);
 }
diff --git a/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.xml b/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.xml
index 15ad5ca..a8ae1f9 100644
--- a/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.xml
+++ b/src/main/java/org/springblade/modules/grid/mapper/GridmanMapper.xml
@@ -124,4 +124,14 @@
         where jgm.is_deleted = 0
         and jgm.id = #{gridman.id}
     </select>
+
+    <!--查询网格id-->
+    <select id="getGridIdByUserId" resultType="java.lang.Integer">
+        select
+        jgm.grid_id
+        from jczz_gridman jgm
+        where jgm.is_deleted = 0
+        and jgm.user_id = #{userId}
+        limit 1
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/grid/service/IGridmanService.java b/src/main/java/org/springblade/modules/grid/service/IGridmanService.java
index 4ac16b0..ca0b68b 100644
--- a/src/main/java/org/springblade/modules/grid/service/IGridmanService.java
+++ b/src/main/java/org/springblade/modules/grid/service/IGridmanService.java
@@ -17,6 +17,7 @@
 package org.springblade.modules.grid.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.ibatis.annotations.Param;
 import org.springblade.modules.grid.entity.GridmanEntity;
 import org.springblade.modules.grid.excel.GridmanExcel;
 import org.springblade.modules.grid.vo.GridmanVO;
@@ -69,4 +70,11 @@
 	 * 网格员表 自定义详情
 	 */
 	GridmanVO getDetail(GridmanEntity gridman);
+
+	/**
+	 * 查询网格id
+	 * @param userId
+	 * @return
+	 */
+    Integer getGridIdByUserId(Long userId);
 }
diff --git a/src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java b/src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java
index 46dd8fe..e7bed77 100644
--- a/src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java
+++ b/src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java
@@ -207,4 +207,14 @@
 	public GridmanVO getDetail(GridmanEntity gridman) {
 		return baseMapper.getDetail(gridman);
 	}
+
+	/**
+	 * 查询网格id
+	 * @param userId
+	 * @return
+	 */
+	@Override
+	public Integer getGridIdByUserId(Long userId) {
+		return baseMapper.getGridIdByUserId(userId);
+	}
 }
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 5730afa..2b8e23a 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
@@ -29,6 +29,7 @@
 import org.springblade.modules.grid.entity.GridRangeEntity;
 import org.springblade.modules.grid.service.IGridRangeService;
 import org.springblade.modules.grid.service.IGridService;
+import org.springblade.modules.grid.service.IGridmanService;
 import org.springblade.modules.grid.vo.GridVO;
 import org.springblade.modules.place.entity.*;
 import org.springblade.modules.place.excel.PlaceAndRelExcel;
@@ -76,6 +77,9 @@
 
 	@Autowired
 	private IGridRangeService gridRangeService;
+
+	@Autowired
+	private IGridmanService gridmanService;
 
 	/**
 	 * 自定义列表查询
@@ -195,6 +199,23 @@
 				// 插入
 				gridRangeService.save(gridRangeEntity);
 			}
+		}else {
+			// 判断网格员,查询对应网格人对应的网格id
+			Integer gridId = gridmanService.getGridIdByUserId(AuthUtil.getUserId());
+			if (null!=gridId){
+				// 判断关联关系表是否存在
+				QueryWrapper<GridRangeEntity> wrapper = new QueryWrapper<>();
+				wrapper.eq("grid_id",gridId).eq("house_code",placeVO.getHouseCode());
+				GridRangeEntity one = gridRangeService.getOne(wrapper);
+				if (null==one){
+					// 新增
+					GridRangeEntity gridRangeEntity = new GridRangeEntity();
+					gridRangeEntity.setHouseCode(placeVO.getHouseCode());
+					gridRangeEntity.setGridId(gridId);
+					// 插入
+					gridRangeService.save(gridRangeEntity);
+				}
+			}
 		}
 	}
 

--
Gitblit v1.9.3