diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java index cf08830ec..0e1fde1e9 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java @@ -119,8 +119,9 @@ public class DummyInventoryBaseEOController extends JeroController delete(@RequestParam(name="id",required=true) String id) { - dummyInventoryBaseEOService.deleteById(id); + public Result delete(@RequestParam(name="id",required=true) String id, + @RequestParam(name="cut",required=true) String cut) { + dummyInventoryBaseEOService.deleteById(id,cut); return Result.OK("删除成功!"); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/IDummyInventoryBaseEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/IDummyInventoryBaseEOService.java index 39ddbffd4..7879700ab 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/IDummyInventoryBaseEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/IDummyInventoryBaseEOService.java @@ -44,7 +44,7 @@ public interface IDummyInventoryBaseEOService extends IService createByNameList =new ArrayList<>(); + if (StringUtils.isNotBlank(dummyInventoryBaseEO.getCreateBy())) { + createByNameList = Arrays.asList(dummyInventoryBaseEO.getCreateBy().split(",")); + + if (CollectionUtils.isNotEmpty(createByNameList)) { + // 增加创建者校验 + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String loginUserName = sysUser.getUsername(); + + if (!baseEO.getCreateBy().contains(loginUserName)) { + if (CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())) { + throw new JeroBootException("当前用户非创建者,无法编辑"); + } else { + throw new JeroBootException("The current user is not the creator and cannot be edited."); + } + } + } + } + Date now = new Date(); dummyInventoryBaseEO.setUpdateTime(now); saveOrUpdate(dummyInventoryBaseEO); @@ -127,7 +147,25 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl creatByIdList = Arrays.asList(createById.split(",")); + + if (CollectionUtils.isNotEmpty(creatByIdList)) { + for(String createBy : creatByIdList){ + if (!loginUserName.equals(createBy)) { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("当前用户非所有选择的数据的创建者,无法删除"); + }else{ + throw new JeroBootException("The current user is not the creator of all selected data, and cannot be deleted."); + } + } + } + } removeById(id); } @@ -247,7 +285,27 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl createByNameList =new ArrayList<>(); + if (StringUtils.isNotBlank(baseEO.getCreateBy())) { + createByNameList = Arrays.asList(baseEO.getCreateBy().split(",")); + + if (CollectionUtils.isNotEmpty(createByNameList)){ + if (!createByNameList.contains(loginUserName)) { + if (CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())) { + throw new JeroBootException("当前用户非创建者,无法发布"); + } else { + throw new JeroBootException("The current user is not the creator and cannot be issued."); + } + } + } + } + +// this.updateById(dummyInventoryBaseEO); //不管有没有维护清单,都返回操作成功 //发布与撤回均需要发消息(向订阅的人员发消息) //首次发布不发消息 @@ -351,7 +409,6 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl