From 6886f3d9f7e9848fd47da92637f28f46554179a7 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Fri, 18 Jun 2021 08:55:41 +0800
Subject: [PATCH] screen-api           增加kafka消费者以及websocket搭建

---
 screen-manage/src/main/java/com/moral/api/service/impl/OrganizationServiceImpl.java |   49 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 36 insertions(+), 13 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationServiceImpl.java
index b7a7099..5e40443 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationServiceImpl.java
@@ -6,14 +6,17 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.moral.api.config.mybatis.wrapper.NullFilterWrapper;
+import com.moral.api.entity.MonitorPoint;
 import com.moral.api.entity.Organization;
 import com.moral.api.entity.User;
+import com.moral.api.mapper.MonitorPointMapper;
 import com.moral.api.mapper.OrganizationMapper;
 import com.moral.api.mapper.UserMapper;
 import com.moral.api.pojo.dto.organization.OrganizationDTO;
 import com.moral.api.pojo.dto.organization.OrganizationQueryDTO;
 import com.moral.api.pojo.dto.organization.OrganizationQueryNamesDTO;
 import com.moral.api.pojo.form.organization.*;
+import com.moral.api.service.MonitorPointService;
 import com.moral.api.service.OrganizationService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.moral.api.service.UserService;
@@ -57,6 +60,9 @@
 
     @Autowired
     UserMapper userMapper;
+
+    @Autowired
+    MonitorPointService monitorPointService;
 
     Map<String, String> organizationFormMap;
 
@@ -166,6 +172,14 @@
         //������
         Integer id = form.getOrganizationId();
 
+        //������������������������������
+        List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsByOrganizationId(id);
+        if(!ObjectUtils.isEmpty(monitorPoints)){
+            dto.setCode(ResponseCodeEnum.ORGANIZATION_EXIST_MONITORPOINT.getCode());
+            dto.setMsg(ResponseCodeEnum.ORGANIZATION_EXIST_MONITORPOINT.getMsg());
+            return dto;
+        }
+
         //������������������������������������������
         Organization existOrganization = new Organization();
         existOrganization.setIsDelete(Constants.NOT_DELETE);
@@ -179,18 +193,9 @@
             return dto;
         }
 
-        //������������������
-        UpdateWrapper deleteWrapper = new UpdateWrapper();
-        deleteWrapper.eq("id", id);
-        deleteWrapper.set("is_delete", Constants.DELETE);
-        organizationMapper.update(null, deleteWrapper);
-
-        //������������������
-        userService.deleteUserByOrganizationId(id);
-
         //���������������������������
         List<Organization> children = getAllChildrenOrganization(existOrganization.getId());
-        if (!ObjectUtils.isEmpty(children)) {//���������������������
+        if (!ObjectUtils.isEmpty(children)) {
             //���������������������������������������������������������������������������������������������������������������������������
             UpdateWrapper updateWrapper = new UpdateWrapper();
             if (form.getDeleteChildren().equals(Constants.DELETE_CHILDREN_ORG)) {//���������������������
@@ -199,12 +204,21 @@
                 children.forEach(value -> {
                     childrenId.add(value.getId());
                 });
+                //���������������������������������������������������������������������������������
+                for (Integer childId : childrenId) {
+                    List<MonitorPoint> childMonitorPoints = monitorPointService.getMonitorPointsByOrganizationId(childId);
+                    if(!ObjectUtils.isEmpty(childMonitorPoints)){
+                        dto.setCode(ResponseCodeEnum.CHILDREN_ORGANIZATION_EXIST_MONITORPOINT.getCode());
+                        dto.setMsg(ResponseCodeEnum.CHILDREN_ORGANIZATION_EXIST_MONITORPOINT.getMsg());
+                        return dto;
+                    }
+                }
                 //������������
                 updateWrapper.in("id", childrenId);
                 updateWrapper.set("is_delete", Constants.DELETE);
                 organizationMapper.update(null, updateWrapper);
                 //���������������������������
-                childrenId.forEach(value->userService.deleteUserByOrganizationId(value));
+                childrenId.forEach(value->userService.deleteUsersByOrganizationId(value));
 
             } else {//���������
                 //���������������������������id
@@ -219,6 +233,15 @@
                 organizationMapper.update(null, updateWrapper);
             }
         }
+
+        //������������������
+        UpdateWrapper deleteWrapper = new UpdateWrapper();
+        deleteWrapper.eq("id", id);
+        deleteWrapper.set("is_delete", Constants.DELETE);
+        organizationMapper.update(null, deleteWrapper);
+
+        //������������������
+        userService.deleteUsersByOrganizationId(id);
 
         //������������������
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
@@ -323,7 +346,7 @@
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
         dto.setOrganizationDTOS(organizationDTOS);
         dto.setCurrent(page.getCurrent());
-        dto.setPage(page.getPages());
+        dto.setPages(page.getPages());
         dto.setSize(page.getSize());
         dto.setTotal(page.getTotal());
         return dto;
@@ -347,7 +370,7 @@
         queryWrapper.eq("is_delete", Constants.NOT_DELETE);
         //������������������
         List<Organization> organizations = organizationMapper.selectList(queryWrapper);
-        //������form������������id,���������������������������������������
+        //������form������������id,���������������������������������������������
         if(!ObjectUtils.isEmpty(id)){
             List<Organization> children = getAllChildrenOrganization(id);
             List<Integer> thisAndchildrenIds = new ArrayList<>();//���id���������������������������id������

--
Gitblit v1.8.0