已办、未办、已阅、未阅、发起流程
This commit is contained in:
parent
49ded60b72
commit
1b608db411
@ -207,6 +207,11 @@ public class PathConfig {
|
||||
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_FUNCTION_LIST = "/oamodule/activity/functionList";//功能列表
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_WEB = "/oamodule/activity/webPage";//webview页面
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_DONE = "/oamodule/activity/mineDone";//我的已办
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_TODO = "/oamodule/activity/mineUpcoming";//我的待办
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_READ = "/oamodule/activity/mineRead";//我的经阅
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_UNREAD = "/oamodule/activity/mineUnread";//我的待阅
|
||||
public static final String PATH_MODULE_OA_ACTIVITY_OAFLOW_APPLY_FLOW = "/oamodule/activity/applyFlow";//发起流程
|
||||
|
||||
|
||||
/*====================================================平板页面===============================================================*/
|
||||
@ -271,4 +276,5 @@ public class PathConfig {
|
||||
public static final String PATH_MODULE_PAD_OA_FRAGMENT_NEWS = "/oamodule/fragment/newsCenter";//新闻资讯
|
||||
public static final String PATH_MODULE_PAD_OA_FRAGMENT_NEWS_DETAIL = "/oamodule/fragment/newsDetail";//新闻详情
|
||||
|
||||
|
||||
}
|
||||
|
@ -7,9 +7,9 @@ package com.tenlionsoft.baselib.core.retrofit_net;
|
||||
*/
|
||||
public class BaseUrlApi {
|
||||
|
||||
public static final String IP = "http://192.168.0.120:8080/";/* 测试IP */
|
||||
// public static final String IP = "http://10.25.242.183:80/";/* 测试IP */
|
||||
// public static final String IP = "http://www.wlcbsyzl.cn/";/* 正式IP */
|
||||
public static final String IP = "http://192.168.0.120:8080/";/* 测试IP */
|
||||
// public static final String IP = "http://192.168.0.103:7008/";/* 测试IP */
|
||||
// public static final String IP = "http://www.wlcbsyzl.cn/";/* 正式IP */
|
||||
public static final String SYS_USERCENTER = "usercenter/";
|
||||
public static final String SYS_POPULATION = "population/";/*人口系统*/
|
||||
public static final String SYS_CASE = "case/";/*事件部件*/
|
||||
@ -56,7 +56,7 @@ public class BaseUrlApi {
|
||||
public static final String SMART_CONSULT_URL = "https://www.cispirit.com/IntelligentConsulting";
|
||||
|
||||
public static final String APP_VERSION_ID = "2939f6a7-ae98-4e64-8298-200f83523d1a";/*测试App下载码*/
|
||||
// public static final String APP_VERSION_ID = "c16826e7-8cfb-4db1-8844-09d2be697bc7";/* 155 测试App下载码*/
|
||||
// public static final String APP_VERSION_ID = "99e2beda-9cd7-48c2-a08a-c78f333d7beb";/* 155 测试App下载码*/
|
||||
// public static final String APP_VERSION_ID = "912bf7eb-5c89-4dbf-8835-de2474a029a6";/*正式App下载码*/
|
||||
|
||||
/*======百度定位city-code=======*/
|
||||
|
@ -2,7 +2,9 @@ package com.tenlionsoft.baselib.utils;
|
||||
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.graphics.Paint;
|
||||
import android.os.Handler;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.CustomDialog;
|
||||
@ -85,4 +87,16 @@ public class UIUtil {
|
||||
});
|
||||
}
|
||||
|
||||
public static void setTextBold(TextView tv) {
|
||||
try {
|
||||
if (tv != null) {
|
||||
Paint paint = tv.getPaint();
|
||||
if (paint != null) paint.setFakeBoldText(true);
|
||||
tv.invalidate();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,11 @@
|
||||
package="com.tenlionsoft.oamodule">
|
||||
|
||||
<application>
|
||||
<activity android:name=".activity.oaflow.ApplyOaFlowActivity"></activity>
|
||||
<activity android:name=".activity.oaflow.MineUnreadActivity" />
|
||||
<activity android:name=".activity.oaflow.MineReadActivity" />
|
||||
<activity android:name=".activity.oaflow.MineTodoActivity" />
|
||||
<activity android:name=".activity.oaflow.MineDoneActivity" />
|
||||
<activity
|
||||
android:name=".activity.common.WebViewActivity"
|
||||
android:configChanges="orientation|keyboardHidden|screenSize"
|
||||
|
@ -73,14 +73,9 @@ public class FunctionListActivity extends BaseActivity {
|
||||
*/
|
||||
private void choosePage(FuncBean funcBean) {
|
||||
ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_WEB)
|
||||
.withString("title", funcBean.getAppFunctionName())
|
||||
.withString("url", "https://www.baidu.com")
|
||||
.build(funcBean.getAppFunctionPath())
|
||||
.withString("id", funcBean.getAppFunctionId())
|
||||
.navigation();
|
||||
// ARouter.getInstance()
|
||||
// .build(funcBean.getAppFunctionPath())
|
||||
// .withString("id", funcBean.getAppFunctionId())
|
||||
// .navigation();
|
||||
}
|
||||
|
||||
private void doRefresh() {
|
||||
|
@ -2,6 +2,7 @@ package com.tenlionsoft.oamodule.activity.common;
|
||||
|
||||
import android.net.http.SslError;
|
||||
import android.text.TextUtils;
|
||||
import android.webkit.JavascriptInterface;
|
||||
import android.webkit.SslErrorHandler;
|
||||
import android.webkit.WebView;
|
||||
import android.widget.FrameLayout;
|
||||
@ -13,7 +14,6 @@ import com.just.agentweb.WebChromeClient;
|
||||
import com.just.agentweb.WebViewClient;
|
||||
import com.tenlionsoft.baselib.constant.PathConfig;
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
|
||||
import com.tenlionsoft.baselib.utils.UserLgUtils;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
|
||||
@ -49,11 +49,13 @@ public class WebViewActivity extends BaseActivity {
|
||||
return;
|
||||
}
|
||||
refreshView(STATE_LOAD_SUCCESS);
|
||||
// .additionalHttpHeader(BaseUrlApi.BASE_OA, "token", UserLgUtils.getToken())
|
||||
mTvBaseTitle.setText(TextUtils.isEmpty(title) ? "页面" : title);
|
||||
mWebView = AgentWeb.with(this)
|
||||
.setAgentWebParent(mFlContent, new FrameLayout.LayoutParams(-1, -1))
|
||||
.useDefaultIndicator(R.color.status_bar_blue)
|
||||
.additionalHttpHeader("https://www.xzszwhy.cn", "token", UserLgUtils.getToken())
|
||||
|
||||
.addJavascriptInterface("android", new OnJsInterface())
|
||||
.setWebViewClient(new WebViewClient() {
|
||||
@Override
|
||||
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
|
||||
@ -64,14 +66,14 @@ public class WebViewActivity extends BaseActivity {
|
||||
@Override
|
||||
public void onReceivedTitle(WebView view, String title) {
|
||||
super.onReceivedTitle(view, title);
|
||||
if (!TextUtils.isEmpty(title)) {
|
||||
mTvBaseTitle.setText(title);
|
||||
}
|
||||
// if (!TextUtils.isEmpty(title)) {
|
||||
// mTvBaseTitle.setText(title);
|
||||
// }
|
||||
}
|
||||
})
|
||||
.createAgentWeb()
|
||||
.ready()
|
||||
.go("https://www.xzszwhy.cn/publish/video/2022/1/e48729cd-3235-44e7-8d2d-3153a597633a.html");
|
||||
.go(url);
|
||||
}
|
||||
|
||||
|
||||
@ -83,6 +85,29 @@ public class WebViewActivity extends BaseActivity {
|
||||
super.onPause();
|
||||
}
|
||||
|
||||
public class OnJsInterface {
|
||||
|
||||
@JavascriptInterface
|
||||
public void invokeNative(String method) {
|
||||
if ("back".equals(method)) {
|
||||
setResult(RESULT_OK);
|
||||
finish();
|
||||
} else if ("webBack".equals(method)) {
|
||||
if (!mWebView.back()) {
|
||||
setResult(RESULT_OK);
|
||||
finish();
|
||||
}
|
||||
} else if ("toast".equals(method)) {
|
||||
ToastUtils.show("");
|
||||
}
|
||||
}
|
||||
|
||||
@JavascriptInterface
|
||||
public void onError() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
|
@ -0,0 +1,218 @@
|
||||
package com.tenlionsoft.oamodule.activity.oaflow;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.text.TextUtils;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.EditText;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.hjq.toast.ToastUtils;
|
||||
import com.scwang.smart.refresh.layout.SmartRefreshLayout;
|
||||
import com.tenlionsoft.baselib.constant.PathConfig;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.BaseUrlApi;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.RetrofitManager;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
|
||||
import com.tenlionsoft.baselib.core.widget.views.CustomStateView;
|
||||
import com.tenlionsoft.baselib.utils.ExceptionHandler;
|
||||
import com.tenlionsoft.baselib.utils.LogUtils;
|
||||
import com.tenlionsoft.baselib.utils.UserLgUtils;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
import com.tenlionsoft.oamodule.adapter.ApplyOaFlowAdapter;
|
||||
import com.tenlionsoft.oamodule.beans.OaFlowApplyBean;
|
||||
import com.tenlionsoft.oamodule.net.OAApi;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import io.reactivex.rxjava3.annotations.NonNull;
|
||||
import io.reactivex.rxjava3.core.Observer;
|
||||
import io.reactivex.rxjava3.disposables.Disposable;
|
||||
|
||||
/**
|
||||
* 作者: Adam
|
||||
* 日期: 2022年05月16日16:45:16
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述: 发起OA流程
|
||||
*/
|
||||
@Route(path = PathConfig.PATH_MODULE_OA_ACTIVITY_OAFLOW_APPLY_FLOW)
|
||||
public class ApplyOaFlowActivity extends BaseActivity {
|
||||
|
||||
|
||||
@BindView(R2.id.et_base_search_cancel)
|
||||
EditText mEtBaseSearchCancel;
|
||||
@BindView(R2.id.tv_base_search_cancel)
|
||||
TextView mTvBaseSearchCancel;
|
||||
@BindView(R2.id.ll_base_search_cancel)
|
||||
LinearLayout mLlBaseSearchCancel;
|
||||
@BindView(R2.id.rlv_content)
|
||||
RecyclerView mRlvContent;
|
||||
@BindView(R2.id.srl_content)
|
||||
SmartRefreshLayout mSrlContent;
|
||||
@BindView(R2.id.csv_state)
|
||||
CustomStateView mCsvState;
|
||||
|
||||
private List<OaFlowApplyBean.RowsBean> mDatas;
|
||||
private ApplyOaFlowAdapter mAdapter;
|
||||
private int mCurrentPage = 1;
|
||||
private String mKeywords = "";
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
return R.layout.activity_apply_oa_flow;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
ButterKnife.bind(this);
|
||||
mTvBaseTitle.setText("发起流程");
|
||||
mSrlContent.setOnRefreshListener(v -> doRefresh());
|
||||
mSrlContent.setOnLoadMoreListener(v -> doLoadMore());
|
||||
refreshView(STATE_LOAD_SUCCESS);
|
||||
mCsvState.setState(CustomStateView.STATE_LOAD);
|
||||
mDatas = new ArrayList<>();
|
||||
mAdapter = new ApplyOaFlowAdapter(mActivity, mDatas);
|
||||
mRlvContent.setLayoutManager(new LinearLayoutManager(mActivity));
|
||||
mRlvContent.setAdapter(mAdapter);
|
||||
mAdapter.addOnItemClickListener(b -> {
|
||||
// {processDefinitionId} {formCode} {formVersion}
|
||||
String url = String.format(mActivity.getResources()
|
||||
.getString(R.string.apply_flow),
|
||||
b.getProcessDefinitionId(),
|
||||
b.getFormCode(),
|
||||
b.getFormVersion() + "",
|
||||
UserLgUtils.getToken());
|
||||
String path = BaseUrlApi.BASE_OA + url;
|
||||
LogUtils.e(path);
|
||||
ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_WEB)
|
||||
.withString("title", b.getName())
|
||||
.withString("url", path)
|
||||
.navigation(mActivity, 12);
|
||||
});
|
||||
doRefresh();
|
||||
mEtBaseSearchCancel.setOnEditorActionListener((v, actionId, event) -> {
|
||||
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
|
||||
hideSoftKeyboard();
|
||||
mEtBaseSearchCancel.clearFocus();
|
||||
mKeywords = v.getText().toString();
|
||||
doRefresh();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
mTvBaseSearchCancel.setOnClickListener(v -> {
|
||||
mEtBaseSearchCancel.setText("");
|
||||
mEtBaseSearchCancel.clearFocus();
|
||||
mKeywords = "";
|
||||
doRefresh();
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void doLoadMore() {
|
||||
getOaFlowList(mCurrentPage);
|
||||
}
|
||||
|
||||
private void doRefresh() {
|
||||
mDatas.clear();
|
||||
mAdapter.setData(mDatas);
|
||||
getOaFlowList(1);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, @Nullable @org.jetbrains.annotations.Nullable Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
if (RESULT_OK == resultCode) {
|
||||
if (requestCode == 12) {
|
||||
doRefresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void getOaFlowList(int currentPage) {
|
||||
mCurrentPage = currentPage;
|
||||
RetrofitManager.getInstance()
|
||||
.create(OAApi.class)
|
||||
.getOaFLowList(mKeywords, mCurrentPage + "")
|
||||
.compose(RxTransformer.getTransformer())
|
||||
.subscribe(new Observer<OaFlowApplyBean>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull OaFlowApplyBean listBean) {
|
||||
if (listBean.getRows() != null && listBean.getRows().size() > 0) {
|
||||
++mCurrentPage;
|
||||
if (currentPage == 1) {
|
||||
mDatas.clear();
|
||||
mDatas.addAll(listBean.getRows());
|
||||
} else {
|
||||
mDatas.addAll(listBean.getRows());
|
||||
}
|
||||
mCsvState.setState(CustomStateView.STATE_SUCCESS);
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mSrlContent.finishRefresh();
|
||||
if (mDatas.size() >= listBean.getTotal()) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(false);
|
||||
}
|
||||
} else {
|
||||
mSrlContent.finishRefresh();
|
||||
mSrlContent.finishLoadMore();
|
||||
if (currentPage > 1) {
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
if (TextUtils.isEmpty(mKeywords)) {
|
||||
//无数据
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
} else {
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
ToastUtils.show("未查询到相关内容");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.finishRefresh();
|
||||
ExceptionHandler.handleException(e);
|
||||
mCsvState.setState(CustomStateView.STATE_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doSearchByTitle() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void clearSearch() {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
package com.tenlionsoft.oamodule.activity.oaflow;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.tenlionsoft.baselib.constant.PathConfig;
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
|
||||
/**
|
||||
* 作者: Adam
|
||||
* 日期: 2022年05月16日16:34:14
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述: 我的已办
|
||||
*/
|
||||
@Route(path = PathConfig.PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_DONE)
|
||||
public class MineDoneActivity extends BaseActivity {
|
||||
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
return R.layout.activity_mine_done;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doSearchByTitle() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void clearSearch() {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,339 @@
|
||||
package com.tenlionsoft.oamodule.activity.oaflow;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.text.TextUtils;
|
||||
import android.view.View;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.RadioButton;
|
||||
import android.widget.RadioGroup;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.gyf.immersionbar.ImmersionBar;
|
||||
import com.hjq.toast.ToastUtils;
|
||||
import com.scwang.smart.refresh.layout.SmartRefreshLayout;
|
||||
import com.tenlionsoft.baselib.constant.PathConfig;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.RetrofitManager;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
|
||||
import com.tenlionsoft.baselib.core.widget.views.CustomStateView;
|
||||
import com.tenlionsoft.baselib.utils.ExceptionHandler;
|
||||
import com.tenlionsoft.baselib.utils.LogUtils;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
import com.tenlionsoft.oamodule.adapter.MineReadAdapter;
|
||||
import com.tenlionsoft.oamodule.beans.MineReadBean;
|
||||
import com.tenlionsoft.oamodule.net.OAApi;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import io.reactivex.rxjava3.annotations.NonNull;
|
||||
import io.reactivex.rxjava3.core.Observer;
|
||||
import io.reactivex.rxjava3.disposables.Disposable;
|
||||
|
||||
/**
|
||||
* 作者: Adam
|
||||
* 日期: 2022年05月16日16:36:56
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述: 我的待阅与已阅
|
||||
*/
|
||||
@Route(path = PathConfig.PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_READ)
|
||||
public class MineReadActivity extends BaseActivity {
|
||||
|
||||
|
||||
@BindView(R2.id.iv_back)
|
||||
ImageView mIvBack;
|
||||
@BindView(R2.id.rb_apply)
|
||||
RadioButton mRbApply;
|
||||
@BindView(R2.id.rb_mine)
|
||||
RadioButton mRbMine;
|
||||
@BindView(R2.id.rg_type)
|
||||
RadioGroup mRgType;
|
||||
@BindView(R2.id.rl_content_title)
|
||||
RelativeLayout mRlContentTitle;
|
||||
@BindView(R2.id.et_base_search_cancel)
|
||||
EditText mEtBaseSearchCancel;
|
||||
@BindView(R2.id.tv_base_search_cancel)
|
||||
TextView mTvBaseSearchCancel;
|
||||
@BindView(R2.id.ll_base_search_cancel)
|
||||
LinearLayout mLlBaseSearchCancel;
|
||||
@BindView(R2.id.rlv_content)
|
||||
RecyclerView mRlvContent;
|
||||
@BindView(R2.id.srl_content)
|
||||
SmartRefreshLayout mSrlContent;
|
||||
@BindView(R2.id.csv_state)
|
||||
CustomStateView mCsvState;
|
||||
|
||||
|
||||
private List<MineReadBean.RowsBean> mDatas;
|
||||
private int mType = 1;//1我的待阅 2我的已阅
|
||||
private MineReadAdapter mAdapter;
|
||||
private int mCurrentPage = 1;
|
||||
private String mKeywords = "";
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
return R.layout.activity_mine_read;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
ButterKnife.bind(this);
|
||||
mRlTitleBar.setVisibility(View.GONE);
|
||||
ImmersionBar.with(this)
|
||||
.statusBarDarkFont(true)
|
||||
.statusBarColor(R.color.gray_bg)
|
||||
.titleBar(mRlContentTitle)
|
||||
.init();
|
||||
refreshView(STATE_LOAD_SUCCESS);
|
||||
mCsvState.setState(CustomStateView.STATE_LOAD);
|
||||
initViews();
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化页面
|
||||
*/
|
||||
private void initViews() {
|
||||
mIvBack.setOnClickListener(v -> finish());
|
||||
mDatas = new ArrayList<>();
|
||||
mAdapter = new MineReadAdapter(mActivity, mDatas);
|
||||
mRlvContent.setLayoutManager(new LinearLayoutManager(mActivity));
|
||||
mRlvContent.setAdapter(mAdapter);
|
||||
mRgType.setOnCheckedChangeListener((group, checkedId) -> {
|
||||
if (checkedId == R.id.rb_apply) {
|
||||
//我发起的
|
||||
mType = 1;
|
||||
} else if (checkedId == R.id.rb_mine) {
|
||||
//我接受的
|
||||
mType = 2;
|
||||
}
|
||||
//重置搜索条件
|
||||
resetCondition();
|
||||
});
|
||||
mSrlContent.setOnRefreshListener(v -> doRefresh());
|
||||
mSrlContent.setOnLoadMoreListener(v -> doLoadMore());
|
||||
|
||||
mAdapter.addOnItemClickListener(o -> {
|
||||
|
||||
});
|
||||
doRefresh();
|
||||
|
||||
mEtBaseSearchCancel.setOnEditorActionListener((v, actionId, event) -> {
|
||||
LogUtils.e("搜索==" + actionId);
|
||||
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
|
||||
hideSoftKeyboard();
|
||||
mEtBaseSearchCancel.clearFocus();
|
||||
mKeywords = v.getText().toString();
|
||||
doRefresh();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
mTvBaseSearchCancel.setOnClickListener(v -> {
|
||||
mEtBaseSearchCancel.setText("");
|
||||
mEtBaseSearchCancel.clearFocus();
|
||||
mKeywords = "";
|
||||
doRefresh();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private void resetCondition() {
|
||||
mEtBaseSearchCancel.setText("");
|
||||
mDatas.clear();
|
||||
mCsvState.setState(CustomStateView.STATE_LOAD);
|
||||
mAdapter.setData(mDatas);
|
||||
doRefresh();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 加载更多
|
||||
*/
|
||||
private void doLoadMore() {
|
||||
if (mType == 1) {
|
||||
getMineUnReadList(mCurrentPage);
|
||||
} else {
|
||||
getMineReadList(mCurrentPage);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 刷新
|
||||
*/
|
||||
private void doRefresh() {
|
||||
mDatas.clear();
|
||||
mAdapter.setData(mDatas);
|
||||
if (mType == 1) {
|
||||
getMineUnReadList(1);
|
||||
} else {
|
||||
getMineReadList(1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void getMineUnReadList(int currentPage) {
|
||||
mCurrentPage = currentPage;
|
||||
RetrofitManager.getInstance()
|
||||
.create(OAApi.class)
|
||||
.getMineUnReadList(mKeywords, mCurrentPage + "")
|
||||
.compose(RxTransformer.getTransformer())
|
||||
.subscribe(new Observer<MineReadBean>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull MineReadBean listBean) {
|
||||
if (listBean.getRows() != null && listBean.getRows().size() > 0) {
|
||||
++mCurrentPage;
|
||||
if (currentPage == 1) {
|
||||
mDatas.clear();
|
||||
mDatas.addAll(listBean.getRows());
|
||||
} else {
|
||||
mDatas.addAll(listBean.getRows());
|
||||
}
|
||||
mCsvState.setState(CustomStateView.STATE_SUCCESS);
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mSrlContent.finishRefresh();
|
||||
if (mDatas.size() >= listBean.getTotal()) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(false);
|
||||
}
|
||||
} else {
|
||||
mSrlContent.finishRefresh();
|
||||
mSrlContent.finishLoadMore();
|
||||
if (currentPage > 1) {
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
if (TextUtils.isEmpty(mKeywords)) {
|
||||
//无数据
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
} else {
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
ToastUtils.show("未查询到相关内容");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.finishRefresh();
|
||||
ExceptionHandler.handleException(e);
|
||||
mCsvState.setState(CustomStateView.STATE_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取被督办的列表
|
||||
*/
|
||||
private void getMineReadList(int currentPage) {
|
||||
mCurrentPage = currentPage;
|
||||
RetrofitManager.getInstance()
|
||||
.create(OAApi.class)
|
||||
.getMineReadList(mKeywords, mCurrentPage + "")
|
||||
.compose(RxTransformer.getTransformer())
|
||||
.subscribe(new Observer<MineReadBean>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull MineReadBean listBean) {
|
||||
if (listBean.getRows() != null && listBean.getRows().size() > 0) {
|
||||
++mCurrentPage;
|
||||
if (currentPage == 1) {
|
||||
mDatas.clear();
|
||||
mDatas.addAll(listBean.getRows());
|
||||
} else {
|
||||
mDatas.addAll(listBean.getRows());
|
||||
}
|
||||
mCsvState.setState(CustomStateView.STATE_LOAD);
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mSrlContent.finishRefresh();
|
||||
if (mDatas.size() >= listBean.getTotal()) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(false);
|
||||
}
|
||||
} else {
|
||||
mSrlContent.finishRefresh();
|
||||
mSrlContent.finishLoadMore();
|
||||
if (currentPage > 1) {
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
if (TextUtils.isEmpty(mKeywords)) {
|
||||
//无数据
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
} else {
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
ToastUtils.show("未查询到相关内容");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.finishRefresh();
|
||||
ExceptionHandler.handleException(e);
|
||||
mCsvState.setState(CustomStateView.STATE_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, @Nullable @org.jetbrains.annotations.Nullable Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
if (resultCode == RESULT_OK) {
|
||||
if (requestCode == 12) {
|
||||
doRefresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doSearchByTitle() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void clearSearch() {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,374 @@
|
||||
package com.tenlionsoft.oamodule.activity.oaflow;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.text.TextUtils;
|
||||
import android.view.View;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.RadioButton;
|
||||
import android.widget.RadioGroup;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.gyf.immersionbar.ImmersionBar;
|
||||
import com.hjq.toast.ToastUtils;
|
||||
import com.scwang.smart.refresh.layout.SmartRefreshLayout;
|
||||
import com.tenlionsoft.baselib.constant.PathConfig;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.BaseUrlApi;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.RetrofitManager;
|
||||
import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
|
||||
import com.tenlionsoft.baselib.core.widget.views.CustomStateView;
|
||||
import com.tenlionsoft.baselib.utils.ExceptionHandler;
|
||||
import com.tenlionsoft.baselib.utils.LogUtils;
|
||||
import com.tenlionsoft.baselib.utils.UserLgUtils;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
import com.tenlionsoft.oamodule.adapter.MineTodoAdapter;
|
||||
import com.tenlionsoft.oamodule.beans.MineDoneBean;
|
||||
import com.tenlionsoft.oamodule.beans.MineTodoBean;
|
||||
import com.tenlionsoft.oamodule.net.OAApi;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import io.reactivex.rxjava3.annotations.NonNull;
|
||||
import io.reactivex.rxjava3.core.Observer;
|
||||
import io.reactivex.rxjava3.disposables.Disposable;
|
||||
|
||||
/**
|
||||
* 作者: Adam
|
||||
* 日期: 2022年05月16日16:35:05
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述: 我的待办
|
||||
*/
|
||||
@Route(path = PathConfig.PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_TODO)
|
||||
public class MineTodoActivity extends BaseActivity {
|
||||
|
||||
|
||||
@BindView(R2.id.iv_back)
|
||||
ImageView mIvBack;
|
||||
@BindView(R2.id.rb_apply)
|
||||
RadioButton mRbApply;
|
||||
@BindView(R2.id.rb_mine)
|
||||
RadioButton mRbMine;
|
||||
@BindView(R2.id.rg_type)
|
||||
RadioGroup mRgType;
|
||||
@BindView(R2.id.rl_content_title)
|
||||
RelativeLayout mRlContentTitle;
|
||||
@BindView(R2.id.et_base_search_cancel)
|
||||
EditText mEtBaseSearchCancel;
|
||||
@BindView(R2.id.tv_base_search_cancel)
|
||||
TextView mTvBaseSearchCancel;
|
||||
@BindView(R2.id.ll_base_search_cancel)
|
||||
LinearLayout mLlBaseSearchCancel;
|
||||
@BindView(R2.id.rlv_content)
|
||||
RecyclerView mRlvContent;
|
||||
@BindView(R2.id.srl_content)
|
||||
SmartRefreshLayout mSrlContent;
|
||||
@BindView(R2.id.csv_state)
|
||||
CustomStateView mCsvState;
|
||||
private List<Object> mDatas;
|
||||
private int mType = 1;//1我的待办 2我的已办
|
||||
private MineTodoAdapter mAdapter;
|
||||
private int mCurrentPage = 1;
|
||||
private String mKeywords = "";
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
return R.layout.activity_mine_ucoming;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
ButterKnife.bind(this);
|
||||
mRlTitleBar.setVisibility(View.GONE);
|
||||
ImmersionBar.with(this)
|
||||
.statusBarDarkFont(true)
|
||||
.statusBarColor(R.color.gray_bg)
|
||||
.titleBar(mRlContentTitle)
|
||||
.init();
|
||||
refreshView(STATE_LOAD_SUCCESS);
|
||||
mCsvState.setState(CustomStateView.STATE_LOAD);
|
||||
initViews();
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化页面
|
||||
*/
|
||||
private void initViews() {
|
||||
mIvBack.setOnClickListener(v -> finish());
|
||||
mDatas = new ArrayList<>();
|
||||
mAdapter = new MineTodoAdapter(mActivity, mDatas);
|
||||
mRlvContent.setLayoutManager(new LinearLayoutManager(mActivity));
|
||||
mRlvContent.setAdapter(mAdapter);
|
||||
mRgType.setOnCheckedChangeListener((group, checkedId) -> {
|
||||
if (checkedId == R.id.rb_apply) {
|
||||
//我待办
|
||||
mType = 1;
|
||||
} else if (checkedId == R.id.rb_mine) {
|
||||
//我已办
|
||||
mType = 2;
|
||||
}
|
||||
//重置搜索条件
|
||||
resetCondition();
|
||||
});
|
||||
mSrlContent.setOnRefreshListener(v -> doRefresh());
|
||||
mSrlContent.setOnLoadMoreListener(v -> doLoadMore());
|
||||
|
||||
mAdapter.addOnItemClickListener(o -> {
|
||||
String path = "";
|
||||
String title = "";
|
||||
if (o instanceof MineTodoBean.RowsBean) {
|
||||
//我的待办
|
||||
// <!-- {taskId} {formCode} {formVersion} {isNeedClaim}-->
|
||||
MineTodoBean.RowsBean b = (MineTodoBean.RowsBean) o;
|
||||
String url = String.format(mActivity.getResources()
|
||||
.getString(R.string.mine_todo),
|
||||
b.getTaskId(),
|
||||
b.getFormCode(),
|
||||
b.getFormVersion() + "",
|
||||
b.getIsNeedClaim() + "",
|
||||
UserLgUtils.getToken(),
|
||||
b.getReportUid());
|
||||
path = BaseUrlApi.BASE_OA + url;
|
||||
title = b.getTaskName();
|
||||
} else if (o instanceof MineDoneBean.RowsBean) {
|
||||
//我的已办
|
||||
// <!-- {formCode} {formVersion} -->
|
||||
MineDoneBean.RowsBean b = (MineDoneBean.RowsBean) o;
|
||||
String url = String.format(mActivity.getResources()
|
||||
.getString(R.string.mine_todo_detail),
|
||||
b.getFormCode(),
|
||||
b.getFormVersion() + "",
|
||||
UserLgUtils.getToken(),
|
||||
b.getReportUid());
|
||||
path = BaseUrlApi.BASE_OA + url;
|
||||
title = b.getTaskName();
|
||||
}
|
||||
ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_WEB)
|
||||
.withString("title", title)
|
||||
.withString("url", path)
|
||||
.navigation(mActivity, 12);
|
||||
});
|
||||
doRefresh();
|
||||
|
||||
mEtBaseSearchCancel.setOnEditorActionListener((v, actionId, event) -> {
|
||||
LogUtils.e("搜索==" + actionId);
|
||||
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
|
||||
hideSoftKeyboard();
|
||||
mEtBaseSearchCancel.clearFocus();
|
||||
mKeywords = v.getText().toString();
|
||||
doRefresh();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
mTvBaseSearchCancel.setOnClickListener(v -> {
|
||||
mEtBaseSearchCancel.setText("");
|
||||
mEtBaseSearchCancel.clearFocus();
|
||||
mKeywords = "";
|
||||
doRefresh();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private void resetCondition() {
|
||||
mEtBaseSearchCancel.setText("");
|
||||
mDatas.clear();
|
||||
mCsvState.setState(CustomStateView.STATE_LOAD);
|
||||
mAdapter.setData(mDatas);
|
||||
doRefresh();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 加载更多
|
||||
*/
|
||||
private void doLoadMore() {
|
||||
if (mType == 1) {
|
||||
getMineTodoList(mCurrentPage);
|
||||
} else {
|
||||
getMineDoneList(mCurrentPage);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 刷新
|
||||
*/
|
||||
private void doRefresh() {
|
||||
mDatas.clear();
|
||||
mAdapter.setData(mDatas);
|
||||
if (mType == 1) {
|
||||
getMineTodoList(1);
|
||||
} else {
|
||||
getMineDoneList(1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void getMineTodoList(int currentPage) {
|
||||
mCurrentPage = currentPage;
|
||||
RetrofitManager.getInstance()
|
||||
.create(OAApi.class)
|
||||
.getMineTodoList(mKeywords, mCurrentPage + "")
|
||||
.compose(RxTransformer.getTransformer())
|
||||
.subscribe(new Observer<MineTodoBean>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull MineTodoBean listBean) {
|
||||
if (listBean.getRows() != null && listBean.getRows().size() > 0) {
|
||||
++mCurrentPage;
|
||||
if (currentPage == 1) {
|
||||
mDatas.clear();
|
||||
mDatas.addAll(listBean.getRows());
|
||||
} else {
|
||||
mDatas.addAll(listBean.getRows());
|
||||
}
|
||||
mCsvState.setState(CustomStateView.STATE_SUCCESS);
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mSrlContent.finishRefresh();
|
||||
if (mDatas.size() >= listBean.getTotal()) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(false);
|
||||
}
|
||||
} else {
|
||||
mSrlContent.finishRefresh();
|
||||
mSrlContent.finishLoadMore();
|
||||
if (currentPage > 1) {
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
if (TextUtils.isEmpty(mKeywords)) {
|
||||
//无数据
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
} else {
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
ToastUtils.show("未查询到相关内容");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.finishRefresh();
|
||||
ExceptionHandler.handleException(e);
|
||||
mCsvState.setState(CustomStateView.STATE_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取被督办的列表
|
||||
*/
|
||||
private void getMineDoneList(int currentPage) {
|
||||
mCurrentPage = currentPage;
|
||||
RetrofitManager.getInstance()
|
||||
.create(OAApi.class)
|
||||
.getMineDoneList(mKeywords, mCurrentPage + "")
|
||||
.compose(RxTransformer.getTransformer())
|
||||
.subscribe(new Observer<MineDoneBean>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull MineDoneBean listBean) {
|
||||
if (listBean.getRows() != null && listBean.getRows().size() > 0) {
|
||||
++mCurrentPage;
|
||||
if (currentPage == 1) {
|
||||
mDatas.clear();
|
||||
mDatas.addAll(listBean.getRows());
|
||||
} else {
|
||||
mDatas.addAll(listBean.getRows());
|
||||
}
|
||||
mCsvState.setState(CustomStateView.STATE_SUCCESS);
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mSrlContent.finishRefresh();
|
||||
if (mDatas.size() >= listBean.getTotal()) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.setNoMoreData(false);
|
||||
}
|
||||
} else {
|
||||
mSrlContent.finishRefresh();
|
||||
mSrlContent.finishLoadMore();
|
||||
if (currentPage > 1) {
|
||||
mSrlContent.setNoMoreData(true);
|
||||
} else {
|
||||
if (TextUtils.isEmpty(mKeywords)) {
|
||||
//无数据
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
} else {
|
||||
mCsvState.setState(CustomStateView.STATE_EMPTY);
|
||||
ToastUtils.show("未查询到相关内容");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
mSrlContent.finishLoadMore();
|
||||
mSrlContent.finishRefresh();
|
||||
ExceptionHandler.handleException(e);
|
||||
mCsvState.setState(CustomStateView.STATE_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, @Nullable @org.jetbrains.annotations.Nullable Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
if (resultCode == RESULT_OK) {
|
||||
if (requestCode == 12) {
|
||||
doRefresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doSearchByTitle() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void clearSearch() {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package com.tenlionsoft.oamodule.activity.oaflow;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
|
||||
/**
|
||||
* 作者: Adam
|
||||
* 日期: 2022年05月16日16:38:32
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述: 我的待阅
|
||||
*/
|
||||
public class MineUnreadActivity extends BaseActivity {
|
||||
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
return R.layout.activity_mine_unread;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doSearchByTitle() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void clearSearch() {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.tenlionsoft.oamodule.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseRecyclerAdapter;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.beans.OaFlowApplyBean;
|
||||
import com.tenlionsoft.oamodule.holder.ApplyOaFlowHolder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/16 - 16:53
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class ApplyOaFlowAdapter extends BaseRecyclerAdapter<OaFlowApplyBean.RowsBean, ApplyOaFlowHolder> {
|
||||
|
||||
public ApplyOaFlowAdapter(Context ctx, List<OaFlowApplyBean.RowsBean> list) {
|
||||
super(ctx, list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApplyOaFlowHolder createHolder(ViewGroup parent, int viewType) {
|
||||
View itemView = LayoutInflater.from(mContext).inflate(R.layout.item_apply_oa_flow, parent, false);
|
||||
return new ApplyOaFlowHolder(itemView);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindHolder(ApplyOaFlowHolder h, int i) {
|
||||
OaFlowApplyBean.RowsBean b = mData.get(i);
|
||||
h.mTvName.setText(b.getName());
|
||||
}
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
package com.tenlionsoft.oamodule.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Typeface;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseRecyclerAdapter;
|
||||
import com.tenlionsoft.baselib.utils.UIUtil;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.beans.MineReadBean;
|
||||
import com.tenlionsoft.oamodule.holder.MineReadHolder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/16 - 17:20
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class MineReadAdapter extends BaseRecyclerAdapter<MineReadBean.RowsBean, MineReadHolder> {
|
||||
public MineReadAdapter(Context ctx, List<MineReadBean.RowsBean> list) {
|
||||
super(ctx, list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MineReadHolder createHolder(ViewGroup parent, int viewType) {
|
||||
View itemView = LayoutInflater.from(mContext).inflate(R.layout.item_mine_read, parent, false);
|
||||
return new MineReadHolder(itemView);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindHolder(MineReadHolder h, int i) {
|
||||
MineReadBean.RowsBean b = mData.get(i);
|
||||
h.mTvTitle.setText(b.getMainTitle());
|
||||
h.mTvUser.setText(b.getCreatorName());
|
||||
h.mTvTime.setText(b.getGmtCreate());
|
||||
if (b.getIsRead() == 1) {
|
||||
h.mTvTitle.setTextColor(Color.GRAY);
|
||||
h.mTvTitle.setTypeface(Typeface.DEFAULT, Typeface.NORMAL);
|
||||
} else {
|
||||
h.mTvTitle.setTextColor(Color.BLACK);
|
||||
UIUtil.setTextBold(h.mTvTitle);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,54 @@
|
||||
package com.tenlionsoft.oamodule.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseRecyclerAdapter;
|
||||
import com.tenlionsoft.baselib.utils.UIUtil;
|
||||
import com.tenlionsoft.oamodule.R;
|
||||
import com.tenlionsoft.oamodule.beans.MineDoneBean;
|
||||
import com.tenlionsoft.oamodule.beans.MineTodoBean;
|
||||
import com.tenlionsoft.oamodule.holder.MineTodoHolder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/17 - 10:04
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class MineTodoAdapter extends BaseRecyclerAdapter<Object, MineTodoHolder> {
|
||||
|
||||
public MineTodoAdapter(Context ctx, List<Object> list) {
|
||||
super(ctx, list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MineTodoHolder createHolder(ViewGroup parent, int viewType) {
|
||||
View itemView = LayoutInflater.from(mContext).inflate(R.layout.item_todo, parent, false);
|
||||
return new MineTodoHolder(itemView);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindHolder(MineTodoHolder h, int i) {
|
||||
Object o = mData.get(i);
|
||||
if (o instanceof MineTodoBean.RowsBean) {
|
||||
MineTodoBean.RowsBean b = (MineTodoBean.RowsBean) o;
|
||||
h.mTvTime.setText(b.getProcessStartTime());
|
||||
h.mTvTitle.setText(b.getMainTitle());
|
||||
h.mTvTitle.setTextColor(Color.BLACK);
|
||||
UIUtil.setTextBold(h.mTvTitle);
|
||||
h.mTvName.setText(b.getTaskName());
|
||||
} else if (o instanceof MineDoneBean.RowsBean) {
|
||||
MineDoneBean.RowsBean b = (MineDoneBean.RowsBean) o;
|
||||
h.mTvTitle.setTextColor(Color.GRAY);
|
||||
h.mTvTime.setText(b.getProcessStartTime());
|
||||
h.mTvTitle.setText(b.getMainTitle());
|
||||
h.mTvName.setText(b.getTaskName());
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,205 @@
|
||||
package com.tenlionsoft.oamodule.beans;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/17 - 10:03
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class MineDoneBean {
|
||||
|
||||
private int page;
|
||||
private int total;
|
||||
private List<RowsBean> rows;
|
||||
|
||||
public int getPage() {
|
||||
return page;
|
||||
}
|
||||
|
||||
public void setPage(int page) {
|
||||
this.page = page;
|
||||
}
|
||||
|
||||
public int getTotal() {
|
||||
return total;
|
||||
}
|
||||
|
||||
public void setTotal(int total) {
|
||||
this.total = total;
|
||||
}
|
||||
|
||||
public List<RowsBean> getRows() {
|
||||
return rows;
|
||||
}
|
||||
|
||||
public void setRows(List<RowsBean> rows) {
|
||||
this.rows = rows;
|
||||
}
|
||||
|
||||
public static class RowsBean {
|
||||
private String endTime;
|
||||
private String formCode;
|
||||
private String formKey;
|
||||
private int formVersion;
|
||||
private String mainTitle;
|
||||
private String processEndTime;
|
||||
private String processInstanceId;
|
||||
private String processName;
|
||||
private String processStartTime;
|
||||
private String reportUid;
|
||||
private String startTime;
|
||||
private String startUserDepartmentIds;
|
||||
private String startUserDepartmentNames;
|
||||
private String startUserId;
|
||||
private String startUserName;
|
||||
private String taskDescription;
|
||||
private String taskId;
|
||||
private String taskName;
|
||||
|
||||
public String getEndTime() {
|
||||
return endTime;
|
||||
}
|
||||
|
||||
public void setEndTime(String endTime) {
|
||||
this.endTime = endTime;
|
||||
}
|
||||
|
||||
public String getFormCode() {
|
||||
return formCode;
|
||||
}
|
||||
|
||||
public void setFormCode(String formCode) {
|
||||
this.formCode = formCode;
|
||||
}
|
||||
|
||||
public String getFormKey() {
|
||||
return formKey;
|
||||
}
|
||||
|
||||
public void setFormKey(String formKey) {
|
||||
this.formKey = formKey;
|
||||
}
|
||||
|
||||
public int getFormVersion() {
|
||||
return formVersion;
|
||||
}
|
||||
|
||||
public void setFormVersion(int formVersion) {
|
||||
this.formVersion = formVersion;
|
||||
}
|
||||
|
||||
public String getMainTitle() {
|
||||
return mainTitle;
|
||||
}
|
||||
|
||||
public void setMainTitle(String mainTitle) {
|
||||
this.mainTitle = mainTitle;
|
||||
}
|
||||
|
||||
public String getProcessEndTime() {
|
||||
return processEndTime;
|
||||
}
|
||||
|
||||
public void setProcessEndTime(String processEndTime) {
|
||||
this.processEndTime = processEndTime;
|
||||
}
|
||||
|
||||
public String getProcessInstanceId() {
|
||||
return processInstanceId;
|
||||
}
|
||||
|
||||
public void setProcessInstanceId(String processInstanceId) {
|
||||
this.processInstanceId = processInstanceId;
|
||||
}
|
||||
|
||||
public String getProcessName() {
|
||||
return processName;
|
||||
}
|
||||
|
||||
public void setProcessName(String processName) {
|
||||
this.processName = processName;
|
||||
}
|
||||
|
||||
public String getProcessStartTime() {
|
||||
return processStartTime;
|
||||
}
|
||||
|
||||
public void setProcessStartTime(String processStartTime) {
|
||||
this.processStartTime = processStartTime;
|
||||
}
|
||||
|
||||
public String getReportUid() {
|
||||
return reportUid;
|
||||
}
|
||||
|
||||
public void setReportUid(String reportUid) {
|
||||
this.reportUid = reportUid;
|
||||
}
|
||||
|
||||
public String getStartTime() {
|
||||
return startTime;
|
||||
}
|
||||
|
||||
public void setStartTime(String startTime) {
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public String getStartUserDepartmentIds() {
|
||||
return startUserDepartmentIds;
|
||||
}
|
||||
|
||||
public void setStartUserDepartmentIds(String startUserDepartmentIds) {
|
||||
this.startUserDepartmentIds = startUserDepartmentIds;
|
||||
}
|
||||
|
||||
public String getStartUserDepartmentNames() {
|
||||
return startUserDepartmentNames;
|
||||
}
|
||||
|
||||
public void setStartUserDepartmentNames(String startUserDepartmentNames) {
|
||||
this.startUserDepartmentNames = startUserDepartmentNames;
|
||||
}
|
||||
|
||||
public String getStartUserId() {
|
||||
return startUserId;
|
||||
}
|
||||
|
||||
public void setStartUserId(String startUserId) {
|
||||
this.startUserId = startUserId;
|
||||
}
|
||||
|
||||
public String getStartUserName() {
|
||||
return startUserName;
|
||||
}
|
||||
|
||||
public void setStartUserName(String startUserName) {
|
||||
this.startUserName = startUserName;
|
||||
}
|
||||
|
||||
public String getTaskDescription() {
|
||||
return taskDescription;
|
||||
}
|
||||
|
||||
public void setTaskDescription(String taskDescription) {
|
||||
this.taskDescription = taskDescription;
|
||||
}
|
||||
|
||||
public String getTaskId() {
|
||||
return taskId;
|
||||
}
|
||||
|
||||
public void setTaskId(String taskId) {
|
||||
this.taskId = taskId;
|
||||
}
|
||||
|
||||
public String getTaskName() {
|
||||
return taskName;
|
||||
}
|
||||
|
||||
public void setTaskName(String taskName) {
|
||||
this.taskName = taskName;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,161 @@
|
||||
package com.tenlionsoft.oamodule.beans;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/16 - 17:09
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述: 我的待阅与以阅
|
||||
*/
|
||||
public class MineReadBean {
|
||||
|
||||
private int page;
|
||||
private int total;
|
||||
private List<RowsBean> rows;
|
||||
|
||||
public int getPage() {
|
||||
return page;
|
||||
}
|
||||
|
||||
public void setPage(int page) {
|
||||
this.page = page;
|
||||
}
|
||||
|
||||
public int getTotal() {
|
||||
return total;
|
||||
}
|
||||
|
||||
public void setTotal(int total) {
|
||||
this.total = total;
|
||||
}
|
||||
|
||||
public List<RowsBean> getRows() {
|
||||
return rows;
|
||||
}
|
||||
|
||||
public void setRows(List<RowsBean> rows) {
|
||||
this.rows = rows;
|
||||
}
|
||||
|
||||
public static class RowsBean {
|
||||
private String ccId;
|
||||
private String creator;
|
||||
private String creatorName;
|
||||
private String formCode;
|
||||
private int formVersion;
|
||||
private String gmtCreate;
|
||||
private String gmtModified;
|
||||
private int isRead;
|
||||
private String mainTitle;
|
||||
private String processInstanceId;
|
||||
private String reportUid;
|
||||
private String userId;
|
||||
private String userName;
|
||||
|
||||
|
||||
public String getCcId() {
|
||||
return ccId;
|
||||
}
|
||||
|
||||
public void setCcId(String ccId) {
|
||||
this.ccId = ccId;
|
||||
}
|
||||
|
||||
public String getCreator() {
|
||||
return creator;
|
||||
}
|
||||
|
||||
public void setCreator(String creator) {
|
||||
this.creator = creator;
|
||||
}
|
||||
|
||||
public String getCreatorName() {
|
||||
return creatorName;
|
||||
}
|
||||
|
||||
public void setCreatorName(String creatorName) {
|
||||
this.creatorName = creatorName;
|
||||
}
|
||||
|
||||
public String getFormCode() {
|
||||
return formCode;
|
||||
}
|
||||
|
||||
public void setFormCode(String formCode) {
|
||||
this.formCode = formCode;
|
||||
}
|
||||
|
||||
public int getFormVersion() {
|
||||
return formVersion;
|
||||
}
|
||||
|
||||
public void setFormVersion(int formVersion) {
|
||||
this.formVersion = formVersion;
|
||||
}
|
||||
|
||||
public String getGmtCreate() {
|
||||
return gmtCreate;
|
||||
}
|
||||
|
||||
public void setGmtCreate(String gmtCreate) {
|
||||
this.gmtCreate = gmtCreate;
|
||||
}
|
||||
|
||||
public String getGmtModified() {
|
||||
return gmtModified;
|
||||
}
|
||||
|
||||
public void setGmtModified(String gmtModified) {
|
||||
this.gmtModified = gmtModified;
|
||||
}
|
||||
|
||||
public int getIsRead() {
|
||||
return isRead;
|
||||
}
|
||||
|
||||
public void setIsRead(int isRead) {
|
||||
this.isRead = isRead;
|
||||
}
|
||||
|
||||
public String getMainTitle() {
|
||||
return mainTitle;
|
||||
}
|
||||
|
||||
public void setMainTitle(String mainTitle) {
|
||||
this.mainTitle = mainTitle;
|
||||
}
|
||||
|
||||
public String getProcessInstanceId() {
|
||||
return processInstanceId;
|
||||
}
|
||||
|
||||
public void setProcessInstanceId(String processInstanceId) {
|
||||
this.processInstanceId = processInstanceId;
|
||||
}
|
||||
|
||||
public String getReportUid() {
|
||||
return reportUid;
|
||||
}
|
||||
|
||||
public void setReportUid(String reportUid) {
|
||||
this.reportUid = reportUid;
|
||||
}
|
||||
|
||||
public String getUserId() {
|
||||
return userId;
|
||||
}
|
||||
|
||||
public void setUserId(String userId) {
|
||||
this.userId = userId;
|
||||
}
|
||||
|
||||
public String getUserName() {
|
||||
return userName;
|
||||
}
|
||||
|
||||
public void setUserName(String userName) {
|
||||
this.userName = userName;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,223 @@
|
||||
package com.tenlionsoft.oamodule.beans;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/17 - 10:01
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class MineTodoBean {
|
||||
|
||||
private int page;
|
||||
private int total;
|
||||
private List<RowsBean> rows;
|
||||
|
||||
public int getPage() {
|
||||
return page;
|
||||
}
|
||||
|
||||
public void setPage(int page) {
|
||||
this.page = page;
|
||||
}
|
||||
|
||||
public int getTotal() {
|
||||
return total;
|
||||
}
|
||||
|
||||
public void setTotal(int total) {
|
||||
this.total = total;
|
||||
}
|
||||
|
||||
public List<RowsBean> getRows() {
|
||||
return rows;
|
||||
}
|
||||
|
||||
public void setRows(List<RowsBean> rows) {
|
||||
this.rows = rows;
|
||||
}
|
||||
|
||||
public static class RowsBean {
|
||||
private String createTime;
|
||||
private String formCode;
|
||||
private int formVersion;
|
||||
private String getFormKey;
|
||||
private int isNeedClaim;
|
||||
private String mainTitle;
|
||||
private String owner;
|
||||
private String processDefinitionId;
|
||||
private String processInstanceId;
|
||||
private String processName;
|
||||
private String processStartTime;
|
||||
private String reportUid;
|
||||
private String startUserDepartmentIds;
|
||||
private String startUserDepartmentNames;
|
||||
private String startUserId;
|
||||
private String startUserName;
|
||||
private String taskDefinitionKey;
|
||||
private String taskDescription;
|
||||
private String taskId;
|
||||
private String taskName;
|
||||
|
||||
public String getCreateTime() {
|
||||
return createTime;
|
||||
}
|
||||
|
||||
public void setCreateTime(String createTime) {
|
||||
this.createTime = createTime;
|
||||
}
|
||||
|
||||
public String getFormCode() {
|
||||
return formCode;
|
||||
}
|
||||
|
||||
public void setFormCode(String formCode) {
|
||||
this.formCode = formCode;
|
||||
}
|
||||
|
||||
public int getFormVersion() {
|
||||
return formVersion;
|
||||
}
|
||||
|
||||
public void setFormVersion(int formVersion) {
|
||||
this.formVersion = formVersion;
|
||||
}
|
||||
|
||||
public String getGetFormKey() {
|
||||
return getFormKey;
|
||||
}
|
||||
|
||||
public void setGetFormKey(String getFormKey) {
|
||||
this.getFormKey = getFormKey;
|
||||
}
|
||||
|
||||
public int getIsNeedClaim() {
|
||||
return isNeedClaim;
|
||||
}
|
||||
|
||||
public void setIsNeedClaim(int isNeedClaim) {
|
||||
this.isNeedClaim = isNeedClaim;
|
||||
}
|
||||
|
||||
public String getMainTitle() {
|
||||
return mainTitle;
|
||||
}
|
||||
|
||||
public void setMainTitle(String mainTitle) {
|
||||
this.mainTitle = mainTitle;
|
||||
}
|
||||
|
||||
public String getOwner() {
|
||||
return owner;
|
||||
}
|
||||
|
||||
public void setOwner(String owner) {
|
||||
this.owner = owner;
|
||||
}
|
||||
|
||||
public String getProcessDefinitionId() {
|
||||
return processDefinitionId;
|
||||
}
|
||||
|
||||
public void setProcessDefinitionId(String processDefinitionId) {
|
||||
this.processDefinitionId = processDefinitionId;
|
||||
}
|
||||
|
||||
public String getProcessInstanceId() {
|
||||
return processInstanceId;
|
||||
}
|
||||
|
||||
public void setProcessInstanceId(String processInstanceId) {
|
||||
this.processInstanceId = processInstanceId;
|
||||
}
|
||||
|
||||
public String getProcessName() {
|
||||
return processName;
|
||||
}
|
||||
|
||||
public void setProcessName(String processName) {
|
||||
this.processName = processName;
|
||||
}
|
||||
|
||||
public String getProcessStartTime() {
|
||||
return processStartTime;
|
||||
}
|
||||
|
||||
public void setProcessStartTime(String processStartTime) {
|
||||
this.processStartTime = processStartTime;
|
||||
}
|
||||
|
||||
public String getReportUid() {
|
||||
return reportUid;
|
||||
}
|
||||
|
||||
public void setReportUid(String reportUid) {
|
||||
this.reportUid = reportUid;
|
||||
}
|
||||
|
||||
public String getStartUserDepartmentIds() {
|
||||
return startUserDepartmentIds;
|
||||
}
|
||||
|
||||
public void setStartUserDepartmentIds(String startUserDepartmentIds) {
|
||||
this.startUserDepartmentIds = startUserDepartmentIds;
|
||||
}
|
||||
|
||||
public String getStartUserDepartmentNames() {
|
||||
return startUserDepartmentNames;
|
||||
}
|
||||
|
||||
public void setStartUserDepartmentNames(String startUserDepartmentNames) {
|
||||
this.startUserDepartmentNames = startUserDepartmentNames;
|
||||
}
|
||||
|
||||
public String getStartUserId() {
|
||||
return startUserId;
|
||||
}
|
||||
|
||||
public void setStartUserId(String startUserId) {
|
||||
this.startUserId = startUserId;
|
||||
}
|
||||
|
||||
public String getStartUserName() {
|
||||
return startUserName;
|
||||
}
|
||||
|
||||
public void setStartUserName(String startUserName) {
|
||||
this.startUserName = startUserName;
|
||||
}
|
||||
|
||||
public String getTaskDefinitionKey() {
|
||||
return taskDefinitionKey;
|
||||
}
|
||||
|
||||
public void setTaskDefinitionKey(String taskDefinitionKey) {
|
||||
this.taskDefinitionKey = taskDefinitionKey;
|
||||
}
|
||||
|
||||
public String getTaskDescription() {
|
||||
return taskDescription;
|
||||
}
|
||||
|
||||
public void setTaskDescription(String taskDescription) {
|
||||
this.taskDescription = taskDescription;
|
||||
}
|
||||
|
||||
public String getTaskId() {
|
||||
return taskId;
|
||||
}
|
||||
|
||||
public void setTaskId(String taskId) {
|
||||
this.taskId = taskId;
|
||||
}
|
||||
|
||||
public String getTaskName() {
|
||||
return taskName;
|
||||
}
|
||||
|
||||
public void setTaskName(String taskName) {
|
||||
this.taskName = taskName;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,124 @@
|
||||
package com.tenlionsoft.oamodule.beans;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/16 - 16:42
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class OaFlowApplyBean {
|
||||
|
||||
private int page;
|
||||
private int total;
|
||||
private List<RowsBean> rows;
|
||||
|
||||
public int getPage() {
|
||||
return page;
|
||||
}
|
||||
|
||||
public void setPage(int page) {
|
||||
this.page = page;
|
||||
}
|
||||
|
||||
public int getTotal() {
|
||||
return total;
|
||||
}
|
||||
|
||||
public void setTotal(int total) {
|
||||
this.total = total;
|
||||
}
|
||||
|
||||
public List<RowsBean> getRows() {
|
||||
return rows;
|
||||
}
|
||||
|
||||
public void setRows(List<RowsBean> rows) {
|
||||
this.rows = rows;
|
||||
}
|
||||
|
||||
public static class RowsBean {
|
||||
private String deploymentId;
|
||||
private String description;
|
||||
private String formCode;
|
||||
private String formKey;
|
||||
private int formVersion;
|
||||
private String id;
|
||||
private String name;
|
||||
private String processDefinitionId;
|
||||
private int version;
|
||||
|
||||
public String getDeploymentId() {
|
||||
return deploymentId;
|
||||
}
|
||||
|
||||
public void setDeploymentId(String deploymentId) {
|
||||
this.deploymentId = deploymentId;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public String getFormCode() {
|
||||
return formCode;
|
||||
}
|
||||
|
||||
public void setFormCode(String formCode) {
|
||||
this.formCode = formCode;
|
||||
}
|
||||
|
||||
public String getFormKey() {
|
||||
return formKey;
|
||||
}
|
||||
|
||||
public void setFormKey(String formKey) {
|
||||
this.formKey = formKey;
|
||||
}
|
||||
|
||||
public int getFormVersion() {
|
||||
return formVersion;
|
||||
}
|
||||
|
||||
public void setFormVersion(int formVersion) {
|
||||
this.formVersion = formVersion;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getProcessDefinitionId() {
|
||||
return processDefinitionId;
|
||||
}
|
||||
|
||||
public void setProcessDefinitionId(String processDefinitionId) {
|
||||
this.processDefinitionId = processDefinitionId;
|
||||
}
|
||||
|
||||
public int getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
public void setVersion(int version) {
|
||||
this.version = version;
|
||||
}
|
||||
}
|
||||
}
|
@ -182,7 +182,15 @@ public class OaMainFragment extends BaseFragment {
|
||||
Intent intent = new Intent(mActivity, CaptureActivity.class);
|
||||
mLauncher.launch(intent);
|
||||
});
|
||||
|
||||
mRlTodo.setOnClickListener(v -> ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_TODO)
|
||||
.navigation());//我的待办
|
||||
mRlToRead.setOnClickListener(v -> ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_OAFLOW_MINE_READ)
|
||||
.navigation());//我的待阅
|
||||
mRlSupervise.setOnClickListener(v -> ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_SUPERVISE)
|
||||
.navigation());//我的督办
|
||||
}
|
||||
|
||||
private void doRefresh() {
|
||||
@ -388,7 +396,7 @@ public class OaMainFragment extends BaseFragment {
|
||||
}.getType());
|
||||
if (depts != null && depts.size() > 0) {
|
||||
// if (mTvDept != null) {
|
||||
mTvDept.setText(depts.get(0).getDepartmentName());
|
||||
mTvDept.setText(depts.get(0).getDepartmentName());
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,26 @@
|
||||
package com.tenlionsoft.oamodule.holder;
|
||||
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseViewHolder;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import butterknife.BindView;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/16 - 16:51
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class ApplyOaFlowHolder extends BaseViewHolder {
|
||||
@BindView(R2.id.tv_name)
|
||||
public TextView mTvName;
|
||||
public ApplyOaFlowHolder(@NonNull @NotNull View itemView) {
|
||||
super(itemView);
|
||||
}
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package com.tenlionsoft.oamodule.holder;
|
||||
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseViewHolder;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import butterknife.BindView;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/16 - 17:15
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class MineReadHolder extends BaseViewHolder {
|
||||
@BindView(R2.id.tv_title)
|
||||
public TextView mTvTitle;
|
||||
@BindView(R2.id.tv_user)
|
||||
public TextView mTvUser;
|
||||
@BindView(R2.id.tv_time)
|
||||
public TextView mTvTime;
|
||||
|
||||
public MineReadHolder(@NonNull @NotNull View itemView) {
|
||||
super(itemView);
|
||||
}
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package com.tenlionsoft.oamodule.holder;
|
||||
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.tenlionsoft.baselib.core.widget.base.BaseViewHolder;
|
||||
import com.tenlionsoft.oamodule.R2;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import butterknife.BindView;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2022/5/17 - 10:00
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public class MineTodoHolder extends BaseViewHolder {
|
||||
@BindView(R2.id.tv_title)
|
||||
public TextView mTvTitle;
|
||||
@BindView(R2.id.tv_time)
|
||||
public TextView mTvTime;
|
||||
@BindView(R2.id.tv_name)
|
||||
public TextView mTvName;
|
||||
|
||||
public MineTodoHolder(@NonNull @NotNull View itemView) {
|
||||
super(itemView);
|
||||
}
|
||||
}
|
@ -26,11 +26,15 @@ import com.tenlionsoft.oamodule.beans.MeetingQrBean;
|
||||
import com.tenlionsoft.oamodule.beans.MeetingRecordListBean;
|
||||
import com.tenlionsoft.oamodule.beans.MeetingRoomBean;
|
||||
import com.tenlionsoft.oamodule.beans.MeetingRoomRecordBean;
|
||||
import com.tenlionsoft.oamodule.beans.MineDoneBean;
|
||||
import com.tenlionsoft.oamodule.beans.MineJoinMeetingListBean;
|
||||
import com.tenlionsoft.oamodule.beans.MineReadBean;
|
||||
import com.tenlionsoft.oamodule.beans.MineTodoBean;
|
||||
import com.tenlionsoft.oamodule.beans.NewsDetailBean;
|
||||
import com.tenlionsoft.oamodule.beans.NewsListBean;
|
||||
import com.tenlionsoft.oamodule.beans.NewsTypeBean;
|
||||
import com.tenlionsoft.oamodule.beans.NoticeListBean;
|
||||
import com.tenlionsoft.oamodule.beans.OaFlowApplyBean;
|
||||
import com.tenlionsoft.oamodule.beans.RoutineAcceptListBean;
|
||||
import com.tenlionsoft.oamodule.beans.RoutineBean;
|
||||
import com.tenlionsoft.oamodule.beans.RoutineListBean;
|
||||
@ -799,4 +803,43 @@ public interface OAApi {
|
||||
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
|
||||
@GET("app/categoryrelease/list")
|
||||
Observable<List<NewsTypeBean>> getNewsTypeList();
|
||||
|
||||
/*OA流程*/
|
||||
|
||||
/**
|
||||
* 获取OA流程列表
|
||||
*/
|
||||
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
|
||||
@GET("app/oa/listpage-procdef")
|
||||
Observable<OaFlowApplyBean> getOaFLowList(@Query("keywords") String key, @Query("page") String page);
|
||||
|
||||
/**
|
||||
* 我的待阅
|
||||
*/
|
||||
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
|
||||
@GET("app/oa/listpage-unread-of-mine")
|
||||
Observable<MineReadBean> getMineUnReadList(@Query("keywords") String key, @Query("page") String page);
|
||||
|
||||
/**
|
||||
* 我的已阅
|
||||
*/
|
||||
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
|
||||
@GET("app/oa/listpage-read-of-mine")
|
||||
Observable<MineReadBean> getMineReadList(@Query("keywords") String key, @Query("page") String page);
|
||||
|
||||
|
||||
/**
|
||||
* 我的待办
|
||||
*/
|
||||
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
|
||||
@GET("app/oa/listpage-task-of-mine")
|
||||
Observable<MineTodoBean> getMineTodoList(@Query("keywords") String key, @Query("page") String page);
|
||||
|
||||
/**
|
||||
* 我的已办
|
||||
*/
|
||||
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
|
||||
@GET("app/oa/listpage-history-task-of-mine")
|
||||
Observable<MineDoneBean> getMineDoneList(@Query("keywords") String key, @Query("page") String page);
|
||||
|
||||
}
|
||||
|
38
oamodule/src/main/res/layout/activity_apply_oa_flow.xml
Normal file
38
oamodule/src/main/res/layout/activity_apply_oa_flow.xml
Normal file
@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/gray_bg"
|
||||
android:orientation="vertical">
|
||||
|
||||
|
||||
<include layout="@layout/layout_base_search_cancel" />
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="5dp">
|
||||
|
||||
<com.scwang.smart.refresh.layout.SmartRefreshLayout
|
||||
android:id="@+id/srl_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rlv_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="10dp"
|
||||
android:background="@color/white"
|
||||
tools:listitem="@layout/item_routine" />
|
||||
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
|
||||
|
||||
<com.tenlionsoft.baselib.core.widget.views.CustomStateView
|
||||
android:id="@+id/csv_state"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true" />
|
||||
</RelativeLayout>
|
||||
</LinearLayout>
|
38
oamodule/src/main/res/layout/activity_mine_done.xml
Normal file
38
oamodule/src/main/res/layout/activity_mine_done.xml
Normal file
@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/gray_bg"
|
||||
android:orientation="vertical">
|
||||
|
||||
|
||||
<include layout="@layout/layout_base_search_cancel" />
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="5dp">
|
||||
|
||||
<com.scwang.smart.refresh.layout.SmartRefreshLayout
|
||||
android:id="@+id/srl_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rlv_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="10dp"
|
||||
android:background="@color/white"
|
||||
tools:listitem="@layout/item_routine" />
|
||||
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
|
||||
|
||||
<com.tenlionsoft.baselib.core.widget.views.CustomStateView
|
||||
android:id="@+id/csv_state"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true" />
|
||||
</RelativeLayout>
|
||||
</LinearLayout>
|
121
oamodule/src/main/res/layout/activity_mine_read.xml
Normal file
121
oamodule/src/main/res/layout/activity_mine_read.xml
Normal file
@ -0,0 +1,121 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/gray_bg"
|
||||
android:orientation="vertical"
|
||||
tools:context=".activity.meeting.MeetingCenterActivity">
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/rl_content_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingLeft="5dp"
|
||||
android:paddingRight="5dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_back"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:background="@drawable/ic_back_black"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:maxLength="8"
|
||||
android:paddingLeft="5dp"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:scaleType="fitXY"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="13sp"
|
||||
android:visibility="visible"
|
||||
tools:text=""
|
||||
tools:visibility="visible" />
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true"
|
||||
android:layout_centerVertical="true">
|
||||
|
||||
<RadioGroup
|
||||
android:id="@+id/rg_type"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true"
|
||||
android:orientation="horizontal">
|
||||
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rb_apply"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/switch_custom_gray_white"
|
||||
android:button="@null"
|
||||
android:checked="true"
|
||||
android:gravity="center"
|
||||
android:paddingLeft="10dp"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingRight="10dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:text="我的待阅"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rb_mine"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/switch_custom_gray_white"
|
||||
android:button="@null"
|
||||
android:gravity="center"
|
||||
android:paddingLeft="10dp"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingRight="10dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:text="我的已阅"
|
||||
android:textStyle="bold" />
|
||||
</RadioGroup>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<include layout="@layout/layout_base_search_cancel" />
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="5dp">
|
||||
|
||||
<com.scwang.smart.refresh.layout.SmartRefreshLayout
|
||||
android:id="@+id/srl_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="10dp">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rlv_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/white" />
|
||||
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
|
||||
|
||||
<com.tenlionsoft.baselib.core.widget.views.CustomStateView
|
||||
android:id="@+id/csv_state"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true" />
|
||||
</RelativeLayout>
|
||||
</LinearLayout>
|
121
oamodule/src/main/res/layout/activity_mine_ucoming.xml
Normal file
121
oamodule/src/main/res/layout/activity_mine_ucoming.xml
Normal file
@ -0,0 +1,121 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/gray_bg"
|
||||
android:orientation="vertical"
|
||||
tools:context=".activity.meeting.MeetingCenterActivity">
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/rl_content_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingLeft="5dp"
|
||||
android:paddingRight="5dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_back"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:background="@drawable/ic_back_black"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:maxLength="8"
|
||||
android:paddingLeft="5dp"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:scaleType="fitXY"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="13sp"
|
||||
android:visibility="visible"
|
||||
tools:text=""
|
||||
tools:visibility="visible" />
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true"
|
||||
android:layout_centerVertical="true">
|
||||
|
||||
<RadioGroup
|
||||
android:id="@+id/rg_type"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true"
|
||||
android:orientation="horizontal">
|
||||
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rb_apply"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/switch_custom_gray_white"
|
||||
android:button="@null"
|
||||
android:checked="true"
|
||||
android:gravity="center"
|
||||
android:paddingLeft="10dp"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingRight="10dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:text="我的待办"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rb_mine"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/switch_custom_gray_white"
|
||||
android:button="@null"
|
||||
android:gravity="center"
|
||||
android:paddingLeft="10dp"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingRight="10dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:text="我的已办"
|
||||
android:textStyle="bold" />
|
||||
</RadioGroup>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<include layout="@layout/layout_base_search_cancel" />
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="5dp">
|
||||
|
||||
<com.scwang.smart.refresh.layout.SmartRefreshLayout
|
||||
android:id="@+id/srl_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="10dp">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rlv_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/white" />
|
||||
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
|
||||
|
||||
<com.tenlionsoft.baselib.core.widget.views.CustomStateView
|
||||
android:id="@+id/csv_state"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true" />
|
||||
</RelativeLayout>
|
||||
</LinearLayout>
|
38
oamodule/src/main/res/layout/activity_mine_unread.xml
Normal file
38
oamodule/src/main/res/layout/activity_mine_unread.xml
Normal file
@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/gray_bg"
|
||||
android:orientation="vertical">
|
||||
|
||||
|
||||
<include layout="@layout/layout_base_search_cancel" />
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="5dp">
|
||||
|
||||
<com.scwang.smart.refresh.layout.SmartRefreshLayout
|
||||
android:id="@+id/srl_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rlv_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="10dp"
|
||||
android:background="@color/white"
|
||||
tools:listitem="@layout/item_routine" />
|
||||
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
|
||||
|
||||
<com.tenlionsoft.baselib.core.widget.views.CustomStateView
|
||||
android:id="@+id/csv_state"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true" />
|
||||
</RelativeLayout>
|
||||
</LinearLayout>
|
16
oamodule/src/main/res/layout/item_apply_oa_flow.xml
Normal file
16
oamodule/src/main/res/layout/item_apply_oa_flow.xml
Normal file
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_name"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="7dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/text_14"
|
||||
tools:text="签批测试流程" />
|
||||
</LinearLayout>
|
43
oamodule/src/main/res/layout/item_mine_read.xml
Normal file
43
oamodule/src/main/res/layout/item_mine_read.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:padding="5dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="2"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:textSize="@dimen/text_14"
|
||||
tools:text="发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_time"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight=".6"
|
||||
android:textSize="@dimen/text_12"
|
||||
tools:text="发布时间" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_user"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight=".4"
|
||||
android:gravity="right"
|
||||
android:textSize="@dimen/text_12"
|
||||
tools:text="发布人" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
43
oamodule/src/main/res/layout/item_todo.xml
Normal file
43
oamodule/src/main/res/layout/item_todo.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:padding="5dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="2"
|
||||
android:paddingTop="5dp"
|
||||
android:paddingBottom="5dp"
|
||||
android:textSize="@dimen/text_14"
|
||||
tools:text="发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容发布的内容" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_time"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight=".6"
|
||||
android:textSize="@dimen/text_12"
|
||||
tools:text="发布时间" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_name"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight=".4"
|
||||
android:gravity="right"
|
||||
android:textSize="@dimen/text_12"
|
||||
tools:text="发布人" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
@ -1 +1,8 @@
|
||||
<resources></resources>
|
||||
<resources>
|
||||
<!-- {processDefinitionId} {formCode} {formVersion}-->
|
||||
<string name="apply_flow">approute/oa-form-report/save/definition-id/%1$s/code/%2$s/version/%3$s?token=%4$s</string>
|
||||
<!-- {taskId} {formCode} {formVersion} {isNeedClaim}-->
|
||||
<string name="mine_todo">approute/oa-form-report/update/task-id/%1$s/code/%2$s/version/%3$s/is-need-claim/%4$s?token=%5$s&uid=%6$s</string>
|
||||
<!-- {formCode} {formVersion} -->
|
||||
<string name="mine_todo_detail">approute/oa-form-report/show/code/%1$s/version/%2$s?token=%3$s&uid=%4$s</string>
|
||||
</resources>
|
Loading…
Reference in New Issue
Block a user