From a8bb4628ba81bd63149476958eb5efe1627863c7 Mon Sep 17 00:00:00 2001
From: 邱宇豪 <qyh123230312>
Date: 星期五, 10 十一月 2023 16:33:32 +0800
Subject: [PATCH] 20231110_qiuyh_区域巡检
---
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/mapper/RegionInspectionMapper.java | 49 ++++++++
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/RegionInspectionService.java | 22 +++
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/controller/RegionInspectionController.java | 38 ++++++
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionHazardInformEntity.java | 39 ++++++
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/impl/RegionInspectionServiceImpl.java | 126 +++++++++++++++++++++
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionUserEntity.java | 25 ++++
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionEntity.java | 58 +++++++++
7 files changed, 357 insertions(+), 0 deletions(-)
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/controller/RegionInspectionController.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/controller/RegionInspectionController.java
new file mode 100644
index 0000000..7c96526
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/controller/RegionInspectionController.java
@@ -0,0 +1,38 @@
+package com.thhy.secure.modules.biz.regionInspection.controller;
+
+import com.thhy.general.common.BasicResult;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionEntity;
+import com.thhy.secure.modules.biz.regionInspection.service.RegionInspectionService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:27:20
+ * 区域巡检控制层
+ */
+@RestController
+@RequestMapping(value = "regioninspection")
+public class RegionInspectionController {
+
+ @Autowired
+ private RegionInspectionService regionInspectionService;
+
+ @PostMapping("insertAndUpdate")
+ BasicResult insert(@RequestBody RegionInspectionEntity regionInspectionEntity){
+ return regionInspectionService.insert(regionInspectionEntity);
+ }
+
+ @GetMapping("delete")
+ BasicResult delete(@RequestParam String id){
+ return regionInspectionService.delete(id);
+ }
+
+ @PostMapping("selectPageList")
+ BasicResult selectPageList(@RequestBody Map map){
+ return regionInspectionService.selectPageList(map);
+ }
+
+}
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionEntity.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionEntity.java
new file mode 100644
index 0000000..5eae12a
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionEntity.java
@@ -0,0 +1,58 @@
+package com.thhy.secure.modules.biz.regionInspection.entity;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:02:35
+ * 区域巡检实体
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class RegionInspectionEntity implements Serializable {
+
+ private String id;
+
+ private String task;//巡检任务
+
+ private String standard;//巡检标准
+
+ private String userIds;
+ private String realNames;//包含多个人
+
+ /**
+ * 区域id
+ */
+ private String regions;
+ private String regionIds;
+
+ private String createUser;
+
+ private Date createTime;
+
+ private String updateUser;
+
+ private Date updateTime;
+
+ private String companyId;
+
+ /**
+ * 巡检路线
+ */
+ private String inspectionRoute;
+
+
+ private List<RegionInspectionHazardInformEntity> regionList;
+
+ private List<RegionInspectionUserEntity> regionUsersList;
+
+}
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionHazardInformEntity.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionHazardInformEntity.java
new file mode 100644
index 0000000..c16b005
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionHazardInformEntity.java
@@ -0,0 +1,39 @@
+package com.thhy.secure.modules.biz.regionInspection.entity;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:05:46
+ * 区域巡检和危险告知源中间表
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class RegionInspectionHazardInformEntity implements Serializable {
+
+ private String id;
+
+ /**
+ * 区域巡检id
+ */
+ private String regionInspectionId;
+
+ /**
+ * 危险告知源id
+ */
+ private String regionHazardInformId;
+
+ /**
+ * 排序值
+ */
+ private Integer sort;
+
+ private String region;
+}
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionUserEntity.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionUserEntity.java
new file mode 100644
index 0000000..710336f
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/entity/RegionInspectionUserEntity.java
@@ -0,0 +1,25 @@
+package com.thhy.secure.modules.biz.regionInspection.entity;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:17:21
+ * 区域巡检人员中间表
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class RegionInspectionUserEntity implements Serializable {
+
+ private String id;
+ private String regionInspectionId;//区域巡检id
+ private String userId;//管服人员id
+ private String realName;
+}
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/mapper/RegionInspectionMapper.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/mapper/RegionInspectionMapper.java
new file mode 100644
index 0000000..6f3ae48
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/mapper/RegionInspectionMapper.java
@@ -0,0 +1,49 @@
+package com.thhy.secure.modules.biz.regionInspection.mapper;
+
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionEntity;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionHazardInformEntity;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionUserEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:09:04
+ * 区域巡检mapper
+ */
+@Mapper
+public interface RegionInspectionMapper {
+
+ void insert(RegionInspectionEntity regionInspectionEntity);
+
+ void delete(String id);
+
+ List<RegionInspectionEntity> selectPageList(Map map);
+
+ /**
+ * 添加人员巡检中间表
+ * @param regionInspectionUserEntity
+ */
+ void insertUser(RegionInspectionUserEntity regionInspectionUserEntity);
+
+ /**
+ * 删除人员中间表
+ * @param regionInspectionId
+ */
+ void deleteUser(String regionInspectionId);
+
+ /**
+ * 新增区域巡检危险告知源中间表
+ * @param regionInspectionHazardInformEntity
+ */
+ void insertInspectionHazardInform(RegionInspectionHazardInformEntity regionInspectionHazardInformEntity);
+
+ /**
+ * 删除区域巡检危险告知源中间表
+ * @param regionInspectionId
+ */
+ void deleteInspectionHazardInform(String regionInspectionId);
+
+}
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/RegionInspectionService.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/RegionInspectionService.java
new file mode 100644
index 0000000..b7cb41c
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/RegionInspectionService.java
@@ -0,0 +1,22 @@
+package com.thhy.secure.modules.biz.regionInspection.service;
+
+import com.thhy.general.common.BasicResult;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionEntity;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:25:30
+ * 区域巡检接口
+ */
+public interface RegionInspectionService {
+
+ BasicResult insert(RegionInspectionEntity regionInspectionEntity);
+
+ BasicResult delete(String id);
+
+ BasicResult selectPageList(Map map);
+
+}
diff --git a/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/impl/RegionInspectionServiceImpl.java b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/impl/RegionInspectionServiceImpl.java
new file mode 100644
index 0000000..f1e39b7
--- /dev/null
+++ b/hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/regionInspection/service/impl/RegionInspectionServiceImpl.java
@@ -0,0 +1,126 @@
+package com.thhy.secure.modules.biz.regionInspection.service.impl;
+
+import com.github.pagehelper.Page;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.thhy.general.common.BasicResult;
+import com.thhy.general.config.SysUserInfo;
+import com.thhy.general.utils.UUIDUtils;
+import com.thhy.general.utils.UserInfoUtils;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionEntity;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionHazardInformEntity;
+import com.thhy.secure.modules.biz.regionInspection.entity.RegionInspectionUserEntity;
+import com.thhy.secure.modules.biz.regionInspection.mapper.RegionInspectionMapper;
+import com.thhy.secure.modules.biz.regionInspection.service.RegionInspectionService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author QiuYuHao
+ * @CreateDate 2023-11-10 11:26:29
+ * 区域巡检接口实现
+ */
+@Service
+public class RegionInspectionServiceImpl implements RegionInspectionService
+{
+
+ @Autowired
+ private RegionInspectionMapper regionInspectionMapper;
+
+ private static final Object lock = new Object();
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public BasicResult insert(RegionInspectionEntity regionInspectionEntity) {
+ SysUserInfo s = UserInfoUtils.getInstance().getUserInfo();
+ String companyId = s.getCompanyId();
+ String userId = s.getUserId();
+ regionInspectionEntity.setCompanyId(companyId);
+ //默认给uuid
+ String regionInspectId = UUIDUtils.create();
+ //修改区域巡检判断
+ if (!"".equals(regionInspectionEntity.getId())){
+ regionInspectId = regionInspectionEntity.getId();
+ //根据区域巡检id删除中间表
+ regionInspectionEntity.setUpdateTime(new Date());
+ regionInspectionEntity.setUpdateUser(userId);
+ regionInspectionMapper.deleteUser(regionInspectId);
+ regionInspectionMapper.deleteInspectionHazardInform(regionInspectId);
+ }
+ //添加/修改区域巡检
+ synchronized (lock) {
+ regionInspectionEntity.setId(regionInspectId);
+ regionInspectionEntity.setCreateUser(userId);
+ regionInspectionMapper.insert(regionInspectionEntity);
+ //添加巡检人
+ for (RegionInspectionUserEntity userEntity : regionInspectionEntity.getRegionUsersList()) {
+ userEntity.setId(UUIDUtils.create());
+ userEntity.setRegionInspectionId(regionInspectId);
+ regionInspectionMapper.insertUser(userEntity);
+ }
+ //添加巡检的区域
+ for (RegionInspectionHazardInformEntity region : regionInspectionEntity.getRegionList()) {
+ region.setId(UUIDUtils.create());
+ region.setRegionInspectionId(regionInspectId);
+ regionInspectionMapper.insertInspectionHazardInform(region);
+ }
+ }
+ return BasicResult.success();
+ }
+
+ @Override
+ public BasicResult delete(String id) {
+ return BasicResult.success();
+ }
+
+ @Override
+ public BasicResult selectPageList(Map map) {
+ SysUserInfo s = UserInfoUtils.getInstance().getUserInfo();
+ String companyId = s.getCompanyId();
+ map.put("companyId",companyId);
+ int pageNum = (int) map.get("pageNum");
+ int pageSize = (int) map.get("pageSize");
+ PageHelper.startPage(pageNum,pageSize);
+ List<RegionInspectionEntity> regionInspectionEntities = regionInspectionMapper.selectPageList(map);
+ //处理区域巡检对象数组
+ regionInspectionEntities.forEach(obj->{
+ List<RegionInspectionHazardInformEntity> regionList = new ArrayList<>();
+ List<RegionInspectionUserEntity> userList = new ArrayList<>();
+ if(obj.getRealNames() !=null){
+ String[] realNames = obj.getRealNames().intern().split("、");
+ String[] userIds = obj.getUserIds().intern().split("、");
+ //人员对象数组
+ for (int i = 0; i < realNames.length; i++) {
+ RegionInspectionUserEntity userEntity = RegionInspectionUserEntity
+ .builder()
+ .regionInspectionId(obj.getId())
+ .userId(userIds[i])
+ .realName(realNames[i]).build();
+ userList.add(userEntity);
+ }
+ }
+ if (obj.getRegionIds()!=null){
+ String[] regionIds = obj.getRegionIds().intern().split(",");
+ String[] regions = obj.getRegions().intern().split(",");
+ //区域对象数组
+ for (int i = 0; i < regionIds.length; i++) {
+ RegionInspectionHazardInformEntity regionEntity = RegionInspectionHazardInformEntity
+ .builder()
+ .regionInspectionId(obj.getId())
+ .regionHazardInformId(regionIds[i])
+ .region(regions[i]).build();
+ regionList.add(regionEntity);
+ }
+ }
+ obj.setRegionList(regionList);
+ obj.setRegionUsersList(userList);
+ });
+ return BasicResult.success(new PageInfo<>(regionInspectionEntities));
+ }
+
+}
--
Gitblit v1.9.3