From 6e332c32f5121a372cecc8305e45f6571e4baa16 Mon Sep 17 00:00:00 2001
From: zm <2369059705qq.com>
Date: 星期二, 04 三月 2025 14:55:40 +0800
Subject: [PATCH] 整体修改

---
 src/main/java/com/product/contract/config/CmnConst.java                      |    3 +
 src/main/java/com/product/contract/controller/ProjectBusinessController.java |   64 +++++++++++++++++++++
 src/main/java/com/product/contract/service/ide/IProjectBusinessService.java  |    7 ++
 src/main/java/com/product/contract/config/SystemCode.java                    |    2 
 src/main/java/com/product/contract/service/ContractInfoService.java          |   17 +++--
 src/main/java/com/product/contract/service/ProjectBusinessService.java       |   46 +++++++++++++++
 6 files changed, 132 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/product/contract/config/CmnConst.java b/src/main/java/com/product/contract/config/CmnConst.java
index 9ec076a..79e976d 100644
--- a/src/main/java/com/product/contract/config/CmnConst.java
+++ b/src/main/java/com/product/contract/config/CmnConst.java
@@ -21,6 +21,7 @@
     public static final String LX_PROJECT_TASK_ALLOCATION_SUB = "product_project_task_allocation_sub"; //浠诲姟鍒嗛厤琛�
     public static final String LX_PROJECT_TASK_PROGRESS = "product_project_task_progress"; //浠诲姟杩涘害琛�
     public static final String PRODUCT_PROJECT_SCHEDULE = "product_project_schedule";//浠诲姟杩涘害
+    public static final String PRODUCT_PROJECT_BUSINESS_TRANSLATE = "product_project_business_translate";//浠诲姟杩涘害
 
     public static final String PRODUCT_PROJECT_BUSINESS = "product_project_business";//椤圭洰琛�
     public static final String PRODUCT_PROJECT_BUSINESS_PLAN = "product_project_business_plan";//椤圭洰璁″垝琛�
@@ -36,5 +37,7 @@
     public static final String CPAGE = "cpage"; // 椤垫暟
     public static final String PAGESIZE = "pagesize"; // 姣忛〉鏉℃暟
     public static final String PROJECT_UUID = "project_uuid";
+    public static final String PROJECT_TYPE = "project_type";
+
 
 }
diff --git a/src/main/java/com/product/contract/config/SystemCode.java b/src/main/java/com/product/contract/config/SystemCode.java
index 98fd87d..cda113c 100644
--- a/src/main/java/com/product/contract/config/SystemCode.java
+++ b/src/main/java/com/product/contract/config/SystemCode.java
@@ -88,6 +88,8 @@
     PROJECT_SCHEDULE_OPERATE_FAIL("椤圭洰杩涘害淇℃伅鎿嶄綔澶辫触锛�", ModuleEnum.CONTRACT.getValue() +"046"),
     PROJECT_SCHEDULE_SAVE_FAIL("椤圭洰杩涘害淇濆瓨澶辫触", ModuleEnum.CONTRACT.getValue() +"047"),
     PROJECT_COMMOSSION_OPERATE_FAIL("椤圭洰鎻愭垚鎿嶄綔澶辫触锛�", ModuleEnum.CONTRACT.getValue() +"048"),
+    SYSTEM_FIND_CONTRACT_PROJECT_TRANSLATE_FAIL("鑾峰彇椤圭洰杩涘害妯$増璇︽儏澶辫触", ModuleEnum.CONTRACT.getValue() + "049"),
+    SYSTEM_FIND_CONTRACT_PROJECT_TYPE_FAIL("椤圭洰绫诲瀷閿欒", ModuleEnum.CONTRACT.getValue() + "050"),
 
     ;
 
diff --git a/src/main/java/com/product/contract/controller/ProjectBusinessController.java b/src/main/java/com/product/contract/controller/ProjectBusinessController.java
index 777eb11..727e2fb 100644
--- a/src/main/java/com/product/contract/controller/ProjectBusinessController.java
+++ b/src/main/java/com/product/contract/controller/ProjectBusinessController.java
@@ -89,5 +89,69 @@
 			return error(SystemCode.SYSTEM_SAVE_PROJECT_FAIL.getValue(), SystemCode.SYSTEM_SAVE_PROJECT_FAIL.getText() + e.getMessage());
 		}
 	}
+	/**
+	 * 	椤圭洰杩涘害妯$増璇︽儏
+	 * @param request
+	 * @return
+	 */
+	@RequestMapping(value="/translate-find/{version}", method = RequestMethod.POST)
+	@ApiVersion(1)
+	public String translateFind(HttpServletRequest request) {
+		try {
+			//鑾峰彇鍙傛暟
+			FieldSetEntity fse = null;
+			Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
+			if (bean != null) {
+				RequestParameterEntity reqp = (RequestParameterEntity) bean;
+				fse = reqp.getFormData();
+			}
+			// 鍒ゆ柇鍙傛暟鏄惁涓虹┖
+			if (bean == null || fse == null) {
+				SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_NODATA.getValue(),
+						SystemCode.SYSTEM_FORM_NODATA.getText());
+				return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText());
+			}
+			// 鍒ゆ柇椤圭洰绫诲瀷鏄惁涓虹┖
+			if (com.alibaba.druid.util.StringUtils.isEmpty(fse.getString(CmnConst.PROJECT_TYPE))) {
+				SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_TYPE_FAIL.getValue(),
+						SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_TYPE_FAIL.getText());
+				return this.error(SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_TYPE_FAIL.getValue(), SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_TYPE_FAIL.getText());
+			}
+
+			return ResultInfo.success(projectBusinessService.findTranslate(fse));
+		} catch (BaseException e) {
+			e.printStackTrace();
+			return error(e);
+		} catch (Exception e) {
+			e.printStackTrace();
+			return error(SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_TRANSLATE_FAIL.getValue(), SystemCode.SYSTEM_FIND_CONTRACT_PROJECT_TRANSLATE_FAIL.getText() + e.getMessage());
+		}
+	}
+	/**
+	 * 	椤圭洰绔嬮」淇濆瓨
+	 * @param request
+	 * @return
+	 */
+	@RequestMapping(value="/translate-save/{version}", method = RequestMethod.POST)
+	@ApiVersion(1)
+	public String translateSave(HttpServletRequest request) {
+		try {
+			//鑾峰彇鍙傛暟
+			FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_PROJECT_BUSINESS_TRANSLATE);
+			IProjectBusinessService service = (IProjectBusinessService) getProxyInstance(projectBusinessService);
+
+			boolean succ = service.saveTranslate(fse);
+			if (succ) {
+				return OK();
+			}
+			return error(SystemCode.SYSTEM_SAVE_PROJECT_FAIL.getValue(), SystemCode.SYSTEM_SAVE_PROJECT_FAIL.getText());
+		} catch (BaseException e) {
+			e.printStackTrace();
+			return error(e);
+		} catch (Exception e) {
+			e.printStackTrace();
+			return error(SystemCode.SYSTEM_SAVE_PROJECT_FAIL.getValue(), SystemCode.SYSTEM_SAVE_PROJECT_FAIL.getText() + e.getMessage());
+		}
+	}
 
 }
diff --git a/src/main/java/com/product/contract/service/ContractInfoService.java b/src/main/java/com/product/contract/service/ContractInfoService.java
index fb39c20..5e29095 100644
--- a/src/main/java/com/product/contract/service/ContractInfoService.java
+++ b/src/main/java/com/product/contract/service/ContractInfoService.java
@@ -14,6 +14,7 @@
 import com.product.core.transfer.Transactional;
 import com.product.module.sys.entity.SystemUser;
 import com.product.util.BaseUtil;
+import org.apache.bcel.generic.IF_ACMPEQ;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -132,7 +133,8 @@
         StringBuilder  filter=new StringBuilder(128);
         filter.append(" uuid='"+cfs.getValues().get("project_uuid")+"'");
         DataTableEntity product_project_business = baseDao.listTable("product_project_business",filter.toString(),new Object[]{});
-        String guarantee_period = product_project_business.getData().get(0).getValues().get("guarantee_period").toString();
+//        String guarantee_period = product_project_business.getData().get(0).getValues().get("guarantee_period").toString();
+        String guarantee_period = product_project_business.getString(0, "guarantee_period");
         StringBuilder  dictFilter=new StringBuilder(128);
         dictFilter.append("dict_name='椤圭洰绠$悊椤圭洰绫诲瀷' and dict_value="+product_project_business.getData().get(0).getValues().get("project_type").toString());
         DataTableEntity product_sys_dict = baseDao.listTable("product_sys_dict", dictFilter.toString(), new Object[]{});
@@ -144,11 +146,14 @@
         }
        //缁撴潫鏃ユ湡锛� 濡傛灉鏄紑鍙戦」鐩�佸疄鏂介」鐩紝楠屾敹鏃ユ湡+鍚堝悓鏈夋晥鏈燂紝缁存姢鍚堝悓鍒欐槸绛惧畾鏃ユ湡+鍚堝悓鏈夋晥鏈�
         if(dict_label.equals("寮�鍙戦」鐩�") || dict_label.equals("瀹炴柦椤圭洰")){
-            String carefully_check = product_project_business.getData().get(0).getValues().get("carefully_check").toString();
-            String[] dateTime = carefully_check.split(" ");
-            String time=dateTime[0];
-            String date = getDate(time,guarantee_period);
-            cfs.setValue("end_time",date);
+//            String carefully_check = product_project_business.getData().get(0).getValues().get("carefully_check").toString();
+            String carefully_check = product_project_business.getString(0, "carefully_check");
+            if (!StringUtils.isEmpty(carefully_check)){
+                String[] dateTime = carefully_check.split(" ");
+                String time=dateTime[0];
+                String date = getDate(time,guarantee_period);
+                cfs.setValue("end_time",date);
+            }
         }
         return cfs;
     }
diff --git a/src/main/java/com/product/contract/service/ProjectBusinessService.java b/src/main/java/com/product/contract/service/ProjectBusinessService.java
index 2f3ab7d..16966ef 100644
--- a/src/main/java/com/product/contract/service/ProjectBusinessService.java
+++ b/src/main/java/com/product/contract/service/ProjectBusinessService.java
@@ -58,8 +58,52 @@
 		rejson.put(CmnConst.PRODUCT_PROJECT_MANAGER_DATA_LIST,BaseUtil.dataTableEntityToJson(dataList));
 		return rejson;
 	}
+	@Override
+	public JSONObject findTranslate(FieldSetEntity fse) {
+		FieldSetEntity fsData = baseDao.getFieldSetBySQL("SELECT project_type,date FROM product_project_business_translate where project_type=?", new String[]{fse.getString("project_type")}, false);
+		JSONObject rejson=BaseUtil.fieldSetEntityToJson(fsData);
+		DataTableEntity projectType = baseDao.listTable(CmnConst.PRODUCT_PROJECT_BUSINESS_TRANSLATE, "project_type=? ORDER BY project_task", new String[]{fse.getString("project_type")});
+		JSONObject json = new JSONObject();
+		for (int i = 0; i < projectType.getRows(); i++) {
+			FieldSetEntity fs = projectType.getFieldSetEntity(i);
+			if (json.getJSONArray(fs.getString("project_task"))==null){
+				JSONArray objects = new JSONArray();
+				objects.add(BaseUtil.fieldSetEntityToJson(fs));
+				json.put(fs.getString("project_task"),objects);
 
-
+			}else {
+				JSONArray projectTask = json.getJSONArray(fs.getString("project_task"));
+				projectTask.add(BaseUtil.fieldSetEntityToJson(fs));
+			}
+		}
+		rejson.put(CmnConst.PRODUCT_PROJECT_BUSINESS_TRANSLATE,json);
+		
+		
+		return rejson;
+	}
+	@Transactional
+	@Override
+	public boolean saveTranslate(FieldSetEntity fs) {
+		DataTableEntity dt = fs.getSubDataTable(CmnConst.PRODUCT_PROJECT_BUSINESS_TRANSLATE);
+		boolean a=true;
+		for (int i = 0; i < dt.getRows(); i++) {
+			FieldSetEntity fse = dt.getFieldSetEntity(i);
+			fse.setValue("project_type",fs.getString("project_type"));
+			fse.setValue("date",fs.getString("date"));
+			BaseUtil.createCreatorAndCreationTime(fse);
+			if (fse.getUUID()==null){
+				String uuid= baseDao.add(fse);
+				if (uuid==null) a= false;
+			}else if (fse.getString("~type~")!=null&&fse.getString("~type~").equals("del")){
+				boolean delete = baseDao.delete(CmnConst.PRODUCT_PROJECT_BUSINESS_TRANSLATE, "uuid=?", new String[]{fse.getUUID()});
+				if (!delete) a= false;
+			}else {
+				boolean update = baseDao.update(fse);
+				if (!update) a= false;
+			}
+		}
+		return a;
+	}
 	@Transactional
 	@Override
 	public boolean saveProject(FieldSetEntity fse) {
diff --git a/src/main/java/com/product/contract/service/ide/IProjectBusinessService.java b/src/main/java/com/product/contract/service/ide/IProjectBusinessService.java
index e8921b6..a8ef544 100644
--- a/src/main/java/com/product/contract/service/ide/IProjectBusinessService.java
+++ b/src/main/java/com/product/contract/service/ide/IProjectBusinessService.java
@@ -1,11 +1,18 @@
 package com.product.contract.service.ide;
 
 import com.alibaba.fastjson.JSONObject;
+import com.product.core.entity.DataTableEntity;
 import com.product.core.entity.FieldSetEntity;
+import com.product.core.transfer.Transactional;
 
 public interface IProjectBusinessService {
 
 	JSONObject findProject(FieldSetEntity fse);
 
+	JSONObject findTranslate(FieldSetEntity fse);
+
+	@Transactional
+	boolean saveTranslate(FieldSetEntity fs);
+
 	boolean saveProject(FieldSetEntity fse);
 }

--
Gitblit v1.9.2