From 657182c7989dc77b69bb3f9adaf6c75b6466ff95 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Wed, 09 Jun 2021 10:31:35 +0800
Subject: [PATCH] screen-manage                  编辑账号接口删除分配角色功能,分配角色功能变为单独接口

---
 screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java |  144 ++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 134 insertions(+), 10 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
index c716f2e..dd7f7b1 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
@@ -1,6 +1,7 @@
 package com.moral.api.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+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.User;
@@ -8,19 +9,21 @@
 import com.moral.api.entity.VersionSensorUnit;
 import com.moral.api.mapper.VersionMapper;
 import com.moral.api.mapper.VersionSensorUnitMapper;
+import com.moral.api.pojo.dto.version.VersionDTO;
 import com.moral.api.pojo.dto.version.VersionQueryDTO;
-import com.moral.api.pojo.form.version.VersionQueryForm;
+import com.moral.api.pojo.form.version.*;
 import com.moral.api.service.VersionService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.moral.constant.Constants;
+import com.moral.constant.ResponseCodeEnum;
 import com.moral.util.ConvertUtils;
+import org.apache.tomcat.websocket.WsRemoteEndpointAsync;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 /**
  * <p>
@@ -52,10 +55,11 @@
         Date updateEndTime = form.getUpdateEndTime();
         String order = form.getOrder();
         String orderType = form.getOrderType();
+        Integer isDelete = form.getIsDelete();
         //������������������
         Page<Version> queryPage = new Page<>(page, size);
         NullFilterWrapper<Version> wrapper = new NullFilterWrapper<>();
-        wrapper.like("name",name);
+        wrapper.like("name", name);
         wrapper.between("create_time", createStartTime, createEndTime);
         wrapper.between("update_time", updateStartTime, updateEndTime);
         //������������������������
@@ -65,17 +69,137 @@
             else
                 wrapper.orderByDesc(ConvertUtils.toLine(order));
         }
+        //������������������������
+        if (!ObjectUtils.isEmpty(isDelete))
+            wrapper.eq("is_delete", isDelete);
+        else
+            wrapper.eq("is_delete", Constants.NOT_DELETE);
         //������������
-        Page<Version> versionsPage = versionMapper.selectPage(queryPage,wrapper);
+        Page<Version> versionsPage = versionMapper.selectPage(queryPage, wrapper);
         List<Version> versions = versionsPage.getRecords();
         //������������������������������������
         List<Integer> versionsIds = new ArrayList<>();
-        versions.forEach(value->versionsIds.add(value.getId()));
-        if(!ObjectUtils.isEmpty(versionsIds)){
-            QueryWrapper<VersionSensorUnit> sensorUnitQueryWrapper = new QueryWrapper<>();
+        versions.forEach(value -> versionsIds.add(value.getId()));
+        List<Version> queryResult = new ArrayList<>();
+        if (!ObjectUtils.isEmpty(versionsIds)) {
+            queryResult = versionMapper.queryVersionsAndSensorUnitByIds(versionsIds);
+        }
+        //������������������
+        List<VersionDTO> dtos = new ArrayList<>();
+        queryResult.forEach(value -> dtos.add(new VersionDTO(value)));
+        dto.setVersionDTOS(dtos);
+        dto.setCurrent(versionsPage.getCurrent());
+        dto.setPages(versionsPage.getPages());
+        dto.setSize(versionsPage.getSize());
+        dto.setTotal(versionsPage.getTotal());
+        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
+        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
+        return dto;
+    }
 
+    @Override
+    @Transactional
+    public VersionDTO update(VersionUpdateForm form) {
+        //������������������
+        VersionDTO dto = new VersionDTO();
+        //������
+        Version version = form.formConvertEntity();
+        //������������������version ������������������
+        QueryWrapper<Version> oldVersionWrapper = new QueryWrapper<>();
+        Version oldVersion = new Version();
+        oldVersion.setId(version.getId());
+        oldVersion.setIsDelete(Constants.NOT_DELETE);
+        oldVersionWrapper.setEntity(oldVersion);
+        oldVersion = versionMapper.selectOne(oldVersionWrapper);
+        if (ObjectUtils.isEmpty(oldVersion)) {
+            dto.setCode(ResponseCodeEnum.VERSION_NOT_EXIST.getCode());
+            dto.setMsg(ResponseCodeEnum.VERSION_NOT_EXIST.getMsg());
+            return dto;
         }
 
-        return null;
+        //������
+        versionMapper.updateById(version);
+
+        //������������������
+        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
+        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
+
+        return dto;
+    }
+
+    @Override
+    @Transactional
+    public VersionDTO insert(VersionInsertForm form) {
+        //������������������
+        VersionDTO dto = new VersionDTO();
+        //������
+        Version version = form.formConvertEntity();
+        //������������������������������������
+        Version existVersion = new Version();
+        existVersion.setName(version.getName());
+        existVersion.setIsDelete(Constants.NOT_DELETE);
+        QueryWrapper<Version> wrapper = new QueryWrapper<>();
+        wrapper.setEntity(existVersion);
+        Version existVersionResult = versionMapper.selectOne(wrapper);
+        if(!ObjectUtils.isEmpty(existVersionResult)){
+            dto.setCode(ResponseCodeEnum.VERSION_EXIST.getCode());
+            dto.setMsg(ResponseCodeEnum.VERSION_EXIST.getMsg());
+            return dto;
+        }
+        //������
+        versionMapper.insert(version);
+        //������������������
+        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
+        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
+        return dto;
+    }
+
+    @Override
+    @Transactional
+    public VersionDTO delete(VersionDeleteForm form) {
+        //������������������
+        VersionDTO dto = new VersionDTO();
+        //������
+        Integer id = form.getId();
+        //������������������������������������������
+        Version oldVersion = versionMapper.selectById(id);
+        //������������
+        Version deleteVersion = new Version();
+        deleteVersion.setId(oldVersion.getId());
+        deleteVersion.setIsDelete(Constants.DELETE);
+        versionMapper.updateById(deleteVersion);
+        //������������������������������������
+        UpdateWrapper deleteSensorUnitWrapper = new UpdateWrapper();
+        deleteSensorUnitWrapper.eq("version_id",id);
+        deleteSensorUnitWrapper.set("is_delete",Constants.DELETE);
+        versionSensorUnitMapper.update(null,deleteSensorUnitWrapper);
+        //������������������
+        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
+        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
+        return dto;
+    }
+
+    @Override
+    @Transactional
+    public VersionDTO updateSensorUnits(VersionSensorUnitForm form) {
+        //������������������
+        VersionDTO dto = new VersionDTO();
+        //������
+        List<VersionSensorUnit> sensorUnits = form.getSensorUnits();
+        Integer versionId = form.getVersionId();
+        //������������������������������������
+        UpdateWrapper deleteWrapper = new UpdateWrapper();
+        deleteWrapper.eq("version_id",versionId);
+        deleteWrapper.set("is_delete",Constants.DELETE);
+        versionSensorUnitMapper.update(null,deleteWrapper);
+        //���������������������������������
+        for (VersionSensorUnit sensorUnit : sensorUnits) {
+            sensorUnit.setVersionId(versionId);
+            versionSensorUnitMapper.insert(sensorUnit);
+        }
+        //������������������
+        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
+        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
+        return dto;
     }
 }

--
Gitblit v1.8.0