From 9ba12dad011e2afa278833f37aba895a632ccb9c Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Mon, 06 May 2024 14:45:16 +0800
Subject: [PATCH] 校园安全检查

---
 src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml                                |    4 
 src/main/java/org/springblade/modules/nursingCheckIn/mapper/NursingCheckInMapper.xml                 |    1 
 src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java               |   21 +
 src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java                       |   14 +
 src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java                      |    2 
 src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java                          |   26 +
 src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java           |   38 ++
 src/main/java/org/springblade/modules/task/vo/TaskVO.java                                            |    1 
 src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java                                       |    2 
 src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java                          |    8 
 src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java                       |   87 ++++++
 src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java                                  |   27 ++
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml                                     |   11 
 src/main/java/org/springblade/modules/task/mapper/TaskResidencePermitApplyMapper.xml                 |    2 
 src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java                  |    8 
 src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml                       |   68 ++--
 src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java                         |   20 +
 src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java                       |    5 
 src/main/java/org/springblade/modules/sms/service/ISmsSendService.java                               |    4 
 src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml                           |  204 +++++++++++++--
 src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java                    |    9 
 src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml                                   |   20 
 src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java                |   10 
 src/main/java/org/springblade/modules/place/entity/PlaceEntity.java                                  |   10 
 src/main/java/org/springblade/modules/police/mapper/PoliceAlarmRecordsMapper.xml                     |    3 
 src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java |   78 +++--
 src/main/java/org/springblade/modules/sms/controller/SmsSendController.java                          |   35 ++
 src/main/java/org/springblade/modules/system/service/IUserService.java                               |    8 
 src/main/java/org/springblade/modules/police/service/impl/PoliceAlarmRecordsServiceImpl.java         |    3 
 29 files changed, 591 insertions(+), 138 deletions(-)

diff --git a/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java b/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
index 6e58274..35dff0c 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -22,6 +22,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.logging.log4j.util.Strings;
 import org.springblade.common.cache.SysCache;
+import org.springblade.common.constant.CommonConstant;
 import org.springblade.common.constant.DictConstant;
 import org.springblade.common.node.TreeStringNode;
 import org.springblade.common.param.CommonParamSet;
@@ -29,6 +30,7 @@
 import org.springblade.common.utils.NodeTreeUtil;
 import org.springblade.common.utils.SpringUtils;
 import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.modules.backblast.entity.BackblastPubRecordEntity;
 import org.springblade.modules.category.dto.CategoryDTO;
 import org.springblade.modules.category.service.ICategoryService;
@@ -60,7 +62,9 @@
 import org.springblade.modules.house.vo.HouseholdVO;
 import org.springblade.modules.place.entity.PlaceEntity;
 import org.springblade.modules.place.entity.PlaceExtEntity;
+import org.springblade.modules.place.entity.PlacePoiLabel;
 import org.springblade.modules.place.service.IPlaceExtService;
+import org.springblade.modules.place.service.IPlacePoiLabelService;
 import org.springblade.modules.place.service.IPlaceService;
 import org.springblade.modules.place.vo.PlaceVO;
 import org.springblade.modules.police.entity.PoliceAffairsGridEntity;
@@ -130,7 +134,7 @@
 	/**
 	 * 根据角色获取功能集合数据
 	 *
-	 * @param type     1:查社区  2:查房屋和场所(居民角色)--2024/04/10  弃用
+	 * @param type      1:查社区  2:查房屋和场所(居民角色)--2024/04/10  弃用
 	 * @param roleNames --2024/04/10  弃用
 	 * @return
 	 */
@@ -179,7 +183,7 @@
 				return townList;
 			}
 			// 如果是居民
-			if (roleName.equals("inhabitant")) {
+			if (roleName.equals("inhabitant") || roleName.equals("xyzt") || roleName.equals("xyty")) {
 				return getInhabitantInfo(list);
 			}
 		}
@@ -270,7 +274,7 @@
 		List<TreeStringNode> list = new ArrayList<>();
 		Map<String, Object> map = new HashMap<>(2);
 		String roleName = SpringUtils.getRequestParam("roleName");
-		if (!Strings.isBlank(roleName)){
+		if (!Strings.isBlank(roleName)) {
 			houseParam.setRoleName(roleName);
 		}
 		// 获取网格员对应的地址编号集合
@@ -285,11 +289,11 @@
 		}
 		// 查楼栋,街路巷
 		if (houseParam.getType() == 2) {
-			return getBuildLevelData(houseParam,addressCodeList, map);
+			return getBuildLevelData(houseParam, addressCodeList, map);
 		}
 		// 查户室
 		if (houseParam.getType() == 3) {
-			return getHouseLevelData(houseParam,addressCodeList, map);
+			return getHouseLevelData(houseParam, addressCodeList, map);
 		}
 		return list;
 	}
@@ -301,15 +305,15 @@
 	 */
 	private void getGridInfoByGridman(HouseParam houseParam) {
 		if (houseParam.getRoleName().equals("wgy")) {
-			if (Strings.isBlank(houseParam.getRoleName())){
+			if (Strings.isBlank(houseParam.getRoleName())) {
 				houseParam.setRoleName(SpringUtils.getRequestParam("roleName"));
 			}
 			// 查询网格员的网格编号集合
 			List<String> gridCodeList
 				= SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(), null, houseParam.getRoleName());
 			String communityCode = SpringUtils.getRequestParam("communityCode");
-			List<GridVO> list = gridService.getGridListByComAndList(communityCode,gridCodeList);
-			if (list.size()>0){
+			List<GridVO> list = gridService.getGridListByComAndList(communityCode, gridCodeList);
+			if (list.size() > 0) {
 				GridVO grid = list.get(0);
 				houseParam.setCommunityName(grid.getCommunityName());
 				houseParam.setGridName(grid.getGridName());
@@ -324,7 +328,7 @@
 	 * @param map
 	 * @return
 	 */
-	private Map<String, Object> getHouseLevelData(HouseParam houseParam, List<String> stringList,Map<String, Object> map) {
+	private Map<String, Object> getHouseLevelData(HouseParam houseParam, List<String> stringList, Map<String, Object> map) {
 		// 判断地址类型
 		if (houseParam.getAddressType() == 1) {
 			List<FuncNode> aoiList = new ArrayList<>();
@@ -397,7 +401,7 @@
 	 * @param map
 	 * @return
 	 */
-	private Object getBuildLevelData(HouseParam houseParam,List<String> stringList, Map<String, Object> map) {
+	private Object getBuildLevelData(HouseParam houseParam, List<String> stringList, Map<String, Object> map) {
 		if (houseParam.getAddressType() == 4) {
 			// 获取网格员对应的网格信息
 			getGridInfoByGridman(houseParam);
@@ -626,12 +630,12 @@
 	 * @return
 	 */
 	@Override
-	public Object getHouseRentInfo(String code,Long houseId) {
+	public Object getHouseRentInfo(String code, Long houseId) {
 		DoorplateAddressVO doorplateAddressDetailVO = new DoorplateAddressVO();
-		if (Strings.isBlank(code) && null!=houseId) {
+		if (Strings.isBlank(code) && null != houseId) {
 			// 先查询门牌信息
 			doorplateAddressDetailVO = baseMapper.getDoorplateAddressDetailByHouseId(houseId);
-		}else {
+		} else {
 			// 先查询门牌信息
 			doorplateAddressDetailVO = baseMapper.getDoorplateAddressDetailByCode(code);
 		}
@@ -716,7 +720,7 @@
 	@Override
 	public List<DoorplateAddressVOTree> getHouseTree(HouseParam houseParam) {
 		String roleName = SpringUtils.getRequestParam("roleName");
-		if (!Strings.isBlank(roleName)){
+		if (!Strings.isBlank(roleName)) {
 			houseParam.setRoleName(roleName);
 		}
 		List<String> stringList = getHouseCodeList(houseParam);
@@ -743,7 +747,7 @@
 				// 查询对应的房屋地址code
 //				addressCodeList = gridService.getAddressCodeListByUserId(AuthUtil.getUserId(),null);
 				addressCodeList =
-					gridService.getAddressCodeListByGridCodeList(SpringUtils.getRequestParam("communityCode"),gridCodeList);
+					gridService.getAddressCodeListByGridCodeList(SpringUtils.getRequestParam("communityCode"), gridCodeList);
 			}
 		}
 		return addressCodeList;
@@ -762,7 +766,7 @@
 		if (null != houseParam.getRoleName() && !houseParam.getRoleName().equals("")) {
 			if (houseParam.getRoleName().equals("mj") && !userId.equals("1726859808689696770")) {
 				// 查询对应社区编号集合
-				stringList = SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(),null,houseParam.getRoleName());
+				stringList = SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(), null, houseParam.getRoleName());
 			}
 		}
 		return stringList;
@@ -825,14 +829,14 @@
 						String point = "'POINT(" + doorplateAddressEntity.getX() + " " + doorplateAddressEntity.getY() + ")'";
 						//点坐标解析网格
 						List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
-						if (gridEntityList.size()>0){
+						if (gridEntityList.size() > 0) {
 							GridEntity gridEntity = gridEntityList.get(0);
 							houseEntity.setGridId(gridEntity.getId());
 							houseEntity.setGridCode(gridEntity.getGridCode());
 						}
 						//点坐标解析警格
 						List<PoliceAffairsGridEntity> policeAffairsGridEntityList = policeAffairsGridService.spatialAnalysis(point);
-						if (policeAffairsGridEntityList.size()>0){
+						if (policeAffairsGridEntityList.size() > 0) {
 							PoliceAffairsGridEntity policeAffairsGridEntity = policeAffairsGridEntityList.get(0);
 							houseEntity.setJwGridCode(policeAffairsGridEntity.getJwGridCode());
 						}
@@ -931,14 +935,14 @@
 				String point = "'POINT(" + addressEntity.getX() + " " + addressEntity.getY() + ")'";
 				//点坐标解析网格
 				List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
-				if (gridEntityList.size()>0){
+				if (gridEntityList.size() > 0) {
 					GridEntity gridEntity = gridEntityList.get(0);
 					placeEntity.setGridId(gridEntity.getId());
 					placeEntity.setGridCode(gridEntity.getGridCode());
 				}
 				//点坐标解析警格
 				List<PoliceAffairsGridEntity> policeAffairsGridEntityList = policeAffairsGridService.spatialAnalysis(point);
-				if (policeAffairsGridEntityList.size()>0){
+				if (policeAffairsGridEntityList.size() > 0) {
 					PoliceAffairsGridEntity policeAffairsGridEntity = policeAffairsGridEntityList.get(0);
 					placeEntity.setJwGridCode(policeAffairsGridEntity.getJwGridCode());
 				}
@@ -1001,13 +1005,13 @@
 					// 无权限
 					doorplateAddressVO.setIsJur(2);
 //					list = gridService.getAddressCodeListByUserId(AuthUtil.getUserId(),doorplateAddress.getAddressCode());
-					list = SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(),null,roleName);
+					list = SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(), null, roleName);
 					if (null != list && list.size() > 0) {
 						List<String> arrayList = new ArrayList<>();
 						for (String gridCode : list) {
-							if (gridCode.length()>12) {
+							if (gridCode.length() > 12) {
 								arrayList.add(gridCode.substring(0, gridCode.length() - 2));
-							}else {
+							} else {
 								arrayList.add(gridCode);
 							}
 						}
@@ -1016,11 +1020,11 @@
 							doorplateAddressVO.setIsJur(1);
 						}
 					}
-				}else if (roleName.equals("mj")) {
+				} else if (roleName.equals("mj")) {
 					// 无权限
 					doorplateAddressVO.setIsJur(2);
 					// 查询对应的社区code
-					list = SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(),null,roleName);
+					list = SysCache.getGridRegionChildCodesByDeptId(AuthUtil.getDeptId(), null, roleName);
 					if (null != list && list.size() > 0) {
 						boolean contains = list.contains(doorplateAddressVO.getNeiCode());
 						if (contains) {
@@ -1032,13 +1036,21 @@
 					doorplateAddressVO.setIsJur(1);
 				}
 			}
-			if(doorplateAddressVO != null ){
+			if (doorplateAddressVO != null) {
 				//  获取房屋标签
 				IUserHouseLabelService userHouseLabelService = SpringUtils.getBean(IUserHouseLabelService.class);
 				List<UserHouseLabelEntity> houseLabelEntityList = userHouseLabelService.list(Wrappers.<UserHouseLabelEntity>lambdaQuery()
 					.eq(UserHouseLabelEntity::getHouseCode, doorplateAddressVO.getAddressCode())
 					.eq(UserHouseLabelEntity::getLableType, 2));
 				doorplateAddressVO.setUserHouseLabelVOList(houseLabelEntityList);
+				// 查询房屋类别
+				IPlacePoiLabelService poiLabelService = SpringUtils.getBean(IPlacePoiLabelService.class);
+				PlacePoiLabel placePoiLabel = poiLabelService.getOne(Wrappers.<PlacePoiLabel>lambdaQuery()
+					.eq(PlacePoiLabel::getPlaceId, doorplateAddressVO.getPid())
+					.eq(PlacePoiLabel::getType, CommonConstant.NUMBER_THREE));
+				if(ObjectUtil.isNotEmpty(placePoiLabel)){
+					doorplateAddressVO.setLableCode(placePoiLabel.getPoiCode());
+				}
 			}
 			return doorplateAddressVO;
 		}
@@ -1106,19 +1118,20 @@
 
 	/**
 	 * 网格范围数据处理
+	 *
 	 * @return
 	 */
 	@Override
-	public boolean gridRangeDataHandle(String townName,String communityName) {
+	public boolean gridRangeDataHandle(String townName, String communityName) {
 		// 查询未匹配的网格范围地址信息
 		// 查询总数
-		Integer count = baseMapper.getNotBindGridRangeDoorListCount(townName,communityName);
+		Integer count = baseMapper.getNotBindGridRangeDoorListCount(townName, communityName);
 		if (count > 0) {
 			IGridRangeService gridRangeService = SpringUtils.getBean(IGridRangeService.class);
 			int num = count / 1000;
 			for (int i = 0; i <= num + 1; i++) {
 				// 查询所有未匹配的网格范围地址数据
-				List<DoorplateAddressEntity> list = baseMapper.getNotBindGridRangeDoorList(townName,communityName);
+				List<DoorplateAddressEntity> list = baseMapper.getNotBindGridRangeDoorList(townName, communityName);
 				// 需要新增的网格范围 list
 				List<GridRangeEntity> gridRangeEntityList = new ArrayList<>();
 				// 处理户室数据
@@ -1132,7 +1145,7 @@
 						String point = "'POINT(" + doorplateAddressEntity.getX() + " " + doorplateAddressEntity.getY() + ")'";
 						//点坐标解析网格
 						List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
-						if (gridEntityList.size()>0){
+						if (gridEntityList.size() > 0) {
 							GridRangeEntity gridRangeEntity = new GridRangeEntity();
 							gridRangeEntity.setHouseCode(doorplateAddressEntity.getAddressCode());
 							gridRangeEntity.setDistrictCode(doorplateAddressEntity.getAoiCode());
@@ -1154,15 +1167,16 @@
 
 	/**
 	 * 设置警格网格信息
+	 *
 	 * @param doorplateAddressEntity
 	 */
-	public void setGridInfo(DoorplateAddressEntity doorplateAddressEntity,GridRangeEntity gridRangeEntity) {
+	public void setGridInfo(DoorplateAddressEntity doorplateAddressEntity, GridRangeEntity gridRangeEntity) {
 		// 根据位置设置网格,警格编号
 //		IPoliceAffairsGridService policeAffairsGridService = SpringUtils.getBean(IPoliceAffairsGridService.class);
 		String point = "'POINT(" + doorplateAddressEntity.getX() + " " + doorplateAddressEntity.getY() + ")'";
 		//点坐标解析网格
 		List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
-		if (gridEntityList.size()>0){
+		if (gridEntityList.size() > 0) {
 			GridEntity gridEntity = gridEntityList.get(0);
 			gridRangeEntity.setGridId(gridEntity.getId());
 			gridRangeEntity.setGridCode(gridEntity.getGridCode());
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java b/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java
index b9dfce8..12dfabc 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java
@@ -53,5 +53,14 @@
 	 */
 	private Integer addType;
 
+	/**
+	 * 场所id
+	 */
+	private Long pid;
+	/**
+	 * 分类编码
+	 */
+	private Integer lableCode;
+
 
 }
diff --git a/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java b/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java
index f3a65c4..e4eeac6 100644
--- a/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java
+++ b/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java
@@ -97,4 +97,14 @@
 	@ApiModelProperty(value = "纬度", example = "")
 	@TableField("latitude")
 	private String latitude;
+
+	/** 地址编码 */
+	@ApiModelProperty(value = "地址编码", example = "")
+	@TableField("house_code")
+	private String houseCode;
+
+	/** 场所名称 */
+	@ApiModelProperty(value = "场所名称", example = "")
+	@TableField("place_name")
+	private String placeName;
 }
diff --git a/src/main/java/org/springblade/modules/nursingCheckIn/mapper/NursingCheckInMapper.xml b/src/main/java/org/springblade/modules/nursingCheckIn/mapper/NursingCheckInMapper.xml
index 69e0a87..10a47ce 100644
--- a/src/main/java/org/springblade/modules/nursingCheckIn/mapper/NursingCheckInMapper.xml
+++ b/src/main/java/org/springblade/modules/nursingCheckIn/mapper/NursingCheckInMapper.xml
@@ -20,6 +20,7 @@
             <if test="nursingCheckIn.placeId != null ">and place_id = #{nursingCheckIn.placeId}</if>
             <if test="nursingCheckIn.type != null  and nursingCheckIn.type != ''">and type = #{nursingCheckIn.type}</if>
         </where>
+        order by id desc
     </select>
 
 
diff --git a/src/main/java/org/springblade/modules/place/entity/PlaceEntity.java b/src/main/java/org/springblade/modules/place/entity/PlaceEntity.java
index 745b895..ed15598 100644
--- a/src/main/java/org/springblade/modules/place/entity/PlaceEntity.java
+++ b/src/main/java/org/springblade/modules/place/entity/PlaceEntity.java
@@ -204,4 +204,14 @@
 	@ApiModelProperty(value = "无炸类别", example = "")
 	@TableField("no_explosion_category")
 	private Integer noExplosionCategory;
+
+	/** 场所负责人(关联用户表信息) */
+	@ApiModelProperty(value = "主体", example = "")
+	@TableField("principal_account")
+	private Long principalAccount;
+
+	/** 场所负责人(关联用户表信息) */
+	@ApiModelProperty(value = "通用", example = "")
+	@TableField("universal_account")
+	private Long universalAccount;
 }
diff --git a/src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml b/src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
index dda83fe..5e94465 100644
--- a/src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
+++ b/src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
@@ -188,9 +188,11 @@
                jp.place_name as placeName,
                jp.lng,
                jp.lat,
-               jp.location
+               jp.location,
+               jppl.poi_code
         from jczz_place_ext jpe
                  left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0
+        left join  jczz_place_poi_label jppl on jppl.place_id = jp.id and jppl.type = 3
         where jpe.is_deleted = 0
           and jpe.place_id = #{placeExt.placeId}
     </select>
diff --git a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
index d09d944..a129d74 100644
--- a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
+++ b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -279,20 +279,22 @@
     <!--查询场所集合信息-->
     <select id="selectPlaceNodeList" resultType="org.springblade.common.node.TreeStringNode" >
         SELECT jp.id,
-               jp.house_code      houseCode,
-               jp.place_name AS   NAME,
-               jp.is_nine AS isNine,
-               jp.is_front AS isFront,
+               jp.house_code               houseCode,
+               jp.place_name            AS NAME,
+               jp.is_nine               AS isNine,
+               jp.is_front              AS isFront,
                jp.no_explosion_category AS noExplosionCategory,
-               br.name neiName,
-               jg.community_code neiCode,
-               FALSE         AS   hasChildren
+               br.name                     neiName,
+               jg.community_code           neiCode,
+               FALSE                    AS hasChildren
         FROM jczz_place jp
                  LEFT JOIN jczz_grid jg on jp.grid_code = jg.grid_code and jg.is_deleted = 0
                  LEFT JOIN blade_region br on br.code = jg.community_code
         where 1 = 1
-          and jp.is_deleted = 0
-          and jp.principal_user_id = #{userId}
+            and jp.is_deleted = 0
+            and jp.principal_user_id = #{userId}
+           or jp.principal_account = #{userId}
+           or jp.universal_account = #{userId}
     </select>
 
 
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 d1cb6cf..b38339a 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
@@ -744,13 +744,18 @@
 			// 用户新增
 			newUser.setId(null);
 			boolean submit = userService.submit(newUser);
+			placeVO.setPrincipalAccount(newUser.getId());
 			// 校园通用
 			newUser.setId(null);
+			newUser.setPassword("123456");
 			newUser.setRoleId("1780786746076262402");
 			newUser.setAccount(placeVO.getPlaceName() + "通用");
 			newUser.setName(placeVO.getPlaceName() + "-通用");
 			newUser.setRealName(placeVO.getPlaceName() + "-通用");
 			boolean submit2 = userService.submit(newUser);
+			placeVO.setUniversalAccount(newUser.getId());
+			// 更新场所信息
+			updateById(placeVO);
 			//绑定id
 //			placeVO.setPrincipalUserId(newUser.getId());
 			//给人员打上场所负责人的标签
diff --git a/src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java b/src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java
index c341269..39704a4 100644
--- a/src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java
+++ b/src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java
@@ -95,4 +95,6 @@
 	 */
 	private String communityCode;
 
+	private String poiCode;
+
 }
diff --git a/src/main/java/org/springblade/modules/police/mapper/PoliceAlarmRecordsMapper.xml b/src/main/java/org/springblade/modules/police/mapper/PoliceAlarmRecordsMapper.xml
index 87d00da..ed1ce77 100644
--- a/src/main/java/org/springblade/modules/police/mapper/PoliceAlarmRecordsMapper.xml
+++ b/src/main/java/org/springblade/modules/police/mapper/PoliceAlarmRecordsMapper.xml
@@ -64,6 +64,9 @@
                                     <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                         #{code}
                                     </foreach>
+                                    <if test="vo.policeId != null">
+                                        or jpar.police_id = #{vo.policeId}
+                                    </if>
                                 </when>
                                 <otherwise>
                                     and jpag.community_code in ('')
diff --git a/src/main/java/org/springblade/modules/police/service/impl/PoliceAlarmRecordsServiceImpl.java b/src/main/java/org/springblade/modules/police/service/impl/PoliceAlarmRecordsServiceImpl.java
index e32d663..fb8243c 100644
--- a/src/main/java/org/springblade/modules/police/service/impl/PoliceAlarmRecordsServiceImpl.java
+++ b/src/main/java/org/springblade/modules/police/service/impl/PoliceAlarmRecordsServiceImpl.java
@@ -18,7 +18,9 @@
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springblade.common.param.CommonParamSet;
+import org.springblade.common.utils.AuthUtils;
 import org.springblade.common.utils.SpringUtils;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.modules.grid.entity.GridEntity;
 import org.springblade.modules.grid.service.IGridService;
 import org.springblade.modules.police.entity.PoliceAffairsGridEntity;
@@ -43,6 +45,7 @@
 
 	@Override
 	public IPage<PoliceAlarmRecordsVO> selectPoliceAlarmRecordsPage(IPage<PoliceAlarmRecordsVO> page, PoliceAlarmRecordsVO policeAlarmRecords) {
+		policeAlarmRecords.setPoliceId(AuthUtil.getUserId());
 		CommonParamSet commonParamSet = new CommonParamSet<>().invoke(PoliceAlarmRecordsVO.class, policeAlarmRecords);
 		return page.setRecords(baseMapper.selectPoliceAlarmRecordsPage(page, policeAlarmRecords,
 			commonParamSet.getIsAdministrator(),
diff --git a/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java b/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java
index 37f0288..e16e0a7 100644
--- a/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java
+++ b/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java
@@ -20,6 +20,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.tool.api.R;
 import org.springblade.modules.sms.service.ISmsSendService;
@@ -52,8 +53,31 @@
 	}
 
 	/**
+	 * 短信模版表 详情
+	 */
+	@GetMapping("/loginSend")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "登录发送短信验证码")
+	public R<SmsTemplateVO> loginSend(@RequestParam String phone) {
+		Boolean aBoolean = iSmsSendService.loginSendVerificationCode(phone);
+		return R.status(aBoolean);
+	}
+
+	/**
+	 * 短信模版表 详情
+	 */
+	@GetMapping("/checkCode")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "校验验证")
+	public R<Boolean> checkCode(@RequestParam String phone, @RequestParam String code) {
+		String result = iSmsSendService.checkCode(phone, code);
+		return R.data(StringUtils.isNotBlank(result) ? false : true, result);
+	}
+
+	/**
 	 * 发送居住申请通知
-	 * @param templateId 模版id
+	 *
+	 * @param templateId  模版id
 	 * @param residenceId 居住证申请记录id
 	 * @return
 	 */
@@ -61,13 +85,12 @@
 	@ApiOperationSupport(order = 1)
 	@ApiOperation(value = "发送居住申请通知")
 	public R<SmsTemplateVO> sendNotice(@RequestParam("templateId") Long templateId,
-									   @RequestParam(value = "residenceId",required = false) Long residenceId) {
-		Boolean aBoolean = iSmsSendService.sendNotice(templateId,residenceId);
+									   @RequestParam(value = "residenceId", required = false) Long residenceId) {
+		Boolean aBoolean = iSmsSendService.sendNotice(templateId, residenceId);
 		return R.status(aBoolean);
 	}
 
 	/**
-	 *
 	 * @param templateId
 	 * @param placeSelfCheckId
 	 * @return
@@ -76,8 +99,8 @@
 	@ApiOperationSupport(order = 1)
 	@ApiOperation(value = "发送整改完成通知")
 	public R<SmsTemplateVO> sendRectificationNotice(@RequestParam("templateId") Long templateId,
-									   @RequestParam(value = "placeSelfCheckId",required = false) Long placeSelfCheckId) {
-		Boolean aBoolean = iSmsSendService.sendRectificationNotice(templateId,placeSelfCheckId);
+													@RequestParam(value = "placeSelfCheckId", required = false) Long placeSelfCheckId) {
+		Boolean aBoolean = iSmsSendService.sendRectificationNotice(templateId, placeSelfCheckId);
 		return R.status(aBoolean);
 	}
 
diff --git a/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java b/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java
index a4792a9..73a4987 100644
--- a/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java
+++ b/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java
@@ -38,4 +38,8 @@
 	Boolean sendNotice(Long templateId,Long residenceId);
 
 	Boolean sendRectificationNotice(Long templateId,Long placeSelfCheckId);
+
+	Boolean loginSendVerificationCode(String phone);
+
+	String checkCode(String phone, String code);
 }
diff --git a/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java b/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
index a887043..7e2ba8a 100644
--- a/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
+++ b/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
@@ -20,6 +20,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
 import org.jetbrains.annotations.NotNull;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -265,6 +266,92 @@
 		return aBoolean;
 	}
 
+	@Override
+	public Boolean loginSendVerificationCode(String phone) {
+		if (phone == null || phone.length() != 11) {
+			logger.error("手机号格式错误");
+			return false;
+		}
+
+		if (redisTemplate.exists(SMS_VALIDATE_PHONE_NUM + phone)) {
+			logger.error("同一个手机号一分钟内只能发送一条记录");
+			return false;
+		}
+
+		Sms serviceOne = iSmsService.getOne(Wrappers.<Sms>lambdaQuery().eq(Sms::getStatus, 2));
+		if (serviceOne == null) {
+			logger.error("未找到状态为2的Sms服务");
+			return false;
+		}
+		SmsTemplateEntity smsTemplateEntity = iSmsTemplateService.getOne(Wrappers.<SmsTemplateEntity>lambdaQuery()
+			.eq(SmsTemplateEntity::getId, "1783764287897939969"));
+		if (smsTemplateEntity == null) {
+			logger.error("未找到对应的短信模板");
+			return false;
+		}
+
+		//发送的手机号
+		List<Map> phonesList = new ArrayList<>();
+		Map phoneMap = new HashMap();
+		phoneMap.put("phone", phone);
+		List<String> varList = new ArrayList<>();
+		Integer code = UtilRandom.randomCount(111111, 999999);
+		varList.add(code.toString());
+		phoneMap.put("varList", varList);
+		phonesList.add(phoneMap);
+		//短信内容
+		String content = smsTemplateEntity.getContent();
+		//发送时间
+		LocalDateTime nowDateTime = LocalDateTime.now();
+		String send_time = nowDateTime.format(SECOND_FORMATTER);
+		Map params = new HashMap();
+		params.put("phones", phonesList);
+		//短信主题
+		params.put("subject", "对外接口不同内容发送-动态模板");
+		params.put("content", content);
+		//短信模板
+		params.put("template_id", null);
+		// 发送时间
+		params.put("send_time", send_time);
+		//优先级,高级=5,中级=3,低级=1
+		params.put("priority", "1");
+		//不同内容发送类型,1=动态模板发送,2=文件内容发送
+		params.put("type", "1");
+		//创建人主键
+		params.put("sop_create_by", serviceOne.getSmsCode());
+		//短信发送记录
+		saveSmsRecord(phone, serviceOne, code.toString(), content);
+		Boolean aBoolean = sendSmsGet(serviceOne, params);
+		if (aBoolean) {
+			// 将验证码存入redis,其中phone为手机号,code为验证码
+			// SMS_VALIDATE_PHONE 为前缀,通过phone和code在redis中设置一个过期的键值对
+			redisTemplate.setEx(SMS_VALIDATE_PHONE + phone, code, 300L);
+			// 同时,为了记录该手机短时间内已接收的验证码次数,使用另一个键值对进行计数
+			// SMS_VALIDATE_PHONE_NUM 为计数器的前缀,过期时间为60秒
+			redisTemplate.setEx(SMS_VALIDATE_PHONE_NUM + phone, 1, 60L);
+		}
+		return aBoolean;
+	}
+
+	@Override
+	public String checkCode(String phone, String code) {
+		if (StringUtils.isNotBlank(phone)) {
+			if (StringUtils.isBlank(code)) {
+				return "验证码不能为空!";
+			}
+			Object validateCode = redisTemplate.get(SMS_VALIDATE_PHONE + phone);
+			if (validateCode == null) {
+				return "验证码不存在或已过期";
+			}
+			if (!validateCode.toString().equals(code)) {
+				return "验证码错误";
+			}
+			//删除验证码
+			redisTemplate.del(SMS_VALIDATE_PHONE + phone);
+		}
+		return "";
+	}
+
 	/**
 	 * 发送短信并获取发送结果。
 	 *
diff --git a/src/main/java/org/springblade/modules/system/service/IUserService.java b/src/main/java/org/springblade/modules/system/service/IUserService.java
index e46f227..795c92e 100644
--- a/src/main/java/org/springblade/modules/system/service/IUserService.java
+++ b/src/main/java/org/springblade/modules/system/service/IUserService.java
@@ -205,6 +205,14 @@
 	boolean registerGuest(User user, Long oauthId);
 
 	/**
+	 * 注册新用户
+	 * @param user
+	 * @param oauthId
+	 * @return
+	 */
+	boolean registerUser(User user, Long oauthId);
+
+	/**
 	 * 配置用户平台
 	 *
 	 * @param userId
diff --git a/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java b/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java
index 3227694..210524c 100644
--- a/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java
+++ b/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java
@@ -27,6 +27,7 @@
 import org.springblade.core.log.logger.BladeLogger;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.jackson.JsonUtil;
 import org.springblade.core.tool.utils.Func;
@@ -60,9 +61,9 @@
 	@GetMapping("/detail")
 	@ApiOperationSupport(order = 1)
 	@ApiOperation(value = "详情", notes = "传入taskSchoolEven")
-	public R<TaskSchoolEvenVO> detail(TaskSchoolEvenEntity taskSchoolEven) {
-		TaskSchoolEvenEntity detail = taskSchoolEvenService.getOne(Condition.getQueryWrapper(taskSchoolEven));
-		return R.data(TaskSchoolEvenWrapper.build().entityVO(detail));
+	public R<TaskSchoolEvenVO> detail(TaskSchoolEvenVO taskSchoolEven) {
+		TaskSchoolEvenVO detail = taskSchoolEvenService.selectTaskSchoolEvenDetail(taskSchoolEven);
+		return R.data(detail);
 	}
 	/**
 	 * 校园事件 分页
@@ -93,6 +94,7 @@
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "新增", notes = "传入taskSchoolEven")
 	public R save(@Valid @RequestBody TaskSchoolEvenEntity taskSchoolEven) {
+		taskSchoolEven.setCreateUser(AuthUtil.getUserId());
 		return R.status(taskSchoolEvenService.save(taskSchoolEven));
 	}
 
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java
index 52313ae..72d1e5e 100644
--- a/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java
+++ b/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java
@@ -95,7 +95,7 @@
 	private Date rectificationCompleteTime;
 
 	/** 是否整改完毕:1:否 2 :是 */
-	@ApiModelProperty(value = "是否整改完毕:1:否 2 :是", example = "")
+	@ApiModelProperty(value = "是否整改完毕:1:否 2 :是 3:无需整改", example = "")
 	@TableField("rectification_flag")
 	private Integer rectificationFlag;
 
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java
index bc1449c..77a58f9 100644
--- a/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java
+++ b/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java
@@ -89,8 +89,8 @@
 	@TableField("work_image")
 	private String workImage;
 
-	/** 确认标记 1:待审核  2:审核通过  3:审核不通过  */
-	@ApiModelProperty(value = "确认标记 1:待审核  2:审核通过  3:审核不通过 ", example = "")
+	/** 确认标记 1:待审核  2:审核通过  3:审核不通过 4:待处理  */
+	@ApiModelProperty(value = "确认标记 1:待审核  2:审核通过  3:审核不通过 4:待处理 ", example = "")
 	@TableField("confirm_flag")
 	private String confirmFlag;
 
@@ -114,6 +114,10 @@
 	@ApiModelProperty(value = "确认意见", example = "")
 	@TableField("confirm_notion")
 	private String confirmNotion;
+	/** 地址编码 */
+	@ApiModelProperty(value = "地址编码", example = "")
+	@TableField("house_code")
+	private String houseCode;
 
 	/** 创建时间 */
 	@ApiModelProperty(value = "创建时间", example = "")
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
index a9181a9..eee8477 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -29,8 +29,9 @@
         br.town_code streetCode,
         jp.principal as realName,
         jp.principal_phone as phone,
-        jp.nine_type ,
-        jp.front_type ,
+        jp.nine_type,
+        jp.front_type,
+        jp.place_name,
         jt.id,
         jt.NAME,
         jt.type,
@@ -60,7 +61,8 @@
                             <choose>
                                 <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                                     and jh.grid_code in
-                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+                                             separator=",">
                                         #{code}
                                     </foreach>
                                 </when>
@@ -73,7 +75,8 @@
                             <choose>
                                 <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                                     and br.village_code in
-                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+                                             separator=",">
                                         #{code}
                                     </foreach>
                                 </when>
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml
index 1f113c4..70ff0dc 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml
@@ -60,6 +60,7 @@
         LEFT JOIN blade_user bu ON bu.id = jpc.create_user and bu.is_deleted = 0
         LEFT JOIN jczz_police_affairs_grid jpag on jp.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
         <where>
+            and jp.house_code is not null
             <if test="place.id != null ">and jpc.id = #{place.id}</if>
             <if test="place.taskId != null ">and jpc.task_id = #{place.taskId}</if>
             <if test="place.taskName != null  and place.taskName != ''">and jpc.task_name = #{place.taskName}</if>
@@ -79,7 +80,6 @@
             <if test="place.remark != null  and place.remark != ''">and jpc.remark = #{place.remark}</if>
             <if test="place.updateTime != null ">and jpc.update_time = #{place.updateTime}</if>
             <if test="place.createTime != null ">and jpc.create_time = #{place.createTime}</if>
-            <if test="place.houseCode != null  and place.houseCode != ''">and jpc.house_code = #{place.houseCode}</if>
             <if test="place.type != null  and place.type != ''">and jpc.type = #{place.type}</if>
             <if test="place.rectificationEndTime != null ">and jpc.rectification_end_time =
                 #{place.rectificationEndTime}
@@ -112,6 +112,13 @@
             <if test="place.imageUrls != null  and place.imageUrls != ''">and jpc.image_urls = #{place.imageUrls}</if>
             <if test="place.status != null ">and jpc.status = #{place.status}</if>
             <if test="place.deleteFlag != null ">and jpc.delete_flag = #{place.deleteFlag}</if>
+
+            <if test="place.startTime != null and place.startTime != ''">
+                and date_format(jpc.create_time,'%Y-%m-%d') &gt;= #{place.startTime}
+            </if>
+            <if test="place.endTime != null and place.endTime != ''">
+                and date_format(jpc.create_time,'%Y-%m-%d') &lt;= #{place.endTime}
+            </if>
             <if test="isAdministrator==2">
                 <choose>
                     <when test="place.roleName != null and place.roleName != ''">
@@ -166,6 +173,8 @@
                     </otherwise>
                 </choose>
             </if>
+            <if test="place.houseCode != null  and place.houseCode != ''"> and jpc.house_code = #{place.houseCode}</if>
+
         </where>
         order by jpc.create_time desc
     </select>
@@ -190,6 +199,7 @@
         <result property="imageUrls" column="image_urls"/>
         <result property="status" column="status"/>
         <result property="deleteFlag" column="delete_flag"/>
+        <result property="type" column="type"/>
 
         <collection property="placePoiLabelVOList" column="jpid" javaType="java.util.List"
                     select="selectPlacePoiLabelList"
@@ -197,7 +207,7 @@
                     autoMapping="true">
         </collection>
 
-        <collection property="taskPlaceRecordVOList" column="id" select="selectPatrolRecordList"
+        <collection property="taskPlaceRecordVOList" column="{id=id,type=type}" select="selectPatrolRecordList"
                     javaType="java.util.List" ofType="org.springblade.modules.task.vo.TaskPlaceRecordVO"
                     autoMapping="true">
         </collection>
@@ -223,25 +233,30 @@
         </select>
 
 
-    <select id="selectPatrolRecordList" parameterType="Long"
+    <select id="selectPatrolRecordList"  parameterType="java.util.Map"
             resultType="org.springblade.modules.task.vo.TaskPlaceRecordVO">
         select jpr.id,
-               jpr.item_id,
-               jpr.task_place_self_check_id,
-               jpr.state,
-               jpr.remark,
-               jpr.image_urls,
-               jpr.create_user,
-               jpr.create_time,
-               jpr.is_deleted,
-               jpr.rectification_image_urls,
-               jpr.rectification_remark,
-               jpr.rectification_time,
-               jpgi.items_name
+        jpr.item_id,
+        jpr.task_place_self_check_id,
+        jpr.state,
+        jpr.remark,
+        jpr.image_urls,
+        jpr.create_user,
+        jpr.create_time,
+        jpr.is_deleted,
+        jpr.rectification_image_urls,
+        jpr.rectification_remark,
+        jpr.rectification_time,
+        jpgi.items_name
         from jczz_task_place_record jpr
-                 LEFT JOIN jczz_patrol_group_item jpgi on jpr.item_id = jpgi.id
+        LEFT JOIN jczz_patrol_group_item jpgi on jpr.item_id = jpgi.id
         where task_place_self_check_id = #{id}
-          and jpr.type = '1'
+        <if test="type == 1">
+            and jpr.type = 1
+        </if>
+        <if test="type == 2">
+            and jpr.type = 3
+        </if>
     </select>
 
     <sql id="selectTaskPlaceSelfCheck">
@@ -270,24 +285,7 @@
 
     <select id="selectTaskPlaceSelfCheckById" parameterType="long" resultMap="TaskPlaceSelfCheckDTOResult">
         SELECT
-        jtpr.id,
-        jtpr.task_id,
-        jtpr.task_name,
-        jtpr.place_name,
-        jtpr.remark,
-        jtpr.update_time,
-        jtpr.create_time,
-        jtpr.house_code,
-        jtpr.rectification_end_time,
-        jtpr.rectification_complete_time,
-        jtpr.rectification_flag,
-        jtpr.police_station,
-        jtpr.rectification_notice_img_url,
-        jtpr.signature_path,
-        jtpr.create_user,
-        jtpr.image_urls,
-        jtpr.STATUS,
-        jtpr.delete_flag,
+        jtpr.*,
         jp.id jpid,
         jp.place_name,
         jp.location,
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskResidencePermitApplyMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskResidencePermitApplyMapper.xml
index 6ba79fd..cc0580e 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskResidencePermitApplyMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskResidencePermitApplyMapper.xml
@@ -92,8 +92,8 @@
 
                 </if>
             </if>
-            order by jtrpa.create_time desc
         </where>
+        order by jtrpa.create_time desc
     </select>
 
 
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java
index aae8651..e879fd8 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java
@@ -16,10 +16,12 @@
  */
 package org.springblade.modules.task.mapper;
 
+import org.apache.ibatis.annotations.Param;
 import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
 import org.springblade.modules.task.vo.TaskSchoolEvenVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+
 import java.util.List;
 
 /**
@@ -37,7 +39,29 @@
 	 * @param taskSchoolEven
 	 * @return
 	 */
-	List<TaskSchoolEvenVO> selectTaskSchoolEvenPage(IPage page, TaskSchoolEvenVO taskSchoolEven);
+	List<TaskSchoolEvenVO> selectTaskSchoolEvenPage(IPage page, TaskSchoolEvenVO taskSchoolEven,
+													@Param("regionChildCodesList") List<String> regionChildCodesList,
+													@Param("isAdministrator") Integer isAdministrator,
+													@Param("gridCodeList") List<String> gridCodeList);
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param taskSchoolEven
+	 * @return
+	 */
+	int schoolEvenCount(TaskSchoolEvenVO taskSchoolEven,
+						@Param("regionChildCodesList") List<String> regionChildCodesList,
+						@Param("isAdministrator") Integer isAdministrator,
+						@Param("gridCodeList") List<String> gridCodeList);
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param taskSchoolEven
+	 * @return
+	 */
+	TaskSchoolEvenVO selectTaskSchoolEvenDetail(@Param("taskSchoolEven") TaskSchoolEvenVO taskSchoolEven);
 
 
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml
index 2d7275d..d88cd62 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml
@@ -3,12 +3,77 @@
 <mapper namespace="org.springblade.modules.task.mapper.TaskSchoolEvenMapper">
 
     <!-- 通用查询映射结果 -->
-    <resultMap id="taskSchoolEvenResultMap" type="org.springblade.modules.task.entity.TaskSchoolEvenEntity">
+    <resultMap id="taskSchoolEvenResultMap" type="org.springblade.modules.task.vo.TaskSchoolEvenVO">
     </resultMap>
 
 
     <select id="selectTaskSchoolEvenPage" resultMap="taskSchoolEvenResultMap">
-        select * from jczz_task_school_even
+        select
+        jtse.*,
+        br.town_name streetName,
+        jg.grid_name,
+        jda.aoi_name,
+        br.village_name communityName,
+        bu.name,
+        bu.phone,
+        jp.location,
+        jp.place_name,
+        jda.address_name as addressName
+        from jczz_task_school_even jtse
+        left join jczz_doorplate_address jda on jda.address_code = jtse.house_code
+        LEFT JOIN blade_user bu ON bu.id = jtse.create_user
+        LEFT JOIN jczz_place jp on jp.house_code= jtse.house_code
+        left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0
+        left join blade_region br on br.code = jg.community_code
+        LEFT JOIN jczz_police_affairs_grid jpag on jp.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+        <where>
+            <if test="taskSchoolEven.id != null "> and jtse.id = #{taskSchoolEven.id}</if>
+            <if test="taskSchoolEven.createUser != null "> and jtse.create_user = #{taskSchoolEven.createUser}</if>
+            <if test="taskSchoolEven.images != null  and taskSchoolEven.images != ''"> and jtse.images = #{taskSchoolEven.images}</if>
+            <if test="taskSchoolEven.placeName != null  and taskSchoolEven.placeName != ''"> and jp.place_name like concat('%',#{taskSchoolEven.placeName},'%')</if>
+            <if test="taskSchoolEven.name != null  and taskSchoolEven.name != ''"> and bu.name like concat('%',#{taskSchoolEven.name},'%')</if>
+            <if test="taskSchoolEven.phone != null  and taskSchoolEven.phone != ''"> and bu.phone like concat('%',#{taskSchoolEven.phone},'%')</if>
+            <if test="taskSchoolEven.remark != null  and taskSchoolEven.remark != ''"> and jtse.remark like concat('%',#{taskSchoolEven.remark},'%')</if>
+            <if test="taskSchoolEven.hiddenDangerType != null  and taskSchoolEven.hiddenDangerType != ''"> and jtse.hidden_danger_type = #{taskSchoolEven.hiddenDangerType}</if>
+            <if test="taskSchoolEven.type != null  and taskSchoolEven.type != ''"> and jtse.type = #{taskSchoolEven.type}</if>
+            <if test="taskSchoolEven.isProblem != null  and taskSchoolEven.isProblem != ''"> and jtse.is_problem = #{taskSchoolEven.isProblem}</if>
+            <if test="taskSchoolEven.isHandle != null  and taskSchoolEven.isHandle != ''"> and jtse.is_handle = #{taskSchoolEven.isHandle}</if>
+            <if test="taskSchoolEven.isReporting != null  and taskSchoolEven.isReporting != ''"> and jtse.is_reporting = #{taskSchoolEven.isReporting}</if>
+            <if test="taskSchoolEven.workImage != null  and taskSchoolEven.workImage != ''"> and jtse.work_image = #{taskSchoolEven.workImage}</if>
+            <if test="taskSchoolEven.confirmFlag != null  and taskSchoolEven.confirmFlag != ''"> and jtse.confirm_flag = #{taskSchoolEven.confirmFlag}</if>
+            <if test="taskSchoolEven.confirmTime != null "> and jtse.confirm_time = #{taskSchoolEven.confirmTime}</if>
+            <if test="taskSchoolEven.confirmUserId != null "> and jtse.confirm_user_id = #{taskSchoolEven.confirmUserId}</if>
+            <if test="taskSchoolEven.confirmUserName != null  and taskSchoolEven.confirmUserName != ''"> and jtse.confirm_user_name = #{taskSchoolEven.confirmUserName}</if>
+            <if test="taskSchoolEven.confirmNotion != null  and taskSchoolEven.confirmNotion != ''"> and jtse.confirm_notion = #{taskSchoolEven.confirmNotion}</if>
+            <if test="taskSchoolEven.houseCode != null  and taskSchoolEven.houseCode != ''"> and jtse.house_code = #{taskSchoolEven.houseCode}</if>
+            <if test="taskSchoolEven.createTime != null "> and jtse.create_time = #{taskSchoolEven.createTime}</if>
+            <if test="taskSchoolEven.updateTime != null "> and jtse.update_time = #{taskSchoolEven.updateTime}</if>
+            <if test="taskSchoolEven.startTime != null and taskSchoolEven.startTime != ''">
+                and date_format(jtse.create_time,'%Y-%m-%d') &gt;= #{taskSchoolEven.startTime}
+            </if>
+            <if test="taskSchoolEven.endTime != null and taskSchoolEven.endTime != ''">
+                and date_format(jtse.create_time,'%Y-%m-%d') &lt;= #{taskSchoolEven.endTime}
+            </if>
+
+
+            <if test="isAdministrator==2">
+                <if test="taskSchoolEven.roleName=='mj'">
+                    <choose>
+                        <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                            and jpag.community_code in
+                            <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+                                     separator=",">
+                                #{code}
+                            </foreach>
+                        </when>
+                        <otherwise>
+                            and jpag.community_code in ('')
+                        </otherwise>
+                    </choose>
+                </if>
+            </if>
+        </where>
+        order by jtse.create_time desc
     </select>
 
     <resultMap type="org.springblade.modules.task.dto.TaskSchoolEvenDTO" id="TaskSchoolEvenDTOResult">
@@ -54,33 +119,114 @@
             jczz_task_school_even
     </sql>
 
-<!--    <select id="selectTaskSchoolEvenById" parameterType="long" resultMap="TaskSchoolEvenDTOResult">-->
-<!--        <include refid="selectTaskSchoolEven"/>-->
-<!--        where-->
-<!--        id = #{id}-->
-<!--    </select>-->
+    <select id="schoolEvenCount" resultType="java.lang.Integer">
+        select
+        count(1)
+        from jczz_task_school_even jtse
+        left join jczz_doorplate_address jda on jda.address_code = jtse.house_code
+        LEFT JOIN blade_user bu ON bu.id = jtse.create_user
+        LEFT JOIN jczz_place jp on jp.house_code= jtse.house_code
+        left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0
+        left join blade_region br on br.code = jg.community_code
+        <where>
+            <if test="taskSchoolEven.id != null "> and jtse.id = #{taskSchoolEven.id}</if>
+            <if test="taskSchoolEven.createUser != null "> and jtse.create_user = #{taskSchoolEven.createUser}</if>
+            <if test="taskSchoolEven.images != null  and taskSchoolEven.images != ''"> and jtse.images = #{taskSchoolEven.images}</if>
+            <if test="taskSchoolEven.name != null  and taskSchoolEven.name != ''"> and bu.name like concat('%',#{taskSchoolEven.name},'%')</if>
+            <if test="taskSchoolEven.phone != null  and taskSchoolEven.phone != ''"> and bu.phone like concat('%',#{taskSchoolEven.phone},'%')</if>
+            <if test="taskSchoolEven.remark != null  and taskSchoolEven.remark != ''"> and jtse.remark like concat('%',#{taskSchoolEven.remark},'%')</if>
+            <if test="taskSchoolEven.hiddenDangerType != null  and taskSchoolEven.hiddenDangerType != ''"> and jtse.hidden_danger_type = #{taskSchoolEven.hiddenDangerType}</if>
+            <if test="taskSchoolEven.type != null  and taskSchoolEven.type != ''"> and jtse.type = #{taskSchoolEven.type}</if>
+            <if test="taskSchoolEven.isProblem != null  and taskSchoolEven.isProblem != ''"> and jtse.is_problem = #{taskSchoolEven.isProblem}</if>
+            <if test="taskSchoolEven.isHandle != null  and taskSchoolEven.isHandle != ''"> and jtse.is_handle = #{taskSchoolEven.isHandle}</if>
+            <if test="taskSchoolEven.isReporting != null  and taskSchoolEven.isReporting != ''"> and jtse.is_reporting = #{taskSchoolEven.isReporting}</if>
+            <if test="taskSchoolEven.workImage != null  and taskSchoolEven.workImage != ''"> and jtse.work_image = #{taskSchoolEven.workImage}</if>
+            <if test="taskSchoolEven.confirmFlag != null  and taskSchoolEven.confirmFlag != ''"> and jtse.confirm_flag = #{taskSchoolEven.confirmFlag}</if>
+            <if test="taskSchoolEven.confirmTime != null "> and jtse.confirm_time = #{taskSchoolEven.confirmTime}</if>
+            <if test="taskSchoolEven.confirmUserId != null "> and jtse.confirm_user_id = #{taskSchoolEven.confirmUserId}</if>
+            <if test="taskSchoolEven.confirmUserName != null  and taskSchoolEven.confirmUserName != ''"> and jtse.confirm_user_name = #{taskSchoolEven.confirmUserName}</if>
+            <if test="taskSchoolEven.confirmNotion != null  and taskSchoolEven.confirmNotion != ''"> and jtse.confirm_notion = #{taskSchoolEven.confirmNotion}</if>
+            <if test="taskSchoolEven.houseCode != null  and taskSchoolEven.houseCode != ''"> and jtse.house_code = #{taskSchoolEven.houseCode}</if>
+            <if test="taskSchoolEven.createTime != null "> and jtse.create_time = #{taskSchoolEven.createTime}</if>
+            <if test="taskSchoolEven.updateTime != null "> and jtse.update_time = #{taskSchoolEven.updateTime}</if>
 
-<!--    <select id="selectTaskSchoolEvenList" parameterType="org.springblade.modules..dto.TaskSchoolEvenDTO" resultMap="TaskSchoolEvenDTOResult">-->
-<!--        <include refid="selectTaskSchoolEven"/>-->
-<!--        <where>-->
-<!--            <if test="id != null "> and id = #{id}</if>-->
-<!--            <if test="createUser != null "> and create_user = #{createUser}</if>-->
-<!--            <if test="images != null  and images != ''"> and images = #{images}</if>-->
-<!--            <if test="remark != null  and remark != ''"> and remark = #{remark}</if>-->
-<!--            <if test="hiddenDangerType != null  and hiddenDangerType != ''"> and hidden_danger_type = #{hiddenDangerType}</if>-->
-<!--            <if test="type != null  and type != ''"> and type = #{type}</if>-->
-<!--            <if test="isProblem != null  and isProblem != ''"> and is_problem = #{isProblem}</if>-->
-<!--            <if test="isHandle != null  and isHandle != ''"> and is_handle = #{isHandle}</if>-->
-<!--            <if test="isReporting != null  and isReporting != ''"> and is_reporting = #{isReporting}</if>-->
-<!--            <if test="workImage != null  and workImage != ''"> and work_image = #{workImage}</if>-->
-<!--            <if test="confirmFlag != null  and confirmFlag != ''"> and confirm_flag = #{confirmFlag}</if>-->
-<!--            <if test="confirmTime != null "> and confirm_time = #{confirmTime}</if>-->
-<!--            <if test="confirmUserId != null "> and confirm_user_id = #{confirmUserId}</if>-->
-<!--            <if test="confirmUserName != null  and confirmUserName != ''"> and confirm_user_name = #{confirmUserName}</if>-->
-<!--            <if test="confirmNotion != null  and confirmNotion != ''"> and confirm_notion = #{confirmNotion}</if>-->
-<!--            <if test="createTime != null "> and create_time = #{createTime}</if>-->
-<!--            <if test="updateTime != null "> and update_time = #{updateTime}</if>-->
-<!--        </where>-->
-<!--    </select>-->
+            <if test="isAdministrator==2">
+                <!-- 网格员及其他 -->
+                <if test="taskSchoolEven.roleType ==null and taskSchoolEven.roleName !='inhabitant' and taskSchoolEven.houseCode == null ">
+                    <choose>
+                        <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                            and (
+                            jg.community_code in
+                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                #{code}
+                            </foreach>
+                            )
+                        </when>
+                    </choose>
+
+                    <choose>
+                        <when test="gridCodeList !=null and gridCodeList.size()>0">
+                            and (
+                            jg.grid_code in
+                            <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+                                #{code}
+                            </foreach>
+                            )
+                        </when>
+                    </choose>
+
+                    <if test="taskSchoolEven.confirmUserId != null ">
+                        or jtse.confirm_user_id = #{taskSchoolEven.confirmUserId}
+                    </if>
+
+                </if>
+            </if>
+        </where>
+        order by jtse.create_time desc
+    </select>
+
+    <select id="selectTaskSchoolEvenDetail" resultMap="taskSchoolEvenResultMap">
+        select
+        jtse.*,
+        br.town_name streetName,
+        jg.grid_name,
+        jda.aoi_name,
+        br.village_name communityName,
+        bu.name,
+        bu.phone,
+        jp.location,
+        jp.place_name,
+        jda.address_name as addressName
+        from jczz_task_school_even jtse
+        left join jczz_doorplate_address jda on jda.address_code = jtse.house_code
+        LEFT JOIN blade_user bu ON bu.id = jtse.create_user
+        LEFT JOIN jczz_place jp on jp.house_code= jtse.house_code
+        left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0
+        left join blade_region br on br.code = jg.community_code
+        LEFT JOIN jczz_police_affairs_grid jpag on jp.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+        <where>
+            <if test="taskSchoolEven.id != null "> and jtse.id = #{taskSchoolEven.id}</if>
+            <if test="taskSchoolEven.createUser != null "> and jtse.create_user = #{taskSchoolEven.createUser}</if>
+            <if test="taskSchoolEven.images != null  and taskSchoolEven.images != ''"> and jtse.images = #{taskSchoolEven.images}</if>
+            <if test="taskSchoolEven.name != null  and taskSchoolEven.name != ''"> and bu.name like concat('%',#{taskSchoolEven.name},'%')</if>
+            <if test="taskSchoolEven.phone != null  and taskSchoolEven.phone != ''"> and bu.phone like concat('%',#{taskSchoolEven.phone},'%')</if>
+            <if test="taskSchoolEven.remark != null  and taskSchoolEven.remark != ''"> and jtse.remark like concat('%',#{taskSchoolEven.remark},'%')</if>
+            <if test="taskSchoolEven.hiddenDangerType != null  and taskSchoolEven.hiddenDangerType != ''"> and jtse.hidden_danger_type = #{taskSchoolEven.hiddenDangerType}</if>
+            <if test="taskSchoolEven.type != null  and taskSchoolEven.type != ''"> and jtse.type = #{taskSchoolEven.type}</if>
+            <if test="taskSchoolEven.isProblem != null  and taskSchoolEven.isProblem != ''"> and jtse.is_problem = #{taskSchoolEven.isProblem}</if>
+            <if test="taskSchoolEven.isHandle != null  and taskSchoolEven.isHandle != ''"> and jtse.is_handle = #{taskSchoolEven.isHandle}</if>
+            <if test="taskSchoolEven.isReporting != null  and taskSchoolEven.isReporting != ''"> and jtse.is_reporting = #{taskSchoolEven.isReporting}</if>
+            <if test="taskSchoolEven.workImage != null  and taskSchoolEven.workImage != ''"> and jtse.work_image = #{taskSchoolEven.workImage}</if>
+            <if test="taskSchoolEven.confirmFlag != null  and taskSchoolEven.confirmFlag != ''"> and jtse.confirm_flag = #{taskSchoolEven.confirmFlag}</if>
+            <if test="taskSchoolEven.confirmTime != null "> and jtse.confirm_time = #{taskSchoolEven.confirmTime}</if>
+            <if test="taskSchoolEven.confirmUserId != null "> and jtse.confirm_user_id = #{taskSchoolEven.confirmUserId}</if>
+            <if test="taskSchoolEven.confirmUserName != null  and taskSchoolEven.confirmUserName != ''"> and jtse.confirm_user_name = #{taskSchoolEven.confirmUserName}</if>
+            <if test="taskSchoolEven.confirmNotion != null  and taskSchoolEven.confirmNotion != ''"> and jtse.confirm_notion = #{taskSchoolEven.confirmNotion}</if>
+            <if test="taskSchoolEven.houseCode != null  and taskSchoolEven.houseCode != ''"> and jtse.house_code = #{taskSchoolEven.houseCode}</if>
+            <if test="taskSchoolEven.createTime != null "> and jtse.create_time = #{taskSchoolEven.createTime}</if>
+            <if test="taskSchoolEven.updateTime != null "> and jtse.update_time = #{taskSchoolEven.updateTime}</if>
+        </where>
+        order by jtse.create_time desc
+    </select>
 
 </mapper>
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java b/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java
index 8f96f79..b171712 100644
--- a/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java
+++ b/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java
@@ -46,4 +46,18 @@
 	 * @return
 	 */
     boolean updateSchoolEven(TaskSchoolEvenVO taskSchoolEvenVO);
+
+	/**
+	 * 统计
+	 * @param taskSchoolEven
+	 * @return
+	 */
+	int schoolEvenCount(TaskSchoolEvenVO taskSchoolEven);
+
+	/**
+	 * 详情
+	 * @param taskSchoolEven
+	 * @return
+	 */
+	TaskSchoolEvenVO selectTaskSchoolEvenDetail(TaskSchoolEvenVO taskSchoolEven);
 }
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java
index 4509d2e..6b89d5b 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java
@@ -48,6 +48,7 @@
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.stream.Collectors;
 
 /**
@@ -142,9 +143,28 @@
 		// 1.保存任务表
 		ITaskService iTaskService = SpringUtils.getBean(ITaskService.class);
 		Long restults;
+		AtomicBoolean isState = new AtomicBoolean(false);
+		List<TaskPlaceRecordVO> taskPlaceRecordList = taskPlaceSelfCheck.getTaskPlaceRecordVOList();
+		for (TaskPlaceRecordVO taskPlaceRecordVO : taskPlaceRecordList) {
+			// 判断类型
+			if (StringUtils.isNotBlank(taskPlaceSelfCheck.getType()) && taskPlaceSelfCheck.getType().equals("2")) {
+				taskPlaceRecordVO.setType("3");
+			} else {
+				taskPlaceRecordVO.setType("1");
+			}
+			// 判断是否有隐患
+			if (taskPlaceRecordVO.getState().equals(0)) {
+				isState.set(true);
+			}
+		}
 		if (StringUtils.isNotBlank(taskPlaceSelfCheck.getType()) && taskPlaceSelfCheck.getType().equals("2")) {
+			// 不存在隐患。状态直接为已审核
+			if (!isState.get()) {
+				taskPlaceSelfCheck.setStatus(2);
+				taskPlaceSelfCheck.setRectificationFlag(3);
+			}
 			restults = iTaskService.saveTask(CommonConstant.NUMBER_ONE, DictConstant.FIRE_SCHOOL_CHECK_NOTICE, 1,
-				"", AuthUtil.getUserId(), taskPlaceSelfCheck.getHouseCode(), CommonConstant.NUMBER_FOUR, 1);
+				"", AuthUtil.getUserId(), taskPlaceSelfCheck.getHouseCode(), CommonConstant.NUMBER_FOUR, taskPlaceSelfCheck.getStatus());
 		} else {
 			restults = iTaskService.saveTask(CommonConstant.NUMBER_ONE, DictConstant.FIRE_SELF_CHECK_NOTICE, 1,
 				"", AuthUtil.getUserId(), taskPlaceSelfCheck.getHouseCode(), CommonConstant.NUMBER_SEVEN, 1);
@@ -157,16 +177,14 @@
 		boolean save = save(taskPlaceSelfCheck);
 		if (save) {
 			// 3.保存题目记录
-			List<TaskPlaceRecordVO> taskPlaceRecordList = taskPlaceSelfCheck.getTaskPlaceRecordVOList();
-			ITaskPlaceRecordService bean = SpringUtil.getBean(ITaskPlaceRecordService.class);
 			taskPlaceRecordList.stream().forEach(item -> {
 				item.setTaskPlaceSelfCheckId(taskPlaceSelfCheck.getId());
 				item.setCreateUser(AuthUtil.getUserId());
-				item.setType("1");
 			});
-			List<TaskPlaceRecordEntity> collect = taskPlaceRecordList.stream().filter(item -> item.getState().equals(0)).collect(Collectors.toList());
+			ITaskPlaceRecordService taskPlaceRecordService = SpringUtil.getBean(ITaskPlaceRecordService.class);
+			List<TaskPlaceRecordEntity> collect = taskPlaceRecordList.stream().collect(Collectors.toList());
 			if (collect.size() > 0) {
-				bean.saveBatch(collect);
+				taskPlaceRecordService.saveBatch(collect);
 			}
 			updateById(taskPlaceSelfCheck);
 			return save;
@@ -190,10 +208,10 @@
 			List<TaskPlaceRecordVO> taskPlaceRecordList = taskPlaceSelfCheck.getTaskPlaceRecordVOList();
 			if (taskPlaceRecordList != null && taskPlaceRecordList.size() > 0) {
 				ITaskPlaceRecordService bean = SpringUtil.getBean(ITaskPlaceRecordService.class);
-				List<TaskPlaceRecordEntity> copy = BeanUtil.copy(taskPlaceRecordList, TaskPlaceRecordEntity.class);
-				boolean b = bean.saveOrUpdateBatch(copy);
-				if (b) {
-					return b;
+				List<TaskPlaceRecordEntity> placeRecordEntityList = BeanUtil.copy(taskPlaceRecordList, TaskPlaceRecordEntity.class);
+				boolean updateBatch = bean.saveOrUpdateBatch(placeRecordEntityList);
+				if (updateBatch) {
+					return updateBatch;
 				}
 				throw new CustomException("保存失败!");
 			}
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java
index 9696700..46ec5b9 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java
@@ -17,11 +17,13 @@
 package org.springblade.modules.task.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.param.CommonParamSet;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.modules.task.entity.TaskEntity;
 import org.springblade.modules.task.entity.TaskResidencePermitApplyEntity;
 import org.springblade.modules.task.service.ITaskSchoolEvenService;
 import org.springblade.modules.task.service.ITaskService;
+import org.springblade.modules.task.vo.TaskResidencePermitApplyVO;
 import org.springblade.modules.task.vo.TaskSchoolEvenVO;
 import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
 import org.springblade.modules.task.mapper.TaskSchoolEvenMapper;
@@ -49,7 +51,12 @@
 
 	@Override
 	public IPage<TaskSchoolEvenVO> selectTaskSchoolEvenPage(IPage<TaskSchoolEvenVO> page, TaskSchoolEvenVO taskSchoolEven) {
-		return page.setRecords(baseMapper.selectTaskSchoolEvenPage(page, taskSchoolEven));
+		CommonParamSet commonParamSet = new CommonParamSet().invoke(TaskSchoolEvenVO.class, taskSchoolEven);
+		if (taskSchoolEven.getRoleName() != null && (taskSchoolEven.getRoleName().equals("xyty"))) {
+			taskSchoolEven.setCreateUser(AuthUtil.getUserId());
+		}
+		return page.setRecords(baseMapper.selectTaskSchoolEvenPage(page, taskSchoolEven,
+			commonParamSet.getRegionChildCodesList(), commonParamSet.getIsAdministrator(), commonParamSet.getGridCodeList()));
 	}
 
 	@Override
@@ -58,4 +65,16 @@
 		taskSchoolEvenVO.setConfirmUserId(AuthUtil.getUserId());
 		return updateById(taskSchoolEvenVO);
 	}
+
+	@Override
+	public int schoolEvenCount(TaskSchoolEvenVO taskSchoolEven) {
+		CommonParamSet commonParamSet = new CommonParamSet().invoke(TaskSchoolEvenVO.class, taskSchoolEven);
+		return baseMapper.schoolEvenCount(taskSchoolEven,
+			commonParamSet.getRegionChildCodesList(), commonParamSet.getIsAdministrator(), commonParamSet.getGridCodeList());
+	}
+
+	@Override
+	public TaskSchoolEvenVO selectTaskSchoolEvenDetail(TaskSchoolEvenVO taskSchoolEven) {
+		return baseMapper.selectTaskSchoolEvenDetail(taskSchoolEven);
+	}
 }
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
index 0228a5f..bbfb817 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
@@ -48,6 +48,7 @@
 import org.springblade.modules.task.entity.*;
 import org.springblade.modules.task.mapper.TaskMapper;
 import org.springblade.modules.task.service.*;
+import org.springblade.modules.task.vo.TaskSchoolEvenVO;
 import org.springblade.modules.task.vo.TaskVO;
 import org.springblade.modules.task.service.ITaskPlaceRectificationService;
 import org.springblade.modules.task.entity.TaskPlaceSelfCheckEntity;
@@ -271,8 +272,8 @@
 		Integer zfrw = SpringUtils.getBean(IGridWorkLogService.class).getGridWorkCountHandleCount(gridCode, CommonConstant.NUMBER_ONE);
 		// 消防自查
 		Integer xfzc = SpringUtils.getBean(ITaskPlaceSelfCheckService.class).getCount(neiCode, CommonConstant.NUMBER_ONE, CommonConstant.NUMBER_ONE);
-		// 校园检查
-		Integer xyjc = SpringUtils.getBean(ITaskPlaceSelfCheckService.class).getCount(neiCode, CommonConstant.NUMBER_ONE, CommonConstant.NUMBER_TWO);
+		// 校园安全隐患排除
+		Integer xyaqyhpc = SpringUtils.getBean(ITaskPlaceSelfCheckService.class).getCount(neiCode, CommonConstant.NUMBER_ONE, CommonConstant.NUMBER_TWO);
 		// 消防隐患整改
 		Integer xfyhzg = SpringUtils.getBean(ITaskPlaceRectificationService.class).getCount(neiCode, CommonConstant.NUMBER_ONE);
 		// 居住证申请
@@ -281,6 +282,17 @@
 		taskVO.setReportType(6);
 		Integer wztj = baseMapper.selectTaskCount(taskVO, commonParamSet.getRegionChildCodesList(),
 			commonParamSet.getIsAdministrator(), commonParamSet.getGridCodeList());
+		ITaskSchoolEvenService taskSchoolEvenService = SpringUtils.getBean(ITaskSchoolEvenService.class);
+		TaskSchoolEvenVO taskSchoolEvenVO = new TaskSchoolEvenVO();
+//		taskSchoolEvenVO.setIsReporting(CommonConstant.NUMBER_ONE.toString());
+//		taskSchoolEvenVO.setIsHandle(CommonConstant.NUMBER_TWO.toString());
+		taskSchoolEvenVO.setConfirmFlag(CommonConstant.NUMBER_ONE.toString());
+		taskSchoolEvenVO.setType(CommonConstant.NUMBER_ONE.toString());
+		// 校园隐患
+		long xyyh = taskSchoolEvenService.schoolEvenCount(taskSchoolEvenVO);
+		// 校园纠纷矛盾
+		taskSchoolEvenVO.setType(CommonConstant.NUMBER_TWO.toString());
+		long xyjfmd = taskSchoolEvenService.schoolEvenCount(taskSchoolEvenVO);;
 		// 设置
 		objectObjectHashMap.put("qbhs", qbhs);// 取保候审
 		objectObjectHashMap.put("bqsj", bqsj);// 标签报事-二手交易
@@ -293,7 +305,9 @@
 		objectObjectHashMap.put("xfyhzg", xfyhzg);// 消防隐患整改
 		objectObjectHashMap.put("jzzsq", jzzsq);// 居住证申请
 		objectObjectHashMap.put("wztj", wztj);// 无诈
-		objectObjectHashMap.put("xyjc", xyjc);// 校园检查
+		objectObjectHashMap.put("xyaqyhpc", xyaqyhpc);// 校园安全隐患排除
+		objectObjectHashMap.put("xyyh", xyyh);// 校园隐患
+		objectObjectHashMap.put("xyjfmd", xyjfmd);// 校园纠纷矛盾
 		return objectObjectHashMap;
 	}
 
diff --git a/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java b/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java
index f8e684c..56f2564 100644
--- a/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java
+++ b/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java
@@ -16,6 +16,7 @@
  */
 package org.springblade.modules.task.vo;
 
+import io.swagger.annotations.ApiModelProperty;
 import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -30,5 +31,31 @@
 @EqualsAndHashCode(callSuper = true)
 public class TaskSchoolEvenVO extends TaskSchoolEvenEntity {
 	private static final long serialVersionUID = 1L;
+	@ApiModelProperty(value = "名称", example = "")
+	private String name;
+	@ApiModelProperty(value = "电话", example = "")
+	private String phone;
+	@ApiModelProperty(value = "地址", example = "")
+	private String location;
+	@ApiModelProperty(value = "街道", example = "")
+	private String streetName;
+	@ApiModelProperty(value = "社区", example = "")
+	private String communityName;
+
+	// 角色名称
+	@ApiModelProperty(value = "角色名称", example = "")
+	private String roleName;
+
+	// 社区编号
+	@ApiModelProperty(value = "社区编号", example = "")
+	private String communityCode;
+
+	@ApiModelProperty(value = "角色类型", example = "")
+	private String roleType;
+
+	@ApiModelProperty(value = "场所名称", example = "")
+	private String placeName;
+	private String startTime;
+	private String endTime;
 
 }
diff --git a/src/main/java/org/springblade/modules/task/vo/TaskVO.java b/src/main/java/org/springblade/modules/task/vo/TaskVO.java
index 0354311..71ab1ea 100644
--- a/src/main/java/org/springblade/modules/task/vo/TaskVO.java
+++ b/src/main/java/org/springblade/modules/task/vo/TaskVO.java
@@ -58,6 +58,7 @@
 	private String applyName;
 	private String communityName;
 	private String districtName;
+	private String placeName;
 
 	@ApiModelProperty("开始时间")
 	private String startTime;

--
Gitblit v1.9.3