Commit d9ed14d3 by mReturn

V2.6.7

parent 209c7003
......@@ -9,7 +9,6 @@ import com.dayu.common.BaseConstant;
import com.dayu.common.Constants;
import com.dayu.event.UserInfo;
import com.dayu.utils.AppUtils;
import com.dayu.utils.CommonUtils;
import com.dayu.utils.LogUtils;
import com.dayu.utils.UserManager;
import com.google.gson.Gson;
......@@ -132,6 +131,11 @@ public class Api {
.observeOn(AndroidSchedulers.mainThread())
.flatMap(Api::flatResponse);
}
public static <T> ObservableTransformer<T, T> applySchedulersSource() {
return upstream -> upstream.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.flatMap(Api::flatResponseSource);
}
// final static ObservableTransformer transformer = new ObservableTransformer() {
......@@ -172,6 +176,20 @@ public class Api {
}
});
}
private static <T> Observable<T> flatResponseSource(final T response) {
return Observable.create(e -> {
if (!e.isDisposed()) {
if (response != null) {
e.onNext(response);
} else {
e.onError(new ServerException(Constants.ERROR_NULL, ""));
}
}
if (!e.isDisposed()) {
e.onComplete();
}
});
}
}
......@@ -5,8 +5,8 @@ buildscript {
ext.build_tools_version = "27.0.3"
ext.min_sdk_version = 17
ext.target_sdk_version = 26
ext.version_code = 266
ext.verson_name = "2.6.6"
ext.version_code = 267
ext.verson_name = "2.6.7"
ext.gradle_version = '3.1.4'
ext.isReleaseMinify = false
ext.isDebugMinify = false
......
......@@ -13,6 +13,7 @@ import com.dayu.order.api.protocol.OperateInfo;
import com.dayu.order.api.protocol.Order;
import com.dayu.order.api.protocol.OrderDetail;
import com.dayu.order.api.protocol.OrderPart;
import com.dayu.order.api.protocol.bean.GreenPersionSiteInfo;
import com.dayu.order.api.protocol.bean.KnowledgeListBean;
import com.dayu.order.api.protocol.bean.OrderDetailDeviceInfoBean;
import com.dayu.order.api.protocol.bean.OrderDetailSiteInfoBean;
......@@ -562,10 +563,10 @@ public interface OrderService {
@Query("type") int type);
/**
* 获取站点信息
* 获取小绿人站点信息
*
* @return
*/
@GET(Constants.API_7200 + "/orders/greenPerson")
Observable<BaseResponse<OrderDetailSiteInfoBean>> getSiteInfo(@Query("sn") String sn);
Observable<GreenPersionSiteInfo> getSiteInfo(@Query("sn") String sn);
}
package com.dayu.order.api.protocol.bean;
import java.util.List;
public class GreenPersionSiteInfo {
/**
* errorCode : 200
* data : {"problem":[{"errorCode":"-90005","errorName":"设备安装断网检查","errorStartTime":"2020-05-15 14:25:09"}],"station":{"stationId":22872,"stationCode":null,"stationName":"天津市红桥区字沽物美","address":"天津市红桥区丁字沽三号路物美超市","longitude":null,"latitude":null,"tel":null,"owner":null,"bookingFlag":0,"stationReleaseStatus":0,"ext":null,"spaceCount":null,"miniPileCount":null,"manageModuleCount":null,"meshCount":null,"boxCount":null,"distance":null,"lastUpdateTime":"2019-11-13 15:03:13","createDate":"2019-11-13 15:03:13","feeSetId":311,"feeSetName":null,"partnerId":null,"partnerName":null,"feePolicyList":null,"stationType":1,"cityId":72,"cityName":"天津","whitelistFlag":0,"stationWarehouseFlag":0,"productType":2,"ruleType":null,"deleteFlag":0,"businessType":0,"userName":null,"district":"红桥区","province":"天津","street":"红桥区","sendManager":null,"checkManager":null,"regionCode":"1201069999","community":null,"maintainDate":null,"managerName":null,"mangerPhone":null,"cityManager":null,"maintenanceStatus":null,"maintenanceEndDate":null,"auto":true},"netWorkStatus":-1}
*/
private int errorCode;
private DataBean data;
public int getErrorCode() {
return errorCode;
}
public void setErrorCode(int errorCode) {
this.errorCode = errorCode;
}
public DataBean getData() {
return data;
}
public void setData(DataBean data) {
this.data = data;
}
public static class DataBean {
/**
* problem : [{"errorCode":"-90005","errorName":"设备安装断网检查","errorStartTime":"2020-05-15 14:25:09"}]
* station : {"stationId":22872,"stationCode":null,"stationName":"天津市红桥区字沽物美","address":"天津市红桥区丁字沽三号路物美超市","longitude":null,"latitude":null,"tel":null,"owner":null,"bookingFlag":0,"stationReleaseStatus":0,"ext":null,"spaceCount":null,"miniPileCount":null,"manageModuleCount":null,"meshCount":null,"boxCount":null,"distance":null,"lastUpdateTime":"2019-11-13 15:03:13","createDate":"2019-11-13 15:03:13","feeSetId":311,"feeSetName":null,"partnerId":null,"partnerName":null,"feePolicyList":null,"stationType":1,"cityId":72,"cityName":"天津","whitelistFlag":0,"stationWarehouseFlag":0,"productType":2,"ruleType":null,"deleteFlag":0,"businessType":0,"userName":null,"district":"红桥区","province":"天津","street":"红桥区","sendManager":null,"checkManager":null,"regionCode":"1201069999","community":null,"maintainDate":null,"managerName":null,"mangerPhone":null,"cityManager":null,"maintenanceStatus":null,"maintenanceEndDate":null,"auto":true}
* netWorkStatus : -1
*/
private StationBean station;
private int netWorkStatus;
private List<ProblemBean> problem;
public StationBean getStation() {
return station;
}
public void setStation(StationBean station) {
this.station = station;
}
public int getNetWorkStatus() {
return netWorkStatus;
}
public void setNetWorkStatus(int netWorkStatus) {
this.netWorkStatus = netWorkStatus;
}
public List<ProblemBean> getProblem() {
return problem;
}
public void setProblem(List<ProblemBean> problem) {
this.problem = problem;
}
public static class StationBean {
/**
* stationId : 22872
* stationCode : null
* stationName : 天津市红桥区字沽物美
* address : 天津市红桥区丁字沽三号路物美超市
* longitude : null
* latitude : null
* tel : null
* owner : null
* bookingFlag : 0
* stationReleaseStatus : 0
* ext : null
* spaceCount : null
* miniPileCount : null
* manageModuleCount : null
* meshCount : null
* boxCount : null
* distance : null
* lastUpdateTime : 2019-11-13 15:03:13
* createDate : 2019-11-13 15:03:13
* feeSetId : 311
* feeSetName : null
* partnerId : null
* partnerName : null
* feePolicyList : null
* stationType : 1
* cityId : 72
* cityName : 天津
* whitelistFlag : 0
* stationWarehouseFlag : 0
* productType : 2
* ruleType : null
* deleteFlag : 0
* businessType : 0
* userName : null
* district : 红桥区
* province : 天津
* street : 红桥区
* sendManager : null
* checkManager : null
* regionCode : 1201069999
* community : null
* maintainDate : null
* managerName : null
* mangerPhone : null
* cityManager : null
* maintenanceStatus : null
* maintenanceEndDate : null
* auto : true
*/
private int stationId;
private Object stationCode;
private String stationName;
private String address;
private Object longitude;
private Object latitude;
private Object tel;
private Object owner;
private int bookingFlag;
private int stationReleaseStatus;
private Object ext;
private Object spaceCount;
private Object miniPileCount;
private Object manageModuleCount;
private Object meshCount;
private Object boxCount;
private Object distance;
private String lastUpdateTime;
private String createDate;
private int feeSetId;
private Object feeSetName;
private Object partnerId;
private Object partnerName;
private Object feePolicyList;
private int stationType;
private int cityId;
private String cityName;
private int whitelistFlag;
private int stationWarehouseFlag;
private int productType;
private Object ruleType;
private int deleteFlag;
private int businessType;
private Object userName;
private String district;
private String province;
private String street;
private Object sendManager;
private Object checkManager;
private String regionCode;
private Object community;
private Object maintainDate;
private Object managerName;
private Object mangerPhone;
private Object cityManager;
private Object maintenanceStatus;
private Object maintenanceEndDate;
private boolean auto;
public int getStationId() {
return stationId;
}
public void setStationId(int stationId) {
this.stationId = stationId;
}
public Object getStationCode() {
return stationCode;
}
public void setStationCode(Object stationCode) {
this.stationCode = stationCode;
}
public String getStationName() {
return stationName;
}
public void setStationName(String stationName) {
this.stationName = stationName;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Object getLongitude() {
return longitude;
}
public void setLongitude(Object longitude) {
this.longitude = longitude;
}
public Object getLatitude() {
return latitude;
}
public void setLatitude(Object latitude) {
this.latitude = latitude;
}
public Object getTel() {
return tel;
}
public void setTel(Object tel) {
this.tel = tel;
}
public Object getOwner() {
return owner;
}
public void setOwner(Object owner) {
this.owner = owner;
}
public int getBookingFlag() {
return bookingFlag;
}
public void setBookingFlag(int bookingFlag) {
this.bookingFlag = bookingFlag;
}
public int getStationReleaseStatus() {
return stationReleaseStatus;
}
public void setStationReleaseStatus(int stationReleaseStatus) {
this.stationReleaseStatus = stationReleaseStatus;
}
public Object getExt() {
return ext;
}
public void setExt(Object ext) {
this.ext = ext;
}
public Object getSpaceCount() {
return spaceCount;
}
public void setSpaceCount(Object spaceCount) {
this.spaceCount = spaceCount;
}
public Object getMiniPileCount() {
return miniPileCount;
}
public void setMiniPileCount(Object miniPileCount) {
this.miniPileCount = miniPileCount;
}
public Object getManageModuleCount() {
return manageModuleCount;
}
public void setManageModuleCount(Object manageModuleCount) {
this.manageModuleCount = manageModuleCount;
}
public Object getMeshCount() {
return meshCount;
}
public void setMeshCount(Object meshCount) {
this.meshCount = meshCount;
}
public Object getBoxCount() {
return boxCount;
}
public void setBoxCount(Object boxCount) {
this.boxCount = boxCount;
}
public Object getDistance() {
return distance;
}
public void setDistance(Object distance) {
this.distance = distance;
}
public String getLastUpdateTime() {
return lastUpdateTime;
}
public void setLastUpdateTime(String lastUpdateTime) {
this.lastUpdateTime = lastUpdateTime;
}
public String getCreateDate() {
return createDate;
}
public void setCreateDate(String createDate) {
this.createDate = createDate;
}
public int getFeeSetId() {
return feeSetId;
}
public void setFeeSetId(int feeSetId) {
this.feeSetId = feeSetId;
}
public Object getFeeSetName() {
return feeSetName;
}
public void setFeeSetName(Object feeSetName) {
this.feeSetName = feeSetName;
}
public Object getPartnerId() {
return partnerId;
}
public void setPartnerId(Object partnerId) {
this.partnerId = partnerId;
}
public Object getPartnerName() {
return partnerName;
}
public void setPartnerName(Object partnerName) {
this.partnerName = partnerName;
}
public Object getFeePolicyList() {
return feePolicyList;
}
public void setFeePolicyList(Object feePolicyList) {
this.feePolicyList = feePolicyList;
}
public int getStationType() {
return stationType;
}
public void setStationType(int stationType) {
this.stationType = stationType;
}
public int getCityId() {
return cityId;
}
public void setCityId(int cityId) {
this.cityId = cityId;
}
public String getCityName() {
return cityName;
}
public void setCityName(String cityName) {
this.cityName = cityName;
}
public int getWhitelistFlag() {
return whitelistFlag;
}
public void setWhitelistFlag(int whitelistFlag) {
this.whitelistFlag = whitelistFlag;
}
public int getStationWarehouseFlag() {
return stationWarehouseFlag;
}
public void setStationWarehouseFlag(int stationWarehouseFlag) {
this.stationWarehouseFlag = stationWarehouseFlag;
}
public int getProductType() {
return productType;
}
public void setProductType(int productType) {
this.productType = productType;
}
public Object getRuleType() {
return ruleType;
}
public void setRuleType(Object ruleType) {
this.ruleType = ruleType;
}
public int getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(int deleteFlag) {
this.deleteFlag = deleteFlag;
}
public int getBusinessType() {
return businessType;
}
public void setBusinessType(int businessType) {
this.businessType = businessType;
}
public Object getUserName() {
return userName;
}
public void setUserName(Object userName) {
this.userName = userName;
}
public String getDistrict() {
return district;
}
public void setDistrict(String district) {
this.district = district;
}
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province;
}
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
public Object getSendManager() {
return sendManager;
}
public void setSendManager(Object sendManager) {
this.sendManager = sendManager;
}
public Object getCheckManager() {
return checkManager;
}
public void setCheckManager(Object checkManager) {
this.checkManager = checkManager;
}
public String getRegionCode() {
return regionCode;
}
public void setRegionCode(String regionCode) {
this.regionCode = regionCode;
}
public Object getCommunity() {
return community;
}
public void setCommunity(Object community) {
this.community = community;
}
public Object getMaintainDate() {
return maintainDate;
}
public void setMaintainDate(Object maintainDate) {
this.maintainDate = maintainDate;
}
public Object getManagerName() {
return managerName;
}
public void setManagerName(Object managerName) {
this.managerName = managerName;
}
public Object getMangerPhone() {
return mangerPhone;
}
public void setMangerPhone(Object mangerPhone) {
this.mangerPhone = mangerPhone;
}
public Object getCityManager() {
return cityManager;
}
public void setCityManager(Object cityManager) {
this.cityManager = cityManager;
}
public Object getMaintenanceStatus() {
return maintenanceStatus;
}
public void setMaintenanceStatus(Object maintenanceStatus) {
this.maintenanceStatus = maintenanceStatus;
}
public Object getMaintenanceEndDate() {
return maintenanceEndDate;
}
public void setMaintenanceEndDate(Object maintenanceEndDate) {
this.maintenanceEndDate = maintenanceEndDate;
}
public boolean isAuto() {
return auto;
}
public void setAuto(boolean auto) {
this.auto = auto;
}
}
public static class ProblemBean {
/**
* errorCode : -90005
* errorName : 设备安装断网检查
* errorStartTime : 2020-05-15 14:25:09
*/
private String errorCode;
private String errorName;
private String errorStartTime;
public String getErrorCode() {
return errorCode;
}
public void setErrorCode(String errorCode) {
this.errorCode = errorCode;
}
public String getErrorName() {
return errorName;
}
public void setErrorName(String errorName) {
this.errorName = errorName;
}
public String getErrorStartTime() {
return errorStartTime;
}
public void setErrorStartTime(String errorStartTime) {
this.errorStartTime = errorStartTime;
}
}
}
}
......@@ -24,6 +24,7 @@ import com.dayu.order.api.OrderApiFactory;
import com.dayu.order.api.OrderService;
import com.dayu.order.api.protocol.OrderDetail;
import com.dayu.order.api.protocol.Spu;
import com.dayu.order.api.protocol.bean.GreenPersionSiteInfo;
import com.dayu.order.api.protocol.data.AddDialRecordData;
import com.dayu.order.common.OperatePhoneEvent;
import com.dayu.order.common.OrderConstant;
......@@ -202,26 +203,60 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag
},responeThrowable -> {
mBind.tvDeviceTime.setText(R.string.no_data);
}));
Api.getService(OrderService.class).getSiteInfo(detail.getSn()).compose(Api.applySchedulers())
Api.getService(OrderService.class).getSiteInfo(detail.getSn()).compose(Api.applySchedulersSource())
.subscribe(mPresenter.baseObserver(result->{
if (result != null){
String info = result.getProvince()+result.getCityName()+result.getDistrict()+result.getStreet()+result.getAddress();
info = info.replace("null","");
mBind.tvSiteInfo.setText(info);
mBind.tvSiteId.setText(result.getStationId()+"");
if (result.getErrorCode() == 200 && result.getData() != null){
if (result.getData().getStation() != null){
GreenPersionSiteInfo.DataBean.StationBean sResult = result.getData().getStation();
String info = sResult.getProvince()+sResult.getCityName()+sResult.getDistrict()+sResult.getStreet()+sResult.getAddress();
setText(mBind.tvSiteInfo,info);
setText(mBind.tvSiteId,sResult.getStationName());
}else{
mBind.tvSiteInfo.setText(R.string.no_data);
mBind.tvSiteId.setText(R.string.no_data);
}
if (result.getData().getProblem()!= null)
setWrongInfoAdapter(result.getData().getProblem());
}else {
mBind.tvSiteInfo.setText(R.string.no_data);
mBind.tvSiteId.setText(R.string.no_data);
mBind.llWrongInfo.setVisibility(View.GONE);
}
},responeThrowable -> {
mBind.tvSiteInfo.setText(R.string.no_data);
mBind.tvSiteId.setText(R.string.no_data);
mBind.llWrongInfo.setVisibility(View.GONE);
}));
}else{
mBind.tvSiteId.setText(R.string.no_data);
mBind.tvSiteInfo.setText(R.string.no_data);
mBind.tvDeviceSn.setText(R.string.no_data);
mBind.tvDeviceTime.setText(R.string.no_data);
mBind.llWrongInfo.setVisibility(View.GONE);
}
}
private void setWrongInfoAdapter(List<GreenPersionSiteInfo.DataBean.ProblemBean> problems) {
BaseQuickAdapter<GreenPersionSiteInfo.DataBean.ProblemBean,BaseViewHolder> wrongAdapter
= new BaseQuickAdapter<GreenPersionSiteInfo.DataBean.ProblemBean, BaseViewHolder>(R.layout.item_wrong_part,problems) {
@Override
protected void convert(BaseViewHolder helper, GreenPersionSiteInfo.DataBean.ProblemBean item) {
helper.getView(R.id.iv_picture).setVisibility(View.GONE);
helper.setText(R.id.tv_desc,item.getErrorName());
}
};
LinearLayoutManager layoutManager = new LinearLayoutManager(getContext());
mBind.rvWrongInfo.setLayoutManager(layoutManager);
mBind.rvWrongInfo.setAdapter(wrongAdapter);
mBind.llWrongInfo.setVisibility(View.VISIBLE);
}
private void setText(TextView textView, String info) {
if (TextUtils.isEmpty(info)){
textView.setText(R.string.no_data);
}else{
textView.setText(info);
}
}
......
......@@ -199,13 +199,50 @@
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/ll_wrong_info"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll_wrong"
android:layout_marginTop="15dp"
android:orientation="horizontal"
android:visibility="gone"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="故障信息"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="19dp">
<TextView
android:id="@+id/tv_no_wrong_info"
style="@style/common_text_style"
android:text="@string/no_data"
android:visibility="gone"
android:drawableLeft="@drawable/ic_wrong_num"
android:textSize="14sp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/rv_wrong_info"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:visibility="gone"
android:id="@+id/ll_site_info"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll_wrong"
android:layout_below="@+id/ll_wrong_info"
android:orientation="vertical">
<LinearLayout
......@@ -259,7 +296,7 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="站点编号"
android:text="站点名称"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment