PisInfrDao.java 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.its.pis.dao.mapper.batch;
  2. import com.its.app.utils.Elapsed;
  3. import com.its.pis.dao.mapper.BatchDaoService;
  4. import com.its.pis.entity.TbPisInfrStts;
  5. import lombok.extern.slf4j.Slf4j;
  6. import org.apache.ibatis.session.ExecutorType;
  7. import org.apache.ibatis.session.SqlSession;
  8. import org.apache.ibatis.session.SqlSessionFactory;
  9. import org.springframework.stereotype.Repository;
  10. import java.util.ArrayList;
  11. import java.util.HashMap;
  12. import java.util.List;
  13. @Slf4j
  14. @Repository
  15. public class PisInfrDao extends BatchDaoService {
  16. public PisInfrDao(SqlSessionFactory sqlSessionFactory) {
  17. super(sqlSessionFactory);
  18. this.serviceName = "PisInfrDao";
  19. this.mapperName = "";//""com.its.pis.mapper.batchPisInfrMapper.";
  20. }
  21. public List<HashMap<String, Object>> getSttsList(List<TbPisInfrStts> req) {
  22. List<HashMap<String, Object>> lists = new ArrayList<>();
  23. req.forEach(obj -> {
  24. HashMap<String, Object> param = new HashMap<>();
  25. param.put("PIS_NMBR", obj.getPIS_NMBR());
  26. param.put("UPDT_DT", obj.getUPDT_DT());
  27. param.put("CMNC_STTS_CD", obj.getCMNC_STTS_CD());
  28. param.put("CONN_DT", obj.getCONN_DT());
  29. param.put("DIS_CONN_DT", obj.getDIS_CONN_DT());
  30. lists.add(param);
  31. });
  32. return lists;
  33. }
  34. public int updateStts(List<TbPisInfrStts> req, boolean isHistory) {
  35. //log.info("{}.updateStts: START. {} EA. History {}", this.serviceName, req.size(), isHistory);
  36. Elapsed elapsed = new Elapsed();
  37. int total = 0;
  38. SqlSession sqlSession = null;
  39. try {
  40. sqlSession = this.sqlSessionFactory.openSession(ExecutorType.BATCH, false);
  41. this.mapper = this.mapperName + "batchUpdatePisInfrStts";
  42. total += updateBatch(this.mapper, getSttsList(req));
  43. sqlSession.commit();
  44. } catch(Exception e) {
  45. log.error("updateStts: Exception, {}, {}", req, e.getMessage());
  46. }
  47. finally {
  48. if (sqlSession != null) {
  49. sqlSession.close();
  50. }
  51. }
  52. if (elapsed.milliSeconds() > 1000) {
  53. log.info("{}.updateStts: ..END. {} EA. {} ms.", this.serviceName, total, elapsed.milliSeconds());
  54. }
  55. return total;
  56. }
  57. public int insertStts(List<TbPisInfrStts> req) {
  58. //log.info("{}.insertStts: START. {} EA.", this.serviceName, req.size());
  59. Elapsed elapsed = new Elapsed();
  60. int total = 0;
  61. SqlSession sqlSession = null;
  62. try {
  63. sqlSession = this.sqlSessionFactory.openSession(ExecutorType.BATCH, false);
  64. this.mapper = this.mapperName + "batchInsertPisInfrSttsHs";
  65. total += insertBatch(this.mapper, getSttsList(req));
  66. sqlSession.commit();
  67. } catch(Exception e) {
  68. log.error("insertStts: Exception, {}, {}", req, e.getMessage());
  69. }
  70. finally {
  71. if (sqlSession != null) {
  72. sqlSession.close();
  73. }
  74. }
  75. if (elapsed.milliSeconds() > 1000) {
  76. log.info("{}.insertStts: ..END. {} EA. {} ms.", this.serviceName, total, elapsed.milliSeconds());
  77. }
  78. return total;
  79. }
  80. }