提交 3312053c authored 作者: lgd's avatar lgd

1.设备监控

上级 078d7d67
......@@ -1735,6 +1735,22 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.mes.MesMonitorActivity"
android:configChanges="keyboardHidden|orientation"
android:label="设备监控"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.mes.MesMonitorDetailActivity"
android:configChanges="keyboardHidden|orientation"
android:label="设备监控详情"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.mes.MesScrappedActivity"
android:configChanges="keyboardHidden|orientation"
......@@ -2570,6 +2586,7 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider"
......
......@@ -658,6 +658,13 @@ public interface MesApiService {
@POST("/himes/api/msSceneFeedbackHistory/show/page.json")
Observable<BaseMesBean> historyList(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
*
* @return
*/
@POST("/himes/api/astMeasurePoint/show/list.json")
Observable<BaseMesBean> astMeasurePoint(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
* 用户信息采集历史详情
*
......
package com.wd.workoffice.ui.activity.mes;
import android.os.Bundle;
import android.view.View;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.BaseMesBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.SendApplyBean;
import com.wd.workoffice.bean.event.CheckSendEvent;
import com.wd.workoffice.bean.mesBean.MonitorBean;
import com.wd.workoffice.bean.mesBean.UserDataBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.mes.order.MesOrderDetailActivity;
import com.wd.workoffice.ui.adapter.MesMonitorAdapter;
import com.wd.workoffice.ui.adapter.MesProcessAdapter;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* 质量监控
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class MesMonitorActivity extends WorkToolBarActivity {
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
private int page = 1;
private Map<String, Object> param;
private MesMonitorAdapter dataAdapter;
private List<MonitorBean.ListBean> dataList;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
param = WorkUtils.pageMesKey();
page = 1;
param.put("pageNum", page);
dataList = new ArrayList<>();
dataAdapter = new MesMonitorAdapter(R.layout.item_mes_monitor, dataList);
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
dataAdapter.notifyDataSetChanged();
getData();
}
private void getData() {
RtfUtils.getMesRtf().astMeasurePoint("1", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseMesBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseMesBean data) {
hideLoading();
if (!data.isSuccess()) {
toast(data.getMessage());
return;
}
List<MonitorBean.ListBean> getList = JSON.parseObject(data.getData().toString(), MonitorBean.class).getList();
if (page == 1) {
srlRefresh.finishRefresh();
dataList.clear();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
dataAdapter.loadMoreComplete();
} else {
dataAdapter.loadMoreComplete();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
}
if (getList.size() == 0) {
dataAdapter.loadMoreEnd();
} else {
page++;
}
}
});
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(refreshLayout -> {
page = 1;
param.put("pageNum", page);
getData();
});
dataAdapter.setOnLoadMoreListener(() -> {
param.put("pageNum", page);
getData();
}, rvData);
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(MesMonitorDetailActivity.class, "info", JSON.toJSONString(
dataList.get(position)));
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_pro_price;
}
}
package com.wd.workoffice.ui.activity.mes;
import android.os.Bundle;
import android.text.TextUtils;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.mesBean.AnalysisBean;
import com.wd.workoffice.bean.mesBean.MonitorBean;
import com.wd.workoffice.util.WorkUtils;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class MesMonitorDetailActivity extends WorkToolBarActivity {
@BindView(R.id.tv_name)
TextView tvName;
@BindView(R.id.tv_point)
TextView tvPoint;
@BindView(R.id.tv_change)
TextView tvChange;
@BindView(R.id.tv_location)
TextView tvLocation;
@BindView(R.id.tv_machine)
TextView tvMachine;
@BindView(R.id.tv_measure)
TextView tvMeasure;
@BindView(R.id.tv_measure_unit)
TextView tvMeasureUnit;
@BindView(R.id.tv_point_type)
TextView tvPointType;
@BindView(R.id.tv_gap)
TextView tvGap;
@BindView(R.id.tv_box)
TextView tvBox;
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
MonitorBean.ListBean info = JSON.parseObject(getIntent().getStringExtra("info"), MonitorBean.ListBean.class);
tvName.setText(info.getName());
tvPoint.setText(info.getPointCode());
tvChange.setText(info.getDescription());
tvLocation.setText(info.getLocaDesc());
tvMachine.setText(info.getAssetDesc() );
tvMeasure.setText(info.getMeterDesc());
tvMeasureUnit.setText(info.getMeasureUnit());
tvPointType.setText(TextUtils.equals(info.getPointType(),"1") ? "设备测点" : "环境测点");
tvGap.setText(info.getSelectTimeType()+"");
tvBox.setText(info.getCollectbox());
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_monitor_detail;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO: add setContentView(...) invocation
ButterKnife.bind(this);
}
}
package com.wd.workoffice.ui.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.mesBean.MonitorBean;
import java.util.List;
/**
* Created by flexible on 2018/8/13.
*/
public class MesMonitorAdapter extends BaseQuickAdapter<MonitorBean.ListBean, BaseViewHolder> {
public MesMonitorAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
@Override
protected void convert(BaseViewHolder helper, MonitorBean.ListBean item) {
helper.setText(R.id.tv_title, String.format("测点名称:%s",item.getName()));
helper.setText(R.id.tv_machine, item.getAssetDesc());
helper.setText(R.id.tv_location, item.getLocaDesc());
}
}
......@@ -2,11 +2,14 @@ package com.wd.workoffice.ui.fg;
import android.view.View;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.vo.BatLayoutVo;
import com.wd.workoffice.ui.activity.mes.MesMonitorActivity;
import com.wd.workoffice.ui.activity.mes.MesMonitorDetailActivity;
import com.wd.workoffice.ui.activity.mes.analysis.MesAnalysisActivity;
import com.wd.workoffice.ui.activity.mes.defect.MesDefectActivity;
import com.wd.workoffice.ui.activity.mes.repair.MesServiceActivity;
......@@ -38,17 +41,17 @@ public class MesFragment extends WorkBaseFg {
@BindView(R.id.rv_data)
RecyclerView rvData;
List<BatLayoutVo> dataList = new ArrayList<>();
// int[] dataImg = new int[]{R.mipmap.mes_icon1, R.mipmap.mes_icon2, R.mipmap.mes_icon3, R.mipmap.mes_icon4,
// int[] dataImg = new int[]{R.mipmap.mes_icon1, R.mipmap.mes_icon2, R.mipmap.mes_icon3, R.mipmap.mes_icon4,
// R.mipmap.mes_icon5, R.mipmap.mes_icon6, R.mipmap.mes_icon7, R.mipmap.mes_icon8,
// R.mipmap.mes_icon9, R.mipmap.mes_icon10, R.mipmap.mes_icon10};
int[] dataImg = new int[]{R.mipmap.mes_icon1, R.mipmap.mes_icon2, R.mipmap.mes_icon3,
R.mipmap.mes_icon5,
R.mipmap.mes_icon9,R.mipmap.mes_icon10, R.mipmap.mes_icon8, R.mipmap.mes_icon10};
// String[] dataName = new String[]{"订单追踪", "质量报表", "质量分析", "质量绩效",
R.mipmap.mes_icon9, R.mipmap.mes_icon10, R.mipmap.mes_icon8, R.mipmap.mes_icon10};
// String[] dataName = new String[]{"订单追踪", "质量报表", "质量分析", "质量绩效",
// "质量追溯", "质量反馈", "过程检测", "报废管理", "检维修记录", "设备监控"
// , "工单管理"};
String[] dataName = new String[]{"订单追踪", "质量报表", "质量分析",
"质量追溯","检维修记录"
"质量追溯", "检维修记录"
, "市场服务", "设备工单", "设备监控"};
......@@ -119,12 +122,13 @@ public class MesFragment extends WorkBaseFg {
startActivity(MesServiceActivity.class);
break;
case 5:
startActivity(MesTicketActivity.class);
break;
case 6:
startActivity(MesTicketActivity.class);
startActivity(QualityWorkActivity.class);
break;
case 7:
startActivity(QualityWorkActivity.class);
startActivity(MesMonitorActivity.class);
break;
}
}
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/ll_bottom">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="名称"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
android:text="11111"
android:textSize="14sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="测点"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_point"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
android:text="11111" />
</RelativeLayout>
<View style="@style/dividerX" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="采集变量"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_change"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3mm"
android:layout_marginRight="3mm"
android:text="11111" />
</LinearLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="位置"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
android:text="11111" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="设备"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_machine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="计量表"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_measure"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="计量单位"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_measure_unit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
android:text="11111" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="测点类型"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_point_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
/>
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="采集间隙(s)"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_gap"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
/>
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="采集箱"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_box"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="3mm"
android:text="11111" />
</RelativeLayout>
<View style="@style/dividerX" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10mm"
android:background="@color/white"
android:orientation="vertical"
android:padding="10mm">
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="检查单号"
android:textSize="14sp" />
<View
style="@style/dividerX"
android:layout_marginVertical="5mm" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="设备:"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_machine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4mm"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="位置:"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4mm"
android:textColor="@color/flexible_text_gray"
android:textSize="13sp" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论