浏览代码

[MangerSetting]
1. 일괄소등&스마트스위치
- "현산향제일전기일괄소등제어기" 추가

[WallPadAPI]
1. 일괄소등 컨트롤 시, 추가된 "현산향제일전기일괄소등제어기"에 대한 제어 추가

[WallPadMain
1. "현산향제일전기일괄소등제어기" 선택 시, 아이콘 추가(2세대 전용)

jglee 3 年之前
父节点
当前提交
345606722f

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

@@ -99,7 +99,7 @@ public class Const {
     public static final String LIGHT_BATCH_CONTROL_TYPE_COMMON_BATCH_CONTROLLER     = "대외향일괄소등제어기";
     public static final String LIGHT_BATCH_CONTROL_TYPE_HDC_SMART_SWITCH            = "현산향스마트스위치";
     public static final String LIGHT_BATCH_CONTROL_TYPE_HDC_LCD_SMART_SWITCH        = "현산향LCD스마트스위치";
-
+    public static final String LIGHT_BATCH_CONTROL_TYPE_HDC_ALLLIGHT        = "현산향제일전기일괄소등제어기";
 
     public static final String LIGHT_BATCH_CONTROL_TYPE_L1 = "L1설정";
     public static final String LIGHT_BATCH_CONTROL_TYPE_L2 = "L2설정";

+ 9 - 3
ManagerSetting/src/main/java/com/artncore/managersetting/ui/fragments/SettingControllerFragment.java

@@ -698,12 +698,15 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
                         String strType = InfoList.get(5);
 
                         if (Version.getGatewayUsage()) {
-                            if (Const.LIGHT_BATCH_CONTROL_TYPE_HDC_SMART_SWITCH.equals(strType)) {
+                            if (Const.LIGHT_BATCH_CONTROL_TYPE_HDC_ALLLIGHT.equals(strType)) {
                                 batchControllCurrent = 1;
                             }
-                            else if (Const.LIGHT_BATCH_CONTROL_TYPE_HDC_LCD_SMART_SWITCH.equals(strType)) {
+                            else if (Const.LIGHT_BATCH_CONTROL_TYPE_HDC_SMART_SWITCH.equals(strType)) {
                                 batchControllCurrent = 2;
                             }
+                            else if (Const.LIGHT_BATCH_CONTROL_TYPE_HDC_LCD_SMART_SWITCH.equals(strType)) {
+                                batchControllCurrent = 3;
+                            }
                         }
                         else {
                             if (Const.LIGHT_BATCH_CONTROL_TYPE_COMMON_SMART_SWITCH.equals(strType)) {
@@ -720,6 +723,7 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
                 itemList.add(mActivity.getString(R.string.do_not_used));
 
                 if (Version.getGatewayUsage()) {
+                    itemList.add(mActivity.getString(R.string.controller_light_batch_item_common_hdc_allight));
                     itemList.add(mActivity.getString(R.string.controller_light_batch_item_common_hdc_smart_switch));
                     itemList.add(mActivity.getString(R.string.controller_light_batch_item_common_hdc_lcd_smart_switch));
                 }
@@ -1739,7 +1743,9 @@ public class SettingControllerFragment extends Fragment implements ControllerLis
                     else {
                         String typeName = null;
 
-                        if (itemNameTempSplit[0].equals(Const.LIGHT_BATCH_CONTROL_TYPE_COMMON_SMART_SWITCH))
+                        if (itemNameTempSplit[0].equals(Const.LIGHT_BATCH_CONTROL_TYPE_HDC_ALLLIGHT))
+                            typeName = Const.LIGHT_BATCH_CONTROL_TYPE_HDC_ALLLIGHT;
+                       else if (itemNameTempSplit[0].equals(Const.LIGHT_BATCH_CONTROL_TYPE_COMMON_SMART_SWITCH))
                             typeName = Const.LIGHT_BATCH_CONTROL_TYPE_COMMON_SMART_SWITCH;
                         else if (itemNameTempSplit[0].equals(Const.LIGHT_BATCH_CONTROL_TYPE_COMMON_BATCH_CONTROLLER))
                             typeName = Const.LIGHT_BATCH_CONTROL_TYPE_COMMON_BATCH_CONTROLLER;

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

@@ -294,6 +294,7 @@
     <string name="controller_light_batch_item_common_batch_controller">대외향일괄소등제어기 (일괄소등제어기or조명3로스위치)</string>
     <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>
 <!--
    현산향 조명 타입 구분자
 -->

+ 10 - 2
WallPadAPI/src/main/java/com/artncore/WallPadDataMgr/WallpadDeviceSet.java

@@ -242,6 +242,7 @@ public class WallpadDeviceSet extends wallpaddbmgr {
 	public static final int BATCH_TYPE_SMART         = 22; //대외향스마트스위치 - iSS-201
 	public static final int BATCH_TYPE_HDC_OLD_SMART = 25; //현산향스마트스위치 - iSS-101
 	public static final int BATCH_TYPE_HDC_LCD_SMART = 26; //현산향스마트스위치 - iSS-430
+	public static final int BATCH_TYPE_HDC_ALLLIGHT  = 27; //일괄소등 제어기 (현산:제일전기)
 
 	/**
 	 * @description
@@ -251,7 +252,8 @@ public class WallpadDeviceSet extends wallpaddbmgr {
 	 * BATCH_TYPE_GENERAL:        대외향일괄소등제어기 <br>
 	 * BATCH_TYPE_SMART:          대외향스마트스위치(iSS-201)<br>
 	 * BATCH_TYPE_HDC_OLD_SMART:  현산향스마트스위치(iSS-101)<br>
-	 *  BATCH_TYPE_HDC_LCD_SMART: 현산향스마트스위치(iSS-430)<br>
+	 * BATCH_TYPE_HDC_LCD_SMART: 현산향스마트스위치(iSS-430)<br>
+	 * BATCH_TYPE_HDC_ALLLIGHT: 일괄소등 제어기 (현산:제일전기)<br>
 	 * int[2] - L1설정 <br>
 	 * int[3] - L2설정
 	 */
@@ -297,7 +299,13 @@ public class WallpadDeviceSet extends wallpaddbmgr {
 					|| mModelType == Version.MODEL_TYPE.IHN_1020GL
 					|| mModelType == Version.MODEL_TYPE.IHN_D101_I_OCF)
 			{
-				if (GetData[1].indexOf("현산향스마트스위치") > 0) returnData[1] = BATCH_TYPE_HDC_OLD_SMART;
+				if (GetData[1].indexOf("현산향제일전기일괄소등제어기") > 0) {
+					returnData[1] = BATCH_TYPE_HDC_ALLLIGHT;
+					returnData[2] = 3;
+					returnData[3] = 4;
+					return returnData;
+				}
+				else if (GetData[1].indexOf("현산향스마트스위치") > 0) returnData[1] = BATCH_TYPE_HDC_OLD_SMART;
 				else if (GetData[1].indexOf("현산향LCD스마트스위치") > 0) returnData[1] = BATCH_TYPE_HDC_LCD_SMART;
 				else {
 					returnData[0] = 0;

+ 26 - 2
WallPadAPI/src/main/java/com/artncore/wallpadapi/WallPadAPI.java

@@ -199,7 +199,18 @@ public class WallPadAPI {
                     || mModelType == Version.MODEL_TYPE.IHN_1010GL || mModelType == Version.MODEL_TYPE.IHN_1010GL_I
                     || mModelType == Version.MODEL_TYPE.IHN_1010GL_I_2443 || mModelType == Version.MODEL_TYPE.IHN_1010GL_I_6410) {
                 // AC 분전반 사용 (AC 조명)
-                if (!Get_HDCIntLightType()) {
+                WallpadDeviceSet devSet = new WallpadDeviceSet(mContext);
+                int[] batchinfo = devSet.Get_BatchSW_Info();
+                devSet.closeDB();
+                //DB에 현산향제일전기일괄소등제어기 되어 있으면 2세대 전용 일괄소등임(제일전기)
+                if(batchinfo!=null && batchinfo.length > 2 && batchinfo[1]== WallpadDeviceSet.BATCH_TYPE_HDC_ALLLIGHT)
+                {
+                    AllLightHDCAPI allLightHDCAPI = Get_AllLightHDCController();
+                    if (allLightHDCAPI == null) return -1;
+                    int ret = allLightHDCAPI.AllLightControl(onoff);
+                    return ret;
+                }
+                else  if (!Get_HDCIntLightType()) {
                     // 0:일괄소등 릴레이
                     AllLightHDCAPI allLightHDCAPI = Get_AllLightHDCController();
                     if (allLightHDCAPI == null) return -1;
@@ -296,7 +307,20 @@ public class WallPadAPI {
             else if (mModelType == Version.MODEL_TYPE.IHN_1020GL
                     || mModelType == Version.MODEL_TYPE.IHN_1010GL || mModelType == Version.MODEL_TYPE.IHN_1010GL_I
                     || mModelType == Version.MODEL_TYPE.IHN_1010GL_I_2443 || mModelType == Version.MODEL_TYPE.IHN_1010GL_I_6410) {
-                if (!Get_HDCIntLightType()) {
+
+
+                WallpadDeviceSet devSet = new WallpadDeviceSet(mContext);
+                int[] batchinfo = devSet.Get_BatchSW_Info();
+                devSet.closeDB();
+                //DB에 현산향제일전기일괄소등제어기 되어 있으면 2세대 전용 일괄소등임(제일전기)
+                if(batchinfo!=null && batchinfo.length > 2 && batchinfo[1]== WallpadDeviceSet.BATCH_TYPE_HDC_ALLLIGHT)
+                {
+                    AllLightHDCAPI allLightHDCAPI = Get_AllLightHDCController();
+                    if (allLightHDCAPI == null) return -1;
+                    if (allLightHDCAPI.data.AllLightStatus) ret = 1;
+                    else ret = 0;
+                }
+                else  if (!Get_HDCIntLightType()) {
                     // 0:일괄소등 릴레이
                     AllLightHDCAPI allLightHDCAPI = Get_AllLightHDCController();
                     if (allLightHDCAPI == null) return -1;

+ 5 - 1
WallPadMain/src/main/java/kr/co/icontrols/wallpadmain/util/IconManager.java

@@ -262,7 +262,11 @@ public class IconManager {
 
             // 일괄소등
             if (naAllLightOffEnable[0] == WallpadDeviceSet.DO_USE) {
-                if (naAllLightOffEnable[1] == WallpadDeviceSet.BATCH_TYPE_GENERAL) {
+                if (naAllLightOffEnable[1] == WallpadDeviceSet.BATCH_TYPE_HDC_ALLLIGHT) {
+                    mIconInfoTable.addIconInfo(ID.ICONS.MENUS.MAIN_LIGHTS_OUT.getID(), ID.ICONS.MENUS.MAIN_LIGHTS_OUT.getNameKR(), ID.LINKEDSCREEN.OtherFunc.IGAL_CTRL,
+                            R.drawable.icon_ctrl_lightsout_normal, R.drawable.icon_ctrl_lightsout_pressed, R.drawable.icon_ctrl_lightsout_pressed, R.drawable.icon_ctrl_lightsout_pressed);
+                }
+                else if (naAllLightOffEnable[1] == WallpadDeviceSet.BATCH_TYPE_GENERAL) {
                     mIconInfoTable.addIconInfo(ID.ICONS.MENUS.MAIN_LIGHTS_OUT.getID(), ID.ICONS.MENUS.MAIN_LIGHTS_OUT.getNameKR(), ID.LINKEDSCREEN.OtherFunc.IGAL_CTRL,
                             R.drawable.icon_ctrl_lightsout_normal, R.drawable.icon_ctrl_lightsout_pressed, R.drawable.icon_ctrl_lightsout_pressed, R.drawable.icon_ctrl_lightsout_pressed);
                 }