From 7dbf52d915900114c29e86e41e4a0e055dce08f7 Mon Sep 17 00:00:00 2001 From: ArgonarioD Date: Wed, 13 Jul 2022 14:54:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E4=BA=A4=E6=8E=A5?= =?UTF-8?q?=E6=97=B6=E4=BC=9A=E5=B0=86=E5=B7=B2=E5=AE=8C=E6=88=90=E6=88=96?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E7=9A=84=E9=A1=B9=E7=9B=AE=E4=B8=80=E5=B9=B6?= =?UTF-8?q?=E4=BA=A4=E6=8E=A5=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TaskServiceImpl.java | 17 ++++++++++++++--- .../projectmanagement/SerializeTests.java | 2 +- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java index 4e16960..2cd20fb 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java @@ -213,7 +213,7 @@ public class TaskServiceImpl extends ServiceImpl implements IT private int upperBound(List data, long x) { int l = 0, r = data.size() - 1; - if(data.get(r).getTaskFatherId().equals(x)) + if (data.get(r).getTaskFatherId().equals(x)) return r; while (l < r) { int mid = (l + r) / 2; @@ -227,7 +227,7 @@ public class TaskServiceImpl extends ServiceImpl implements IT @Override public List listMyTasks(String token, Integer projectId) throws ForbiddenException { Integer staffId = TokenUtils.getStaffId(token); - if(projectGroupService.getProjectAccessLevel(token,projectId)==0){ + if (projectGroupService.getProjectAccessLevel(token, projectId) == 0) { throw new ForbiddenException("不可操作的项目"); } List resList = baseMapper.selectList(Wrappers.lambdaQuery() @@ -519,11 +519,22 @@ public class TaskServiceImpl extends ServiceImpl implements IT if (projectGroupService.compareProjectAccessLevel(projectId, token, transferredStaffId) > 0) { throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE); } - Long transferredTaskCount = baseMapper.selectCount(Wrappers.lambdaQuery().eq(Task::getTaskHolderId, transferredStaffId)); + Long transferredTaskCount = baseMapper.selectCount(Wrappers.lambdaQuery() + .eq(Task::getTaskHolderId, transferredStaffId) + .and(wrapper -> wrapper + .eq(Task::getTaskStatus, Task.STATUS_WAITING) + .or() + .eq(Task::getTaskStatus, Task.STATUS_PROCESSING) + )); int updatedTaskCount = baseMapper.update( null, Wrappers.lambdaUpdate() .eq(Task::getTaskHolderId, transferredStaffId) + .and(wrapper -> wrapper + .eq(Task::getTaskStatus, Task.STATUS_WAITING) + .or() + .eq(Task::getTaskStatus, Task.STATUS_PROCESSING) + ) .set(Task::getTaskHolderId, targetStaffId) ); return transferredTaskCount.intValue() == updatedTaskCount; diff --git a/src/test/java/cn/edu/hfut/rmdjzz/projectmanagement/SerializeTests.java b/src/test/java/cn/edu/hfut/rmdjzz/projectmanagement/SerializeTests.java index d1bdda6..116c833 100644 --- a/src/test/java/cn/edu/hfut/rmdjzz/projectmanagement/SerializeTests.java +++ b/src/test/java/cn/edu/hfut/rmdjzz/projectmanagement/SerializeTests.java @@ -24,7 +24,7 @@ public class SerializeTests { public void serializeTime() { String timestamp = objectMapper.writeValueAsString(LocalDateTime.now()); System.out.println(timestamp); - System.out.println(objectMapper.readValue(timestamp, LocalDateTime.class)); + System.out.println(objectMapper.readValue("1657693261", LocalDateTime.class)); } @SneakyThrows