From 62fdd2935d3c7425320bf84ed4e1f553f6007374 Mon Sep 17 00:00:00 2001
From: 354798ggg <1074825718@qq.com>
Date: 星期五, 16 六月 2023 15:26:07 +0800
Subject: [PATCH] 代码调整

---
 /dev/null                                                                                                            |   36 -------
 product-server-project-management/src/main/java/com/product/project/management/config/SystemCode.java                |   32 ++++++
 product-server-web/pom.xml                                                                                           |    5 +
 product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java |  107 +++++++++++++++++++++
 product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java       |   60 ++++++++++++
 product-server-project-management/pom.xml                                                                            |   27 +++++
 product-server-project-management/src/main/java/com/product/project/management/config/Cmnconst.java                  |   21 ++++
 pom.xml                                                                                                              |    3 
 8 files changed, 254 insertions(+), 37 deletions(-)

diff --git a/pom.xml b/pom.xml
index 42178fc..78651cf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,6 +15,7 @@
     <description>product-server</description>
     <modules>
         <module>product-server-project-base</module>
+		<module>product-server-project-management</module>
         <module>product-server-project-contract</module>
         <module>product-server-web</module>
     </modules>
@@ -39,7 +40,7 @@
         <UserAgentUtils.version>1.21</UserAgentUtils.version>
         <thumbnailator.version>0.4.8</thumbnailator.version>
         <twelvemonkeys.version>3.4.1</twelvemonkeys.version>
-        <poi.version>3.16</poi.version>
+        <poi.version>4.1.2</poi.version>
         <pinyin4j.version>2.5.1</pinyin4j.version>
         <commons-fileupload.version>1.3.3</commons-fileupload.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff --git a/product-server-project-contract/src/main/java/com/product/contract/controller/NewProjectInfoController.java b/product-server-project-contract/src/main/java/com/product/contract/controller/NewProjectInfoController.java
deleted file mode 100644
index 6e6f1d3..0000000
--- a/product-server-project-contract/src/main/java/com/product/contract/controller/NewProjectInfoController.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package com.product.contract.controller;
-
-import javax.servlet.http.HttpServletRequest;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.product.contract.config.SystemCode;
-import com.product.contract.service.NewProjectInfoService;
-import com.product.core.controller.support.AbstractBaseController;
-import com.product.core.entity.FieldSetEntity;
-import com.product.core.exception.BaseException;
-import com.product.core.spring.context.SpringMVCContextHolder;
-import com.product.module.sys.version.ApiVersion;
-import com.product.util.BaseUtil;
-
-@RequestMapping("/api/new-project")
-@RestController
-public class NewProjectInfoController extends AbstractBaseController{
-
-	@Autowired
-	NewProjectInfoService newProjectInfoService;
-	
-	 /**
-     * 鏍规嵁uuid鑾峰彇椤圭洰璇︽儏
-     * @param request
-     * @return
-     */
-    @RequestMapping(value = "/get-projectTypeItem/{version}", method = RequestMethod.POST)
-    @ApiVersion(1)
-    public String getProjectTypeItem(HttpServletRequest request){
-        try {
-            // 鑾峰彇鍙傛暟
-            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
-            
-            // 鍒ゆ柇uuid鏄惁涓虹┖
-            if (BaseUtil.strIsNull(fse.getString("projectType"))) {
-                SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_COUNT.getValue(),SystemCode.SYSTEM_FORM_COUNT.getText());
-                return this.error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText());
-            }
-            return OK_List(newProjectInfoService.getProjectTypeItem(fse.getString("projectType")));
-        } catch (BaseException e) {
-            e.printStackTrace();
-            SpringMVCContextHolder.getSystemLogger().error(e);
-            return this.error(e);
-        } catch (Exception e) {
-            e.printStackTrace();
-            SpringMVCContextHolder.getSystemLogger().error(e);
-            return this.error(SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_FAIL.getValue(),
-                    SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_FAIL.getText());
-        }
-    }
-    
-    /**
-     * 鏍规嵁uuid鑾峰彇椤圭洰璇︽儏
-     * @param request
-     * @return
-     */
-    @RequestMapping(value = "/get-projectItem/{version}", method = RequestMethod.POST)
-    @ApiVersion(1)
-    public String getProjectItem(HttpServletRequest request){
-        try {
-            // 鑾峰彇鍙傛暟
-            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
-            
-            // 鍒ゆ柇uuid鏄惁涓虹┖
-            if (BaseUtil.strIsNull(fse.getUUID())) {
-                SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_COUNT.getValue(),SystemCode.SYSTEM_FORM_COUNT.getText());
-                return this.error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText());
-            }
-            return OK_List(newProjectInfoService.getProjectItem(fse.getUUID()));
-        } catch (BaseException e) {
-            e.printStackTrace();
-            SpringMVCContextHolder.getSystemLogger().error(e);
-            return this.error(e);
-        } catch (Exception e) {
-            e.printStackTrace();
-            SpringMVCContextHolder.getSystemLogger().error(e);
-            return this.error(SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_FAIL.getValue(),
-                    SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_FAIL.getText());
-        }
-    }
-}
diff --git a/product-server-project-contract/src/main/java/com/product/contract/service/NewProjectInfoService.java b/product-server-project-contract/src/main/java/com/product/contract/service/NewProjectInfoService.java
deleted file mode 100644
index 5663486..0000000
--- a/product-server-project-contract/src/main/java/com/product/contract/service/NewProjectInfoService.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.product.contract.service;
-
-import java.util.Map;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import com.product.core.dao.BaseDao;
-import com.product.core.entity.DataTableEntity;
-import com.product.core.entity.FieldSetEntity;
-import com.product.core.service.support.AbstractBaseService;
-import com.product.util.BaseUtil;
-
-@Component
-public class NewProjectInfoService extends AbstractBaseService{
-
-	@Autowired
-	BaseDao baseDao;
-	
-	public DataTableEntity getProjectTypeItem(String projectType) {
-		DataTableEntity dtProjectItem = baseDao.listTable("product_project_base_project_item", "itemize_type=?", new Object[] {projectType}, new Object[] {"itemize","itemize_code","itemize_parent_code"});
-		if (!BaseUtil.dataTableIsEmpty(dtProjectItem)) {
-			DataTableEntity newDtProjectItem = BaseUtil.dataTableToTreeTable(dtProjectItem, "itemize_code", "itemize_parent_code", null);
-			return newDtProjectItem;
-		}
-		return null;
-	}
-	
-	public FieldSetEntity getProjectItem(String uuid) {
-		FieldSetEntity fseProject = baseDao.getFieldSetEntity("product_project_qxlw", uuid, true);
-		DataTableEntity newDtProjectItem = BaseUtil.dataTableToTreeTable(fseProject.getSubDataTable("product_project_item"), "itemize_code", "itemize_parent_code", null);
-		Map<String, DataTableEntity>dtSubTable = fseProject.getSubData();
-		dtSubTable.put("product_project_item", newDtProjectItem);
-		return fseProject;
-	}
-}
diff --git a/product-server-project-management/pom.xml b/product-server-project-management/pom.xml
new file mode 100644
index 0000000..5915139
--- /dev/null
+++ b/product-server-project-management/pom.xml
@@ -0,0 +1,27 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>com.lx</groupId>
+		<artifactId>product-server</artifactId>
+		<version>2.0.0-release</version>
+	</parent>
+	<artifactId>product-server-project-management</artifactId>
+	<name>product-project-server-management</name>
+	<description>product-project-server-management</description>
+	<version>2.0.0-release</version>
+	<dependencies>
+		<!--releases  -->
+        <dependency>
+            <groupId>com.lx</groupId>
+            <artifactId>product-server-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.lx</groupId>
+            <artifactId>product-server-common</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.lx</groupId>
+            <artifactId>product-server-util</artifactId>
+        </dependency>
+    </dependencies>
+</project>
\ No newline at end of file
diff --git a/product-server-project-management/src/main/java/com/product/project/management/config/Cmnconst.java b/product-server-project-management/src/main/java/com/product/project/management/config/Cmnconst.java
new file mode 100644
index 0000000..896acb0
--- /dev/null
+++ b/product-server-project-management/src/main/java/com/product/project/management/config/Cmnconst.java
@@ -0,0 +1,21 @@
+package com.product.project.management.config;
+
+public class Cmnconst {
+
+	//琛ㄥ悕
+	public static final String PRODUCT_PROJECT_BASE_PROJECT_ITEM="product_project_base_project_item";	//椤圭洰绫诲瀷
+	public static final String PRODUCT_PROJECT_BASE_PROJECT_TYPE="product_project_base_project_type";	//椤圭洰绫诲瀷鍒嗛」
+	public static final String PRODUCT_PROJECT_QXLW="product_project_qxlw";		//椤圭洰淇℃伅
+	public static final String PRODUCT_PROJECT_ITEM="product_project_item";		//椤圭洰鍒嗛」
+	public static final String PRODUCT_PROJECT_BUDGET="product_project_budget";	//棰勭畻
+	
+	//瀛楁鍚�
+	public static final String ITEMIZE="itemize";
+	public static final String ITEMIZE_CODE="itemize_code";
+	public static final String ITEMIZE_PARENT_CODE="itemize_parent_code";
+	
+	
+	//鍙傛暟
+	public static final String PROJECTTYPE="projectType";
+	
+}
diff --git a/product-server-project-management/src/main/java/com/product/project/management/config/SystemCode.java b/product-server-project-management/src/main/java/com/product/project/management/config/SystemCode.java
new file mode 100644
index 0000000..e8b4de1
--- /dev/null
+++ b/product-server-project-management/src/main/java/com/product/project/management/config/SystemCode.java
@@ -0,0 +1,32 @@
+package com.product.project.management.config;
+
+import com.product.common.enums.IEnum;
+import com.product.common.enums.ModuleEnum;
+
+public enum SystemCode implements IEnum{
+	SYSTEM_OPERATION_SUCCESS("鎴愬姛", "200"), SYSTEM_FORM_NODATA("璇锋眰鍙傛暟涓虹┖", ModuleEnum.ORGSYSTEM.getValue() + "001"),
+    SYSTEM_FORM_COUNT("璇锋眰鍙傛暟鏈夎", ModuleEnum.SYSTEM.getValue() + "998"),
+    SYSTEM_TABLE_NODATA("璇锋眰琛ㄥ悕鏈夎", ModuleEnum.SYSTEM.getValue() + "997"),
+    SYSTEM_ACQUIRE_PARAM_FAIL("鑾峰彇鍙傛暟澶辫触", ModuleEnum.SYSTEM.getValue() + "996"),
+    SYSTEM_CPAGES_NOT_NULL("鍒嗛〉鍙傛暟涓嶈兘涓虹┖", ModuleEnum.SYSTEM.getValue() + "995"),
+    
+    PROJECT_MANAGEMENT_ITEMIZE_DEL_FAIL("椤圭洰鍒嗛」鍒犻櫎澶辫触锛屽凡缁忕敓鎴愰绠�",""),
+    PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR("椤圭洰鍒嗛」鎿嶄綔閿欒锛�",""),
+	;
+
+	private String text;
+    private String value;
+
+    private SystemCode(String text, String value) {
+        this.text = text;
+        this.value = value;
+    }
+
+    public String getText() {
+        return text;
+    }
+
+    public String getValue() {
+        return value;
+    }
+}
diff --git a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java
new file mode 100644
index 0000000..c09202d
--- /dev/null
+++ b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java
@@ -0,0 +1,107 @@
+package com.product.project.management.controller;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.product.project.management.config.Cmnconst;
+import com.product.project.management.config.SystemCode;
+import com.product.project.management.service.ProjectInfoService;
+import com.product.core.controller.support.AbstractBaseController;
+import com.product.core.entity.FieldSetEntity;
+import com.product.core.exception.BaseException;
+import com.product.module.sys.version.ApiVersion;
+import com.product.util.BaseUtil;
+
+@RequestMapping("/api/qxlw-project")
+@RestController("qxlw-project-controller")
+public class ProjectInfoController extends AbstractBaseController{
+
+	@Autowired
+	ProjectInfoService projectInfoService;
+	
+	 /**
+     * 鏍规嵁uuid鑾峰彇椤圭洰璇︽儏
+     * @param request
+     * @return
+     */
+    @RequestMapping(value = "/get-projectTypeItem/{version}", method = RequestMethod.POST)
+    @ApiVersion(1)
+    public String getProjectTypeItem(HttpServletRequest request){
+        try {
+            // 鑾峰彇鍙傛暟
+            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
+            
+            // 鍒ゆ柇uuid鏄惁涓虹┖
+            if (BaseUtil.strIsNull(fse.getString(Cmnconst.PROJECTTYPE))) {
+                return this.error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText());
+            }
+            return OK_List(projectInfoService.getProjectTypeItem(fse.getString(Cmnconst.PROJECTTYPE)));
+        } catch (BaseException e) {
+            e.printStackTrace();
+            return this.error(e);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return this.error(SystemCode.PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR.getValue(),
+                    SystemCode.PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR.getText() + e.getMessage());
+        }
+    }
+    
+    /**
+     * 鏍规嵁uuid鑾峰彇椤圭洰璇︽儏
+     * @param request
+     * @return
+     */
+    @RequestMapping(value = "/get-projectItem/{version}", method = RequestMethod.POST)
+    @ApiVersion(1)
+    public String getProjectItem(HttpServletRequest request){
+        try {
+            // 鑾峰彇鍙傛暟
+            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
+            
+            // 鍒ゆ柇uuid鏄惁涓虹┖
+            if (BaseUtil.strIsNull(fse.getUUID())) {
+                return this.error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText());
+            }
+            return OK_List(projectInfoService.getProjectItem(fse.getUUID()));
+        } catch (BaseException e) {
+            e.printStackTrace();
+            return this.error(e);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return this.error(SystemCode.PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR.getValue(),
+                    SystemCode.PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR.getText() + e.getMessage());
+        }
+    }
+    
+    /**
+     * 	鍒嗛」鍒犻櫎楠岃瘉
+     * @param request
+     * @return
+     */
+    @RequestMapping(value = "/del-itemize-valdate/{version}", method = RequestMethod.POST)
+    @ApiVersion(1)
+    public String deleteItemizeValidate(HttpServletRequest request) {
+    	try {
+    		//鑾峰彇鍙傛暟
+    		FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
+    		
+    		//鍒ゆ柇uuid鏄惁涓虹┖
+    		if (BaseUtil.strIsNull(fse.getUUID())) {
+    			return this.error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText());
+    		}
+    		projectInfoService.deleteItemizeValidate(fse.getUUID());
+    		return OK();
+    	} catch (BaseException e) {
+            e.printStackTrace();
+            return this.error(e);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return this.error(SystemCode.PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR.getValue(),
+            		SystemCode.PROJECT_MAMAGERENT_ITEMIZE_GENERAL_ERROR.getText() + e.getMessage());
+        }
+    }
+}
diff --git a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java
new file mode 100644
index 0000000..db98869
--- /dev/null
+++ b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java
@@ -0,0 +1,60 @@
+package com.product.project.management.service;
+
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import com.product.core.dao.BaseDao;
+import com.product.core.entity.DataTableEntity;
+import com.product.core.entity.FieldSetEntity;
+import com.product.core.exception.BaseException;
+import com.product.core.service.support.AbstractBaseService;
+import com.product.project.management.config.Cmnconst;
+import com.product.project.management.config.SystemCode;
+import com.product.util.BaseUtil;
+
+@Component("qxlw-project-service")
+public class ProjectInfoService extends AbstractBaseService{
+
+	@Autowired
+	BaseDao baseDao;
+	
+	/**
+	 * 	閫氳繃椤圭洰绫诲瀷鑾峰彇椤圭洰鍒嗛」锛堣幏鍙栨ā鏉垮垎椤癸級
+	 * @param projectType
+	 * @return
+	 */
+	public DataTableEntity getProjectTypeItem(String projectType) {
+		DataTableEntity dtProjectItem = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_BASE_PROJECT_ITEM, "itemize_type=?", new Object[] {projectType}, new Object[] {Cmnconst.ITEMIZE, Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_CODE});
+		if (!BaseUtil.dataTableIsEmpty(dtProjectItem)) {
+			DataTableEntity newDtProjectItem = BaseUtil.dataTableToTreeTable(dtProjectItem, Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_PARENT_CODE, null);
+			return newDtProjectItem;
+		}
+		return null;
+	}
+	
+	/**
+	 * 	閫氳繃椤圭洰涓昏〃鑾峰彇椤圭洰鍒嗛」锛堣幏鍙栦繚瀛樼殑瀛愯〃鍒嗛」锛�
+	 * @param uuid
+	 * @return
+	 */
+	public FieldSetEntity getProjectItem(String uuid) {
+		FieldSetEntity fseProject = baseDao.getFieldSetEntity(Cmnconst.PRODUCT_PROJECT_QXLW, uuid, true);
+		DataTableEntity newDtProjectItem = BaseUtil.dataTableToTreeTable(fseProject.getSubDataTable(Cmnconst.PRODUCT_PROJECT_ITEM), Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_PARENT_CODE, null);
+		Map<String, DataTableEntity>dtSubTable = fseProject.getSubData();
+		dtSubTable.put(Cmnconst.PRODUCT_PROJECT_ITEM, newDtProjectItem);
+		return fseProject;
+	}
+	
+	/**
+	 * 	鍒犻櫎瀛愰」楠岃瘉锛堝凡缁忕敓鎴愰绠楃殑瀛愰」涓嶈兘鍒犻櫎锛�
+	 * @param uuid
+	 */
+	public void deleteItemizeValidate(String uuid) {
+		DataTableEntity dtBudget = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_BUDGET, "budget_code=?", new Object[] {uuid});
+		if (!BaseUtil.dataTableIsEmpty(dtBudget)) {
+			throw new BaseException(SystemCode.PROJECT_MANAGEMENT_ITEMIZE_DEL_FAIL.getValue(), SystemCode.PROJECT_MANAGEMENT_ITEMIZE_DEL_FAIL.getText());
+		}
+	}
+}
diff --git a/product-server-web/pom.xml b/product-server-web/pom.xml
index d588b27..0768c1c 100644
--- a/product-server-web/pom.xml
+++ b/product-server-web/pom.xml
@@ -163,6 +163,11 @@
         </dependency>
 
         <!--椤圭洰绠$悊妯″潡-->
+		<dependency>
+        	<groupId>com.lx</groupId>
+        	<artifactId>product-server-project-management</artifactId>
+        	<version>2.0.0-release</version>
+        </dependency>
         <dependency>
         	<groupId>com.lx</groupId>
         	<artifactId>product-project-server-base</artifactId>

--
Gitblit v1.9.2