IstruzioniEstrazioneDistinteBancaDAO.java 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. package dao;
  2. import java.sql.CallableStatement;
  3. import java.sql.Connection;
  4. import java.sql.SQLException;
  5. import java.sql.Types;
  6. import java.util.ArrayList;
  7. import java.util.List;
  8. import org.hibernate.Criteria;
  9. import org.hibernate.SQLQuery;
  10. import org.hibernate.annotations.OrderBy;
  11. import org.hibernate.criterion.Order;
  12. import org.hibernate.criterion.Restrictions;
  13. import org.springframework.stereotype.Repository;
  14. import bean.AppVariables;
  15. import common.dao.GenericDAO;
  16. import common.dao.IDAO;
  17. import sicura.entities.IstruzioniEstrazioneDistinteBanca;
  18. @Repository
  19. public class IstruzioniEstrazioneDistinteBancaDAO
  20. extends GenericDAO<IstruzioniEstrazioneDistinteBanca, Integer>
  21. implements IDAO<IstruzioniEstrazioneDistinteBanca, Integer>{
  22. public List<IstruzioniEstrazioneDistinteBanca> getIstruzioni(Integer idPiano) {
  23. boolean tx = startTransaction();
  24. try {
  25. Criteria crit = currentSession().createCriteria(IstruzioniEstrazioneDistinteBanca.class);
  26. crit
  27. .add(Restrictions.eq("idpianoEstrazione", idPiano))
  28. .addOrder(Order.asc("rowNumber"));
  29. List<IstruzioniEstrazioneDistinteBanca> res = crit.list();
  30. return res;
  31. } finally {
  32. if (tx)
  33. tx = commit();
  34. }
  35. }
  36. public List<IstruzioniEstrazioneDistinteBanca> getIstruzioniNoTrasaction(Integer idPiano) {
  37. Criteria crit = currentSession().createCriteria(IstruzioniEstrazioneDistinteBanca.class);
  38. crit
  39. .add(Restrictions.eq("idpianoEstrazione", idPiano))
  40. .addOrder(Order.asc("rowNumber"));
  41. List<IstruzioniEstrazioneDistinteBanca> res = crit.list();
  42. return res;
  43. }
  44. public void zapIstruzioni(Integer idPiano, List<Integer> ids, AppVariables appVariables) {
  45. /*
  46. CREATE PROC [dbo].[spUCBase_IstruzioniEstrazioneDistinteBanca_delete]
  47. @SecurityUserId VARCHAR(15),
  48. @SecurityGuid UNIQUEIDENTIFIER,
  49. @ID int
  50. */
  51. try {
  52. Integer res = null;
  53. Connection connection = getConnection();
  54. CallableStatement proc;
  55. try {
  56. proc = connection.prepareCall("{? = call spUCBase_IstruzioniEstrazioneDistinteBanca_delete (?,?,?)}");
  57. proc.registerOutParameter(1, Types.VARCHAR);
  58. proc.setString(2, appVariables.getUserId());
  59. proc.setString(3, appVariables.getGuid());
  60. for (Integer id:ids) {
  61. proc.setObject(4, id);
  62. proc.execute();
  63. proc.getMoreResults();
  64. res = proc.getInt(1);
  65. }
  66. } catch (SQLException e) {
  67. // TODO Auto-generated catch block
  68. e.printStackTrace();
  69. }
  70. } finally {
  71. }
  72. // if (ids.size()>0) {
  73. // String sql = "delete from IstruzioniEstrazioneDistinteBanca where idPianoEstrazione=:idPiano and id not in (:ids)";
  74. // SQLQuery q = currentSession().createSQLQuery(sql);
  75. // q.setParameter("idPiano", idPiano);
  76. // q.setParameterList("ids", ids);
  77. // q.executeUpdate();
  78. // }
  79. }
  80. public Integer saveNoTransaction(IstruzioniEstrazioneDistinteBanca istruzione, AppVariables appVariables) throws Exception{
  81. /*
  82. CREATE PROC [dbo].[spUCBase_IstruzioniEstrazioneDistinteBanca_update]
  83. @SecurityUserId VARCHAR(15),
  84. @SecurityGuid UNIQUEIDENTIFIER,
  85. @ID int,
  86. @IDPianoEstrazione int,
  87. @RowNumber int,
  88. @Tipologia varchar(30),
  89. @TipoDisposizione varchar(3),
  90. @Provenienza varchar(30),
  91. @FunzioneOrdinante varchar(50),
  92. @SignRangeImportoDa varchar(2),
  93. @RangeImportoDa float,
  94. @SignRangeImportoA varchar(2),
  95. @RangeImportoA float,
  96. @ImportoLimiteDistinta float,
  97. @MaxNumberDisposizioni varchar(10),
  98. @SearchBancaOrdinanteStep1 varchar(2),
  99. @SearchBancaOrdinanteStep2 varchar(2),
  100. @SearchBancaOrdinanteStep3 varchar(2),
  101. @SearchBancaOrdinanteStep4 varchar(2),
  102. @SearchBancaOrdinanteStep5 varchar(2),
  103. @SearchBancaOrdinanteStep6 varchar(2),
  104. @SearchBancaOrdinanteStep7 varchar(2),
  105. @SearchBancaOrdinanteStep8 varchar(2),
  106. @SearchBancaOrdinanteStep9 varchar(2),
  107. @SearchBancaOrdinanteStep10 varchar(2)
  108. */
  109. try {
  110. Integer res = null;
  111. Connection connection = getConnection();
  112. CallableStatement proc;
  113. try {
  114. proc = connection.prepareCall("{? = call spUCBase_IstruzioniEstrazioneDistinteBanca_update (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}");
  115. proc.registerOutParameter(1, Types.VARCHAR);
  116. proc.setString(2, appVariables.getUserId());
  117. proc.setString(3, appVariables.getGuid());
  118. proc.setObject(4, istruzione.getId());
  119. proc.setObject(5, istruzione.getIdpianoEstrazione());
  120. proc.setObject(6, istruzione.getRowNumber());
  121. proc.setString(7, istruzione.getTipologia());
  122. proc.setString(8, istruzione.getTipoDisposizione());
  123. proc.setString(9, istruzione.getProvenienza());
  124. proc.setString(10, istruzione.getFunzioneOrdinante());
  125. proc.setString(11, istruzione.getSignRangeImportoDa());
  126. proc.setObject(12, istruzione.getRangeImportoDa());
  127. proc.setString(13, istruzione.getSignRangeImportoA());
  128. proc.setObject(14, istruzione.getRangeImportoA());
  129. proc.setObject(15, istruzione.getImportoLimiteDistinta());
  130. proc.setString(16, istruzione.getMaxNumberDisposizioni());
  131. proc.setString(17,istruzione.getSearchBancaOrdinanteStep1());
  132. proc.setString(18,istruzione.getSearchBancaOrdinanteStep2());
  133. proc.setString(19,istruzione.getSearchBancaOrdinanteStep3());
  134. proc.setString(20,istruzione.getSearchBancaOrdinanteStep4());
  135. proc.setString(21,istruzione.getSearchBancaOrdinanteStep5());
  136. proc.setString(22,istruzione.getSearchBancaOrdinanteStep6());
  137. proc.setString(23,istruzione.getSearchBancaOrdinanteStep7());
  138. proc.setString(24,istruzione.getSearchBancaOrdinanteStep8());
  139. proc.setString(25,istruzione.getSearchBancaOrdinanteStep9());
  140. proc.setString(26,istruzione.getSearchBancaOrdinanteStep10());
  141. proc.execute();
  142. proc.getMoreResults();
  143. res = proc.getInt(1);
  144. } catch (SQLException ex) {
  145. throw ex;
  146. }
  147. return res;
  148. } finally {
  149. }
  150. }
  151. }