From 9caff2bf7aad528873dca3040e454d70a1a440d9 Mon Sep 17 00:00:00 2001
From: "@t2652009480" <2652009480@qq.com>
Date: Thu, 10 Aug 2023 10:51:50 +0800
Subject: [PATCH] =?UTF-8?q?=E5=BA=94=E7=94=A8=E4=B8=AD=E5=BF=83?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../controller/ApplicationController.java     | 47 ++++++++++--
 .../application/entity/Application.java       |  2 +-
 .../application/entity/Directory.java         |  3 +-
 .../service/ApplicationService.java           |  8 +++
 .../service/impl/ApplicationServiceImpl.java  | 72 +++++++++++++++++--
 5 files changed, 121 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java b/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java
index 75de130..1c845c2 100644
--- a/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java
+++ b/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java
@@ -13,26 +13,63 @@ import javax.annotation.Resource;
 import java.util.List;
 
 @RestController
-@RequestMapping("application")
+@RequestMapping("/application")
 public class ApplicationController {
     @Resource
     ApplicationService applicationService;
 
-    @RequestMapping("query")
+    
+    @RequestMapping("/queryApplication")
     public List<ApplicationVo> queryApplication(){
         List<ApplicationVo> list = applicationService.queryApplication();
         return list;
     }
 
-    @RequestMapping("queryDir")
+    @RequestMapping("/queryDir")
     public List<Directory> queryDir(){
         List<Directory> list = applicationService.queryDir();
         return list;
     }
 
-    @RequestMapping("add")
+    @RequestMapping("/addApplication")
     public String addApplication(@RequestBody ApplicationVo applicationVo){
        int result = applicationService.addApplication(applicationVo);
-        return "";
+       if(result>0){
+           return "添加成功!";
+       }
+        return "添加失败!";
+    }
+
+    @RequestMapping("/selectByIdApplication")
+    public ApplicationVo selectByIdApplication(int id){
+        ApplicationVo applicationVo = applicationService.selectByIdApplication(id);
+        return applicationVo;
+    }
+
+    @RequestMapping("/updateApplication")
+    public String updateApplication(@RequestBody ApplicationVo applicationVo){
+        int result = applicationService.updateApplication(applicationVo);
+        if(result>0){
+            return "修改成功!";
+        }
+        return "修改失败!";
+    }
+
+    @RequestMapping("/deleteApplication")
+    public String deleteApplication(int id){
+        int result = applicationService.deleteApplication(id);
+        if(result>0){
+            return "删除成功!";
+        }
+        return "删除失败!";
+    }
+
+    @RequestMapping("/addDirectory")
+    public String addDirectory(@RequestBody Directory directory){
+        int result = applicationService.addDirectory(directory);
+        if(result>0){
+            return "添加成功!";
+        }
+        return "添加失败!";
     }
 }
diff --git a/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java b/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java
index 4802f89..dfe8139 100644
--- a/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java
+++ b/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java
@@ -11,7 +11,7 @@ import lombok.Data;
 public class Application {
     private static final long serialVersionUID = 1L;
 
-    @TableId(type = IdType.AUTO)
+    @TableId(value = "id",type = IdType.AUTO)
     private int id;
 
     @TableField(value = "app_name")
diff --git a/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java b/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java
index d7a2db3..589891d 100644
--- a/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java
+++ b/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java
@@ -1,5 +1,6 @@
 package com.zhiyun.zhiyun03.application.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -9,7 +10,7 @@ import lombok.Data;
 @Data
 public class Directory {
 
-    @TableId
+    @TableId(value  ="id")
     private int id;
 
     @TableField(value = "dir_name")
diff --git a/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java b/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java
index d6e9747..0aac4b4 100644
--- a/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java
+++ b/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java
@@ -13,4 +13,12 @@ public interface ApplicationService extends IService<Application> {
     int addApplication(ApplicationVo applicationVo);
 
     List<Directory> queryDir();
+
+    ApplicationVo selectByIdApplication(int id);
+
+    int updateApplication(ApplicationVo applicationVo);
+
+    int deleteApplication(int id);
+
+    int addDirectory(Directory directory);
 }
diff --git a/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java b/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java
index ccf9642..d0c56d4 100644
--- a/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java
+++ b/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java
@@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.UUID;
 
 @Service
 public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Application> implements ApplicationService {
@@ -44,9 +45,9 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
         for (int i = 0; i < applications.size(); i++) {
             for (int j = 0; j <directories.size() ; j++) {
                 //判断目录id是否相等
-                if(applications.get(i).getDirId()==directories.get(i).getId()){
+                if(applications.get(i).getDirId()==directories.get(j).getId()){
                     //将目录名称添加到vo类中
-                    applicationVos.get(i).setDirName(directories.get(i).getDirName());
+                    applicationVos.get(i).setDirName(directories.get(j).getDirName());
                 }
             }
         }
@@ -64,13 +65,76 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
     }
 
 
+    /**
+     * 根据id查询应用中心
+     */
+    @Override
+    public ApplicationVo selectByIdApplication(int id) {
+        //根据id查询应用中心
+        QueryWrapper<Application> qwa=new QueryWrapper<>();
+        qwa.lambda().eq(Application::getId,id);
+        Application application = applicationMapper.selectOne(qwa);
+        //查询目录
+        QueryWrapper<Directory> qwd=new QueryWrapper<>();
+        qwd.lambda().eq(Directory::getId,application.getDirId());
+        Directory directory = directoryMapper.selectOne(qwd);
+        ConvertUtil convertUtil=new ConvertUtil();
+        ApplicationVo applicationVo = convertUtil.entityToVo(application, ApplicationVo.class);
+        //给目录名称赋值
+        applicationVo.setDirName(directory.getDirName());
+        return applicationVo;
+    }
+
+    /**
+     * 更新应用中心
+     */
+    @Override
+    public int updateApplication(ApplicationVo applicationVo) {
+        ConvertUtil convertUtil=new ConvertUtil();
+        Application application = convertUtil.VoToEntity(applicationVo, Application.class);
+        QueryWrapper<Directory> qwd=new QueryWrapper<>();
+        qwd.lambda().eq(Directory::getDirName,applicationVo.getDirName());
+        Directory directory = directoryMapper.selectOne(qwd);
+        application.setDirId(directory.getId());
+        int update = applicationMapper.updateById(application);
+        return update;
+    }
+
+
+    /**
+     * 删除应用中心
+     */
+    @Override
+    public int deleteApplication(int id) {
+        int delete = applicationMapper.deleteById(id);
+        return delete;
+    }
+
+
+    /**
+     * 新增目录
+     */
+    @Override
+    public int addDirectory(Directory directory) {
+        directory.setId(UUID.randomUUID().hashCode());
+        int insert = directoryMapper.insert(directory);
+        return insert;
+    }
+
+
     /**
      * 应用中心新增
      */
     @Override
     public int addApplication(ApplicationVo applicationVo) {
-
-        return 0;
+        ConvertUtil convertUtil=new ConvertUtil();
+        Application application = convertUtil.VoToEntity(applicationVo, Application.class);
+        QueryWrapper<Directory> qwd=new QueryWrapper<>();
+        qwd.lambda().eq(Directory::getDirName,applicationVo.getDirName());
+        Directory directory = directoryMapper.selectOne(qwd);
+        application.setDirId(directory.getId());
+        int insert = applicationMapper.insert(application);
+        return insert;
     }