| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 | 
							- package com.its.vms.dto;
 
- import com.its.vms.entity.TbVmsSymbLib;
 
- import com.its.vms.service.VmsSymbService;
 
- import com.its.vms.xnettcp.vms.protocol.enums.eVmsImageType;
 
- import lombok.Builder;
 
- import lombok.Data;
 
- import lombok.extern.slf4j.Slf4j;
 
- import javax.imageio.ImageIO;
 
- import java.awt.*;
 
- import java.io.ByteArrayInputStream;
 
- import java.io.IOException;
 
- import java.io.Serializable;
 
- import java.util.ArrayList;
 
- import java.util.HashMap;
 
- import java.util.List;
 
- /**
 
-  *  DTO Class
 
-  */
 
- @Slf4j
 
- @Data
 
- @Builder
 
- public class TbVmsSymbLibDto implements Serializable {
 
-     private static final long serialVersionUID = 1L;
 
-     private String symbLibNmbr;
 
-     private Integer orgSymbLibNmbr;
 
-     private Integer dnldSymbLibNmbr;
 
-     private String rgstDt;
 
-     private byte[] redData;
 
-     private byte[] greenData;
 
-     private String symbExpl;
 
-     private byte[] imageData;
 
-     private String vmsTypeCd;
 
-     private String symbImagType;
 
-     private String symbFileNm;
 
-     private String symbType;
 
-     private byte[] aviData;
 
-     private Long imagSize;
 
-     private Long playTm;
 
-     private String delYn;
 
-     private String updtDt;
 
-     private Integer posX;
 
-     private Integer posY;
 
-     private eVmsImageType imagType;
 
-     private String localFileName;
 
-     private String ftpFileName;
 
-     private List<String> gradSymbLibNmbrList = new ArrayList<>();
 
-     private HashMap<Integer, TbVmsSymbIfscDto> cellMap = new HashMap<>();
 
-     public TbVmsSymbLib toEntity() {
 
-         // 소통정보이미지 때문에 이미지번호에 "0" 을 추가하여 이미지번호로 사용함
 
-         return TbVmsSymbLib.builder()
 
-                 .symbLibNmbr(Integer.parseInt(this.symbLibNmbr))
 
-                 .rgstDt(this.rgstDt)
 
-                 .redData(this.redData)
 
-                 .greenData(this.greenData)
 
-                 .symbExpl(this.symbExpl)
 
-                 .imagData(this.imageData)
 
-                 .vmsTypeCd(this.vmsTypeCd)
 
-                 .symbImagType(this.symbImagType)
 
-                 .symbFileNm(this.symbFileNm)
 
-                 .symbType(this.symbType)
 
-                 .aviData(this.aviData)
 
-                 .imagSize(this.imagSize)
 
-                 .playTm(this.playTm)
 
-                 .delYn(this.delYn)
 
-                 .updtDt(this.updtDt)
 
-                 .posX(this.posX)
 
-                 .posY(this.posY)
 
-                 .build();
 
-     }
 
-     public void setSymbInfo() {
 
-         this.dnldSymbLibNmbr = VmsSymbService.getDnldSymbNmbr(this.symbLibNmbr);
 
-         this.imagType = eVmsImageType.VMS_IMAGE_TYPE_BMP;
 
-         String symbFileName = "";
 
-         if ("SBT3".equals(getSymbType())) {
 
-             symbFileName = this.symbFileNm;
 
-             this.imagType = eVmsImageType.VMS_IMAGE_TYPE_VIDEO;
 
-         }
 
-         else {
 
-             switch(getImagType()) {
 
-                 case VMS_IMAGE_TYPE_BMP: symbFileName = this.dnldSymbLibNmbr+".bmp"; break;
 
-                 case VMS_IMAGE_TYPE_GIF: symbFileName = this.dnldSymbLibNmbr+".gif"; break;
 
-                 case VMS_IMAGE_TYPE_JPG: symbFileName = this.dnldSymbLibNmbr+".jpg"; break;
 
-                 case VMS_IMAGE_TYPE_PNG: symbFileName = this.dnldSymbLibNmbr+".png"; break;
 
-                 default:
 
-                     if (this.symbFileNm == null || this.symbFileNm.trim().length() == 0) {
 
-                         symbFileName = this.dnldSymbLibNmbr+".avi";
 
-                     }
 
-                     else {
 
-                         symbFileName = this.symbFileNm.trim();
 
-                     }
 
-                     break;
 
-             }
 
-         }
 
-         this.symbFileNm = symbFileName;
 
-         this.localFileName = symbFileName;
 
-     }
 
-     public Image getImage() {
 
-         if (this.imageData == null || this.imageData.length == 0) {
 
-             log.error("TbVmsSymbLibDto.getImage: Image Data null: {}, {}", this.orgSymbLibNmbr, this.symbLibNmbr);
 
-             return null;
 
-         }
 
-         try (
 
-                 ByteArrayInputStream bis = new ByteArrayInputStream(this.imageData);
 
-         ) {
 
-             return ImageIO.read(bis);
 
-         } catch (IOException e) {
 
-             log.error("TbVmsSymbLibDto.getImage: IOException: {}, {}", this.orgSymbLibNmbr, e.getMessage());
 
-         }
 
-         return null;
 
-     }
 
-     public TbVmsSymbLibDto clone(String symbLibNmbr) {
 
-         TbVmsSymbLibDto obj = TbVmsSymbLibDto.builder()
 
-                 .symbLibNmbr(symbLibNmbr)
 
-                 .orgSymbLibNmbr(this.orgSymbLibNmbr)
 
-                 .rgstDt(this.rgstDt)
 
-                 .redData(this.redData)
 
-                 .greenData(this.greenData)
 
-                 .symbExpl(this.symbExpl)
 
-                 .imageData(this.imageData)
 
-                 .vmsTypeCd(this.vmsTypeCd)
 
-                 .symbImagType(this.symbImagType)
 
-                 .symbFileNm(this.symbFileNm)
 
-                 .symbType(this.symbType)
 
-                 .aviData(this.aviData)
 
-                 .imagSize(this.imagSize)
 
-                 .playTm(this.playTm)
 
-                 .delYn(this.delYn)
 
-                 .updtDt(this.updtDt)
 
-                 .posX(this.posX)
 
-                 .posY(this.posY)
 
-                 .imagType(this.imagType)
 
-                 .localFileName(this.localFileName)
 
-                 .ftpFileName(this.ftpFileName)
 
-                 .gradSymbLibNmbrList( new ArrayList<>())
 
-                 .cellMap(new HashMap<>())
 
-                 .build();
 
-         obj.setSymbInfo();
 
-         return obj;
 
-     }
 
- }
 
 
  |