diff --git a/private-backend/package/private-backend-1.5.2.jar b/private-backend/package/private-backend-1.5.2.jar index fcc3ea8..e37681f 100644 Binary files a/private-backend/package/private-backend-1.5.2.jar and b/private-backend/package/private-backend-1.5.2.jar differ diff --git a/private-backend/src/main/java/net/irext/decode/sdk/bean/ACStatus.java b/private-backend/src/main/java/net/irext/decode/sdk/bean/ACStatus.java index 4aa6080..b655dcf 100644 --- a/private-backend/src/main/java/net/irext/decode/sdk/bean/ACStatus.java +++ b/private-backend/src/main/java/net/irext/decode/sdk/bean/ACStatus.java @@ -24,7 +24,7 @@ public class ACStatus { private int acDisplay; private int acSleep; private int acTimer; - private int changeWindDir; + private Integer changeWindDir; public ACStatus() { this.acPower = Constants.ACPower.POWER_OFF.getValue(); @@ -39,7 +39,7 @@ public class ACStatus { } public ACStatus(int acPower, int acMode, int acTemp, int acWindSpeed, int acWindDir, - int acDisplay, int acSleep, int acTimer, int changeWindDir) { + int acDisplay, int acSleep, int acTimer, Integer changeWindDir) { this.acPower = acPower; this.acTemp = acTemp; this.acMode = acMode; @@ -115,11 +115,11 @@ public class ACStatus { this.acTimer = acTimer; } - public int getChangeWindDir() { + public Integer getChangeWindDir() { return changeWindDir; } - public void setChangeWindDir(int changeWindDir) { + public void setChangeWindDir(Integer changeWindDir) { this.changeWindDir = changeWindDir; } } diff --git a/private-backend/src/main/java/net/irext/server/businesslogic/OperationLogic.java b/private-backend/src/main/java/net/irext/server/businesslogic/OperationLogic.java index c4fc99d..580c805 100644 --- a/private-backend/src/main/java/net/irext/server/businesslogic/OperationLogic.java +++ b/private-backend/src/main/java/net/irext/server/businesslogic/OperationLogic.java @@ -116,8 +116,7 @@ public class OperationLogic { return remoteIndex; } - public int[] decodeIR(RemoteIndex remoteIndex, ACStatus acStatus, - int keyCode, int changeWindDirection) { + public int[] decodeIR(RemoteIndex remoteIndex, ACStatus acStatus, int keyCode) { try { int[] decoded = null; synchronized (this) { diff --git a/private-backend/src/main/java/net/irext/server/request/DecodeRequest.java b/private-backend/src/main/java/net/irext/server/request/DecodeRequest.java index 83a22b8..4e3fd32 100644 --- a/private-backend/src/main/java/net/irext/server/request/DecodeRequest.java +++ b/private-backend/src/main/java/net/irext/server/request/DecodeRequest.java @@ -17,11 +17,11 @@ public class DecodeRequest extends BaseRequest { private int indexId; private ACStatus acStatus; private int keyCode; - private int changeWindDir; + private Integer changeWindDir; private Integer directDecode; private Integer paraData; - public DecodeRequest(int indexId, ACStatus acStatus, int keyCode, int changeWindDir, + public DecodeRequest(int indexId, ACStatus acStatus, int keyCode, Integer changeWindDir, Integer directDecode, Integer paraData) { this.indexId = indexId; this.acStatus = acStatus; @@ -59,11 +59,11 @@ public class DecodeRequest extends BaseRequest { this.keyCode = keyCode; } - public int getChangeWindDir() { + public Integer getChangeWindDir() { return changeWindDir; } - public void setChangeWindDir(int changeWindDir) { + public void setChangeWindDir(Integer changeWindDir) { this.changeWindDir = changeWindDir; } diff --git a/private-backend/src/main/java/net/irext/server/restapi/IROperationService.java b/private-backend/src/main/java/net/irext/server/restapi/IROperationService.java index ea5a87c..3c0499f 100644 --- a/private-backend/src/main/java/net/irext/server/restapi/IROperationService.java +++ b/private-backend/src/main/java/net/irext/server/restapi/IROperationService.java @@ -147,10 +147,14 @@ public class IROperationService extends AbstractBaseService { int indexId = decodeRequest.getIndexId(); ACStatus acStatus = decodeRequest.getAcStatus(); int keyCode = decodeRequest.getKeyCode(); - int changeWindDir = decodeRequest.getChangeWindDir(); + Integer changeWindDir = decodeRequest.getChangeWindDir(); Integer directDecode = decodeRequest.getDirectDecode(); Integer paraData = decodeRequest.getParaData(); RemoteIndex remoteIndex = null; + + if (null == acStatus.getChangeWindDir() && null != changeWindDir) { + acStatus.setChangeWindDir(changeWindDir); + } int[] decoded = null; LoggerUtil.getInstance().trace(TAG, "decodeIR entry, keyCode = " + keyCode + ", acStatus = " + new Gson().toJson(acStatus)); @@ -187,7 +191,7 @@ public class IROperationService extends AbstractBaseService { } // NOTE: here remoteIndex instances changes remoteIndex = operationLogic.prepareBinary(remoteIndex.getId()); - decoded = operationLogic.decodeIR(remoteIndex, acStatus, keyCode, changeWindDir); + decoded = operationLogic.decodeIR(remoteIndex, acStatus, keyCode); } } response.setEntity(decoded);