添加文件预览、邮件附件展示方式修改

This commit is contained in:
adam 2022-06-15 10:37:15 +08:00
parent a5e6f8c79c
commit 647aafc47f
18 changed files with 360 additions and 245 deletions

View File

@ -2,12 +2,14 @@ package com.tenlionsoft.baselib.core.widget.base;
import android.content.Context;
import android.content.Intent;
import android.graphics.Rect;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.provider.Settings;
import android.view.LayoutInflater;
import android.view.TouchDelegate;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
@ -86,7 +88,25 @@ public abstract class BaseFragment extends Fragment {
setDataToView(mDataView);
return contentView;
}
/**
* 将view的点击区域放大
*
* @param view 需要放大的view
* @param expandTouchWidth 放大的宽度
*/
public void setTouchDelegate(final View view, final int expandTouchWidth) {
final View parentView = (View) view.getParent();
parentView.post(() -> {
final Rect rect = new Rect();
view.getHitRect(rect);
rect.top -= expandTouchWidth;
rect.bottom += expandTouchWidth;
rect.left -= expandTouchWidth;
rect.right += expandTouchWidth;
TouchDelegate touchDelegate = new TouchDelegate(rect, view);
parentView.setTouchDelegate(touchDelegate);
});
}
/**
* 设置是否显示titlebar
*/

View File

@ -363,37 +363,7 @@ public class DocumentDetailActivity extends BaseActivity {
AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(adapter);
adapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < files.size(); i++) {
AddFileBean fileBean = files.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
});
adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
} else {
ToastUtils.show("未找到文档信息");
}
@ -412,6 +382,42 @@ public class DocumentDetailActivity extends BaseActivity {
});
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void doSearchByTitle() {

View File

@ -24,7 +24,6 @@ import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.FileUtils;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.baselib.utils.UserLgUtils;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.beans.EmailDraftDetailBean;
@ -35,6 +34,7 @@ import java.util.List;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
@ -161,7 +161,7 @@ public class DraftEmailDetailActivity extends BaseActivity {
if (fileInfoBeans.size() > 0) {
mFileBeans = new ArrayList<>();
mAddFileAdapter = new AddFileAdapter(mActivity, mFileBeans);
mRlvFiles.setLayoutManager(new GridLayoutManager(mActivity, 5));
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(mAddFileAdapter);
for (int i = 0; i < fileInfoBeans.size(); i++) {
FileInfoBean infoBean = fileInfoBeans.get(i);
@ -173,33 +173,7 @@ public class DraftEmailDetailActivity extends BaseActivity {
mFileBeans.add(0, bean);
}
mAddFileAdapter.setData(mFileBeans);
mAddFileAdapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFileBeans.size(); i++) {
if (mFileBeans.get(i).getFileType() == 2) {
AddFileBean fileBean = mFileBeans.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
}
});
mAddFileAdapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, mFileBeans));
} else {
ToastUtils.show("未找到文档信息");
}
@ -284,6 +258,43 @@ public class DraftEmailDetailActivity extends BaseActivity {
});
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void doSearchByTitle() {

View File

@ -24,7 +24,6 @@ import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.FileUtils;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.baselib.utils.UserLgUtils;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.beans.EmailInboxDetailBean;
@ -34,6 +33,7 @@ import java.util.ArrayList;
import java.util.List;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
@ -217,7 +217,7 @@ public class InboxDetailActivity extends BaseActivity {
if (fileInfoBeans.size() > 0) {
mFileBeans = new ArrayList<>();
mAddFileAdapter = new AddFileAdapter(mActivity, mFileBeans);
mRlvFiles.setLayoutManager(new GridLayoutManager(mActivity, 5));
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(mAddFileAdapter);
for (int i = 0; i < fileInfoBeans.size(); i++) {
FileInfoBean infoBean = fileInfoBeans.get(i);
@ -229,33 +229,7 @@ public class InboxDetailActivity extends BaseActivity {
mFileBeans.add(0, bean);
}
mAddFileAdapter.setData(mFileBeans);
mAddFileAdapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFileBeans.size(); i++) {
if (mFileBeans.get(i).getFileType() == 2) {
AddFileBean fileBean = mFileBeans.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
}
});
mAddFileAdapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, mFileBeans));
} else {
ToastUtils.show("未找到文档信息");
}
@ -274,6 +248,41 @@ public class InboxDetailActivity extends BaseActivity {
});
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
private void doSaveReadState() {
RetrofitManager

View File

@ -24,7 +24,6 @@ import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.FileUtils;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.baselib.utils.UserLgUtils;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.beans.EmailRecycleDetailBean;
@ -33,7 +32,7 @@ import com.tenlionsoft.oamodule.net.OAApi;
import java.util.ArrayList;
import java.util.List;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
@ -269,7 +268,7 @@ public class RecycleEmailDetailActivity extends BaseActivity {
if (fileInfoBeans.size() > 0) {
mFileBeans = new ArrayList<>();
mAddFileAdapter = new AddFileAdapter(mActivity, mFileBeans);
mRlvFiles.setLayoutManager(new GridLayoutManager(mActivity, 5));
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(mAddFileAdapter);
for (int i = 0; i < fileInfoBeans.size(); i++) {
FileInfoBean infoBean = fileInfoBeans.get(i);
@ -281,33 +280,7 @@ public class RecycleEmailDetailActivity extends BaseActivity {
mFileBeans.add(0, bean);
}
mAddFileAdapter.setData(mFileBeans);
mAddFileAdapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFileBeans.size(); i++) {
if (mFileBeans.get(i).getFileType() == 2) {
AddFileBean fileBean = mFileBeans.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
}
});
mAddFileAdapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, mFileBeans));
} else {
ToastUtils.show("未找到文档信息");
}
@ -326,6 +299,43 @@ public class RecycleEmailDetailActivity extends BaseActivity {
});
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void doSearchByTitle() {

View File

@ -597,7 +597,7 @@ public class SendEmailActivity extends BaseActivity {
mAddFileAdapter.notifyDataSetChanged();
++mFileMax;
});
mRlvFiles.setLayoutManager(new GridLayoutManager(mActivity, 4));
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(mAddFileAdapter);
mIvAddFile.setOnClickListener(v -> {

View File

@ -23,7 +23,6 @@ import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.FileUtils;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.baselib.utils.UserLgUtils;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.beans.EmailSendDetailBean;
@ -32,7 +31,6 @@ import com.tenlionsoft.oamodule.net.OAApi;
import java.util.ArrayList;
import java.util.List;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
@ -160,7 +158,7 @@ public class SendEmailDetailActivity extends BaseActivity {
if (fileInfoBeans.size() > 0) {
mFileBeans = new ArrayList<>();
mAddFileAdapter = new AddFileAdapter(mActivity, mFileBeans);
mRlvFiles.setLayoutManager(new GridLayoutManager(mActivity, 5));
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(mAddFileAdapter);
for (int i = 0; i < fileInfoBeans.size(); i++) {
FileInfoBean infoBean = fileInfoBeans.get(i);
@ -172,33 +170,7 @@ public class SendEmailDetailActivity extends BaseActivity {
mFileBeans.add(0, bean);
}
mAddFileAdapter.setData(mFileBeans);
mAddFileAdapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFileBeans.size(); i++) {
if (mFileBeans.get(i).getFileType() == 2) {
AddFileBean fileBean = mFileBeans.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
}
});
mAddFileAdapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, mFileBeans));
} else {
ToastUtils.show("未找到文档信息");
}
@ -217,6 +189,43 @@ public class SendEmailDetailActivity extends BaseActivity {
});
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
private void onShowConfirm(int type) {
new AlertDialog.Builder(mActivity)
.setTitle("提示")

View File

@ -282,7 +282,12 @@ public class MeetingDetailActivity extends BaseActivity {
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}

View File

@ -310,7 +310,12 @@ public class NoticeDetailActivity extends BaseActivity {
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}

View File

@ -98,6 +98,8 @@ import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
import static com.tenlionsoft.baselib.core.widget.PhotoActivity.TAG_IMGURL;
/**
* 作者: Adam
* 日期: 2022年06月01日16:34:20
@ -239,6 +241,7 @@ public class OaFlowCenterActivity extends BaseActivity {
mFileBlueAdapter = new AddFileBlueAdapter(mActivity, mFiles);
mRlvFiles.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvFiles.setAdapter(mFileBlueAdapter);
mFileBlueAdapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, mFiles));
mTvNext.setOnClickListener(v -> nextCounterSigned());
mTvPre.setOnClickListener(v -> preCounterSigned());
@ -1102,6 +1105,7 @@ public class OaFlowCenterActivity extends BaseActivity {
});
}
@JavascriptInterface
public void invokeNative(String method) {
if ("back".equals(method)) {
@ -1112,6 +1116,42 @@ public class OaFlowCenterActivity extends BaseActivity {
}
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void doSearchByTitle() {

View File

@ -357,70 +357,12 @@ public class UserRecordDetailActivity extends BaseActivity {
AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
mRlvImgs.setLayoutManager(new GridLayoutManager(mActivity, 5));
mRlvImgs.setAdapter(adapter);
adapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < files.size(); i++) {
AddFileBean fileBean = files.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.navigation();
}
});
adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
} else {
AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
mRlvResumeFile.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvResumeFile.setAdapter(adapter);
adapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < files.size(); i++) {
AddFileBean fileBean = files.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.navigation();
}
});
adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
}
} else {
@ -452,6 +394,42 @@ public class UserRecordDetailActivity extends BaseActivity {
}
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void doSearchByTitle() {

View File

@ -298,33 +298,7 @@ public class RoutineWorkDetailActivity extends BaseActivity {
fileBeans.add(0, bean);
}
addFileAdapter.setData(fileBeans);
addFileAdapter.addOnItemClickListener(addFileBean -> {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < addFileAdapter.getData().size(); i++) {
if (addFileAdapter.getData().get(i).getFileType() == 2) {
AddFileBean fileBean = addFileAdapter.getData().get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
}
});
addFileAdapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, fileBeans));
} else {
ToastUtils.show("未找到文档信息");
}
@ -344,6 +318,42 @@ public class RoutineWorkDetailActivity extends BaseActivity {
}
/**
* 预览文件
*/
private void previewFile(AddFileBean addFileBean, List<AddFileBean> mFiles) {
if (addFileBean.getFileType() == 1) {
//文档
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_ACTIVITY_PREVIEW_FILE)
.withString("fileName", addFileBean.getFileName())
.withString("fileId", addFileBean.getId())
.navigation();
} else if (2 == addFileBean.getFileType()) {
//图片预览
//遍历文件获取所有图片文件
ArrayList<String> imgUrls = new ArrayList<>();
for (int i = 0; i < mFiles.size(); i++) {
if (mFiles.get(i).getFileType() == 2) {
AddFileBean fileBean = mFiles.get(i);
String url = BaseUrlApi.BASE_IMG_URL + fileBean.getId();
imgUrls.add(url);
}
}
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_BASELIB_SHOW_IMG)
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void doSearchByTitle() {

View File

@ -253,6 +253,7 @@ public class WorkReportDetailActivity extends BaseActivity {
});
}
/**
* 预览文件
*/
@ -280,10 +281,16 @@ public class WorkReportDetailActivity extends BaseActivity {
.withStringArrayList(TAG_IMGURL, imgUrls)
.navigation();
} else if (3 == addFileBean.getFileType() || 4 == addFileBean.getFileType()) {
//TODO 视频或音频预览
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_PLAYER_SIMPLE_VIDEO)
.withString("title", addFileBean.getFileName().substring(0, addFileBean.getFileName().lastIndexOf(".")))
.withString("url", BaseUrlApi.BASE_IMG_URL + addFileBean.getId())
.withString("type", addFileBean.getFileType() == 4 ? "audio" : "video")
.navigation();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable @org.jetbrains.annotations.Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);

View File

@ -97,6 +97,7 @@ public class EmailFragment extends BaseFragment {
.withTransition(R.anim.anim_fade_in, R.anim.anim_fade_out)
.navigation(mActivity));
getInboxList();
setTouchDelegate(mIvAdd, 15);
}
@Override

View File

@ -69,7 +69,8 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_files"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:padding="10dp" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@ -55,7 +55,8 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_files"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:padding="10dp" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@ -80,7 +80,8 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_files"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:padding="10dp" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@ -179,7 +179,8 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
android:orientation="vertical"
android:padding="10dp">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_files"