|
|
@ -267,16 +267,16 @@ public class ScreenProjectServiceImpl implements ScreenProjectService { |
|
|
|
// 查询客户下的所有分类
|
|
|
|
List<ProjectCategoryResultDTO> result = screenProjectCategoryOrgDailyDao.selectCategoryByCustomerId(tokenDto.getCustomerId()); |
|
|
|
List<ProjectCategoryResultDTO> endCategoryList = new ArrayList<>(); |
|
|
|
if (formDTO.getOrgType().equals(FactConstant.AGENCY)){ |
|
|
|
Integer endTotal = screenProjectOrgDailyDao.selectProjectTotalByAgency(customerId, endTime, orgId); |
|
|
|
if (formDTO.getOrgType().equals(FactConstant.GRID)){ |
|
|
|
Integer endTotal = screenProjectOrgDailyDao.selectProjectTotalByGrid(customerId, endTime, orgId); |
|
|
|
endTotal = null == endTotal ? NumConstant.ZERO : endTotal; |
|
|
|
endCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByAgency(customerId,endTime,orgId); |
|
|
|
endCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByGrid(customerId,endTime,orgId); |
|
|
|
Integer total = endTotal; |
|
|
|
if (StringUtils.isNotBlank(startTime)){ |
|
|
|
Integer startTotal = screenProjectOrgDailyDao.selectProjectTotalByAgency(customerId, startTime, orgId); |
|
|
|
Integer startTotal = screenProjectOrgDailyDao.selectProjectTotalByGrid(customerId, startTime, orgId); |
|
|
|
startTotal = null == startTotal ? NumConstant.ZERO : startTotal; |
|
|
|
total = endTotal - startTotal; |
|
|
|
List<ProjectCategoryResultDTO> startCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByAgency(customerId,startTime,orgId); |
|
|
|
List<ProjectCategoryResultDTO> startCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByGrid(customerId,startTime,orgId); |
|
|
|
endCategoryList.forEach(e -> startCategoryList.stream().filter(s -> e.getCategoryCode().equals(s.getCategoryCode())).forEach(s -> e.setProjectTotal(subtract(e.getProjectTotal(),s.getProjectTotal())))); |
|
|
|
endCategoryList.forEach(e -> startCategoryList.stream().filter(s -> e.getCategoryCode().equals(s.getCategoryCode())).forEach(s -> e.setClosedProjectTotal(subtract(e.getClosedProjectTotal(),s.getClosedProjectTotal())))); |
|
|
|
} |
|
|
@ -286,15 +286,15 @@ public class ScreenProjectServiceImpl implements ScreenProjectService { |
|
|
|
e.setClosedRatio(ratio(e.getClosedProjectTotal(),e.getProjectTotal())); |
|
|
|
}); |
|
|
|
}else { |
|
|
|
Integer endTotal = screenProjectOrgDailyDao.selectProjectTotalByGrid(customerId, endTime, orgId); |
|
|
|
Integer endTotal = screenProjectOrgDailyDao.selectProjectTotalByAgency(customerId, endTime, orgId); |
|
|
|
endTotal = null == endTotal ? NumConstant.ZERO : endTotal; |
|
|
|
endCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByGrid(customerId,endTime,orgId); |
|
|
|
endCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByAgency(customerId,endTime,orgId); |
|
|
|
Integer total = endTotal; |
|
|
|
if (StringUtils.isNotBlank(startTime)){ |
|
|
|
Integer startTotal = screenProjectOrgDailyDao.selectProjectTotalByGrid(customerId, startTime, orgId); |
|
|
|
Integer startTotal = screenProjectOrgDailyDao.selectProjectTotalByAgency(customerId, startTime, orgId); |
|
|
|
startTotal = null == startTotal ? NumConstant.ZERO : startTotal; |
|
|
|
total = endTotal - startTotal; |
|
|
|
List<ProjectCategoryResultDTO> startCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByGrid(customerId,startTime,orgId); |
|
|
|
List<ProjectCategoryResultDTO> startCategoryList = screenProjectCategoryOrgDailyDao.selectProjectCategoryByAgency(customerId,startTime,orgId); |
|
|
|
endCategoryList.forEach(e -> startCategoryList.stream().filter(s -> e.getCategoryCode().equals(s.getCategoryCode())).forEach(s -> e.setProjectTotal(subtract(e.getProjectTotal(),s.getProjectTotal())))); |
|
|
|
endCategoryList.forEach(e -> startCategoryList.stream().filter(s -> e.getCategoryCode().equals(s.getCategoryCode())).forEach(s -> e.setClosedProjectTotal(subtract(e.getClosedProjectTotal(),s.getClosedProjectTotal())))); |
|
|
|
} |
|
|
|