修复了交接时会将已完成或关闭的项目一并交接的问题
parent
f2f6bb8d8a
commit
7dbf52d915
|
@ -213,7 +213,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements IT
|
||||||
|
|
||||||
private int upperBound(List<Task> data, long x) {
|
private int upperBound(List<Task> data, long x) {
|
||||||
int l = 0, r = data.size() - 1;
|
int l = 0, r = data.size() - 1;
|
||||||
if(data.get(r).getTaskFatherId().equals(x))
|
if (data.get(r).getTaskFatherId().equals(x))
|
||||||
return r;
|
return r;
|
||||||
while (l < r) {
|
while (l < r) {
|
||||||
int mid = (l + r) / 2;
|
int mid = (l + r) / 2;
|
||||||
|
@ -227,7 +227,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements IT
|
||||||
@Override
|
@Override
|
||||||
public List<TaskDTO> listMyTasks(String token, Integer projectId) throws ForbiddenException {
|
public List<TaskDTO> listMyTasks(String token, Integer projectId) throws ForbiddenException {
|
||||||
Integer staffId = TokenUtils.getStaffId(token);
|
Integer staffId = TokenUtils.getStaffId(token);
|
||||||
if(projectGroupService.getProjectAccessLevel(token,projectId)==0){
|
if (projectGroupService.getProjectAccessLevel(token, projectId) == 0) {
|
||||||
throw new ForbiddenException("不可操作的项目");
|
throw new ForbiddenException("不可操作的项目");
|
||||||
}
|
}
|
||||||
List<Task> resList = baseMapper.selectList(Wrappers.<Task>lambdaQuery()
|
List<Task> resList = baseMapper.selectList(Wrappers.<Task>lambdaQuery()
|
||||||
|
@ -519,11 +519,22 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements IT
|
||||||
if (projectGroupService.compareProjectAccessLevel(projectId, token, transferredStaffId) > 0) {
|
if (projectGroupService.compareProjectAccessLevel(projectId, token, transferredStaffId) > 0) {
|
||||||
throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE);
|
throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE);
|
||||||
}
|
}
|
||||||
Long transferredTaskCount = baseMapper.selectCount(Wrappers.<Task>lambdaQuery().eq(Task::getTaskHolderId, transferredStaffId));
|
Long transferredTaskCount = baseMapper.selectCount(Wrappers.<Task>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(
|
int updatedTaskCount = baseMapper.update(
|
||||||
null,
|
null,
|
||||||
Wrappers.<Task>lambdaUpdate()
|
Wrappers.<Task>lambdaUpdate()
|
||||||
.eq(Task::getTaskHolderId, transferredStaffId)
|
.eq(Task::getTaskHolderId, transferredStaffId)
|
||||||
|
.and(wrapper -> wrapper
|
||||||
|
.eq(Task::getTaskStatus, Task.STATUS_WAITING)
|
||||||
|
.or()
|
||||||
|
.eq(Task::getTaskStatus, Task.STATUS_PROCESSING)
|
||||||
|
)
|
||||||
.set(Task::getTaskHolderId, targetStaffId)
|
.set(Task::getTaskHolderId, targetStaffId)
|
||||||
);
|
);
|
||||||
return transferredTaskCount.intValue() == updatedTaskCount;
|
return transferredTaskCount.intValue() == updatedTaskCount;
|
||||||
|
|
|
@ -24,7 +24,7 @@ public class SerializeTests {
|
||||||
public void serializeTime() {
|
public void serializeTime() {
|
||||||
String timestamp = objectMapper.writeValueAsString(LocalDateTime.now());
|
String timestamp = objectMapper.writeValueAsString(LocalDateTime.now());
|
||||||
System.out.println(timestamp);
|
System.out.println(timestamp);
|
||||||
System.out.println(objectMapper.readValue(timestamp, LocalDateTime.class));
|
System.out.println(objectMapper.readValue("1657693261", LocalDateTime.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
|
|
Loading…
Reference in New Issue