From 7d64716cb0d406f21cde03976fd273bd07fdc06f Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期二, 28 九月 2021 11:44:28 +0800
Subject: [PATCH] 更新用户-角色-菜单-权限

---
 src/main/java/com/whyc/service/ProjectProcessManageService.java |  136 +++++++++++++++++++++++++++++++--------------
 1 files changed, 93 insertions(+), 43 deletions(-)

diff --git a/src/main/java/com/whyc/service/ProjectProcessManageService.java b/src/main/java/com/whyc/service/ProjectProcessManageService.java
index ef0c207..7d37ecc 100644
--- a/src/main/java/com/whyc/service/ProjectProcessManageService.java
+++ b/src/main/java/com/whyc/service/ProjectProcessManageService.java
@@ -1,9 +1,12 @@
 package com.whyc.service;
 
 
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.whyc.dto.Response;
 import com.whyc.mapper.ProjectArchiveManageMapper;
 import com.whyc.mapper.ProjectManageMapper;
+import com.whyc.pojo.DeviceManage;
 import com.whyc.pojo.ProjectArchiveManage;
 import com.whyc.pojo.ProjectManage;
 import io.swagger.models.auth.In;
@@ -14,6 +17,7 @@
 import org.springframework.transaction.TransactionStatus;
 
 import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
@@ -42,42 +46,60 @@
         return response;
     }
 
-    public Response<List<ProjectManage>> searchByCondition(ProjectManage projectManage) {
-        Response<List<ProjectManage>> response = new Response<>();
+    /**
+     * 鏍规嵁绛涢�夋潯浠�
+     *
+     * @param pageNum
+     * @param pageSize
+     * @param projectManage
+     * @return
+     */
+    public Response<PageInfo<ProjectManage>> searchByCondition(int pageNum, int pageSize, ProjectManage projectManage) {
+        PageHelper.startPage(pageNum, pageSize);
         List<ProjectManage> projectManages = projectManageMapper.searchByCondition(projectManage);
-        response.setCode(1);
-        response.setData(projectManages);
-        return response;
-
+        PageInfo<ProjectManage> projectManagePageInfo = new PageInfo<>(projectManages);
+        return new Response<PageInfo<ProjectManage>>().set(1, projectManagePageInfo);
     }
 
 
+    /**
+     * 鏂板缓椤圭洰
+     *
+     * @param pm
+     * @return
+     */
     public Response add(ProjectManage pm) {
         Response response = new Response<>();
+        pm.setProNameCode(new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()));
+        pm.setProState(1);//椤圭洰鐘舵�� 杩涜涓�
+        pm.setProProgress(1);//椤圭洰杩涘害 绔嬮」
         Integer num = projectManageMapper.checkUniqueId(pm);
-        if(num>0){
-            return  response.setMsg(0, "娣诲姞澶辫触锛宲ro_name_code閲嶅");
+        if (num > 0) {
+            return response.setMsg(0, "娣诲姞澶辫触锛宲ro_name_code閲嶅");
         }
         boolean bl;
         TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
         try {
             bl = projectManageMapper.insert(pm) > 0;
             if (bl) {
-                String[] paths = pm.getNote().split(";");
-                for (int i = 0; i < paths.length; i++) {
-                    ProjectArchiveManage pam = new ProjectArchiveManage();
-                    pam.setProNum(pm.getProNum());
-                    pam.setProName(pm.getProName());
-                    pam.setProNameCode(pm.getProNameCode());//鍞竴锛屽彲瀵瑰簲澶氫釜鏂囦欢
-                    pam.setProSort(pm.getProSort());
-                    String path = paths[i];
-                    pam.setProFilePath(path);
-                    String[] split = path.split("_");
-                    int rexIdex = split[1].lastIndexOf(".");
-                    pam.setProDocumentName(split[1].substring(0, rexIdex));
-                    pam.setProDocumentFormat(split[1].substring(rexIdex + 1));
-                    pam.setProUploadDate(new Date());
-                    projectArchiveManageMapper.insert(pam);
+                ArrayList<String> list = pm.getFileList();
+                if (null != list) {
+                    Date proUploadDate = new Date();
+                    for (int i = 0; i < list.size(); i++) {
+                        ProjectArchiveManage pam = new ProjectArchiveManage();
+                        pam.setProNum(pm.getProNum());
+                        pam.setProName(pm.getProName());
+                        pam.setProNameCode(pm.getProNameCode());//鍞竴锛屽彲瀵瑰簲澶氫釜鏂囦欢
+                        pam.setProSort(pm.getProSort());
+                        String path = list.get(i);
+                        pam.setProFilePath(path);
+                        String[] split = path.split("_");
+                        int rexIdex = split[1].lastIndexOf(".");
+                        pam.setProDocumentName(split[1].substring(0, rexIdex));
+                        pam.setProDocumentFormat(split[1].substring(rexIdex + 1));
+                        pam.setProUploadDate(proUploadDate);
+                        projectArchiveManageMapper.insert(pam);
+                    }
                 }
             }
         } catch (Exception e) {
@@ -98,6 +120,7 @@
 
     /**
      * 椤圭洰杩囩▼绠$悊/宸辩‘璁ゃ�佹湭纭闃舵
+     *
      * @param projectManage
      * @return
      */
@@ -108,18 +131,18 @@
             ProjectManage pm = projectManageMapper.searchManageStateByCondition(projectManage);
             List<ProjectArchiveManage> pams = projectArchiveManageMapper.searchByConditionDocumentPath(projectManage);
             HashMap<Object, Object> map = new HashMap<>();
-            map.put("椤圭洰绠$悊", pm);
+            map.put("pm", pm);
             ArrayList<Object> list = new ArrayList<>();
             if (null != pams) {
                 for (int i = 0; i < pams.size(); i++) {
                     ProjectArchiveManage pam = pams.get(i);
                     HashMap<Object, Object> mapDoc = new HashMap<>();
-                    mapDoc.put("鏂囦欢鍚�", pam.getProDocumentName());
-                    mapDoc.put("鏂囦欢璺緞", pam.getProFilePath());
+                    mapDoc.put("name", pam.getProDocumentName());
+                    mapDoc.put("url", pam.getProFilePath());
                     list.add(mapDoc);
                 }
             }
-            map.put("鏂囨。鏉愭枡", list);
+            map.put("mapDoc", list);
             response.setCode(1);
             response.setMsg(1, "鏌ヨ鎴愬姛");
             response.setData(map);
@@ -133,7 +156,8 @@
 
     /**
      * 椤圭洰杩涘害纭
-     *鏈綊妗e彲浠ヤ慨鏀规洿鏂帮紝褰掓。鍚庝笉鑳戒慨鏀�
+     * 鏈綊妗e彲浠ヤ慨鏀规洿鏂帮紝褰掓。鍚庝笉鑳戒慨鏀�
+     *
      * @param pm
      * @return
      */
@@ -143,34 +167,60 @@
         TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
         try {
             bl = projectManageMapper.updateManageState(pm) > 0;
-            String path = pm.getNote().trim();
-            if (path.length() > 10) {
-                ProjectArchiveManage pam = new ProjectArchiveManage();
-                pam.setProNum(pm.getProNum());
-                pam.setProName(pm.getProName());
-                pam.setProNameCode(pm.getProNameCode());//鍞竴
-                pam.setProSort(pm.getProSort());
-                pam.setProFilePath(path);
-                String[] split = path.split("-");
-                int rexIdex = split[1].lastIndexOf(".");
-                pam.setProDocumentName(split[1].substring(0, rexIdex));
-                pam.setProDocumentFormat(split[1].substring(rexIdex + 1));
-                projectArchiveManageMapper.insert(pam);
+            ArrayList<String> fileList = pm.getFileList();
+            if (bl && null != fileList) {
+                for (int i = 0; i < fileList.size(); i++) {
+                    String filePath = fileList.get(i);
+                    Boolean fileExist = projectArchiveManageMapper.checkFileExist(filePath) > 0;
+                    if (!fileExist) {
+                        ProjectArchiveManage pam = new ProjectArchiveManage();
+                        pam.setProNum(pm.getProNum());
+                        pam.setProName(pm.getProName());
+                        pam.setProNameCode(pm.getProNameCode());//鍞竴
+                        pam.setProSort(pm.getProSort());
+                        pam.setProFilePath(filePath);
+                        pam.setProUploadDate(new Date());
+                        String[] split = filePath.split("_");
+                        int rexIdex = split[1].lastIndexOf(".");
+                        pam.setProDocumentName(split[1].substring(0, rexIdex));
+                        pam.setProDocumentFormat(split[1].substring(rexIdex + 1));
+                        projectArchiveManageMapper.insert(pam);
+                    }
+                }
             }
-            response.setMsg(1, "鏇存柊鎴愬姛");
         } catch (Exception e) {
             e.printStackTrace();
             dataSourceTransactionManager.rollback(transactionStatus);
             return response.setMsg(0, "鏇存柊澶辫触");
         }
         if (bl) {
+            response.setMsg(1, "鏇存柊鎴愬姛");
             dataSourceTransactionManager.commit(transactionStatus);
         } else {
-
+            response.setMsg(0, "鏇存柊澶辫触");
             dataSourceTransactionManager.rollback(transactionStatus);
         }
         return response;
     }
 
 
+    /**
+     * 椤圭洰杩涘害绠$悊
+     * 椤圭洰杩涘害锛�1-6 绔嬮」銆佸鎵广�佺爺绌躲�佺粨棰樸�侀獙鏀躲�佸綊妗o級
+     *
+     * @param progress
+     * @return
+     */
+    public Response updateProjectProgress(ProjectManage progress) {
+        Response<Object> response = new Response<>();
+        progress.setProArchiveDate(new Date());
+        boolean bl = projectManageMapper.updateProjectProgress(progress) > 0;
+        if (bl) {
+            projectArchiveManageMapper.updateProjectProgress(progress);//鏈夋枃妗f潗鏂欏氨澧炲姞褰掓。鏃堕棿
+            response.setMsg(1, "鏇存柊鎴愬姛");
+        } else {
+            response.setMsg(0, "鏇存柊澶辫触");
+        }
+        return response;
+    }
 }

--
Gitblit v1.9.1