123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252 |
- package com.its.vms.entity;
- import com.its.app.utils.SysUtils;
- import com.its.vms.xnettcp.vms.process.response.impl.VmsResStatus;
- import lombok.Data;
- import java.io.Serializable;
- /**
- * DTO Class
- */
- @Data
- public class TbVmsCtlrStts implements Serializable {
- private static final long serialVersionUID = 1L;
- private Long vmsCtlrNmbr;
- private String updtDt;
- private String cmncSttsCd; // 통신 상태 코드('CMS')
- private String pwerSttsCd; // 전원 상태 코드('PWS')
- private String modlSttsCd; // 모듈(LED) 상태 코드
- private String cboxDoorSttsCd; // 함체 문 상태 코드('CDS')
- private String fanSttsCd; // 팬 상태 코드('PAS')
- private String hetrSttsCd; // 히터 상태 코드('HTS')
- private Integer cboxTmpr; // 함체 온도
- private Integer brghVal; // 휘도값
- private String commSttsCd; // 통신 상태 코드('CMS')
- private String modlStts; // 모듈상태(문자열, 0: 꺼짐, 1: 켜짐, 9: 알수없음)
- private String pwerStts; // 전원상태(문자열, 0: 꺼짐, 1: 켜짐, 9: 알수없음)
- private Integer cboxHum; //CBOX_HUM N NUMBER(3) Y 0 함체 습도
- private String cboxFanSttsCd; //CBOX_FAN_STTS_CD N VARCHAR2(7) Y 함체 팬 상태 코드
- private String cboxHetrSttsCd; //CBOX_HETR_STTS_CD N VARCHAR2(7) Y 함체 히터 상태 코드
- private Integer tmpr; //TMPR N NUMBER(3) Y 0 표출부 온도
- private Integer hum; //HUM N NUMBER(3) Y 0 표출부 습도
- private String doorSttsCd; //DOOR_STTS_CD N VARCHAR2(7) Y 표출부 문 상태 코드
- private Integer brghMode; //BRGH_MODE N NUMBER(3) Y 0 표출부 휘도모드(0:주간, 1:야간, 2: 자동, 3: 수동)
- private Integer brghCurr; //BRGH_CURR N NUMBER(3) Y 0 표출부 현재 휘도값
- private Integer brghWeek; //BRGH_WEEK N NUMBER(3) Y 0 표출부 주간 휘도값
- private Integer brghNght; //BRGH_NGHT N NUMBER(3) Y 0 표출부 야간 휘도값
- private String pwerOnOffCd; //PWER_ONOFF_CD N VARCHAR2(7) Y 표출부 전원 ON/OFF 코드
- public TbVmsCtlrStts(Long vmsCtlrNmbr) {
- this.vmsCtlrNmbr = vmsCtlrNmbr;
- initUnknown();
- }
- public TbVmsCtlrStts clone() {
- TbVmsCtlrStts dto = new TbVmsCtlrStts(this.vmsCtlrNmbr);
- dto.setUpdtDt(this.updtDt);
- dto.setCmncSttsCd(this.cmncSttsCd);
- dto.setPwerSttsCd(this.pwerSttsCd);
- dto.setModlSttsCd(this.modlSttsCd);
- dto.setCboxDoorSttsCd(this.cboxDoorSttsCd);
- dto.setFanSttsCd(this.fanSttsCd);
- dto.setHetrSttsCd(this.hetrSttsCd);
- dto.setCboxTmpr(this.cboxTmpr);
- dto.setBrghVal(this.brghVal);
- dto.setCommSttsCd(this.commSttsCd);
- dto.setModlStts(this.modlStts);
- dto.setPwerStts(this.pwerStts);
- dto.setCboxHum(this.cboxHum);
- dto.setCboxFanSttsCd(this.cboxFanSttsCd);
- dto.setCboxHetrSttsCd(this.cboxHetrSttsCd);
- dto.setTmpr(this.tmpr);
- dto.setHum(this.hum);
- dto.setDoorSttsCd(this.doorSttsCd);
- dto.setBrghMode(this.brghMode);
- dto.setBrghCurr(this.brghCurr);
- dto.setBrghWeek(this.brghWeek);
- dto.setBrghNght(this.brghNght);
- dto.setPwerOnOffCd(this.pwerOnOffCd);
- return dto;
- }
- public void initStts(boolean isConnected) {
- if (isConnected) {
- initUnknown();
- } else {
- initError();
- }
- }
- public void initUnknown() {
- this.updtDt = SysUtils.getSysTime();
- this.cmncSttsCd = "CMS2";
- this.commSttsCd = "CMS2";
- this.pwerSttsCd = "PWS2";
- this.modlSttsCd = "MOS2";
- this.cboxDoorSttsCd = "CDS2";
- this.fanSttsCd = "PAS2";
- this.hetrSttsCd = "HTS2";
- this.cboxTmpr = 0;
- this.brghVal = 0;
- this.modlStts = "11111111111111111111";
- this.pwerStts = "11111111111111111111";
- this.cboxHum = 0;
- this.cboxFanSttsCd = "PAS2";
- this.cboxHetrSttsCd = "HTS2";
- this.tmpr = 0;
- this.hum = 0;
- this.doorSttsCd = "CDS2";
- this.brghMode = 0;
- this.brghCurr = 0;
- this.brghWeek = 0;
- this.brghNght = 0;
- this.pwerOnOffCd = "PWO2";
- }
- public void initError() {
- initUnknown();
- this.cmncSttsCd = "CMS1";
- this.commSttsCd = "CMS1";
- }
- public void initNormal() {
- initUnknown();
- this.cmncSttsCd = "CMS0";
- this.commSttsCd = "CMS0";
- }
- public void updateStts(TbVmsCtlrStts dto) {
- this.updtDt = dto.getUpdtDt();
- this.cmncSttsCd = dto.getCmncSttsCd();
- this.pwerSttsCd = dto.getPwerSttsCd();
- this.modlSttsCd = dto.getModlSttsCd();
- this.cboxDoorSttsCd = dto.getCboxDoorSttsCd();
- this.fanSttsCd = dto.getFanSttsCd();
- this.hetrSttsCd = dto.getHetrSttsCd();
- this.cboxTmpr = dto.getCboxTmpr();
- this.brghVal = dto.getBrghVal();
- this.commSttsCd = dto.getCommSttsCd();
- this.modlStts = dto.getModlStts();
- this.pwerStts = dto.getPwerStts();
- this.cboxHum = dto.getCboxHum();
- this.cboxFanSttsCd = dto.getCboxFanSttsCd();
- this.cboxHetrSttsCd = dto.getCboxHetrSttsCd();
- this.tmpr = dto.getTmpr();
- this.hum = dto.getHum();
- this.doorSttsCd = dto.getDoorSttsCd();
- this.brghMode = dto.getBrghMode();
- this.brghCurr = dto.getBrghCurr();
- this.brghWeek = dto.getBrghWeek();
- this.brghNght = dto.getBrghNght();
- this.pwerOnOffCd = dto.getPwerOnOffCd();
- }
- public boolean updateStatus(VmsResStatus stts) {
- boolean isDifferent = false;
- this.updtDt = SysUtils.getSysTime();
- String tmpSttsCd = "";
- tmpSttsCd = "PWS" + stts.getPowerSupply();
- if (!this.pwerStts.equals(tmpSttsCd)) {
- this.pwerStts = tmpSttsCd;
- isDifferent = true;
- }
- tmpSttsCd = "MOS" + stts.getLedModl();
- if (!this.modlSttsCd.equals(tmpSttsCd)) {
- this.modlSttsCd = tmpSttsCd;
- isDifferent = true;
- }
- tmpSttsCd = "CDS" + stts.getCboxDoor();
- if (!this.cboxDoorSttsCd.equals(tmpSttsCd)) {
- this.cboxDoorSttsCd = tmpSttsCd;
- isDifferent = true;
- }
- if (this.cboxTmpr != stts.getCboxTmpr()) {
- this.cboxTmpr = stts.getCboxTmpr();
- isDifferent = true;
- }
- if (this.cboxHum != stts.getCboxHum()) {
- this.cboxHum = stts.getCboxHum();
- isDifferent = true;
- }
- tmpSttsCd = "PAS" + stts.getCboxFan();
- if (!this.cboxFanSttsCd.equals(tmpSttsCd)) {
- this.cboxFanSttsCd = tmpSttsCd;
- isDifferent = true;
- }
- tmpSttsCd = "HTS" + stts.getCboxHetr();
- if (!this.cboxFanSttsCd.equals(tmpSttsCd)) {
- this.cboxFanSttsCd = tmpSttsCd;
- isDifferent = true;
- }
- tmpSttsCd = "PAS" + stts.getFan();
- if (!this.fanSttsCd.equals(tmpSttsCd)) {
- this.fanSttsCd = tmpSttsCd;
- isDifferent = true;
- }
- this.hetrSttsCd = "HTS2"; // 표출부 히터정보는 없음(사용안함)
- tmpSttsCd = "CDS" + stts.getDoor();
- if (!this.doorSttsCd.equals(tmpSttsCd)) {
- this.doorSttsCd = tmpSttsCd;
- isDifferent = true;
- }
- tmpSttsCd = "PWO" + stts.getPower();
- if (!this.pwerOnOffCd.equals(tmpSttsCd)) {
- this.pwerOnOffCd = tmpSttsCd;
- isDifferent = true;
- }
- if (this.tmpr != stts.getTmpr()) {
- this.tmpr = stts.getCboxHum();
- isDifferent = true;
- }
- if (this.hum != stts.getHum()) {
- this.hum = stts.getCboxHum();
- isDifferent = true;
- }
- if (this.brghMode != stts.getBrghMode()) {
- this.brghMode = stts.getCboxHum();
- isDifferent = true;
- }
- if (this.brghCurr != stts.getBrghCurr()) {
- this.brghCurr = stts.getCboxHum();
- isDifferent = true;
- }
- if (this.brghWeek != stts.getBrghWeek()) {
- this.brghWeek = stts.getCboxHum();
- isDifferent = true;
- }
- if (this.brghNght != stts.getBrghNght()) {
- this.brghNght = stts.getCboxHum();
- isDifferent = true;
- }
- this.brghVal = this.brghCurr; // 사용안함
- return isDifferent;
- }
- public boolean updatePowerModuleStts(String stts) {
- if (stts.equals(this.pwerStts)) {
- return false;
- }
- this.pwerStts = stts;
- return true;
- }
- public boolean updateModuleStts(String stts) {
- if (stts.equals(this.modlStts)) {
- return false;
- }
- this.modlStts = stts;
- return true;
- }
- }
|