ReloadDatabaseController.java 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. package com.its.op.controller;
  2. import com.its.op.entity.its.cctv.TbCctvCtlr;
  3. import com.its.op.entity.its.code.TbCmmnCd;
  4. import com.its.op.entity.its.facility.TbFcltFailOcrrType;
  5. import com.its.op.entity.its.ifsc.TbIfsc;
  6. import com.its.op.entity.its.ifsc.TbIfscTraf;
  7. import com.its.op.entity.its.ifsc.TbIfscVrtxArr;
  8. import com.its.op.entity.its.link.TbLink;
  9. import com.its.op.entity.its.link.TbLinkTraf;
  10. import com.its.op.entity.its.link.TbLinkVrtxArr;
  11. import com.its.op.entity.its.node.TbNode;
  12. import com.its.op.entity.its.road.TbRoad;
  13. import com.its.op.entity.its.road.TbRoadTraf;
  14. import com.its.op.entity.its.road.TbRoadVrtxArr;
  15. import com.its.op.entity.its.rse.TbRseCtlr;
  16. import com.its.op.entity.its.scrs.TbScIxrCmraMngm;
  17. import com.its.op.entity.its.scrs.TbScIxrMngm;
  18. import com.its.op.entity.its.scrs.TbScSgnlCtlr;
  19. import com.its.op.entity.its.scrs.TbScSgnlIxrMngm;
  20. import com.its.op.entity.its.unit.TbUnitSyst;
  21. import com.its.op.entity.its.vds.TbVdsCtlr;
  22. import com.its.op.entity.its.vms.TbVmsCtlr;
  23. import com.its.op.entity.its.vms.TbVmsIfsc;
  24. import com.its.op.entity.its.vms.TbVmsSymbLib;
  25. import com.its.op.entity.its.wcam.TbWcamCtlr;
  26. import com.its.op.global.*;
  27. import io.swagger.annotations.Api;
  28. import io.swagger.annotations.ApiOperation;
  29. import lombok.RequiredArgsConstructor;
  30. import lombok.extern.slf4j.Slf4j;
  31. import org.springframework.http.MediaType;
  32. import org.springframework.http.ResponseEntity;
  33. import org.springframework.validation.annotation.Validated;
  34. import org.springframework.web.bind.annotation.GetMapping;
  35. import org.springframework.web.bind.annotation.RequestMapping;
  36. import org.springframework.web.bind.annotation.RestController;
  37. import java.util.List;
  38. @Slf4j
  39. @RequiredArgsConstructor
  40. @Validated
  41. @RestController
  42. @RequestMapping("/api/reload")
  43. @Api(tags = "00.공통-88.데이터베이스 리로드")
  44. public class ReloadDatabaseController {
  45. private final TbUnitSystManager unitSystManager;
  46. private final TbNodeManager nodeManager;
  47. private final TbLinkManager linkManager;
  48. private final TbIfscManager ifscManager;
  49. private final TbRoadManager roadManager;
  50. private final TbLinkVrtxArrManager linkVrtxManager;
  51. private final TbIfscVrtxArrManager ifscVrtxManager;
  52. private final TbRoadVrtxArrManager roadVrtxManager;
  53. private final TbCctvCtlrManager cctvCtlrManager;
  54. private final TbVmsCtlrManager vmsCtlrManager;
  55. private final TbVdsCtlrManager vdsCtlrManager;
  56. private final TbRseCtlrManager rseCtlrManager;
  57. private final TbWcamCtlrManager wcamCtlrManager;
  58. private final TbScIxrManager scIxrManager;
  59. private final TbScSgnlIxrManager scSgnlIxrManager;
  60. private final TbScSgnlCtlrManager scSgnlCtlrManager;
  61. private final TbScIxrCmraManager scIxrCmraManager;
  62. private final CmmnCdManager cmmnCdManager;
  63. private final CmmnFcltCdManager cmmnFcltCdManager;
  64. private final TbVmsIfscManager vmsIfscManager;
  65. private final TbVmsSymbLibManager vmsSymbLibManager;
  66. /******************************************************************************************************************/
  67. @ApiOperation(value = "시스템 UNIT 정보", response = TbUnitSyst.class, responseContainer = "ArrayList")
  68. @GetMapping(path="/unit", produces = MediaType.APPLICATION_JSON_VALUE)
  69. public ResponseEntity<List<TbUnitSyst>> reloadUnitSyst() {
  70. List<TbUnitSyst> result = this.unitSystManager.reload();
  71. return ResponseEntity.ok(result);
  72. }
  73. /******************************************************************************************************************/
  74. @ApiOperation(value = "NODE 정보", response = TbNode.class, responseContainer = "ArrayList")
  75. @GetMapping(path="/node", produces = MediaType.APPLICATION_JSON_VALUE)
  76. public ResponseEntity<List<TbNode>> reloadNode() {
  77. List<TbNode> result = this.nodeManager.reload();
  78. return ResponseEntity.ok(result);
  79. }
  80. /******************************************************************************************************************/
  81. @ApiOperation(value = "LINK 정보", response = TbLink.class, responseContainer = "ArrayList")
  82. @GetMapping(path="/link", produces = MediaType.APPLICATION_JSON_VALUE)
  83. public ResponseEntity<List<TbLink>> reloadLink() {
  84. List<TbLink> result = this.linkManager.reload();
  85. return ResponseEntity.ok(result);
  86. }
  87. @ApiOperation(value = "IFSC 정보", response = TbIfsc.class, responseContainer = "ArrayList")
  88. @GetMapping(path="/ifsc", produces = MediaType.APPLICATION_JSON_VALUE)
  89. public ResponseEntity<List<TbIfsc>> reloadIfsc() {
  90. List<TbIfsc> result = this.ifscManager.reload();
  91. return ResponseEntity.ok(result);
  92. }
  93. @ApiOperation(value = "ROAD 정보", response = TbRoad.class, responseContainer = "ArrayList")
  94. @GetMapping(path="/road", produces = MediaType.APPLICATION_JSON_VALUE)
  95. public ResponseEntity<List<TbRoad>> reloadRoad() {
  96. List<TbRoad> result = this.roadManager.reload();
  97. return ResponseEntity.ok(result);
  98. }
  99. /******************************************************************************************************************/
  100. @ApiOperation(value = "LINK 소통 정보", response = TbLinkTraf.class, responseContainer = "ArrayList")
  101. @GetMapping(path="/link-traf", produces = MediaType.APPLICATION_JSON_VALUE)
  102. public ResponseEntity<List<TbLinkTraf>> reloadLinkTraf() {
  103. this.linkManager.loadTraf(true);
  104. List<TbLinkTraf> result = this.linkManager.getTrafList();
  105. return ResponseEntity.ok(result);
  106. }
  107. @ApiOperation(value = "IFSC 소통 정보", response = TbIfscTraf.class, responseContainer = "ArrayList")
  108. @GetMapping(path="/ifsc-traf", produces = MediaType.APPLICATION_JSON_VALUE)
  109. public ResponseEntity<List<TbIfscTraf>> reloadIfscTraf() {
  110. this.ifscManager.loadTraf(true);
  111. List<TbIfscTraf> result = this.ifscManager.getTrafList();
  112. return ResponseEntity.ok(result);
  113. }
  114. @ApiOperation(value = "ROAD 소통 정보", response = TbRoadTraf.class, responseContainer = "ArrayList")
  115. @GetMapping(path="/road-traf", produces = MediaType.APPLICATION_JSON_VALUE)
  116. public ResponseEntity<List<TbRoadTraf>> reloadRoadTraf() {
  117. this.roadManager.loadTraf(true);
  118. List<TbRoadTraf> result = this.roadManager.getTrafList();
  119. return ResponseEntity.ok(result);
  120. }
  121. /******************************************************************************************************************/
  122. @ApiOperation(value = "LINK VRTX 정보", response = TbLinkVrtxArr.class, responseContainer = "ArrayList")
  123. @GetMapping(path="/link-vrtx", produces = MediaType.APPLICATION_JSON_VALUE)
  124. public ResponseEntity<List<TbLinkVrtxArr>> reloadLinkVrtxArr() {
  125. List<TbLinkVrtxArr> result = this.linkVrtxManager.reload();
  126. return ResponseEntity.ok(result);
  127. }
  128. @ApiOperation(value = "IFSC VRTX 정보", response = TbIfscVrtxArr.class, responseContainer = "ArrayList")
  129. @GetMapping(path="/ifsc-vrtx", produces = MediaType.APPLICATION_JSON_VALUE)
  130. public ResponseEntity<List<TbIfscVrtxArr>> reloadIfscVrtxArr() {
  131. List<TbIfscVrtxArr> result = this.ifscVrtxManager.reload();
  132. return ResponseEntity.ok(result);
  133. }
  134. @ApiOperation(value = "ROAD VRTX 정보", response = TbRoadVrtxArr.class, responseContainer = "ArrayList")
  135. @GetMapping(path="/road-vrtx", produces = MediaType.APPLICATION_JSON_VALUE)
  136. public ResponseEntity<List<TbRoadVrtxArr>> reloadRoadVrtxArr() {
  137. List<TbRoadVrtxArr> result = this.roadVrtxManager.reload();
  138. return ResponseEntity.ok(result);
  139. }
  140. /******************************************************************************************************************/
  141. @ApiOperation(value = "CCTV 정보", response = TbCctvCtlr.class, responseContainer = "ArrayList")
  142. @GetMapping(path="/cctv", produces = MediaType.APPLICATION_JSON_VALUE)
  143. public ResponseEntity<List<TbCctvCtlr>> reloadCctvCtlr() {
  144. List<TbCctvCtlr> result = this.cctvCtlrManager.reload();
  145. return ResponseEntity.ok(result);
  146. }
  147. @ApiOperation(value = "VMS 정보", response = TbVmsCtlr.class, responseContainer = "ArrayList")
  148. @GetMapping(path="/vms", produces = MediaType.APPLICATION_JSON_VALUE)
  149. public ResponseEntity<List<TbVmsCtlr>> reloadVmsCtlr() {
  150. List<TbVmsCtlr> result = this.vmsCtlrManager.reload();
  151. return ResponseEntity.ok(result);
  152. }
  153. @ApiOperation(value = "VDS 정보", response = TbVdsCtlr.class, responseContainer = "ArrayList")
  154. @GetMapping(path="/vds", produces = MediaType.APPLICATION_JSON_VALUE)
  155. public ResponseEntity<List<TbVdsCtlr>> reloadVdsCtlr() {
  156. List<TbVdsCtlr> result = this.vdsCtlrManager.reload();
  157. return ResponseEntity.ok(result);
  158. }
  159. @ApiOperation(value = "RSE 정보", response = TbRseCtlr.class, responseContainer = "ArrayList")
  160. @GetMapping(path="/rse", produces = MediaType.APPLICATION_JSON_VALUE)
  161. public ResponseEntity<List<TbRseCtlr>> reloadRseCtlr() {
  162. List<TbRseCtlr> result = this.rseCtlrManager.reload();
  163. return ResponseEntity.ok(result);
  164. }
  165. @ApiOperation(value = "WCAM 정보", response = TbWcamCtlr.class, responseContainer = "ArrayList")
  166. @GetMapping(path="/wcam", produces = MediaType.APPLICATION_JSON_VALUE)
  167. public ResponseEntity<List<TbWcamCtlr>> reloadWcamCtlr() {
  168. List<TbWcamCtlr> result = this.wcamCtlrManager.reload();
  169. return ResponseEntity.ok(result);
  170. }
  171. /******************************************************************************************************************/
  172. @ApiOperation(value = "교차로 정보", response = TbScIxrMngm.class, responseContainer = "ArrayList")
  173. @GetMapping(path="/sc-ixr", produces = MediaType.APPLICATION_JSON_VALUE)
  174. public ResponseEntity<List<TbScIxrMngm>> reloadScIxr() {
  175. List<TbScIxrMngm> result = this.scIxrManager.reload();
  176. return ResponseEntity.ok(result);
  177. }
  178. @ApiOperation(value = "신호교차로 정보", response = TbScSgnlIxrMngm.class, responseContainer = "ArrayList")
  179. @GetMapping(path="/sc-sgnl-ixr", produces = MediaType.APPLICATION_JSON_VALUE)
  180. public ResponseEntity<List<TbScSgnlIxrMngm>> reloadScSgnlIxr() {
  181. List<TbScSgnlIxrMngm> result = this.scSgnlIxrManager.reload();
  182. return ResponseEntity.ok(result);
  183. }
  184. @ApiOperation(value = "신호제어기 정보", response = TbScSgnlCtlr.class, responseContainer = "ArrayList")
  185. @GetMapping(path="/sc-sgnl", produces = MediaType.APPLICATION_JSON_VALUE)
  186. public ResponseEntity<List<TbScSgnlCtlr>> reloadScSgnl() {
  187. List<TbScSgnlCtlr> result = this.scSgnlCtlrManager.reload();
  188. return ResponseEntity.ok(result);
  189. }
  190. @ApiOperation(value = "교차로카메라 정보", response = TbScIxrCmraMngm.class, responseContainer = "ArrayList")
  191. @GetMapping(path="/sc-ixr-cmra", produces = MediaType.APPLICATION_JSON_VALUE)
  192. public ResponseEntity<List<TbScIxrCmraMngm>> reloadScIxrCmra() {
  193. List<TbScIxrCmraMngm> result = this.scIxrCmraManager.reload();
  194. return ResponseEntity.ok(result);
  195. }
  196. /******************************************************************************************************************/
  197. @ApiOperation(value = "공통 코드 정보", response = TbCmmnCd.class, responseContainer = "ArrayList")
  198. @GetMapping(path="/cmmn-cd", produces = MediaType.APPLICATION_JSON_VALUE)
  199. public ResponseEntity<List<TbCmmnCd>> reloadCmmnCd() {
  200. List<TbCmmnCd> result = this.cmmnCdManager.reload();
  201. return ResponseEntity.ok(result);
  202. }
  203. /******************************************************************************************************************/
  204. @ApiOperation(value = "시설물 코드 정보", response = TbFcltFailOcrrType.class, responseContainer = "ArrayList")
  205. @GetMapping(path="/cmmn-fclt-cd", produces = MediaType.APPLICATION_JSON_VALUE)
  206. public ResponseEntity<List<TbFcltFailOcrrType>> reloadCmmnFcltCd() {
  207. List<TbFcltFailOcrrType> result = this.cmmnFcltCdManager.reload();
  208. return ResponseEntity.ok(result);
  209. }
  210. /******************************************************************************************************************/
  211. @ApiOperation(value = "VMS IFSC 정보", response = TbVmsIfsc.class, responseContainer = "ArrayList")
  212. @GetMapping(path="/vms-ifsc", produces = MediaType.APPLICATION_JSON_VALUE)
  213. public ResponseEntity<List<TbVmsIfsc>> reloadVmsIfsc() {
  214. List<TbVmsIfsc> result = this.vmsIfscManager.reload();
  215. return ResponseEntity.ok(result);
  216. }
  217. @ApiOperation(value = "VMS 심볼 라이브러리 정보", response = TbVmsSymbLib.class, responseContainer = "ArrayList")
  218. @GetMapping(path="/vms-symb-lib", produces = MediaType.APPLICATION_JSON_VALUE)
  219. public ResponseEntity<List<TbVmsSymbLib>> reloadVmsSymbLib() {
  220. List<TbVmsSymbLib> result = this.vmsSymbLibManager.reload();
  221. return ResponseEntity.ok(result);
  222. }
  223. }