|
@@ -12737,7 +12737,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public HttpRespMsg groupExpendProcessList(String startDate, String endDate,Integer pageIndex,Integer pageSize) {
|
|
|
|
|
|
+ public HttpRespMsg groupExpendProcessList(String startDate, String endDate,Integer projectId,Integer pageIndex,Integer pageSize) {
|
|
HttpRespMsg msg=new HttpRespMsg();
|
|
HttpRespMsg msg=new HttpRespMsg();
|
|
User user = userMapper.selectById(request.getHeader("token"));
|
|
User user = userMapper.selectById(request.getHeader("token"));
|
|
NumberFormat percentFormat = NumberFormat.getPercentInstance();
|
|
NumberFormat percentFormat = NumberFormat.getPercentInstance();
|
|
@@ -12777,7 +12777,11 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
pageIndex=-1;
|
|
pageIndex=-1;
|
|
pageSize=-1;
|
|
pageSize=-1;
|
|
}
|
|
}
|
|
- IPage<Project> projectIPage = projectMapper.selectPage(new Page<>(pageIndex, pageSize), new LambdaQueryWrapper<Project>().in(Project::getId, projectIds).eq(Project::getCompanyId, companyId));
|
|
|
|
|
|
+ LambdaQueryWrapper<Project> queryWrapper = new LambdaQueryWrapper<Project>().in(Project::getId, projectIds).eq(Project::getCompanyId, companyId);
|
|
|
|
+ if(projectId!=null){
|
|
|
|
+ queryWrapper.eq(Project::getId,projectId);
|
|
|
|
+ }
|
|
|
|
+ IPage<Project> projectIPage = projectMapper.selectPage(new Page<>(pageIndex, pageSize),queryWrapper);
|
|
List<Project> projectList = projectIPage.getRecords();
|
|
List<Project> projectList = projectIPage.getRecords();
|
|
//是否具有查看全部数据的权限
|
|
//是否具有查看全部数据的权限
|
|
//针对依斯呗 指定部门
|
|
//针对依斯呗 指定部门
|
|
@@ -12853,8 +12857,12 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
item.put("overHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("overHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("overHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("overHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("normalHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("normalHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("normalHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("normalHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("afterSetPlanHour",mapList.get(0).get("afterSetPlanHour"));
|
|
item.put("afterSetPlanHour",mapList.get(0).get("afterSetPlanHour"));
|
|
|
|
+ double afterSetPlanHour = Double.valueOf(String.valueOf(mapList.get(0).get("afterSetPlanHour"))).doubleValue();
|
|
double realHour = mapList.stream().mapToDouble(m -> Double.valueOf(String.valueOf(m.get("realHour")))).sum();
|
|
double realHour = mapList.stream().mapToDouble(m -> Double.valueOf(String.valueOf(m.get("realHour")))).sum();
|
|
double planHour = Double.valueOf(String.valueOf( mapList.get(0).get("planHour"))).doubleValue();
|
|
double planHour = Double.valueOf(String.valueOf( mapList.get(0).get("planHour"))).doubleValue();
|
|
|
|
+ if(afterSetPlanHour>0){
|
|
|
|
+ planHour=planHour-afterSetPlanHour;
|
|
|
|
+ }
|
|
item.put("process",percentFormat.format(realHour/planHour));
|
|
item.put("process",percentFormat.format(realHour/planHour));
|
|
}else {
|
|
}else {
|
|
item.put("planHour",0);
|
|
item.put("planHour",0);
|
|
@@ -12903,8 +12911,12 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
item.put("overHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("overHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("overHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("overHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("normalHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("normalHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("normalHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("normalHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("afterSetPlanHour",mapList.get(0).get("afterSetPlanHour"));
|
|
item.put("afterSetPlanHour",mapList.get(0).get("afterSetPlanHour"));
|
|
|
|
+ double afterSetPlanHour = Double.valueOf(String.valueOf(mapList.get(0).get("afterSetPlanHour"))).doubleValue();
|
|
double realHour = mapList.stream().mapToDouble(m -> Double.valueOf(String.valueOf(m.get("realHour")))).sum();
|
|
double realHour = mapList.stream().mapToDouble(m -> Double.valueOf(String.valueOf(m.get("realHour")))).sum();
|
|
double planHour = Double.valueOf(String.valueOf( mapList.get(0).get("planHour"))).doubleValue();
|
|
double planHour = Double.valueOf(String.valueOf( mapList.get(0).get("planHour"))).doubleValue();
|
|
|
|
+ if(afterSetPlanHour>0){
|
|
|
|
+ planHour=planHour-afterSetPlanHour;
|
|
|
|
+ }
|
|
item.put("process",percentFormat.format(realHour/planHour));
|
|
item.put("process",percentFormat.format(realHour/planHour));
|
|
}else {
|
|
}else {
|
|
item.put("planHour",0);
|
|
item.put("planHour",0);
|
|
@@ -12957,8 +12969,12 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
item.put("overHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("overHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("overHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("overHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("normalHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("normalHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("normalHour",new BigDecimal(mapList.stream().mapToDouble(m-> Double.valueOf(String.valueOf(m.get("normalHour")))).sum()).setScale(2,RoundingMode.HALF_UP));
|
|
item.put("afterSetPlanHour",mapList.get(0).get("afterSetPlanHour"));
|
|
item.put("afterSetPlanHour",mapList.get(0).get("afterSetPlanHour"));
|
|
|
|
+ double afterSetPlanHour = Double.valueOf(String.valueOf(mapList.get(0).get("afterSetPlanHour"))).doubleValue();
|
|
double realHour = mapList.stream().mapToDouble(m -> Double.valueOf(String.valueOf(m.get("realHour")))).sum();
|
|
double realHour = mapList.stream().mapToDouble(m -> Double.valueOf(String.valueOf(m.get("realHour")))).sum();
|
|
double planHour = Double.valueOf(String.valueOf( mapList.get(0).get("planHour"))).doubleValue();
|
|
double planHour = Double.valueOf(String.valueOf( mapList.get(0).get("planHour"))).doubleValue();
|
|
|
|
+ if(afterSetPlanHour>0){
|
|
|
|
+ planHour=planHour-afterSetPlanHour;
|
|
|
|
+ }
|
|
item.put("process",percentFormat.format(realHour/planHour));
|
|
item.put("process",percentFormat.format(realHour/planHour));
|
|
}else {
|
|
}else {
|
|
item.put("planHour",0);
|
|
item.put("planHour",0);
|
|
@@ -12992,11 +13008,11 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public HttpRespMsg exportGroupExpendProcessList(String startDate, String endDate) {
|
|
|
|
|
|
+ public HttpRespMsg exportGroupExpendProcessList(String startDate, String endDate,Integer projectId) {
|
|
HttpRespMsg httpRespMsg=new HttpRespMsg();
|
|
HttpRespMsg httpRespMsg=new HttpRespMsg();
|
|
NumberFormat percentFormat = NumberFormat.getPercentInstance();
|
|
NumberFormat percentFormat = NumberFormat.getPercentInstance();
|
|
percentFormat.setMaximumFractionDigits(2);
|
|
percentFormat.setMaximumFractionDigits(2);
|
|
- HttpRespMsg resultMsg = groupExpendProcessList(startDate,endDate,null,null);
|
|
|
|
|
|
+ HttpRespMsg resultMsg = groupExpendProcessList(startDate,endDate,projectId,null,null);
|
|
Map<String, Object> msgData = (Map<String, Object>) resultMsg.getData();
|
|
Map<String, Object> msgData = (Map<String, Object>) resultMsg.getData();
|
|
List<Map<String, Object>> mapList = (List<Map<String, Object>>) msgData.get("record");
|
|
List<Map<String, Object>> mapList = (List<Map<String, Object>>) msgData.get("record");
|
|
Integer companyId = userMapper.selectById(request.getHeader("token")).getCompanyId();
|
|
Integer companyId = userMapper.selectById(request.getHeader("token")).getCompanyId();
|
|
@@ -13124,8 +13140,8 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
List<String> projectIdList = mapList.stream().map(m -> String.valueOf(m.get("projectId"))).distinct().collect(Collectors.toList());
|
|
List<String> projectIdList = mapList.stream().map(m -> String.valueOf(m.get("projectId"))).distinct().collect(Collectors.toList());
|
|
//根据每个项目合并项目列表
|
|
//根据每个项目合并项目列表
|
|
Integer projectNum=rowNum;
|
|
Integer projectNum=rowNum;
|
|
- for (String projectId : projectIdList) {
|
|
|
|
- List<Map<String, Object>> maps = listMapGroupList.get(projectId);
|
|
|
|
|
|
+ for (String pid : projectIdList) {
|
|
|
|
+ List<Map<String, Object>> maps = listMapGroupList.get(pid);
|
|
if(maps.size()>1){
|
|
if(maps.size()>1){
|
|
sheet.addMergedRegion(new CellRangeAddress(projectNum,projectNum+maps.size()-1,0,0));
|
|
sheet.addMergedRegion(new CellRangeAddress(projectNum,projectNum+maps.size()-1,0,0));
|
|
}
|
|
}
|
|
@@ -13143,7 +13159,11 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
}
|
|
}
|
|
for (Map<String, Object> map : mapList) {
|
|
for (Map<String, Object> map : mapList) {
|
|
list.add(String.valueOf(map.get("projectName")));
|
|
list.add(String.valueOf(map.get("projectName")));
|
|
- list.add(String.valueOf(map.get("corpwxDeptId")));
|
|
|
|
|
|
+ if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
|
+ list.add("$departmentName="+map.get("corpwxDeptId")+"$");
|
|
|
|
+ }else {
|
|
|
|
+ list.add(String.valueOf(map.get("department_name")));
|
|
|
|
+ }
|
|
list.add(String.valueOf(map.get("groupName")));
|
|
list.add(String.valueOf(map.get("groupName")));
|
|
list.add(String.valueOf(map.get("planHour")));
|
|
list.add(String.valueOf(map.get("planHour")));
|
|
list.add(String.valueOf(map.get("normalHour")));
|
|
list.add(String.valueOf(map.get("normalHour")));
|