请假类型 假条
This commit is contained in:
parent
1f50369fbc
commit
b67589ca54
3
.idea/misc.xml
Executable file → Normal file
3
.idea/misc.xml
Executable file → Normal file
@ -1,4 +1,3 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="CMakeSettings">
|
<component name="CMakeSettings">
|
||||||
<configurations>
|
<configurations>
|
||||||
@ -15,7 +14,7 @@
|
|||||||
</map>
|
</map>
|
||||||
</option>
|
</option>
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="corretto-1.8" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectType">
|
<component name="ProjectType">
|
||||||
|
@ -41,3 +41,11 @@
|
|||||||
2.去除案件检查时相片必填选项
|
2.去除案件检查时相片必填选项
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## 2023-6-16
|
||||||
|
```
|
||||||
|
> 1.4.6
|
||||||
|
|
||||||
|
1.请假 类型跟换数据字典 添加上传假条
|
||||||
|
|
||||||
|
```
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
{
|
{
|
||||||
"type": "SINGLE",
|
"type": "SINGLE",
|
||||||
"filters": [],
|
"filters": [],
|
||||||
"versionCode": 45,
|
"versionCode": 46,
|
||||||
"versionName": "1.4.5",
|
"versionName": "1.4.6",
|
||||||
"outputFile": "app-release.apk"
|
"outputFile": "app-release.apk"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -2,14 +2,12 @@ package com.sucstepsoft.realtimelocation.activitys.census.normal;
|
|||||||
|
|
||||||
import android.app.AlertDialog;
|
import android.app.AlertDialog;
|
||||||
import android.app.ProgressDialog;
|
import android.app.ProgressDialog;
|
||||||
import android.content.DialogInterface;
|
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.support.v7.widget.LinearLayoutManager;
|
import android.support.v7.widget.LinearLayoutManager;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
import android.widget.ExpandableListView;
|
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
|
|
||||||
import com.jcodecraeer.xrecyclerview.ProgressStyle;
|
import com.jcodecraeer.xrecyclerview.ProgressStyle;
|
||||||
@ -21,9 +19,6 @@ import com.sucstepsoft.cm_utils.utils.UIUtil;
|
|||||||
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
||||||
import com.sucstepsoft.realtimelocation.R;
|
import com.sucstepsoft.realtimelocation.R;
|
||||||
import com.sucstepsoft.realtimelocation.adapters.CensusPersonAdapter;
|
import com.sucstepsoft.realtimelocation.adapters.CensusPersonAdapter;
|
||||||
import com.sucstepsoft.realtimelocation.adapters.LeaveHistoryAdapter;
|
|
||||||
import com.sucstepsoft.realtimelocation.adapters.PersonAdapter;
|
|
||||||
import com.sucstepsoft.realtimelocation.beans.LeaveListBean;
|
|
||||||
import com.sucstepsoft.realtimelocation.beans.SuccessBean;
|
import com.sucstepsoft.realtimelocation.beans.SuccessBean;
|
||||||
import com.sucstepsoft.realtimelocation.beans.person.CensusPersonBean;
|
import com.sucstepsoft.realtimelocation.beans.person.CensusPersonBean;
|
||||||
import com.sucstepsoft.realtimelocation.net.LocationApiService;
|
import com.sucstepsoft.realtimelocation.net.LocationApiService;
|
||||||
|
@ -2,9 +2,18 @@ package com.sucstepsoft.realtimelocation.activitys.mine;
|
|||||||
|
|
||||||
import android.app.ProgressDialog;
|
import android.app.ProgressDialog;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
import android.database.Cursor;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
|
import android.net.Uri;
|
||||||
|
import android.os.Build;
|
||||||
|
import android.os.Environment;
|
||||||
|
import android.provider.MediaStore;
|
||||||
|
import android.support.v4.content.FileProvider;
|
||||||
|
import android.support.v7.widget.GridLayoutManager;
|
||||||
|
import android.support.v7.widget.RecyclerView;
|
||||||
import android.text.Html;
|
import android.text.Html;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
import android.view.Gravity;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
@ -14,19 +23,29 @@ import android.widget.TextView;
|
|||||||
import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
|
import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
|
||||||
import com.bigkoo.pickerview.view.OptionsPickerView;
|
import com.bigkoo.pickerview.view.OptionsPickerView;
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
|
import com.sucstepsoft.cm_utils.constant.PathConfig;
|
||||||
import com.sucstepsoft.cm_utils.constant.TimeConstants;
|
import com.sucstepsoft.cm_utils.constant.TimeConstants;
|
||||||
|
import com.sucstepsoft.cm_utils.core.beans.AddPhotoBean;
|
||||||
|
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
|
||||||
import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
||||||
|
import com.sucstepsoft.cm_utils.core.widget.base.AddPhotoAdapter;
|
||||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
||||||
|
import com.sucstepsoft.cm_utils.core.widget.views.ButtomDialogView;
|
||||||
|
import com.sucstepsoft.cm_utils.utils.ProiderUtil;
|
||||||
import com.sucstepsoft.cm_utils.utils.TimeUtils;
|
import com.sucstepsoft.cm_utils.utils.TimeUtils;
|
||||||
import com.sucstepsoft.cm_utils.utils.ToastUtils;
|
import com.sucstepsoft.cm_utils.utils.ToastUtils;
|
||||||
import com.sucstepsoft.cm_utils.utils.UIUtil;
|
import com.sucstepsoft.cm_utils.utils.UIUtil;
|
||||||
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
||||||
import com.sucstepsoft.realtimelocation.R;
|
import com.sucstepsoft.realtimelocation.R;
|
||||||
|
import com.sucstepsoft.realtimelocation.activitys.common.PhotoActivity;
|
||||||
|
import com.sucstepsoft.realtimelocation.beans.BaseUserBean;
|
||||||
import com.sucstepsoft.realtimelocation.beans.LeavePostBean;
|
import com.sucstepsoft.realtimelocation.beans.LeavePostBean;
|
||||||
import com.sucstepsoft.realtimelocation.beans.SuccessBean;
|
import com.sucstepsoft.realtimelocation.beans.SuccessBean;
|
||||||
|
import com.sucstepsoft.realtimelocation.beans.TypeListBean;
|
||||||
import com.sucstepsoft.realtimelocation.net.LocationApiService;
|
import com.sucstepsoft.realtimelocation.net.LocationApiService;
|
||||||
import com.sucstepsoft.realtimelocation.utils.ExceptionHandler;
|
import com.sucstepsoft.realtimelocation.utils.ExceptionHandler;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -36,10 +55,14 @@ import butterknife.ButterKnife;
|
|||||||
import butterknife.Unbinder;
|
import butterknife.Unbinder;
|
||||||
import io.reactivex.Observer;
|
import io.reactivex.Observer;
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||||
|
import io.reactivex.annotations.NonNull;
|
||||||
import io.reactivex.disposables.Disposable;
|
import io.reactivex.disposables.Disposable;
|
||||||
import io.reactivex.schedulers.Schedulers;
|
import io.reactivex.schedulers.Schedulers;
|
||||||
import okhttp3.MediaType;
|
import okhttp3.MediaType;
|
||||||
|
import okhttp3.MultipartBody;
|
||||||
import okhttp3.RequestBody;
|
import okhttp3.RequestBody;
|
||||||
|
import top.zibin.luban.Luban;
|
||||||
|
import top.zibin.luban.OnCompressListener;
|
||||||
|
|
||||||
public class LeaveActivity extends BaseActivity {
|
public class LeaveActivity extends BaseActivity {
|
||||||
|
|
||||||
@ -74,8 +97,11 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
EditText mEtLeCause;
|
EditText mEtLeCause;
|
||||||
@BindView(R.id.btn_submit)
|
@BindView(R.id.btn_submit)
|
||||||
Button mBtnSubmit;
|
Button mBtnSubmit;
|
||||||
|
@BindView(R.id.tv_proof)
|
||||||
|
TextView mTvProof;
|
||||||
|
@BindView(R.id.rlv_photo)
|
||||||
|
RecyclerView mRlvPhoto;
|
||||||
private Unbinder mBind;
|
private Unbinder mBind;
|
||||||
private String mType = "";
|
|
||||||
private String mStartTime = "";
|
private String mStartTime = "";
|
||||||
private float mStart = 0;
|
private float mStart = 0;
|
||||||
private String amOrPm = "am";
|
private String amOrPm = "am";
|
||||||
@ -83,6 +109,14 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
private String mEndTime = "";
|
private String mEndTime = "";
|
||||||
private float mCount = 0.0f;
|
private float mCount = 0.0f;
|
||||||
private int startTimeAmOrPm = 0;
|
private int startTimeAmOrPm = 0;
|
||||||
|
private List<AddPhotoBean> mPhotos = new ArrayList<>();
|
||||||
|
private AddPhotoBean mCurrentBean;
|
||||||
|
private String mPicPath;
|
||||||
|
private AddPhotoAdapter mPhotoAdapter;
|
||||||
|
private String mPhotoIds = "";//相片Id
|
||||||
|
private List<TypeListBean> mTypeList;
|
||||||
|
private OptionsPickerView<TypeListBean> mTypePicker;
|
||||||
|
private TypeListBean mSelType;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int setLayoutId() {
|
protected int setLayoutId() {
|
||||||
@ -102,10 +136,35 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
mTvLeEndTitle.setText(Html.fromHtml(getResources().getString(R.string.leave_end)));
|
mTvLeEndTitle.setText(Html.fromHtml(getResources().getString(R.string.leave_end)));
|
||||||
mTvLeCountTitle.setText(Html.fromHtml(getResources().getString(R.string.leave_count)));
|
mTvLeCountTitle.setText(Html.fromHtml(getResources().getString(R.string.leave_count)));
|
||||||
mTvLeCause.setText(Html.fromHtml(getResources().getString(R.string.leave_cause)));
|
mTvLeCause.setText(Html.fromHtml(getResources().getString(R.string.leave_cause)));
|
||||||
|
mTvProof.setText(Html.fromHtml(getResources().getString(R.string.leave_proof)));
|
||||||
mRlLeType.setOnClickListener(v -> choosePage(1));
|
mRlLeType.setOnClickListener(v -> choosePage(1));
|
||||||
mRlLeStart.setOnClickListener(v -> choosePage(2));
|
mRlLeStart.setOnClickListener(v -> choosePage(2));
|
||||||
mRlLeEnd.setOnClickListener(v -> choosePage(3));
|
mRlLeEnd.setOnClickListener(v -> choosePage(3));
|
||||||
mBtnSubmit.setOnClickListener(v -> doSubmit());
|
mBtnSubmit.setOnClickListener(v -> doSubmit());
|
||||||
|
|
||||||
|
mPhotos.add(new AddPhotoBean());
|
||||||
|
mPhotoAdapter = new AddPhotoAdapter(LeaveActivity.this, mPhotos);
|
||||||
|
mRlvPhoto.setLayoutManager(new GridLayoutManager(mActivity, 4));
|
||||||
|
mRlvPhoto.setAdapter(mPhotoAdapter);
|
||||||
|
//删除上传的相片
|
||||||
|
mPhotoAdapter.addOnDeleteListener(((bean, i) -> {
|
||||||
|
mPhotoAdapter.removeItem(bean);
|
||||||
|
mPhotoIds = mPhotoIds.replace(bean.getId() + ",", "");
|
||||||
|
}));
|
||||||
|
mPhotoAdapter.addOnItemClickListener(bean -> {
|
||||||
|
if (TextUtils.isEmpty(bean.getPath())) {
|
||||||
|
//空数据
|
||||||
|
showSelectPhoto(bean);
|
||||||
|
} else {
|
||||||
|
//预览
|
||||||
|
ArrayList<String> list = new ArrayList<>();
|
||||||
|
list.add(bean.getPath());
|
||||||
|
Intent intent = new Intent();
|
||||||
|
intent.putExtra(PhotoActivity.TAG_IMGURL, list);
|
||||||
|
intent.setClass(LeaveActivity.this, PhotoActivity.class);
|
||||||
|
startActivity(intent);
|
||||||
|
}
|
||||||
|
});
|
||||||
setEditTextInhibitInputSpeChat(mEtLeCause);
|
setEditTextInhibitInputSpeChat(mEtLeCause);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,10 +175,24 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
String cause = mEtLeCause.getText().toString().trim();
|
String cause = mEtLeCause.getText().toString().trim();
|
||||||
LeavePostBean body = new LeavePostBean();
|
LeavePostBean body = new LeavePostBean();
|
||||||
body.setLeaveSummary(cause);
|
body.setLeaveSummary(cause);
|
||||||
body.setLeaveType(mType);
|
body.setLeaveType(mSelType.getDictId());
|
||||||
|
body.setLeaveTypeName(mSelType.getDictName());
|
||||||
body.setLeaveTimeLong(mCount + "");
|
body.setLeaveTimeLong(mCount + "");
|
||||||
body.setLeaveTime(mStartTime);
|
body.setLeaveTime(mStartTime);
|
||||||
body.setLeaveTimeApm(amOrPm);
|
body.setLeaveTimeApm(amOrPm);
|
||||||
|
if (mPhotoAdapter.getData().size() >= 2) {
|
||||||
|
String ids = "";
|
||||||
|
for (int i = 0; i < mPhotoAdapter.getData().size(); i++) {
|
||||||
|
if (!TextUtils.isEmpty(mPhotoAdapter.getData().get(i).getId())) {
|
||||||
|
ids += mPhotoAdapter.getData().get(i).getId() + ",";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ids.endsWith(",")) {
|
||||||
|
ids = ids.substring(0, ids.length() - 1);
|
||||||
|
}
|
||||||
|
body.setLeaveImg(ids);
|
||||||
|
}
|
||||||
|
|
||||||
Gson gson = new Gson();
|
Gson gson = new Gson();
|
||||||
String obj = gson.toJson(body);
|
String obj = gson.toJson(body);
|
||||||
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), obj);
|
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), obj);
|
||||||
@ -158,8 +231,179 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 显示选择图片
|
||||||
|
*
|
||||||
|
* @param bean
|
||||||
|
*/
|
||||||
|
private void showSelectPhoto(AddPhotoBean bean) {
|
||||||
|
hideSoftKeyboard();
|
||||||
|
ButtomDialogView buttomDialogView = new ButtomDialogView.DialogBuilder(mActivity)
|
||||||
|
.setIsBackCancelable(true)
|
||||||
|
.setIscancelable(true)
|
||||||
|
.setShowLocation(Gravity.BOTTOM)
|
||||||
|
.setIsShowFile(false)
|
||||||
|
.build();
|
||||||
|
buttomDialogView.addOnChoseListener(new ButtomDialogView.OnChoseListener() {
|
||||||
|
@Override
|
||||||
|
public void choseFile() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void choseAlbum() {
|
||||||
|
mCurrentBean = bean;
|
||||||
|
Intent intent = new Intent(Intent.ACTION_PICK, null);
|
||||||
|
intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
|
||||||
|
"image/*");
|
||||||
|
startActivityForResult(intent, BaseUrlApi.PHOTO_REQUEST);
|
||||||
|
buttomDialogView.dismiss();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void choseShoot() {
|
||||||
|
mCurrentBean = bean;
|
||||||
|
String pathStr = getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath() + PathConfig.CATCH_PATH;
|
||||||
|
mPicPath = pathStr + System.currentTimeMillis() + ".jpg";
|
||||||
|
File file = new File(mPicPath);
|
||||||
|
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
|
||||||
|
// 下面这句指定调用相机拍照后的照片存储的路径
|
||||||
|
Uri uri;
|
||||||
|
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M) {
|
||||||
|
uri = Uri.fromFile(file);
|
||||||
|
} else {
|
||||||
|
uri = FileProvider.getUriForFile(mActivity, ProiderUtil.getFileProviderName(mActivity), file);
|
||||||
|
}
|
||||||
|
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
|
||||||
|
startActivityForResult(intent, BaseUrlApi.CAMERA_REQUEST);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void loginOut() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void changePwd() {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
buttomDialogView.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||||
|
if (resultCode == RESULT_OK) {
|
||||||
|
switch (requestCode) {
|
||||||
|
case BaseUrlApi.CAMERA_REQUEST://相机
|
||||||
|
uploadImg(mPicPath, 1);
|
||||||
|
break;
|
||||||
|
case BaseUrlApi.PHOTO_REQUEST://相册
|
||||||
|
try {
|
||||||
|
if (data == null) return;
|
||||||
|
Uri uri = data.getData();
|
||||||
|
String[] proj = {MediaStore.Images.Media.DATA};
|
||||||
|
Cursor cursor = managedQuery(uri, proj, null, null, null);
|
||||||
|
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
|
||||||
|
cursor.moveToFirst();
|
||||||
|
String srcPath = cursor.getString(column_index);
|
||||||
|
uploadImg(srcPath, 2);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
super.onActivityResult(requestCode, resultCode, data);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上传文件
|
||||||
|
*
|
||||||
|
* @param picPath
|
||||||
|
*/
|
||||||
|
private void uploadImg(String picPath, int src) {
|
||||||
|
File file = new File(picPath);
|
||||||
|
if (!file.exists()) {
|
||||||
|
showToast("图片路径错误.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ProgressDialog progressDialog = UIUtil.initDialog(mActivity, "正在上传...");
|
||||||
|
progressDialog.show();
|
||||||
|
String pathStr = getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath() + PathConfig.CATCH_PATH;
|
||||||
|
Luban.with(mActivity)
|
||||||
|
.load(picPath)
|
||||||
|
.ignoreBy(100)
|
||||||
|
.setTargetDir(pathStr)
|
||||||
|
.filter(path -> !(TextUtils.isEmpty(path) || path.toLowerCase().endsWith(".gif")))
|
||||||
|
.setCompressListener(new OnCompressListener() {
|
||||||
|
@Override
|
||||||
|
public void onStart() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSuccess(File file) {
|
||||||
|
RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file);
|
||||||
|
MultipartBody.Part body = MultipartBody.Part.createFormData("image", file.getName(), requestFile);
|
||||||
|
RetrofitManager.getInstance()
|
||||||
|
.create(LocationApiService.class)
|
||||||
|
.uploadImage(body, UserLgUtils.getToken())
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(new Observer<BaseUserBean>() {
|
||||||
|
@Override
|
||||||
|
public void onSubscribe(Disposable d) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNext(BaseUserBean baseUserBean) {
|
||||||
|
if (progressDialog != null && progressDialog.isShowing()) {
|
||||||
|
progressDialog.dismiss();
|
||||||
|
}
|
||||||
|
ToastUtils.showShort("上传成功");
|
||||||
|
mPhotoIds += (baseUserBean.getData() + ",");
|
||||||
|
mCurrentBean.setId(baseUserBean.getData());
|
||||||
|
mCurrentBean.setPath(picPath);
|
||||||
|
if (mPhotos.size() < 4) {
|
||||||
|
mPhotos.add(new AddPhotoBean());
|
||||||
|
}
|
||||||
|
mPhotoAdapter.notifyDataSetChanged();
|
||||||
|
mCurrentBean = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Throwable e) {
|
||||||
|
if (progressDialog != null && progressDialog.isShowing()) {
|
||||||
|
progressDialog.dismiss();
|
||||||
|
}
|
||||||
|
ToastUtils.showShort("上传失败,请稍后重试.");
|
||||||
|
if (file.exists()) {
|
||||||
|
file.delete();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onComplete() {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Throwable e) {
|
||||||
|
if (progressDialog.isShowing()) {
|
||||||
|
progressDialog.dismiss();
|
||||||
|
}
|
||||||
|
ToastUtils.showShort("图片上传失败,请稍后重试");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.launch();
|
||||||
|
}
|
||||||
|
|
||||||
private boolean checkParams() {
|
private boolean checkParams() {
|
||||||
if (TextUtils.isEmpty(mType)) {
|
if (mSelType == null) {
|
||||||
ToastUtils.showShort("请选择请假类型");
|
ToastUtils.showShort("请选择请假类型");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -176,6 +420,10 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
ToastUtils.showShort("请输入请假事由");
|
ToastUtils.showShort("请输入请假事由");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (mPhotos.size() <= 1) {
|
||||||
|
ToastUtils.showShort("请上传假条");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -193,6 +441,52 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 字典
|
||||||
|
*/
|
||||||
|
private void getDicListByType(String pId, int i) {
|
||||||
|
ProgressDialog dialog = UIUtil.initDialog(mActivity, "获取中...");
|
||||||
|
dialog.show();
|
||||||
|
RetrofitManager.getInstance()
|
||||||
|
.create(LocationApiService.class)
|
||||||
|
.getDictListAll(pId, UserLgUtils.getToken())
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(new Observer<List<TypeListBean>>() {
|
||||||
|
@Override
|
||||||
|
public void onSubscribe(Disposable d) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNext(@NonNull List<TypeListBean> typeListBeans) {
|
||||||
|
dialog.dismiss();
|
||||||
|
if (typeListBeans.size() > 0) {
|
||||||
|
switch (i) {
|
||||||
|
case 3://请假类型
|
||||||
|
mTypeList = typeListBeans;
|
||||||
|
showTypePicker();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
ToastUtils.showShort("暂无数据");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(@NonNull Throwable e) {
|
||||||
|
dialog.dismiss();
|
||||||
|
ExceptionHandler.handleException(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onComplete() {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
private void showEndPicker() {
|
private void showEndPicker() {
|
||||||
if (TextUtils.isEmpty(mStartTime)) {
|
if (TextUtils.isEmpty(mStartTime)) {
|
||||||
ToastUtils.showShort("请选择开始时间");
|
ToastUtils.showShort("请选择开始时间");
|
||||||
@ -348,29 +642,28 @@ public class LeaveActivity extends BaseActivity {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 请假类型
|
||||||
|
*/
|
||||||
private void showTypePicker() {
|
private void showTypePicker() {
|
||||||
List<String> types = new ArrayList<>();
|
hideSoftKeyboard();
|
||||||
types.add("有病");
|
if (mTypeList != null && mTypeList.size() > 0) {
|
||||||
types.add("有事");
|
if (mTypePicker == null) {
|
||||||
OptionsPickerView<String> mTypePicker = new OptionsPickerBuilder(LeaveActivity.this, (options1, options2, options3, v) -> {
|
mTypePicker = new OptionsPickerBuilder(mActivity, (o1, o2, o3, v) -> {
|
||||||
mType = types.get(options1);
|
mSelType = mTypeList.get(o1);
|
||||||
String s = types.get(options1);
|
mTvLeTypeContent.setText(mSelType.getDictName());
|
||||||
switch (s) {
|
})
|
||||||
case "有病":
|
.setTitleText("请选择请假类型")
|
||||||
mType = "ill";
|
|
||||||
break;
|
|
||||||
case "有事":
|
|
||||||
mType = "busy";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
mTvLeTypeContent.setText(s);
|
|
||||||
}).setTitleText("请选择请假类型")
|
|
||||||
.setCancelColor(Color.parseColor("#1189FF"))
|
.setCancelColor(Color.parseColor("#1189FF"))
|
||||||
.setSubmitColor(Color.parseColor("#1189FF"))
|
.setSubmitColor(Color.parseColor("#1189FF"))
|
||||||
.setTitleColor(Color.parseColor("#1189FF"))
|
.setTitleColor(Color.parseColor("#1189FF"))
|
||||||
.build();
|
.build();
|
||||||
mTypePicker.setPicker(types);
|
mTypePicker.setPicker(mTypeList);
|
||||||
|
}
|
||||||
mTypePicker.show();
|
mTypePicker.show();
|
||||||
|
} else {
|
||||||
|
getDicListByType(PathConfig.DIC_LEAVE, 3);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
package com.sucstepsoft.realtimelocation.activitys.mine;
|
package com.sucstepsoft.realtimelocation.activitys.mine;
|
||||||
|
|
||||||
import android.app.ProgressDialog;
|
import android.app.ProgressDialog;
|
||||||
import android.os.Bundle;
|
import android.content.Intent;
|
||||||
|
import android.support.v7.widget.GridLayoutManager;
|
||||||
|
import android.support.v7.widget.RecyclerView;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
@ -10,23 +12,26 @@ import android.widget.LinearLayout;
|
|||||||
import android.widget.RelativeLayout;
|
import android.widget.RelativeLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.alibaba.android.arouter.exception.HandlerException;
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.sucstepsoft.cm_utils.core.network.response.GsonResponseHandler;
|
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
|
||||||
import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
||||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
||||||
|
import com.sucstepsoft.cm_utils.core.widget.base.BaseShowPhotoAdapter;
|
||||||
import com.sucstepsoft.cm_utils.utils.ToastUtils;
|
import com.sucstepsoft.cm_utils.utils.ToastUtils;
|
||||||
import com.sucstepsoft.cm_utils.utils.UIUtil;
|
import com.sucstepsoft.cm_utils.utils.UIUtil;
|
||||||
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
||||||
import com.sucstepsoft.realtimelocation.R;
|
import com.sucstepsoft.realtimelocation.R;
|
||||||
|
import com.sucstepsoft.realtimelocation.activitys.common.PhotoActivity;
|
||||||
import com.sucstepsoft.realtimelocation.beans.LeaveCheckBean;
|
import com.sucstepsoft.realtimelocation.beans.LeaveCheckBean;
|
||||||
import com.sucstepsoft.realtimelocation.beans.LeaveDetailBean;
|
import com.sucstepsoft.realtimelocation.beans.LeaveDetailBean;
|
||||||
import com.sucstepsoft.realtimelocation.beans.LeaveListBean;
|
import com.sucstepsoft.realtimelocation.beans.LeaveListBean;
|
||||||
import com.sucstepsoft.realtimelocation.beans.LeavePostBean;
|
|
||||||
import com.sucstepsoft.realtimelocation.beans.SuccessBean;
|
import com.sucstepsoft.realtimelocation.beans.SuccessBean;
|
||||||
import com.sucstepsoft.realtimelocation.net.LocationApiService;
|
import com.sucstepsoft.realtimelocation.net.LocationApiService;
|
||||||
import com.sucstepsoft.realtimelocation.utils.ExceptionHandler;
|
import com.sucstepsoft.realtimelocation.utils.ExceptionHandler;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import butterknife.BindView;
|
import butterknife.BindView;
|
||||||
import butterknife.ButterKnife;
|
import butterknife.ButterKnife;
|
||||||
import butterknife.Unbinder;
|
import butterknife.Unbinder;
|
||||||
@ -82,6 +87,10 @@ public class LeaveDetailActivity extends BaseActivity {
|
|||||||
TextView mTvNeiron;
|
TextView mTvNeiron;
|
||||||
@BindView(R.id.tv_le_qingren)
|
@BindView(R.id.tv_le_qingren)
|
||||||
TextView mTvQingRen;
|
TextView mTvQingRen;
|
||||||
|
@BindView(R.id.rlv_photo)
|
||||||
|
RecyclerView mRlvPhoto;
|
||||||
|
@BindView(R.id.tv_hint)
|
||||||
|
TextView mTvHint;
|
||||||
private Unbinder mBind;
|
private Unbinder mBind;
|
||||||
private String mType;
|
private String mType;
|
||||||
private LeaveDetailBean mDetailBean;
|
private LeaveDetailBean mDetailBean;
|
||||||
@ -219,14 +228,34 @@ public class LeaveDetailActivity extends BaseActivity {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (!TextUtils.isEmpty(leaveDetailBean.getLeaveType())) {
|
if (!TextUtils.isEmpty(leaveDetailBean.getLeaveType())) {
|
||||||
switch (leaveDetailBean.getLeaveType()) {
|
mTvLeTypeContent.setText(leaveDetailBean.getLeaveTypeName());
|
||||||
case "ill":
|
|
||||||
mTvLeTypeContent.setText("有病");
|
|
||||||
break;
|
|
||||||
case "busy":
|
|
||||||
mTvLeTypeContent.setText("有事");
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
if (TextUtils.isEmpty(mDetailBean.getLeaveImg())) {
|
||||||
|
mRlvPhoto.setVisibility(View.GONE);
|
||||||
|
mTvHint.setVisibility(View.VISIBLE);
|
||||||
|
} else {
|
||||||
|
mTvHint.setVisibility(View.GONE);
|
||||||
|
mRlvPhoto.setVisibility(View.VISIBLE);
|
||||||
|
List<String> photos = new ArrayList<>();
|
||||||
|
String[] split = mDetailBean.getLeaveImg().split(",");
|
||||||
|
for (int i = 0; i < split.length; i++) {
|
||||||
|
if (!TextUtils.isEmpty(split[i])) {
|
||||||
|
photos.add(BaseUrlApi.BASE_IMG_URL + split[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
BaseShowPhotoAdapter adapter = new BaseShowPhotoAdapter(mActivity, photos);
|
||||||
|
mRlvPhoto.setLayoutManager(new GridLayoutManager(mActivity, 4) {
|
||||||
|
@Override
|
||||||
|
public boolean canScrollVertically() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});//禁止滑动
|
||||||
|
mRlvPhoto.setAdapter(adapter);
|
||||||
|
adapter.addOnItemClickListener(url -> {
|
||||||
|
Intent intent = new Intent(LeaveDetailActivity.this, PhotoActivity.class);
|
||||||
|
intent.putExtra("imgUrls", new ArrayList<>(adapter.getData()));
|
||||||
|
startActivity(intent);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
refreshView(STATE_LOAD_EMPTY);
|
refreshView(STATE_LOAD_EMPTY);
|
||||||
|
@ -48,14 +48,7 @@ public class LeaveHistoryAdapter extends BaseRecyclerAdapter<LeaveListBean.RowsB
|
|||||||
holder.mTvCount.setText(rowsBean.getLeaveTimeLong() + "天");
|
holder.mTvCount.setText(rowsBean.getLeaveTimeLong() + "天");
|
||||||
holder.mTvPerson.setText(rowsBean.getLeaveUserName());
|
holder.mTvPerson.setText(rowsBean.getLeaveUserName());
|
||||||
if (!TextUtils.isEmpty(rowsBean.getLeaveType())) {
|
if (!TextUtils.isEmpty(rowsBean.getLeaveType())) {
|
||||||
switch (rowsBean.getLeaveType()) {
|
holder.mTvType.setText(rowsBean.getLeaveTypeName());
|
||||||
case "ill"://有病
|
|
||||||
holder.mTvType.setText("有病");
|
|
||||||
break;
|
|
||||||
case "busy":
|
|
||||||
holder.mTvType.setText("有事");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
holder.mTvTime.setText(rowsBean.getLeaveTime());
|
holder.mTvTime.setText(rowsBean.getLeaveTime());
|
||||||
switch (rowsBean.getLeaveState()) {
|
switch (rowsBean.getLeaveState()) {
|
||||||
|
@ -27,9 +27,27 @@ public class LeaveDetailBean {
|
|||||||
private String leaveTime;
|
private String leaveTime;
|
||||||
private String leaveTimeLong;
|
private String leaveTimeLong;
|
||||||
private String leaveType;
|
private String leaveType;
|
||||||
|
private String leaveTypeName;
|
||||||
private String leaveTimeApm;
|
private String leaveTimeApm;
|
||||||
private String leaveRefuseSummary;
|
private String leaveRefuseSummary;
|
||||||
private String leaveUserName;
|
private String leaveUserName;
|
||||||
|
private String leaveImg;
|
||||||
|
|
||||||
|
public String getLeaveTypeName() {
|
||||||
|
return leaveTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLeaveTypeName(String leaveTypeName) {
|
||||||
|
this.leaveTypeName = leaveTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLeaveImg() {
|
||||||
|
return leaveImg;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLeaveImg(String leaveImg) {
|
||||||
|
this.leaveImg = leaveImg;
|
||||||
|
}
|
||||||
|
|
||||||
public String getLeaveUserName() {
|
public String getLeaveUserName() {
|
||||||
return leaveUserName;
|
return leaveUserName;
|
||||||
|
@ -60,6 +60,7 @@ public class LeaveListBean {
|
|||||||
private String leaveId;
|
private String leaveId;
|
||||||
private String leaveTime;
|
private String leaveTime;
|
||||||
private String leaveType;
|
private String leaveType;
|
||||||
|
private String leaveTypeName;
|
||||||
private String leaveSummary;
|
private String leaveSummary;
|
||||||
private String leaveTimeLong;
|
private String leaveTimeLong;
|
||||||
private int leaveState;
|
private int leaveState;
|
||||||
@ -67,6 +68,15 @@ public class LeaveListBean {
|
|||||||
private String approverName;
|
private String approverName;
|
||||||
private String leaveUserName;
|
private String leaveUserName;
|
||||||
|
|
||||||
|
|
||||||
|
public String getLeaveTypeName() {
|
||||||
|
return leaveTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLeaveTypeName(String leaveTypeName) {
|
||||||
|
this.leaveTypeName = leaveTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
public String getLeaveUserName() {
|
public String getLeaveUserName() {
|
||||||
return leaveUserName;
|
return leaveUserName;
|
||||||
}
|
}
|
||||||
|
@ -19,7 +19,25 @@ public class LeavePostBean {
|
|||||||
private String leaveTime;
|
private String leaveTime;
|
||||||
private String leaveTimeLong;
|
private String leaveTimeLong;
|
||||||
private String leaveType;
|
private String leaveType;
|
||||||
|
private String leaveTypeName;
|
||||||
private String leaveTimeApm;
|
private String leaveTimeApm;
|
||||||
|
private String leaveImg;
|
||||||
|
|
||||||
|
public String getLeaveTypeName() {
|
||||||
|
return leaveTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLeaveTypeName(String leaveTypeName) {
|
||||||
|
this.leaveTypeName = leaveTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLeaveImg() {
|
||||||
|
return leaveImg;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLeaveImg(String leaveImg) {
|
||||||
|
this.leaveImg = leaveImg;
|
||||||
|
}
|
||||||
|
|
||||||
public String getLeaveTimeApm() {
|
public String getLeaveTimeApm() {
|
||||||
return leaveTimeApm;
|
return leaveTimeApm;
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
@ -176,6 +175,33 @@
|
|||||||
android:padding="5dp" />
|
android:padding="5dp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:background="@color/gray_line" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:padding="10dp">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_proof"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="5dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:text="假条"
|
||||||
|
android:textColor="@color/black"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
|
||||||
|
<android.support.v7.widget.RecyclerView
|
||||||
|
android:id="@+id/rlv_photo"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/btn_submit"
|
android:id="@+id/btn_submit"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
@ -197,6 +196,46 @@
|
|||||||
android:padding="5dp" />
|
android:padding="5dp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="5dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:background="@color/white"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:padding="10dp">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_proof"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="5dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:text="假条"
|
||||||
|
android:textColor="@color/black"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:minHeight="60dp">
|
||||||
|
|
||||||
|
<android.support.v7.widget.RecyclerView
|
||||||
|
android:id="@+id/rlv_photo"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
tools:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_hint"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerInParent="true"
|
||||||
|
android:text="未上传假条" />
|
||||||
|
</RelativeLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/ll_neirong"
|
android:id="@+id/ll_neirong"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -22,6 +22,7 @@
|
|||||||
<string name="leave_end"><Data><![CDATA[<font size="16">结束时间</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
<string name="leave_end"><Data><![CDATA[<font size="16">结束时间</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
||||||
<string name="leave_count"><Data><![CDATA[<font size="16">请假时长</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
<string name="leave_count"><Data><![CDATA[<font size="16">请假时长</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
||||||
<string name="leave_cause"><Data><![CDATA[<font size="16">请假事由</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
<string name="leave_cause"><Data><![CDATA[<font size="16">请假事由</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
||||||
|
<string name="leave_proof"><Data><![CDATA[<font size="16">假条</font><font color="#e60012" size="10"> * </font>]]></Data></string>
|
||||||
|
|
||||||
|
|
||||||
<string name="issue_appoint">下派人:%1$s</string>
|
<string name="issue_appoint">下派人:%1$s</string>
|
||||||
|
@ -61,8 +61,8 @@ ext {
|
|||||||
gTargetSdkVersion = 28
|
gTargetSdkVersion = 28
|
||||||
// gVersionCode = 3
|
// gVersionCode = 3
|
||||||
// gVersionName = '1.0.3'
|
// gVersionName = '1.0.3'
|
||||||
gVersionCode=45
|
gVersionCode=46
|
||||||
gVersionName='1.4.5'
|
gVersionName='1.4.6'
|
||||||
//Router编译版本
|
//Router编译版本
|
||||||
gRouterApiVersion = '1.4.1'
|
gRouterApiVersion = '1.4.1'
|
||||||
gRouterCompileVersion = '1.2.2'
|
gRouterCompileVersion = '1.2.2'
|
||||||
|
@ -75,6 +75,7 @@ public class PathConfig {
|
|||||||
public static final String DIC_FOUR = "6f5fc00e-dfe2-4c7a-bb7b-114d54ad6fb8";//四史
|
public static final String DIC_FOUR = "6f5fc00e-dfe2-4c7a-bb7b-114d54ad6fb8";//四史
|
||||||
public static final String DIC_THREE = "34aefb4b-5918-4de7-a6b8-8e361f76c557";//三涉
|
public static final String DIC_THREE = "34aefb4b-5918-4de7-a6b8-8e361f76c557";//三涉
|
||||||
public static final String DIC_GROUP = "b30da878-2576-4e70-8a39-4eeee5ad9983";//小组组成
|
public static final String DIC_GROUP = "b30da878-2576-4e70-8a39-4eeee5ad9983";//小组组成
|
||||||
|
public static final String DIC_LEAVE="f29299aa-0651-4346-845a-2f8bf8987778";//请假类型
|
||||||
|
|
||||||
public static final String DEFAULT_AREA_CODE = "0";//地区
|
public static final String DEFAULT_AREA_CODE = "0";//地区
|
||||||
public static final String APP_VERSION_ID = "402e60d8-8270-4bb9-8850-83d30a39a53f";/* 包头版本一 */
|
public static final String APP_VERSION_ID = "402e60d8-8270-4bb9-8850-83d30a39a53f";/* 包头版本一 */
|
||||||
|
@ -24,7 +24,7 @@ public class BaseUrlApi {
|
|||||||
public static final String BASE_IP = BASE_IP_P + "servicecity/";/*网格系统*/
|
public static final String BASE_IP = BASE_IP_P + "servicecity/";/*网格系统*/
|
||||||
// public static final String BASE_IP = "http://192.168.0.109:8083/servicecity/";/*测试网格系统*/
|
// public static final String BASE_IP = "http://192.168.0.109:8083/servicecity/";/*测试网格系统*/
|
||||||
public static final String BASE_POPULATION_IP = BASE_IP_P + "population/";/*人口系统*/
|
public static final String BASE_POPULATION_IP = BASE_IP_P + "population/";/*人口系统*/
|
||||||
// public static final String BASE_POPULATION_IP = BASE_IP_P + ":7002/population/";/*人口系统*/
|
// public static final String BASE_POPULATION_IP = "http://192.168.0.15:7023/population/";/*人口系统*/
|
||||||
public static final String BASE_IMG_URL = BASE_IP + "route/file/downloadfile/true/";
|
public static final String BASE_IMG_URL = BASE_IP + "route/file/downloadfile/true/";
|
||||||
public static final String SOCKET_IP = BASE_IP_P + "social/appws";/*SocketIP*/
|
public static final String SOCKET_IP = BASE_IP_P + "social/appws";/*SocketIP*/
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user