package it.acxent.art; import it.acxent.db.ApplParmFull; import it.acxent.db.WcString; import it.acxent.util.Vectumerator; import java.io.Serializable; import java.sql.PreparedStatement; import java.sql.SQLException; public class Kit extends _ArtAdapter implements Serializable { private static final long serialVersionUID = 805638952521639067L; private long id_kit; private long id_articoloSecondario; private Articolo articoloSecondario; private ArticoloVariante articoloVariante; private long id_articolo; private long id_articoloVariante; private long id_articoloVarianteSecondario; private Articolo articolo; private ArticoloVariante articoloVarianteSecondario; private long flgEstendiVarianteKit; public Kit(ApplParmFull newApplParmFull) { super(newApplParmFull); } public Kit() {} public void setId_kit(long newId_kit) { this.id_kit = newId_kit; } public void setId_articoloSecondario(long newId_articolo) { this.id_articoloSecondario = newId_articolo; setArticoloSecondario(null); } public long getId_articoloSecondario() { return this.id_articoloSecondario; } public void setArticoloSecondario(Articolo newArticolo) { this.articoloSecondario = newArticolo; } public Articolo getArticoloSecondario() { this.articoloSecondario = (Articolo)getSecondaryObject(this.articoloSecondario, Articolo.class, getId_articoloSecondario()); return this.articoloSecondario; } protected void deleteCascade() {} public Vectumerator findByCR(KitCR CR, int pageNumber, int pageRows) { String s_Sql_Find = "select A.* from KIT AS A"; String s_Sql_Order = ""; WcString wc = new WcString(); try { PreparedStatement stmt = getConn().prepareStatement(s_Sql_Find + s_Sql_Find + wc.toString()); return findRows(stmt, pageNumber, pageRows); } catch (SQLException e) { handleDebug(e); return AB_EMPTY_VECTUMERATOR; } } public long getId_kit() { return this.id_kit; } public Vectumerator findByArticoloPrimario(long l_id_articoloPrimario, int pageNumber, int pageRows) { String s_Sql_Find = "select A.* , B.nome from KIT AS A, ARTICOLO AS B"; String s_Sql_Order = " order by B.nome"; WcString wc = new WcString(); wc.addWc("A.id_articolo=B.id_articolo"); wc.addWc("A.id_articolo=" + l_id_articoloPrimario); try { PreparedStatement stmt = getConn().prepareStatement(s_Sql_Find + s_Sql_Find + wc.toString()); Vectumerator vec = findRows(stmt, pageNumber, pageRows); return vec; } catch (SQLException e) { handleDebug(e); return AB_EMPTY_VECTUMERATOR; } } public Vectumerator findById_articoloVariante(long l_id_articoloVariante, int pageNumber, int pageRows) { String s_Sql_Find = "select A.* from KIT AS A"; String s_Sql_Order = ""; WcString wc = new WcString(); wc.addWc("(id_articoloVariante=" + l_id_articoloVariante + " or id_articoloVarianteSecondario=" + l_id_articoloVariante + ")"); try { PreparedStatement stmt = getConn().prepareStatement(s_Sql_Find + s_Sql_Find + wc.toString()); return findRows(stmt, pageNumber, pageRows); } catch (SQLException e) { handleDebug(e); return AB_EMPTY_VECTUMERATOR; } } public Vectumerator findById_articoloVarianteDisponibile(long l_id_articoloVariante, int pageNumber, int pageRows) { String s_Sql_Find = "select A.* from KIT AS A, DISPONIBILITA AS C"; String s_Sql_Order = ""; WcString wc = new WcString(); wc.addWc("A.id_articoloVarianteSecondario=C.id_articoloVarianteD"); wc.addWc("A.id_articoloVariante=" + l_id_articoloVariante); wc.addWc("C.quantitaD>0"); try { PreparedStatement stmt = getConn().prepareStatement(s_Sql_Find + s_Sql_Find + wc.toString()); return findRows(stmt, pageNumber, pageRows); } catch (SQLException e) { handleDebug(e); return AB_EMPTY_VECTUMERATOR; } } public void setArticolo(Articolo articoloPrimario) { this.articolo = articoloPrimario; } public long getId_articolo() { return this.id_articolo; } public void setId_articolo(long id_articolo) { this.id_articolo = id_articolo; setArticolo(null); } public ArticoloVariante getArticoloVariante() { this.articoloVariante = (ArticoloVariante)getSecondaryObject(this.articoloVariante, ArticoloVariante.class, getId_articoloVariante()); return this.articoloVariante; } public void setArticoloVariante(ArticoloVariante articoloVariantePrimario) { this.articoloVariante = articoloVariantePrimario; } public ArticoloVariante getArticoloVarianteSecondario() { this.articoloVarianteSecondario = (ArticoloVariante)getSecondaryObject(this.articoloVarianteSecondario, ArticoloVariante.class, getId_articoloVarianteSecondario()); return this.articoloVarianteSecondario; } public void setArticoloVarianteSecondario(ArticoloVariante articoloVarianteSecondario) { this.articoloVarianteSecondario = articoloVarianteSecondario; } public long getId_articoloVariante() { return this.id_articoloVariante; } public void setId_articoloVariante(long id_articoloVariante) { this.id_articoloVariante = id_articoloVariante; setArticoloVariante(null); } public long getId_articoloVarianteSecondario() { return this.id_articoloVarianteSecondario; } public void setId_articoloVarianteSecondario(long id_articoloVarianteSecondario) { this.id_articoloVarianteSecondario = id_articoloVarianteSecondario; setArticoloVarianteSecondario(null); } public Articolo getArticolo() { this.articolo = (Articolo)getSecondaryObject(this.articolo, Articolo.class, getId_articolo()); return this.articolo; } public long getId_articoloAssociato(long l_id) { if (l_id == getId_articoloSecondario()) return getId_articolo(); if (l_id == getId_articolo()) return getId_articoloSecondario(); return 0L; } public void findById_articoloPrimarioId_articoloSecondario(long l_id_articoloPrimario, long l_id_articoloSecondario) { String s_Sql_Find = "select A.* from KIT AS A"; String s_Sql_Order = ""; WcString wc = new WcString(); wc.addWc("((id_articolo=" + l_id_articoloPrimario + " and id_articoloSecondario=" + l_id_articoloSecondario + ") or(id_articolo=" + l_id_articoloSecondario + " and id_articoloSecondario=" + l_id_articoloPrimario + "))"); try { PreparedStatement stmt = getConn().prepareStatement(s_Sql_Find + s_Sql_Find + wc.toString()); findFirstRecord(stmt); } catch (SQLException e) { handleDebug(e); } } public Articolo getArticoloAssociato(long l_id) { if (l_id == getId_articoloSecondario()) return getArticolo(); if (l_id == getId_articolo()) return getArticoloSecondario(); return new Articolo(getApFull()); } public long getFlgEstendiVarianteKit() { return this.flgEstendiVarianteKit; } public void setFlgEstendiVarianteKit(long flgEstendiVariante) { this.flgEstendiVarianteKit = flgEstendiVariante; } }