Merge branch 'hotfix/Hotfix-1'
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
@@ -1782,21 +1782,31 @@ public class ActivityService {
|
|||||||
.setMaxRepetitions(dto.getMaxRepetitions())
|
.setMaxRepetitions(dto.getMaxRepetitions())
|
||||||
.setRecurrenceRule(dto.getRecurrenceRule());
|
.setRecurrenceRule(dto.getRecurrenceRule());
|
||||||
plan.setOperation(dto.getId() == null ? OperationType.INSERT : OperationType.UPDATE);
|
plan.setOperation(dto.getId() == null ? OperationType.INSERT : OperationType.UPDATE);
|
||||||
|
List<SrlActivityPlanUser> utentiDb = null;
|
||||||
if (plan.getId() != null) {
|
if (plan.getId() != null) {
|
||||||
String whereCond = plan.getPkWhereCond();
|
utentiDb = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(),
|
||||||
whereCond = whereCond.replace("id", "plan_id");
|
Query.format("SELECT * from srl_activity_plan_user where plan_id = {}", plan.getId()),
|
||||||
SrlActivityPlanUser planUsers = new SrlActivityPlanUser();
|
SrlActivityPlanUser.class
|
||||||
planUsers.deleteAllEntities(multiDBTransactionManager.getPrimaryConnection(), whereCond);
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
if (utentiDb == null) {
|
||||||
|
utentiDb = new ArrayList<>();
|
||||||
|
}else{
|
||||||
|
utentiDb.forEach(x -> x.setOperation(OperationType.DELETE));
|
||||||
|
plan.getSrlActivityPlanUser().addAll(utentiDb);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (String username : dto.getUsers()) {
|
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
|
user
|
||||||
.setUserName(username)
|
.setUserName(username)
|
||||||
.setOperation(OperationType.INSERT);
|
.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||||
plan.getSrlActivityPlanUser().add(user);
|
plan.getSrlActivityPlanUser().add(user);
|
||||||
|
|
||||||
}
|
}
|
||||||
entityProcessor.processEntity(plan, true, multiDBTransactionManager);
|
entityProcessor.processEntity(plan, true, multiDBTransactionManager);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user