From c2b94a6757c11590190dcd1b566da57072794703 Mon Sep 17 00:00:00 2001 From: zm <2369059705qq.com> Date: 星期三, 24 七月 2024 17:32:08 +0800 Subject: [PATCH] 项目立项优化 --- src/main/java/com/product/contract/service/ProjectBusinessService.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 60 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/product/contract/service/ProjectBusinessService.java b/src/main/java/com/product/contract/service/ProjectBusinessService.java new file mode 100644 index 0000000..f18574b --- /dev/null +++ b/src/main/java/com/product/contract/service/ProjectBusinessService.java @@ -0,0 +1,60 @@ +package com.product.contract.service; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.product.contract.config.CmnConst; +import com.product.contract.service.ide.IProjectBusinessService; +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.core.transfer.Transactional; +import com.product.util.BaseUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class ProjectBusinessService extends AbstractBaseService implements IProjectBusinessService { + + @Autowired + public BaseDao baseDao; + + @Override + public JSONObject findProject(FieldSetEntity fse) { + FieldSetEntity fsData = baseDao.getFieldSet(CmnConst.PRODUCT_PROJECT_BUSINESS, fse.getUUID(), false); + //灏佽椤圭洰璁″垝鏁版嵁鎺ュ彛 + JSONObject json = new JSONObject(); + DataTableEntity planData=baseDao.listTable(CmnConst.PRODUCT_PROJECT_BUSINESS_PLAN,"project_uuid=?",new String[]{fse.getUUID()}); + for (int i = 0; i <planData.getRows() ; i++) { + FieldSetEntity fs = planData.getFieldSetEntity(i); + JSONObject jsonObject = BaseUtil.fieldSetEntityToJson(fs); + JSONArray projectTask = json.getJSONArray(fs.getString("project_task")); + if (projectTask==null){ + JSONArray objects = new JSONArray(); + objects.add(jsonObject); + json.put(fs.getString("project_task"),objects); + }else { + projectTask.add(jsonObject); + } + } + JSONObject rejson=BaseUtil.fieldSetEntityToJson(fsData); + rejson.put(CmnConst.PRODUCT_PROJECT_BUSINESS_PLAN,json); + //灏佽椤圭洰杩涘害鏁版嵁缁撴瀯 + DataTableEntity scheduleDt =baseDao.listTable("select project_task_sub,a.* from product_project_schedule a\n" + + "LEFT JOIN product_project_business_plan b on a.business_sub_uuid =b.uuid\n" + + "where b.project_uuid=? order by a.business_sub_uuid,a.reporting_time",new String[]{fse.getUUID()}); + baseDao.loadPromptData(scheduleDt); + rejson.put(CmnConst.PRODUCT_PROJECT_SCHEDULE,BaseUtil.dataTableEntityToJson(scheduleDt)); + //灏佽璧勬枡鏁版嵁缁撴瀯 + DataTableEntity dataList = baseDao.listTable(CmnConst.PRODUCT_PROJECT_MANAGER_DATA_LIST, "project_type=?", new String[]{fsData.getString("project_type")}); + rejson.put(CmnConst.PRODUCT_PROJECT_MANAGER_DATA_LIST,BaseUtil.dataTableEntityToJson(dataList)); + return rejson; + } + + + @Transactional + @Override + public boolean saveProject(FieldSetEntity fse) { + return baseDao.saveFieldSetEntity(BaseUtil.createCreatorAndCreationTime(fse)); + } +} -- Gitblit v1.9.2