月报加绩效

This commit is contained in:
2025-05-19 13:24:42 +08:00
parent 3d80da0b84
commit acb8eb9532
2 changed files with 21 additions and 1 deletions

View File

@ -2,6 +2,7 @@ package com.sa.zentao.dao;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.sa.zentao.entity.ZtMonthScore;
import com.sa.zentao.enums.UserType;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -51,4 +52,6 @@ public class WorkDetailsDTO implements Serializable {
private UserType userType;
@ExcelIgnore
private String account;
private ZtMonthScopeDTO monthScoreDto;
}

View File

@ -92,6 +92,9 @@ public class ZtProjectServiceImpl extends ServiceImpl<ZtProjectMapper, ZtProject
@Autowired
private IZtEffortService effortService;
@Autowired
private IZtMonthScoreService monthScoreService;
List<String> pLis = new ArrayList<>() {{
add("develop");
add("test");
@ -1909,6 +1912,7 @@ public class ZtProjectServiceImpl extends ServiceImpl<ZtProjectMapper, ZtProject
}
List result =new ArrayList();
Map<String,ZtMonthScore> scoreMap=getAccountScoreMap(date,accountIds);
for (String account :accountIds) {
@ -1921,7 +1925,12 @@ public class ZtProjectServiceImpl extends ServiceImpl<ZtProjectMapper, ZtProject
}
var d=new WorkDetailsDTO();
ZtMonthScore ztMonthScore = scoreMap.get(account);
if(ztMonthScore!=null){
ZtMonthScopeDTO ztMonthScopeDTO = new ZtMonthScopeDTO();
BeanUtils.copyProperties(ztMonthScore,ztMonthScopeDTO);
d.setMonthScoreDto(ztMonthScopeDTO);
}
d.setUserType(ztUser.getUserType());
d.setUserName(ztUser.getNickname());
d.setAccount(account);
@ -1976,6 +1985,14 @@ public class ZtProjectServiceImpl extends ServiceImpl<ZtProjectMapper, ZtProject
return new PageInfo(result);
}
private Map<String, ZtMonthScore> getAccountScoreMap(Date date, List<String> accountIds) {
List<ZtMonthScore> scoreList = monthScoreService.list(new QueryWrapper<ZtMonthScore>().lambda().eq(ZtMonthScore::getDateStr, DateUtils.formatDate(date, "yyyy-MM")).in(ZtMonthScore::getAccount, accountIds));
if(CollectionUtils.isEmpty(scoreList)){
return new HashMap<>();
}else{
return scoreList.stream().collect(Collectors.toMap(ZtMonthScore::getAccount,o->o));
}
}
//修改项目集