zhuyifan

fix

......@@ -667,7 +667,8 @@ public class MealOrderGrpcService extends MealOrderServiceRpcGrpc.MealOrderServi
final StreamObserver<BatchSaveOrUpdateDinersRpcResponse> responseObserver) {
final var builder = BatchSaveOrUpdateDinersRpcResponse.newBuilder();
try {
final var diners = new ArrayList<Diner>();
final var saveBatch = new ArrayList<Diner>();
final var updateBatch = new ArrayList<Diner>();
for (DinerModification modification : request.getModificationsList()) {
Diner diner = new Diner();
diner.setId(modification.getId() == 0 ? null : modification.getId());
......@@ -690,9 +691,13 @@ public class MealOrderGrpcService extends MealOrderServiceRpcGrpc.MealOrderServi
if (modification.getShouldUpdateName()) {
diner.setName(modification.getName());
}
diners.add(diner);
if (modification.getId() == 0) {
saveBatch.add(diner);
} else {
updateBatch.add(diner);
}
}
builder.setIsUpdated(dinerService.saveOrUpdateBatch(diners));
builder.setIsUpdated(dinerService.saveBatch(saveBatch) && dinerService.updateBatchById(updateBatch));
} catch (final Exception e) {
log.error("batchSaveOrUpdateDiners error;", e);
responseObserver.onError(Status.INTERNAL.withDescription(e.getMessage()).asException());
......@@ -953,7 +958,8 @@ public class MealOrderGrpcService extends MealOrderServiceRpcGrpc.MealOrderServi
final StreamObserver<BatchSaveOrUpdateGradeClassesRpcResponse> responseObserver) {
final var builder = BatchSaveOrUpdateGradeClassesRpcResponse.newBuilder();
try {
List<GradeClass> gradeClasses = new ArrayList<>();
List<GradeClass> saveBatch = new ArrayList<>();
List<GradeClass> updateBatch = new ArrayList<>();
for (final var modification : request.getModificationsList()) {
GradeClass gradeClass = new GradeClass();
gradeClass.setId(modification.getId() == 0 ? null : modification.getId());
......@@ -973,9 +979,13 @@ public class MealOrderGrpcService extends MealOrderServiceRpcGrpc.MealOrderServi
if (modification.getShouldUpdateGradeName()) {
gradeClass.setGradeName(modification.getGradeName());
}
gradeClasses.add(gradeClass);
if (modification.getId() == 0) {
saveBatch.add(gradeClass);
} else {
updateBatch.add(gradeClass);
}
}
builder.setIsUpdated(gradeClassService.saveOrUpdateBatch(gradeClasses));
builder.setIsUpdated(gradeClassService.saveBatch(saveBatch) && gradeClassService.updateBatchById(updateBatch));
} catch (final Exception e) {
log.error("updateGradeClass error;", e);
responseObserver.onError(Status.INTERNAL.withDescription(e.getMessage()).asException());
......