shjung 3 tahun lalu
induk
melakukan
6948375723

+ 3 - 3
src/main/java/com/its/api/its/controller/vms/TbVmsCtlrController.java

@@ -2,7 +2,7 @@ package com.its.api.its.controller.vms;
 
 import com.its.api.its.model.dto.common.NewIdLongDto;
 import com.its.api.its.model.dto.vms.TbVmsCtlrDto;
-import com.its.api.its.model.dto.vms.VmsOnOffDto;
+import com.its.api.its.model.dto.vms.VmsOnOffTimeDto;
 import com.its.api.its.service.vms.TbVmsCtlrService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -52,9 +52,9 @@ public class TbVmsCtlrController {
         return this.service.getNewNmbr();
     }
 
-    @ApiOperation(value = "VMS 전광판 On/Off 시각 설정", response = VmsOnOffDto.VmsOnOffSaveReq.class)
+    @ApiOperation(value = "VMS 전광판 On/Off 시각 설정", response = VmsOnOffTimeDto.class)
     @PostMapping(value = "/panl-time", produces = {"application/json; charset=utf8"})
-    public VmsOnOffDto.VmsOnOffSaveReq updatePanlOnOffTime(@RequestBody @Valid final VmsOnOffDto.VmsOnOffSaveReq req) {
+    public VmsOnOffTimeDto updatePanlOnOffTime(@RequestBody @Valid final VmsOnOffTimeDto.VmsOnOffTimeSaveReq req) {
         return this.service.updatePanlOnOffTime(req);
     }
 

+ 0 - 40
src/main/java/com/its/api/its/model/dto/vms/VmsOnOffDto.java

@@ -1,40 +0,0 @@
-package com.its.api.its.model.dto.vms;
-
-import com.fasterxml.jackson.annotation.JsonProperty;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.*;
-
-import java.io.Serializable;
-
-/**
- * Vms 전광판 On/Off 정보 DTO Class
- */
-@Data
-@Builder
-@ApiModel("VmsOnOffDto(전광판 On/Off")
-public class VmsOnOffDto implements Serializable {
-    private static final long serialVersionUID = 1L;
-
-    @ApiModel("VmsOnOffSaveReq(전광판 On/Off 시각 저장)")
-    @Getter
-    @Setter
-    @ToString
-    @NoArgsConstructor(access = AccessLevel.PROTECTED)
-    public static class VmsOnOffSaveReq {
-
-        @ApiModelProperty("전광판 ON 시각(HH24MI)")
-        @JsonProperty("panl_on_time")
-        private String panlOnTime;
-
-        @ApiModelProperty("전광판 OFF 시각(HH24MI)")
-        @JsonProperty("panl_off_time")
-        private String panlOffTime;
-
-        @Builder
-        public VmsOnOffSaveReq(String panl_on_time, String panl_off_time) {
-            this.panlOnTime = panl_on_time;
-            this.panlOffTime = panl_off_time;
-        }
-    }
-}

+ 80 - 0
src/main/java/com/its/api/its/model/dto/vms/VmsOnOffTimeDto.java

@@ -0,0 +1,80 @@
+package com.its.api.its.model.dto.vms;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+import javax.validation.constraints.Size;
+import java.io.Serializable;
+
+/**
+ * Vms 전광판 On/Off 정보 DTO Class
+ */
+@Data
+@Builder
+@ApiModel("VmsOnOffTimeDto(전광판 시각 설정)")
+public class VmsOnOffTimeDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("전광판 ON 시각-HH24MI")
+    @JsonProperty("panl_on_time")
+    private String panlOnTime;
+
+    @ApiModelProperty("전광판 OFF 시각-HH24MI")
+    @JsonProperty("panl_off_time")
+    private String panlOffTime;
+
+    @ApiModelProperty("작업 결과")
+    @JsonProperty("result")
+    private Integer result;
+
+    @ApiModel("VmsOnOffTimeSaveReq(전광판 시각 저장)")
+    @Getter
+    @Setter
+    @ToString
+    @NoArgsConstructor(access = AccessLevel.PROTECTED)
+    public static class VmsOnOffTimeSaveReq {
+
+        @ApiModelProperty("전광판 ON 시각-HH24MI")
+        @JsonProperty("panl_on_time")
+        @Size(min=4, max=4)
+        private String panlOnTime;
+
+        @ApiModelProperty("전광판 OFF 시각-HH24MI")
+        @JsonProperty("panl_off_time")
+        @Size(min=4, max=4)
+        private String panlOffTime;
+
+        @Builder
+        public VmsOnOffTimeSaveReq(String panl_on_time, String panl_off_time) {
+            this.panlOnTime = panl_on_time;
+            this.panlOffTime = panl_off_time;
+        }
+    }
+
+    @ApiModel("VmsOnOffTimeTempReq(전광판 On/Off 시각 저장-TEMP)")
+    @Getter
+    @Setter
+    @ToString
+    @NoArgsConstructor(access = AccessLevel.PROTECTED)
+    public static class VmsOnOffTimeTempReq {
+
+        @ApiModelProperty("전광판 ON 시각-HH24MI")
+        @JsonProperty("panl_on_time")
+        @Size(min=4, max=4)
+        private String panlOnTime;
+
+        @ApiModelProperty("전광판 OFF 시각-HH24MI")
+        @JsonProperty("panl_off_time")
+        @Size(min=4, max=4)
+        private String panlOffTime;
+
+        @Builder
+        public VmsOnOffTimeTempReq(String panl_on_time, String panl_off_time) {
+            this.panlOnTime = panl_on_time;
+            this.panlOffTime = panl_off_time;
+        }
+    }
+
+}

+ 4 - 0
src/main/java/com/its/api/its/repository/vms/TbVmsCtlrRepository.java

@@ -3,9 +3,11 @@ package com.its.api.its.repository.vms;
 import com.its.api.its.model.entity.vms.TbVmsCtlr;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -30,6 +32,8 @@ public interface TbVmsCtlrRepository extends JpaRepository<TbVmsCtlr, Long>, Jpa
     @Query(value = "SELECT NVL(MAX(VMS_CTLR_NMBR), 10000) + 1 AS NEWID FROM TB_VMS_CTLR", nativeQuery = true)
     Long getNewNmbr();
 
+    @Transactional
+    @Modifying
     @Query(value =
             "UPDATE TB_VMS_CTLR              " +
             "   SET PANL_ON_TIME  = :onTime, " +

+ 7 - 3
src/main/java/com/its/api/its/service/vms/TbVmsCtlrService.java

@@ -5,7 +5,7 @@ import com.its.api.its.model.dto.code.TbCmmnCdDto;
 import com.its.api.its.model.dto.common.*;
 import com.its.api.its.model.dto.vms.TbVmsCtlrDto;
 import com.its.api.its.model.dto.vms.TbVmsSttsDto;
-import com.its.api.its.model.dto.vms.VmsOnOffDto;
+import com.its.api.its.model.dto.vms.VmsOnOffTimeDto;
 import com.its.api.its.model.entity.vms.TbVmsCtlr;
 import com.its.api.its.repository.vms.TbVmsCtlrRepository;
 import com.its.api.its.repository.vms.TbVmsSttsHsRepository;
@@ -319,8 +319,12 @@ public class TbVmsCtlrService {
      * @param req
      * @return
      */
-    public VmsOnOffDto.VmsOnOffSaveReq updatePanlOnOffTime(VmsOnOffDto.VmsOnOffSaveReq req) {
+    public VmsOnOffTimeDto updatePanlOnOffTime(VmsOnOffTimeDto.VmsOnOffTimeSaveReq req) {
         Integer data = this.repo.updatePanlOnOffTime(req.getPanlOnTime(), req.getPanlOffTime());
-        return req;
+        return VmsOnOffTimeDto.builder()
+                .panlOnTime(req.getPanlOnTime())
+                .panlOffTime(req.getPanlOffTime())
+                .result(data)
+                .build();
     }
 }