From 3a709d693bec87de92b4b91abba535d14392810b Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期四, 27 三月 2025 16:10:25 +0800
Subject: [PATCH] 获取项目列表接口

---
 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/dto/irrigateProject.java |   35 +++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectCtrl.java         |   68 ++++++++++++++++++++--
 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/PipIrrRemoteApplication.java         |    3 
 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectSv.java           |   33 ++++++++++-
 4 files changed, 128 insertions(+), 11 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectCtrl.java
index 973bccf..0814908 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectCtrl.java
@@ -8,7 +8,9 @@
 import com.dy.pipIrrGlobal.pojoIr.IrProject;
 import com.dy.pipIrrGlobal.voIr.VoProject;
 import com.dy.pipIrrGlobal.voIr.VoProjectOne;
+import com.dy.pipIrrGlobal.voIr.VoProjectSimple;
 import com.dy.pipIrrGlobal.voSe.VoActiveCard;
+import com.dy.pipIrrIrrigate.project.dto.irrigateProject;
 import com.dy.pipIrrIrrigate.result.IrrigateResultCode;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.media.Content;
@@ -24,10 +26,7 @@
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Optional;
+import java.util.*;
 
 /**
  * @author :WuZeYu
@@ -44,8 +43,7 @@
     private final ProjectSv projectSv;
 
     /**
-     * 娣诲姞椤圭洰
-     *
+     * 娣诲姞椤圭洰锛屾棫鐗堟湰锛屽師鍒欎笂搴熷純
      * @param po            椤圭洰瀹炰綋瀵硅薄
      * @param bindingResult
      * @return 娣诲姞鏄惁鎴愬姛
@@ -75,6 +73,44 @@
             log.error("娣诲姞椤圭洰寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
         }
+        return BaseResponseUtils.buildSuccess(true);
+    }
+
+    /**
+     * 娣诲姞椤圭洰锛屾柊鐗堟湰锛屼娇鐢ㄨ繖涓�
+     * @param po            椤圭洰瀹炰綋瀵硅薄
+     * @param bindingResult
+     * @return 娣诲姞鏄惁鎴愬姛
+     */
+    @PostMapping(path = "addIrrigateProject", consumes = MediaType.APPLICATION_JSON_VALUE)
+    @Transactional(rollbackFor = Exception.class)
+    @SsoAop()
+    public BaseResponse<Boolean> addIrrigateProject(@RequestBody @Valid irrigateProject po, BindingResult bindingResult) {
+        if (bindingResult != null && bindingResult.hasErrors()) {
+            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+
+        String projectName = po.getProjectName();
+        String irrigateGroups = po.getIrrigateGroups();
+        Long operatorId = po.getOperatorId();
+
+        IrProject irProject = new IrProject();
+        irProject.setProjectName(projectName);
+        irProject.setProjectState((byte)1);
+        irProject.setOperator(operatorId);
+        irProject.setOperateTime(new Date());
+        irProject.setDeleted((byte)0);
+        Long projectId = projectSv.addIrrigateProject(irProject);
+        if(projectId == null) {
+            return BaseResponseUtils.buildErrorMsg("鍒涘缓鐏屾簤椤圭洰澶辫触");
+        }
+
+        //String[] irrigateGroupArr = irrigateGroups.split(",");
+        //for(Long irrigateGroupId : irrigateGroupArr) {
+        //
+        //}
+
+
         return BaseResponseUtils.buildSuccess(true);
     }
 
@@ -229,7 +265,7 @@
     }
 
     /**
-     * 鍒嗛〉鏌ヨ
+     * 鍒嗛〉鏌ヨ锛屾棫鐗堟湰锛屽師鍒欎笂搴熷純
      * @param vo
      * @return
      */
@@ -253,4 +289,22 @@
             return BaseResponseUtils.buildException(e.getMessage());
         }
     }
+
+    /**
+     * 鍒嗛〉鏌ヨ椤圭洰锛屾柊鐗堟湰锛岀洰鍓嶄娇鐢�
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getSimpleProjects")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoProjectSimple>>> getSimpleProjects(QueryVo qo) {
+        try {
+            QueryResultVo<List<VoProjectSimple>> res = projectSv.getSimpleProjects(qo);
+            return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鑾峰彇椤圭洰璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage());
+        }
+    }
+
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectSv.java
index adad9dc..9df7dfb 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/ProjectSv.java
@@ -6,6 +6,7 @@
 import com.dy.pipIrrGlobal.pojoIr.IrProject;
 import com.dy.pipIrrGlobal.voIr.VoProject;
 import com.dy.pipIrrGlobal.voIr.VoProjectOne;
+import com.dy.pipIrrGlobal.voIr.VoProjectSimple;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.common.utils.PojoUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,8 +29,7 @@
     private IrProjectMapper irProjectMapper;
 
     /**
-     * 娣诲姞椤圭洰
-     *
+     * 娣诲姞椤圭洰锛屾棫鐗堟湰锛屽師鍒欎笂搴熷純
      * @param po
      * @return
      */
@@ -59,6 +59,16 @@
             return 0;
         }
         return 1;
+    }
+
+    /**
+     * 娣诲姞椤圭洰锛岀洰鍓嶄娇鐢�
+     * @param po
+     * @return
+     */
+    public Long addIrrigateProject(IrProject po) {
+        irProjectMapper.insert(po);
+        return po.getId();
     }
 
     /**
@@ -131,7 +141,7 @@
     }
 
     /**
-     * 鍒嗛〉鏌ヨ椤圭洰
+     * 鍒嗛〉鏌ヨ椤圭洰锛屾棫鐗堟湰锛屽師鍒欎笂搴熷純
      * @param queryVo
      * @return
      */
@@ -146,4 +156,21 @@
         rsVo.obj = irProjectMapper.getProjects(params);
         return rsVo;
     }
+
+    /**
+     * 鍒嗛〉鏌ヨ椤圭洰锛屾柊鐗堟湰锛岀洰鍓嶄娇鐢�
+     * @param queryVo
+     * @return
+     */
+    public QueryResultVo<List<VoProjectSimple>> getSimpleProjects(QueryVo queryVo) {
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+        Long itemTotal = irProjectMapper.getSimpleProjectsCount(params);
+
+        QueryResultVo<List<VoProjectSimple>> rsVo = new QueryResultVo<>();
+        rsVo.pageSize = queryVo.pageSize;
+        rsVo.pageCurr = queryVo.pageCurr;
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = irProjectMapper.getSimpleProjects(params);
+        return rsVo;
+    }
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/dto/irrigateProject.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/dto/irrigateProject.java
new file mode 100644
index 0000000..cf6c558
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/project/dto/irrigateProject.java
@@ -0,0 +1,35 @@
+package com.dy.pipIrrIrrigate.project.dto;
+
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2025-03-27 15:09
+ * @LastEditTime 2025-03-27 15:09
+ * @Description 鐏屾簤椤圭洰瀹炰綋绫伙紝娣诲姞椤圭洰浣跨敤
+ */
+
+@Data
+public class irrigateProject {
+    public static final long serialVersionUID = 202503271510001L;
+
+    /**
+     * 椤圭洰鍚嶇О
+     */
+    @NotBlank(message = "椤圭洰鍚嶇О涓嶈兘涓虹┖")
+    private String projectName;
+
+    /**
+     * 杞亴缁勫垪琛�
+     */
+    @NotBlank(message = "椤圭洰蹇呴』鍖呭惈杞亴缁�")
+    private String irrigateGroups;
+
+    /**
+     * 鎿嶄綔鍛業D
+     */
+    @NotNull(message = "鎿嶄綔鍛業D涓嶈兘涓虹┖")
+    private Long operatorId;
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/PipIrrRemoteApplication.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/PipIrrRemoteApplication.java
index e0c3ded..3992ced 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/PipIrrRemoteApplication.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/PipIrrRemoteApplication.java
@@ -29,7 +29,8 @@
         "com.dy.pipIrrGlobal.daoBa",
         "com.dy.pipIrrGlobal.daoFi",
         "com.dy.pipIrrGlobal.daoAllRound",
-        "com.dy.pipIrrGlobal.daoLargeScreen"
+        "com.dy.pipIrrGlobal.daoLargeScreen",
+        "com.dy.pipIrrGlobal.daoIr"
 })
 public class PipIrrRemoteApplication {
 

--
Gitblit v1.8.0