提交 d152a485 authored 作者: flexiblexd@163.com's avatar flexiblexd@163.com

1.故障,

2.添加功能按鈕
上级 7e0d97d8
......@@ -2740,6 +2740,25 @@
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.mes.work.WorkFaultChooseReasonActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:label="选择"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.mes.work.WorkFaultChooseSolveActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:label="选择"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider"
......
package com.wd.workoffice.bean.event;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
* date: 2021-10-27
**/
public class CheckEvent {
int type;
public CheckEvent(int type) {
this.type = type;
}
public int getType() {
return type;
}
}
......@@ -39,6 +39,7 @@ public class FaultBean extends BaseMesPageBean {
*/
private String id;
private String dataId;
private long createDateTime;
private Object updateDateTime;
private String woId;
......@@ -49,6 +50,23 @@ public class FaultBean extends BaseMesPageBean {
private Object changeBy;
private Object parentId;
private boolean delete;
private String description;
public String getDataId() {
return dataId;
}
public void setDataId(String dataId) {
this.dataId = dataId;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getId() {
return id;
......
package com.wd.workoffice.bean.mesBean;
import java.util.List;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
* date: 2021-10-27
**/
public class SolveBean {
private int pageNum;
private int pageSize;
private int size;
private int startRow;
private int endRow;
private int total;
private int pages;
private List<ListBean> list;
private int prePage;
private int nextPage;
private boolean isFirstPage;
private boolean isLastPage;
private boolean hasPreviousPage;
private boolean hasNextPage;
private int navigatePages;
private Object navigatepageNums;
private int navigateFirstPage;
private int navigateLastPage;
private int lastPage;
private int firstPage;
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public int getStartRow() {
return startRow;
}
public void setStartRow(int startRow) {
this.startRow = startRow;
}
public int getEndRow() {
return endRow;
}
public void setEndRow(int endRow) {
this.endRow = endRow;
}
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getPages() {
return pages;
}
public void setPages(int pages) {
this.pages = pages;
}
public List<ListBean> getList() {
return list;
}
public void setList(List<ListBean> list) {
this.list = list;
}
public int getPrePage() {
return prePage;
}
public void setPrePage(int prePage) {
this.prePage = prePage;
}
public int getNextPage() {
return nextPage;
}
public void setNextPage(int nextPage) {
this.nextPage = nextPage;
}
public boolean isIsFirstPage() {
return isFirstPage;
}
public void setIsFirstPage(boolean isFirstPage) {
this.isFirstPage = isFirstPage;
}
public boolean isIsLastPage() {
return isLastPage;
}
public void setIsLastPage(boolean isLastPage) {
this.isLastPage = isLastPage;
}
public boolean isHasPreviousPage() {
return hasPreviousPage;
}
public void setHasPreviousPage(boolean hasPreviousPage) {
this.hasPreviousPage = hasPreviousPage;
}
public boolean isHasNextPage() {
return hasNextPage;
}
public void setHasNextPage(boolean hasNextPage) {
this.hasNextPage = hasNextPage;
}
public int getNavigatePages() {
return navigatePages;
}
public void setNavigatePages(int navigatePages) {
this.navigatePages = navigatePages;
}
public Object getNavigatepageNums() {
return navigatepageNums;
}
public void setNavigatepageNums(Object navigatepageNums) {
this.navigatepageNums = navigatepageNums;
}
public int getNavigateFirstPage() {
return navigateFirstPage;
}
public void setNavigateFirstPage(int navigateFirstPage) {
this.navigateFirstPage = navigateFirstPage;
}
public int getNavigateLastPage() {
return navigateLastPage;
}
public void setNavigateLastPage(int navigateLastPage) {
this.navigateLastPage = navigateLastPage;
}
public int getLastPage() {
return lastPage;
}
public void setLastPage(int lastPage) {
this.lastPage = lastPage;
}
public int getFirstPage() {
return firstPage;
}
public void setFirstPage(int firstPage) {
this.firstPage = firstPage;
}
public static class ListBean {
private String id;
private long createDateTime;
private long updateDateTime;
private String woId;
private String failureId;
private String failureCode;
private String failureName;
private String createBy;
private String changeBy;
private String parentId;
private boolean delete;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public long getCreateDateTime() {
return createDateTime;
}
public void setCreateDateTime(long createDateTime) {
this.createDateTime = createDateTime;
}
public long getUpdateDateTime() {
return updateDateTime;
}
public void setUpdateDateTime(long updateDateTime) {
this.updateDateTime = updateDateTime;
}
public String getWoId() {
return woId;
}
public void setWoId(String woId) {
this.woId = woId;
}
public String getFailureId() {
return failureId;
}
public void setFailureId(String failureId) {
this.failureId = failureId;
}
public String getFailureCode() {
return failureCode;
}
public void setFailureCode(String failureCode) {
this.failureCode = failureCode;
}
public String getFailureName() {
return failureName;
}
public void setFailureName(String failureName) {
this.failureName = failureName;
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy;
}
public String getChangeBy() {
return changeBy;
}
public void setChangeBy(String changeBy) {
this.changeBy = changeBy;
}
public String getParentId() {
return parentId;
}
public void setParentId(String parentId) {
this.parentId = parentId;
}
public boolean isDelete() {
return delete;
}
public void setDelete(boolean delete) {
this.delete = delete;
}
}
}
......@@ -826,6 +826,61 @@ public interface MesApiService {
@POST("/himes/api/workOrder/show/pageFailure.json")
Observable<BaseMesBean> pageFailure(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
*
*
* @return
*/
@POST("/himes/api/astfailurelist/show/grandson/list.json")
Observable<BaseMesBean> astfailurelistGrandson(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
*
*
* @return
*/
@POST("/himes/api/astfailurelist/show/greatgrandson/list.json?")
Observable<BaseMesBean> astfailurelistGreatgrandson(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
*
*
* @return
*/
@POST("himes/api/workOrder/show/grandson/list.json")
Observable<BaseMesBean> grandson(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
*
*
* @return
*/
@POST("himes/api/workOrder/show/greatgrandson/list.json")
Observable<BaseMesBean> greatgrandson(@Query("functionId") String functionId, @Body RequestBody requestBody);
/**
*
*
* @return
*/
@POST("/himes/api/workOrder/add/grandson/option.json")
Observable<BaseMesBean> grandsonOption(@Query("functionId") String functionId,
@Query("option") String option,
@Body RequestBody requestBody);
/**
*
*
* @return
*/
@POST("/himes/api/workOrder/add/greatgrandson/option.json")
Observable<BaseMesBean> greatgrandsonOption(@Query("functionId") String functionId,
@Query("option") String option,
@Body RequestBody requestBody);
/**
* @return
......
package com.wd.workoffice.ui.activity.mes.work;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseMesBean;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.event.CheckEvent;
import com.wd.workoffice.bean.mesBean.FaultBean;
import com.wd.workoffice.bean.mesBean.SolveBean;
import com.wd.workoffice.bean.mesBean.WokrOrderBean;
import com.wd.workoffice.bean.mesBean.WorkOrderSon;
import com.wd.workoffice.bean.mesBean.WorkTaskBean;
import com.wd.workoffice.bean.workEnum.WorkOrder;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkOrderFaultAdapter;
import com.wd.workoffice.ui.adapter.WorkOrderSonAdapter;
import com.wd.workoffice.ui.adapter.WorkOrderTaskAdapter;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
import org.greenrobot.eventbus.EventBus;
import java.util.List;
import java.util.Map;
......@@ -30,6 +29,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
......@@ -46,6 +46,34 @@ public class QualityWorkFaultFragment extends WorkBaseFg {
TextView tvDesc;
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.tv_delete)
TextView tvDelete;
@BindView(R.id.tv_code)
TextView tvCode;
@BindView(R.id.tv_solve_desc)
TextView tvSolveDesc;
@BindView(R.id.tv_solve_delete)
TextView tvSolveDelete;
@BindView(R.id.tv_solve_code)
TextView tvSolveCode;
@BindView(R.id.ll_code)
LinearLayout llCode;
@BindView(R.id.ll_solve_code)
LinearLayout llSolveCode;
@BindView(R.id.tv_save)
TextView tvSave;
@BindView(R.id.tv_submit)
TextView tvSubmit;
@BindView(R.id.tv_ok)
TextView tvOk;
@BindView(R.id.tv_cancel)
TextView tvCancel;
@BindView(R.id.tv_finish)
TextView tvFinish;
@BindView(R.id.tv_confirm)
TextView tvConfirm;
@BindView(R.id.ll_bottom)
LinearLayout llBottom;
private List<FaultBean.ListBean> taskList;
private WorkOrderFaultAdapter taskAdapter;
private WokrOrderBean.ListBean info;
......@@ -53,6 +81,8 @@ public class QualityWorkFaultFragment extends WorkBaseFg {
private int taskPage = 1;
private Map<String, Object> taskParam;
private Map<String, Object> taskParamMap;
private FaultBean.ListBean chooseReason;
private FaultBean.ListBean chooseSolve;
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
......@@ -74,19 +104,58 @@ public class QualityWorkFaultFragment extends WorkBaseFg {
protected void initData() {
// tvNo.setText(info.getWoCode());
// tvDesc.setText(info.getDescription());
taskList = new ArrayList<>();
taskAdapter = new WorkOrderFaultAdapter(R.layout.item_work_order_fault, taskList);
taskAdapter.bindToRecyclerView(rvData);
taskParam = WorkUtils.pageMesKey();
taskParam.put("pageNum", 1);
taskParamMap = WorkUtils.simpleParam();
taskParam.put("paramMap", taskParamMap);
taskParamMap.put("woId", info.getId());
getTask();
// taskList = new ArrayList<>();
// taskAdapter = new WorkOrderFaultAdapter(R.layout.item_work_order_fault, taskList);
// taskAdapter.bindToRecyclerView(rvData);
// taskParam = WorkUtils.pageMesKey();
// taskParam.put("pageNum", 1);
// taskParamMap = WorkUtils.simpleParam();
// taskParam.put("paramMap", taskParamMap);
// taskParamMap.put("woId", info.getId());
// getTask();
switch (info.getStatus()) {// "状态 1草稿 2待审批 3处理中 4已完成待确认 5已关闭 6已驳回
case 1:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.VISIBLE);
tvSubmit.setVisibility(View.VISIBLE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.GONE);
break;
case 2:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.VISIBLE);
tvCancel.setVisibility(View.VISIBLE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.GONE);
break;
case 3:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.VISIBLE);
tvConfirm.setVisibility(View.GONE);
break;
case 4:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.VISIBLE);
break;
default:
llBottom.setVisibility(View.GONE);
break;
}
getFault();
}
private void getTask() {
......@@ -130,12 +199,104 @@ public class QualityWorkFaultFragment extends WorkBaseFg {
}
private void getFault() {
Map<String, Object> param = WorkUtils.pageMesKey();
param.put("pageNum", 1);
Map<String, Object> paramMap = WorkUtils.simpleParam();
paramMap.put("parentId", info.getQuestionId());
paramMap.put("woId", info.getId());
param.put("paramMap", paramMap);
RtfUtils.getMesRtf().grandson("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<FaultBean.ListBean> getList = JSON.parseObject(data.getData().toString(), FaultBean.class).getList();
if (getList.size() != 0) {
FaultBean.ListBean fault = getList.get(0);
if (chooseReason == null) {
chooseReason = new FaultBean.ListBean();
chooseReason.setId(fault.getFailureId());
chooseReason.setFailureId(fault.getFailureId());
chooseReason.setFailureCode(fault.getFailureCode());
chooseReason.setDescription(fault.getFailureName());
}
chooseReason.setDataId(fault.getId());
getSolveFault(fault.getFailureId());
tvCode.setText(fault.getFailureCode());
tvDesc.setText(fault.getFailureName());
}
}
});
}
private void getSolveFault(String id) {
Map<String, Object> param = WorkUtils.pageMesKey();
param.put("pageNum", 1);
Map<String, Object> paramMap = WorkUtils.simpleParam();
param.put("paramMap", paramMap);
paramMap.put("parentId", id);
// paramMap.put("woId", info.getId());
RtfUtils.getMesRtf().greatgrandson("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<SolveBean.ListBean> getList = JSON.parseObject(data.getData().toString(), SolveBean.class).getList();
if (getList.size() != 0) {
SolveBean.ListBean fault = getList.get(0);
if (chooseSolve == null) {
chooseSolve = new FaultBean.ListBean();
chooseSolve.setId(fault.getFailureId());
chooseSolve.setFailureId(fault.getFailureId());
chooseSolve.setFailureCode(fault.getFailureCode());
chooseSolve.setDescription(fault.getFailureName());
}
chooseSolve.setDataId(fault.getId());
tvSolveCode.setText(fault.getFailureCode());
tvSolveDesc.setText(fault.getFailureName());
}
}
});
}
@Override
protected void initEvent() {
taskAdapter.setOnLoadMoreListener(() -> {
taskParam.put("pageNum", taskPage);
getTask();
}, rvData);
// taskAdapter.setOnLoadMoreListener(() -> {
// taskParam.put("pageNum", taskPage);
// getTask();
// }, rvData);
// taskAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
// @Override
// public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
......@@ -152,4 +313,218 @@ public class QualityWorkFaultFragment extends WorkBaseFg {
}
@Override
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case 10001:
if (resultCode == 10001) {
chooseReason = JSON.parseObject(data.getStringExtra("data"), FaultBean.ListBean.class);
// tvCode.setText(chooseReason.getFailureCode());
// tvDesc.setText(chooseReason.getDescription());
addReason();
}
break;
case 10002:
if (resultCode == 10001) {
chooseSolve = JSON.parseObject(data.getStringExtra("data"), FaultBean.ListBean.class);
// tvSolveCode.setText(chooseSolve.getFailureCode());
// tvSolveDesc.setText(chooseSolve.getDescription());
addSolve();
}
break;
}
}
private void addReason() {
Map<String, Object> param = WorkUtils.pageMesKey();
param.put("woId", info.getId());
param.put("parentId", info.getQuestionId());
param.put("failureId", chooseReason.getId());
param.put("failureCode", chooseReason.getFailureCode());
param.put("failureName", chooseReason.getDescription());
RtfUtils.getMesRtf().grandsonOption("1", "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;
}
toast("操作成功");
getFault();
// tvCode.setText(chooseReason.getFailureCode());
// tvDesc.setText(chooseReason.getDescription());
}
});
}
private void addSolve() {
Map<String, Object> param = WorkUtils.pageMesKey();
param.put("woId", info.getId());
param.put("parentId", chooseReason.getId());
param.put("failureId", chooseSolve.getFailureId());
param.put("failureCode", chooseSolve.getFailureCode());
param.put("failureName", chooseSolve.getDescription());
RtfUtils.getMesRtf().greatgrandsonOption("1", "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;
}
toast("操作成功");
getSolveFault(chooseReason.getId());
// tvCode.setText(chooseReason.getFailureCode());
// tvDesc.setText(chooseReason.getDescription());
}
});
}
private void deleteReason() {
Map<String, Object> param = WorkUtils.simpleParam();
param.put("id", chooseReason.getDataId());
RtfUtils.getMesRtf().grandsonOption("1", "2", 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;
}
toast("操作成功");
tvCode.setText("");
tvDesc.setText("");
chooseReason = null;
}
});
}
private void deleteSolve() {
Map<String, Object> param = WorkUtils.simpleParam();
param.put("id", chooseSolve.getDataId());
RtfUtils.getMesRtf().greatgrandsonOption("1", "2", 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;
}
toast("操作成功");
tvSolveCode.setText("");
tvSolveDesc.setText("");
chooseSolve = null;
}
});
}
private void check(int type) {//1 保存 2 提交審核 3 通過 4 駁回 5 完成 6 确认完成
EventBus.getDefault().post(new CheckEvent(type));
}
@OnClick({R.id.tv_delete, R.id.ll_code, R.id.tv_solve_delete, R.id.ll_solve_code, R.id.tv_save, R.id.tv_submit, R.id.tv_ok, R.id.tv_cancel, R.id.tv_finish, R.id.tv_confirm})
public void onClick(View view) {
switch (view.getId()) {
case R.id.tv_delete:
if (chooseSolve != null) {
toast("请先删除解决措施");
return;
}
deleteReason();
break;
case R.id.ll_code:
if (chooseReason != null) {
toast("请先删除后,在重新选择");
return;
}
startActivityForResult(WorkFaultChooseReasonActivity.class, 10001
, "id", info.getQuestionId());
break;
case R.id.tv_solve_delete:
if (chooseReason == null) {
toast("您还未选择");
return;
}
if (chooseSolve == null) {
toast("您还未选择");
return;
}
deleteSolve();
break;
case R.id.ll_solve_code:
if (chooseReason == null) {
toast("请选择故障原因");
return;
}
if (chooseSolve != null) {
toast("请先删除后,在重新选择");
return;
}
startActivityForResult(WorkFaultChooseSolveActivity.class, 10002
, "id", chooseReason.getId());
break;
case R.id.tv_confirm:
check(6);
break;
case R.id.tv_finish:
check(5);
break;
case R.id.tv_ok:
check(3);
break;
case R.id.tv_cancel:
check(4);
break;
case R.id.tv_save:
check(1);
break;
case R.id.tv_submit:
check(2);
break;
}
}
}
......@@ -17,6 +17,8 @@ import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseMesBean;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.event.ChangeStatus;
import com.wd.workoffice.bean.event.CheckEvent;
import com.wd.workoffice.bean.event.CheckMoneytEvent;
import com.wd.workoffice.bean.mesBean.FaultTypeBean;
import com.wd.workoffice.bean.mesBean.OpmreportErrorBean;
import com.wd.workoffice.bean.mesBean.WokrOrderBean;
......@@ -34,6 +36,7 @@ import com.wd.workoffice.util.PickTimeUtils;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
......@@ -723,6 +726,23 @@ public class QualityWorkFragment extends WorkBaseFg {
private String getTimeString(long time) {
return time == 0L ? "" : TimeUtils.millis2String(time);
}
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
@Subscribe
public void refresh(CheckEvent event) {
check(event.getType());
}
}
package com.wd.workoffice.ui.activity.mes.work;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
......@@ -14,14 +16,13 @@ import com.wd.workoffice.app.Config;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.event.AddTaskEvent;
import com.wd.workoffice.bean.event.ChangeStatus;
import com.wd.workoffice.bean.event.ModifyCarEvent;
import com.wd.workoffice.bean.event.CheckEvent;
import com.wd.workoffice.bean.mesBean.WokrOrderBean;
import com.wd.workoffice.bean.mesBean.WorkOrderSon;
import com.wd.workoffice.bean.mesBean.WorkTaskBean;
import com.wd.workoffice.bean.workEnum.WorkOrder;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.order.AddCrucibleCarActivity;
import com.wd.workoffice.ui.adapter.WorkOrderSonAdapter;
import com.wd.workoffice.ui.adapter.WorkOrderTaskAdapter;
import com.wd.workoffice.util.DialogUtils;
......@@ -41,6 +42,7 @@ import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import flexible.xd.android_base.utils.TimeUtils;
import io.reactivex.disposables.Disposable;
/**
......@@ -62,6 +64,20 @@ public class QualityWorkPlanFragment extends WorkBaseFg {
RecyclerView rvData;
@BindView(R.id.tv_add_task)
TextView tvAddTask;
@BindView(R.id.tv_save)
TextView tvSave;
@BindView(R.id.tv_submit)
TextView tvSubmit;
@BindView(R.id.tv_ok)
TextView tvOk;
@BindView(R.id.tv_cancel)
TextView tvCancel;
@BindView(R.id.tv_finish)
TextView tvFinish;
@BindView(R.id.tv_confirm)
TextView tvConfirm;
@BindView(R.id.ll_bottom)
LinearLayout llBottom;
private Map<String, Object> param;
private List<WorkOrderSon.ListBean> sonList;
private List<WorkTaskBean.ListBean> taskList;
......@@ -88,6 +104,47 @@ public class QualityWorkPlanFragment extends WorkBaseFg {
ButterKnife.bind(this, getContentView());
rvData.setLayoutManager(new LinearLayoutManager(getActivity(), RecyclerView.VERTICAL, false));
rvSon.setLayoutManager(new LinearLayoutManager(getActivity(), RecyclerView.VERTICAL, false));
switch (info.getStatus()) {// "状态 1草稿 2待审批 3处理中 4已完成待确认 5已关闭 6已驳回
case 1:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.VISIBLE);
tvSubmit.setVisibility(View.VISIBLE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.GONE);
break;
case 2:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.VISIBLE);
tvCancel.setVisibility(View.VISIBLE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.GONE);
break;
case 3:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.VISIBLE);
tvConfirm.setVisibility(View.GONE);
break;
case 4:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.VISIBLE);
break;
default:
llBottom.setVisibility(View.GONE);
break;
}
}
......@@ -255,10 +312,7 @@ public class QualityWorkPlanFragment extends WorkBaseFg {
}
@OnClick(R.id.tv_add_task)
public void onClick() {
startActivity(WorkTaskActivity.class, "id", info.getId());
}
@Override
public void onStart() {
......@@ -306,4 +360,36 @@ public class QualityWorkPlanFragment extends WorkBaseFg {
}
});
}
private void check(int type) {//1 保存 2 提交審核 3 通過 4 駁回 5 完成 6 确认完成
EventBus.getDefault().post(new CheckEvent(type));
}
@OnClick({R.id.tv_save, R.id.tv_submit, R.id.tv_ok, R.id.tv_cancel, R.id.tv_finish, R.id.tv_confirm, R.id.tv_add_task})
public void onClick(View view) {
switch (view.getId()) {
case R.id.tv_confirm:
check(6);
break;
case R.id.tv_finish:
check(5);
break;
case R.id.tv_ok:
check(3);
break;
case R.id.tv_cancel:
check(4);
break;
case R.id.tv_save:
check(1);
break;
case R.id.tv_submit:
check(2);
break;
case R.id.tv_add_task:
startActivity(WorkTaskActivity.class, "id", info.getId());
break;
}
}
}
......@@ -2,6 +2,7 @@ package com.wd.workoffice.ui.activity.mes.work;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
......@@ -9,6 +10,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseMesBean;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.event.CheckEvent;
import com.wd.workoffice.bean.mesBean.WokrOrderBean;
import com.wd.workoffice.bean.mesBean.WorkOrderSon;
import com.wd.workoffice.bean.mesBean.WorkTaskBean;
......@@ -19,6 +21,8 @@ import com.wd.workoffice.ui.adapter.WorkOrderSonAdapter;
import com.wd.workoffice.ui.adapter.WorkOrderTaskAdapter;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
......@@ -28,6 +32,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
......@@ -50,6 +55,20 @@ public class QualityWorkTrueFragment extends WorkBaseFg {
RecyclerView rvData;
@BindView(R.id.tv_add_task)
TextView tvAddTask;
@BindView(R.id.tv_save)
TextView tvSave;
@BindView(R.id.tv_submit)
TextView tvSubmit;
@BindView(R.id.tv_ok)
TextView tvOk;
@BindView(R.id.tv_cancel)
TextView tvCancel;
@BindView(R.id.tv_finish)
TextView tvFinish;
@BindView(R.id.tv_confirm)
TextView tvConfirm;
@BindView(R.id.ll_bottom)
LinearLayout llBottom;
private Map<String, Object> param;
private List<WorkOrderSon.ListBean> sonList;
private List<WorkTaskBean.ListBean> taskList;
......@@ -77,6 +96,47 @@ public class QualityWorkTrueFragment extends WorkBaseFg {
rvData.setLayoutManager(new LinearLayoutManager(getActivity(), RecyclerView.VERTICAL, false));
rvSon.setLayoutManager(new LinearLayoutManager(getActivity(), RecyclerView.VERTICAL, false));
tvAddTask.setVisibility(View.GONE);
switch (info.getStatus()) {// "状态 1草稿 2待审批 3处理中 4已完成待确认 5已关闭 6已驳回
case 1:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.VISIBLE);
tvSubmit.setVisibility(View.VISIBLE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.GONE);
break;
case 2:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.VISIBLE);
tvCancel.setVisibility(View.VISIBLE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.GONE);
break;
case 3:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.VISIBLE);
tvConfirm.setVisibility(View.GONE);
break;
case 4:
llBottom.setVisibility(View.VISIBLE);
tvOk.setVisibility(View.GONE);
tvCancel.setVisibility(View.GONE);
tvSave.setVisibility(View.GONE);
tvSubmit.setVisibility(View.GONE);
tvFinish.setVisibility(View.GONE);
tvConfirm.setVisibility(View.VISIBLE);
break;
default:
llBottom.setVisibility(View.GONE);
break;
}
}
......@@ -218,4 +278,32 @@ public class QualityWorkTrueFragment extends WorkBaseFg {
}
private void check(int type) {//1 保存 2 提交審核 3 通過 4 駁回 5 完成 6 确认完成
EventBus.getDefault().post(new CheckEvent(type));
}
@OnClick({R.id.tv_save, R.id.tv_submit, R.id.tv_ok, R.id.tv_cancel, R.id.tv_finish, R.id.tv_confirm})
public void onClick(View view) {
switch (view.getId()) {
case R.id.tv_confirm:
check(6);
break;
case R.id.tv_finish:
check(5);
break;
case R.id.tv_ok:
check(3);
break;
case R.id.tv_cancel:
check(4);
break;
case R.id.tv_save:
check(1);
break;
case R.id.tv_submit:
check(2);
break;
}
}
}
package com.wd.workoffice.ui.activity.mes.work;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseMesBean;
import com.wd.workoffice.app.Config;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.mesBean.FaultBean;
import com.wd.workoffice.bean.mesBean.WorkCodeBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkCodeAdapter;
import com.wd.workoffice.ui.adapter.WorkFaultReasonAdapter;
import com.wd.workoffice.util.WorkUtils;
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 butterknife.OnClick;
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 WorkFaultChooseReasonActivity extends WorkToolBarActivity {
@BindView(R.id.et_key)
EditText etKey;
@BindView(R.id.btn_search)
Button btnSearch;
@BindView(R.id.rv_client)
RecyclerView rvClient;
private Map<String, Object> param;
private List<FaultBean.ListBean> clientList;
private WorkFaultReasonAdapter clientAdapter;
private int page = 1;
private Map<String, Object> paramMap;
@Override
protected void initView() {
ButterKnife.bind(this);
rvClient.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
clientList = new ArrayList<>();
clientAdapter = new WorkFaultReasonAdapter(R.layout.item_fault_search, clientList);
clientAdapter.bindToRecyclerView(rvClient);
clientAdapter.setEmptyView(R.layout.view_empty_content, rvClient);
param = WorkUtils.pageMesKey();
paramMap = WorkUtils.simpleParam();
paramMap.put("parentId",getIntent().getStringExtra("id"));
param.put("paramMap", paramMap);
param.put("pageNum", 1);
getData();
}
private void getData() {
RtfUtils.getMesRtf().astfailurelistGrandson("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<FaultBean.ListBean> getList = JSON.parseObject(data.getData().toString(), FaultBean.class).getList();
if (page == 1) {
clientList.clear();
clientList.addAll(getList);
clientAdapter.notifyDataSetChanged();
clientAdapter.loadMoreComplete();
} else {
clientAdapter.loadMoreComplete();
clientList.addAll(getList);
clientAdapter.notifyDataSetChanged();
}
if (getList.size() == 0||getList.size()< Config.SIZE) {
clientAdapter.loadMoreEnd();
} else {
page++;
}
toast("搜索成功");
}
});
}
@Override
protected void initEvent() {
clientAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
param.put("pageNum", page);
getData();
}
}, rvClient);
clientAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
Intent intent = new Intent();
intent.putExtra("data", JSON.toJSONString(clientList.get(position)));
setResult(10001, intent);
finish();
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_mes_fault_search;
}
@OnClick(R.id.btn_search)
public void onViewClicked() {
paramMap.put("description", etKey.getText().toString());
param.put("pageNum", 1);
page = 1;
getData();
}
}
package com.wd.workoffice.ui.activity.mes.work;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseMesBean;
import com.wd.workoffice.app.Config;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.mesBean.FaultBean;
import com.wd.workoffice.bean.mesBean.WorkCodeBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkCodeAdapter;
import com.wd.workoffice.ui.adapter.WorkFaultSolveAdapter;
import com.wd.workoffice.util.WorkUtils;
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 butterknife.OnClick;
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 WorkFaultChooseSolveActivity extends WorkToolBarActivity {
@BindView(R.id.et_key)
EditText etKey;
@BindView(R.id.btn_search)
Button btnSearch;
@BindView(R.id.rv_client)
RecyclerView rvClient;
private Map<String, Object> param;
private List<FaultBean.ListBean> clientList;
private WorkFaultSolveAdapter clientAdapter;
private int page = 1;
private Map<String, Object> paramMap;
@Override
protected void initView() {
ButterKnife.bind(this);
rvClient.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
clientList = new ArrayList<>();
clientAdapter = new WorkFaultSolveAdapter(R.layout.item_fault_search, clientList);
clientAdapter.bindToRecyclerView(rvClient);
clientAdapter.setEmptyView(R.layout.view_empty_content, rvClient);
param = WorkUtils.pageMesKey();
paramMap = WorkUtils.simpleParam();
paramMap.put("parentId",getIntent().getStringExtra("id"));
param.put("paramMap", paramMap);
param.put("pageNum", 1);
getData();
}
private void getData() {
RtfUtils.getMesRtf().astfailurelistGreatgrandson("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<FaultBean.ListBean> getList = JSON.parseObject(data.getData().toString(), FaultBean.class).getList();
if (page == 1) {
clientList.clear();
clientList.addAll(getList);
clientAdapter.notifyDataSetChanged();
clientAdapter.loadMoreComplete();
} else {
clientAdapter.loadMoreComplete();
clientList.addAll(getList);
clientAdapter.notifyDataSetChanged();
}
if (getList.size() == 0||getList.size()< Config.SIZE) {
clientAdapter.loadMoreEnd();
} else {
page++;
}
toast("搜索成功");
}
});
}
@Override
protected void initEvent() {
clientAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
param.put("pageNum", page);
getData();
}
}, rvClient);
clientAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
Intent intent = new Intent();
intent.putExtra("data", JSON.toJSONString(clientList.get(position)));
setResult(10001, intent);
finish();
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_mes_fault_search;
}
@OnClick(R.id.btn_search)
public void onViewClicked() {
paramMap.put("description", etKey.getText().toString());
param.put("pageNum", 1);
page = 1;
getData();
}
}
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.FaultBean;
import com.wd.workoffice.bean.mesBean.WorkCodeBean;
import java.util.List;
/**
* Created by flexible on 2018/8/13.
*/
public class WorkFaultReasonAdapter extends BaseQuickAdapter<FaultBean.ListBean, BaseViewHolder> {
public WorkFaultReasonAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
@Override
protected void convert(BaseViewHolder helper, FaultBean.ListBean item) {
helper.setText(R.id.tv_content1, item.getFailureCode());
helper.setText(R.id.tv_content2, item.getDescription());
}
}
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.FaultBean;
import com.wd.workoffice.bean.mesBean.WorkCodeBean;
import java.util.List;
/**
* Created by flexible on 2018/8/13.
*/
public class WorkFaultSolveAdapter extends BaseQuickAdapter<FaultBean.ListBean, BaseViewHolder> {
public WorkFaultSolveAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
@Override
protected void convert(BaseViewHolder helper, FaultBean.ListBean item) {
helper.setText(R.id.tv_content1, item.getFailureCode());
helper.setText(R.id.tv_content2, item.getDescription());
}
}
......@@ -2,9 +2,83 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/ll_bottom"
android:layout_width="match_parent"
android:layout_height="60mm"
android:layout_alignParentBottom="true"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="保存"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="发起审批"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="通过"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="驳回"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_finish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="完成"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="确认完成"
android:textColor="@color/white" />
</LinearLayout>
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_above="@id/ll_bottom"
android:layout_height="match_parent"
android:background="@color/white">
......@@ -22,19 +96,19 @@
android:background="@color/flexible_background"
android:paddingVertical="10mm"
android:paddingLeft="10mm"
android:visibility="gone"
android:text="基本信息"
android:textSize="16sp" />
android:textSize="16sp"
android:visibility="gone" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:visibility="gone"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
android:paddingVertical="15mm"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
......@@ -51,14 +125,54 @@
android:textSize="14sp" />
</RelativeLayout>
<!-- <View style="@style/dividerX" />-->
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/flexible_background"
android:paddingVertical="10mm"
android:paddingLeft="10mm"
android:text="故障详细信息"
android:textSize="16sp"
android:visibility="gone" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/flexible_background"
android:paddingVertical="10mm">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="10mm"
android:text="故障原因"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10mm"
android:text="删除"
android:textColor="@color/blue_btn" />
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_code"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:visibility="gone"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
......@@ -66,33 +180,141 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="描述"
android:text="故障代码"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_desc"
android:layout_width="wrap_content"
android:id="@+id/tv_code"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_weight="1"
android:gravity="right"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
</RelativeLayout>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/arrow_right_gray" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="描述"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_desc"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5mm"
android:background="@drawable/shape_input_white"
android:gravity="top"
android:minLines="4"
android:padding="5mm"
android:textSize="16sp" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/flexible_background"
android:paddingVertical="10mm"
android:paddingVertical="10mm">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="10mm"
android:text="故障详细信息"
android:text="故障的解决措施"
android:textSize="16sp" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
<TextView
android:id="@+id/tv_solve_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10mm"
android:text="删除"
android:textColor="@color/blue_btn" />
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_solve_code"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="故障代码"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_solve_code"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_weight="1"
android:gravity="right"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/arrow_right_gray" />
</LinearLayout>
<View style="@style/dividerX" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="描述"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_solve_desc"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5mm"
android:background="@drawable/shape_input_white"
android:gravity="top"
android:hint="请填写详细信息…"
android:minLines="4"
android:padding="5mm"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</RelativeLayout>
......@@ -3,9 +3,84 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/ll_bottom"
android:layout_width="match_parent"
android:layout_height="60mm"
android:layout_alignParentBottom="true"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="保存"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="发起审批"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="通过"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="驳回"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_finish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="完成"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@color/blue_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="确认完成"
android:textColor="@color/white" />
</LinearLayout>
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/ll_bottom"
android:background="@color/white">
<LinearLayout
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论