xiatian il y a 1 an
Parent
commit
4cadb18a2d

+ 7 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanOmrTaskServiceImpl.java

@@ -4,6 +4,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
 import javax.validation.constraints.NotNull;
@@ -571,8 +572,12 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
 			return;
 		}
 		concurrentService.getReadWriteLock(LockType.STUDENT + "-" + studentId).writeLock().lock();
-		this.removeByIds(tasks);
-		concurrentService.getReadWriteLock(LockType.STUDENT + "-" + studentId).writeLock().unlock();
+		try {
+			List<Long> ids=tasks.stream().map(e->e.getId()).collect(Collectors.toList());
+			this.removeByIds(ids);
+		} finally {
+			concurrentService.getReadWriteLock(LockType.STUDENT + "-" + studentId).writeLock().unlock();
+		}
 	}
 
 	@Override