Guest User

Untitled

a guest
Dec 17th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.05 KB | None | 0 0
  1. package com.generali.eVP.dao._impl.akDAOImpl;
  2.  
  3. import org.apache.commons.lang.StringUtils;
  4. import org.apache.commons.lang.math.NumberUtils;
  5. import org.slf4j.Logger;
  6. import org.slf4j.LoggerFactory;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.beans.factory.annotation.Qualifier;
  9. import org.springframework.dao.DataAccessException;
  10. import org.springframework.dao.EmptyResultDataAccessException;
  11. import org.springframework.jdbc.core.JdbcTemplate;
  12. import org.springframework.stereotype.Repository;
  13.  
  14. import com.generali.eVP.dao.akDAO.AkDAO;
  15.  
  16. import com.generali.eVP.model.ak.IzlazDohvatiPremiju;
  17. import com.generali.eVP.model.ak.IzlazSteta;
  18.  
  19. import com.generali.eVP.model.ak.KaskoNovaPolica;
  20. import com.generali.eVP.model.ak.KaskoStaraPolica;
  21. import com.generali.eVP.model.ak.UlazDohvatiPremiju;
  22. import com.generali.eVP.model.ak.UlazSteta;
  23. import com.generali.eVP.model.ak.VoziloIzlaz;
  24. import com.generali.eVP.model.ak.VoziloUlaz;
  25.  
  26. @Repository
  27. public class AkDAOImpl implements AkDAO {
  28.  
  29. private static final Logger LOGGER_AK = LoggerFactory.getLogger("ak");
  30.  
  31. @Autowired
  32. @Qualifier("ins2JdbcTemplate")
  33. JdbcTemplate ins2jdbcTemplate;
  34.  
  35. @Override
  36. public KaskoNovaPolica getForNovaPolica(KaskoStaraPolica staraPolica) {
  37. try {
  38. return ins2jdbcTemplate.queryForObject("SELECT * FROM EVP_V_KASKO_ZB WHERE SIFRA = ? ",new Object[] { staraPolica.getBrojPrethodnePolice() }, (rs, rowNum) -> {
  39. KaskoNovaPolica kaskoNew = new KaskoNovaPolica();
  40. if (StringUtils.isNotEmpty(rs.getString(3)))
  41. kaskoNew.setOsTipPrethodne(rs.getString(3));
  42. if (StringUtils.isNotEmpty(rs.getString(4)))
  43. kaskoNew.setBrojPrethodne(rs.getString(4));
  44. if (StringUtils.isNotEmpty(rs.getString(5)))
  45. kaskoNew.setOsTipMaster(rs.getString(5));
  46. if (StringUtils.isNotEmpty(rs.getString(6)))
  47. kaskoNew.setMaster(rs.getString(6));
  48. if (StringUtils.isNotEmpty(rs.getString(7)))
  49. kaskoNew.setPosrednik(rs.getString(7));
  50. if (StringUtils.isNotEmpty(rs.getString(8)))
  51. kaskoNew.setSatOsiguranja(rs.getString(8));
  52. if (StringUtils.isNotEmpty(rs.getString(9)))
  53. kaskoNew.setDatumOsiguranja(rs.getString(9));
  54. if (StringUtils.isNotEmpty(rs.getString(10)))
  55. kaskoNew.setStrankaUgovaratelj(rs.getString(10));
  56. if (StringUtils.isNotEmpty(rs.getString(11)))
  57. kaskoNew.setPosrednikObnove(rs.getString(11));
  58. if (StringUtils.isNotEmpty(rs.getString(12)))
  59. kaskoNew.setRegistarskaOznaka(rs.getString(12));
  60. if (StringUtils.isNotEmpty(rs.getString(13)))
  61. kaskoNew.setBrojSasije(rs.getString(13));
  62. if (StringUtils.isNotEmpty(rs.getString(14)))
  63. kaskoNew.setProizvodjac(rs.getString(14));
  64. if (StringUtils.isNotEmpty(rs.getString(15)))
  65. kaskoNew.setTipModelVozila(rs.getString(15));
  66. if (StringUtils.isNotEmpty(rs.getString(16)))
  67. kaskoNew.setPremijskaGrupa(rs.getString(16));
  68. if (NumberUtils.isNumber(rs.getString(17)))
  69. kaskoNew.setBrojMjesta(rs.getInt(17));
  70. if (StringUtils.isNotEmpty(rs.getString(18)))
  71. kaskoNew.setSnagaMotora(rs.getString(18));
  72. if (StringUtils.isNotEmpty(rs.getString(19)))
  73. kaskoNew.setNdm(rs.getString(19));
  74. if (StringUtils.isNotEmpty(rs.getString(20)))
  75. kaskoNew.setZapremninaMotora(rs.getString(20));
  76. if (StringUtils.isNotEmpty(rs.getString(21)))
  77. kaskoNew.setVoziloNosivost(rs.getString(21));
  78. if (StringUtils.isNotEmpty(rs.getString(22)))
  79. kaskoNew.setVoziloGodina(rs.getString(22));
  80. if (StringUtils.isNotEmpty(rs.getString(23)))
  81. kaskoNew.setStrankaOsiguranik(rs.getString(23));
  82. if (StringUtils.isNotEmpty(rs.getString(24)))
  83. kaskoNew.setObnovaNa(rs.getString(24));
  84. if (StringUtils.isNotEmpty(rs.getString(25)))
  85. kaskoNew.setMentorPosrednika(rs.getString(25));
  86. if (StringUtils.isNotEmpty(rs.getString(26)))
  87. kaskoNew.setOibUgovaratelj(rs.getString(26));
  88. if (StringUtils.isNotEmpty(rs.getString(27)))
  89. kaskoNew.setOibOsiguranik(rs.getString(27));
  90. return kaskoNew;
  91. });
  92. }
  93. catch (DataAccessException e) {
  94. e.printStackTrace();
  95.  
  96. }
  97. return new KaskoNovaPolica();}
  98.  
  99.  
  100.  
  101.  
  102.  
  103. @Override
  104. public IzlazSteta getIzlazSteta(UlazSteta ulazSteta) {
  105. try {
  106. return ins2jdbcTemplate.queryForObject("SELECT * from TABLE (DRAZEN.STETA_KASKO(?, ?))",
  107. new Object[] { ulazSteta.getOsTip(), ulazSteta.getOsSifra() }, (rs, rowNum) -> {
  108. IzlazSteta izlazSteta = new IzlazSteta();
  109. if(StringUtils.isNotEmpty(rs.getString(1)))
  110. izlazSteta.setsOsTip(rs.getString(1));
  111. if(StringUtils.isNotEmpty(rs.getString(2)))
  112. izlazSteta.setsOsSifra(rs.getString(2));
  113. if(StringUtils.isNotEmpty(rs.getString(3)))
  114. izlazSteta.setsSteta(rs.getString(3));
  115. if(StringUtils.isNotEmpty(rs.getString(4)))
  116. izlazSteta.setsBrojSteta(rs.getString(4));
  117. return izlazSteta;
  118. });
  119. } catch (EmptyResultDataAccessException e) {
  120. LOGGER_AK.info("Ne postoje podatci o šteti;"+ulazSteta.getOsTip()+";"+ulazSteta.getOsSifra());
  121. return new IzlazSteta(ulazSteta.getOsTip(), ulazSteta.getOsSifra(), "NE", "0");
  122. }
  123. catch(Exception e) {
  124. LOGGER_AK.error("Dogodila se greška kod dohvata šteta;"+ulazSteta.getOsTip()+";"+ulazSteta.getOsSifra(),e);
  125. return new IzlazSteta(ulazSteta.getOsTip(), ulazSteta.getOsSifra(), "NE", "0");
  126. }
  127. }
  128.  
  129.  
  130. @Override
  131. public VoziloIzlaz getVozilo(VoziloUlaz vozilo) {
  132. try {
  133. String sql = "SELECT e.model, e.v_godina, e.datum_osiguranja\r\n" +
  134. " FROM evp_v_kasko_zb e\r\n" +
  135. " WHERE e.oib_osiguranik = ? --> guess what? A valid OIB :)\r\n" +
  136. " AND TO_DATE (e.datum_osiguranja, 'dd.mm.yyyy') =\r\n" +
  137. " (SELECT MAX (TO_DATE (e1.datum_osiguranja, 'dd.mm.yyyy'))\r\n" +
  138. " FROM evp_v_kasko_zb e1\r\n" +
  139. " WHERE e1.oib_osiguranik = e.oib_osiguranik)";
  140. return ins2jdbcTemplate.queryForObject(sql, new Object[] {vozilo.getVozilo() }, (rs, rowNum) -> {
  141. VoziloIzlaz vozIzlaz = new VoziloIzlaz();
  142. vozIzlaz.setDatum(rs.getString("DATUM_OSIGURANJA"));
  143. vozIzlaz.setGodina(rs.getString("V_GODINA"));
  144. vozIzlaz.setModel(rs.getString("MODEL"));
  145. return vozIzlaz;
  146. });
  147.  
  148. }catch(Exception e) {
  149. e.printStackTrace();
  150. }
  151. return new VoziloIzlaz();
  152. }
  153.  
  154.  
  155.  
  156. @Override
  157. public IzlazDohvatiPremiju getIzlazDohvatiPremiju(UlazDohvatiPremiju ulazDohvatiPremiju) {
  158. try {
  159. return ins2jdbcTemplate.queryForObject("SELECT * FROM EVP_V_AUTOKASKO01 WHERE SIFRA = ?",
  160. new Object[] { ulazDohvatiPremiju.getSifra() }, (rs, rowNum) -> {
  161. IzlazDohvatiPremiju izlazDohvatiPremiju = new IzlazDohvatiPremiju();
  162. izlazDohvatiPremiju.setPremijaNeto(rs.getString("PREMIJA_NETO"));
  163. return izlazDohvatiPremiju;
  164. });
  165. } catch (EmptyResultDataAccessException e) {
  166. LOGGER_AK.info("Ne postoje podatci o premiji;"+ulazDohvatiPremiju.getSifra());
  167. return new IzlazDohvatiPremiju();
  168. }
  169. catch(Exception e) {
  170. LOGGER_AK.error("Dogodila se greška kod dohvata premije;"+ulazDohvatiPremiju.getSifra(),e);
  171. return new IzlazDohvatiPremiju();
  172. }
  173. }
  174.  
  175. }
Add Comment
Please, Sign In to add comment