diff --git a/src/main/java/com/xqopen/kehui/flows/util/ProjectInitListener.java b/src/main/java/com/xqopen/kehui/flows/util/ProjectInitListener.java index 92a9084..7e191a5 100644 --- a/src/main/java/com/xqopen/kehui/flows/util/ProjectInitListener.java +++ b/src/main/java/com/xqopen/kehui/flows/util/ProjectInitListener.java @@ -181,6 +181,7 @@ public class ProjectInitListener implements ExecutionListener { JSONObject aExt = a.getExt(); aExt.put("branchLeaders",branchLeaders.get(0)); aExt.put("MainLeader",MainLeader.get(0)); + aExt.put("projectAdmin",projectAdmin.get(0)); a.setExt(aExt); }); projectAssessmentIndicatorsService.updateAllColumnBatchById(indicatorsList); diff --git a/src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml b/src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml index 0eb3306..33ce75c 100644 --- a/src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml +++ b/src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml @@ -65,6 +65,7 @@ and ext_ ->> 'historyExecutor' like CONCAT('%', #{map.userId}, '%') - GROUP BY quarter, project_id) b on a.project_id = b.project_id and a.quarter = b.quarter ORDER BY b.quarter desc + GROUP BY quarter, project_id) b on a.project_id = b.project_id and a.quarter = b.quarter and a.is_deleted='0' + ORDER BY b.quarter desc diff --git a/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java b/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java index 4b1f9d7..c6e0054 100644 --- a/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java +++ b/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java @@ -125,10 +125,10 @@ public class ProjectAssessmentIndicatorsController implements ProjectAssessmentI //算出每个指标的平均数 boolean isOffice = (boolean) ext.get("isOffice"); if (isOffice) { - double strategyScoring = ext.get("strategyScoring") == null ? 0 : Double.valueOf((String) ext.get("strategyScoring")); - double marketScoring = ext.get("marketScoring") == null ? 0 : Double.valueOf((String) ext.get("marketScoring")); - double platformScoring = ext.get("platformScoring") == null ? 0 : Double.valueOf((String) ext.get("platformScoring")); - double serviceScoring = ext.get("serviceScoring") == null ? 0 : Double.valueOf((String) ext.get("serviceScoring")); + double strategyScoring = ext.get("strategyScoring") == null ? 0 : Double.valueOf(String.valueOf(ext.get("strategyScoring"))); + double marketScoring = ext.get("marketScoring") == null ? 0 : Double.valueOf(String.valueOf(ext.get("marketScoring"))); + double platformScoring = ext.get("platformScoring") == null ? 0 : Double.valueOf(String.valueOf(ext.get("platformScoring"))); + double serviceScoring = ext.get("serviceScoring") == null ? 0 : Double.valueOf(String.valueOf(ext.get("serviceScoring"))); ArrayList arrayList = new ArrayList<>(); arrayList.add(serviceScoring); arrayList.add(strategyScoring); @@ -362,11 +362,8 @@ public class ProjectAssessmentIndicatorsController implements ProjectAssessmentI Object adminSpyj = map.get("adminSpyj") == null ? null : ext.put("adminSpyj", map.get("adminSpyj")); Object branchLeadersSpyj = map.get("branchLeadersSpyj") == null ? null : ext.put("branchLeadersSpyj", map.get("branchLeadersSpyj")); Object MainLeaderSpyj = map.get("MainLeaderSpyj") == null ? null : ext.put("MainLeaderSpyj", map.get("MainLeaderSpyj")); -// ext.put("adminSpyj",map.get("adminSpyj")); -// ext.put("branchLeadersSpyj",map.get("branchLeadersSpyj")); -// ext.put("MainLeaderSpyj",map.get("MainLeaderSpyj")); String historyExecutor = new String(); - if (ext.containsKey("historyExecutor")) { + if (!ObjectUtils.isEmpty(ext.get("historyExecutor"))) { String str = String.valueOf(ext.get("historyExecutor")); if (!ObjectUtils.isEmpty(map.get("executor"))) { if (!str.contains(String.valueOf(map.get("executor")))) { @@ -374,6 +371,16 @@ public class ProjectAssessmentIndicatorsController implements ProjectAssessmentI ext.put("historyExecutor", historyExecutor); } } + boolean isOffice = (boolean) map.get("isOffice"); + if(isOffice & "管理员审核".equals(taskName)){ + if (!ObjectUtils.isEmpty(ext.get("businessNumber")) & "3".equals(String.valueOf(map.get("businessNumber")))) { + if(!str.contains(String.valueOf(userId))){ + historyExecutor = str + "," + userId; + ext.put("historyExecutor", historyExecutor); + } + } + } + //如果是部门主任最后一个人提交,把当前执行人的id也加上 } else { //历史委托人 ext.put("historyExecutor", map.get("executor")); @@ -422,9 +429,6 @@ public class ProjectAssessmentIndicatorsController implements ProjectAssessmentI if (executor.contains(userId)) { executor = executor.replace(userId, "");//删掉当前已提交的部门主任id } - if (businessNumber == 4) { - executor = String.valueOf(map.get("executor")); - } } } for (int i = 0; i < list.size(); i++) { diff --git a/src/main/java/com/xqopen/kehui/project/action/ProjectInitComtroller.java b/src/main/java/com/xqopen/kehui/project/action/ProjectInitComtroller.java index b14924f..c749023 100644 --- a/src/main/java/com/xqopen/kehui/project/action/ProjectInitComtroller.java +++ b/src/main/java/com/xqopen/kehui/project/action/ProjectInitComtroller.java @@ -125,6 +125,36 @@ public class ProjectInitComtroller implements ProjectInitApi { } JSONObject ext = infoReq.getExt(); JSONArray jsonArray = ext.getJSONArray("membersList"); + if(ObjectUtils.isEmpty(ext.get("imprintDate"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("openRange"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("executeDepts"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("permissionsPeople"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("cC"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("difficultyFactor"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("gross"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("budget"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("scheme"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } + if(ObjectUtils.isEmpty(ext.get("goal"))){ + throw new XQException(ErrorCode.PROJECTINFO_PROJECTSTEP_EMPTY_ERROR, null); + } List membersList = ext.getJSONArray("membersList").toJavaList(ProjectMembers.class); if (membersList == null || membersList.size() <= 0) { throw new XQException(ErrorCode.PROJECTINFO_MEMBERSLIST_EMPTY_ERROR, null); @@ -253,9 +283,9 @@ public class ProjectInitComtroller implements ProjectInitApi { String budgetRate = new String();//预算执行率 for (int i = 0; i < b.size(); i++) { ProjectAssessmentIndicators projectAssessmentIndicators = b.get(i); - if (!StringUtils.isEmpty(projectAssessmentIndicators.getBudgetRate())) { + if (StringUtils.isEmpty(budgetRate) & !StringUtils.isEmpty(projectAssessmentIndicators.getBudgetRate())) { budgetRate = projectAssessmentIndicators.getBudgetRate(); - } else { + } else if (StringUtils.isEmpty(projectAssessmentIndicators.getBudgetRate())) { projectAssessmentIndicators.setBudgetRate(budgetRate); } indicatorsList.add(b.get(i)); @@ -426,7 +456,7 @@ public class ProjectInitComtroller implements ProjectInitApi { wrapper.eq("project_name", infoReq.getProjectName()); wrapper.eq("project_category", "init"); wrapper.eq("is_deleted", false); - wrapper.ne(ProjectInfo.ID_,id); + wrapper.ne(ProjectInfo.ID_, id); List infos = projectInfoService.selectList(wrapper); if (!ObjectUtils.isEmpty(infos)) { return ApiResponse.fillFail("项目名称已存在!"); @@ -461,9 +491,9 @@ public class ProjectInitComtroller implements ProjectInitApi { String budgetRate = new String();//预算执行率 for (int i = 0; i < b.size(); i++) { ProjectAssessmentIndicators projectAssessmentIndicators = b.get(i); - if (!StringUtils.isEmpty(projectAssessmentIndicators.getBudgetRate())) { + if (StringUtils.isEmpty(budgetRate) & !StringUtils.isEmpty(projectAssessmentIndicators.getBudgetRate())) { budgetRate = projectAssessmentIndicators.getBudgetRate(); - } else { + } else if (StringUtils.isEmpty(projectAssessmentIndicators.getBudgetRate())) { projectAssessmentIndicators.setBudgetRate(budgetRate); } indicatorsList.add(b.get(i));