Bladeren bron

환기 멀티 제어 추가 작업

jslee(madeinlab) 3 jaren geleden
bovenliggende
commit
a70dfee617

+ 11 - 3
WallPadHomeCtrl/src/main/java/kr/co/icontrols/wallpadhomectrl/PopupActivity.java

@@ -25,6 +25,7 @@ import android.view.MotionEvent;
 import android.view.View;
 import android.widget.RelativeLayout;
 
+import org.json.JSONArray;
 import org.json.JSONException;
 import org.json.JSONObject;
 
@@ -570,8 +571,11 @@ public class PopupActivity extends WpadActivity
 
                 case ID.screen.VentiPopupReservationScreen:
                     if (nDistributionPanelType == Version.DISTRIBUTION_MODEL.KNX_DIST) {
-                        knxVentiPopupReservationScreen = new KnxVentiPopupReservationScreen(mContext, AllLayout, wpapi, OPERATION_MODE);
-                        super.setCurrentScreen(knxVentiPopupReservationScreen);
+                        //knxVentiPopupReservationScreen = new KnxVentiPopupReservationScreen(mContext, AllLayout, wpapi, OPERATION_MODE);
+                        //super.setCurrentScreen(knxVentiPopupReservationScreen);
+                        //고급주택은 환기가 knx 환기로 적용안함
+                        ventiPopupReservationScreen = new VentiPopupReservationScreen(mContext, AllLayout, wpapi, OPERATION_MODE);
+                        super.setCurrentScreen(ventiPopupReservationScreen);
                     }else{
                         ventiPopupReservationScreen = new VentiPopupReservationScreen(mContext, AllLayout, wpapi, OPERATION_MODE);
                         super.setCurrentScreen(ventiPopupReservationScreen);
@@ -828,7 +832,11 @@ public class PopupActivity extends WpadActivity
                 if (reason == 1) {
                     dataJsonObject.accumulate("number", roomNumber);
                     if(state==-1111) {
-                        dataJsonObject.accumulate("arrayState", arrayState);
+                        JSONArray jArray = new JSONArray();
+                        for (int i=0; i<arrayState.length; i++) {
+                            jArray.put(arrayState[i]);
+                        }
+                        dataJsonObject.accumulate("arrayState", jArray);
                     }else if(state!=-9999) {
                         dataJsonObject.accumulate("state", state);
                     }else{

+ 7 - 1
WallPadMultiControlService/src/main/java/kr/co/icontrols/wallpadmulticontrolservice/DataSenderService.java

@@ -46,6 +46,7 @@ import java.net.ServerSocket;
 import java.net.Socket;
 import java.sql.Timestamp;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Random;
 
 import kr.co.icontrols.wallpadmulticontrolservice.control.AirconControl;
@@ -1274,7 +1275,12 @@ public class DataSenderService extends Service {
             } else if (category.equalsIgnoreCase("reset_filter")) {
                 result = mVentiControl.ctrlDeviceResetFilter();
             } else if (category.equalsIgnoreCase("save_shedule")) {
-                result = mVentiControl.Device_SaveSchedule(reqData.getArrayState());
+                ArrayList<Integer> arrayState = reqData.getArrayState();
+                byte[] byteArrayState = new byte[arrayState.size()];
+                for(int i=0; i<arrayState.size() ; i++){
+                    byteArrayState[i]=(byte)arrayState.get(i).intValue();
+                }
+                result = mVentiControl.Device_SaveSchedule(byteArrayState);
             }
         } else if (kind == 1) {
             //개별 제어

+ 4 - 2
WallPadMultiControlService/src/main/java/kr/co/icontrols/wallpadmulticontrolservice/data/RequestData.java

@@ -1,11 +1,13 @@
 package kr.co.icontrols.wallpadmulticontrolservice.data;
 
+import java.util.ArrayList;
+
 public class RequestData {
     private String category;
     private int number;
     private int state;
     private double doubleState;
-    private byte[] arrayState;
+    private ArrayList<Integer> arrayState;
 
     public String getCategory() {
         return category;
@@ -31,7 +33,7 @@ public class RequestData {
     public void setDoubleState(double doubleState) {
         this.doubleState = doubleState;
     }
-    public byte[] getArrayState() {
+    public ArrayList<Integer> getArrayState() {
         return arrayState;
     }