From 562ea59026c221ba2499c8b5cf70e838e44005dd Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期一, 20 五月 2024 18:49:11 +0800
Subject: [PATCH] 2024年05月20日18:49:00

---
 app/src/main/res/layout/item_station.xml                                           |    2 
 app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java           |   43 +++-
 app/src/main/res/layout/item_search_device.xml                                     |   81 +++++++++
 app/src/main/res/values/strings.xml                                                |    8 
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseSearchActivity.java    |   14 +
 app/src/main/res/layout/fragment_message.xml                                       |    2 
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/DeviceSearchActivity.java   |    1 
 app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java                   |   37 +++
 app/src/main/res/layout/item_plant_details.xml                                     |    6 
 app/src/main/res/layout/fragment_house_list.xml                                    |   25 ++
 app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java                    |   12 +
 app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java               |    9 
 app/src/main/res/values-zh/strings.xml                                             |    4 
 app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java         |   66 ++++++
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java |   31 ++-
 app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchHouseAdapter.java          |    2 
 app/src/main/java/com/hdl/photovoltaic/ui/bean/CloudInverterDeviceBean.java        |    2 
 app/src/main/res/values-en/strings.xml                                             |    4 
 app/src/main/java/com/hdl/photovoltaic/enums/UnitType.java                         |    8 
 app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java            |   36 +--
 app/src/main/java/com/hdl/photovoltaic/ui/bean/DeviceBean.java                     |    5 
 app/src/main/res/layout/item_device_details.xml                                    |   87 ++++----
 app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java                   |    4 
 23 files changed, 354 insertions(+), 135 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/enums/UnitType.java b/app/src/main/java/com/hdl/photovoltaic/enums/UnitType.java
new file mode 100644
index 0000000..6ffb6c9
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/enums/UnitType.java
@@ -0,0 +1,8 @@
+package com.hdl.photovoltaic.enums;
+
+public @interface UnitType {
+    String kWp = "kWp";
+    String kWh = "kW.h";
+    String kW = "kW";
+    String noValue = "0.00";
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
index 8569903..730f630 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
@@ -15,6 +15,7 @@
 import com.google.zxing.qrcode.QRCodeWriter;
 import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
 import com.hdl.photovoltaic.config.UserConfigManage;
+import com.hdl.photovoltaic.enums.UnitType;
 import com.hdl.photovoltaic.utils.GlideUtils;
 
 import org.json.JSONObject;
@@ -54,19 +55,47 @@
 
     public static String getConvertDoubleUnit(String value) {
         if (TextUtils.isEmpty(value)) {
-            return HdlDeviceLogic.noValue ;
+            return UnitType.noValue;
         }
         BigDecimal formattedValue = getBigDecimal(value);
-        return formattedValue.toString() ;
+        return formattedValue.toString();
 
     }
 
     public static String getConvertDoubleUnit(int value) {
         if (value == 0) {
-            return HdlDeviceLogic.noValue ;
+            return UnitType.noValue;
         }
         BigDecimal formattedValue = getBigDecimal(value + "");
-        return formattedValue.toString() ;
+        return formattedValue.toString();
+    }
+
+
+    /**
+     * @param value 鍊�
+     * @param unit  渚嬪:UnitType.kWh
+     * @return 甯﹀崟浣嶅�艰繑鍥�
+     */
+    public static String getConvertDoubleUnit(String value, String unit) {
+        if (TextUtils.isEmpty(value)) {
+            return UnitType.noValue + unit;
+        }
+        BigDecimal formattedValue = getBigDecimal(value);
+        return formattedValue.toString() + unit;
+
+    }
+
+    /**
+     * @param value 鍊�
+     * @param unit  渚嬪:UnitType.kWh
+     * @return 甯﹀崟浣嶅�艰繑鍥�
+     */
+    public static String getConvertDoubleUnit(int value, String unit) {
+        if (value == 0) {
+            return UnitType.noValue + unit;
+        }
+        BigDecimal formattedValue = getBigDecimal(value + "");
+        return formattedValue.toString() + unit;
     }
 
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
index 4be1d77..ac4d516 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
@@ -74,11 +74,7 @@
         return sHdlDeviceLogic;
     }
 
-    public static final String kWp = "kWp";
-    public static final String kWh = "kW.h";
 
-    public static final String kW = "kW";
-    public static final String noValue = "0.00";
 
     private List<DeviceBean> mListDevice = new ArrayList<>();
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java
index b43aba7..7118b04 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java
@@ -12,6 +12,8 @@
 import androidx.recyclerview.widget.RecyclerView;
 
 import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.enums.UnitType;
+import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.ui.bean.DeviceBean;
 import com.hdl.photovoltaic.widget.SwipeLayout;
 
@@ -41,6 +43,14 @@
     @Override
     public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
         DeviceBean deviceBean = this.mList.get(position);
+
+        holder.homeNameTv.setText(deviceBean.getHomeNameAndDeviceName());
+        holder.device_details_sn_tv.setText(deviceBean.getOsn());
+        holder.device_label_run_state_value_tv.setText(deviceBean.getSystemStatusDesc());
+        holder.device_label_power_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(deviceBean.getPowerPvNow(), UnitType.kW));
+        holder.device_label_day_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(deviceBean.getPowerPvNow(), UnitType.kWh));
+        holder.device_label_location_tv.setText(deviceBean.getHomeAddress());
+
         holder.itemView.setTag(position);
         holder.itemView.setOnClickListener(new View.OnClickListener() {
             @Override
@@ -81,27 +91,28 @@
      */
     static class MyViewHolder extends RecyclerView.ViewHolder {
 
-        public ImageView homeIconIv;//浣忓畢鍥剧墖
+        public ImageView device_icon_iv;//璁惧鍥剧墖
         public TextView homeNameTv;//浣忓畢鍚嶇О
-        public TextView capacityTv;//瑁呮満瀹归噺
-        public TextView powerTv;//鍙戠數鍔熺巼
-        public TextView stateTv;//鐢电珯鐘舵��(杩炴帴涓�,杩愯,绂荤嚎,鏁呴殰);
-        public RelativeLayout item_parent_rl;//鏉$洰鐖跺鍣�
-        public ImageView move_home_iv;//绉诲姩鐢电珯浣嶇疆
-        public ImageView del_home_iv;//鍒犻櫎鐢电珯
-        public SwipeLayout item_parent_swipeLayout;//鐖跺鍣�
+        public TextView device_details_sn_tv;//mac
+        public TextView device_label_run_state_value_tv;//璁惧杩愯鐘舵��
+        public TextView device_label_power_value_tv;//鏈夊姛鍔熺巼
+        public TextView device_label_day_value_tv;//褰撴棩鍙戠數閲�
+        public TextView device_label_location_tv;//鐢电珯鍦板潃
+        public TextView device_label_state_tv;//鐢电珯鐘舵��(杩炴帴涓�,杩愯,绂荤嚎,鏁呴殰);
+
 
         public MyViewHolder(@NonNull View itemView) {
             super(itemView);
-            homeIconIv = itemView.findViewById(R.id.device_details_image_iv);
+            device_icon_iv = itemView.findViewById(R.id.device_details_image_iv);
             homeNameTv = itemView.findViewById(R.id.device_details_name_tv);
-            capacityTv = itemView.findViewById(R.id.device_details_sn_tv);
-            powerTv = itemView.findViewById(R.id.power_type_tv);
-            stateTv = itemView.findViewById(R.id.fragment_house_list_line_state_tv);
-            item_parent_rl = itemView.findViewById(R.id.item_parent_rl);
-            move_home_iv = itemView.findViewById(R.id.move_home_iv);
-            del_home_iv = itemView.findViewById(R.id.del_home_iv);
-            item_parent_swipeLayout = itemView.findViewById(R.id.item_parent_swipeLayout);
+            device_details_sn_tv = itemView.findViewById(R.id.device_details_sn_tv);
+            device_label_run_state_value_tv = itemView.findViewById(R.id.device_label_run_state_value_tv);
+            device_label_power_value_tv = itemView.findViewById(R.id.device_label_power_value_tv);
+            device_label_day_value_tv = itemView.findViewById(R.id.device_label_day_value_tv);
+            device_label_location_tv = itemView.findViewById(R.id.device_label_location_tv);
+
+            device_label_state_tv = itemView.findViewById(R.id.device_label_state_tv);
+
         }
     }
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
index 683cc19..7ff62da 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
@@ -15,6 +15,8 @@
 
 import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
 import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.enums.UnitType;
+import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.other.HdlDeviceLogic;
 import com.hdl.photovoltaic.other.HdlLogLogic;
 import com.hdl.photovoltaic.ui.bean.HouseIdBean;
@@ -55,28 +57,18 @@
         HouseIdBean houseIdBean = this.mList.get(position);
         holder.homeNameTv.setText(houseIdBean.getHomeName().trim());
         //瑁呮満瀹归噺
-        String capacity = mContext.getString(R.string.my_power_station_installed_capacity) + houseIdBean.getInstalledCapacity() + HdlDeviceLogic.kW;
+        String capacity = mContext.getString(R.string.my_power_station_installed_capacity) + ":" + HdlCommonLogic.getConvertDoubleUnit(houseIdBean.getInstalledCapacity(), UnitType.kWp);
         holder.capacityTv.setText(capacity);
-        String kw = "0";
-        try {
-            if (houseIdBean.getPower().contains(".")) {
-                int indexOf = houseIdBean.getPower().indexOf(".");
-                houseIdBean.setPower(houseIdBean.getPower().substring(0, indexOf));
-            }
-            int intValue = Integer.parseInt(houseIdBean.getPower());
-            int k = intValue / 1000;
-            int w = intValue % 1000;
-            kw = k + "." + w;
-        } catch (Exception ignored) {
-            kw = "0.0";
-        }
         //鍙戠數鍔熺巼
-        String power = mContext.getString(R.string.power_station_generated_power) + kw + HdlDeviceLogic.kW;
-        holder.powerTv.setText(power);
+        holder.power_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(houseIdBean.getPower(), UnitType.kW));
+        //褰撴棩鍙戠數閲�
+        holder.day_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(houseIdBean.getTodayElectricity(), UnitType.kWh));
+        //褰撴湀鍙戠數閲�
+        holder.month_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(houseIdBean.getMonthElectricity(), UnitType.kWh));
+        holder.plant_details_location_tv.setText(houseIdBean.getHomeAddress());
         holder.item_parent_rl.setTag(position);
         setTextViewStyle(holder.stateTv, houseIdBean.getPowerStationStatus());
         GlideUtils.getRoundedCornersImage(mContext, houseIdBean.getPowerStationImage(), holder.homeIconIv, new RoundedCorners(12), false);
-
         HdlLogLogic.print("---鐢电珯鍚嶇О:" + houseIdBean.getHomeName() + "---鍥剧墖url:" + houseIdBean.getPowerStationImage(), false);
         holder.item_parent_rl.setOnClickListener(new View.OnClickListener() {
             @Override
@@ -194,11 +186,14 @@
         public ImageView homeIconIv;//浣忓畢鍥剧墖
         public TextView homeNameTv;//浣忓畢鍚嶇О
         public TextView capacityTv;//瑁呮満瀹归噺
-        public TextView powerTv;//鍙戠數鍔熺巼
+        public TextView power_value_tv;//鍙戠數鍔熺巼
+        public TextView day_value_tv;//褰撴棩鍙戠數閲�
+        public TextView month_value_tv;//褰撴湀鍙戠數閲�
         public TextView stateTv;//鐢电珯鐘舵��(杩炴帴涓�,杩愯,绂荤嚎,鏁呴殰);
         public RelativeLayout item_parent_rl;//鏉$洰鐖跺鍣�
         public ImageView move_home_iv;//绉诲姩鐢电珯浣嶇疆
         public ImageView del_home_iv;//鍒犻櫎鐢电珯
+        public TextView plant_details_location_tv;//鐢电珯鍦板潃
         public SwipeLayout item_parent_swipeLayout;//鐖跺鍣�
 
         public MyViewHolder(@NonNull View itemView) {
@@ -206,11 +201,14 @@
             homeIconIv = itemView.findViewById(R.id.device_details_image_iv);
             homeNameTv = itemView.findViewById(R.id.device_details_name_tv);
             capacityTv = itemView.findViewById(R.id.device_details_sn_tv);
-            powerTv = itemView.findViewById(R.id.power_type_tv);
+            power_value_tv = itemView.findViewById(R.id.power_value_tv);
+            day_value_tv = itemView.findViewById(R.id.day_value_tv);
+            month_value_tv = itemView.findViewById(R.id.month_value_tv);
             stateTv = itemView.findViewById(R.id.fragment_house_list_line_state_tv);
             item_parent_rl = itemView.findViewById(R.id.item_parent_rl);
             move_home_iv = itemView.findViewById(R.id.move_home_iv);
             del_home_iv = itemView.findViewById(R.id.del_home_iv);
+            plant_details_location_tv = itemView.findViewById(R.id.plant_details_location_tv);
             item_parent_swipeLayout = itemView.findViewById(R.id.item_parent_swipeLayout);
         }
     }
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java
index 1eda829..1961544 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java
@@ -1,12 +1,14 @@
 package com.hdl.photovoltaic.ui.adapter;
 
 import android.content.Context;
+import android.graphics.drawable.Drawable;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.TextView;
 
 import androidx.annotation.NonNull;
+import androidx.appcompat.content.res.AppCompatResources;
 import androidx.recyclerview.widget.RecyclerView;
 
 import com.hdl.photovoltaic.R;
@@ -15,7 +17,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
-public class SearchDeviceAdapter  extends RecyclerView.Adapter<SearchDeviceAdapter.MyViewHolder> {
+public class SearchDeviceAdapter extends RecyclerView.Adapter<SearchDeviceAdapter.MyViewHolder> {
     List<DeviceBean> mList;
 
     Context mContext;
@@ -30,7 +32,7 @@
     @NonNull
     @Override
     public SearchDeviceAdapter.MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
-        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_search_house, parent, false);
+        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_search_device, parent, false);
         return new MyViewHolder(view);
     }
 
@@ -38,8 +40,10 @@
     public void onBindViewHolder(@NonNull SearchDeviceAdapter.MyViewHolder holder, int position) {
         DeviceBean deviceBean = this.mList.get(position);
 
-        holder.power_station_name_tv.setText(deviceBean.getHomeName());
-        holder.power_station_location_tv.setText(deviceBean.getAddress());
+        holder.device_search_name_tv.setText(deviceBean.getHomeNameAndDeviceName());
+        holder.device_search_sn_tv.setText(deviceBean.getOsn());
+        holder.device_search_location_tv.setText(deviceBean.getHomeAddress());
+        setTextViewStyle(holder.device_search_state_tv, deviceBean.getDeviceStatus());
         holder.itemView.setTag(position);
         holder.itemView.setOnClickListener(new View.OnClickListener() {
             @Override
@@ -75,6 +79,48 @@
         notifyDataSetChanged();
     }
 
+    /**
+     * 鏀瑰彉缁勪欢鏍峰紡
+     *
+     * @param textView    鏄剧ず缁勪欢
+     *                    濡傛灉璁惧浠庢潵娌′笂鎶ヨ繃鏁版嵁鏁版嵁 鐘舵�侊細杩炴帴涓�
+     *                    璁惧鍦ㄧ嚎 浣嗘槸褰撳墠澶勪簬鏁呴殰 鐘舵�侊細鏁呴殰
+     *                    璁惧鍦ㄧ嚎锛堟湁涓婃姤杩囨暟鎹紝娌℃湁鏁呴殰锛�  鐘舵�侊細鍦ㄧ嚎
+     *                    璁惧绂荤嚎 鐘舵�侊細绂荤嚎
+     * @param state_value 璁惧鐘舵��(1:杩炴帴涓�,2:鏁呴殰,3:姝e父(杩愯),4:绂荤嚎,)
+     */
+    private void setTextViewStyle(TextView textView, int state_value) {
+        String text = mContext.getString(R.string.my_power_station_operation);
+        Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_06b92a);
+        switch (state_value) {
+            case 1: {
+                text = mContext.getString(R.string.my_power_station_connecting);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300);
+            }
+            break;
+            case 2: {
+                text = mContext.getString(R.string.my_power_station_malfunction);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_e34343);
+            }
+            break;
+            case 3: {
+                text = mContext.getString(R.string.my_power_station_operation);
+
+            }
+            break;
+            case 4: {
+                text = mContext.getString(R.string.my_power_station_off_line);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_b9b9b9);
+            }
+            break;
+
+        }
+        textView.setText(text);
+        textView.setBackground(drawable);
+
+
+    }
+
     public interface OnClickListener {
         void onClick(int position, DeviceBean deviceBean);
 
@@ -86,14 +132,18 @@
     static class MyViewHolder extends RecyclerView.ViewHolder {
 
 
-        public TextView power_station_name_tv;
-        public TextView power_station_location_tv;
+        public TextView device_search_name_tv;//鍚嶇О锛堢數绔檁璁惧鍚嶇О锛�
+        public TextView device_search_sn_tv;//mac
+        public TextView device_search_location_tv;//鍦板潃
+        public TextView device_search_state_tv;//鐘舵��
 
 
         public MyViewHolder(@NonNull View itemView) {
             super(itemView);
-            power_station_name_tv = itemView.findViewById(R.id.message_name_tv);
-            power_station_location_tv = itemView.findViewById(R.id.power_station_location_tv);
+            device_search_name_tv = itemView.findViewById(R.id.device_search_name_tv);
+            device_search_sn_tv = itemView.findViewById(R.id.device_search_sn_tv);
+            device_search_location_tv = itemView.findViewById(R.id.device_search_location_tv);
+            device_search_state_tv = itemView.findViewById(R.id.device_search_state_tv);
         }
     }
 }
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchHouseAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchHouseAdapter.java
index 3a0c369..a56f378 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchHouseAdapter.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchHouseAdapter.java
@@ -42,7 +42,7 @@
         HouseIdBean houseIdBean = this.mList.get(position);
 
         holder.power_station_name_tv.setText(houseIdBean.getHomeName());
-        holder.power_station_location_tv.setText(houseIdBean.getAddress());
+        holder.power_station_location_tv.setText(houseIdBean.getHomeAddress());
         holder.itemView.setTag(position);
         holder.itemView.setOnClickListener(new View.OnClickListener() {
             @Override
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/CloudInverterDeviceBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/CloudInverterDeviceBean.java
index 0b143be..2f7ae08 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/bean/CloudInverterDeviceBean.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/CloudInverterDeviceBean.java
@@ -130,7 +130,7 @@
     }
 
     public String getOsn() {
-        return osn == null ? "" : osn;
+        return osn == null ? "" : "SN:" + osn;
     }
 
     public void setOsn(String osn) {
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/DeviceBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/DeviceBean.java
index 72f73f0..05dc2c5 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/bean/DeviceBean.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/DeviceBean.java
@@ -63,6 +63,7 @@
     public void setDeviceType(String deviceType) {
         this.deviceType = deviceType;
     }
+
     /**
      * 鎷间綇瀹呭湴鍧�
      *
@@ -75,4 +76,8 @@
         return this.location.getNationName() + this.location.getProvinceName() + this.location.getCityName() + this.address;
     }
 
+    public String getHomeNameAndDeviceName() {
+        return homeName + "_" + this.getName();
+    }
+
 }
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java
index c579118..308ffdf 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java
@@ -15,7 +15,9 @@
     private String homeName;//鐢电珯鍚嶇О
     private String installedCapacity;//瑁呮満瀹归噺
     private String power;//鍙戠數鍔熺巼
-    private String todayElectricity;//浠婂ぉ鍙戠數閲�
+    private String todayElectricity;//褰撴棩鍙戠數閲�
+    private String monthElectricity;//褰撴湀鍙戠數閲�
+
 
     private int powerStationStatus;//鐢电珯鐘舵��(鐢电珯鐘舵��	1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰)
     private String localSecret;//鏈湴閫氳绉橀挜
@@ -106,6 +108,14 @@
         this.todayElectricity = todayElectricity;
     }
 
+    public String getMonthElectricity() {
+        return monthElectricity == null ? "" : monthElectricity;
+    }
+
+    public void setMonthElectricity(String monthElectricity) {
+        this.monthElectricity = monthElectricity;
+    }
+
     public int getPowerStationStatus() {
         return powerStationStatus;
     }
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
index 6f08954..8d64c1b 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
@@ -25,6 +25,7 @@
 import com.hdl.photovoltaic.databinding.FragmentHomePageBinding;
 import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
 import com.hdl.photovoltaic.enums.TimeType;
+import com.hdl.photovoltaic.enums.UnitType;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.other.HdlDeviceLogic;
@@ -379,11 +380,11 @@
         String dataStr = TimeUtils.getDateTimestamp(TimeUtils.getCurrentTimestamp(), TimeUtils.getTimeDateFormat(timeType));
         viewBinding.yearMonthDayTv.setText(dataStr);
 
-        String installed_capacity = getString(R.string.installed_capacity) + "(" + HdlDeviceLogic.kWp + ")";
+        String installed_capacity = getString(R.string.installed_capacity) + "(" + UnitType.kWp + ")";
         viewBinding.infoRl1Text2Tv.setText(installed_capacity);
-        String generated_power = getString(R.string.generated_power) + "(" + HdlDeviceLogic.kW + ")";
+        String generated_power = getString(R.string.generated_power) + "(" + UnitType.kW + ")";
         viewBinding.infoRl1Text4Tv.setText(generated_power);
-        String generation = getString(R.string.generation) + "(" + HdlDeviceLogic.kWh + ")";
+        String generation = getString(R.string.generation) + "(" + UnitType.kWh + ")";
         viewBinding.homePageStationInfoRl1TitleTv.setText(generation);
 
         viewBinding.homePageStationInfoRl2DayIc.dataTypeTv.setText(R.string.day_power_generation);
@@ -391,7 +392,7 @@
         viewBinding.homePageStationInfoRl2YearIc.dataTypeTv.setText(R.string.year_power_generation);
         viewBinding.homePageStationInfoRl2CumulativeIc.dataTypeTv.setText(R.string.cumulative_power_generation);
 
-        viewBinding.unitTv.setText(HdlDeviceLogic.kW);
+        viewBinding.unitTv.setText(UnitType.kW);
         viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.time_selected_38c494));
         viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
         viewBinding.monthTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/DeviceSearchActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/DeviceSearchActivity.java
index 564b02a..105dbf9 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/DeviceSearchActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/DeviceSearchActivity.java
@@ -287,7 +287,6 @@
                             //鏇存柊缂撳瓨
                             setDeviceList(deviceClass.getList());
                             if (searchDeviceAdapter != null) {
-                                initData();
                                 //鏇存柊UI
                                 searchDeviceAdapter.setList(deviceList);
                             }
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
index b736980..61965cc 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
@@ -122,6 +122,9 @@
                 viewBinding.addIv.setVisibility(View.VISIBLE);//娣诲姞鍥炬爣闅愯棌
                 viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戞樉绀�
                 viewBinding.deviceLabelParent.setVisibility(View.GONE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戦殣钘�
+                if (viewBinding.deviceNullDataIc.getRoot().getVisibility() == View.VISIBLE) {
+                    viewBinding.deviceNullDataIc.getRoot().setVisibility(View.GONE);
+                }
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
             }
         });
@@ -139,6 +142,9 @@
                 viewBinding.addIv.setVisibility(View.GONE);//娣诲姞鍥炬爣闅愯棌
                 viewBinding.powerStationLabelParent.setVisibility(View.GONE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戦殣钘�
                 viewBinding.deviceLabelParent.setVisibility(View.VISIBLE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戞樉绀�
+                if (viewBinding.homeNullDataIc.getRoot().getVisibility() == View.VISIBLE) {
+                    viewBinding.homeNullDataIc.getRoot().setVisibility(View.GONE);
+                }
                 loadNextPageDeviceList(true, 1, true);
             }
         });
@@ -161,11 +167,11 @@
             }
         });
         //绂荤嚎
-        viewBinding.hpowerStationOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() {
+        viewBinding.powerStationOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
                 powerStationStatusValue = PowerStationStatus.off;
-                selectedStationStyle(viewBinding.hpowerStationOfflineIl.parentLl, viewBinding.hpowerStationOfflineIl.stationTotalTv, viewBinding.hpowerStationOfflineIl.stationTitleTv, true);
+                selectedStationStyle(viewBinding.powerStationOfflineIl.parentLl, viewBinding.powerStationOfflineIl.stationTotalTv, viewBinding.powerStationOfflineIl.stationTitleTv, true);
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
             }
         });
@@ -437,7 +443,7 @@
                 }
             }
         });
-        //璁惧娣绘悳绱�
+        //璁惧鎼滅储
         viewBinding.deviceSearchCl.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -455,7 +461,7 @@
 
         viewBinding.powerStationAllIl.stationTitleTv.setText(getString(R.string.message_all));
         viewBinding.powerStationFaultsIl.stationTitleTv.setText(getString(R.string.my_power_station_malfunction));
-        viewBinding.hpowerStationOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line));
+        viewBinding.powerStationOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line));
         viewBinding.powerStationConnectedIl.stationTitleTv.setText(getString(R.string.to_be_added));
 
         selectedStationStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true);
@@ -485,7 +491,7 @@
     private void selectedStationStyle(LinearLayout linearLayout, TextView numberTv, TextView titleTv, boolean isShowSelectedStatus) {
         viewBinding.powerStationAllIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
         viewBinding.powerStationFaultsIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
-        viewBinding.hpowerStationOfflineIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
+        viewBinding.powerStationOfflineIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
         viewBinding.powerStationConnectedIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
 
         viewBinding.powerStationAllIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null));
@@ -494,8 +500,8 @@
         viewBinding.powerStationFaultsIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null));
         viewBinding.powerStationFaultsIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null));
 
-        viewBinding.hpowerStationOfflineIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null));
-        viewBinding.hpowerStationOfflineIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null));
+        viewBinding.powerStationOfflineIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null));
+        viewBinding.powerStationOfflineIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null));
 
         viewBinding.powerStationConnectedIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null));
         viewBinding.powerStationConnectedIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null));
@@ -515,8 +521,7 @@
             this.houseListBeanIDList.addAll(HdlResidenceLogic.getInstance().getHouseIdList());
         } else {
             this.deviceInfoList = new ArrayList<>();
-            this.deviceInfoList.add(new DeviceBean());
-//            this.deviceInfoList.addAll(HdlDeviceLogic.getInstance().getListDevice());
+            this.deviceInfoList.addAll(HdlDeviceLogic.getInstance().getDeviceList());
         }
 
 
@@ -622,7 +627,7 @@
                 }
                 viewBinding.powerStationAllIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getTotal()));
                 viewBinding.powerStationFaultsIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getFault()));
-                viewBinding.hpowerStationOfflineIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline()));
+                viewBinding.powerStationOfflineIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline()));
                 viewBinding.powerStationConnectedIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getConnecting()));
             }
 
@@ -812,11 +817,15 @@
         if (isClickPowerStationLabel) {
             is_data = houseListBeanIDList != null && houseListBeanIDList.size() > 0;
             tipText = getString(R.string.my_power_station_data_null);
+            HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.homeNullDataIc.getRoot(), viewBinding.homeNullDataIc.nullDataGifAnimationIv, viewBinding.homeNullDataIc.nullDataTv, tipText, is_data);
+
         } else {
             is_data = deviceInfoList != null && deviceInfoList.size() > 0;
             tipText = getString(R.string.no_equipment);
+
+            HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.deviceNullDataIc.getRoot(), viewBinding.deviceNullDataIc.nullDataGifAnimationIv, viewBinding.deviceNullDataIc.nullDataTv, tipText, is_data);
+
         }
-        HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.nullDataIc.getRoot(), viewBinding.nullDataIc.nullDataGifAnimationIv, viewBinding.nullDataIc.nullDataTv, tipText, is_data);
     }
 
     /**
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseSearchActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseSearchActivity.java
index 3e0abe7..3a0a6c9 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseSearchActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseSearchActivity.java
@@ -25,9 +25,11 @@
 import com.hdl.photovoltaic.other.HdlLogLogic;
 import com.hdl.photovoltaic.other.HdlResidenceLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.other.HdlUniLogic;
 import com.hdl.photovoltaic.ui.adapter.SearchHistoryAdapter;
 import com.hdl.photovoltaic.ui.adapter.SearchHouseAdapter;
 import com.hdl.photovoltaic.ui.bean.HouseIdBean;
+import com.hdl.photovoltaic.uni.HDLUniMP;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -177,7 +179,11 @@
         searchHouseAdapter.setOnclickListener(new SearchHouseAdapter.OnClickListener() {
             @Override
             public void onClick(int position, HouseIdBean houseIdBean) {
-
+                //鐐瑰嚮浣忓畢璇︽儏
+                HdlLogLogic.print("鐐瑰嚮浣忓畢璇︽儏---" + new Gson().toJson(houseIdBean), false);
+                HdlResidenceLogic.getInstance().switchHouse(houseIdBean);
+                String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
+                HdlUniLogic.getInstance().openUniMP(path, null);
             }
         });
 
@@ -288,7 +294,6 @@
                                     //鏇存柊缂撳瓨
                                     setHouseIdList(houseBeanClass.getList());
                                     if (searchHouseAdapter != null) {
-                                        initData();
                                         //鏇存柊UI
                                         searchHouseAdapter.setList(houseListBeanIDList);
                                     }
@@ -370,6 +375,7 @@
      * 娣诲姞鍘嗗彶璁板綍
      */
     private void addSearchTextToList() {
+        int maxValue = 10;
         for (int i = 0; i < searchHistoryTitleList.size(); i++) {
             if (searchHistoryTitleList.get(i).equals(currSearchText)) {
                 searchHistoryTitleList.remove(searchHistoryTitleList.get(i));
@@ -378,9 +384,9 @@
         searchHistoryTitleList.add(currSearchText);
         // 鍊掑簭鎺掑垪鏁版嵁(鎼滅储鏈�鍚庢帓鍦ㄥ墠闈�)
         Collections.reverse(searchHistoryTitleList);
-        if (searchHistoryTitleList.size() > 10) {
+        if (searchHistoryTitleList.size() > maxValue) {
             //鍘嗗彶璁板綍涓嶈兘瓒呭嚭10
-            searchHistoryTitleList.remove(searchHistoryTitleList.get(11));
+            searchHistoryTitleList.remove(searchHistoryTitleList.get(maxValue + 1));
         }
 
     }
diff --git a/app/src/main/res/layout/fragment_house_list.xml b/app/src/main/res/layout/fragment_house_list.xml
index 1b78380..c4488fb 100644
--- a/app/src/main/res/layout/fragment_house_list.xml
+++ b/app/src/main/res/layout/fragment_house_list.xml
@@ -115,7 +115,7 @@
                         android:layout_centerVertical="true"
                         android:layout_marginStart="@dimen/dp_11"
                         android:layout_toEndOf="@+id/power_station_search_iv"
-                        android:text="Search the power station"
+                        android:text="@string/search_station"
                         android:textColor="@color/text_66000000"
                         android:textSize="@dimen/text_14" />
                 </RelativeLayout>
@@ -153,7 +153,7 @@
                     layout="@layout/item_station" />
 
                 <include
-                    android:id="@+id/hpower_station_offline_il"
+                    android:id="@+id/power_station_offline_il"
                     layout="@layout/item_station" />
 
                 <include
@@ -349,7 +349,7 @@
                     android:layout_centerVertical="true"
                     android:layout_marginStart="@dimen/dp_11"
                     android:layout_toEndOf="@+id/device_search_iv"
-                    android:text="Search the power station"
+                    android:text="@string/enter_the_device_sn_and_device_name"
                     android:textColor="@color/text_66000000"
                     android:textSize="@dimen/text_14" />
             </RelativeLayout>
@@ -379,15 +379,28 @@
 
     <!--娌℃湁鏁版嵁鏄剧ず鏍峰紡-->
     <include
-        android:id="@+id/null_data_ic"
+        android:id="@+id/home_null_data_ic"
         layout="@layout/null_data_view"
         android:layout_width="match_parent"
         android:layout_height="224dp"
+        android:layout_marginBottom="@dimen/dp_202"
         android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
-        app:layout_constraintStart_toStartOf="parent"
-        app:layout_constraintTop_toTopOf="parent" />
+        app:layout_constraintStart_toStartOf="parent" />
+
+    <!--娌℃湁鏁版嵁鏄剧ず鏍峰紡-->
+    <include
+        android:id="@+id/device_null_data_ic"
+        layout="@layout/null_data_view"
+        android:layout_width="match_parent"
+        android:layout_height="224dp"
+        android:layout_marginBottom="229dp"
+        android:visibility="gone"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent" />
+
 
 </androidx.constraintlayout.widget.ConstraintLayout>
 
diff --git a/app/src/main/res/layout/fragment_message.xml b/app/src/main/res/layout/fragment_message.xml
index 8779e0f..98d847f 100644
--- a/app/src/main/res/layout/fragment_message.xml
+++ b/app/src/main/res/layout/fragment_message.xml
@@ -101,7 +101,7 @@
                     android:layout_centerVertical="true"
                     android:layout_marginStart="@dimen/dp_11"
                     android:layout_toEndOf="@+id/power_station_search_iv"
-                    android:text="Search the message"
+                    android:text="@string/enter_alarm_name"
                     android:textColor="@color/text_66000000"
                     android:textSize="@dimen/text_14" />
             </RelativeLayout>
diff --git a/app/src/main/res/layout/item_device_details.xml b/app/src/main/res/layout/item_device_details.xml
index dd13f17..7ee0a76 100644
--- a/app/src/main/res/layout/item_device_details.xml
+++ b/app/src/main/res/layout/item_device_details.xml
@@ -66,26 +66,54 @@
                 android:orientation="horizontal">
 
                 <LinearLayout
-                    android:id="@+id/power_ll"
+                    android:id="@+id/device_label_run_state_ll"
                     android:layout_width="0dp"
                     android:layout_height="match_parent"
                     android:layout_weight="1"
                     android:orientation="vertical">
 
                     <TextView
-                        android:id="@+id/power_value_tv"
+                        android:id="@+id/device_label_run_state_value_tv"
                         android:layout_width="match_parent"
-                        android:layout_height="wrap_content"
+                        android:layout_height="@dimen/dp_18"
                         android:gravity="center"
-                        android:text="99"
                         android:textColor="@color/text_E6000000"
                         android:textSize="@dimen/text_15"
                         android:textStyle="bold" />
 
                     <TextView
-                        android:id="@+id/power_type_tv"
+                        android:id="@+id/device_label_run_state_type_tv"
                         android:layout_width="match_parent"
-                        android:layout_height="@dimen/dp_15"
+                        android:layout_height="@dimen/dp_17"
+                        android:layout_marginTop="3dp"
+                        android:gravity="center"
+                        android:text="@string/device_run_state"
+                        android:textColor="@color/text_66000000"
+                        android:textSize="@dimen/text_12" />
+
+                </LinearLayout>
+
+                <LinearLayout
+                    android:id="@+id/device_label_power_ll"
+                    android:layout_width="0dp"
+                    android:layout_height="match_parent"
+                    android:layout_weight="1"
+                    android:orientation="vertical">
+
+                    <TextView
+                        android:id="@+id/device_label_power_value_tv"
+                        android:layout_width="match_parent"
+                        android:layout_height="@dimen/dp_18"
+                        android:gravity="center"
+                        android:text="0"
+                        android:textColor="@color/text_E6000000"
+                        android:textSize="@dimen/text_15"
+                        android:textStyle="bold" />
+
+                    <TextView
+                        android:id="@+id/device_label_power_type_tv"
+                        android:layout_width="match_parent"
+                        android:layout_height="@dimen/dp_17"
                         android:layout_marginTop="3dp"
                         android:gravity="center"
                         android:text="@string/generated_power"
@@ -95,58 +123,29 @@
                 </LinearLayout>
 
                 <LinearLayout
-                    android:id="@+id/day_ll"
+                    android:id="@+id/device_label_day_ll"
                     android:layout_width="0dp"
                     android:layout_height="match_parent"
                     android:layout_weight="1"
                     android:orientation="vertical">
 
                     <TextView
-                        android:id="@+id/day_value_tv"
+                        android:id="@+id/device_label_day_value_tv"
                         android:layout_width="match_parent"
                         android:layout_height="@dimen/dp_18"
                         android:gravity="center"
-                        android:text="99"
+                        android:text="0"
                         android:textColor="@color/text_E6000000"
                         android:textSize="@dimen/text_15"
                         android:textStyle="bold" />
 
                     <TextView
-                        android:id="@+id/day_type_tv"
+                        android:id="@+id/device_label_day_type_tv"
                         android:layout_width="match_parent"
-                        android:layout_height="@dimen/dp_15"
+                        android:layout_height="@dimen/dp_17"
                         android:layout_marginTop="3dp"
                         android:gravity="center"
                         android:text="@string/day_power_generation"
-                        android:textColor="@color/text_66000000"
-                        android:textSize="@dimen/text_12" />
-
-                </LinearLayout>
-
-                <LinearLayout
-                    android:id="@+id/month_ll"
-                    android:layout_width="0dp"
-                    android:layout_height="match_parent"
-                    android:layout_weight="1"
-                    android:orientation="vertical">
-
-                    <TextView
-                        android:id="@+id/month_value_tv"
-                        android:layout_width="match_parent"
-                        android:layout_height="@dimen/dp_18"
-                        android:gravity="center"
-                        android:text="99"
-                        android:textColor="@color/text_E6000000"
-                        android:textSize="@dimen/text_15"
-                        android:textStyle="bold" />
-
-                    <TextView
-                        android:id="@+id/month_type_tv"
-                        android:layout_width="match_parent"
-                        android:layout_height="@dimen/dp_15"
-                        android:layout_marginTop="3dp"
-                        android:gravity="center"
-                        android:text="@string/month_power_generation"
                         android:textColor="@color/text_66000000"
                         android:textSize="@dimen/text_12" />
 
@@ -166,7 +165,7 @@
                 android:background="@color/text_E1E1E1" />
 
             <ImageView
-                android:id="@+id/plant_details_location_iv"
+                android:id="@+id/device_label_location_iv"
                 android:layout_width="@dimen/dp_19"
                 android:layout_height="@dimen/dp_19"
                 android:layout_below="@+id/line"
@@ -175,13 +174,13 @@
                 android:src="@drawable/location" />
 
             <TextView
-                android:id="@+id/plant_details_location_tv"
+                android:id="@+id/device_label_location_tv"
                 android:layout_width="290dp"
                 android:layout_height="@dimen/dp_19"
                 android:layout_below="@+id/line"
                 android:layout_marginStart="@dimen/dp_3"
                 android:layout_marginTop="@dimen/dp_8"
-                android:layout_toEndOf="@+id/plant_details_location_iv"
+                android:layout_toEndOf="@+id/device_label_location_iv"
                 android:ellipsize="end"
                 android:gravity="center_vertical|start"
                 android:singleLine="true"
@@ -190,7 +189,7 @@
                 android:textSize="@dimen/text_12" />
 
             <TextView
-                android:id="@+id/fragment_house_list_line_state_tv"
+                android:id="@+id/device_label_state_tv"
                 android:layout_width="69dp"
                 android:layout_height="@dimen/dp_33"
                 android:layout_alignParentTop="true"
diff --git a/app/src/main/res/layout/item_plant_details.xml b/app/src/main/res/layout/item_plant_details.xml
index d73ee09..52c25a4 100644
--- a/app/src/main/res/layout/item_plant_details.xml
+++ b/app/src/main/res/layout/item_plant_details.xml
@@ -79,7 +79,7 @@
                         android:layout_width="match_parent"
                         android:layout_height="@dimen/dp_18"
                         android:gravity="center"
-                        android:text="99"
+                        android:text="0"
                         android:textColor="@color/text_E6000000"
                         android:textSize="@dimen/text_15"
                         android:textStyle="bold" />
@@ -108,7 +108,7 @@
                         android:layout_width="match_parent"
                         android:layout_height="@dimen/dp_18"
                         android:gravity="center"
-                        android:text="99"
+                        android:text="0"
                         android:textColor="@color/text_E6000000"
                         android:textSize="@dimen/text_15"
                         android:textStyle="bold" />
@@ -137,7 +137,7 @@
                         android:layout_width="match_parent"
                         android:layout_height="@dimen/dp_18"
                         android:gravity="center"
-                        android:text="99"
+                        android:text="0"
                         android:textColor="@color/text_E6000000"
                         android:textSize="@dimen/text_15"
                         android:textStyle="bold" />
diff --git a/app/src/main/res/layout/item_search_device.xml b/app/src/main/res/layout/item_search_device.xml
new file mode 100644
index 0000000..3f9c20f
--- /dev/null
+++ b/app/src/main/res/layout/item_search_device.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/dp_127">
+
+    <ImageView
+        android:id="@+id/power_station_search_iv"
+        android:layout_width="@dimen/dp_18"
+        android:layout_height="@dimen/dp_18"
+        android:layout_marginStart="@dimen/dp_16"
+        android:src="@drawable/search_path"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent"
+
+        />
+
+    <RelativeLayout
+        android:layout_width="298dp"
+        android:layout_height="@dimen/dp_99"
+        android:layout_marginStart="@dimen/dp_57"
+        android:layout_marginEnd="@dimen/dp_21"
+        android:background="@drawable/ffffff_13"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent">
+
+        <TextView
+            android:id="@+id/device_search_name_tv"
+            android:layout_width="0dp"
+            android:layout_height="@dimen/dp_23"
+            android:layout_alignParentStart="true"
+            android:layout_marginStart="@dimen/dp_16"
+            android:layout_marginTop="@dimen/dp_15"
+            android:layout_marginEnd="@dimen/dp_6"
+            android:layout_toStartOf="@+id/device_search_state_tv"
+            android:ellipsize="end"
+            android:gravity="center_vertical|start"
+            android:singleLine="true"
+            android:textColor="@color/text_E6000000"
+            android:textSize="@dimen/text_16"
+            android:textStyle="bold" />
+
+        <TextView
+            android:id="@+id/device_search_sn_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="@dimen/dp_17"
+            android:layout_below="@+id/device_search_name_tv"
+            android:layout_alignStart="@+id/device_search_name_tv"
+            android:layout_marginTop="@dimen/dp_6"
+            android:gravity="center_vertical"
+            android:textColor="@color/text_66000000"
+            android:textSize="@dimen/text_12" />
+
+        <TextView
+            android:id="@+id/device_search_location_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="@dimen/dp_17"
+            android:layout_below="@+id/device_search_sn_tv"
+            android:layout_alignStart="@+id/device_search_sn_tv"
+            android:layout_marginTop="@dimen/dp_6"
+            android:gravity="center_vertical"
+            android:textColor="@color/text_66000000"
+            android:textSize="@dimen/text_12" />
+
+        <TextView
+            android:id="@+id/device_search_state_tv"
+            android:layout_width="69dp"
+            android:layout_height="@dimen/dp_33"
+            android:layout_alignParentTop="true"
+            android:layout_alignParentEnd="true"
+            android:background="@drawable/state_ffb300"
+            android:gravity="center"
+            android:text="@string/my_power_station_connecting"
+            android:textColor="@color/text_FFFFFFFF"
+            android:textSize="@dimen/text_12" />
+
+
+    </RelativeLayout>
+
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_station.xml b/app/src/main/res/layout/item_station.xml
index 09389d1..86b8ae3 100644
--- a/app/src/main/res/layout/item_station.xml
+++ b/app/src/main/res/layout/item_station.xml
@@ -21,7 +21,7 @@
             android:layout_height="@dimen/dp_25"
             android:layout_marginTop="7dp"
             android:gravity="center"
-            android:text="99"
+            android:text="0"
             android:textColor="@color/text_E6000000"
             android:textSize="@dimen/text_21"
             android:textStyle="bold" />
diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml
index 658fb17..8432041 100644
--- a/app/src/main/res/values-en/strings.xml
+++ b/app/src/main/res/values-en/strings.xml
@@ -74,10 +74,10 @@
     <string name="power_station">Power station</string>
     <string name="power_station_me">Mine</string>
     <string name="my_power_station">My power station</string>
-    <string name="power_station_generated_power">Power generation:</string>
+    <string name="power_station_generated_power">Power generation</string>
     <string name="power_station_Power_generation_today">Today power generation</string>
     <string name="power_station_creation_time">Established at</string>
-    <string name="my_power_station_installed_capacity">Installed capacity:</string>
+    <string name="my_power_station_installed_capacity">Installed capacity</string>
     <string name="my_power_station_connecting">Connecting</string>
     <string name="my_power_station_off_line">Offline</string>
     <string name="my_power_station_malfunction">Malfunction</string>
diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml
index 92c7f71..9c00139 100644
--- a/app/src/main/res/values-zh/strings.xml
+++ b/app/src/main/res/values-zh/strings.xml
@@ -74,10 +74,10 @@
     <string name="power_station">鐢电珯</string>
     <string name="power_station_me">鎴戠殑</string>
     <string name="my_power_station">鎴戠殑鐢电珯</string>
-    <string name="power_station_generated_power">鍙戠數鍔熺巼:</string>
+    <string name="power_station_generated_power">鍙戠數鍔熺巼</string>
     <string name="power_station_Power_generation_today">浠婃棩鍙戠數</string>
     <string name="power_station_creation_time">鍒涘缓鏃堕棿</string>
-    <string name="my_power_station_installed_capacity">瑁呮満瀹归噺:</string>
+    <string name="my_power_station_installed_capacity">瑁呮満瀹归噺</string>
     <string name="my_power_station_connecting">杩炴帴涓�</string>
     <string name="my_power_station_off_line">绂荤嚎</string>
     <string name="my_power_station_malfunction">鏁呴殰</string>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 67943ad..4a8d623 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -74,10 +74,10 @@
     <string name="power_station">鐢电珯</string>
     <string name="power_station_me">鎴戠殑</string>
     <string name="my_power_station">鎴戠殑鐢电珯</string>
-    <string name="power_station_generated_power">鍙戠數鍔熺巼:</string>
+    <string name="power_station_generated_power">鍙戠數鍔熺巼</string>
     <string name="power_station_Power_generation_today">浠婃棩鍙戠數</string>
     <string name="power_station_creation_time">鍒涘缓鏃堕棿</string>
-    <string name="my_power_station_installed_capacity">瑁呮満瀹归噺:</string>
+    <string name="my_power_station_installed_capacity">瑁呮満瀹归噺</string>
     <string name="my_power_station_connecting">杩炴帴涓�</string>
     <string name="my_power_station_off_line">绂荤嚎</string>
     <string name="my_power_station_malfunction">鏁呴殰</string>
@@ -297,4 +297,8 @@
     <string name="co_reduction_rate">CO2鍑忔帓</string>
     <string name="quantity_of_equivalent_values">绛夋晥鍊兼暟閲�</string>
     <string name="pv_power">Pv鍙戠數鍔熺巼</string>
+    <string name="device_run_state">璁惧杩愯鐘舵��</string>
+    <string name="search_station">鎼滅储鐢电珯</string>
+    <string name="enter_the_device_sn_and_device_name">杈撳叆璁惧SN鍙�/璁惧鍚嶇О</string>
+    <string name="enter_alarm_name">杈撳叆鎶ヨ鍚嶇О</string>
 </resources>
\ No newline at end of file

--
Gitblit v1.8.0