VmsParkService.java 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package com.its.vms.service;
  2. import com.its.app.utils.Elapsed;
  3. import com.its.vms.dao.mapper.VmsParkMapper;
  4. import com.its.vms.dto.TbVmsParkDto;
  5. import com.its.vms.entity.TbVmsPark;
  6. import lombok.RequiredArgsConstructor;
  7. import lombok.extern.slf4j.Slf4j;
  8. import org.springframework.stereotype.Service;
  9. import java.util.List;
  10. import java.util.concurrent.ConcurrentHashMap;
  11. @Slf4j
  12. @Service
  13. @RequiredArgsConstructor
  14. public class VmsParkService {
  15. private final VmsParkMapper mapper;
  16. private final ConcurrentHashMap<Long, TbVmsParkDto> dataMap = new ConcurrentHashMap<>();
  17. public TbVmsParkDto find(Long prkPlceNmbr) {
  18. return this.dataMap.get(prkPlceNmbr);
  19. }
  20. public void loadDb() {
  21. loadVmsParkInfo();
  22. }
  23. public void loadVmsParkInfo() {
  24. Elapsed elapsed = new Elapsed();
  25. try {
  26. List<TbVmsPark> infoList = this.mapper.selectVmsParkInfo();
  27. log.info("VmsParkService.loadVmsParkInfo: {} EA", infoList.size());
  28. infoList.forEach(data -> {
  29. TbVmsParkDto dto = data.toDto();
  30. if (dto.getVmsDsplNm() == null || "".equals(dto.getVmsDsplNm())) {
  31. dto.setVmsDsplNm(dto.getPrkPlceNm());
  32. }
  33. dto.calcCngstStts();
  34. this.dataMap.put(dto.getPrkPlceNmbr(), dto);
  35. });
  36. }
  37. catch (Exception e) {
  38. log.error("VmsParkService.loadVmsParkInfo: {}", e.toString());
  39. }
  40. log.info("VmsParkService.loadVmsParkInfo: {} ms.", elapsed.milliSeconds());
  41. }
  42. }