|
|
@@ -24,6 +24,7 @@ import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
|
@@ -65,6 +66,8 @@ public class TaskGroupServiceImpl extends ServiceImpl<TaskGroupMapper, TaskGroup
|
|
|
private TaskFilesService taskFilesService;
|
|
|
@Autowired
|
|
|
private TaskFilesMapper taskFilesMapper;
|
|
|
+ @Autowired
|
|
|
+ private TaskGroupService taskGroupService;
|
|
|
|
|
|
@Override
|
|
|
public void saveGroupIncharger(TaskGroup taskGroup,User user) {
|
|
|
@@ -209,8 +212,14 @@ public class TaskGroupServiceImpl extends ServiceImpl<TaskGroupMapper, TaskGroup
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void initGroup(Integer companyId, Integer projectId, User user) {
|
|
|
- List<GroupTemplate> groupTemplates = groupTemplateMapper.selectList(new QueryWrapper<GroupTemplate>().eq("company_id", user.getCompanyId()).eq("cre_with_pro", true));
|
|
|
+ public void initGroup(Integer companyId, Integer projectId, User user, Integer templateId) {
|
|
|
+ QueryWrapper<GroupTemplate> queryWrapper = new QueryWrapper<GroupTemplate>();
|
|
|
+ if (templateId != null) {
|
|
|
+ queryWrapper.eq("id", templateId);
|
|
|
+ } else {
|
|
|
+ queryWrapper.eq("company_id", user.getCompanyId()).eq("cre_with_pro", true);
|
|
|
+ }
|
|
|
+ List<GroupTemplate> groupTemplates = groupTemplateMapper.selectList(queryWrapper);
|
|
|
if (groupTemplates.size()==0){
|
|
|
//创建默认分组
|
|
|
TaskGroup group = new TaskGroup();
|
|
|
@@ -275,6 +284,24 @@ public class TaskGroupServiceImpl extends ServiceImpl<TaskGroupMapper, TaskGroup
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public HttpRespMsg syncStagesToProjects(User user, Integer templateId) {
|
|
|
+ //查找同名分组名称
|
|
|
+ GroupTemplate groupTemplate = groupTemplateMapper.selectById(templateId);
|
|
|
+ Integer companyId = groupTemplate.getCompanyId();
|
|
|
+ List<Project> projectList = projectMapper.selectList(new QueryWrapper<Project>().select("id").eq("company_id", companyId));
|
|
|
+ if (projectList.size() > 0) {
|
|
|
+ List<Integer> ids = projectList.stream().map(Project::getId).collect(Collectors.toList());
|
|
|
+ for (Integer id : ids) {
|
|
|
+ //先删除项目下的该分组的相关数据
|
|
|
+ taskGroupMapper.delete(new QueryWrapper<TaskGroup>().eq("project_id", id).eq("name", groupTemplate.getName()));
|
|
|
+ taskGroupService.initGroup(companyId, id, user, groupTemplate.getId());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ return new HttpRespMsg();
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public HttpRespMsg setTemplate(User user,setTemplate setTemplate){
|