|
@@ -7821,6 +7821,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
HttpRespMsg httpRespMsg=new HttpRespMsg();
|
|
|
DateTimeFormatter df=DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
|
|
Integer companyId = userMapper.selectById(request.getHeader("token")).getCompanyId();
|
|
|
+ List<User> userList = userMapper.selectList(new QueryWrapper<User>().eq("company_id", companyId));
|
|
|
WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", companyId));
|
|
|
String startDate=null;
|
|
|
String endDate=null;
|
|
@@ -7888,19 +7889,41 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
List<TimelinessRateVO> list = (List<TimelinessRateVO>) map.get("list");
|
|
|
//String[] s={"人员","工号","部门","填报及时率"};
|
|
|
String[] s={MessageUtils.message("entry.personnel"),MessageUtils.message("entry.No"),MessageUtils.message("excel.department"),MessageUtils.message("excel.timeFill")};
|
|
|
- List<String> titleString = Arrays.asList(s);
|
|
|
+ List<String> titleString = new ArrayList<>(Arrays.asList(s));
|
|
|
+ for (Map<String, Object> objectMap : dataDetailList) {
|
|
|
+ List<Map<String,Object>> data = (List<Map<String, Object>>) objectMap.get("data");
|
|
|
+ Integer month = Integer.valueOf(String.valueOf(objectMap.get("month")));
|
|
|
+ for (Map<String, Object> datum : data) {
|
|
|
+ Integer week =Integer.valueOf(String.valueOf( datum.get("week")));
|
|
|
+ titleString.add(month+"月份第"+week+"周及时率");
|
|
|
+ }
|
|
|
+ }
|
|
|
List<List<String>> dataList=new ArrayList<>();
|
|
|
dataList.add(titleString);
|
|
|
for (TimelinessRateVO timelinessRateVO : list) {
|
|
|
List<String> item=new ArrayList<>();
|
|
|
if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
- item.add(timelinessRateVO.getCorpwxUserId()==null?"":timelinessRateVO.getCorpwxUserId());
|
|
|
+ item.add("$userName="+(timelinessRateVO.getCorpwxUserId()==null?"":timelinessRateVO.getCorpwxUserId())+"$");
|
|
|
}else {
|
|
|
item.add(timelinessRateVO.getUserName());
|
|
|
}
|
|
|
item.add(timelinessRateVO.getJobNumber());
|
|
|
item.add(timelinessRateVO.getDepartmentName());
|
|
|
item.add(timelinessRateVO.getTimelinessRate());
|
|
|
+ for (Map<String, Object> objectMap : dataDetailList) {
|
|
|
+ List<Map<String,Object>> data = (List<Map<String, Object>>) objectMap.get("data");
|
|
|
+ for (Map<String, Object> datum : data) {
|
|
|
+ Optional<User> first = userList.stream().filter(ul ->(ul.getJobNumber()!=null&&ul.getJobNumber().equals(timelinessRateVO.getJobNumber()))||ul.getName().equals(timelinessRateVO.getUserName())).findFirst();
|
|
|
+ String startDate1 =String.valueOf( datum.get("startDate"));
|
|
|
+ String endDate1 =String.valueOf( datum.get("endDate"));
|
|
|
+ HttpRespMsg itemMsg = getUserReportTimelinessRate(request, startDate1, endDate1, null, first.get().getId(), null, null);
|
|
|
+ HashMap itemMap= (HashMap) itemMsg.data;
|
|
|
+ List<TimelinessRateVO> itemList = (List<TimelinessRateVO>) itemMap.get("list");
|
|
|
+ for (TimelinessRateVO rateVO : itemList) {
|
|
|
+ item.add(rateVO.getTimelinessRate());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
dataList.add(item);
|
|
|
}
|
|
|
//生成excel文件导出
|