|
@@ -126,6 +126,9 @@ public class TaskController {
|
|
|
@Autowired
|
|
|
private TaskFilesMapper taskFilesMapper;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private WxCorpInfoMapper wxCorpInfoMapper;
|
|
|
+
|
|
|
@PostMapping("/getTaskChargePage")
|
|
|
public HttpRespMsg getTaskChargePage(
|
|
|
QueryTaskChargePage queryBO, HttpServletRequest request) {
|
|
@@ -1370,6 +1373,8 @@ public class TaskController {
|
|
|
pids.add(-1);
|
|
|
List<Project> projectList = projectService.list(new QueryWrapper<Project>().in("id", pids));
|
|
|
TimeType timeType = timeTypeMapper.selectById(user.getCompanyId());
|
|
|
+ WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id",user.getCompanyId()));
|
|
|
+ CompanyDingding dingding = companyDingdingService.getOne(new LambdaQueryWrapper<CompanyDingding>().eq(CompanyDingding::getCompanyId, user.getCompanyId()));
|
|
|
if(1 == timeType.getTaskFileCharge()){
|
|
|
List<String> userIds = new ArrayList<>();
|
|
|
List<String> chargeOneIds = list.stream().filter(t-> org.apache.commons.lang3.StringUtils.isNotBlank(t.getChargeOneId()))
|
|
@@ -1379,14 +1384,14 @@ public class TaskController {
|
|
|
userIds.addAll(chargeOneIds);
|
|
|
userIds.addAll(chargeTwoIds);
|
|
|
|
|
|
- Map<String, String> userIdNameMap = new HashMap<>();
|
|
|
+ Map<String, User> userIdMap = new HashMap<>();
|
|
|
if(CollectionUtils.isNotEmpty(userIds)){
|
|
|
userIds = userIds.stream().distinct().collect(Collectors.toList());
|
|
|
List<User> users = userMapper.selectList(new LambdaQueryWrapper<User>()
|
|
|
.select(User::getId,User::getName)
|
|
|
.in(User::getId, userIds)
|
|
|
);
|
|
|
- userIdNameMap = users.stream().collect(Collectors.toMap(User::getId, User::getName));
|
|
|
+ userIdMap = users.stream().collect(Collectors.toMap(User::getId, t->t));
|
|
|
}
|
|
|
Map<Integer, List<TaskFiles>> taskFilesMap = new HashMap<>();
|
|
|
if(CollectionUtils.isNotEmpty(taskFilesList)){
|
|
@@ -1406,16 +1411,31 @@ public class TaskController {
|
|
|
} else if (0 == task.getFinalChargeStatus()) {
|
|
|
String name = "";
|
|
|
String statusText = "";
|
|
|
+ String userWxId = "";
|
|
|
+ String fileChargeStatusText = "";
|
|
|
int finalStatus = 1==task.getChargeStage()?task.getChargeOneStatus():task.getChargeTwoStatus();
|
|
|
String tmpUserId = 1==task.getChargeStage()?task.getChargeOneId():task.getChargeTwoId();
|
|
|
- name = userIdNameMap.getOrDefault(tmpUserId,"");
|
|
|
+ User chargeUser = userIdMap.get(tmpUserId);
|
|
|
+ if(null != chargeUser){
|
|
|
+ if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
+ userWxId = chargeUser.getCorpwxRealUserid();
|
|
|
+ }else if(dingding!=null&&dingding.getContactNeedTranslate()==1){
|
|
|
+ userWxId = chargeUser.getDingdingUserid();
|
|
|
+ }
|
|
|
+ name = chargeUser.getName();
|
|
|
+ }
|
|
|
switch (finalStatus)
|
|
|
{
|
|
|
case 0: statusText = "待审核"; task.setFileChargeStatus(0);break;
|
|
|
case 1: statusText = "通过";break;
|
|
|
case 2: statusText = "驳回"; task.setFileChargeStatus(2);break;
|
|
|
}
|
|
|
- task.setFinalChargeStatusText(statusText+"("+name+")");
|
|
|
+ if(org.apache.commons.lang3.StringUtils.isBlank(userWxId)){
|
|
|
+ fileChargeStatusText = statusText+"("+name+")";
|
|
|
+ }else{
|
|
|
+ fileChargeStatusText = statusText+"("+("$userName=" + userWxId + "$")+")";
|
|
|
+ }
|
|
|
+ task.setFinalChargeStatusText(fileChargeStatusText);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1552,6 +1572,7 @@ public class TaskController {
|
|
|
titleList.add("优先级");
|
|
|
titleList.add("任务名称");
|
|
|
titleList.add("执行人");
|
|
|
+ titleList.add("文件审核状态");
|
|
|
titleList.add("开始时间");
|
|
|
titleList.add("截止时间");
|
|
|
boolean anyMatch = projectList.stream().anyMatch(p -> p.getDeptId() != null && !StringUtils.isEmpty(p.getDeptId()));
|
|
@@ -1591,6 +1612,7 @@ public class TaskController {
|
|
|
}
|
|
|
}).collect(Collectors.joining(","));
|
|
|
item.add(executorString);
|
|
|
+ item.add(task.getFinalChargeStatusText());
|
|
|
item.add(task.getStartDate()==null?"":df.format(task.getStartDate()));
|
|
|
item.add(task.getEndDate()==null?"":df.format(task.getEndDate()));
|
|
|
if(anyMatch){
|