Browse Source

에너지 관련 작업 추가 작업

jslee(madeinlab) 3 years ago
parent
commit
c3bdaebcce

+ 6 - 0
WallPadEnergyCtrl/src/main/java/kr/co/icontrols/wallpadenergyctrl/declare/ID.java

@@ -431,6 +431,9 @@ public final class ID
 			public final static int HOTWATER                = BASE + 208;
 			public final static int WATER                   = BASE + 209;
 			public final static int GAS                     = BASE + 210;
+			public final static int KEPCO                   = BASE + 211;
+			public final static int SOLAR                   = BASE + 212;
+			public final static int FUEL                    = BASE + 213;
 
 		}
 		public static final class text
@@ -458,6 +461,9 @@ public final class ID
 			public final static int WATER                   = BASE + 403;
 			public final static int GAS                     = BASE + 404;
 			public final static int HEATING                 = BASE + 405;
+			public final static int KEPCO       	        = BASE + 406;
+			public final static int SOLAR   	            = BASE + 407;
+			public final static int FUEL	                = BASE + 408;
 		}
 
 		public static final class text_energy_num_5

+ 6 - 0
WallPadEnergyCtrl/src/main/java/kr/co/icontrols/wallpadenergyctrl/declare/LayoutDevice_hems.java

@@ -471,6 +471,8 @@ public final class LayoutDevice_hems
 
             case R.drawable.man_energy_btn_power_3set_normal:
             case R.drawable.man_energy_btn_power_3set_pressed:
+            case R.drawable.btn_3_kepco_pressed:
+            case R.drawable.btn_3_kepco_normal:
             {
                 if (Common.SCREEN_TYPE <= Common.SCREEN_TYPE_1024x600)      {retPos.setPos(62, 190, 160, 74);}
                 else if (Common.SCREEN_TYPE == Common.SCREEN_TYPE_1280x800) {retPos.setPos(62, 190, 160, 74);}
@@ -479,6 +481,8 @@ public final class LayoutDevice_hems
 
             case R.drawable.man_energy_btn_water_3set_normal:
             case R.drawable.man_energy_btn_water_3set_pressed:
+            case R.drawable.btn_3_solar_e_pressed:
+            case R.drawable.btn_3_solar_e_normal:
             {
                 if (Common.SCREEN_TYPE <= Common.SCREEN_TYPE_1024x600)      {retPos.setPos(62, 266, 160, 74);}
                 else if (Common.SCREEN_TYPE == Common.SCREEN_TYPE_1280x800) {retPos.setPos(62, 266, 160, 74);}
@@ -487,6 +491,8 @@ public final class LayoutDevice_hems
 
             case R.drawable.man_energy_btn_gas_3set_normal:
             case R.drawable.man_energy_btn_gas_3set_pressed:
+            case R.drawable.btn_3_fuel_cell_pressed:
+            case R.drawable.btn_3_fuel_cell_normal:
             {
                 if (Common.SCREEN_TYPE <= Common.SCREEN_TYPE_1024x600)     {retPos.setPos(62, 342, 160, 74);}
                 else if (Common.SCREEN_TYPE == Common.SCREEN_TYPE_1280x800) {retPos.setPos(62, 342, 160, 74);}

File diff suppressed because it is too large
+ 220 - 279
WallPadEnergyCtrl/src/main/java/kr/co/icontrols/wallpadenergyctrl/screen/VIPIcEnergyMgrScreen.java


+ 87 - 85
WallPadEnergyCtrl/src/main/java/kr/co/icontrols/wallpadenergyctrl/screen/VIPRemoteMeterMainScreen.java

@@ -135,6 +135,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
     WpadTextView Show_Discription_Myhome_Text; //우리집 그래프 색
 
     // [Variables]
+    boolean bVIP = true;
     int mSampleShow;
     boolean mEMS_Enable;
     boolean mCostInfo_Enable = false;
@@ -183,7 +184,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
             "가스 ㎥",
             "온수 ㎥",
             "난방 ㎥/MWh",
-            "탄소 ㎥"
+            "전기차 kWh"
     };
     //메뉴화면 글자 조정을 위함. 한글: 36p, 단위:20p
     int ShowEnergyIndex = 0;
@@ -193,17 +194,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
             "가스",
             "온수",
             "난방",
-            "탄소"
-    };
-
-    int ShowUnitIndex = 0;
-    String[] ShowEnergyTypeUnit_String = {
-            "kWh",
-            "㎥",
-            "㎥",
-            "㎥",
-            "㎥/MWh",
-            "㎥"
+            "전기차"
     };
 
 
@@ -229,7 +220,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
     ArrayList<UsedValueArrayClass> arrayListGas = new ArrayList<UsedValueArrayClass>();
     ArrayList<UsedValueArrayClass> arrayListHotwater = new ArrayList<UsedValueArrayClass>();
     ArrayList<UsedValueArrayClass> arrayListEnergy = new ArrayList<UsedValueArrayClass>();
-    ArrayList<UsedValueArrayClass> arrayListCarbon = new ArrayList<UsedValueArrayClass>();
+    ArrayList<UsedValueArrayClass> arrayListElecCar = new ArrayList<UsedValueArrayClass>();
 
     // [Class]
     class CalendarClass {
@@ -679,37 +670,50 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                         Energy_SEL_02 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_02);
                         ViewRegistration(getLayout(), Energy_SEL_02, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(241));
                     }
-
-                    switch (mNumberOfEnergy) {
-                        case 2:
-                            ListEnergyTextWrite(2);
-                            break;
-                        case 3:
-                            ListEnergyTextWrite(3);
-                            break;
-                        case 5:
-                            Energy_SEL_03 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_03);
-                            ViewRegistration(getLayout(), Energy_SEL_03, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(296));
-
-                            Energy_SEL_04 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_04);
-                            ViewRegistration(getLayout(), Energy_SEL_04, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(351));
-                            ListEnergyTextWrite(5);
-                            break;
-
-                        case 6:
-                            Energy_SEL_03 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_03);
-                            ViewRegistration(getLayout(), Energy_SEL_03, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(296));
-
-                            Energy_SEL_04 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_04);
-                            ViewRegistration(getLayout(), Energy_SEL_04, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(351));
-
-                            Energy_SEL_05 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_05);
-                            ViewRegistration(getLayout(), Energy_SEL_05, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(406));
-                            ListEnergyTextWrite(6);
-                            break;
-
-                        default:
-                            break;
+                    //VIP인 경우 에너지 개수가 달라서 별로도 처리
+                    if(bVIP){
+                        Energy_SEL_03 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_03);
+                        ViewRegistration(getLayout(), Energy_SEL_03, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(296));
+
+                        Energy_SEL_04 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_04);
+                        ViewRegistration(getLayout(), Energy_SEL_04, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(351));
+
+                        Energy_SEL_05 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_05);
+                        ViewRegistration(getLayout(), Energy_SEL_05, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(406));
+                        ListEnergyTextWrite(6);
+                    }
+                    else {
+                        switch (mNumberOfEnergy) {
+                            case 2:
+                                ListEnergyTextWrite(2);
+                                break;
+                            case 3:
+                                ListEnergyTextWrite(3);
+                                break;
+                            case 5:
+                                Energy_SEL_03 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_03);
+                                ViewRegistration(getLayout(), Energy_SEL_03, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(296));
+
+                                Energy_SEL_04 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_04);
+                                ViewRegistration(getLayout(), Energy_SEL_04, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(351));
+                                ListEnergyTextWrite(5);
+                                break;
+
+                            case 6:
+                                Energy_SEL_03 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_03);
+                                ViewRegistration(getLayout(), Energy_SEL_03, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(296));
+
+                                Energy_SEL_04 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_04);
+                                ViewRegistration(getLayout(), Energy_SEL_04, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(351));
+
+                                Energy_SEL_05 = new WpadImageView(getContext(), TOUCH_KIND.BUTTON, 230, 55, R.drawable.meter_list_text_bg, R.drawable.meter_list_text_bg_p, ID.RemoteMeterMainScreenID.button.ENERGY_NEW_SEL_05);
+                                ViewRegistration(getLayout(), Energy_SEL_05, Common.ImgPosion.GetX(93), Common.ImgPosion.GetY(406));
+                                ListEnergyTextWrite(6);
+                                break;
+
+                            default:
+                                break;
+                        }
                     }
                 } else {
                     ListEnergyClose();
@@ -839,7 +843,6 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
         }
     }
 
-
     private void CalendarItemShow(int ItemIndex, int day, String ItemValue) {
         if (ItemValue == null) {
             return;
@@ -868,7 +871,6 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
         Show_Calendar_Item_Text[ItemIndex].setText(ItemValue);
     }
 
-
     private void ChangeData() {
         if (isResponseArrive == false) {
             if (mSampleShow != Common.MODE_BUSINESS_SAMPLE) {
@@ -928,6 +930,10 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
 
                 getLayout().removeView(Energy_SEL_03_Text);
                 getLayout().removeView(Energy_SEL_04_Text);
+                if(bVIP){
+                    getLayout().removeView(Energy_SEL_05);
+                    getLayout().removeView(Energy_SEL_05_Text);
+                }
                 break;
             case 6:
                 getLayout().removeView(Energy_SEL_03);
@@ -1042,11 +1048,13 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                     Common.ImgPosion.GetY(351));
             Energy_SEL_04_Text.setText(ShowListEnergyType_String[(ShowNowEnergyIndex + 4) % 6]);
 
-            Energy_SEL_05_Text = new WpadTextView(getContext(), false, 230, 55, Gravity.CENTER, Color.WHITE, Common.fontsize._26_DEFAULT, false, ID.RemoteMeterMainScreenID.text.TEXT_INFO);
-            ViewRegistration(getLayout(), Energy_SEL_05_Text,
-                    Common.ImgPosion.GetX(93),
-                    Common.ImgPosion.GetY(406));
-            Energy_SEL_05_Text.setText(ShowListEnergyType_String[(ShowNowEnergyIndex + 5) % 6]);
+            if(bVIP){
+                Energy_SEL_05_Text = new WpadTextView(getContext(), false, 230, 55, Gravity.CENTER, Color.WHITE, Common.fontsize._26_DEFAULT, false, ID.RemoteMeterMainScreenID.text.TEXT_INFO);
+                ViewRegistration(getLayout(), Energy_SEL_05_Text,
+                        Common.ImgPosion.GetX(93),
+                        Common.ImgPosion.GetY(406));
+                Energy_SEL_05_Text.setText(ShowListEnergyType_String[(ShowNowEnergyIndex + 5) % 6]);
+            }
         }
     }
 
@@ -1078,7 +1086,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
             DebugLogOutput("난방 선택");
             ShowNowEnergyIndex = 4;
         } else if (wpadtextview.getText().equals(ShowListEnergyType_String[5])) {
-            DebugLogOutput("탄소 선택");
+            DebugLogOutput("전기차 선택");
             ShowNowEnergyIndex = 5;
         }
         ShowMainEnergy();
@@ -1234,17 +1242,11 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
 
         }
         //한글
-        mShowListEnergyTypeText = new WpadTextView(getContext(), false, 89, 55, Gravity.LEFT, Color.WHITE, Common.fontsize._36, true, ID.RemoteMeterMainScreenID.text.TEXT_INFO);
+        mShowListEnergyTypeText = new WpadTextView(getContext(), false, 200, 55, Gravity.LEFT, Color.WHITE, Common.fontsize._30, true, ID.RemoteMeterMainScreenID.text.TEXT_INFO);
         ViewRegistration(getLayout(), mShowListEnergyTypeText,
                 Common.ImgPosion.GetX(100),
                 Common.ImgPosion.GetY(132));
-        mShowListEnergyTypeText.setText(ShowEnergyType_String[ShowNowEnergyIndex]);
-        //단위
-        mShowListEnergyTypeUnit = new WpadTextView(getContext(), false, 89, 55, Gravity.LEFT, Color.WHITE, Common.fontsize._20, true, ID.RemoteMeterMainScreenID.text.TEXT_INFO);
-        ViewRegistration(getLayout(), mShowListEnergyTypeUnit,
-                Common.ImgPosion.GetX(182),
-                Common.ImgPosion.GetY(132));
-        mShowListEnergyTypeUnit.setText(ShowEnergyTypeUnit_String[ShowNowEnergyIndex]);
+        mShowListEnergyTypeText.setText(ShowListEnergyType_String[ShowNowEnergyIndex]);
     }
 
     /**
@@ -1284,11 +1286,12 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
         switch (ShowNowTypeIndex) {
             case 0:
                 //ShowMonthEnergy();
-                //VIP용
+                //VIP용 당월
                 ShowVipMonthEnergy();
                 break;
 
             case 1:
+                //일별
                 ShowDayEnergy();
                 break;
 
@@ -2023,7 +2026,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
         arrayListGas.removeAll(arrayListGas);
         arrayListHotwater.removeAll(arrayListHotwater);
         arrayListEnergy.removeAll(arrayListEnergy);
-        arrayListCarbon.removeAll(arrayListCarbon);
+        arrayListElecCar.removeAll(arrayListElecCar);
     }
 
     final int DEFAULT_METERING_COUNT = 5;
@@ -2183,8 +2186,9 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                         case 4: //난방
                             imapRemotemeter.DoWork(false, false, false, false, false, true, false, false, year, month);
                             break;
-                        case 5: //탄소
-                            imapRemotemeter.DoWork(false, false, false, false, false, false, true, false, year, month);
+                        case 5: //전기차
+                            //imapRemotemeter.DoWork(false, false, false, false, false, false, true, false, year, month);
+                            imapRemotemeter.DoWorkVIP(false, false, true, false, false, year, month);
                             break;
                         default:
                             break;
@@ -2209,8 +2213,9 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                         case 4: //난방
                             imapRemotemeter.DoWork(true, false, false, false, false, true, false, mEMS_Enable, year, month);
                             break;
-                        case 5: //탄소
-                            imapRemotemeter.DoWork(true, false, false, false, false, false, true, mEMS_Enable, year, month);
+                        case 5: //전기차
+                            //imapRemotemeter.DoWork(true, false, false, false, false, false, true, mEMS_Enable, year, month);
+                            imapRemotemeter.DoWorkVIP(true, false, true, false,false, year, month);
                             break;
                         default:
                             break;
@@ -2514,14 +2519,13 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                                                     CalendarItemShow(mCalendarItemIndex, (Integer.parseInt(imapRemotemeter.GetAttributeVal(i, "day"))),
                                                             imapRemotemeter.GetAttributeVal(i, "energy_used"));
                                                 }
-
                                                 break;
 
-                                            case 5: // 탄소
-                                                TempString = imapRemotemeter.GetAttributeVal(i, "carbon_used");
+                                            case 5: // 전기차
+                                                TempString = imapRemotemeter.GetAttributeVal(i, "eleccar_used");
                                                 if (TempString.equals("1000000") == false) {
                                                     CalendarItemShow(mCalendarItemIndex, (Integer.parseInt(imapRemotemeter.GetAttributeVal(i, "day"))),
-                                                            imapRemotemeter.GetAttributeVal(i, "carbon_used"));
+                                                            imapRemotemeter.GetAttributeVal(i, "eleccar_used"));
                                                 }
                                                 break;
                                         }
@@ -2637,22 +2641,18 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                                             DebugLogOutput("arrayListEnergy used " + arrayListEnergy.get(i).UsedValue_Myhome);
                                             break;
 
-                                        case 5: // 탄소
-                                            if (imapRemotemeter.GetAttributeVal(i, "carbon_used") != null) {
-                                                if (imapRemotemeter.GetAttributeVal(i, "carbon_used").equals("1000000") == false) {
-                                                    Temp_Myhome = Float.parseFloat(imapRemotemeter.GetAttributeVal(i, "carbon_used"));
+                                        case 5: // 전기차
+                                            //전기차는 동평형이 없다. 다른 에너지도 없는지 확인이 필요함.
+                                            if (imapRemotemeter.GetAttributeVal(i, "eleccar_used") != null) {
+                                                if (imapRemotemeter.GetAttributeVal(i, "eleccar_used").equals("1000000") == false) {
+                                                    Temp_Myhome = Float.parseFloat(imapRemotemeter.GetAttributeVal(i, "eleccar_used"));
                                                 }
                                             }
-                                            if (imapRemotemeter.GetAttributeVal(i, "carbon_average_used_samesize") != null) {
-                                                if (imapRemotemeter.GetAttributeVal(i, "carbon_average_used_samesize").equals("null") == false) {
-                                                    Temp_SameSize = Float.parseFloat(imapRemotemeter.GetAttributeVal(i, "carbon_average_used_samesize"));
-                                                }
-                                            }
-                                            arrayListCarbon.add(new UsedValueArrayClass(Integer.parseInt(imapRemotemeter.GetAttributeVal(i, "year")), Integer
-                                                    .parseInt(imapRemotemeter.GetAttributeVal(i, "month")), Temp_Myhome, Temp_SameSize));
+                                            arrayListElecCar.add(new UsedValueArrayClass(Integer.parseInt(imapRemotemeter.GetAttributeVal(i, "year")), Integer
+                                                    .parseInt(imapRemotemeter.GetAttributeVal(i, "month")), Temp_Myhome, 0));
 
-                                            DebugLogOutput("arrayListCarbon " + arrayListCarbon.size());
-                                            DebugLogOutput("arrayListCarbon used " + arrayListCarbon.get(i).UsedValue_Myhome);
+                                            DebugLogOutput("arrayListElecCar " + arrayListElecCar.size());
+                                            DebugLogOutput("arrayListElecCar used " + arrayListElecCar.get(i).UsedValue_Myhome);
                                             break;
                                     }
                                 }
@@ -2664,6 +2664,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                             }
 
                             if (inputType == 2) {
+                                //3개월 선택
                                 if (mEMS_Enable == true) {
                                     int TempCalendarYear = CalendarYear;
                                     int TempCalendarMonth = CalendarMonth + 1;
@@ -2706,13 +2707,14 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                                         break;
 
                                     case 5: // 탄소
-                                        Show3MonthEnergy_inRetProci(arrayListCarbon);
+                                        Show3MonthEnergy_inRetProci(arrayListElecCar);
                                         break;
 
                                     default:
                                         break;
                                 }
                             } else if (inputType == 3) {
+                                //전년비
                                 switch (ShowNowEnergyIndex) {
                                     case 0: // 전기
                                         ShowYearEnergy_inRetProci(arrayListElect);
@@ -2735,7 +2737,7 @@ public class VIPRemoteMeterMainScreen extends WpadScreen {
                                         break;
 
                                     case 5: // 탄소
-                                        ShowYearEnergy_inRetProci(arrayListCarbon);
+                                        ShowYearEnergy_inRetProci(arrayListElecCar);
                                         break;
 
                                     default:

Some files were not shown because too many files changed in this diff