aggiunto inserimento attività per la trasferta
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:
@@ -12,6 +12,7 @@ public class UserAbsenceRequestDTO {
|
||||
private String note;
|
||||
private String fullname;
|
||||
private BigDecimal oreAssenza;
|
||||
private String codJcom;
|
||||
|
||||
public String getCodJflav() {
|
||||
return codJflav;
|
||||
@@ -75,4 +76,13 @@ public class UserAbsenceRequestDTO {
|
||||
this.oreAssenza = oreAssenza;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodJcom() {
|
||||
return codJcom;
|
||||
}
|
||||
|
||||
public UserAbsenceRequestDTO setCodJcom(String codJcom) {
|
||||
this.codJcom = codJcom;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,8 +11,10 @@ import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
|
||||
import it.integry.ems.user.service.UserService;
|
||||
import it.integry.ems.utility.UtilityDebug;
|
||||
import it.integry.ems.utility.UtilityEntity;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.entity.JtbGiustifica;
|
||||
import it.integry.ems_model.entity.JtbRLavt;
|
||||
import it.integry.ems_model.entity.StbActivity;
|
||||
import it.integry.ems_model.exception.DataConverterNotFoundException;
|
||||
import it.integry.ems_model.service.SetupGest;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
@@ -83,7 +85,7 @@ public class UserAbsenceService {
|
||||
|
||||
public void registerAbsence(List<UserAbsenceRequestDTO> assenzeList) throws Exception {
|
||||
boolean sendEmail = sendEmail();
|
||||
List<JtbRLavt> jtbRLavtList = new ArrayList<>();
|
||||
List<EntityBase> entityList = new ArrayList<>();
|
||||
|
||||
for (UserAbsenceRequestDTO assenzaItem : assenzeList) {
|
||||
|
||||
@@ -109,18 +111,46 @@ public class UserAbsenceService {
|
||||
JtbRLavt jtbRLavt = new JtbRLavt()
|
||||
.setGiustificativo(assenzaItem.getGiustificativo())
|
||||
.setDataLav(UtilityLocalDate.localDateToDate(currentDate))
|
||||
.setCodJflav(codJflav).
|
||||
setOreAssenza(assenzaItem.getOreAssenza())
|
||||
.setCodJflav(codJflav)
|
||||
.setOreAssenza(assenzaItem.getOreAssenza())
|
||||
.setNote(assenzaItem.getNote());
|
||||
jtbRLavt
|
||||
.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
|
||||
jtbRLavtList.add(jtbRLavt);
|
||||
entityList.add(jtbRLavt);
|
||||
|
||||
if (assenzaItem.getCodJcom() != null) {
|
||||
String sql = Query.format(
|
||||
"SELECT parent_activity_id\n" +
|
||||
"FROM stb_activity\n" +
|
||||
" INNER JOIN (SELECT activity_type_id, flag_tipologia\n" +
|
||||
" FROM srl_activity_type\n" +
|
||||
" WHERE activity_type_id_next = %s\n" +
|
||||
" AND flag_tipologia_next = 'A') s ON stb_activity.flag_tipologia = s.flag_tipologia\n" +
|
||||
" AND stb_activity.activity_type_id = s.activity_type_id\n" +
|
||||
" AND cod_jcom = %s",
|
||||
assenzaItem.getGiustificativo(),
|
||||
assenzaItem.getCodJcom()
|
||||
);
|
||||
String parentActivityId = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
|
||||
if (parentActivityId != null) {
|
||||
StbActivity stbActivity = new StbActivity()
|
||||
.setCodJcom(assenzaItem.getCodJcom())
|
||||
.setUserName(requestDataDTO.getUsername())
|
||||
.setParentActivityId(parentActivityId)
|
||||
.setActivityDescription(assenzaItem.getGiustificativo())
|
||||
.setActivityTypeId(assenzaItem.getGiustificativo())
|
||||
.setFlagTipologia("A")
|
||||
.setEstimatedDate(UtilityLocalDate.localDateToDate(currentDate))
|
||||
.setEstimatedEnddate(UtilityLocalDate.localDateToDate(currentDate));
|
||||
stbActivity.setOperation(OperationType.INSERT);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (jtbRLavtList.isEmpty()) return;
|
||||
if (entityList.isEmpty()) return;
|
||||
|
||||
UtilityEntity.throwEntitiesException(entityProcessor.processEntityList(jtbRLavtList, multiDBTransactionManager, true));
|
||||
UtilityEntity.throwEntitiesException(entityProcessor.processEntityList(entityList, multiDBTransactionManager, true));
|
||||
|
||||
if (sendEmail) {
|
||||
String startDate = CommonConstants.DATE_DMY_SLASHED_FORMATTER.format(assenzaItem.getDataInizio());
|
||||
|
||||
Reference in New Issue
Block a user