Aggiunto nuovo campo nella lista degli articoli
This commit is contained in:
@@ -30,6 +30,8 @@ public class ArticoliDTO implements Serializable {
|
||||
private BigDecimal prezzo_base;
|
||||
@SqlField
|
||||
private BigDecimal val_scatto;
|
||||
@SqlField
|
||||
private short num_min_art_col;
|
||||
|
||||
private List<ColoriDTO> colori = new ArrayList<ColoriDTO>();
|
||||
|
||||
@@ -141,4 +143,13 @@ public class ArticoliDTO implements Serializable {
|
||||
public void setVal_scatto(BigDecimal val_scatto) {
|
||||
this.val_scatto = val_scatto;
|
||||
}
|
||||
|
||||
public short getNum_min_art_col() {
|
||||
return num_min_art_col;
|
||||
}
|
||||
|
||||
public ArticoliDTO setNum_min_art_col(short num_min_art_col) {
|
||||
this.num_min_art_col = num_min_art_col;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@@ -46,6 +46,7 @@ import java.sql.ResultSet;
|
||||
import java.text.DateFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@Scope("request")
|
||||
@@ -394,9 +395,6 @@ public class OrdikidsService {
|
||||
private List<ArticoliDTO> getListArticoli(String codVage, String tableName) throws Exception {
|
||||
boolean overProduction = setupGest.getSetupBoolean(multiDBTransactionManager.getPrimaryConnection(), "ORDIKIDS", "SETUP", "VEND_OVER_PRODUCTION");
|
||||
|
||||
List<ArticoliDTO> articoli = null;
|
||||
PreparedStatement ps, psArt;
|
||||
|
||||
String sql =
|
||||
"SELECT ttb_style.cod_style, " +
|
||||
" mtb_aart.descrizione, " +
|
||||
@@ -406,9 +404,11 @@ public class OrdikidsService {
|
||||
" 'N' AS chiedi_disp, " +
|
||||
" mtb_aart.cod_sco_art, " +
|
||||
" ttb_style.prezzo_base, " +
|
||||
" ttb_style.val_scatto " +
|
||||
" ttb_style.val_scatto, " +
|
||||
" ttb_line.num_min_art_col " +
|
||||
"FROM tvvw_agen_line INNER JOIN ttb_style ON tvvw_agen_line.cod_line = ttb_style.cod_line and ttb_style.anno_stag = tvvw_agen_line.anno_stag " +
|
||||
" INNER JOIN mtb_aart ON ttb_style.cod_style = mtb_aart.cod_mart " +
|
||||
" INNER JOIN ttb_line ON ttb_style.cod_line = ttb_line.cod_line " +
|
||||
"WHERE tvvw_agen_line.cod_vage =" + UtilityDB.valueToString(codVage) + " AND " +
|
||||
" CONVERT(VARCHAR, GETDATE(), 111) BETWEEN tvvw_agen_line.data_iniz_ord AND tvvw_agen_line.data_fine_ord AND " +
|
||||
" tvvw_agen_line.data_iniz_ord >= tvvw_agen_line.first_data_iniz_ord AND " +
|
||||
@@ -435,39 +435,37 @@ public class OrdikidsService {
|
||||
" CASE WHEN qta_ord_prod > 0 THEN 'S' ELSE 'N'END AS chiedi_disp, " +
|
||||
" art.cod_sco_art, " +
|
||||
" art.prezzo_base, " +
|
||||
" art.val_scatto " +
|
||||
" art.val_scatto, " +
|
||||
" art.num_min_art_col " +
|
||||
" FROM art left outer join ordP on art.cod_style = ordP.cod_mart ";
|
||||
}
|
||||
|
||||
ps = multiDBTransactionManager.prepareStatement(sql);
|
||||
|
||||
articoli = new ResultSetMapper()
|
||||
.mapResultSetToList(ps.executeQuery(), ArticoliDTO.class);
|
||||
List<ArticoliDTO> articoli = new ResultSetMapper()
|
||||
.mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, ArticoliDTO.class);
|
||||
if (articoli == null) articoli = new ArrayList<>();
|
||||
ps.close();
|
||||
|
||||
sql = "SELECT ttb_style.cod_style, mtb_aart.descrizione, ttb_style.des_estera, " +
|
||||
" ttb_style.flag_asso, 'S' chiedi_disp, " +
|
||||
" mtb_aart.cod_sco_art, ttb_style.prezzo_base, ttb_style.val_scatto " +
|
||||
" mtb_aart.cod_sco_art, ttb_style.prezzo_base, ttb_style.val_scatto, " +
|
||||
" ttb_line.num_min_art_col " +
|
||||
"FROM tvvw_agen_line INNER JOIN ttb_style ON tvvw_agen_line.cod_line = ttb_style.cod_line and tvvw_agen_line.anno_stag = ttb_style.anno_stag " +
|
||||
" INNER JOIN mtb_aart ON ttb_style.cod_style = mtb_aart.cod_mart " +
|
||||
" INNER JOIN ttb_line ON ttb_style.cod_line = ttb_line.cod_line " +
|
||||
" INNER JOIN (Select cod_style " +
|
||||
" from dbo.ftx_getDisponibilitaArticoli( CONVERT(varchar, GETDATE(), 111), null, null, null, null, null, null)tab " +
|
||||
" from dbo.ftx_getDisponibilitaArticoli( CAST(GETDATE() as DATE), null, null, null, null, null, null)tab " +
|
||||
" Where tab.qta_disp > 0 " +
|
||||
" Group by cod_style ) disponib ON ttb_style.cod_style = disponib.cod_style " +
|
||||
" WHERE tvvw_agen_line.cod_vage =" + UtilityDB.valueToString(codVage) + " AND " +
|
||||
" CONVERT(VARCHAR, GETDATE(), 111) BETWEEN tvvw_agen_line.data_iniz_riord AND tvvw_agen_line.data_fine_riord AND " +
|
||||
" CAST(GETDATE() as DATE) BETWEEN tvvw_agen_line.data_iniz_riord AND tvvw_agen_line.data_fine_riord AND " +
|
||||
" tvvw_agen_line.data_iniz_riord >= tvvw_agen_line.first_data_iniz_riord AND " +
|
||||
" ttb_style.flag_listino = 'S' ";
|
||||
|
||||
psArt = multiDBTransactionManager.prepareStatement(sql);
|
||||
|
||||
List<ArticoliDTO> articoliPronto = new ResultSetMapper()
|
||||
.mapResultSetToList(psArt.executeQuery(), ArticoliDTO.class);
|
||||
.mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, ArticoliDTO.class);
|
||||
|
||||
if (articoliPronto == null) articoliPronto = new ArrayList<>();
|
||||
articoli.addAll(articoliPronto);
|
||||
psArt.close();
|
||||
|
||||
//CREAZIONE TABELLA TEMPORANEA CHE DOVRA' CONTENERE TUTTE LE ISTANZE DELLA CLASSE ArticoliDTO
|
||||
if (!UtilityString.isNullOrEmpty(tableName)) {
|
||||
@@ -479,7 +477,8 @@ public class OrdikidsService {
|
||||
+ " chiedi_disp varchar(1),"
|
||||
+ " cod_sco_art varchar(5),"
|
||||
+ " prezzo_base decimal(20, 5), "
|
||||
+ " val_scatto decimal(20, 5)) ";
|
||||
+ " val_scatto decimal(20, 5), "
|
||||
+ " num_min_art_col tinyint) ";
|
||||
|
||||
PreparedStatement info = multiDBTransactionManager.prepareStatement(sql);
|
||||
info.executeUpdate();
|
||||
@@ -505,52 +504,37 @@ public class OrdikidsService {
|
||||
List<CodBarreDTO> codBarre = null;
|
||||
List<ArticoliDTO> articoli = null;
|
||||
|
||||
Map<String, String> DatiAgente = new HashMap<String, String>();
|
||||
DatiAgente = getCond_vvwClientiAgenti(md5User);
|
||||
Map<String, String> DatiAgente = getCond_vvwClientiAgenti(md5User);
|
||||
|
||||
if (DatiAgente.size() > 0) {
|
||||
PreparedStatement ps;
|
||||
String sql;
|
||||
|
||||
String codVage = DatiAgente.get("cod_vage");
|
||||
|
||||
//ACQUISIZIONE ELENCO ARTICOLI
|
||||
String tableName = UtilityDB.defTmpTabName("t1_");
|
||||
articoli = this.getListArticoli(codVage, tableName);
|
||||
articoli = this.getListArticoli(codVage);
|
||||
|
||||
List<String> articoliCodStyles = new ArrayList<String>();
|
||||
|
||||
for (ArticoliDTO articoliDTO : articoli) {
|
||||
articoliCodStyles.add(articoliDTO.getCod_style());
|
||||
}
|
||||
List<String> articoliCodStyles = articoli.stream().map(x -> x.getCod_style()).collect(Collectors.toList());
|
||||
|
||||
String articoliInVector = "'" + Joiner.on("','").skipNulls().join(articoliCodStyles) + "'";
|
||||
|
||||
sql = "SELECT ttb_style_colori.cod_col, ttb_style_colori.descrizione, ttb_style_colori.cod_style, "
|
||||
String sql = "SELECT ttb_style_colori.cod_col, ttb_style_colori.descrizione, ttb_style_colori.cod_style, "
|
||||
+ "CASE WHEN ttb_style_colori.cod_col = ttb_style.cod_col_camp THEN 'S' ELSE 'N' end as flag_campione "
|
||||
+ "FROM ttb_style_colori "
|
||||
+ "left outer join ttb_style ON ttb_style.cod_style = ttb_style_colori.cod_style "
|
||||
+ "WHERE ttb_style_colori.flag_attivo = 'S' AND ttb_style_colori.cod_style IN(" + articoliInVector + ")";
|
||||
|
||||
ps = multiDBTransactionManager.prepareStatement(sql);
|
||||
|
||||
List<ColoriDTO> coloriFull = new ResultSetMapper()
|
||||
.mapResultSetToList(ps.executeQuery(), ColoriDTO.class);
|
||||
if (coloriFull == null) coloriFull = new ArrayList<ColoriDTO>();
|
||||
ps.close();
|
||||
.mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, ColoriDTO.class);
|
||||
if (coloriFull == null) coloriFull = new ArrayList<>();
|
||||
|
||||
sql = "SELECT cod_tagl, num_scatto, costo, cod_style, pos FROM ttb_style_taglie WHERE flag_attivo = 'S' AND cod_style IN(" + articoliInVector + ") ORDER BY cod_style, pos";
|
||||
|
||||
ps = multiDBTransactionManager.prepareStatement(sql);
|
||||
List<TaglieDTO> taglieFull = new ResultSetMapper()
|
||||
.mapResultSetToList(ps.executeQuery(), TaglieDTO.class);
|
||||
if (taglieFull == null) taglieFull = new ArrayList<TaglieDTO>();
|
||||
ps.close();
|
||||
.mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, TaglieDTO.class);
|
||||
if (taglieFull == null) taglieFull = new ArrayList<>();
|
||||
|
||||
for (ArticoliDTO articoloDTO : articoli) {
|
||||
List<ColoriDTO> coloriOLDStyle = new ArrayList<ColoriDTO>();
|
||||
for (ColoriDTO colore : coloriFull) {
|
||||
if (colore.getCodStyle().equalsIgnoreCase(articoloDTO.getCod_style())) coloriOLDStyle.add(colore);
|
||||
}
|
||||
List<ColoriDTO> coloriOLDStyle =
|
||||
coloriFull.stream().filter(x->x.getCodStyle().equalsIgnoreCase(articoloDTO.getCod_style())).collect(Collectors.toList());
|
||||
|
||||
articoloDTO.setColori(coloriOLDStyle);
|
||||
|
||||
@@ -573,22 +557,7 @@ public class OrdikidsService {
|
||||
+ " mtb_lisv.cod_mart = ttb_lisv_taglie.cod_style AND "
|
||||
+ " ttb_lisv_taglie.cod_style + ttb_lisv_taglie.cod_tagl IN(" + codStyleTaglInVector + ")";
|
||||
|
||||
List<ListiniTaglieDTO> listiniFull = new ArrayList<ListiniTaglieDTO>();
|
||||
|
||||
ps = multiDBTransactionManager.prepareStatement(sql);
|
||||
ResultSet rs = ps.executeQuery();
|
||||
|
||||
while (rs.next()) {
|
||||
ListiniTaglieDTO dto = new ListiniTaglieDTO();
|
||||
dto.setCod_vlis(rs.getString("cod_vlis"));
|
||||
dto.setPrz_vend(rs.getBigDecimal("prz_vend"));
|
||||
dto.setRicarica(rs.getBigDecimal("ricarica"));
|
||||
dto.setCodStyleTagl(rs.getString("style_tagl"));
|
||||
listiniFull.add(dto);
|
||||
}
|
||||
|
||||
rs.close();
|
||||
ps.close();
|
||||
List<ListiniTaglieDTO> listiniFull = new ResultSetMapper().mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, ListiniTaglieDTO.class);
|
||||
|
||||
for (TaglieDTO tagliaDTO : articoloDTO.getTaglie()) {
|
||||
List<ListiniTaglieDTO> listiniOLDStyle = new ArrayList<ListiniTaglieDTO>();
|
||||
@@ -608,23 +577,22 @@ public class OrdikidsService {
|
||||
sql = "SELECT isNull(mtb_aart.cod_mart_stat, mtb_aart.cod_mart) as cod_style, "
|
||||
+ " null as cod_asso,"
|
||||
+ " cod_barre "
|
||||
+ " FROM " + tableName + " as TabArt, ttb_bar_code, mtb_aart "
|
||||
+ " WHERE isNull(mtb_aart.cod_mart_stat, mtb_aart.cod_mart) = TabArt.cod_style AND "
|
||||
+ " FROM ttb_bar_code, mtb_aart "
|
||||
+ " WHERE isNull(mtb_aart.cod_mart_stat, mtb_aart.cod_mart)IN (" + articoliInVector + ") AND "
|
||||
+ " mtb_aart.cod_mart = ttb_bar_code.cod_style"
|
||||
+ " UNION "
|
||||
+ " SELECT isNull(mtb_aart.cod_mart_stat, mtb_aart.cod_mart) as cod_style, "
|
||||
+ " ttb_style_ass.cod_asso, "
|
||||
+ " ttb_style_ass.cod_barre "
|
||||
+ " FROM " + tableName + " as TabArt, ttb_style_ass, mtb_aart "
|
||||
+ " WHERE isNull(mtb_aart.cod_mart_stat, mtb_aart.cod_mart) = TabArt.cod_style AND "
|
||||
+ " FROM ttb_style_ass, mtb_aart "
|
||||
+ " WHERE isNull(mtb_aart.cod_mart_stat, mtb_aart.cod_mart) IN (" + articoliInVector + ") AND "
|
||||
+ " mtb_aart.cod_mart = ttb_style_ass.cod_style "
|
||||
+ "ORDER BY 1, 2";
|
||||
|
||||
ps = multiDBTransactionManager.prepareStatement(sql);
|
||||
|
||||
codBarre = new ResultSetMapper().mapResultSetToList(ps.executeQuery(), CodBarreDTO.class);
|
||||
if (codBarre == null) codBarre = new ArrayList<CodBarreDTO>();
|
||||
ps.close();
|
||||
codBarre = new ResultSetMapper().mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, CodBarreDTO.class);
|
||||
if (codBarre == null) codBarre = new ArrayList<>();
|
||||
|
||||
}
|
||||
|
||||
if (articoli == null) {
|
||||
@@ -632,7 +600,7 @@ public class OrdikidsService {
|
||||
}
|
||||
|
||||
if (codBarre == null) {
|
||||
codBarre = new ArrayList<CodBarreDTO>();
|
||||
codBarre = new ArrayList<>();
|
||||
}
|
||||
|
||||
return new ArticoliCodbarreDTO(articoli, codBarre);
|
||||
|
||||
Reference in New Issue
Block a user