From 9357d25721582bfc7291e5dd9cba7b79a19454f4 Mon Sep 17 00:00:00 2001
From: 354798ggg <1074825718@qq.com>
Date: 星期五, 08 九月 2023 14:47:41 +0800
Subject: [PATCH] BUG调整
---
product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java | 121 +++++-----------------------------------
1 files changed, 15 insertions(+), 106 deletions(-)
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 7b38697..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
@@ -1,8 +1,5 @@
package com.product.project.management.service;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSONArray;
@@ -63,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;
@@ -80,87 +77,7 @@
return baseDao.listTable(Cmnconst.PRODUCT_PROJECT_QXLW, null, null, new Object[]{CoreConst.UUID, Cmnconst.PROJECT_NAME});
}
- /**
- * 椤圭洰鏁版嵁鍒嗘瀽
- *
- * @param project_uuid
- * @return
- */
- public JSONObject statistAnalysis(String project_uuid) {
-
- JSONObject returnJson = new JSONObject();
-
- //鑾峰彇鏁版嵁搴撳師濮嬫暟鎹�
- StringBuilder sb = new StringBuilder();
- sb.append("WITH outbound AS(")
- .append(" SELECT A.project_uuid,D.itemize project_itemize,C.material_type,B.material_code,SUM(B.outbound_weight)outbound_weight ")
- .append(" FROM product_project_outbound A ")
- .append(" LEFT JOIN product_project_outbound_sub B ON A.uuid=B.outbound_uuid ")
- .append(" LEFT JOIN product_project_base_material C ON B.material_uuid = C.uuid ")
- .append(" LEFT JOIN product_project_item D ON A.project_itemize = D.uuid ")
- .append(" WHERE A.flow_flag=2 AND A.project_uuid = ? ")
- .append(" GROUP BY A.project_uuid,D.itemize,C.material_type,B.material_code ")
- .append(" ) ")
- .append(" SELECT A.project_uuid,A.project_itemize,A.total_outbound_weight,B.material_type,B.material_code,B.outbound_weight ")
- .append(" FROM ( ")
- .append(" SELECT project_uuid,project_itemize,SUM(outbound_weight)total_outbound_weight ")
- .append(" FROM outbound ")
- .append(" GROUP BY project_uuid,project_itemize ")
- .append(" )A ")
- .append(" RIGHT JOIN outbound B ON A.project_uuid=B.project_uuid AND A.project_itemize=B.project_itemize ")
- .append(" ORDER BY project_itemize,material_code");
- DataTableEntity dtItemizeInfo = baseDao.listTable(sb.toString(), new Object[]{project_uuid});
- if (!BaseUtil.dataTableIsEmpty(dtItemizeInfo)) {
-
- Map<String, FieldSetEntity> convertData = new HashMap<>();
- String[] materialTypes = new String[3];
-
- //閫氳繃Java寰幆灏�"鏉愭枡"鍜�"鍑哄簱閲�"鏁版嵁琛岃浆鍒�
- for (int i = 0; i < dtItemizeInfo.getRows(); i++) {
- FieldSetEntity fseItemize = dtItemizeInfo.getFieldSetEntity(i);
-
- //鑾峰彇鏉愭枡缂栫爜锛屾潗鏂欑被鍨嬶紝鍑哄簱閲�
- String materialCode = fseItemize.getString(Cmnconst.MATERIAL_CODE);
- String outboundWeight = fseItemize.getString(Cmnconst.OUTBOUND_WEIGHT);
- Integer materialType = fseItemize.getInteger(Cmnconst.MATERIAL_TYPE);
-
- //鏀堕泦鑾峰彇鎵�鏈夎〃澶村垪锛堟潗鏂欑紪鐮侊級
- if (BaseUtil.strIsNull(materialTypes[materialType])) {
- materialTypes[materialType] = materialCode;
- } else {
- if(materialTypes[fseItemize.getInteger(Cmnconst.MATERIAL_TYPE)].indexOf(materialCode)<0) {
- materialTypes[fseItemize.getInteger(Cmnconst.MATERIAL_TYPE)] += "," + materialCode;
- }
- }
-
- //鏀堕泦琛岃浆鍒楁暟鎹�
- String itemize = fseItemize.getString(Cmnconst.PROJECT_ITEMIZE);
- if (convertData.containsKey(itemize)) {
- convertData.get(itemize).setValue(materialCode, outboundWeight);
- } else {
- FieldSetEntity fseConvertData = new FieldSetEntity(Cmnconst.PRODUCT_PROJECT_QXLW);
- fseConvertData.setValue(Cmnconst.PROJECT_ITEMIZE, itemize);
- fseConvertData.setValue(Cmnconst.TOTAL_OUTBOUND_WEIGHT, fseItemize.getString(Cmnconst.TOTAL_OUTBOUND_WEIGHT));
- fseConvertData.setValue(materialCode, outboundWeight);
- convertData.put(itemize, fseConvertData);
- }
- }
- //灏嗘暟鎹浆涓篋ataTableEntity杩斿洖
- if (!convertData.isEmpty()) {
- DataTableEntity finalConvertData = new DataTableEntity();
- convertData.forEach((k, v) -> {
- finalConvertData.addFieldSetEntity(v);
- });
- returnJson.set("data", BaseUtil.dataTableEntityToJson(finalConvertData));
- }
- for (int i = 0; i < materialTypes.length; i++) {
- if (!BaseUtil.strIsNull(materialTypes[i])) {
- returnJson.set("type" + i, materialTypes[i]);
- }
- }
- }
- return returnJson;
- }
+
/**
* 鍒犻櫎瀛愰」楠岃瘉锛堝凡缁忕敓鎴愰绠楃殑瀛愰」涓嶈兘鍒犻櫎锛�
@@ -170,36 +87,27 @@
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());
+ throw new BaseException(SystemCode.PROJECT_ITEMIZE_DEL_FAIL_HAS_BUDGET.getValue(), SystemCode.PROJECT_ITEMIZE_DEL_FAIL_HAS_BUDGET.getText());
}
}
/**
* 鑾峰彇鍒嗛」棰勭畻淇℃伅
*
- * @param projectUUID 椤圭洰UUID
- * @param itemizeCode 鍒嗛」缂栫爜
+ * @param itemizeUUID 鍒嗛」UUID
* @param capge 褰撳墠椤�
* @param pageSize 椤靛ぇ灏�
* @return
*/
- public DataTableEntity listItemizeBudget(String projectUUID, String itemizeCode, Integer capge, Integer pageSize) {
-
- String filter;
- List<String> params = new ArrayList<>();
- if (BaseUtil.strIsNull(itemizeCode)) {
- filter = "project_itemize_uuid IN (SELECT uuid FROM product_project_item WHERE project_uuid=?)";
- params.add(projectUUID);
- } else {
- filter = "project_itemize_uuid IN (SELECT uuid FROM product_project_item WHERE project_uuid=? AND itemize_code like ?)";
- params.add(projectUUID);
- params.add(itemizeCode + "%");
- }
- DataTableEntity dtItemizeBudget = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_BUDGET, filter, params.toArray(), null, null, pageSize, capge);
- if (!BaseUtil.dataTableIsEmpty(dtItemizeBudget)) {
- baseDao.loadPromptData(dtItemizeBudget);
- }
- return dtItemizeBudget;
+ public DataTableEntity listItemizeBudget(String itemizeUUID, Integer capge, Integer pageSize) {
+ if (!BaseUtil.strIsNull(itemizeUUID)) {
+ DataTableEntity dtItemizeBudget = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_BUDGET, "project_itemize_uuid = ?", new Object[] {itemizeUUID}, null, null, pageSize, capge);
+ if (!BaseUtil.dataTableIsEmpty(dtItemizeBudget)) {
+ baseDao.loadPromptData(dtItemizeBudget);
+ }
+ return dtItemizeBudget;
+ }
+ return null;
}
/**
@@ -212,6 +120,7 @@
public DataTableEntity listMaterialV(String uuid, Integer capge, Integer pageSize) {
return baseDao.listTable("product_project_base_material_v","project_itemize_uuid=?",new String[]{uuid},null,null,pageSize, capge);
}
+
/**
* 鏇村叿浠撳簱鍜屾潗鏂欒幏鍙栧簱瀛�
* @return
@@ -219,12 +128,12 @@
public FieldSetEntity findInventoryV(String warehouse_uuid, String material_uuid) {
return baseDao.getFieldSetByFilter("product_project_inventory_v","warehouse_uuid=? and uuid=?",new String[]{warehouse_uuid,material_uuid},false);
}
+
/**
* 鏍规嵁椤圭洰uuid鑾峰彇椤圭洰鍒嗛」鏍戠粨鏋�
* @param uuid
* @return
*/
-
public JSONArray getTreeProjectItem(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 newDtProjectItem = BaseUtil.dataTableToTreeTable(dtProjectItemize, Cmnconst.ITEMIZE_CODE, Cmnconst.ITEMIZE_PARENT_CODE, null);
--
Gitblit v1.9.2