Jelajahi Sumber

[ManagerSetting]
1. 전동커튼 사용 유무 설정 추가(제어기기)
2. WallPadAPI Jar 최신파일 업데이트

[WallPadMain]
1. 전동커튼 사용 유무 DB에 따른 UI 보여주는것 설정
2. WallPadAPI Jar 최신파일 업데이트

[WallPadAPI]
1. 전동커튼 사용 유무 정보 DB에서 가져오기 API 추가

jglee 3 tahun lalu
induk
melakukan
ececf96902

TEMPAT SAMPAH
ManagerSetting/libs/WallPadAPI.jar


+ 7 - 0
ManagerSetting/src/main/java/com/artncore/managersetting/dao/MainDatabaseManager.java

@@ -174,6 +174,7 @@ public class MainDatabaseManager {
     public static final int SETTING_ITEM_SUB_DEVICE_MAIN_GUI_CTRL_USE           = SETTING_ITEM_TYPE_BASE + 221; //제어기능
     public static final int SETTING_ITEM_SUB_DEVICE_KITCHEN_EM_CTRL_OPTION      = SETTING_ITEM_TYPE_BASE + 222; //각실EM제어옵션
     public static final int SETTING_ITEM_SUB_DEVICE_EMS_PROTOCOL                  = SETTING_ITEM_TYPE_BASE + 223; //EMS 프로토콜(원격검침)
+    public static final int SETTING_ITEM_SUB_DEVICE_SHADING                     = SETTING_ITEM_TYPE_BASE + 224; //전동커튼
 
     public static final String[] SUB_DEVICE_ITEM_ID = {
             "가스밸브"
@@ -300,6 +301,7 @@ public class MainDatabaseManager {
             , "제어기능"
             , "각실EM제어옵션"
             , "EMS프로토콜"
+            , "전동커튼"
     };
 
 
@@ -1374,6 +1376,7 @@ public class MainDatabaseManager {
             case SETTING_ITEM_SUB_DEVICE_MAIN_GUI_CTRL_USE:
             case SETTING_ITEM_SUB_DEVICE_KITCHEN_EM_CTRL_OPTION:
             case SETTING_ITEM_SUB_DEVICE_EMS_PROTOCOL:
+            case SETTING_ITEM_SUB_DEVICE_SHADING:
                 result = SUB_DEVICE_ITEM_ID[itemType - SETTING_ITEM_SUB_DEVICE_GAS];
                 break;
         }
@@ -2075,6 +2078,10 @@ public class MainDatabaseManager {
                     case SETTING_ITEM_SUB_DEVICE_EMS_PROTOCOL:
                         devInfo = "1(1:EMS프로토콜(사용함))";
                         break;
+
+                    case SETTING_ITEM_SUB_DEVICE_SHADING:
+                        devInfo = "1(1:전동커튼(사용안함))";
+                        break;
                 }
             }
         }

+ 2 - 0
ManagerSetting/src/main/java/com/artncore/managersetting/domain/Const.java

@@ -322,6 +322,8 @@ public class Const {
     public static final int CONTROLLER_TYPE_CTRL_USE = CONTROLLER_TYPE_BASE + 344; // 제어기능
     public static final int CONTROLLER_TYPE_KITCHEN_EM_CTRL_OPTION = CONTROLLER_TYPE_CTRL_USE + 345; // 각실EM제어옵션
 
+    public static final int CONTROLLER_TYPE_SHADING = CONTROLLER_TYPE_BASE + 346; // 전동커튼
+
    public static final String CONTENTS_ROOT = "/storage/emulated/0/wallpaddata/";
     //public static final String CONTENTS_ROOT = "/storage/sdcard0/wallpaddata";
     public static final String BESTIN_CONTENTS_ROOT = "/storage/emulated/0/Bestin/";

+ 32 - 0
ManagerSetting/src/main/java/com/artncore/managersetting/ui/fragments/SettingControllerFragment.java

@@ -218,6 +218,8 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
             addControllerVO(Const.CONTROLLER_TYPE_LH_GATEWAY);
 
             addControllerVO(Const.CONTROLLER_TYPE_KITCHEN_EM_CTRL_OPTION);
+
+            addControllerVO(Const.CONTROLLER_TYPE_SHADING);
         }
     }
 
@@ -1209,6 +1211,25 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
 
             }
             break;
+
+
+            case Const.CONTROLLER_TYPE_SHADING:
+            {
+                int Count = Const.CONTROLLER_ONOFF_COUNT;
+                int Current = Const.CONTROLLER_SETTING_DO_NOT_USED_INDEX;
+                if (mMainDatabaseManager.isUsedSettingDataSubDev(MainDatabaseManager.SETTING_ITEM_SUB_DEVICE_SHADING) == true)
+                    Current = Const.CONTROLLER_SETTING_DO_USED_INDEX;
+
+                String controllerName = mActivity.getString(R.string.contoller_shading);
+                controllerVO = new ControllerVO(type
+                        , controllerName
+                        , Count
+                        , Current
+                        , null
+                );
+            }
+            break;
+
         }
 
         if (controllerVO != null)
@@ -2036,6 +2057,13 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
             }
             break;
 
+            case Const.CONTROLLER_TYPE_SHADING:
+            {
+                mMainDatabaseManager.updateSetUsedToSubDeviceOnOff(MainDatabaseManager.SETTING_ITEM_SUB_DEVICE_SHADING, position);
+            }
+            break;
+
+
             default:
                 break;
         }
@@ -2206,6 +2234,10 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
                 updateSetUsedToSubDevice(type, position, itemName);
                 break;
 
+            case Const.CONTROLLER_TYPE_SHADING:
+                updateSetUsedToSubDevice(type, position, itemName);
+                break;
+
             default:
                 break;
         }

+ 1 - 0
ManagerSetting/src/main/res/values/strings.xml

@@ -295,6 +295,7 @@
     <string name="controller_light_batch_item_common_hdc_smart_switch">현산향스마트스위치 (iSS-101)</string>
     <string name="controller_light_batch_item_common_hdc_lcd_smart_switch">현산향LCD스마트스위치 (iSS-430)</string>
     <string name="controller_light_batch_item_common_hdc_allight">현산향제일전기일괄소등제어기</string>
+    <string name="contoller_shading">전동커튼</string>
 <!--
    현산향 조명 타입 구분자
 -->

TEMPAT SAMPAH
WallPadAPI/jar/WallPadAPI.jar


+ 39 - 25
WallPadAPI/src/main/java/com/artncore/WallPadDataMgr/WallpadDeviceSet.java

@@ -565,6 +565,26 @@ public class WallpadDeviceSet extends wallpaddbmgr {
 		return SYSTEMAIRCON_NONE;
 	}
 
+	/**
+	 * 전동커튼 사용유무
+	 *
+	 * @return boolean 타입 - true:사용, false:미사용
+	 */
+	public boolean Get_Shading_Use()
+	{
+		Log.d(TAG, "Get_Shading_Use");
+		int result = GetDeviceSetted(define.DEVICE_ID_SHADING);
+		if(result == DEV_DATA_ENABLE)
+		{
+			return true;
+		}
+		else
+		{
+			return false;
+		}
+	}
+
+
 	public int Get_Purity_Info()
 	{
 		String[] GetData = GetSettingData("청정환기");
@@ -2249,36 +2269,30 @@ public class WallpadDeviceSet extends wallpaddbmgr {
 	 */
 	public boolean GetEMSProtocolUse()
 	{
-		if(mModelType == Version.MODEL_TYPE.IHN_1010GL_I_2443)
+		String[] GetData = GetSettingData(define.DEVICE_ID_EMS_PROTOCOL);
+		//기본값이 false이기 때문에 이렇게 설정
+		boolean returnData = false;
+		try
 		{
-			String[] GetData = GetSettingData(define.DEVICE_ID_EMS_PROTOCOL);
-			//기본값이 false이기 때문에 이렇게 설정
-			boolean returnData = false;
-			try
-			{
-				if (GetData == null) return returnData;
-				if (GetData[1].indexOf("사용함") > 0) returnData = true;
-				else
-				{
-					returnData = false;
-					return returnData;
-				}
-
-				return returnData;
-			}
-			catch (RuntimeException re) {
-				LogUtil.errorLogInfo("", TAG, re);
-				returnData = false;
-				return  returnData;
-			} catch (Exception e)
+			if (GetData == null) return returnData;
+			if (GetData[1].indexOf("사용함") > 0) returnData = true;
+			else
 			{
-				LogUtil.errorLogInfo("", TAG, e);
 				returnData = false;
-				return  returnData;
+				return returnData;
 			}
+
+			return returnData;
 		}
-		else {
-			return true;
+		catch (RuntimeException re) {
+			LogUtil.errorLogInfo("", TAG, re);
+			returnData = false;
+			return  returnData;
+		} catch (Exception e)
+		{
+			LogUtil.errorLogInfo("", TAG, e);
+			returnData = false;
+			return  returnData;
 		}
 	}
 

+ 2 - 0
WallPadAPI/src/main/java/com/artncore/commons/define.java

@@ -724,6 +724,8 @@ public class define {
 
 	public static final String DEVICE_ID_SDBEM_LIGHT_OPTION  = "각실EM제어옵션";   // 각실EM제어 옵션
 
+	public static final String DEVICE_ID_SHADING          = "전동커튼";
+
 	public define()
 	{
 	}

+ 6 - 2
WallPadAddService/src/main/java/kr/co/icontrols/wallpadaddservice/screen/PopupNewMemo.java

@@ -38,6 +38,7 @@ public class PopupNewMemo extends WpadScreen {
     WpadTextView InstructionText;
 
     Context mContext;
+    private int mModelType = Version.getModelType();
 
     public PopupNewMemo(Context context, RelativeLayout layout, WallPadAPI wpapi, int operationMode) {
         super(context, layout);
@@ -64,8 +65,11 @@ public class PopupNewMemo extends WpadScreen {
             ViewRegistration(layout, m_NewDrawing, Common.PopupAlarmMarginLEFT(196), Common.PopupAlarmMarginTOP(585));
             m_NewAudio = new WpadImageView(context, TOUCH_KIND.BUTTON, 290, 80, R.drawable.btn_voice_normal3, R.drawable.btn_voice_pressed3, ID.NewMemoPopupID.button.NEW_AUDIO);
             ViewRegistration(layout, m_NewAudio, Common.PopupAlarmMarginLEFT(495), Common.PopupAlarmMarginTOP(585));
-            m_NewVideo = new WpadImageView(context, TOUCH_KIND.BUTTON, 290, 80, R.drawable.btn_video_normal3, R.drawable.btn_video_pressed3, ID.NewMemoPopupID.button.NEW_VIDEO);
-            ViewRegistration(layout, m_NewVideo, Common.PopupAlarmMarginLEFT(794), Common.PopupAlarmMarginTOP(585));
+            if(mModelType != Version.MODEL_TYPE.IHN_1010_I_2443)
+            {
+                m_NewVideo = new WpadImageView(context, TOUCH_KIND.BUTTON, 290, 80, R.drawable.btn_video_normal3, R.drawable.btn_video_pressed3, ID.NewMemoPopupID.button.NEW_VIDEO);
+                ViewRegistration(layout, m_NewVideo, Common.PopupAlarmMarginLEFT(794), Common.PopupAlarmMarginTOP(585));
+            }
         }
         else {
             m_NewDrawing = new WpadImageView(context, TOUCH_KIND.BUTTON, 360, 80, R.drawable.btn_picture_normal2, R.drawable.btn_picture_pressed2, ID.NewMemoPopupID.button.NEW_DRAWING);

TEMPAT SAMPAH
WallPadMain/libs/WallPadAPI.jar


+ 7 - 2
WallPadMain/src/main/java/kr/co/icontrols/wallpadmain/util/IconManager.java

@@ -41,6 +41,7 @@ public class IconManager {
     int nInterFloorNoiseSensorEnable = WallpadDeviceSet.DO_NOT_USE;   // 층간소음 센서
     boolean bCookTopOutletEnable = false;   // 쿡탑콘센트
     int nSystemAirconEnable = WallpadDeviceSet.DO_NOT_USE;    // 시스템에어컨
+    boolean bShadingEnable = false;   // 전동커튼
 
     // 에너지 기기
     boolean bRemoteMeterEnable = false;   // 원격검침
@@ -158,6 +159,7 @@ public class IconManager {
             bCookTopOutletEnable = mWallpadDeviceSet.Get_CookTopConcent_Use();   // 쿡탑콘센트 사용 유무
             nSystemAirconEnable = mWallpadDeviceSet.Get_AirCON_Info();   // 시스템에어컨 사용 유무
             bCtrlUse = mWallpadDeviceSet.Get_MainGUICtrlUse();
+            bShadingEnable = mWallpadDeviceSet.Get_Shading_Use();
 
             // 에너지
             bRemoteMeterEnable = mWallpadDeviceSet.Get_RemoteMeter_Use();   // 원격검침
@@ -401,8 +403,11 @@ public class IconManager {
             }
 
             //전동커튼
-            mIconInfoTable.addIconInfo(ID.ICONS.MENUS.CTRL_CURTAIN.getID(), ID.ICONS.MENUS.CTRL_CURTAIN.getNameKR(), ID.LINKEDSCREEN.SubMenuCtrl.Curtain,
-                    R.drawable.icon_curtain_normal, R.drawable.icon_curtain_pressed, R.drawable.icon_curtain_pressed, R.drawable.icon_curtain_pressed);
+            if(bShadingEnable)
+            {
+                mIconInfoTable.addIconInfo(ID.ICONS.MENUS.CTRL_CURTAIN.getID(), ID.ICONS.MENUS.CTRL_CURTAIN.getNameKR(), ID.LINKEDSCREEN.SubMenuCtrl.Curtain,
+                        R.drawable.icon_curtain_normal, R.drawable.icon_curtain_pressed, R.drawable.icon_curtain_pressed, R.drawable.icon_curtain_pressed);
+            }
 
             // 도어락
             if (naDoorlockEnable != null && naDoorlockEnable[0] == WallpadDeviceSet.DO_USE) {