app/src/main/java/com/hdl/photovoltaic/enums/ProjectOperation.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/values-en/strings.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/values-zh/strings.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/values/strings.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/com/hdl/photovoltaic/enums/ProjectOperation.java
New file @@ -0,0 +1,35 @@ package com.hdl.photovoltaic.enums; /** * 项目状态 (交付、验收、撤销交付、验收未通过、重新调试、交付回滚等操作) */ public @interface ProjectOperation { /** * 交付 */ String DELIVERY = "DELIVERY"; /** * 撤销交付 */ String CANCEL_DELIVERY = "CANCEL_DELIVERY"; /** * 验收 */ String ACCEPTANCE = "ACCEPTANCE"; /** * 验收未通过 */ String ACCEPTANCE_FAIL = "ACCEPTANCE_FAIL"; /** * 重新调试 */ String DEBUGGING_AGAIN = "DEBUGGING_AGAIN"; /** * 交付回滚 */ String DELIVERY_ROLLBACK = "DELIVERY_ROLLBACK"; /** * 未知 */ String SCAN_CODE_TO_GET = "SCAN_CODE_TO_GET"; } app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
@@ -168,6 +168,9 @@ //电站手动交付(安装商) public static final String POST_deliverToAccount = "/home-wisdom/app/powerStation/deliverToAccount"; //更新项目状态 (交付、验收、撤销交付、验收未通过、重新调试、交付回滚等操作)(https://hdl-gz.yuque.com/wnkbmh/diiq35/kegldc#gWveC) public static final String POST_UpdateProjectDebugStatus = "/smart-footstone/mgmt/community/project/updateProjectDebugStatus"; //endregion app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
@@ -11,6 +11,7 @@ import com.hdl.linkpm.sdk.core.exception.HDLException; import com.hdl.photovoltaic.config.AppConfigManage; import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.enums.ProjectOperation; import com.hdl.photovoltaic.internet.HttpClient; import com.hdl.photovoltaic.internet.api.HttpApi; import com.hdl.photovoltaic.listener.CloudCallBeak; @@ -170,6 +171,25 @@ for (int i = 0; i < mHouseIdList.size(); i++) { if (mHouseIdList.get(i).getHomeId().equals(houseId)) { mHouseIdList.remove(i); break; } } } /** * 电站Id对象更新 * * @param houseIdBean 电站id对象 */ public void updateHouseIdBean(HouseIdBean houseIdBean) { if (houseIdBean == null) { return; } for (int i = 0; i < mHouseIdList.size(); i++) { HouseIdBean h = mHouseIdList.get(i); if (h.getHomeId().equals(houseIdBean.getHomeId())) { h.setDebugStatus(houseIdBean.getDebugStatus()); //mHouseIdList.set(i,houseIdBean);整个对象替换 break; } } @@ -1086,6 +1106,41 @@ } /** * 更新项目状态 (交付、验收、撤销交付、验收未通过、重新调试、交付回滚等操作)(https://hdl-gz.yuque.com/wnkbmh/diiq35/kegldc#gWveC) * * @param homeId 电站id * @param communityId 社区id * @param flowRecordContent 流转记录内容 * @param projectOperation 项目状态 * @param cloudCallBeak - */ public void setUpdateProjectDebugStatus(String homeId, String communityId, String flowRecordContent, String projectOperation, CloudCallBeak<Boolean> cloudCallBeak) { String requestUrl = HttpApi.POST_UpdateProjectDebugStatus; JsonObject json = new JsonObject(); json.addProperty("houseId", homeId); json.addProperty("communityId", communityId); json.addProperty("flowRecordContent", flowRecordContent);//流转记录内容 json.addProperty("projectFlowRecordActionEnum", projectOperation); HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { @Override public void onSuccess(String jsonStr) { if (cloudCallBeak != null) { cloudCallBeak.onSuccess(true); } } @Override public void onFailure(HDLException e) { if (cloudCallBeak != null) { cloudCallBeak.onFailure(e); } } }); } /** * 添加推送Token * * @param cloudCallBeak - app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
@@ -108,6 +108,11 @@ //未交付完要显示删除按钮 holder.home_del_ll.setVisibility(View.VISIBLE); } if (houseIdBean.getDebugStatus().equals(DebugStatus.WAIT_DELIVERED)) { //更改成回滚图标 holder.home_del_ll.setVisibility(View.VISIBLE); holder.del_home_iv.setImageResource(R.drawable.roll_back); } //删除电站 holder.home_del_ll.setOnClickListener(new View.OnClickListener() { @@ -278,6 +283,7 @@ public RelativeLayout item_parent_rl;//条目父容器 public LinearLayout home_move_ll;//移动电站位置 public LinearLayout home_del_ll;//删除电站 public ImageView del_home_iv; public TextView home_location_tv;//电站地址 public SwipeLayout item_parent_swipeLayout;//父容器 @@ -299,6 +305,7 @@ item_parent_rl = itemView.findViewById(R.id.item_parent_rl); home_move_ll = itemView.findViewById(R.id.move_ll); home_del_ll = itemView.findViewById(R.id.del_ll); del_home_iv = itemView.findViewById(R.id.del_home_iv); home_location_tv = itemView.findViewById(R.id.home_location_tv); item_parent_swipeLayout = itemView.findViewById(R.id.item_parent_swipeLayout); } app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java
@@ -11,6 +11,9 @@ */ public class HouseIdBean implements Serializable { private String homeId;//电站id private String debugType="NORMAL";//调试类型(NORMAL =常规调试;SIMPLE =简易调试) private String communityId="";//项目id private String flowRecordContent="";//流转记录内容 private String powerStationImage;//电站图片 private String homeName;//电站名称 private String installedCapacity;//组串容量(创建电站时输入的组串容量) @@ -60,7 +63,29 @@ * SECONDARY_DEBUGGIN = 授权调试 */ private String debugStatus; public String getDebugType() { return debugType; } public void setDebugType(String debugType) { this.debugType = debugType; } public String getCommunityId() { return communityId; } public void setCommunityId(String communityId) { this.communityId = communityId; } public String getFlowRecordContent() { return flowRecordContent; } public void setFlowRecordContent(String flowRecordContent) { this.flowRecordContent = flowRecordContent; } public String getDebugStatus() { return debugStatus == null ? "" : debugStatus; } app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
@@ -32,6 +32,7 @@ import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch; import com.hdl.photovoltaic.enums.LowerTagType; import com.hdl.photovoltaic.enums.PowerStationStatus; import com.hdl.photovoltaic.enums.ProjectOperation; import com.hdl.photovoltaic.enums.ShowErrorMode; import com.hdl.photovoltaic.enums.SortType; import com.hdl.photovoltaic.enums.SortValue; @@ -317,49 +318,59 @@ @Override public void onDelClick(int position, HouseIdBean houseIdBean) { final boolean isWaitDelivered = houseIdBean.getDebugStatus().equals(DebugStatus.WAIT_DELIVERED); DelayedConfirmationCancelDialog delayedConfirmationCancelDialog = new DelayedConfirmationCancelDialog(_mActivity); delayedConfirmationCancelDialog.show(); delayedConfirmationCancelDialog.isHideTitle(true); String homeName = "\"" + houseIdBean.getHomeName() + "\""; delayedConfirmationCancelDialog.setContent(getString(R.string.delete_power_station).replace("%s", homeName)); delayedConfirmationCancelDialog.startCountdown(4); if (isWaitDelivered) { //"是否将电站的调试状态回退到调试中" delayedConfirmationCancelDialog.setContent(getString(R.string.debug_status_rollback).replace("%s", homeName)); } else { delayedConfirmationCancelDialog.startCountdown(4); delayedConfirmationCancelDialog.setContent(getString(R.string.delete_power_station).replace("%s", homeName)); } delayedConfirmationCancelDialog.setYesOnclickListener(new DelayedConfirmationCancelDialog.onYesOnclickListener() { @Override public void Confirm() { delayedConfirmationCancelDialog.dismiss(); showLoading(getString(R.string.deleting_please_wait)); HdlDeviceLogic.getInstance().getCurrentHomeLocalAndCloudGatewayList(houseIdBean.getHomeId(), new CloudCallBeak<List<GatewayBean>>() { @Override public void onSuccess(List<GatewayBean> list) { //发起删除电站指令 deleteResidence(houseIdBean.getHomeId(), list); if (isWaitDelivered) { showLoading(); HdlResidenceLogic.getInstance().setUpdateProjectDebugStatus(houseIdBean.getHomeId(), houseIdBean.getCommunityId(), houseIdBean.getFlowRecordContent(), ProjectOperation.DEBUGGING_AGAIN.toString(), new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean list) { hideLoading(); if (houseInfoAdapter != null) { houseIdBean.setDebugStatus(DebugStatus.Debugging); HdlResidenceLogic.getInstance().updateHouseIdBean(houseIdBean); initData(); //更新UI houseInfoAdapter.notifyItemChanged(position); } } } @Override public void onFailure(HDLException e) { hideLoading(); } }); } else { showLoading(getString(R.string.deleting_please_wait)); HdlDeviceLogic.getInstance().getCurrentHomeLocalAndCloudGatewayList(houseIdBean.getHomeId(), new CloudCallBeak<List<GatewayBean>>() { @Override public void onSuccess(List<GatewayBean> list) { //发起删除电站指令 deleteResidence(houseIdBean.getHomeId(), list, position); @Override public void onFailure(HDLException e) { //发起删除电站指令 deleteResidence(houseIdBean.getHomeId(), null); } }); } // //删除住宅 // HdlResidenceLogic.getInstance().delResidence(houseIdBean.getHomeId(), new CloudCallBeak<Boolean>() { // @Override // public void onSuccess(Boolean obj) { // HdlResidenceLogic.getInstance().delHouseId(houseIdBean.getHomeId()); // initData();//初始化缓存数据 // houseInfoAdapter.setList(houseListBeanIDList);//重新刷新列表 // nullDataUpdateUi(houseListBeanIDList);//检测数据是否为空 // } // // @Override // public void onFailure(HDLException e) { // HdlThreadLogic.toast(_mActivity, e); // } // }); @Override public void onFailure(HDLException e) { //发起删除电站指令 deleteResidence(houseIdBean.getHomeId(), null, position); } }); } } }); delayedConfirmationCancelDialog.setNoOnclickListener(new DelayedConfirmationCancelDialog.onNoOnclickListener() { @@ -538,7 +549,6 @@ viewBinding.fragmentHouseSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity)); viewBinding.fragmentHouseSrlListRc.setAdapter(houseInfoAdapter); houseInfoAdapter.setList(this.houseListBeanIDList, powerStationStatusValue); //设备标签 deviceInfoAdapter = new DeviceInfoAdapter(_mActivity); viewBinding.fragmentDeviceSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity)); @@ -975,10 +985,11 @@ /** * 删除电站 * * @param homeId 电站id * @param list 逆变器列表 * @param homeId 电站id * @param list 逆变器列表 * @param position 位置 */ private void deleteResidence(String homeId, List<GatewayBean> list) { private void deleteResidence(String homeId, List<GatewayBean> list, int position) { //删除住宅 HdlResidenceLogic.getInstance().delResidence(homeId, new CloudCallBeak<Boolean>() { @@ -988,7 +999,10 @@ initializeInverter(list); //发起初始化指令给逆变器;(注意:前面已先解绑云端逆变器,mqtt通道已断开,初始化只能是本地发送(先搜索局域网逆变器列表,建立本地通讯通道)) HdlResidenceLogic.getInstance().delHouseId(homeId);//删除电站缓存 initData();//初始化缓存数据 houseInfoAdapter.setList(houseListBeanIDList, powerStationStatusValue);//重新刷新列表 if (houseInfoAdapter != null) { // houseInfoAdapter.setList(houseListBeanIDList, powerStationStatusValue);//重新刷新列表 houseInfoAdapter.notifyItemRemoved(position);//只刷新当前的位置 } getStatusOverview();//删除成功后刷新电站状态概览 nullDataUpdateUi();//检测数据是否为空 } app/src/main/res/values-en/strings.xml
@@ -373,4 +373,5 @@ <string name="event_content">Event content</string> <string name="remark">remark</string> <string name="treatment_options">Treatment options</string> <string name="debug_status_rollback">Should the commissioning status of the %s power station be rolled back to commissioning?</string> </resources> app/src/main/res/values-zh/strings.xml
@@ -368,5 +368,6 @@ <string name="event_title">事件标题</string> <string name="event_content">事件内容</string> <string name="remark">备注</string> <string name="treatment_options">处理方案</string> <string name="treatment_options">处理方案</string>是否将电站的调试状态回退到调试中 <string name="debug_status_rollback">是否将%s电站的调试状态回退到调试中?</string> </resources> app/src/main/res/values/strings.xml
@@ -375,6 +375,7 @@ <string name="event_content">Event content</string> <string name="remark">remark</string> <string name="treatment_options">Treatment options</string> <string name="debug_status_rollback">Should the commissioning status of the %s power station be rolled back to commissioning?</string> </resources>