|
@@ -73,47 +73,44 @@ public class FillGatherTaskServiceImpl extends BaseServiceImpl<FillGatherTaskMap
|
|
|
FillGatherTask task1 = mapper.selectOne(new FillGatherTask().setId(dto.getId()));
|
|
|
FillGatherTask task = new FillGatherTask();
|
|
|
task.setId(dto.getId());
|
|
|
- if (dto.getIsAdd()==0){
|
|
|
- UserInfo userInfo = SecurityUtils.getUserInfo();
|
|
|
- SysRole sysRole = new SysRole();
|
|
|
- sysRole.setRoleName("调度人员");
|
|
|
- SysRole role = sysRoleMapper.selectOne(sysRole);
|
|
|
- if (userInfo.getSuperAdmin()==1){
|
|
|
- task.setTotalNum(task1.getTotalNum()-dto.getDetailIds().size());
|
|
|
- task.setWaitNum(task1.getTotalNum()-dto.getDetailIds().size());
|
|
|
- deleteDetails(dto.getDetailIds());
|
|
|
- }else if (userInfo.getRoleCodes().size()>0){
|
|
|
- for (int i = 0;i<userInfo.getRoleCodes().size();i++){
|
|
|
- if (userInfo.getRoleCodes().get(i).equals(role.getRoleCode())){
|
|
|
- //删除
|
|
|
- task.setTotalNum(task1.getTotalNum()-dto.getDetailIds().size());
|
|
|
- task.setWaitNum(task1.getTotalNum()-dto.getDetailIds().size());
|
|
|
- deleteDetails(dto.getDetailIds());
|
|
|
- break;
|
|
|
- }else if (i==userInfo.getRoleCodes().size()-1){
|
|
|
- throw new DeniedException("对不起,只有调度人员可以删除巡检任务!");
|
|
|
- }
|
|
|
+ UserInfo userInfo = SecurityUtils.getUserInfo();
|
|
|
+ SysRole sysRole = new SysRole();
|
|
|
+ sysRole.setRoleName("调度人员");
|
|
|
+ SysRole role = sysRoleMapper.selectOne(sysRole);
|
|
|
+ List<String> rolecodes = userInfo.getRoleCodes();
|
|
|
+ boolean flag=false;
|
|
|
+ if (rolecodes!=null&&rolecodes.size()>0){
|
|
|
+ for (int i=0;i<rolecodes.size();i++){
|
|
|
+ if (rolecodes.get(i).equals(role.getRoleCode())){
|
|
|
+ flag=true;
|
|
|
+ break;
|
|
|
}
|
|
|
- }else {
|
|
|
- throw new DeniedException("对不起,只有调度人员可以删除巡检任务!");
|
|
|
}
|
|
|
-
|
|
|
- }else if (dto.getIsAdd()==1){
|
|
|
- List<FillGatherTaskDetailVO> detailVOS = fillGatherTaskDetailMapper.selectVOByTaskId(task1.getId());
|
|
|
- StringBuffer sb = new StringBuffer();
|
|
|
- for (FillGatherTaskDetailVO vo:detailVOS){
|
|
|
- sb.append(vo.getSbId());
|
|
|
- }
|
|
|
- for (String sbId:dto.getSbIds()){
|
|
|
- if (sb.toString().contains(sbId)) {
|
|
|
- throw new DeniedException("设备id为"+sbId+"的设备已添加在巡检任务中,不可重复添加!");
|
|
|
+ }
|
|
|
+ if (userInfo.getSuperAdmin()==1||flag) {
|
|
|
+ if (dto.getIsAdd() == 0) {
|
|
|
+ task.setTotalNum(task1.getTotalNum() - dto.getDetailIds().size());
|
|
|
+ task.setWaitNum(task1.getTotalNum() - dto.getDetailIds().size());
|
|
|
+ deleteDetails(dto.getDetailIds());
|
|
|
+ } else if (dto.getIsAdd() == 1) {
|
|
|
+ List<FillGatherTaskDetailVO> detailVOS = fillGatherTaskDetailMapper.selectVOByTaskId(task1.getId());
|
|
|
+ StringBuffer sb = new StringBuffer();
|
|
|
+ for (FillGatherTaskDetailVO vo : detailVOS) {
|
|
|
+ sb.append(vo.getSbId());
|
|
|
}
|
|
|
+ for (String sbId : dto.getSbIds()) {
|
|
|
+ if (sb.toString().contains(sbId)) {
|
|
|
+ throw new DeniedException("设备id为" + sbId + "的设备已添加在巡检任务中,不可重复添加!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ task.setTotalNum(task1.getTotalNum() + dto.getSbIds().size());
|
|
|
+ task.setWaitNum(task1.getTotalNum() + dto.getSbIds().size());
|
|
|
+ //新增明细,调用saveDetail方法
|
|
|
+ String content = getContentByGatherId(task1.getGatherId());
|
|
|
+ saveDetails(content, dto.getSbIds(), dto.getSortNums(), task.getId());
|
|
|
}
|
|
|
- task.setTotalNum(task1.getTotalNum()+dto.getSbIds().size());
|
|
|
- task.setWaitNum(task1.getTotalNum()+dto.getSbIds().size());
|
|
|
- //新增明细,调用saveDetail方法
|
|
|
- String content = getContentByGatherId(task1.getGatherId());
|
|
|
- saveDetails(content,dto.getSbIds(),dto.getSortNums(),task.getId());
|
|
|
+ }else {
|
|
|
+ throw new DeniedException("对不起,非调度人员不可以添加,删除巡检明细!");
|
|
|
}
|
|
|
// task.setStatus(FillGatherTaskStatusEnum.PROCESSING.getValue());
|
|
|
// mapper.updateByPrimaryKey(task);
|