提交 d9740868 authored 作者: lgd's avatar lgd

1.添加权限

2.//TODO 设备三个子菜单,坩埚下单,下单时间选择器当前时间验证,mes其他页面,mes用户反馈空也展示,编辑任务担当无法修改
上级 f9520104
......@@ -36,6 +36,14 @@ public interface MesApiService {
@POST("/himes/api/applogin")
Observable<BaseMesBean> login(@Query("userName") String userName, @Query("password") String password);
/**
* 工单列表
*
* @return
*/
@GET("/himes/api/main/getButton")
Observable<BaseMesBean> buttonPermission(@Query("functionId") String functionId);
/**
* 工单列表
*
......
......@@ -8,6 +8,7 @@ import android.view.View;
import android.widget.Button;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
......@@ -57,6 +58,7 @@ public class MesQualityActivity extends WorkToolBarActivity {
private List<FeedbackBean.ListBean> dataList;
private MesQualityAdapter dataAdapter;
private int page = 1;
private JSONArray permission;
@Override
protected void initView() {
......@@ -78,6 +80,7 @@ public class MesQualityActivity extends WorkToolBarActivity {
}
private void getData() {
getButtonPermission();
RtfUtils.getMesRtf().feedbackList("1", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseMesBean>() {
@Override
public void doOnSubscribe(Disposable d) {
......@@ -122,7 +125,33 @@ public class MesQualityActivity extends WorkToolBarActivity {
});
}
private void getButtonPermission() {
RtfUtils.getMesRtf().buttonPermission(WorkUtils.getMesMenuId("市场服务","质量反馈")).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;
}
permission = JSON.parseArray(data.getData().toString());
if (WorkUtils.hasMesMenuPermission(permission, "新建")) {
btnAdd.setVisibility(View.VISIBLE);
}
}
});
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(new OnRefreshListener() {
......@@ -144,9 +173,9 @@ public class MesQualityActivity extends WorkToolBarActivity {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
if (TextUtils.equals(dataList.get(position).getStatus(), "1")) {
startActivity(MesQualityAddActivity.class, "data", JSON.toJSONString(dataList.get(position)));
startActivity(MesQualityAddActivity.class, "data", JSON.toJSONString(dataList.get(position)),"permission",permission.toJSONString());
} else {
startActivity(MesQualityDetailActivity.class, "id", dataList.get(position).getId() + "");
startActivity(MesQualityDetailActivity.class, "id", dataList.get(position).getId() + "","permission",permission.toJSONString());
}
}
});
......
......@@ -212,7 +212,9 @@ public class MesQualityAddActivity extends WorkToolBarActivity {
param.put("defectName", chooseDefect.getDefectName());
}
if (TextUtils.isEmpty(getIntent().getStringExtra("data"))) {
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "新建")) {
btnAdd.setVisibility(View.VISIBLE);
}
} else {
btnSubmit.setVisibility(View.VISIBLE);
}
......
......@@ -202,7 +202,9 @@ public class MesQualityDetailActivity extends WorkToolBarActivity {
llClient.setVisibility(View.GONE);
llCompany.setVisibility(View.GONE);
llManager.setVisibility(View.GONE);
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "反馈")) {
llBottom.setVisibility(View.VISIBLE);
}
btnReviews.setVisibility(View.VISIBLE);
btnRefuse.setVisibility(View.GONE);
break;
......@@ -210,13 +212,17 @@ public class MesQualityDetailActivity extends WorkToolBarActivity {
llClient.setVisibility(View.GONE);
llCompany.setVisibility(View.GONE);
llManager.setVisibility(View.VISIBLE);
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "反馈")) {
llBottom.setVisibility(View.VISIBLE);
}
break;
case "6":
llClient.setVisibility(View.GONE);
llCompany.setVisibility(View.VISIBLE);
llManager.setVisibility(View.VISIBLE);
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "反馈")) {
llBottom.setVisibility(View.VISIBLE);
}
break;
case "7":
llClient.setVisibility(View.VISIBLE);
......
......@@ -3,8 +3,10 @@ package com.wd.workoffice.ui.activity.mes.search;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
......@@ -21,6 +23,7 @@ import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
......@@ -45,6 +48,7 @@ public class MesSearchActivity extends WorkToolBarActivity {
private List<SearchBean.ListBean> dataList;
private MesSearchAdapter dataAdapter;
private int page = 1;
private JSONArray permission;
@Override
protected void initView() {
......@@ -58,14 +62,43 @@ public class MesSearchActivity extends WorkToolBarActivity {
dataList = new ArrayList<>();
dataAdapter = new MesSearchAdapter(R.layout.item_mes_search, dataList);
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content,rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
param = WorkUtils.pageMesKey();
Map<String, Object> paramMap = WorkUtils.simpleParam();
paramMap.put("materialCode","306");
paramMap.put("materialCode", "306");
param.put("pageNum", page);
param.put("paramMap", paramMap);
getButtonPermission();
}
private void getButtonPermission() {
RtfUtils.getMesRtf().buttonPermission(WorkUtils.getMesMenuId("市场服务", "质量反馈")).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;
}
permission = JSON.parseArray(data.getData().toString());
if (WorkUtils.hasMesMenuPermission(permission, "查询")) {
getData();
}
}
});
}
private void getData() {
RtfUtils.getMesRtf().searchList("1", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseMesBean>() {
......@@ -104,7 +137,8 @@ public class MesSearchActivity extends WorkToolBarActivity {
page++;
}
}
}); }
});
}
@Override
......@@ -112,9 +146,13 @@ public class MesSearchActivity extends WorkToolBarActivity {
srlRefresh.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
if (WorkUtils.hasMesMenuPermission(permission, "查询")) {
page = 1;
param.put("pageNum", page);
getData();
} else {
toast(R.string.permission);
}
}
});
dataAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
......@@ -152,10 +190,14 @@ public class MesSearchActivity extends WorkToolBarActivity {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 10001 && resultCode == 10001) {
String returnParam = data.getStringExtra("param");
param.put("paramMap", JSON.parseObject(returnParam,Map.class));
param.put("paramMap", JSON.parseObject(returnParam, Map.class));
if (WorkUtils.hasMesMenuPermission(permission, "查询")) {
page = 1;
param.put("pageNum", page);
getData();
} else {
toast(R.string.permission);
}
}
}
......
......@@ -95,14 +95,15 @@ public class MesTicketDetailActivity extends WorkToolBarActivity {
data = JSON.parseObject(getIntent().getStringExtra("data"), TicketBean.ListBean.class);
if (TextUtils.equals(from, "1")) {
llBottom.setVisibility(View.VISIBLE);
if (data.getJobStatus() == 1) {
btnReceive.setVisibility(View.VISIBLE);
}
if (data.getJobStatus() == 1 && TextUtils.isEmpty(data.getAcceptUserId())) {
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "接收")) {
btnReceive.setVisibility(View.VISIBLE);
}
}
if (data.getJobStatus() == 2) {
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "总结")) {
btnSubmit.setVisibility(View.VISIBLE);
}
rlLog.setVisibility(View.GONE);
rlAddLog.setVisibility(View.VISIBLE);
}
......
package com.wd.workoffice.ui.activity.mes.ticket;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
......@@ -130,6 +129,10 @@ public class MesTicketDetailFinishActivity extends WorkToolBarActivity {
// } else {
// btnReviews.setVisibility(View.VISIBLE);
// }
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "评价")) {
btnReviews.setVisibility(View.VISIBLE);
}
rvImg.setLayoutManager(new GridLayoutManager(this, 3, RecyclerView.VERTICAL, false));
rvAnnex.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
......
......@@ -9,6 +9,8 @@ import android.widget.Button;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
......@@ -58,6 +60,7 @@ public class MesTicketListActivity extends WorkToolBarActivity {
private Map<String, Object> param;
private List<TicketBean.ListBean> dataList;
private MesTicketAdapter dataAdapter;
private JSONArray permission;
@Override
protected void initView() {
......@@ -68,6 +71,33 @@ public class MesTicketListActivity extends WorkToolBarActivity {
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
private void getButtonPermission() {
RtfUtils.getMesRtf().buttonPermission(WorkUtils.getMesMenuId("市场服务","服务工单")).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;
}
permission = JSON.parseArray(data.getData().toString());
if (WorkUtils.hasMesMenuPermission(permission, "新建")) {
btnAdd.setVisibility(View.VISIBLE);
}
}
});
}
@Override
protected void initData() {
......@@ -81,6 +111,7 @@ public class MesTicketListActivity extends WorkToolBarActivity {
}
private void getData() {
getButtonPermission();
RtfUtils.getMesRtf().ticketList("1", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseMesBean>() {
@Override
public void doOnSubscribe(Disposable d) {
......@@ -137,19 +168,20 @@ public class MesTicketListActivity extends WorkToolBarActivity {
boolean isJob = TextUtils.equals(UserKeeper.getInstance().getMesUid(), dataList.get(position).getJobUserId());
switch (dataList.get(position).getJobStatus()) {
case 0:
startActivity(MesTicketAddActivity.class, "from", isJob ? "1" : "0","data", JSON.toJSONString(dataList.get(position)));
startActivity(MesTicketAddActivity.class, "from", isJob ? "1" : "0", "data", JSON.toJSONString(dataList.get(position)));
break;
case 1:
startActivity(MesTicketDetailActivity.class, "from",isJob ? "1" : "0","data", JSON.toJSONString(dataList.get(position)));
startActivity(MesTicketDetailActivity.class,
"from", isJob ? "1" : "0", "data", JSON.toJSONString(dataList.get(position)),"permission",permission.toJSONString());
break;
case 2:
startActivity(MesTicketDetailActivity.class, "from", isJob ? "1" : "0","data", JSON.toJSONString(dataList.get(position)));
startActivity(MesTicketDetailActivity.class, "from", isJob ? "1" : "0", "data", JSON.toJSONString(dataList.get(position)),"permission",permission.toJSONString());
break;
case 3:
startActivity(MesTicketDetailFinishActivity.class, "from", isJob ? "1" : "0","data", JSON.toJSONString(dataList.get(position)));
startActivity(MesTicketDetailFinishActivity.class, "from", isJob ? "1" : "0", "data", JSON.toJSONString(dataList.get(position)),"permission",permission.toJSONString());
break;
case 4:
startActivity(MesTicketDetailReviewActivity.class, "from", isJob ? "1" : "0","data", JSON.toJSONString(dataList.get(position)));
startActivity(MesTicketDetailReviewActivity.class, "from", isJob ? "1" : "0", "data", JSON.toJSONString(dataList.get(position)),"permission",permission.toJSONString());
break;
}
}
......
package com.wd.workoffice.ui.activity.mes.user;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.Menu;
......@@ -334,8 +333,10 @@ public class MesUserDataDetailActivity extends WorkToolBarActivity {
if (mainInfo.getApprovalStatus() != 0) {
llBottom.setVisibility(View.GONE);
} else {
if (WorkUtils.hasMesMenuPermission(JSON.parseArray(getIntent().getStringExtra("permission")), "审核")) {
llBottom.setVisibility(View.VISIBLE);
}
}
} else {
if (mainInfo.getApprovalStatus() == 2) {
llReason.setVisibility(View.VISIBLE);
......
......@@ -9,6 +9,7 @@ import android.widget.Button;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
......@@ -58,6 +59,7 @@ public class MesUserDataListActivity extends WorkToolBarActivity {
private Map<String, Object> param;
private List<UserDataBean.ListBean> dataList;
private MesUserDataAdapter dataAdapter;
private JSONArray permission;
@Override
protected void initView() {
......@@ -79,8 +81,34 @@ public class MesUserDataListActivity extends WorkToolBarActivity {
param.put("pageNum", page);
getData();
}
private void getButtonPermission() {
RtfUtils.getMesRtf().buttonPermission(WorkUtils.getMesMenuId("市场服务","用户数据采集")).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;
}
permission = JSON.parseArray(data.getData().toString());
if (WorkUtils.hasMesMenuPermission(permission, "新建")) {
btnAdd.setVisibility(View.VISIBLE);
}
}
});
}
private void getData() {
getButtonPermission();
RtfUtils.getMesRtf().userDataList("1", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseMesBean>() {
@Override
public void doOnSubscribe(Disposable d) {
......@@ -137,7 +165,7 @@ public class MesUserDataListActivity extends WorkToolBarActivity {
// boolean isJob = TextUtils.equals(UserKeeper.getInstance().getMesUid(), dataList.get(position).getApprovalUserId());
startActivity(MesUserDataDetailActivity.class,"from","1","id",
dataList.get(position).getId(),"status",
dataList.get(position).getApprovalStatus()+"");
dataList.get(position).getApprovalStatus()+"","permission",permission.toJSONString());
}
});
}
......
......@@ -12,6 +12,7 @@ import android.view.ViewGroup;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.bumptech.glide.load.ImageHeaderParser;
import com.chad.library.adapter.base.BaseQuickAdapter;
......@@ -366,6 +367,7 @@ public class WorkUtils {
}
return true;
}
/**
* 判断是否有审核权限
*
......@@ -415,6 +417,7 @@ public class WorkUtils {
}
return true;
}
/**
* 刷新token
*
......@@ -478,21 +481,37 @@ public class WorkUtils {
});
}
/**
* 根据名称获取菜单id
*
* @return
*/
public static Boolean hasMesMenuPermission(JSONArray permissionList, String buttonName) {
if (permissionList == null || permissionList.size() == 0) {
return false;
}
for (int i = 0; i < permissionList.size(); i++) {
if (TextUtils.equals(buttonName, permissionList.getJSONObject(i).getString("name"))) {
return true;
}
}
return false;
}
/**
* 根据名称获取菜单id
*
* @return
*/
public static String getMesMenuId(String oneName,String nextName) {
if (TextUtils.isEmpty((DataKeeper.getInstance().getMenu()))){
public static String getMesMenuId(String oneName, String nextName) {
if (TextUtils.isEmpty((DataKeeper.getInstance().getMenu()))) {
return "";
}
List<MenuBean> menuList = JSON.parseArray(DataKeeper.getInstance().getMenu(), MenuBean.class);
for (MenuBean menuBean : menuList) {
if (TextUtils.equals(oneName,menuBean.getText())){
if (TextUtils.equals(oneName, menuBean.getText())) {
for (MenuBean.NodesBean node : menuBean.getNodes()) {
if (TextUtils.equals(nextName,node.getText())){
if (TextUtils.equals(nextName, node.getText())) {
return node.getId();
}
}
......@@ -500,6 +519,7 @@ public class WorkUtils {
}
return "";
}
/**
* 判断是否拥有权限
*
......
......@@ -20,6 +20,7 @@
android:background="@drawable/shape_blue_circle"
android:paddingHorizontal="40mm"
android:text="评价"
android:visibility="gone"
android:textColor="@color/white" />
</LinearLayout>
......
......@@ -84,5 +84,6 @@
android:layout_marginBottom="20mm"
android:background="@color/blue_btn"
android:text="新建"
android:visibility="gone"
android:textColor="@color/white" />
</RelativeLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论