|
@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
import cn.hutool.core.util.ArrayUtil;
|
|
import cn.hutool.core.util.ArrayUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
@@ -281,6 +282,51 @@ public class CwProjectRecordsService extends ServiceImpl<CwProjectRecordsMapper,
|
|
cwProjectClientContactMapper.delete(new QueryWrapper<CwProjectClientContact>().lambda().eq(CwProjectClientContact::getProjectId,cwProjectRecords.getId()));
|
|
cwProjectClientContactMapper.delete(new QueryWrapper<CwProjectClientContact>().lambda().eq(CwProjectClientContact::getProjectId,cwProjectRecords.getId()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ // 项目保存的时候,将主要成员添加到项目组成员中
|
|
|
|
+ // 先删除当前项目的主要成员
|
|
|
|
+ cwProjectMembersService.remove(new LambdaQueryWrapper<CwProjectMembers>().eq(CwProjectMembers::getProjectId,cwProjectRecords.getId()).eq(CwProjectMembers::getIsImportant,"1"));
|
|
|
|
+ List<String> mlist = new ArrayList<>();
|
|
|
|
+ // 项目经理1
|
|
|
|
+ if (StringUtils.isNotBlank(cwProjectRecordsDTO.getProjectMasterId())){
|
|
|
|
+ mlist.add(cwProjectRecordsDTO.getProjectMasterId());
|
|
|
|
+ }
|
|
|
|
+ // 项目经理2
|
|
|
|
+ if (StringUtils.isNotBlank(cwProjectRecordsDTO.getRealHeader())) {
|
|
|
|
+ mlist.add(cwProjectRecordsDTO.getRealHeader());
|
|
|
|
+ }
|
|
|
|
+ // 现场负责人
|
|
|
|
+ if (StringUtils.isNotBlank(cwProjectRecordsDTO.getProjectLeaderId())) {
|
|
|
|
+ mlist.add(cwProjectRecordsDTO.getProjectLeaderId());
|
|
|
|
+ }
|
|
|
|
+ // 项目发起人
|
|
|
|
+ if (StringUtils.isNotBlank(cwProjectRecords.getCreateBy())) {
|
|
|
|
+ mlist.add(cwProjectRecords.getCreateBy());
|
|
|
|
+ }
|
|
|
|
+ if (CollectionUtil.isNotEmpty(mlist)) {
|
|
|
|
+ List<CwProjectMembers> haveList = cwProjectMembersService.list(new LambdaQueryWrapper<CwProjectMembers>().eq(CwProjectMembers::getProjectId,cwProjectRecords.getId()));
|
|
|
|
+ // 将已有的成员(不是主要成员),剔除掉,不重复新增
|
|
|
|
+ Iterator<String> it = mlist.iterator();
|
|
|
|
+ while(it.hasNext()){
|
|
|
|
+ String x = it.next();
|
|
|
|
+ haveList.stream().forEach(have -> {
|
|
|
|
+ if (x.equals(have.getUserId())) {
|
|
|
|
+ it.remove();
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ // 新增主要成员
|
|
|
|
+ List<CwProjectMembers> members = new ArrayList<>();
|
|
|
|
+ List<String> collect = mlist.stream().distinct().collect(Collectors.toList());
|
|
|
|
+ collect.stream().forEach(item -> {
|
|
|
|
+ CwProjectMembers cwProjectMembers = new CwProjectMembers();
|
|
|
|
+ cwProjectMembers.setIsImportant("1");
|
|
|
|
+ cwProjectMembers.setProjectId(cwProjectRecords.getId());
|
|
|
|
+ cwProjectMembers.setUserId(item);
|
|
|
|
+ cwProjectMembers.setStatus("0");
|
|
|
|
+ members.add(cwProjectMembers);
|
|
|
|
+ });
|
|
|
|
+ cwProjectMembersService.saveBatch(members);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
return cwProjectRecords.getId();
|
|
return cwProjectRecords.getId();
|
|
}
|
|
}
|