From 5d3efa4c93dde0cde474951e5310bb72ebbf4184 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 07 五月 2025 15:18:26 +0800
Subject: [PATCH] 2025年05月07日15:18:20 1.2.0

---
 app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java |  166 +++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 117 insertions(+), 49 deletions(-)

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 f99edb8..4d1ee26 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
@@ -6,6 +6,7 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ImageView;
+import android.widget.LinearLayout;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
 
@@ -13,13 +14,12 @@
 import androidx.appcompat.content.res.AppCompatResources;
 import androidx.recyclerview.widget.RecyclerView;
 
-import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
 import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.enums.DebugStatus;
+import com.hdl.photovoltaic.enums.DeliverStatus;
 import com.hdl.photovoltaic.enums.PowerStationStatus;
 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;
 import com.hdl.photovoltaic.utils.GlideUtils;
 import com.hdl.photovoltaic.widget.SwipeLayout;
@@ -59,20 +59,26 @@
 
         HouseIdBean houseIdBean = this.mList.get(position);
         holder.homeNameTv.setText(houseIdBean.getHomeName().trim());
-        //瑁呮満瀹归噺
-        String capacity = mContext.getString(R.string.string_capacity) + ":" + HdlCommonLogic.getConvertDoubleUnit(houseIdBean.getInstalledCapacity(), UnitType.kWp);
-        holder.capacityTv.setText(capacity);
-        //鍙戠數鍔熺巼
-        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.pv_value_tv.setText(HdlCommonLogic.convertDoubleValue(houseIdBean.getInstalledCapacity(), UnitType.kWp));
+        holder.pv_kw_unit.setText(HdlCommonLogic.convertKWPUnit(houseIdBean.getInstalledCapacity()));
+        //褰撴棩鍙戠數
+        holder.generation_today_value_tv.setText(HdlCommonLogic.convertDoubleValue(houseIdBean.getTodayElectricity(), UnitType.kWh));
+        holder.generation_today_kw_unit.setText(HdlCommonLogic.convertKWHUnit(houseIdBean.getTodayElectricity()));
+        //閫嗗彉鍣ㄩ瀹氬姛鐜囷紙鍗曚釜閫嗗彉鍣ㄩ瀹氬姛鐜�*閫嗗彉鍣ㄦ暟閲忥級
+        holder.output_value_tv.setText(HdlCommonLogic.convertDoubleValue(houseIdBean.getInvPower(), UnitType.kW));
+        holder.output_kw_unit.setText(HdlCommonLogic.convertKWUnit(houseIdBean.getInvPower()));
+        //鐢垫睜鑳介噺锛堝閲�*鐢垫睜鏁伴噺锛�
+        holder.battery_storage_value_tv.setText(HdlCommonLogic.convertDoubleValue(houseIdBean.getBatteryCapacity(), UnitType.kWh));
+        holder.battery_storage_kw_unit.setText(HdlCommonLogic.convertKWHUnit(houseIdBean.getBatteryCapacity()));
+
+        holder.home_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);
+        setHomeStateTextViewStyle(holder.home_state_tv, houseIdBean.getPowerStationStatus());
+        setHomeDebugStateTextViewStyle(holder.home_debug_state_tv, holder.home_debug_state_iv, houseIdBean.getDebugStatus());
+        GlideUtils.getRoundedCornersImage(mContext, houseIdBean.getPowerStationImage(), holder.homeIconIv, 6);
+//        HdlLogLogic.print("---鐢电珯鍚嶇О:" + houseIdBean.getHomeName() + "---鍥剧墖url:" + houseIdBean.getPowerStationImage(), false);
         holder.item_parent_rl.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -85,7 +91,7 @@
             }
         });
         //绉诲姩鐢电珯浣嶇疆
-        holder.move_home_iv.setOnClickListener(new View.OnClickListener() {
+        holder.home_move_ll.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
                 try {
@@ -96,8 +102,15 @@
                 }
             }
         });
+        holder.home_del_ll.setVisibility(View.GONE);
+
+        if (houseIdBean.getDebugStatus().equals(DebugStatus.Debugging)) {
+            //鏈氦浠樺畬瑕佹樉绀哄垹闄ゆ寜閽�
+            holder.home_del_ll.setVisibility(View.VISIBLE);
+        }
+
         //鍒犻櫎鐢电珯
-        holder.del_home_iv.setOnClickListener(new View.OnClickListener() {
+        holder.home_del_ll.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
                 try {
@@ -142,19 +155,59 @@
     }
 
     /**
-     * 鏀瑰彉缁勪欢鏍峰紡
+     * 璁剧疆銆愮數绔欒皟璇曠姸鎬併�戠粍浠舵牱寮�
+     *
+     * @param textView   鏄剧ず浣忓畢鐘舵�佹枃鏈粍浠�
+     * @param imageView  鏄剧ず浣忓畢鐘舵�佸浘鏍囩粍浠�
+     * @param stateValue 鐢电珯鐘舵��(1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰,5:绂荤嚎鏈夋晠闅�)
+     */
+    private void setHomeDebugStateTextViewStyle(TextView textView, ImageView imageView, String stateValue) {
+
+        String text = mContext.getString(R.string.be_debugging);
+        Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.debugging);
+        switch (stateValue) {
+            case DebugStatus.Debugging: {
+                text = mContext.getString(R.string.be_debugging);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.debugging);
+            }
+            break;
+
+            case DebugStatus.WAIT_DELIVERED: {
+                text = mContext.getString(R.string.debugging_completed);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.done);
+            }
+            break;
+            case DebugStatus.Delivered: {
+                text = mContext.getString(R.string.delivered);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.delivered);
+            }
+            break;
+            case DebugStatus.SECONDARY_DEBUGGIN: {
+                text = mContext.getString(R.string.authorization_debugging);
+                drawable = AppCompatResources.getDrawable(mContext, R.drawable.authorization_debugging);
+            }
+            break;
+        }
+        textView.setText(text);
+        imageView.setBackground(drawable);
+
+
+    }
+
+    /**
+     * 璁剧疆銆愮數绔欑姸鎬併�戠粍浠舵牱寮�
      *
      * @param textView    鏄剧ず缁勪欢
      *                    濡傛灉璁惧浠庢潵娌′笂鎶ヨ繃鏁版嵁鏁版嵁 鐘舵�侊細杩炴帴涓�
      *                    璁惧鍦ㄧ嚎 浣嗘槸褰撳墠澶勪簬鏁呴殰 鐘舵�侊細鏁呴殰
      *                    璁惧鍦ㄧ嚎锛堟湁涓婃姤杩囨暟鎹紝娌℃湁鏁呴殰锛�  鐘舵�侊細鍦ㄧ嚎
      *                    璁惧绂荤嚎 鐘舵�侊細绂荤嚎
-     * @param state_value 鐢电珯鐘舵��(1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰,5:绂荤嚎鏈夋晠闅�)
+     * @param state_value 鐢电珯鐘舵��(1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰,5:绂荤嚎鏈夋晠闅�,6:閮ㄥ垎绂荤嚎)
      */
-    private void setTextViewStyle(TextView textView, int state_value) {
+    private void setHomeStateTextViewStyle(TextView textView, int state_value) {
 
         String text = mContext.getString(R.string.my_power_station_operation);
-        Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_06b92a);
+        Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_state_ff38c494);
         if (mPowerStationStatus.equals(PowerStationStatus.All)) {
             switch (state_value) {
                 case 1: {
@@ -162,20 +215,21 @@
                 }
                 break;
 
-                case 2: {
+                case 2:
+                case 6: {
                     text = mContext.getString(R.string.my_power_station_off_line);
-                    drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_b9b9b9);
+                    drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_state_ffb9b9b9);
                 }
                 break;
                 case 3: {
                     text = mContext.getString(R.string.my_power_station_connecting);
-                    drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300);
+                    drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_satte_ffb300);
                 }
                 break;
                 case 4:
                 case 5: {
                     text = mContext.getString(R.string.my_power_station_malfunction);
-                    drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_e34343);
+                    drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_state_fff55252);
                 }
                 //5:绂荤嚎鏈夋晠闅淥ffline_fault
                 break;
@@ -187,15 +241,15 @@
             }
         } else if (mPowerStationStatus.equals(PowerStationStatus.malfunction)) {
             text = mContext.getString(R.string.my_power_station_malfunction);
-            drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_e34343);
+            drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_state_fff55252);
         } else if (mPowerStationStatus.equals(PowerStationStatus.off)) {
             text = mContext.getString(R.string.my_power_station_off_line);
-            drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_b9b9b9);
+            drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_state_ffb9b9b9);
         } else if (mPowerStationStatus.equals(PowerStationStatus.connecting)) {
             text = mContext.getString(R.string.my_power_station_connecting);
-            drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300);
+            drawable = AppCompatResources.getDrawable(mContext, R.drawable.device_satte_ffb300);
         }
-        textView.setText(text);
+//        textView.setText(text);
         textView.setBackground(drawable);
 
 
@@ -208,30 +262,44 @@
 
         public ImageView homeIconIv;//浣忓畢鍥剧墖
         public TextView homeNameTv;//浣忓畢鍚嶇О
-        public TextView capacityTv;//瑁呮満瀹归噺
-        public TextView power_value_tv;//鍙戠數鍔熺巼
-        public TextView day_value_tv;//褰撴棩鍙戠數閲�
-        public TextView month_value_tv;//褰撴湀鍙戠數閲�
-        public TextView stateTv;//鐢电珯鐘舵��(杩炴帴涓�,杩愯,绂荤嚎,鏁呴殰);
+
+        public ImageView home_debug_state_iv;//浣忓畢璋冭瘯鐘舵�佸浘鏍�
+        public TextView home_debug_state_tv;//浣忓畢璋冭瘯鐘舵��
+
+        public TextView pv_value_tv;//缁勪覆瀹归噺
+        public TextView pv_kw_unit;//鍙戠數鍔熺巼鍗曚綅
+        public TextView generation_today_value_tv;//褰撴棩鍙戠數
+        public TextView generation_today_kw_unit;//褰撴棩鍙戠數鍗曚綅
+        public TextView output_value_tv;//棰濆畾鍔熺巼
+        public TextView output_kw_unit;//棰濆畾鍔熺巼鍗曚綅
+        public TextView battery_storage_value_tv;//鐢垫睜鑳介噺
+        public TextView battery_storage_kw_unit;//鐢垫睜鑳介噺鍗曚綅
+        public TextView home_state_tv;//鐢电珯鐘舵��(杩炴帴涓�,杩愯,绂荤嚎,鏁呴殰);
         public RelativeLayout item_parent_rl;//鏉$洰鐖跺鍣�
-        public ImageView move_home_iv;//绉诲姩鐢电珯浣嶇疆
-        public ImageView del_home_iv;//鍒犻櫎鐢电珯
-        public TextView plant_details_location_tv;//鐢电珯鍦板潃
+        public LinearLayout home_move_ll;//绉诲姩鐢电珯浣嶇疆
+        public LinearLayout home_del_ll;//鍒犻櫎鐢电珯
+        public TextView home_location_tv;//鐢电珯鍦板潃
         public SwipeLayout item_parent_swipeLayout;//鐖跺鍣�
 
         public MyViewHolder(@NonNull View itemView) {
             super(itemView);
-            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);
-            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);
+            homeIconIv = itemView.findViewById(R.id.home_image_iv);
+            homeNameTv = itemView.findViewById(R.id.home_name_tv);
+            home_debug_state_iv = itemView.findViewById(R.id.home_debug_state_iv);
+            home_debug_state_tv = itemView.findViewById(R.id.home_debug_state_tv);
+            pv_value_tv = itemView.findViewById(R.id.pv_value_tv);
+            pv_kw_unit = itemView.findViewById(R.id.pv_kw_unit);
+            generation_today_value_tv = itemView.findViewById(R.id.generation_today_value_tv);
+            generation_today_kw_unit = itemView.findViewById(R.id.generation_today_kw_unit);
+            output_value_tv = itemView.findViewById(R.id.output_value_tv);
+            output_kw_unit = itemView.findViewById(R.id.output_kw_unit);
+            battery_storage_value_tv = itemView.findViewById(R.id.battery_storage_value_tv);
+            battery_storage_kw_unit = itemView.findViewById(R.id.battery_storage_kw_unit);
+            home_state_tv = itemView.findViewById(R.id.home_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);
+            home_move_ll = itemView.findViewById(R.id.move_ll);
+            home_del_ll = itemView.findViewById(R.id.del_ll);
+            home_location_tv = itemView.findViewById(R.id.home_location_tv);
             item_parent_swipeLayout = itemView.findViewById(R.id.item_parent_swipeLayout);
         }
     }
@@ -245,4 +313,4 @@
 
     }
 
-}
+}
\ No newline at end of file

--
Gitblit v1.8.0