From 7537e950c29dd68a34f16cf1e841fa548c89d58d Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Thu, 20 May 2021 13:10:38 +0800
Subject: [PATCH] screen-manage                       型号更新以及增加功能完成

---
 screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java     |   67 ++++++++++++++++
 screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java               |    4 
 screen-manage/src/main/java/com/moral/api/controller/VersionController.java        |   32 +++++++
 screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java  |    2 
 screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java         |    2 
 screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionUpdateForm.java |   39 +++++++++
 screen-manage/src/main/java/com/moral/api/service/VersionService.java              |   21 +++++
 screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionInsertForm.java |   33 ++++++++
 8 files changed, 196 insertions(+), 4 deletions(-)

diff --git a/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java b/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java
index 5c6b8d6..ad7718b 100644
--- a/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java
+++ b/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java
@@ -51,7 +51,9 @@
     SENSOR_IS_NOT_EXIST(-37, "���������������"),
     UNIT_CONVERSION_EXIST(-38,"������������������������"),
     MONITOR_POINT_IS_EXIST(-39,"���������������"),
-    MONITOR_POINT_IS_NOT_EXIST(-40,"���������������")
+    MONITOR_POINT_IS_NOT_EXIST(-40,"���������������"),
+    VERSION_NOT_EXIST(-41,"���������������"),
+    VERSION_EXIST(-42,"������������������")
     ;
     private final Integer code;
     private final String  msg;
diff --git a/screen-manage/src/main/java/com/moral/api/controller/VersionController.java b/screen-manage/src/main/java/com/moral/api/controller/VersionController.java
index 61aa2e9..2cc121c 100644
--- a/screen-manage/src/main/java/com/moral/api/controller/VersionController.java
+++ b/screen-manage/src/main/java/com/moral/api/controller/VersionController.java
@@ -2,8 +2,11 @@
 
 import com.moral.api.entity.Version;
 import com.moral.api.mapper.VersionMapper;
+import com.moral.api.pojo.dto.version.VersionDTO;
 import com.moral.api.pojo.dto.version.VersionQueryDTO;
+import com.moral.api.pojo.form.version.VersionInsertForm;
 import com.moral.api.pojo.form.version.VersionQueryForm;
+import com.moral.api.pojo.form.version.VersionUpdateForm;
 import com.moral.api.pojo.vo.Version.VersionQueryVO;
 import com.moral.api.pojo.vo.Version.VersionVO;
 import com.moral.api.service.VersionService;
@@ -12,9 +15,7 @@
 import io.swagger.annotations.Api;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.Arrays;
 import java.util.List;
@@ -48,6 +49,31 @@
         VersionQueryVO vo = VersionQueryVO.convert(dto);
 
         return new ResultMessage(dto.getCode(), dto.getMsg(), vo);
+    }
 
+    @PostMapping("update")
+    public ResultMessage update(@RequestBody VersionUpdateForm form){
+        //������������������������
+        if (!form.valid())
+            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
+                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+
+        //������������������
+        VersionDTO dto = versionService.update(form);
+
+        return new ResultMessage(dto.getCode(), dto.getMsg(), null);
+    }
+
+    @PostMapping("insert")
+    public ResultMessage insert(@RequestBody VersionInsertForm form){
+        //������������������������
+        if (!form.valid())
+            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
+                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+
+        //������������������
+        VersionDTO dto = versionService.insert(form);
+
+        return new ResultMessage(dto.getCode(), dto.getMsg(), null);
     }
 }
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java b/screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java
index a48eb1b..684f763 100644
--- a/screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java
+++ b/screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java
@@ -3,6 +3,7 @@
 import com.moral.api.entity.Sensor;
 import com.moral.api.entity.Version;
 import lombok.Data;
+import lombok.NoArgsConstructor;
 
 import java.util.List;
 
@@ -14,6 +15,7 @@
  * @Version TODO
  **/
 @Data
+@NoArgsConstructor
 public class VersionDTO {
 
     private Integer code;
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionInsertForm.java b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionInsertForm.java
new file mode 100644
index 0000000..3bf0866
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionInsertForm.java
@@ -0,0 +1,33 @@
+package com.moral.api.pojo.form.version;
+
+import com.moral.api.entity.Version;
+import lombok.Data;
+import org.springframework.util.ObjectUtils;
+
+/**
+ * @ClassName VersionInsertForm
+ * @Description TODO
+ * @Author ���������
+ * @Date 2021/5/20 11:55
+ * @Version TODO
+ **/
+@Data
+public class VersionInsertForm {
+
+    private String name;
+
+    private String desc;
+
+    public boolean valid(){
+        if(ObjectUtils.isEmpty(name))
+            return false;
+        return true;
+    }
+
+    public Version formConvertEntity(){
+        Version version = new Version();
+        version.setName(name);
+        version.setDesc(desc);
+        return version;
+    }
+}
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java
index 438174a..5ffeb5a 100644
--- a/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java
+++ b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java
@@ -27,6 +27,8 @@
 
     private String orderType;
 
+    private Integer isDelete;
+
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     private Date createStartTime;
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionUpdateForm.java b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionUpdateForm.java
new file mode 100644
index 0000000..ef41df4
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionUpdateForm.java
@@ -0,0 +1,39 @@
+package com.moral.api.pojo.form.version;
+
+import com.moral.api.entity.Version;
+import lombok.Data;
+import org.springframework.util.ObjectUtils;
+
+/**
+ * @ClassName VersionUpdateForm
+ * @Description TODO
+ * @Author ���������
+ * @Date 2021/5/20 11:26
+ * @Version TODO
+ **/
+@Data
+public class VersionUpdateForm {
+
+    private Integer id;
+
+    private String name;
+
+    private String desc;
+
+    public boolean valid() {
+        if (ObjectUtils.isEmpty(id) ||
+                (ObjectUtils.isEmpty(name) &&
+                        ObjectUtils.isEmpty(desc))
+                )
+            return false;
+        return true;
+    }
+
+    public Version formConvertEntity(){
+        Version version = new Version();
+        version.setId(id);
+        version.setName(name);
+        version.setDesc(desc);
+        return version;
+    }
+}
diff --git a/screen-manage/src/main/java/com/moral/api/service/VersionService.java b/screen-manage/src/main/java/com/moral/api/service/VersionService.java
index dacc21f..be6bf7c 100644
--- a/screen-manage/src/main/java/com/moral/api/service/VersionService.java
+++ b/screen-manage/src/main/java/com/moral/api/service/VersionService.java
@@ -2,8 +2,11 @@
 
 import com.moral.api.entity.Version;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.moral.api.pojo.dto.version.VersionDTO;
 import com.moral.api.pojo.dto.version.VersionQueryDTO;
+import com.moral.api.pojo.form.version.VersionInsertForm;
 import com.moral.api.pojo.form.version.VersionQueryForm;
+import com.moral.api.pojo.form.version.VersionUpdateForm;
 
 /**
  * <p>
@@ -24,4 +27,22 @@
             */
     VersionQueryDTO query(VersionQueryForm form);
 
+    /**
+    * @Description: ������version������������
+            * @Param: [form]
+            * @return: com.moral.api.pojo.dto.version.VersionDTO
+            * @Author: ���������
+            * @Date: 2021/5/20
+            */
+    VersionDTO update(VersionUpdateForm form);
+
+    /**
+    * @Description: ������version
+            * @Param: [form]
+            * @return: com.moral.api.pojo.dto.version.VersionDTO
+            * @Author: ���������
+            * @Date: 2021/5/20
+            */
+    VersionDTO insert(VersionInsertForm form);
+
 }
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 dc1d8f1..97ba19e 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
@@ -10,14 +10,18 @@
 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.VersionInsertForm;
 import com.moral.api.pojo.form.version.VersionQueryForm;
+import com.moral.api.pojo.form.version.VersionUpdateForm;
 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;
@@ -54,6 +58,7 @@
         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<>();
@@ -67,6 +72,11 @@
             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);
         List<Version> versions = versionsPage.getRecords();
@@ -89,4 +99,61 @@
         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;
+        }
+
+        //������
+        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;
+    }
 }

--
Gitblit v1.8.0