diff --git a/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java b/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java index 7a14081d..0573485a 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java +++ b/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java @@ -79,4 +79,22 @@ public class RoleDto { @ApiModelProperty("项目id") private Long projectId; } + @Data + @ApiModel("修改角色是否展示") + public static class QueryRoleIsShows { + @ApiModelProperty("项目id") + private Long projectId; + @ApiModelProperty("角色id") + private List roleIds; + @ApiModelProperty("是否展示 true是展示,false是删除不展示") + private Boolean isShow; + } + @Data + @ApiModel("为角色排序得集合") + public static class UpRoleShowsOrder { + @ApiModelProperty("项目id") + private Long projectId; + @ApiModelProperty("按照展示的排序进行排序号") + private List roleIds; + } } diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java index f92d163a..e28a5382 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java @@ -1,5 +1,6 @@ package com.ccsens.tall.bean.vo; +import com.sun.org.apache.xpath.internal.operations.Bool; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -36,6 +37,8 @@ public class RoleVo { private String name; @ApiModelProperty("角色排序") private Integer sequence; + @ApiModelProperty("是否是pm 是pm;true 不是pm; false ") + private Boolean isPM; } @Data @ApiModel("添加时返回成员信息") diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java index b9e509f7..ca3fe9e5 100644 --- a/tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java @@ -72,18 +72,18 @@ public interface ProRoleDao extends ProRoleMapper{ /** * 查询已经存在的角色 - * @param projectId + * @param memberId * @return */ - List queryRoleShowslistAfter(Long projectId); + List queryRoleShowslistAfter(Long memberId); /** * 查询未添加的角色 - * @param memberId + * @param projectId * @param listBeforeId * @return */ - List queryRoleShowslistBefore(Long memberId, List listBeforeId); + List queryRoleShowslistBefore(Long projectId, List listBeforeId); // /** // * 查找项目下的所有成员的名字用“,”分隔 diff --git a/tall/src/main/java/com/ccsens/tall/service/ExcelService.java b/tall/src/main/java/com/ccsens/tall/service/ExcelService.java index 710fac62..14f29455 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ExcelService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ExcelService.java @@ -8,6 +8,7 @@ import com.ccsens.tall.bean.dto.WpsDto; import com.ccsens.tall.bean.po.*; import com.ccsens.tall.bean.vo.ProjectVo; import com.ccsens.tall.persist.dao.*; +import com.ccsens.tall.persist.mapper.ProTaskDeliverMapper; import com.ccsens.util.*; import com.ccsens.util.cron.CronConstant; import com.ccsens.util.cron.NatureToDate; @@ -82,6 +83,8 @@ public class ExcelService implements IExcelService { private ProRoleDao proRoleDao; @Resource private ProPluginConfigDao proPluginConfigDao; + @Resource + private ProTaskDeliverMapper proTaskDeliverMapper; @Override @@ -1001,6 +1004,7 @@ public class ExcelService implements IExcelService { // else { // //不是分组任务,直接添加交付物 readDeliverSheet(deliver, xssfWorkbook, taskDetail.getId()); + // } //添加任务 proTaskDetailService.saveTaskDetail(taskDetail); @@ -1178,45 +1182,60 @@ public class ExcelService implements IExcelService { */ @Override public void readDeliverSheet(String deliverCell, XSSFWorkbook xssfWorkbook, Long taskId) { - if (StrUtil.isNotEmpty(deliverCell)) { - String str = ""; - if (deliverCell.length() > 4) { - str = deliverCell.substring(0, 3); - } - if ("关联表".equalsIgnoreCase(str)) { - String subStr = deliverCell.substring(4); - XSSFSheet subSheet = xssfWorkbook.getSheet(subStr); - if(ObjectUtil.isNull(subSheet)){ - throw new BaseException(CodeEnum.WBS_NOT_SUB_TASK); - } - for (int i = 2; i <= subSheet.getLastRowNum(); i++) { - XSSFRow row = subSheet.getRow(i); - if(ObjectUtil.isNull(row)){ - continue; - } - String deliver = ExcelUtil.getCellValue(row.getCell(1)); - if (StrUtil.isNotEmpty(deliver)) { - ProTaskDeliver taskDeliver = new ProTaskDeliver(); - taskDeliver.setId(snowflake.nextId()); - taskDeliver.setName(deliver); - taskDeliver.setTaskDetailId(taskId); - taskDeliver.setIsInput(0); - taskDeliver.setIsFinal(0); - if (i == subSheet.getLastRowNum()) { - taskDeliver.setIsFinal(1); - } - taskDeliverService.saveDeliver(taskDeliver); - } +// if (StrUtil.isNotEmpty(deliverCell)) { +// String str = ""; +// if (deliverCell.length() > 4) { +// str = deliverCell.substring(0, 3); +// } +// if ("关联表".equalsIgnoreCase(str)) { +// String subStr = deliverCell.substring(4); +// XSSFSheet subSheet = xssfWorkbook.getSheet(subStr); +// if(ObjectUtil.isNull(subSheet)){ +// throw new BaseException(CodeEnum.WBS_NOT_SUB_TASK); +// } +// for (int i = 2; i <= subSheet.getLastRowNum(); i++) { +// XSSFRow row = subSheet.getRow(i); +// if(ObjectUtil.isNull(row)){ +// continue; +// } +// String deliver = ExcelUtil.getCellValue(row.getCell(1)); +// if (StrUtil.isNotEmpty(deliver)) { +// ProTaskDeliver taskDeliver = new ProTaskDeliver(); +// taskDeliver.setId(snowflake.nextId()); +// taskDeliver.setName(deliver); +// taskDeliver.setTaskDetailId(taskId); +// taskDeliver.setIsInput(0); +// taskDeliver.setIsFinal(0); +// if (i == subSheet.getLastRowNum()) { +// taskDeliver.setIsFinal(1); +// } +// taskDeliverService.saveDeliver(taskDeliver); +// } +// } +// } else { +// ProTaskDeliver taskDeliver = new ProTaskDeliver(); +// taskDeliver.setId(snowflake.nextId()); +// taskDeliver.setTaskDetailId(taskId); +// taskDeliver.setName(deliverCell); +// taskDeliver.setIsInput(0); +// taskDeliver.setIsFinal(1); +// taskDeliverService.saveDeliver(taskDeliver); +// } +// } + String regex=",|,|;|:|;|:|、|。"; + deliverCell= deliverCell.replace("\n","").replace("\r",""); + String[] fileNames= deliverCell.split(regex); + if(fileNames.length>0){ + for (int i = 0; i < fileNames.length; i++) { + if(StringUtils.isNotBlank(fileNames[i])){ + ProTaskDeliver proTaskDeliver=new ProTaskDeliver(); + proTaskDeliver.setName(fileNames[i].trim()); + proTaskDeliver.setId(snowflake.nextId()); + proTaskDeliver.setTaskDetailId(taskId); + proTaskDeliverMapper.insertSelective(proTaskDeliver); } - } else { - ProTaskDeliver taskDeliver = new ProTaskDeliver(); - taskDeliver.setId(snowflake.nextId()); - taskDeliver.setTaskDetailId(taskId); - taskDeliver.setName(deliverCell); - taskDeliver.setIsInput(0); - taskDeliver.setIsFinal(1); - taskDeliverService.saveDeliver(taskDeliver); } + } } @@ -1240,7 +1259,7 @@ public class ExcelService implements IExcelService { throw new BaseException(CodeEnum.NOT_ROW.addMsg(sheet.getSheetName() + (2))); } - for (int i = 2; i < sheet.getLastRowNum() + 1; i++) { + for (int i = 3; i < sheet.getLastRowNum() + 1; i++) { List taskNameList = null; XSSFRow pluginRow = sheet.getRow(i); if(ObjectUtil.isNull(pluginRow)){ diff --git a/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java index 18d1299a..3c9df8fd 100644 --- a/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java @@ -66,4 +66,8 @@ public interface IProRoleService { * @return */ RoleVo.JueSeByProIdLists queryRoleShows(QueryDto param); + + void queryRoleIsShows(QueryDto param); + + void upRoleShowsOrder(QueryDto param); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java index 6e7a55be..dc79d93b 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java @@ -12,16 +12,14 @@ import com.ccsens.tall.bean.vo.ProjectVo; import com.ccsens.tall.bean.vo.RoleVo; import com.ccsens.tall.bean.vo.TaskVo; import com.ccsens.tall.persist.dao.*; -import com.ccsens.tall.persist.mapper.ProMemberMapper; -import com.ccsens.tall.persist.mapper.ProMemberRoleMapper; -import com.ccsens.tall.persist.mapper.ProMemberRoleShowMapper; -import com.ccsens.tall.persist.mapper.ProUserAttentionRoleMapper; +import com.ccsens.tall.persist.mapper.*; import com.ccsens.util.CodeEnum; import com.ccsens.util.WebConstant; import com.ccsens.util.bean.dto.QueryDto; import com.ccsens.util.exception.BaseException; import io.swagger.models.auth.In; import lombok.extern.slf4j.Slf4j; +import org.aspectj.apache.bcel.classfile.Code; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; @@ -29,6 +27,7 @@ import org.w3c.dom.ls.LSInput; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -71,6 +70,10 @@ public class ProRoleService implements IProRoleService { private ProMemberMapper proMemberMapper; @Resource private ProMemberRoleMapper proMemberRoleMapper; + @Resource + private ProRoleMapper proRoleMapper; + @Resource + private ProRoleExcludeMapper proRoleExcludeMapper; @Override public void saveProRole(ProRole proRole) { proRoleDao.insertSelective(proRole); @@ -265,6 +268,7 @@ public class ProRoleService implements IProRoleService { proMemberRoleShowExample.createCriteria().andMemberIdEqualTo(memberId).andRecStatusEqualTo((byte)0); List proMemberRoleShows = proMemberRoleShowMapper.selectByExample(proMemberRoleShowExample); if(CollectionUtil.isEmpty(proMemberRoleShows)){ + Integer[] seq=new Integer[]{0}; //需要从原表中导入数据 ProMemberRoleExample proMemberRoleExample=new ProMemberRoleExample(); proMemberRoleExample.createCriteria().andMemberIdEqualTo(memberId).andRecStatusEqualTo((byte)0); @@ -272,7 +276,7 @@ public class ProRoleService implements IProRoleService { if(CollectionUtil.isNotEmpty(proMemberRoles)){ ProMemberRoleShow proMemberRoleShow=new ProMemberRoleShow(); Long finalMemberId = memberId; - Integer[] seq=new Integer[]{0}; + proMemberRoles.forEach(action->{ proMemberRoleShow.setId(action.getId()); proMemberRoleShow.setMemberId(finalMemberId); @@ -281,6 +285,68 @@ public class ProRoleService implements IProRoleService { proMemberRoleShowMapper.insertSelective(proMemberRoleShow); }); } + //这里插入项目经理 + + + //查一下项目经理的角色id, + ProRoleExample proRoleExample=new ProRoleExample(); + proRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andNameEqualTo(WebConstant.ROLE_NAME.PM.value).andParentIdEqualTo(0L).andProjectIdEqualTo(projectId); + //一级角色项目经理 + List jili=proRoleMapper.selectByExample(proRoleExample).stream().map(action->action.getId()).collect(Collectors.toList()); + //二级角色项目经理 + ProRoleExample proRoleExample1=new ProRoleExample(); + proRoleExample1.createCriteria().andRecStatusEqualTo((byte)0).andParentIdIn(jili); + List proRoles = proRoleMapper.selectByExample(proRoleExample1); + List jili1=proRoles.stream().map(action->action.getId()).collect(Collectors.toList()); + //是否是pm true是经理 false不是经理 + boolean[] isPm = new boolean[]{false}; + //经理是否对他不可见 true不可见 false可见 + boolean[] isshow=new boolean[]{false}; + + //查询已经添加的角色 + List listBefor=proRoleDao.queryRoleShowslistAfter(memberId); + List listBeforeId= listBefor.stream().map(action ->{return action.getId();}).collect(Collectors.toList()); + + //判断该成员是不是项目经理 + ProMemberRoleExample proMemberRoleExample1=new ProMemberRoleExample(); + proMemberRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andMemberIdEqualTo(memberId).andRoleIdEqualTo(jili1.get(0)); + List proMemberRoles1 = proMemberRoleMapper.selectByExample(proMemberRoleExample1); + if(CollectionUtil.isEmpty(proMemberRoles1)){ + isPm[0]=false; + }else { + isPm[0]=true; + } + + if(!isPm[0]){ + //先按照一个经理的算 + ProRoleExcludeExample proRoleExcludeExample=new ProRoleExcludeExample(); + proRoleExcludeExample.createCriteria().andRecStatusEqualTo((byte)0).andRoleIdEqualTo(jili1.get(0)); + List proRoleExcludes = proRoleExcludeMapper.selectByExample(proRoleExcludeExample); + proRoleExcludes.forEach(action->{ + //查看查询出的不可见角色id是否在角色id里面 + if(listBeforeId.contains(action.getOtherRoleId())) + { + isshow[0]=true; + } + }); + } + if(!isPm[0]&&!isshow[0]){ + //添加经理 + if(!listBeforeId.contains(jili1.get(0))) { + RoleVo.JueSeByProId jueSeByProId = new RoleVo.JueSeByProId(); + jueSeByProId.setId(proRoles.get(0).getId()); + jueSeByProId.setName(proRoles.get(0).getName()); + jueSeByProId.setSequence(proRoles.get(0).getSequence()); + listBefor.add(jueSeByProId); + //顺道插入到show表里面 + ProMemberRoleShow proMemberRoleShow=new ProMemberRoleShow(); + proMemberRoleShow.setId(snowflake.nextId()); + proMemberRoleShow.setRoleId(proRoles.get(0).getId()); + proMemberRoleShow.setMemberId(memberId); + proMemberRoleShow.setSequence(0); + proMemberRoleShowMapper.insertSelective(proMemberRoleShow); + } + } } //查询二级角色 List memberRoleList; @@ -646,9 +712,177 @@ public class ProRoleService implements IProRoleService { @Override public RoleVo.JueSeByProIdLists queryRoleShows(QueryDto param) { + RoleVo.JueSeByProIdLists jueSeByProIdLists=new RoleVo.JueSeByProIdLists(); //获取成员id + Long memberId = queryMemberId(param.getParam().getProjectId(), param.getUserId()); + //获取经理角色id + ProRoleExample proRoleExample=new ProRoleExample(); + proRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andNameEqualTo(WebConstant.ROLE_NAME.PM.value).andParentIdEqualTo(0L).andProjectIdEqualTo(param.getParam().getProjectId()); + //一级角色项目经理 + List jili=proRoleMapper.selectByExample(proRoleExample).stream().map(action->action.getId()).collect(Collectors.toList()); + //二级角色项目经理 + ProRoleExample proRoleExample1=new ProRoleExample(); + proRoleExample1.createCriteria().andRecStatusEqualTo((byte)0).andParentIdIn(jili); + List proRoles = proRoleMapper.selectByExample(proRoleExample1); + List jili1=proRoles.stream().map(action->action.getId()).collect(Collectors.toList()); + + //查询已经添加的角色 + List listBefor=proRoleDao.queryRoleShowslistAfter(memberId); + List listBeforeId= listBefor.stream().map(action ->{return action.getId();}).collect(Collectors.toList()); + for (int i = 0; i < listBefor.size(); i++) { + if(jili1.contains(listBefor.get(i).getId())){ + listBefor.get(i).setIsPM(true); + }else { + listBefor.get(i).setIsPM(false); + } + } + //查询未添加的角色 + List listAfter=proRoleDao.queryRoleShowslistBefore(param.getParam().getProjectId(),listBeforeId); + jueSeByProIdLists.setListAfter(listAfter); + jueSeByProIdLists.setListBefore(listBefor); + return jueSeByProIdLists; + } + + /** + * 修改角色是否展示 + * @param param + */ + @Override + public void queryRoleIsShows(QueryDto param) { + //获取成员id + Long memberId=queryMemberId(param.getParam().getProjectId(),param.getUserId()); + //获取经理得id + ProRoleExample proRoleExample=new ProRoleExample(); + proRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andNameEqualTo(WebConstant.ROLE_NAME.PM.value).andParentIdEqualTo(0L).andProjectIdEqualTo(param.getParam().getProjectId()); + //一级角色项目经理 + List jili=proRoleMapper.selectByExample(proRoleExample).stream().map(action->action.getId()).collect(Collectors.toList()); + //二级角色项目经理 + ProRoleExample proRoleExample1=new ProRoleExample(); + proRoleExample1.createCriteria().andRecStatusEqualTo((byte)0).andParentIdIn(jili); + List proRoles = proRoleMapper.selectByExample(proRoleExample1); + List jili1=proRoles.stream().map(action->action.getId()).collect(Collectors.toList()); + + if(param.getParam().getIsShow()){ + //展示的 增加的 不需要考虑是否为经理 + ProMemberRoleShowExample proMemberRoleShowExample=new ProMemberRoleShowExample(); + proMemberRoleShowExample.createCriteria().andRecStatusEqualTo((byte) 0).andMemberIdEqualTo(memberId); + List proMemberRoleShows = proMemberRoleShowMapper.selectByExample(proMemberRoleShowExample); + if((proMemberRoleShows.size()+param.getParam().getRoleIds().size())>10){ + throw new BaseException(CodeEnum.CHAOGUOSHI); + }else { + + if(param.getParam().getRoleIds().size()>0){ + //查一下目前最大得排序是多少 + Integer[] seq=new Integer[]{proMemberRoleShows.stream().mapToInt(action->action.getSequence()).max().getAsInt()}; + ProMemberRoleShowExample proMemberRoleShowExample1=new ProMemberRoleShowExample(); + proMemberRoleShowExample1.createCriteria().andMemberIdEqualTo(memberId).andRoleIdIn(param.getParam().getRoleIds()).andRecStatusEqualTo((byte)0); + List proMemberRoleShows1 = proMemberRoleShowMapper.selectByExample(proMemberRoleShowExample1); + if(proMemberRoleShows1.size()>0){ + throw new BaseException(CodeEnum.CHONGFUTIJIAO); + } + param.getParam().getRoleIds().forEach(ac->{ + + ProMemberRoleShow proMemberRoleShow=new ProMemberRoleShow(); + proMemberRoleShow.setId(snowflake.nextId()); + proMemberRoleShow.setRoleId(ac); + proMemberRoleShow.setMemberId(memberId); + if(jili1.contains(ac)){ + proMemberRoleShow.setSequence(0); + }else { + proMemberRoleShow.setSequence(++seq[0]); + } + proMemberRoleShowMapper.insertSelective(proMemberRoleShow); + }); + } + } + }else { + //不展示的,删除的 + if(param.getParam().getRoleIds().size()>0){ + //先判断是不是经理了 + if(param.getParam().getRoleIds().contains(jili1.get(0))){ + throw new BaseException(CodeEnum.BAOHANJINLI); + } + for (int i = 0; i param) { + if(param.getParam().getRoleIds().size()<=1){ + throw new BaseException(CodeEnum.ZUISHAOCHUANLIANGE); + } + Long memberId=queryMemberId(param.getParam().getProjectId(),param.getUserId()); + ProRoleExample proRoleExample=new ProRoleExample(); + proRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andNameEqualTo(WebConstant.ROLE_NAME.PM.value).andParentIdEqualTo(0L).andProjectIdEqualTo(param.getParam().getProjectId()); + //一级角色项目经理 + List jili=proRoleMapper.selectByExample(proRoleExample).stream().map(action->action.getId()).collect(Collectors.toList()); + //二级角色项目经理 + ProRoleExample proRoleExample1=new ProRoleExample(); + proRoleExample1.createCriteria().andRecStatusEqualTo((byte)0).andParentIdIn(jili); + List proRoles = proRoleMapper.selectByExample(proRoleExample1); + List jili1=proRoles.stream().map(action->action.getId()).collect(Collectors.toList()); + for (int i = param.getParam().getRoleIds().size() - 1; i >= 0; i--) { + if(jili1.get(0).equals(param.getParam().getRoleIds().get(i))){ + param.getParam().getRoleIds().remove(i); + } + } + //先查出来在数据库中这几个数据中最大的序号是多少,然后再最大的上面进行加加操作 + ProMemberRoleShowExample proMemberRoleShowExample=new ProMemberRoleShowExample(); + proMemberRoleShowExample.createCriteria().andRoleIdIn(param.getParam().getRoleIds()).andRecStatusEqualTo((byte)0); + List proMemberRoleShows = proMemberRoleShowMapper.selectByExample(proMemberRoleShowExample); + Integer[] seq=new Integer[]{ proMemberRoleShows.stream().mapToInt(action->action.getSequence()).max().getAsInt()}; + param.getParam().getRoleIds().forEach(action->{ + ProMemberRoleShowExample proMemberRoleShowExample1=new ProMemberRoleShowExample(); + proMemberRoleShowExample1.createCriteria().andRecStatusEqualTo((byte)0).andMemberIdEqualTo(memberId).andRoleIdEqualTo(action); + ProMemberRoleShow proMemberRoleShow=new ProMemberRoleShow(); + proMemberRoleShow.setSequence(++seq[0]); + proMemberRoleShowMapper.updateByExampleSelective(proMemberRoleShow,proMemberRoleShowExample1); + }); + } + + /** + * 是否是pm + * @return + */ + public boolean queryIsPm(Long projectId,Long memberId){ + ProRoleExample proRoleExample=new ProRoleExample(); + proRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andNameEqualTo(WebConstant.ROLE_NAME.PM.value).andParentIdEqualTo(0L).andProjectIdEqualTo(projectId); + //一级角色项目经理 + List jili=proRoleMapper.selectByExample(proRoleExample).stream().map(action->action.getId()).collect(Collectors.toList()); + //二级角色项目经理 + ProRoleExample proRoleExample1=new ProRoleExample(); + proRoleExample1.createCriteria().andRecStatusEqualTo((byte)0).andParentIdIn(jili); + List proRoles = proRoleMapper.selectByExample(proRoleExample1); + List jili1=proRoles.stream().map(action->action.getId()).collect(Collectors.toList()); + //目前考虑的是只有一个经理 + ProMemberRoleExample proMemberRoleExample=new ProMemberRoleExample(); + proMemberRoleExample.createCriteria().andRecStatusEqualTo((byte)0).andMemberIdEqualTo(memberId).andRoleIdEqualTo(jili1.get(0)); + List proMemberRoles = proMemberRoleMapper.selectByExample(proMemberRoleExample); + if(CollectionUtil.isEmpty(proMemberRoles)){ + return false; + } + return true; + } + + /** + * 查询成员id + * @return + */ + public Long queryMemberId(Long projectId,Long userId){ ProMemberExample proMemberExample=new ProMemberExample(); - proMemberExample.createCriteria().andUserIdEqualTo(param.getUserId()).andProjectIdEqualTo(param.getParam().getProjectId()).andRecStatusEqualTo((byte)0); + proMemberExample.createCriteria().andUserIdEqualTo(userId).andProjectIdEqualTo(projectId).andRecStatusEqualTo((byte)0); List proMembers = proMemberMapper.selectByExample(proMemberExample); Long memberId=0L; if(CollectionUtil.isNotEmpty(proMembers)&&proMembers.size()==1){ @@ -656,13 +890,6 @@ public class ProRoleService implements IProRoleService { }else { throw new BaseException(CodeEnum.CHONGFU); } - RoleVo.JueSeByProIdLists jueSeByProIdLists=new RoleVo.JueSeByProIdLists(); - //查询已经添加的角色 - List listAfter=proRoleDao.queryRoleShowslistAfter(param.getParam().getProjectId()); - List listBeforeId= listAfter.stream().map(action ->{ - return action.getId(); - }).collect(Collectors.toList()); - List listBefor=proRoleDao.queryRoleShowslistBefore(memberId,listBeforeId); - return null; + return memberId; } } diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java index d05580a0..6f8ca570 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java @@ -83,6 +83,7 @@ public class TaskDeliverService implements ITaskDeliverService { public void saveProTaskInputDoc(String[] inputs,Long taskId){ for (int i = 0; i < inputs.length; i++) { if(StringUtils.isNotBlank(inputs[i])){ + inputs[i]=inputs[i].replace("\r","").replace("\n",""); ProTaskInputDoc proTaskInputDoc = new ProTaskInputDoc(); proTaskInputDoc.setId(snowflake.nextId()); proTaskInputDoc.setTaskDetailId(taskId); diff --git a/tall/src/main/java/com/ccsens/tall/web/RoleController.java b/tall/src/main/java/com/ccsens/tall/web/RoleController.java index 426d55d9..2930ab70 100644 --- a/tall/src/main/java/com/ccsens/tall/web/RoleController.java +++ b/tall/src/main/java/com/ccsens/tall/web/RoleController.java @@ -128,4 +128,20 @@ public class RoleController { RoleVo.JueSeByProIdLists jueSeByProIdLists=proRoleService.queryRoleShows(param); return JsonResponse.newInstance().ok(jueSeByProIdLists); } + @MustLoginTall + @ApiOperation(value = "修改角色是否展示",notes = "") + @RequestMapping(value = "/queryRoleIsShows", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse queryRoleIsShows(@ApiParam @Validated @RequestBody QueryDto param){ + log.info("传入参数:{}", param); + proRoleService.queryRoleIsShows(param); + return JsonResponse.newInstance().ok(); + } + @MustLoginTall + @ApiOperation(value = "给角色排序",notes = "") + @RequestMapping(value = "/upRoleShowsOrder", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse upRoleShowsOrder(@ApiParam @Validated @RequestBody QueryDto param){ + log.info("传入参数:{}", param); + proRoleService.upRoleShowsOrder(param); + return JsonResponse.newInstance().ok(); + } } diff --git a/tall/src/main/resources/mapper_dao/ProRoleDao.xml b/tall/src/main/resources/mapper_dao/ProRoleDao.xml index 04618218..3624e021 100644 --- a/tall/src/main/resources/mapper_dao/ProRoleDao.xml +++ b/tall/src/main/resources/mapper_dao/ProRoleDao.xml @@ -311,14 +311,25 @@ \ No newline at end of file diff --git a/util/src/main/java/com/ccsens/util/CodeEnum.java b/util/src/main/java/com/ccsens/util/CodeEnum.java index b7817af2..9e0276ca 100644 --- a/util/src/main/java/com/ccsens/util/CodeEnum.java +++ b/util/src/main/java/com/ccsens/util/CodeEnum.java @@ -189,6 +189,10 @@ public enum CodeEnum { DOC_REPEAT(158,"输入文档已存在",true), NOTNAME(159,"未找到该列",true), CHONGFU(160,"该成员在项目下有多个成员角色",true), + CHAOGUOSHI(161,"角色展示不能超过10个",true), + BAOHANJINLI(162,"不能删除包含经理得角色",true), + CHONGFUTIJIAO(163,"不要重复提交",true), + ZUISHAOCHUANLIANGE(164,"排序最少需要传入两个",true), ;