|
@@ -106,6 +106,12 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
@Resource
|
|
|
StagesMapper stagesMapper;
|
|
|
@Resource
|
|
|
+ ProjectKeyNodesMapper projectKeyNodesMapper;
|
|
|
+ @Resource
|
|
|
+ ProjectKeyNodesService projectKeyNodesService;
|
|
|
+ @Resource
|
|
|
+ ProjectKeyNodesSettingMapper projectKeyNodesSettingMapper;
|
|
|
+ @Resource
|
|
|
ProjectBasecostSettingMapper projectBasecostSettingMapper;
|
|
|
@Resource
|
|
|
ProjectCurrentcostMapper projectCurrentcostMapper;
|
|
@@ -428,6 +434,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
Double contractAmount,
|
|
|
String changeContractReason,
|
|
|
String projectBaseCostData,
|
|
|
+ String projectKeyNodesData,
|
|
|
Double budget,
|
|
|
Integer customerId,
|
|
|
String chosenLeaders,
|
|
@@ -716,7 +723,9 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ if (projectKeyNodesData != null) {
|
|
|
+ updateProjectKeyNodesData(projectKeyNodesData, p.getId());
|
|
|
+ }
|
|
|
//更新关联表中的项目名称和编号
|
|
|
FinanceProjects fp = new FinanceProjects();
|
|
|
fp.setProjectName(p.getProjectName());
|
|
@@ -899,6 +908,22 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
return httpRespMsg;
|
|
|
}
|
|
|
|
|
|
+ //更新项目的关键节点数据
|
|
|
+ private HttpRespMsg updateProjectKeyNodesData(String data, Integer projectId) {
|
|
|
+ HttpRespMsg httpRespMsg=new HttpRespMsg();
|
|
|
+ JSONArray array = JSONArray.parseArray(data);
|
|
|
+ List<ProjectKeyNodes> nodesList = new ArrayList<>();
|
|
|
+ for (int i=0;i<array.size(); i++) {
|
|
|
+ ProjectKeyNodes projectKeyNodes = JSONObject.toJavaObject(array.getJSONObject(i), ProjectKeyNodes.class);
|
|
|
+ projectKeyNodes.setProjectId(projectId);
|
|
|
+ nodesList.add(projectKeyNodes);
|
|
|
+ }
|
|
|
+ projectKeyNodesMapper.delete(new QueryWrapper<ProjectKeyNodes>().eq("project_id", projectId));
|
|
|
+ projectKeyNodesService.saveBatch(nodesList);
|
|
|
+ httpRespMsg.data=nodesList;
|
|
|
+ return httpRespMsg;
|
|
|
+ }
|
|
|
+
|
|
|
private int getNotNullInt(Integer integer) {
|
|
|
return integer==null?0:integer.intValue();
|
|
|
}
|
|
@@ -4820,9 +4845,11 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
}
|
|
|
|
|
|
}
|
|
|
+ List<Map<String,Object>> dataList=new ArrayList<>();
|
|
|
if(mapList!=null){
|
|
|
int num=0;
|
|
|
for (Map<String, Object> map : mapList) {
|
|
|
+ Map<String,Object> objectMap=new HashMap<>();
|
|
|
Object date = map.get("createDate");
|
|
|
//去掉sql返回的毫秒值
|
|
|
Timestamp timestamp = (Timestamp) map.get("createTime");
|
|
@@ -4847,8 +4874,11 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
}
|
|
|
if(createTimeDate.isBefore(createDate)||createTimeDate.isEqual(createDate)){
|
|
|
num++;
|
|
|
+ objectMap.put(createTimeDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")),"及时");
|
|
|
}
|
|
|
+ dataList.add(objectMap);
|
|
|
}
|
|
|
+ timelinessRateVO.setDataList(dataList);
|
|
|
BigDecimal bigDecimal=new BigDecimal(num);
|
|
|
BigDecimal divide;
|
|
|
if(days!=0){
|
|
@@ -5786,12 +5816,21 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
list.add(Integer.valueOf(s));
|
|
|
}
|
|
|
List<Project> projectList = projectMapper.selectList(new QueryWrapper<Project>().in("id", list));
|
|
|
+ List<Participation> participationList = participationMapper.selectList(new QueryWrapper<Participation>().in("project_id", list));
|
|
|
for (Project project : projectList) {
|
|
|
project.setInchargerId(inchargerId);
|
|
|
if(projectMapper.updateById(project)<=0){
|
|
|
httpRespMsg.setError("操作失败");
|
|
|
return httpRespMsg;
|
|
|
}
|
|
|
+ boolean b = participationList.stream().anyMatch(pl -> pl.getProjectId().equals(project.getId()) && pl.getUserId().equals(inchargerId));
|
|
|
+ //项目经理不在参与人当中时 要添加
|
|
|
+ if(!b){
|
|
|
+ Participation participation=new Participation();
|
|
|
+ participation.setProjectId(project.getId());
|
|
|
+ participation.setUserId(inchargerId);
|
|
|
+ participationMapper.insert(participation);
|
|
|
+ }
|
|
|
}
|
|
|
return httpRespMsg;
|
|
|
}
|