Merge branch 'hotfix/Hotfix-1'
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good

This commit is contained in:
2025-05-27 16:47:00 +02:00

View File

@@ -1782,21 +1782,31 @@ public class ActivityService {
.setMaxRepetitions(dto.getMaxRepetitions())
.setRecurrenceRule(dto.getRecurrenceRule());
plan.setOperation(dto.getId() == null ? OperationType.INSERT : OperationType.UPDATE);
List<SrlActivityPlanUser> utentiDb = null;
if (plan.getId() != null) {
String whereCond = plan.getPkWhereCond();
whereCond = whereCond.replace("id", "plan_id");
SrlActivityPlanUser planUsers = new SrlActivityPlanUser();
planUsers.deleteAllEntities(multiDBTransactionManager.getPrimaryConnection(), whereCond);
utentiDb = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(),
Query.format("SELECT * from srl_activity_plan_user where plan_id = {}", plan.getId()),
SrlActivityPlanUser.class
);
}
if (utentiDb == null) {
utentiDb = new ArrayList<>();
}else{
utentiDb.forEach(x -> x.setOperation(OperationType.DELETE));
plan.getSrlActivityPlanUser().addAll(utentiDb);
}
for (String username : dto.getUsers()) {
SrlActivityPlanUser user = new SrlActivityPlanUser();
SrlActivityPlanUser user = utentiDb.stream().filter(x -> x.getUserName().equalsIgnoreCase(username)).findFirst().orElse(null);
if (user == null){
user = new SrlActivityPlanUser();
plan.getSrlActivityPlanUser().add(user);
}
user
.setUserName(username)
.setOperation(OperationType.INSERT);
.setOperation(OperationType.INSERT_OR_UPDATE);
plan.getSrlActivityPlanUser().add(user);
}
entityProcessor.processEntity(plan, true, multiDBTransactionManager);