FcltCodeManager.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. package com.its.op.global;
  2. import com.its.op.dto.its.facility.TbFcltFailOcrrTypeDto;
  3. import com.its.op.dto.its.facility.TbFcltFailTypeActDto;
  4. import com.its.op.dto.its.facility.TbFcltFailTypeDto;
  5. import com.its.op.service.its.facility.TbFcltFailOcrrTypeService;
  6. import com.its.op.service.its.facility.TbFcltFailTypeActService;
  7. import com.its.op.service.its.facility.TbFcltFailTypeService;
  8. import lombok.Getter;
  9. import lombok.RequiredArgsConstructor;
  10. import lombok.extern.slf4j.Slf4j;
  11. import org.springframework.stereotype.Component;
  12. import javax.annotation.PostConstruct;
  13. import java.util.List;
  14. import java.util.concurrent.ConcurrentHashMap;
  15. @Slf4j
  16. @RequiredArgsConstructor
  17. @Getter
  18. @Component
  19. public class FcltCodeManager {
  20. // 시설물 장애 발생 구분
  21. private final TbFcltFailOcrrTypeService failOcrrTypeService;
  22. // 시설물 장애 유형
  23. private final TbFcltFailTypeService failTypeService;
  24. // 시설물 장애 유형별 조치
  25. private final TbFcltFailTypeActService failTypeActService;
  26. public static final String defFcltCodeUnknown = "UNKNOWN";
  27. private static final ConcurrentHashMap<String, TbFcltFailOcrrTypeDto> codeFailOcrrType = new ConcurrentHashMap<>();
  28. private static final ConcurrentHashMap<String, TbFcltFailTypeDto> codeFailType = new ConcurrentHashMap<>();
  29. private static final ConcurrentHashMap<String, TbFcltFailTypeActDto> codeFailTypeAct = new ConcurrentHashMap<>();
  30. //private static final ConcurrentHashMap<String, HashMap<String, Code>> codes = new ConcurrentHashMap<>();
  31. @PostConstruct
  32. void init() {
  33. load();
  34. }
  35. public void load() {
  36. loadAllCode();
  37. }
  38. public void loadAllCode() {
  39. List<TbFcltFailOcrrTypeDto> codeList1 = this.failOcrrTypeService.findAll();
  40. for (TbFcltFailOcrrTypeDto code : codeList1) {
  41. codeFailOcrrType.put(code.getFailOcrrCd(), code);
  42. }
  43. List<TbFcltFailTypeDto> codeList2 = this.failTypeService.findAll();
  44. for (TbFcltFailTypeDto code : codeList2) {
  45. codeFailType.put(code.getFailCd(), code);
  46. }
  47. List<TbFcltFailTypeActDto> codeList3 = this.failTypeActService.findAll();
  48. for (TbFcltFailTypeActDto code : codeList3) {
  49. codeFailTypeAct.put(code.getFailActCd(), code);
  50. }
  51. }
  52. public static String getFailOcrrTypeName(String CODE) {
  53. TbFcltFailOcrrTypeDto code = codeFailOcrrType.get(CODE);
  54. if (code != null) {
  55. return code.getFailOcrrCdNm();
  56. }
  57. return defFcltCodeUnknown;
  58. }
  59. public static String getFailTypeName(String CODE) {
  60. TbFcltFailTypeDto code = codeFailType.get(CODE);
  61. if (code != null) {
  62. return code.getFailCdNm();
  63. }
  64. return defFcltCodeUnknown;
  65. }
  66. public static String getFailTypeActName(String CODE) {
  67. TbFcltFailTypeActDto code = codeFailTypeAct.get(CODE);
  68. if (code != null) {
  69. return code.getFailActCdNm();
  70. }
  71. return defFcltCodeUnknown;
  72. }
  73. }