From 96b6c0cf5b5a55cb9681ba832ad1278945e5ff78 Mon Sep 17 00:00:00 2001
From: 354798ggg <1074825718@qq.com>
Date: 星期四, 17 八月 2023 14:42:43 +0800
Subject: [PATCH] 按节点生成预算
---
product-server-project-management/src/main/java/com/product/project/management/service/ProjectBudgetService.java | 25 +++++++++++++++++++------
product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java | 2 +-
product-server-project-management/src/main/java/com/product/project/management/controller/ProjectBudgetController.java | 2 +-
3 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectBudgetController.java b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectBudgetController.java
index 744e200..a345535 100644
--- a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectBudgetController.java
+++ b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectBudgetController.java
@@ -40,7 +40,7 @@
if (BaseUtil.strIsNull(fse.getString(Cmnconst.PROJECT_UUID))) {
return this.error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText());
}
- boolean succ = projectBudgetService.clearBudget(fse.getString(Cmnconst.PROJECT_UUID));
+ boolean succ = projectBudgetService.clearBudget(fse.getString(Cmnconst.PROJECT_UUID), fse.getString(Cmnconst.ITEMIZE_CODE));
if (succ) {
return OK();
}
diff --git a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectBudgetService.java b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectBudgetService.java
index bb14965..ee6305f 100644
--- a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectBudgetService.java
+++ b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectBudgetService.java
@@ -1,5 +1,6 @@
package com.product.project.management.service;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -108,14 +109,16 @@
FieldSetEntity fseProject = baseDao.getFieldSetByFilter(Cmnconst.PRODUCT_PROJECT_QXLW, "project_name=?", new Object[] {fseParseData.getString("field0")}, false);
String projectUUID = fseProject.getUUID();
//寰幆field1~field6瀛楁锛岄�愭鐢熸垚瀵瑰簲鐨勯」鐩垎椤规暟鎹�
- for (int i = 1; i < 8; i++) {
+ for (int i = 1; i < 9; i++) {
//鑾峰彇鍒嗛」鍚嶇О,鍒ゆ柇鏄惁涓虹┖
String itemize = fseParseData.getString("field"+i);
//鍒ゆ柇椤圭洰鍒嗛」鍚嶇О鏄惁涓虹┖锛堝涓虹┖锛氬垯璇ラ绠楀搴旂殑椤圭洰鍒嗛」鐢熸垚瀹屾瘯锛岄绠楀叧鑱旂殑UUID涓轰笂涓�涓猣ield鍒嗛」瀵瑰簲鐨刄UID
if (BaseUtil.strIsNull(itemize)) {
- finalUUID = itemizeFullNameAndUUID.get(itemizFullName);
- break;
+ if (i==8) {
+ finalUUID = itemizeFullNameAndUUID.get(itemizFullName);
+ }
+ continue;
}
//鑾峰彇涓婄骇鍒嗛」鍜屽綋鍓嶅垎椤瑰叏绉帮紙濡傚綋鍓嶅垎椤规病鏈変笂绾э細鍒欏叏绉扮瓑浜庡悕绉帮紱濡傛湁涓婄骇锛氬垯鍏ㄧО绛変簬涓婄骇鍏ㄧО/鍚嶇О锛�
@@ -187,11 +190,21 @@
* @param projectUUID
* @return
*/
- public boolean clearBudget(String projectUUID) {
- DataTableEntity dtOutbound = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_OUTBOUND, "project_uuid=?", new Object[] {projectUUID});
+ public boolean clearBudget(String projectUUID, String itemizeCode) {
+ DataTableEntity dtOutbound;
+ if(BaseUtil.strIsNull(itemizeCode)) {
+ dtOutbound = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_OUTBOUND, "project_uuid=?", new Object[] {projectUUID});
+ }else {
+ dtOutbound = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_OUTBOUND, "project_uuid=? AND project_itemize IN (SELECT uuid FROM product_project_item WHERE project_uuid=? AND itemize_code LIKE ?)", new Object[] {projectUUID,projectUUID,itemizeCode+"%"});
+ }
if (!BaseUtil.dataTableIsEmpty(dtOutbound)) {
throw new BaseException(SystemCode.PROJeCT_BUDGET_CLEAR_FAIL_HAS_OUTBOUND.getValue(), SystemCode.PROJeCT_BUDGET_CLEAR_FAIL_HAS_OUTBOUND.getText());
}
- return baseDao.executeUpdate("DELETE FROM product_project_budget WHERE project_itemize_uuid IN (SELECT uuid FROM product_project_item WHERE project_uuid=?)", new Object[] {projectUUID});
+ return false;
+// if (BaseUtil.strIsNull(itemizeCode)) {
+// return baseDao.executeUpdate("DELETE FROM product_project_budget WHERE project_itemize_uuid IN (SELECT uuid FROM product_project_item WHERE project_uuid=?)", new Object[] {projectUUID});
+// }else {
+// return baseDao.executeUpdate("DELETE FROM product_project_budget WHERE project_itemize_uuid IN (SELECT uuid FROM product_project_item WHERE project_uuid=? AND itemize_code LIKE ?)", new Object[] {projectUUID,itemizeCode+"%"});
+// }
}
}
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
index 21dd0f8..e4e30ef 100644
--- 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
@@ -60,7 +60,7 @@
* @return
*/
public DataTableEntity getProjectAllItem(String uuid) {
- DataTableEntity dtProjectItemize = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_ITEM, "project_uuid=?", new Object[]{uuid}, new Object[]{CoreConst.UUID, Cmnconst.ITEMIZE, Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_PARENT_CODE});
+ DataTableEntity dtProjectItemize = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_ITEM, "project_uuid=?", new Object[]{uuid}, new Object[]{CoreConst.UUID, Cmnconst.ITEMIZE, Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_PARENT_CODE, Cmnconst.ITEMIZE_FULL_NAME});
if (!BaseUtil.dataTableIsEmpty(dtProjectItemize)) {
DataTableEntity newDtProjectItem = BaseUtil.dataTableToTreeTable(dtProjectItemize, Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_PARENT_CODE, null);
return newDtProjectItem;
--
Gitblit v1.9.2