Merge branch 'refs/heads/develop' into feature/Spring5
This commit is contained in:
@@ -17,7 +17,7 @@ public class Migration_20240426173500 extends BaseMigration implements Migration
|
||||
if (!isCustomerDb(
|
||||
IntegryCustomerDB.Carelli_Format)
|
||||
)
|
||||
return;
|
||||
return;
|
||||
|
||||
updateSetupValue("EXPORT_DOCUMENTI VENDITA", "DIALOGO", "INSERT_LOG", "S");
|
||||
}
|
||||
|
||||
@@ -11,12 +11,12 @@ public class Migration_20240506152142 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(
|
||||
IntegryCustomerDB.Gramm_Gramm)){
|
||||
return;
|
||||
}
|
||||
if (!isCustomerDb(
|
||||
IntegryCustomerDB.Gramm_Gramm)) {
|
||||
return;
|
||||
}
|
||||
|
||||
createSetup("IMPORT_ORDINI", "EURITMO", "SET_DATA_CONS_CLIE_C2339", "N", "Se impostato a S allora la data di consegna non viene calcolata, ma presa quella del cliente", false, null, false, false, false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "EURITMO", "SET_DATA_CONS_CLIE_C2339", "N", "Se impostato a S allora la data di consegna non viene calcolata, ma presa quella del cliente", false, null, false, false, false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240513110702 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
String value = "N";
|
||||
if (isCustomer(IntegryCustomer.RossoGargano))
|
||||
value = "S";
|
||||
|
||||
createSetup("PVM","MONITORAGGIO_LINEE_V2","ALLOW_MULTIPLE_ORDERS_OPEN",value,"Se impostato a S permette di avviare più ordini contemporaneamente sulla linea","SI_NO");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240513182721 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("alter table dtb_tipi add flag_calc_peso_intra varchar (1) null;");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.entity_logger.db_schema_manager.component.SQLServerDBSchemaManager;
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class Migration_20240514113425 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomer(
|
||||
IntegryCustomer.Biolevante,
|
||||
IntegryCustomer.Cosmapack,
|
||||
IntegryCustomer.Didonna,
|
||||
IntegryCustomer.DolceBonta,
|
||||
IntegryCustomer.Dulciar,
|
||||
IntegryCustomer.FolliesGroup,
|
||||
IntegryCustomer.Fiume,
|
||||
IntegryCustomer.Frudis,
|
||||
IntegryCustomer.Idrotecnica,
|
||||
IntegryCustomer.Ime,
|
||||
IntegryCustomer.Ivr,
|
||||
IntegryCustomer.Lamonarca,
|
||||
IntegryCustomer.Maggio,
|
||||
IntegryCustomer.Materica,
|
||||
IntegryCustomer.Midel,
|
||||
IntegryCustomer.Morgante,
|
||||
IntegryCustomer.ResinaColor,
|
||||
IntegryCustomer.RossoGargano,
|
||||
IntegryCustomer.Salpar,
|
||||
IntegryCustomer.Sardinya,
|
||||
IntegryCustomer.Smetar,
|
||||
IntegryCustomer.Tosca,
|
||||
IntegryCustomer.TwoBrothers,
|
||||
IntegryCustomer.Vinella)) {
|
||||
updateSetupValue("DATI_AZIENDA", "SETUP", "DELIMITED_IDENTIFIER", "1");
|
||||
updateSetupValue("DATI_AZIENDA", "SETUP", "FLAG_ANSI_PADDING", "S");
|
||||
updateSetupValue("DATI_AZIENDA", "SETUP", "FLAG_CONCAT_NULL_YIELDS_NULL", "S");
|
||||
|
||||
SQLServerDBSchemaManager schemaManager = new SQLServerDBSchemaManager(this.advancedDataSource.getConnection());
|
||||
final List<String> queries = schemaManager.generateAlterTableToDisableAnsiPadding();
|
||||
|
||||
//executeStatement(queries.toArray(new String[0]));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -7,6 +7,8 @@ import it.integry.ems_model.annotation.*;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.utility.UtilityString;
|
||||
import org.kie.api.definition.type.PropertyReactive;
|
||||
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@@ -201,6 +203,9 @@ public class DtbTipi extends EntityBase {
|
||||
@SqlField(value = "flag_cons_consumi", nullable = false, defaultObjectValue = "0")
|
||||
private Boolean flagConsConsumi;
|
||||
|
||||
@SqlField(value = "flag_sezione", nullable = false)
|
||||
private String flagSezione;
|
||||
|
||||
@EntityChild
|
||||
private List<DtbTipiAnag> dtbTipiAnag;
|
||||
|
||||
@@ -710,6 +715,15 @@ public class DtbTipi extends EntityBase {
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getFlagSezione() {
|
||||
return flagSezione;
|
||||
}
|
||||
|
||||
public DtbTipi setFlagSezione(String flagSezione) {
|
||||
this.flagSezione = flagSezione;
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<DtbTipiAnag> getDtbTipiAnag() {
|
||||
return dtbTipiAnag;
|
||||
}
|
||||
|
||||
@@ -7,8 +7,8 @@ import it.integry.ems_model.annotation.SqlField;
|
||||
import it.integry.ems_model.annotation.Table;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import org.kie.api.definition.type.PropertyReactive;
|
||||
import java.util.Date;
|
||||
import it.integry.ems_model.annotation.FK;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@PropertyReactive
|
||||
@Table(MtbPartitaMagCarat.ENTITY)
|
||||
@@ -42,7 +42,7 @@ public class MtbPartitaMagCarat extends EntityBase {
|
||||
private String fonte;
|
||||
|
||||
@SqlField(value = "data_rilevazione", nullable = true)
|
||||
private Date dataRilevazione;
|
||||
private LocalDateTime dataRilevazione;
|
||||
|
||||
@SqlField(value = "activity_id", maxLength = 15)
|
||||
private String activityId;
|
||||
@@ -105,11 +105,11 @@ public class MtbPartitaMagCarat extends EntityBase {
|
||||
return this;
|
||||
}
|
||||
|
||||
public Date getDataRilevazione() {
|
||||
public LocalDateTime getDataRilevazione() {
|
||||
return dataRilevazione;
|
||||
}
|
||||
|
||||
public MtbPartitaMagCarat setDataRilevazione(Date dataRilevazione) {
|
||||
public MtbPartitaMagCarat setDataRilevazione(LocalDateTime dataRilevazione) {
|
||||
this.dataRilevazione = dataRilevazione;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -86,6 +86,13 @@ public class UtilityLocalDate {
|
||||
return TimeUnit.DAYS.toSeconds(localDate.toEpochDay());
|
||||
}
|
||||
|
||||
public static Date localDateTimeToDate(LocalDateTime localDateTime) {
|
||||
if(localDateTime == null) return null;
|
||||
|
||||
long seconds = localDateTimeToTime(localDateTime, null);
|
||||
return new Date(seconds * 1000);
|
||||
}
|
||||
|
||||
public static Date localDateTimeToDate(LocalDateTime localDateTime, @Nullable String timezone) {
|
||||
long seconds = localDateTimeToTime(localDateTime, timezone);
|
||||
return new Date(seconds * 1000);
|
||||
|
||||
@@ -9,12 +9,14 @@ import it.integry.ems_model.entity.MtbPartitaMagCarat;
|
||||
import it.integry.ems_model.entity.StbActivity;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
import it.integry.ems_model.utility.UtilityLocalDate;
|
||||
import it.integry.ems_model.utility.UtilityString;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -37,7 +39,7 @@ public class AgribookActivityService {
|
||||
//TODO: Replace with a gest-setup config
|
||||
private static String ACTIVITY_TYPE_ID = "RILEVAZIONE";
|
||||
|
||||
public StbActivity postActivity(OperationType operation, String codAnag, String codVdes, String codMart, String partitaMag, Date dataPianificazione, Date dataRilevazione, Date dataChiusura, String descrizione, String note, String username) throws Exception {
|
||||
public StbActivity postActivity(OperationType operation, String codAnag, String codVdes, String codMart, String partitaMag, LocalDateTime dataPianificazione, LocalDateTime dataRilevazione, LocalDateTime dataChiusura, String descrizione, String note, String username) throws Exception {
|
||||
if (UtilityString.isNullOrEmpty(username)) {
|
||||
username = requestDataDTO.getUsername();
|
||||
}
|
||||
@@ -49,11 +51,11 @@ public class AgribookActivityService {
|
||||
.setPartitaMag(partitaMag)
|
||||
.setUserName(username)
|
||||
.setActivityTypeId(ACTIVITY_TYPE_ID)
|
||||
.setEstimatedDate(dataPianificazione)
|
||||
.setEstimatedTime(dataPianificazione)
|
||||
.setEffectiveDate(dataRilevazione)
|
||||
.setEffectiveTime(dataRilevazione)
|
||||
.setEffectiveEndtime(dataChiusura)
|
||||
.setEstimatedDate(UtilityLocalDate.localDateTimeToDate(dataPianificazione))
|
||||
.setEstimatedTime(UtilityLocalDate.localDateTimeToDate(dataPianificazione))
|
||||
.setEffectiveDate(UtilityLocalDate.localDateTimeToDate(dataRilevazione))
|
||||
.setEffectiveTime(UtilityLocalDate.localDateTimeToDate(dataRilevazione))
|
||||
.setEffectiveEndtime(UtilityLocalDate.localDateTimeToDate(dataChiusura))
|
||||
.setActivityDescription(descrizione)
|
||||
.setNote(note);
|
||||
|
||||
@@ -65,7 +67,7 @@ public class AgribookActivityService {
|
||||
return stbActivity;
|
||||
}
|
||||
|
||||
public StbActivity postActivity(OperationType operation, String codAnag, String codVdes, String codMart, String partitaMag, Date dataPianificazione, Date dataRilevazione, Date dataChiusura, String descrizione, String note) throws Exception {
|
||||
public StbActivity postActivity(OperationType operation, String codAnag, String codVdes, String codMart, String partitaMag, LocalDateTime dataPianificazione, LocalDateTime dataRilevazione, LocalDateTime dataChiusura, String descrizione, String note) throws Exception {
|
||||
return this.postActivity(operation, codAnag, codVdes, codMart, partitaMag, dataPianificazione, dataRilevazione, dataChiusura, descrizione, note, requestDataDTO.getUsername());
|
||||
}
|
||||
|
||||
@@ -112,15 +114,7 @@ public class AgribookActivityService {
|
||||
throw new Exception("Nessuna data di pianificazione specificata");
|
||||
}
|
||||
|
||||
StbActivity stbActivity = new StbActivity()
|
||||
.setCodAnag(codAnag)
|
||||
.setCodVdes(codVdes)
|
||||
.setCodMart(codMart)
|
||||
.setPartitaMag(partitaMag)
|
||||
.setUserName(UtilityString.isNullOrEmpty(userName) ? requestDataDTO.getUsername() : userName)
|
||||
.setActivityDescription(description)
|
||||
.setEstimatedTime(planDate)
|
||||
.setActivityTypeId(ACTIVITY_TYPE_ID);
|
||||
StbActivity stbActivity = new StbActivity().setCodAnag(codAnag).setCodVdes(codVdes).setCodMart(codMart).setPartitaMag(partitaMag).setUserName(UtilityString.isNullOrEmpty(userName) ? requestDataDTO.getUsername() : userName).setActivityDescription(description).setEstimatedTime(planDate).setActivityTypeId(ACTIVITY_TYPE_ID);
|
||||
|
||||
stbActivity.setOperation(OperationType.INSERT);
|
||||
|
||||
@@ -130,33 +124,7 @@ public class AgribookActivityService {
|
||||
}
|
||||
|
||||
public List<AgribookActivityRetrieveRequestDTO> retrieveActivity(String activityId, List<String> codAnag, List<String> codVdes, String codMart, String partitaMag, String username) throws Exception {
|
||||
String sql = "SELECT ISNULL(vtb_dest.destinatario, gtb_anag.rag_soc) AS destinatario,\n" +
|
||||
" activity_id,\n" +
|
||||
" activity_result_id,\n" +
|
||||
" activity_type_id,\n" +
|
||||
" data_ins_act,\n" +
|
||||
" activity_description,\n" +
|
||||
" parent_activity_id,\n" +
|
||||
" user_name,\n" +
|
||||
" stb_activity.cod_anag,\n" +
|
||||
" estimated_time,\n" +
|
||||
" effective_time,\n" +
|
||||
" result_description,\n" +
|
||||
" estimated_endtime,\n" +
|
||||
" effective_endtime,\n" +
|
||||
" user_creator,\n" +
|
||||
" stb_activity.note,\n" +
|
||||
" ora_ins_act,\n" +
|
||||
" user_modifier,\n" +
|
||||
" ora_mod_act,\n" +
|
||||
" cod_mart,\n" +
|
||||
" stb_activity.cod_vdes,\n" +
|
||||
" partita_mag\n" +
|
||||
"FROM stb_activity\n" +
|
||||
"LEFT OUTER JOIN vtb_dest ON vtb_dest.cod_anag = stb_activity.cod_anag AND\n" +
|
||||
" vtb_dest.cod_vdes = stb_activity.cod_vdes\n" +
|
||||
" LEFT OUTER JOIN gtb_anag ON gtb_anag.cod_anag = stb_activity.cod_anag\n" +
|
||||
"WHERE activity_type_id = '" + ACTIVITY_TYPE_ID + "' ";
|
||||
String sql = "SELECT ISNULL(vtb_dest.destinatario, gtb_anag.rag_soc) AS destinatario,\n" + " activity_id,\n" + " activity_result_id,\n" + " activity_type_id,\n" + " data_ins_act,\n" + " activity_description,\n" + " parent_activity_id,\n" + " user_name,\n" + " stb_activity.cod_anag,\n" + " estimated_time,\n" + " effective_time,\n" + " result_description,\n" + " estimated_endtime,\n" + " effective_endtime,\n" + " user_creator,\n" + " stb_activity.note,\n" + " ora_ins_act,\n" + " user_modifier,\n" + " ora_mod_act,\n" + " cod_mart,\n" + " stb_activity.cod_vdes,\n" + " partita_mag\n" + "FROM stb_activity\n" + "LEFT OUTER JOIN vtb_dest ON vtb_dest.cod_anag = stb_activity.cod_anag AND\n" + " vtb_dest.cod_vdes = stb_activity.cod_vdes\n" + " LEFT OUTER JOIN gtb_anag ON gtb_anag.cod_anag = stb_activity.cod_anag\n" + "WHERE activity_type_id = '" + ACTIVITY_TYPE_ID + "' ";
|
||||
|
||||
if (!UtilityString.isNullOrEmpty(activityId)) {
|
||||
sql += " AND activity_id = " + UtilityDB.valueToString(activityId);
|
||||
@@ -192,28 +160,20 @@ public class AgribookActivityService {
|
||||
|
||||
StbActivity activityToDelete = new StbActivity();
|
||||
|
||||
activityToDelete
|
||||
.setActivityId(activityId)
|
||||
.setOperation(OperationType.SELECT_OBJECT);
|
||||
activityToDelete.setActivityId(activityId).setOperation(OperationType.SELECT_OBJECT);
|
||||
|
||||
entityProcessor.processEntity(activityToDelete, multiDBTransactionManager);
|
||||
|
||||
if (!UtilityString.isNullOrEmpty(activityToDelete.getCodMart()) && !(UtilityString.isNullOrEmpty(activityToDelete.getPartitaMag()))) {
|
||||
String sql = "SELECT id_riga FROM " + MtbPartitaMagCarat.ENTITY +
|
||||
" WHERE carat = " + UtilityDB.valueToString(ACTIVITY_ID_KEY) +
|
||||
" AND val_carat = " + UtilityDB.valueToString(activityId);
|
||||
String sql = "SELECT id_riga FROM " + MtbPartitaMagCarat.ENTITY + " WHERE carat = " + UtilityDB.valueToString(ACTIVITY_ID_KEY) + " AND val_carat = " + UtilityDB.valueToString(activityId);
|
||||
|
||||
Integer idRigaToDelete = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
|
||||
|
||||
MtbPartitaMagCarat mtbPartitaMagCarat = new MtbPartitaMagCarat()
|
||||
.setIdRiga(idRigaToDelete);
|
||||
MtbPartitaMagCarat mtbPartitaMagCarat = new MtbPartitaMagCarat().setIdRiga(idRigaToDelete);
|
||||
|
||||
mtbPartitaMagCarat.setOperation(OperationType.DELETE);
|
||||
|
||||
MtbPartitaMag mtbPartitaMag = new MtbPartitaMag()
|
||||
.setCodMart(activityToDelete.getCodMart())
|
||||
.setPartitaMag(activityToDelete.getPartitaMag())
|
||||
.setMtbPartitaMagCarat(Collections.singletonList(mtbPartitaMagCarat));
|
||||
MtbPartitaMag mtbPartitaMag = new MtbPartitaMag().setCodMart(activityToDelete.getCodMart()).setPartitaMag(activityToDelete.getPartitaMag()).setMtbPartitaMagCarat(Collections.singletonList(mtbPartitaMagCarat));
|
||||
|
||||
mtbPartitaMag.setOperation(OperationType.NO_OP);
|
||||
|
||||
@@ -232,11 +192,7 @@ public class AgribookActivityService {
|
||||
throw new Exception("Nessuna data di pianificazione specificata");
|
||||
}
|
||||
|
||||
StbActivity stbActivity = new StbActivity()
|
||||
.setActivityId(activityId)
|
||||
.setUserName(UtilityString.isNullOrEmpty(userName) ? requestDataDTO.getUsername() : userName)
|
||||
.setActivityDescription(description)
|
||||
.setEstimatedTime(planDate);
|
||||
StbActivity stbActivity = new StbActivity().setActivityId(activityId).setUserName(UtilityString.isNullOrEmpty(userName) ? requestDataDTO.getUsername() : userName).setActivityDescription(description).setEstimatedTime(planDate);
|
||||
|
||||
stbActivity.setOperation(OperationType.UPDATE);
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ import org.springframework.web.context.ContextLoader;
|
||||
import javax.annotation.Nullable;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
@@ -338,45 +339,37 @@ public class AgribookOrderService {
|
||||
|
||||
final short initialWeekDayShort = Short.parseShort(setupGest.getSetup("PVM", "DELIVERY_PLAN", "GIORNO_INIZIO_SETTIMANA"));
|
||||
|
||||
List<AgribookReportDTO> reports = Stream.of(allReports)
|
||||
List<AgribookReportDTO> reports = allReports.stream()
|
||||
.filter(x -> x.getCodMart().equalsIgnoreCase(agribookOrderDTO.getCodMart())
|
||||
&& x.getPartitaMag().equalsIgnoreCase(agribookOrderDTO.getPartitaMag())
|
||||
).toList();
|
||||
).collect(Collectors.toList());
|
||||
|
||||
if (!reports.isEmpty()) {
|
||||
agribookOrderDTO.setPrevRaccNumeroSettimane(
|
||||
Stream.of(reports)
|
||||
.map(AgribookReportDTO::getPrevRaccNumSett)
|
||||
.toList()
|
||||
);
|
||||
agribookOrderDTO.setPrevisioniRaccolta(
|
||||
Stream.of(reports)
|
||||
.filter(x -> x.getPrevRaccNumSett() != null && x.getPrevRaccNumSett() >= UtilityDate.dateToWeekNumber(LocalDate.now(), initialWeekDayShort))
|
||||
.groupBy(agribookReportDTO -> agribookReportDTO.getPrevRaccNumSett() == null ? "" : agribookReportDTO.getPrevRaccNumSett().toString())
|
||||
.map(reportsGroup -> {
|
||||
AgribookReportDTO lastReport = Iterables.getLast(reportsGroup.getValue());
|
||||
|
||||
agribookOrderDTO.setPrevisioniRaccolta(
|
||||
Stream.of(reports)
|
||||
.filter(x -> x.getPrevRaccNumSett() == null || x.getPrevRaccNumSett() > UtilityDate.dateToWeekNumber(LocalDate.now(), initialWeekDayShort))
|
||||
.groupBy(agribookReportDTO -> agribookReportDTO.getPrevRaccNumSett() == null ? "" : agribookReportDTO.getPrevRaccNumSett().toString())
|
||||
.map(reportsGroup -> {
|
||||
AgribookReportDTO lastReport = Iterables.getLast(reportsGroup.getValue());
|
||||
int lastPrevRaccQtaSett = lastReport.getPrevRaccQtaSett() == null ? 0 : lastReport.getPrevRaccQtaSett();
|
||||
|
||||
int lastPrevRaccQtaSett = lastReport.getPrevRaccQtaSett() == null ? 0 : lastReport.getPrevRaccQtaSett();
|
||||
int sumQtaClassePremium = lastPrevRaccQtaSett
|
||||
* lastReport.getPrevRaccPercClassePremium() / 100;
|
||||
int sumQtaClasse1 = lastPrevRaccQtaSett
|
||||
* lastReport.getPrevRaccPercClasse1() / 100;
|
||||
int sumQtaClasse2 = lastPrevRaccQtaSett
|
||||
* lastReport.getPrevRaccPercClasse2() / 100;
|
||||
|
||||
int sumQtaClassePremium = lastPrevRaccQtaSett
|
||||
* lastReport.getPrevRaccPercClassePremium() / 100;
|
||||
int sumQtaClasse1 = lastPrevRaccQtaSett
|
||||
* lastReport.getPrevRaccPercClasse1() / 100;
|
||||
int sumQtaClasse2 = lastPrevRaccQtaSett
|
||||
* lastReport.getPrevRaccPercClasse2() / 100;
|
||||
|
||||
return new AgribookPrevRaccoltaDTO()
|
||||
.setDataRilevazione(lastReport.getDataRilevazione())
|
||||
.setNumSettimana(reportsGroup.getKey().equalsIgnoreCase("") ? null : Integer.valueOf(reportsGroup.getKey()))
|
||||
.setQtaSettimana(lastPrevRaccQtaSett)
|
||||
.setPercClassePremium(Float.valueOf((float) sumQtaClassePremium / lastPrevRaccQtaSett * 100).intValue())
|
||||
.setPercClasse1(Float.valueOf((float) sumQtaClasse1 / lastPrevRaccQtaSett * 100).intValue())
|
||||
.setPercClasse2(Float.valueOf((float) sumQtaClasse2 / lastPrevRaccQtaSett * 100).intValue());
|
||||
})
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
return new AgribookPrevRaccoltaDTO()
|
||||
.setDataRilevazione(lastReport.getDataRilevazione())
|
||||
.setNumSettimana(reportsGroup.getKey().equalsIgnoreCase("") ? null : Integer.valueOf(reportsGroup.getKey()))
|
||||
.setQtaSettimana(lastPrevRaccQtaSett)
|
||||
.setPercClassePremium(Float.valueOf((float) sumQtaClassePremium / lastPrevRaccQtaSett * 100).intValue())
|
||||
.setPercClasse1(Float.valueOf((float) sumQtaClasse1 / lastPrevRaccQtaSett * 100).intValue())
|
||||
.setPercClasse2(Float.valueOf((float) sumQtaClasse2 / lastPrevRaccQtaSett * 100).intValue());
|
||||
})
|
||||
.toList()
|
||||
);
|
||||
|
||||
sql = Query.format(
|
||||
"SELECT mtb_colr.data_collo AS 'data', SUM(mtb_colr.qta_col) AS 'qta', jtb_flav.nome AS 'squadra'\n" +
|
||||
@@ -406,7 +399,7 @@ public class AgribookOrderService {
|
||||
agribookOrderDTO.getPartitaMag(),
|
||||
year);
|
||||
|
||||
agribookOrderDTO.setHarvestHistory(UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, HarvestHistoryDTO.class));
|
||||
agribookOrderDTO.setStoricoRaccolta(UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, AgribookHarvestHistoryDTO.class));
|
||||
|
||||
}
|
||||
|
||||
@@ -415,7 +408,7 @@ public class AgribookOrderService {
|
||||
|
||||
public void updatePercClassi(String codMart, String partitaMag, int newPercClasse1, int newPercClasse2, int newPercClassePremium) throws Exception {
|
||||
|
||||
Date dataRilevazione = new Date();
|
||||
LocalDateTime dataRilevazione = UtilityLocalDate.getNowTime();
|
||||
|
||||
MtbPartitaMagCarat caratClasse1 = new MtbPartitaMagCarat()
|
||||
.setDataRilevazione(dataRilevazione)
|
||||
@@ -466,14 +459,14 @@ public class AgribookOrderService {
|
||||
|
||||
|
||||
MtbPartitaMagCarat caratActivityId = new MtbPartitaMagCarat()
|
||||
.setDataRilevazione(new Date())
|
||||
.setDataRilevazione(UtilityLocalDate.getNowTime())
|
||||
.setCarat("activity-id")
|
||||
.setValCarat(stbActivity.getActivityId());
|
||||
caratActivityId.setOperation(OperationType.INSERT);
|
||||
|
||||
|
||||
MtbPartitaMagCarat caratQtaResidua = new MtbPartitaMagCarat()
|
||||
.setDataRilevazione(new Date())
|
||||
.setDataRilevazione(UtilityLocalDate.getNowTime())
|
||||
.setCarat("qta-residua")
|
||||
.setValCarat(String.valueOf(qtaResidua));
|
||||
caratQtaResidua.setOperation(OperationType.INSERT);
|
||||
@@ -513,7 +506,7 @@ public class AgribookOrderService {
|
||||
|
||||
|
||||
MtbPartitaMagCarat caratActivityId = new MtbPartitaMagCarat()
|
||||
.setDataRilevazione(new Date())
|
||||
.setDataRilevazione(UtilityLocalDate.getNowTime())
|
||||
.setCarat("activity-id")
|
||||
.setValCarat(stbActivity.getActivityId());
|
||||
caratActivityId.setOperation(OperationType.INSERT);
|
||||
@@ -548,7 +541,7 @@ public class AgribookOrderService {
|
||||
.setIdRiga(idRiga)
|
||||
.setCarat("n-piante")
|
||||
.setValCarat(String.valueOf(piantePartita))
|
||||
.setDataRilevazione(new Date());
|
||||
.setDataRilevazione(UtilityLocalDate.getNowTime());
|
||||
|
||||
caratNPiante.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@ package it.integry.ems.production.agribook;
|
||||
|
||||
import com.annimon.stream.Optional;
|
||||
import com.annimon.stream.Stream;
|
||||
import it.integry.common.var.CommonConstants;
|
||||
import it.integry.ems.javabeans.RequestDataDTO;
|
||||
import it.integry.ems.json.ResponseJSONObjectMapper;
|
||||
import it.integry.ems.media.MimeTypesHandler;
|
||||
@@ -18,6 +17,7 @@ import it.integry.ems_model.entity.StbActivity;
|
||||
import it.integry.ems_model.entity.StbActivityFile;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
import it.integry.ems_model.utility.UtilityLocalDate;
|
||||
import it.integry.ems_model.utility.UtilityQuery;
|
||||
import it.integry.ems_model.utility.UtilityString;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -265,8 +265,8 @@ public class AgribookReportService {
|
||||
} else {
|
||||
stbActivity = new StbActivity()
|
||||
.setActivityId(reportToInsert.getActivityId())
|
||||
.setEffectiveTime(reportToInsert.getDataRilevazione())
|
||||
.setEffectiveEndtime(reportToInsert.getDataRilevazione());
|
||||
.setEffectiveTime(UtilityLocalDate.localDateTimeToDate(reportToInsert.getDataRilevazione()))
|
||||
.setEffectiveEndtime(UtilityLocalDate.localDateTimeToDate(reportToInsert.getDataRilevazione()));
|
||||
|
||||
stbActivity.setOperation(OperationType.UPDATE);
|
||||
|
||||
@@ -320,7 +320,7 @@ public class AgribookReportService {
|
||||
" AND carat = '%s'",
|
||||
mtbPartitaMagCarat.getCodMart(),
|
||||
mtbPartitaMagCarat.getPartitaMag(),
|
||||
UtilityDB.valueDateToString(mtbPartitaMagCarat.getDataRilevazione(), CommonConstants.DATETIME_FORMAT_YMD),
|
||||
UtilityDB.valueToString(mtbPartitaMagCarat.getDataRilevazione()),
|
||||
key
|
||||
);
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import it.integry.ems_model.annotation.SqlField;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
|
||||
public class HarvestHistoryDTO {
|
||||
public class AgribookHarvestHistoryDTO {
|
||||
|
||||
@SqlField("data")
|
||||
public LocalDate data;
|
||||
@@ -18,7 +18,7 @@ public class HarvestHistoryDTO {
|
||||
return data;
|
||||
}
|
||||
|
||||
public HarvestHistoryDTO setData(LocalDate data) {
|
||||
public AgribookHarvestHistoryDTO setData(LocalDate data) {
|
||||
this.data = data;
|
||||
return this;
|
||||
}
|
||||
@@ -27,7 +27,7 @@ public class HarvestHistoryDTO {
|
||||
return qta;
|
||||
}
|
||||
|
||||
public HarvestHistoryDTO setQta(BigDecimal qta) {
|
||||
public AgribookHarvestHistoryDTO setQta(BigDecimal qta) {
|
||||
this.qta = qta;
|
||||
return this;
|
||||
}
|
||||
@@ -36,7 +36,7 @@ public class HarvestHistoryDTO {
|
||||
return squadra;
|
||||
}
|
||||
|
||||
public HarvestHistoryDTO setSquadra(String squadra) {
|
||||
public AgribookHarvestHistoryDTO setSquadra(String squadra) {
|
||||
this.squadra = squadra;
|
||||
return this;
|
||||
}
|
||||
@@ -71,8 +71,7 @@ public class AgribookOrderDTO extends ComposedEntityBase {
|
||||
private AgribookDestinatarioDTO destinatario;
|
||||
private MtbDepo mtbDepo;
|
||||
private List<AgribookPrevRaccoltaDTO> previsioniRaccolta;
|
||||
private List<Integer> prevRaccNumeroSettimane;
|
||||
private List<HarvestHistoryDTO> harvestHistory;
|
||||
private List<AgribookHarvestHistoryDTO> storicoRaccolta;
|
||||
|
||||
private List<AgribookOrderAttachmentDTO> attachments;
|
||||
|
||||
@@ -361,21 +360,12 @@ public class AgribookOrderDTO extends ComposedEntityBase {
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<HarvestHistoryDTO> getHarvestHistory() {
|
||||
return harvestHistory;
|
||||
public List<AgribookHarvestHistoryDTO> getStoricoRaccolta() {
|
||||
return storicoRaccolta;
|
||||
}
|
||||
|
||||
public AgribookOrderDTO setHarvestHistory(List<HarvestHistoryDTO> harvestHistory) {
|
||||
this.harvestHistory = harvestHistory;
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<Integer> getPrevRaccNumeroSettimane() {
|
||||
return prevRaccNumeroSettimane;
|
||||
}
|
||||
|
||||
public AgribookOrderDTO setPrevRaccNumeroSettimane(List<Integer> prevRaccNumeroSettimane) {
|
||||
this.prevRaccNumeroSettimane = prevRaccNumeroSettimane;
|
||||
public AgribookOrderDTO setStoricoRaccolta(List<AgribookHarvestHistoryDTO> storicoRaccolta) {
|
||||
this.storicoRaccolta = storicoRaccolta;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
package it.integry.ems.production.agribook.model;
|
||||
|
||||
import java.util.Date;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class AgribookPrevRaccoltaDTO {
|
||||
|
||||
Date dataRilevazione;
|
||||
Integer numSettimana;
|
||||
Integer qtaSettimana;
|
||||
Integer percClassePremium;
|
||||
Integer percClasse1;
|
||||
Integer percClasse2;
|
||||
private LocalDateTime dataRilevazione;
|
||||
private Integer numSettimana;
|
||||
private Integer qtaSettimana;
|
||||
private Integer percClassePremium;
|
||||
private Integer percClasse1;
|
||||
private Integer percClasse2;
|
||||
|
||||
public Date getDataRilevazione() {
|
||||
public LocalDateTime getDataRilevazione() {
|
||||
return dataRilevazione;
|
||||
}
|
||||
|
||||
public AgribookPrevRaccoltaDTO setDataRilevazione(Date dataRilevazione) {
|
||||
public AgribookPrevRaccoltaDTO setDataRilevazione(LocalDateTime dataRilevazione) {
|
||||
this.dataRilevazione = dataRilevazione;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ package it.integry.ems.production.agribook.model;
|
||||
import it.integry.ems_model.annotation.SqlField;
|
||||
import it.integry.ems_model.entity.StbActivity;
|
||||
|
||||
import java.util.Date;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
public class AgribookReportDTO {
|
||||
@@ -25,7 +25,7 @@ public class AgribookReportDTO {
|
||||
@SqlField("destinazione")
|
||||
private List<String> destinazioni;
|
||||
@SqlField("data_rilevazione")
|
||||
private Date dataRilevazione;
|
||||
private LocalDateTime dataRilevazione;
|
||||
@SqlField("note")
|
||||
private String note;
|
||||
@SqlField("activity_id")
|
||||
@@ -117,11 +117,11 @@ public class AgribookReportDTO {
|
||||
return this;
|
||||
}
|
||||
|
||||
public Date getDataRilevazione() {
|
||||
public LocalDateTime getDataRilevazione() {
|
||||
return dataRilevazione;
|
||||
}
|
||||
|
||||
public AgribookReportDTO setDataRilevazione(Date dataRilevazione) {
|
||||
public AgribookReportDTO setDataRilevazione(LocalDateTime dataRilevazione) {
|
||||
this.dataRilevazione = dataRilevazione;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -46,7 +46,6 @@ import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
|
||||
@Service
|
||||
@@ -902,12 +901,11 @@ public class MesProductionServiceV2 {
|
||||
|
||||
|
||||
public MtbColt createColloCaricoProdottoFinito(CaricoProdottoFinitoDTO dto) throws Exception {
|
||||
|
||||
|
||||
DtbOrdt ordineLav = new DtbOrdt()
|
||||
.setDataOrd(dto.getDataOrd())
|
||||
.setGestione(dto.getGestione())
|
||||
.setNumOrd(dto.getNumOrd());
|
||||
|
||||
ordineLav.setOperation(OperationType.SELECT_OBJECT);
|
||||
entityProcessor.processEntity(ordineLav, multiDBTransactionManager);
|
||||
MtbAart mtbAart = new MtbAart().setCodMart(ordineLav.getCodProd());
|
||||
@@ -1213,6 +1211,7 @@ public class MesProductionServiceV2 {
|
||||
break;
|
||||
case CLOSE:
|
||||
this.closeStep(ordine.getDataOrd(), ordine.getNumOrd(), ordine.getGestione(), groupStepDTO.getCodJfas(), null, null);
|
||||
|
||||
break;
|
||||
case STOP:
|
||||
String codDtipScar = setupGest.getSetup("W_PORDI_RC", "SETUP_DOCUMENTI", "COD_DTIP_SCAR");
|
||||
|
||||
@@ -813,18 +813,6 @@ public class ProductionService {
|
||||
|
||||
if (chiusuraLavorazioneDTO.isChiudiOrdine()) {
|
||||
entityBaseList.addAll(evadiIdLotto(chiusuraLavorazioneDTO.getIdLotto(), chiusuraLavorazioneDTO.getCodJfas()));
|
||||
|
||||
Date dataDoc = chiusuraLavorazioneDTO.getCaricoLavorazioneDTO() != null && chiusuraLavorazioneDTO.getCaricoLavorazioneDTO().getDataDoc() != null ? chiusuraLavorazioneDTO.getCaricoLavorazioneDTO().getDataDoc() : new Date();
|
||||
|
||||
JtbLott jtbLott = new JtbLott()
|
||||
.setIdLotto(chiusuraLavorazioneDTO.getIdLotto())
|
||||
.setCodJfas(chiusuraLavorazioneDTO.getCodJfas())
|
||||
.setDataChiusura(dataDoc)
|
||||
.setFlagComp("S");
|
||||
|
||||
jtbLott.setOperation(OperationType.UPDATE);
|
||||
|
||||
entityBaseList.add(jtbLott);
|
||||
} else if (chiusuraLavorazioneDTO.isTerminaLavorazioneLinea()) {
|
||||
entityBaseList.add(terminaLavorazioneLinea(chiusuraLavorazioneDTO.getOrdine(), chiusuraLavorazioneDTO.getCodJfas()));
|
||||
}
|
||||
@@ -833,6 +821,26 @@ public class ProductionService {
|
||||
entityBaseList.addAll(documentProdService.generaDocumentiLavorazioneIdLotto(chiusuraLavorazioneDTO));
|
||||
}
|
||||
|
||||
Date dataDoc;
|
||||
|
||||
if (chiusuraLavorazioneDTO.getCaricoLavorazioneDTO() != null && chiusuraLavorazioneDTO.getCaricoLavorazioneDTO().getDataDoc() != null) {
|
||||
dataDoc = chiusuraLavorazioneDTO.getCaricoLavorazioneDTO().getDataDoc();
|
||||
} else if (chiusuraLavorazioneDTO.getScaricoLavorazioneDTO() != null && chiusuraLavorazioneDTO.getScaricoLavorazioneDTO().getDataDoc() != null) {
|
||||
dataDoc = chiusuraLavorazioneDTO.getScaricoLavorazioneDTO().getDataDoc();
|
||||
} else {
|
||||
dataDoc = new Date();
|
||||
}
|
||||
|
||||
JtbLott jtbLott = new JtbLott()
|
||||
.setIdLotto(chiusuraLavorazioneDTO.getIdLotto())
|
||||
.setCodJfas(chiusuraLavorazioneDTO.getCodJfas())
|
||||
.setDataChiusura(dataDoc)
|
||||
.setFlagComp("S");
|
||||
|
||||
jtbLott.setOperation(OperationType.UPDATE);
|
||||
|
||||
entityBaseList.add(jtbLott);
|
||||
|
||||
if (chiusuraLavorazioneDTO.isSalvaDocumenti()) {
|
||||
entityProcessor.processEntityList(entityBaseList, true);
|
||||
}
|
||||
@@ -1019,17 +1027,17 @@ public class ProductionService {
|
||||
DtbOrdr rigaDist = righeOrdLav.stream().filter(x -> x.getCodMart().equalsIgnoreCase(mod.getCodMart())).findFirst().orElse(null);
|
||||
if (rigaDist != null) {
|
||||
rigaDist.setOperation(OperationType.UPDATE);
|
||||
if (!UtilityString.isNullOrEmpty(mod.getPartitaMag())){
|
||||
if (!UtilityString.isNullOrEmpty(mod.getPartitaMag())) {
|
||||
rigaDist.setPartitaMag(mod.getPartitaMag());
|
||||
}
|
||||
if (!UtilityBigDecimal.isNullOrZero(mod.getValUnt())){
|
||||
if (!UtilityBigDecimal.isNullOrZero(mod.getValUnt())) {
|
||||
rigaDist.setValUnt(mod.getValUnt());
|
||||
}
|
||||
ordLav.getDtbOrdr().add(rigaDist);
|
||||
}
|
||||
}
|
||||
|
||||
entityProcessor.processEntity(ordLav,multiDBTransactionManager);
|
||||
entityProcessor.processEntity(ordLav, multiDBTransactionManager);
|
||||
UtilityEntity.throwEntityException(ordLav);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user