|
@@ -276,6 +276,8 @@ public class TaskController {
|
|
|
.map(TaskExecutor::getId).collect(Collectors.toList());
|
|
|
List<TaskExecutor> hasRemoveExecutor = oldExeList.stream().filter(old -> !task.getExecutorList().stream().anyMatch(newT -> newT.getId() != null && newT.getId().equals(old.getId()))).collect(Collectors.toList());
|
|
|
if(hasRemoveExecutor.size()>0){
|
|
|
+ //存在执行认为空的情况
|
|
|
+ hasRemoveExecutor=hasRemoveExecutor.stream().filter(h->h.getExecutorId()!=null).collect(Collectors.toList());
|
|
|
if((wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1)||(dingding!=null&&dingding.getContactNeedTranslate()==1)){
|
|
|
taskCommentString.append(",移除了执行人"+hasRemoveExecutor.stream().map(h->{
|
|
|
if(!h.getExecutorId().equals(user.getId())){
|
|
@@ -302,6 +304,7 @@ public class TaskController {
|
|
|
.map(TaskExecutor::getExecutorId).collect(Collectors.toList());
|
|
|
List<TaskExecutor> newAddExecutor = task.getExecutorList().stream().filter(newT -> !StringUtils.isEmpty(newT.getExecutorId()) && !oldExeList.stream().anyMatch(old -> newT.getExecutorId().equals(old.getExecutorId()))).collect(Collectors.toList());
|
|
|
if(newAddExecutor.size()>0){
|
|
|
+ newAddExecutor=newAddExecutor.stream().filter(n->n.getExecutorId()!=null).collect(Collectors.toList());
|
|
|
if((wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1)||(dingding!=null&&dingding.getContactNeedTranslate()==1)){
|
|
|
taskCommentString.append(",新增了执行人"+newAddExecutor.stream().map(h->{
|
|
|
if(!h.getExecutorId().equals(user.getId())){
|
|
@@ -315,6 +318,10 @@ public class TaskController {
|
|
|
}
|
|
|
}
|
|
|
for (TaskExecutor oldHa : oldHas) {
|
|
|
+ //执行人为空的情况跳过
|
|
|
+ if(oldHa.getExecutorId()==null){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
Optional<TaskExecutor> first = oldExeList.stream().filter(o -> o.getId().equals(oldHa.getId())).findFirst();
|
|
|
if(first.isPresent()){
|
|
|
if(!oldHa.getPlanHours().equals(first.get().getPlanHours())){
|