个人档案-基础信息、教育经历、个人简历

This commit is contained in:
adam 2022-07-04 16:53:03 +08:00
parent b857e3c4e2
commit a26891d145
31 changed files with 2784 additions and 1054 deletions

View File

@ -7,9 +7,9 @@ package com.tenlionsoft.baselib.core.retrofit_net;
*/
public class BaseUrlApi {
// public static final String IP = "http://192.168.0.3:8080/";/* 测试IP */
// /systemoa/
public static final String IP = "http://121.36.71.250/";/* 测试IP */
public static final String IP = "http://192.168.0.3:8080/";/* 测试IP */
// /systemoa/
// public static final String IP = "http://121.36.71.250/";/* 测试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/";/*人口系统*/

View File

@ -183,6 +183,10 @@ public abstract class BaseFragment extends Fragment {
}
protected void setReLoEnable(boolean isRefresh, boolean isLoadMore) {
mSrlView.setEnableRefresh(isRefresh);
mSrlView.setEnableLoadMore(isLoadMore);
}
/**
* 选择加载状态
@ -254,6 +258,17 @@ public abstract class BaseFragment extends Fragment {
}
}
protected void hideSoftInput() {
View v = mActivity.getCurrentFocus();
if (v != null && v.getWindowToken() != null) {
InputMethodManager manager = (InputMethodManager) mActivity.getSystemService(Context.INPUT_METHOD_SERVICE);
boolean active = manager.isActive();
if (active) {
manager.hideSoftInputFromWindow(v.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
}
}
}
public Context getApplicationContext() {
return context;
}

View File

@ -21,15 +21,14 @@ import androidx.annotation.Nullable;
*/
public class TypeFaceTextView extends androidx.appcompat.widget.AppCompatTextView {
private boolean mIsShowLine;//是否显示标题
private boolean mIsShowHint;//是否显示必填提示
public TypeFaceTextView(Context context) {
this(context, null);
init(context);
}
public TypeFaceTextView(Context context, @Nullable AttributeSet attrs) {
this(context, attrs, 0);
init(context);
}
public TypeFaceTextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
@ -37,6 +36,7 @@ public class TypeFaceTextView extends androidx.appcompat.widget.AppCompatTextVie
TypedArray a = context.getTheme().obtainStyledAttributes(attrs, R.styleable.TypeFaceTextView, defStyleAttr, 0);
int type = a.getInteger(R.styleable.TypeFaceTextView_text_type_cus, 0);
mIsShowLine = a.getBoolean(R.styleable.TypeFaceTextView_text_show_line, false);
mIsShowHint = a.getBoolean(R.styleable.TypeFaceTextView_text_show_hint, false);
if (type == 2) {
TextPaint paint = getPaint();
paint.setFakeBoldText(true);
@ -47,14 +47,17 @@ public class TypeFaceTextView extends androidx.appcompat.widget.AppCompatTextVie
private void init(Context ctx) {
Typeface typeface = FontCache.getTypeface("fonts/pingfang.ttf", ctx);
setTypeface(typeface);
if (mIsShowHint) {
setText(getText(), null);
}
}
@Override
public void setText(CharSequence text, BufferType type) {
if (mIsShowLine) {
String content = " " + text;
if (mIsShowHint) {
String content = " " + text;
SpannableString as = new SpannableString(content);
ImageSpan is = new ImageSpan(getContext(), R.drawable.ic_oa_flow_title_icon);
ImageSpan is = new ImageSpan(getContext(), R.drawable.ic_text_hint_must);
as.setSpan(is, 0, 1, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
super.setText(as, type);
} else {

Binary file not shown.

After

Width:  |  Height:  |  Size: 444 B

View File

@ -22,6 +22,7 @@
<attr name="duration_max" format="integer" />
<attr name="text_type_cus" format="integer" />
<attr name="text_show_line" format="boolean" />
<attr name="text_show_hint" format="boolean" />
<declare-styleable name="JCameraView">
<attr name="iconSize" />
<attr name="iconMargin" />
@ -34,6 +35,7 @@
<declare-styleable name="TypeFaceTextView">
<attr name="text_type_cus" />
<attr name="text_show_line" />
<attr name="text_show_hint" />
</declare-styleable>
<declare-styleable name="DiffuseView">
<attr name="diffuse_color" />

View File

@ -2,6 +2,7 @@ package com.tenlionsoft.oamodule.activity.record;
import android.app.AlertDialog;
import android.content.Intent;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
@ -148,8 +149,44 @@ public class UserRecordDetailActivity extends BaseActivity {
public void onNext(@NonNull List<UserRecordTypeList> userRecordTypeLists) {
mRecordTypeLists = userRecordTypeLists;
if (mRecordTypeLists.size() > 0) {
getUserRecordId();
} else {
refreshView(STATE_LOAD_EMPTY);
}
}
@Override
public void onError(@NonNull Throwable e) {
ExceptionHandler.handleException(e);
refreshView(STATE_LOAD_ERROR);
}
@Override
public void onComplete() {
}
});
}
/**
* 获取个人档案ID
*/
private void getUserRecordId() {
RetrofitManager.getInstance()
.create(OAApi.class)
.getUserRecordId()
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull String bean) {
if (!TextUtils.isEmpty(bean)) {
refreshView(STATE_LOAD_SUCCESS);
initView();
initView(bean);
} else {
refreshView(STATE_LOAD_EMPTY);
}
@ -171,27 +208,31 @@ public class UserRecordDetailActivity extends BaseActivity {
/**
* 初始化视图
*/
private void initView() {
private void initView(String id) {
mFragments = new ArrayList<>();
for (int i = 0; i < mRecordTypeLists.size(); i++) {
UserRecordTypeList bean = mRecordTypeLists.get(i);
if ("基本信息".equals(bean.getTypeName())) {
BaseFragment fragment = FragmentUtils.getFragment(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_BASE, "base");
BaseFragment fragment = FragmentUtils.getFragmentOne(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_BASE, "id", id);
fragment.setCustomTag("base");
mFragments.add(fragment);
mLlTypeBase.setVisibility(View.VISIBLE);
}
if ("教育经历".equals(bean.getTypeName())) {
BaseFragment fragment = FragmentUtils.getFragment(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_EDU, "edu");
BaseFragment fragment = FragmentUtils.getFragmentOne(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_EDU, "id", id);
fragment.setCustomTag("edu");
mFragments.add(fragment);
mLlTypeEdu.setVisibility(View.VISIBLE);
}
if ("工作简历".equals(bean.getTypeName())) {
BaseFragment fragment = FragmentUtils.getFragment(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_WORK, "work");
BaseFragment fragment = FragmentUtils.getFragmentOne(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_WORK, "id", id);
fragment.setCustomTag("work");
mFragments.add(fragment);
mLlTypeWork.setVisibility(View.VISIBLE);
}
if ("个人荣誉".equals(bean.getTypeName())) {
BaseFragment fragment = FragmentUtils.getFragment(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_HONOUR, "honour");
BaseFragment fragment = FragmentUtils.getFragmentOne(PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_HONOUR, "id", id);
fragment.setCustomTag("honour");
mFragments.add(fragment);
mLlTypeHonour.setVisibility(View.VISIBLE);
}
@ -280,143 +321,7 @@ public class UserRecordDetailActivity extends BaseActivity {
// .build(PathConfig.PATH_MODULE_OA_ACTIVITY_RECORD_USER_EDIT)
// .withString("id", b.getUserArchivesId())
// .navigation(mActivity, 12));
// mTvName.setText(b.getName());
// mTvGender.setText(b.getSexName());
// mTvBirthday.setText(b.getBirthday());
// mTvIdCard.setText(b.getIdCard());
// mTvPolitical.setText(b.getPoliticalOutlookName());
// mTvMarital.setText(b.getMaritalStatusName());
// mTvNationality.setText(b.getNationality());
// mTvNativePlace.setText(b.getNativeAddress());
// mTvPassport.setText(b.getResidence());
// mTvPassportType.setText(b.getResidenceNatureName());
// mTvAddress.setText(b.getAddress());
// mTvEmail.setText(b.getEmail());
// mTvPhone.setText(b.getPhone());
// mTvSchool.setText(b.getGraduation());
// mTvSpecialty.setText(b.getMajorName());
// mTvDegree.setText(b.getHighestDegree());
// mTvGraduateDate.setText(b.getGraduationDate());
// mTvLinkMan.setText(b.getEmergencyContact());
// mEtLinkPhone.setText(b.getEmergencyContactPhone());
// mTvObtainDate.setText(b.getJoinTime());
// mTvPositiveDate.setText(b.getCeremonialTime());
// mTvDept.setText(b.getDeptName());
// mTvPost.setText(b.getPostName());
// mTvLeader.setText(b.getDirectSuperiorName());
// mTvBankNum.setText(b.getBankAccount());
// mTvFundNum.setText(b.getFundAccount());
// mTvSocialNum.setText(b.getSecurityAccount());
// mTvJobTitle.setText(b.getTitleName());
// mTvJobLevel.setText(b.getTitleGradeName());
// mTvPersionType.setText(b.getUserTypeName());
// if (b.getEducationList() != null && b.getEducationList().size() > 0) {
// EducateAdapter adapter = new EducateAdapter(mActivity, b.getEducationList(), 1);
// mRlvTeach.setLayoutManager(new LinearLayoutManager(mActivity));
// mRlvTeach.setAdapter(adapter);
// mRlvTeach.setVisibility(View.VISIBLE);
// mRlvTeach.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL, 1, Color.parseColor("#BFBFBF")));
// mTvEducateHint.setVisibility(View.GONE);
// } else {
// mRlvTeach.setVisibility(View.GONE);
// mTvEducateHint.setVisibility(View.VISIBLE);
// }
// if (b.getWorkList() != null && b.getWorkList().size() > 0) {
// ResumeAdapter adapter = new ResumeAdapter(mActivity, b.getWorkList(), 1);
// mRlvResume.setLayoutManager(new LinearLayoutManager(mActivity));
// mRlvResume.setAdapter(adapter);
// mRlvResume.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL, 1, Color.parseColor("#BFBFBF")));
// mRlvResume.setVisibility(View.VISIBLE);
// mTvResumeHint.setVisibility(View.GONE);
// } else {
// mRlvResume.setVisibility(View.GONE);
// mTvResumeHint.setVisibility(View.VISIBLE);
// }
// //证件照
// if (!TextUtils.isEmpty(b.getPhoto())) {
// mRlvImgs.setVisibility(View.VISIBLE);
// List<AddFileBean> files = new ArrayList<>();
// String[] split = b.getPhoto().split(",");
// for (int i = 0; i < split.length; i++) {
// AddFileBean bean = new AddFileBean();
// bean.setId(split[i]);
// bean.setPath(BaseUrlApi.BASE_IMG_URL + split[i]);
// files.add(bean);
// }
// doGetFileInfos(b.getPhoto(), files, 2);
// } else {
// mRlvImgs.setVisibility(View.GONE);
// }
// //简历附件
// if (!TextUtils.isEmpty(b.getResume())) {
// mRlvResumeFile.setVisibility(View.VISIBLE);
// List<AddFileBean> files = new ArrayList<>();
// String[] split = b.getResume().split(",");
// for (int i = 0; i < split.length; i++) {
// AddFileBean bean = new AddFileBean();
// bean.setId(split[i]);
// bean.setPath(BaseUrlApi.BASE_IMG_URL + split[i]);
// files.add(bean);
// }
// doGetFileInfos(b.getResume(), files, 1);
// } else {
// mRlvResumeFile.setVisibility(View.GONE);
// }
// }
// private void doGetFileInfos(String fileId, List<AddFileBean> files, int type) {
// ProgressDialog dialog = UIUtil.initDialog(mActivity, "获取中...");
// dialog.show();
// RetrofitManager.getInstance()
// .create(BaseApiService.class)
// .getFileInfoList(fileId)
// .compose(RxTransformer.getTransformer())
// .subscribe(new Observer<List<FileInfoBean>>() {
// @Override
// public void onSubscribe(@NonNull Disposable d) {
//
// }
//
// @Override
// public void onNext(@NonNull List<FileInfoBean> fileInfoBeans) {
// if (dialog.isShowing()) dialog.dismiss();
// if (fileInfoBeans.size() > 0) {
// for (int i = 0; i < files.size(); i++) {
// for (int j = 0; j < fileInfoBeans.size(); j++) {
// if (files.get(i).getId().equals(fileInfoBeans.get(j).getFileId())) {
// files.get(i).setFileName(fileInfoBeans.get(j).getFileName());
// files.get(i).setFileType(FileUtils.getFileType(fileInfoBeans.get(j).getFileName()));
// }
// }
// }
// if (type == 2) {
// AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
// mRlvImgs.setLayoutManager(new GridLayoutManager(mActivity, 5));
// mRlvImgs.setAdapter(adapter);
// adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
// } else {
// AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
// mRlvResumeFile.setLayoutManager(new LinearLayoutManager(mActivity));
// mRlvResumeFile.setAdapter(adapter);
// adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
// }
//
// } else {
// ToastUtils.show("未找到文档信息");
// }
// }
//
// @Override
// public void onError(@NonNull Throwable e) {
// if (dialog.isShowing()) dialog.dismiss();
// ExceptionHandler.handleException(e);
// }
//
// @Override
// public void onComplete() {
//
// }
// });
// }
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable @org.jetbrains.annotations.Nullable Intent data) {
@ -428,41 +333,6 @@ 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

@ -7,13 +7,9 @@ import android.graphics.Color;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
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.bigkoo.pickerview.builder.OptionsPickerBuilder;
import com.bigkoo.pickerview.builder.TimePickerBuilder;
import com.bigkoo.pickerview.view.OptionsPickerView;
@ -39,10 +35,11 @@ import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
import com.tenlionsoft.baselib.core.widget.base.AddFileAdapter;
import com.tenlionsoft.baselib.core.widget.base.BaseActivity;
import com.tenlionsoft.baselib.core.widget.chat.GlideEngine;
import com.tenlionsoft.baselib.core.widget.views.ItemSplitDivider;
import com.tenlionsoft.baselib.core.widget.views.TypeFaceEditText;
import com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.FileUtils;
import com.tenlionsoft.baselib.utils.LogUtils;
import com.tenlionsoft.baselib.utils.RegexUtils;
import com.tenlionsoft.baselib.utils.TimeUtils;
import com.tenlionsoft.baselib.utils.UIUtil;
@ -51,15 +48,11 @@ import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.adapter.EducateAdapter;
import com.tenlionsoft.oamodule.adapter.ResumeAdapter;
import com.tenlionsoft.oamodule.beans.ChoosePersonListBean;
import com.tenlionsoft.oamodule.beans.DepartmentListBean;
import com.tenlionsoft.oamodule.beans.SaveEducateBean;
import com.tenlionsoft.oamodule.beans.SaveResumeBean;
import com.tenlionsoft.oamodule.beans.SaveUserRecordBean;
import com.tenlionsoft.oamodule.beans.UserRecordDetailBean;
import com.tenlionsoft.oamodule.net.OAApi;
import com.tenlionsoft.oamodule.widget.EducateDialog;
import com.tenlionsoft.oamodule.widget.ResumeDialog;
import org.jetbrains.annotations.NotNull;
@ -92,101 +85,78 @@ import okhttp3.RequestBody;
public class UserRecordEditActivity extends BaseActivity {
@BindView(R2.id.rlv_imgs)
RecyclerView mRlvImgs;
@BindView(R2.id.tv_number)
TypeFaceTextView mTvNumber;
@BindView(R2.id.et_name)
EditText mEtName;
TypeFaceEditText mEtName;
@BindView(R2.id.tv_gender)
TextView mTvGender;
TypeFaceTextView mTvGender;
@BindView(R2.id.tv_birthday)
TextView mTvBirthday;
TypeFaceTextView mTvBirthday;
@BindView(R2.id.et_id_card)
EditText mEtIdCard;
TypeFaceEditText mEtIdCard;
@BindView(R2.id.tv_political)
TextView mTvPolitical;
TypeFaceTextView mTvPolitical;
@BindView(R2.id.tv_marital)
TextView mTvMarital;
TypeFaceTextView mTvMarital;
@BindView(R2.id.et_nationality)
EditText mEtNationality;
TypeFaceEditText mEtNationality;
@BindView(R2.id.et_native_place)
EditText mEtNativePlace;
TypeFaceEditText mEtNativePlace;
@BindView(R2.id.et_passport)
EditText mEtPassport;
TypeFaceEditText mEtPassport;
@BindView(R2.id.tv_passport_type)
TextView mTvPassportType;
TypeFaceTextView mTvPassportType;
@BindView(R2.id.et_address)
EditText mEtAddress;
TypeFaceEditText mEtAddress;
@BindView(R2.id.et_email)
EditText mEtEmail;
TypeFaceEditText mEtEmail;
@BindView(R2.id.et_phone)
EditText mEtPhone;
TypeFaceEditText mEtPhone;
@BindView(R2.id.et_school)
EditText mEtSchool;
TypeFaceEditText mEtSchool;
@BindView(R2.id.tv_specialty)
TextView mTvSpecialty;
TypeFaceTextView mTvSpecialty;
@BindView(R2.id.et_degree)
EditText mEtDegree;
TypeFaceEditText mEtDegree;
@BindView(R2.id.tv_graduate_date)
TextView mTvGraduateDate;
TypeFaceTextView mTvGraduateDate;
@BindView(R2.id.et_link_man)
EditText mEtLinkMan;
TypeFaceEditText mEtLinkMan;
@BindView(R2.id.et_link_phone)
EditText mEtLinkPhone;
TypeFaceEditText mEtLinkPhone;
@BindView(R2.id.ll_base)
LinearLayout mLlBase;
@BindView(R2.id.tv_obtain_date)
TextView mTvObtainDate;
TypeFaceTextView mTvObtainDate;
@BindView(R2.id.tv_positive_date)
TextView mTvPositiveDate;
@BindView(R2.id.tv_dept)
TextView mTvDept;
@BindView(R2.id.tv_post)
TextView mTvPost;
@BindView(R2.id.tv_leader)
TextView mTvLeader;
TypeFaceTextView mTvPositiveDate;
@BindView(R2.id.tv_leave_date)
TypeFaceTextView mTvLeaveDate;
@BindView(R2.id.et_bank_num)
EditText mEtBankNum;
TypeFaceEditText mEtBankNum;
@BindView(R2.id.et_fund_num)
EditText mEtFundNum;
TypeFaceEditText mEtFundNum;
@BindView(R2.id.et_social_num)
EditText mEtSocialNum;
TypeFaceEditText mEtSocialNum;
@BindView(R2.id.tv_job_title)
TextView mTvJobTitle;
TypeFaceTextView mTvJobTitle;
@BindView(R2.id.tv_job_level)
TextView mTvJobLevel;
TypeFaceTextView mTvJobLevel;
@BindView(R2.id.tv_persion_type)
TextView mTvPersionType;
@BindView(R2.id.rlv_resume)
RecyclerView mRlvResume;
@BindView(R2.id.rlv_resume_file)
RecyclerView mRlvResumeFile;
@BindView(R2.id.ll_job)
LinearLayout mLlJob;
@BindView(R2.id.btn_del)
Button mBtnDel;
@BindView(R2.id.rlv_imgs)
RecyclerView mRlvImgs;
@BindView(R2.id.btn_add_educate)
Button mBtnAddEducate;
@BindView(R2.id.rlv_educate)
RecyclerView mRlvEducate;
@BindView(R2.id.tv_educate_int)
TextView mTvEducateInt;
TypeFaceTextView mTvPersionType;
@BindView(R2.id.btn_add_resume)
Button mBtnAddResume;
@BindView(R2.id.rlv_resume_file)
RecyclerView mRlvResumeFile;
@BindView(R2.id.tv_resume_int)
TextView mTvResumeInt;
@BindView(R2.id.tv_type_base)
TypeFaceTextView mTvTypeBase;
@BindView(R2.id.iv_type_base)
ImageView mIvTypeBase;
@BindView(R2.id.ll_type_base)
LinearLayout mLlTypeBase;
@BindView(R2.id.tv_type_job)
TypeFaceTextView mTvTypeJob;
@BindView(R2.id.iv_type_job)
ImageView mIvTypeJob;
@BindView(R2.id.ll_type_job)
LinearLayout mLlTypeJob;
TypeFaceTextView mTvResumeInt;
@BindView(R2.id.ll_job)
LinearLayout mLlJob;
@BindView(R2.id.btn_confirm)
Button mBtnConfirm;
//性别
private List<DicBean> mGenderList;
private DicBean mSelGender;
@ -205,7 +175,7 @@ public class UserRecordEditActivity extends BaseActivity {
private OptionsPickerView<DicBean> mSpecialtyPicker;
//岗位
private List<DicBean> mPostList;
private DicBean mSelPost;
// private DicBean mSelPost;
private OptionsPickerView<DicBean> mPostPicker;
//职称
private List<DicBean> mJobTitleList;
@ -224,8 +194,8 @@ public class UserRecordEditActivity extends BaseActivity {
private DicBean mSelPolitical;
private OptionsPickerView<DicBean> mPoliticalPicker;
//所在部门
private DepartmentListBean mSelDept;
private ChoosePersonListBean mSelLeader;
// private DepartmentListBean mSelDept;
// private ChoosePersonListBean mSelLeader;
private String mId;
private List<SaveEducateBean> mEducateDetailBeans;
@ -240,6 +210,7 @@ public class UserRecordEditActivity extends BaseActivity {
private List<AddFileBean> mFileBeans;//简历
private AddFileAdapter mFileAdapter;//简历
private String[] fileFilter = new String[]{".doc", ".docx", ".xls", ".xlsx", ".pptx", ".ppt", ".txt", ".pdf"};
private UserRecordDetailBean mDBean;
@Override
protected int setLayoutId() {
@ -252,6 +223,7 @@ public class UserRecordEditActivity extends BaseActivity {
mTvBaseTitle.setText("个人档案编辑");
initView();
mId = getIntent().getStringExtra("id");
LogUtils.e(mId);
if (TextUtils.isEmpty(mId)) {
ToastUtils.show("数据有误");
finish();
@ -273,11 +245,14 @@ public class UserRecordEditActivity extends BaseActivity {
@Override
public void onNext(@NonNull UserRecordDetailBean userRecordDetailBean) {
if (!TextUtils.isEmpty(userRecordDetailBean.getUserArchivesId())) {
mTvNumber.setText(userRecordDetailBean.getArchivesNum());
mDBean = userRecordDetailBean;
if (!TextUtils.isEmpty(userRecordDetailBean.getSex())) {
mTvResumeInt.setVisibility(View.VISIBLE);
setDataToView(userRecordDetailBean);
} else {
ToastUtils.show("数据有误");
finish();
mTvResumeInt.setVisibility(View.GONE);
refreshView(STATE_LOAD_SUCCESS);
}
}
@ -338,25 +313,12 @@ public class UserRecordEditActivity extends BaseActivity {
mEtDegree.setText(b.getHighestDegree());
mTvGraduateDate.setText(b.getGraduationDate());
mTvLeaveDate.setText(b.getQuitTime());
mEtLinkMan.setText(b.getEmergencyContact());
mEtLinkPhone.setText(b.getEmergencyContactPhone());
mTvObtainDate.setText(b.getJoinTime());
mTvPositiveDate.setText(b.getCeremonialTime());
mTvDept.setText(b.getDeptName());
mSelDept = new DepartmentListBean();
mSelDept.setDepartmentId(b.getDept());
mSelDept.setDepartmentName(b.getDeptName());
mTvPost.setText(b.getPostName());
mSelPost = new DicBean();
mSelPost.setDataId(b.getPost());
mSelPost.setDataName(b.getPostName());
mTvLeader.setText(b.getDirectSuperiorName());
mSelLeader = new ChoosePersonListBean();
mSelLeader.setUserName(b.getDirectSuperiorName());
mSelLeader.setUserId(b.getDirectSuperior());
mEtBankNum.setText(b.getBankAccount());
mEtFundNum.setText(b.getFundAccount());
@ -376,32 +338,20 @@ public class UserRecordEditActivity extends BaseActivity {
mSelPersonType.setDataName(b.getUserTypeName());
mSelPersonType.setDataId(b.getUserType());
//教育经历
if (b.getEducationList() != null && b.getEducationList().size() > 0) {
mTvEducateInt.setVisibility(View.GONE);
mRlvEducate.setVisibility(View.VISIBLE);
mEducateDetailBeans = b.getEducationList();
mEducateAdapter.setData(mEducateDetailBeans);
} else {
mTvEducateInt.setVisibility(View.VISIBLE);
mRlvEducate.setVisibility(View.GONE);
}
//工作简历
if (b.getWorkList() != null && b.getWorkList().size() > 0) {
mResumeBeans = b.getWorkList();
mResumeAdapter.setData(mResumeBeans);
mRlvResume.setVisibility(View.VISIBLE);
mTvResumeInt.setVisibility(View.GONE);
} else {
mRlvResume.setVisibility(View.GONE);
mTvResumeInt.setVisibility(View.VISIBLE);
}
//证件照
if (!TextUtils.isEmpty(b.getPhoto())) {
doGetFileInfos(b.getPhoto(), null, 2);
} else {
if (mImgList != null && mImgList.size() > 0) {
mImgList.clear();
mImgAdapter.setData(mImgList);
}
}
//简历附件
if (!TextUtils.isEmpty(b.getResume())) {
mRlvResumeFile.setVisibility(View.VISIBLE);
mTvResumeInt.setVisibility(View.GONE);
List<AddFileBean> files = new ArrayList<>();
String[] split = b.getResume().split(",");
for (int i = 0; i < split.length; i++) {
@ -411,6 +361,13 @@ public class UserRecordEditActivity extends BaseActivity {
files.add(bean);
}
doGetFileInfos(b.getResume(), files, 1);
} else {
if (mFileBeans != null && mFileBeans.size() > 0) {
mFileBeans.clear();
mFileAdapter.setData(mFileBeans);
}
mRlvResumeFile.setVisibility(View.GONE);
mTvResumeInt.setVisibility(View.VISIBLE);
}
}
@ -472,35 +429,19 @@ public class UserRecordEditActivity extends BaseActivity {
mTvObtainDate.setText(currentDate);
mTvGraduateDate.setText(currentDate);
mEtName.setText(UserLgUtils.getName());
mBtnAddResume.setVisibility(View.GONE);
// mTvPublish.setVisibility(View.VISIBLE);
// mTvPublish.setText("保存");
// mTvPublish.setOnClickListener(v -> doSaveRecord());
mTvPublish.setVisibility(View.VISIBLE);
mTvPublish.setText("保存");
mTvPublish.setOnClickListener(v -> doSaveRecord());
//个人简历
mLlTypeBase.setOnClickListener(v -> {
mLlBase.setVisibility(View.VISIBLE);
mLlJob.setVisibility(View.GONE);
mTvTypeBase.setTextColor(getResources().getColor(R.color.black_10));
mTvTypeJob.setTextColor(getResources().getColor(R.color.gray_a9));
mIvTypeBase.setVisibility(View.VISIBLE);
mIvTypeJob.setVisibility(View.INVISIBLE);
});
//工作简历
mLlTypeJob.setOnClickListener(v -> {
mLlBase.setVisibility(View.GONE);
mLlJob.setVisibility(View.VISIBLE);
mTvTypeBase.setTextColor(getResources().getColor(R.color.gray_a9));
mTvTypeJob.setTextColor(getResources().getColor(R.color.black_10));
mIvTypeBase.setVisibility(View.INVISIBLE);
mIvTypeJob.setVisibility(View.VISIBLE);
});
mTvGender.setOnClickListener(v -> onShowGender());
mTvPolitical.setOnClickListener(v -> onShowPolitical());
mTvMarital.setOnClickListener(v -> onShowMarital());
mTvPassportType.setOnClickListener(v -> onShowPassportType());
mTvSpecialty.setOnClickListener(v -> onShowSpecialty());
mTvPost.setOnClickListener(v -> onShowPost());
mTvJobTitle.setOnClickListener(v -> onShowJobTitle());
mTvJobLevel.setOnClickListener(v -> onShowJobLevel());
mTvPersionType.setOnClickListener(v -> onShowPersonType());
@ -508,69 +449,8 @@ public class UserRecordEditActivity extends BaseActivity {
mTvGraduateDate.setOnClickListener(v -> onShowDate(2));
mTvObtainDate.setOnClickListener(v -> onShowDate(3));
mTvPositiveDate.setOnClickListener(v -> onShowDate(4));
mTvDept.setOnClickListener(v -> ARouter.getInstance()
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_SEL_DEPT)
.navigation(mActivity, 12));
mTvLeader.setOnClickListener(v -> {
if (mSelDept == null) {
ToastUtils.show("请选择所在部门");
} else {
ARouter.getInstance()
.build(PathConfig.PATH_MODULE_OA_ACTIVITY_SEL_PERSON)
.withBoolean("isSingle", true)
.withString("deptName", mSelDept.getDepartmentName())
.withString("deptId", mSelDept.getDepartmentId())
.navigation(mActivity, 13);
}
});
//教育经历
mEducateDetailBeans = new ArrayList<>();
mEducateAdapter = new EducateAdapter(mActivity, mEducateDetailBeans, 2);
mRlvEducate.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvEducate.setAdapter(mEducateAdapter);
mRlvEducate.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL, 1, Color.parseColor("#BFBFBF")));
mBtnAddEducate.setOnClickListener(v -> showAddEducateDialog(null, 1, 0));
mEducateAdapter.addOnDelOrEditListener(new EducateAdapter.OnDelOrEditListener() {
@Override
public void onDelBean(SaveEducateBean bean, int i) {
mEducateDetailBeans.remove(i);
mEducateAdapter.setData(mEducateDetailBeans);
if (mEducateDetailBeans.size() > 0) {
mTvEducateInt.setVisibility(View.GONE);
} else {
mTvEducateInt.setVisibility(View.VISIBLE);
}
}
@Override
public void onEditBean(SaveEducateBean bean, int i) {
showAddEducateDialog(bean, 2, i);
}
});
//工作简历
mResumeBeans = new ArrayList<>();
mResumeAdapter = new ResumeAdapter(mActivity, mResumeBeans, 2);
mRlvResume.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvResume.setAdapter(mResumeAdapter);
mRlvResume.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL, 1, Color.parseColor("#BFBFBF")));
mBtnAddResume.setOnClickListener(v -> showAddResumeDialog(null, 1, 0));
mResumeAdapter.addOnDelOrEditListener(new ResumeAdapter.OnDelOrEditListener() {
@Override
public void onDel(SaveResumeBean bean, int i) {
mResumeBeans.remove(i);
mResumeAdapter.setData(mResumeBeans);
if (mResumeBeans.size() > 0) {
mTvResumeInt.setVisibility(View.GONE);
} else {
mTvResumeInt.setVisibility(View.VISIBLE);
}
}
@Override
public void onEdit(SaveResumeBean bean, int i) {
showAddResumeDialog(bean, 2, i);
}
});
mTvLeaveDate.setOnClickListener(v -> onShowDate(5));
mBtnConfirm.setOnClickListener(v -> doSaveRecord());
//证件照
@ -612,9 +492,6 @@ public class UserRecordEditActivity extends BaseActivity {
.withFileFilter(fileFilter)
.start();
}
} else {
}
});
//删除上传的文件
@ -626,88 +503,85 @@ public class UserRecordEditActivity extends BaseActivity {
});
mRlvResumeFile.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvResumeFile.setAdapter(mFileAdapter);
mBtnDel.setOnClickListener(v -> onShowConfirm());
}
private void showAddResumeDialog(SaveResumeBean bean, int type, int pos) {
ResumeDialog dialog = new ResumeDialog.Builder(mActivity)
.setType(type)
.setBean(bean)
.build();
dialog.addOnChangeListener(new ResumeDialog.OnChangeListener() {
@Override
public void doSave(SaveResumeBean bean) {
//新增教育经历
dialog.dismiss();
mResumeBeans.add(bean);
mResumeAdapter.setData(mResumeBeans);
if (mResumeBeans.size() > 0) {
mTvResumeInt.setVisibility(View.GONE);
mRlvResume.setVisibility(View.VISIBLE);
} else {
mTvResumeInt.setVisibility(View.VISIBLE);
mRlvResume.setVisibility(View.GONE);
}
}
@Override
public void doEdit(SaveResumeBean bean) {
dialog.dismiss();
//编辑
SaveResumeBean bean1 = mResumeBeans.get(pos);
bean1.setWorkUnit(bean.getWorkUnit());
bean1.setDept(bean.getDept());
bean1.setWorkContent(bean.getWorkContent());
bean.setQuitReason(bean.getQuitReason());
bean1.setStartTime(bean.getStartTime());
bean1.setEndTime(bean.getEndTime());
mResumeAdapter.setData(mResumeBeans);
}
});
dialog.show();
}
// private void showAddResumeDialog(SaveResumeBean bean, int type, int pos) {
// ResumeDialog dialog = new ResumeDialog.Builder(mActivity)
// .setType(type)
// .setBean(bean)
// .build();
// dialog.addOnChangeListener(new ResumeDialog.OnChangeListener() {
// @Override
// public void doSave(SaveResumeBean bean) {
// //新增教育经历
// dialog.dismiss();
// mResumeBeans.add(bean);
// mResumeAdapter.setData(mResumeBeans);
// if (mResumeBeans.size() > 0) {
// mTvResumeInt.setVisibility(View.GONE);
// mRlvResume.setVisibility(View.VISIBLE);
// } else {
// mTvResumeInt.setVisibility(View.VISIBLE);
// mRlvResume.setVisibility(View.GONE);
// }
// }
//
// @Override
// public void doEdit(SaveResumeBean bean) {
// dialog.dismiss();
// //编辑
// SaveResumeBean bean1 = mResumeBeans.get(pos);
// bean1.setWorkUnit(bean.getWorkUnit());
// bean1.setDept(bean.getDept());
// bean1.setWorkContent(bean.getWorkContent());
// bean.setQuitReason(bean.getQuitReason());
// bean1.setStartTime(bean.getStartTime());
// bean1.setEndTime(bean.getEndTime());
// mResumeAdapter.setData(mResumeBeans);
// }
// });
// dialog.show();
// }
/**
* 显示添加 编辑
*/
private void showAddEducateDialog(SaveEducateBean bean, int type, int pos) {
EducateDialog dialog = new EducateDialog.Builder(mActivity)
.setType(type)
.setBean(bean)
.build();
dialog.addOnChangeListener(new EducateDialog.OnChangeListener() {
@Override
public void doSave(SaveEducateBean bean) {
//新增教育经历
dialog.dismiss();
mEducateDetailBeans.add(bean);
mEducateAdapter.setData(mEducateDetailBeans);
if (mEducateDetailBeans.size() > 0) {
mRlvEducate.setVisibility(View.VISIBLE);
mTvEducateInt.setVisibility(View.GONE);
} else {
mRlvEducate.setVisibility(View.GONE);
mTvEducateInt.setVisibility(View.VISIBLE);
}
}
@Override
public void doEdit(SaveEducateBean bean) {
dialog.dismiss();
//编辑
SaveEducateBean bean1 = mEducateDetailBeans.get(pos);
bean1.setSchoolName(bean.getSchoolName());
bean1.setEducation(bean.getEducation());
bean1.setMajor(bean.getMajor());
bean1.setStartTime(bean.getStartTime());
bean1.setEndTime(bean.getEndTime());
mEducateAdapter.setData(mEducateDetailBeans);
}
});
dialog.show();
}
// private void showAddEducateDialog(SaveEducateBean bean, int type, int pos) {
// EducateDialog dialog = new EducateDialog.Builder(mActivity)
// .setType(type)
// .setBean(bean)
// .build();
// dialog.addOnChangeListener(new EducateDialog.OnChangeListener() {
// @Override
// public void doSave(SaveEducateBean bean) {
// //新增教育经历
// dialog.dismiss();
// mEducateDetailBeans.add(bean);
// mEducateAdapter.setData(mEducateDetailBeans);
// if (mEducateDetailBeans.size() > 0) {
// mRlvEducate.setVisibility(View.VISIBLE);
// mTvEducateInt.setVisibility(View.GONE);
// } else {
// mRlvEducate.setVisibility(View.GONE);
// mTvEducateInt.setVisibility(View.VISIBLE);
// }
// }
//
// @Override
// public void doEdit(SaveEducateBean bean) {
// dialog.dismiss();
// //编辑
// SaveEducateBean bean1 = mEducateDetailBeans.get(pos);
// bean1.setSchoolName(bean.getSchoolName());
// bean1.setEducation(bean.getEducation());
// bean1.setMajor(bean.getMajor());
// bean1.setStartTime(bean.getStartTime());
// bean1.setEndTime(bean.getEndTime());
// mEducateAdapter.setData(mEducateDetailBeans);
// }
// });
// dialog.show();
// }
private void onShowConfirm() {
new AlertDialog.Builder(mActivity)
.setTitle("提示")
@ -847,26 +721,26 @@ public class UserRecordEditActivity extends BaseActivity {
}
//岗位 5
private void onShowPost() {
hideSoftKeyboard();
if (mPostList != null && mPostList.size() > 0) {
if (mPostPicker == null) {
mPostPicker = new OptionsPickerBuilder(mActivity, (o1, o2, o3, v) -> {
mSelPost = mPostList.get(o1);
mTvPost.setText(mSelPost.getDataName());
})
.setTitleText("请选择")
.setCancelColor(Color.parseColor("#1189FF"))
.setSubmitColor(Color.parseColor("#1189FF"))
.setTitleColor(Color.parseColor("#1189FF"))
.build();
mPostPicker.setPicker(mPostList);
}
mPostPicker.show();
} else {
getDicListByType(DicIds.DIC_POST, 5);
}
}
// private void onShowPost() {
// hideSoftKeyboard();
// if (mPostList != null && mPostList.size() > 0) {
// if (mPostPicker == null) {
// mPostPicker = new OptionsPickerBuilder(mActivity, (o1, o2, o3, v) -> {
// mSelPost = mPostList.get(o1);
// mTvPost.setText(mSelPost.getDataName());
// })
// .setTitleText("请选择")
// .setCancelColor(Color.parseColor("#1189FF"))
// .setSubmitColor(Color.parseColor("#1189FF"))
// .setTitleColor(Color.parseColor("#1189FF"))
// .build();
// mPostPicker.setPicker(mPostList);
// }
// mPostPicker.show();
// } else {
// getDicListByType(DicIds.DIC_POST, 5);
// }
// }
//职称 6
private void onShowJobTitle() {
@ -976,6 +850,8 @@ public class UserRecordEditActivity extends BaseActivity {
case 4://转正日期
mTvPositiveDate.setText(TimeUtils.dateToString(date));
break;
case 5://离职日期
mTvLeaveDate.setText(TimeUtils.dateToString(date));
}
})
.setTitleText("请选日期")
@ -1028,7 +904,7 @@ public class UserRecordEditActivity extends BaseActivity {
break;
case 5://岗位
mPostList = beans;
onShowPost();
// onShowPost();
break;
case 6://职称
mJobTitleList = beans;
@ -1070,11 +946,11 @@ public class UserRecordEditActivity extends BaseActivity {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == 12) {
mSelDept = (DepartmentListBean) data.getSerializableExtra("bean");
mTvDept.setText(mSelDept.getDepartmentName());
// mSelDept = (DepartmentListBean) data.getSerializableExtra("bean");
// mTvDept.setText(mSelDept.getDepartmentName());
} else if (requestCode == 13) {
mSelLeader = (ChoosePersonListBean) data.getSerializableExtra("bean");
mTvLeader.setText(mSelLeader.getUserName());
// mSelLeader = (ChoosePersonListBean) data.getSerializableExtra("bean");
// mTvLeader.setText(mSelLeader.getUserName());
} else if (requestCode == 123) {
// 图片选择结果回调
List<LocalMedia> selectList = PictureSelector.obtainMultipleResult(data);
@ -1256,11 +1132,11 @@ public class UserRecordEditActivity extends BaseActivity {
ToastUtils.show("请输入姓名");
return false;
}
String birthday = mTvBirthday.getText().toString().trim();
if (TextUtils.isEmpty(birthday)) {
ToastUtils.show("请选择出生日期");
return false;
}
// String birthday = mTvBirthday.getText().toString().trim();
// if (TextUtils.isEmpty(birthday)) {
// ToastUtils.show("请选择出生日期");
// return false;
// }
if (mSelGender == null) {
ToastUtils.show("请选择性别");
return false;
@ -1291,18 +1167,7 @@ public class UserRecordEditActivity extends BaseActivity {
ToastUtils.show("请选择专业");
return false;
}
if (mSelDept == null) {
ToastUtils.show("请选择所在部门");
return false;
}
if (mSelPost == null) {
ToastUtils.show("请选择岗位");
return false;
}
if (mSelLeader == null) {
ToastUtils.show("请选择直接上级");
return false;
}
if (mSelJobTitle == null) {
ToastUtils.show("请选择职称");
return false;
@ -1321,6 +1186,7 @@ public class UserRecordEditActivity extends BaseActivity {
private RequestBody buildParams() {
SaveUserRecordBean bean = new SaveUserRecordBean();
String name = mEtName.getText().toString().trim();
bean.setArchivesNum(mDBean.getArchivesNum());//档案编号
bean.setName(name);//姓名
bean.setSex(mSelGender.getDataId());//性别
String birthday = mTvBirthday.getText().toString().trim();
@ -1357,9 +1223,11 @@ public class UserRecordEditActivity extends BaseActivity {
bean.setJoinTime(obtainDate);//入职日期
String posDate = mTvPositiveDate.getText().toString().trim();
bean.setCeremonialTime(posDate);//转正日期
bean.setDept(mSelDept.getDepartmentId());//所在部门
bean.setPost(mSelPost.getDataId());//岗位
bean.setDirectSuperior(mSelLeader.getUserId());//领导
String leaveDate = mTvLeaveDate.getText().toString().trim();
bean.setQuitTime(leaveDate);//离职日期
// bean.setDept(mSelDept.getDepartmentId());//所在部门
// bean.setPost(mSelPost.getDataId());//岗位
// bean.setDirectSuperior(mSelLeader.getUserId());//领导
String bankNum = mEtBankNum.getText().toString().trim();
bean.setBankAccount(bankNum);//银行账号
String fundNum = mEtFundNum.getText().toString().trim();//公积金

View File

@ -51,6 +51,11 @@ public class EducateAdapter extends BaseRecyclerAdapter<SaveEducateBean, Educate
h.mBtnEdit.setVisibility(View.VISIBLE);
h.mBtnDel.setVisibility(View.VISIBLE);
}
if (i == (mData.size() - 1)) {
h.mLine.setVisibility(View.GONE);
} else {
h.mLine.setVisibility(View.VISIBLE);
}
}
private OnDelOrEditListener mListener;

View File

@ -52,6 +52,11 @@ public class ResumeAdapter extends BaseRecyclerAdapter<SaveResumeBean, ResumeHol
h.mBtnEdit.setVisibility(View.VISIBLE);
h.mBtnDel.setVisibility(View.VISIBLE);
}
if (i == (mData.size() - 1)) {
h.mLine.setVisibility(View.GONE);
}else{
h.mLine.setVisibility(View.VISIBLE);
}
}
private OnDelOrEditListener mEditListener;

View File

@ -7,12 +7,12 @@ package com.tenlionsoft.oamodule.beans;
* 描述:
*/
public class SaveEducateBean {
private String creator;
private String education;
private String endTime;
private String gmtCreate;
private String gmtModified;
private int isDelete;
private String major;
private String modifier;
private int number;
@ -21,6 +21,8 @@ public class SaveEducateBean {
private String userArchivesId;
private String userEducationId;
public String getCreator() {
return creator;
}
@ -61,6 +63,13 @@ public class SaveEducateBean {
this.gmtModified = gmtModified;
}
public int getIsDelete() {
return isDelete;
}
public void setIsDelete(int isDelete) {
this.isDelete = isDelete;
}
public String getMajor() {
return major;

View File

@ -0,0 +1,65 @@
package com.tenlionsoft.oamodule.beans;
/**
* 作者: adam
* 日期: 2022/7/4 - 16:08
* 邮箱: itgaojian@163.com
* 描述: 个人荣誉
*/
public class SaveHonourBean {
private String getDate;
private String honorName;
private String introduction;
private String issuingAuthority;
private String photo;
private String userArchivesId;
public String getGetDate() {
return getDate;
}
public void setGetDate(String getDate) {
this.getDate = getDate;
}
public String getHonorName() {
return honorName;
}
public void setHonorName(String honorName) {
this.honorName = honorName;
}
public String getIntroduction() {
return introduction;
}
public void setIntroduction(String introduction) {
this.introduction = introduction;
}
public String getIssuingAuthority() {
return issuingAuthority;
}
public void setIssuingAuthority(String issuingAuthority) {
this.issuingAuthority = issuingAuthority;
}
public String getPhoto() {
return photo;
}
public void setPhoto(String photo) {
this.photo = photo;
}
public String getUserArchivesId() {
return userArchivesId;
}
public void setUserArchivesId(String userArchivesId) {
this.userArchivesId = userArchivesId;
}
}

View File

@ -7,9 +7,13 @@ package com.tenlionsoft.oamodule.beans;
* 描述:
*/
public class SaveResumeBean {
private String creator;
private String dept;
private String endTime;
private String gmtCreate;
private String gmtModified;
private int isDelete;
private String modifier;
private int number;
private String quitReason;
private String startTime;
@ -18,6 +22,14 @@ public class SaveResumeBean {
private String workContent;
private String workUnit;
public String getCreator() {
return creator;
}
public void setCreator(String creator) {
this.creator = creator;
}
public String getDept() {
return dept;
}
@ -34,6 +46,38 @@ public class SaveResumeBean {
this.endTime = endTime;
}
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 getIsDelete() {
return isDelete;
}
public void setIsDelete(int isDelete) {
this.isDelete = isDelete;
}
public String getModifier() {
return modifier;
}
public void setModifier(String modifier) {
this.modifier = modifier;
}
public int getNumber() {
return number;
}

View File

@ -68,7 +68,6 @@ public class UserRecordDetailBean {
private List<SaveEducateBean> educationList;
private List<SaveResumeBean> workList;
public String getAddress() {
return address;
}
@ -518,6 +517,4 @@ public class UserRecordDetailBean {
}
}

View File

@ -1,11 +1,51 @@
package com.tenlionsoft.oamodule.fragments;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
import com.hjq.toast.ToastUtils;
import com.tenlionsoft.baselib.constant.PathConfig;
import com.tenlionsoft.baselib.core.beans.AddFileBean;
import com.tenlionsoft.baselib.core.retrofit_net.BaseUrlApi;
import com.tenlionsoft.baselib.core.retrofit_net.RetrofitManager;
import com.tenlionsoft.baselib.core.retrofit_net.api.BaseApiService;
import com.tenlionsoft.baselib.core.retrofit_net.bean.FileInfoBean;
import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
import com.tenlionsoft.baselib.core.widget.base.AddFileAdapter;
import com.tenlionsoft.baselib.core.widget.base.BaseFragment;
import com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.FileUtils;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.activity.record.UserRecordEditActivity;
import com.tenlionsoft.oamodule.beans.UserRecordDetailBean;
import com.tenlionsoft.oamodule.net.OAApi;
import java.util.ArrayList;
import java.util.List;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.recyclerview.widget.GridLayoutManager;
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;
import static android.app.Activity.RESULT_OK;
import static com.tenlionsoft.baselib.core.widget.PhotoActivity.TAG_IMGURL;
/**
* 作者: adam
@ -16,6 +56,87 @@ import com.tenlionsoft.oamodule.R;
@Route(path = PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_BASE)
public class UserRecordBaseFragment extends BaseFragment {
@BindView(R2.id.rlv_imgs)
RecyclerView mRlvImgs;
@BindView(R2.id.tv_number)
TypeFaceTextView mTvNumber;
@BindView(R2.id.tv_name)
TypeFaceTextView mTvName;
@BindView(R2.id.tv_gender)
TypeFaceTextView mTvGender;
@BindView(R2.id.tv_birthday)
TypeFaceTextView mTvBirthday;
@BindView(R2.id.tv_id_card)
TypeFaceTextView mTvIdCard;
@BindView(R2.id.tv_political)
TypeFaceTextView mTvPolitical;
@BindView(R2.id.tv_marital)
TypeFaceTextView mTvMarital;
@BindView(R2.id.tv_nationality)
TypeFaceTextView mTvNationality;
@BindView(R2.id.tv_native_place)
TypeFaceTextView mTvNativePlace;
@BindView(R2.id.tv_passport)
TypeFaceTextView mTvPassport;
@BindView(R2.id.tv_passport_type)
TypeFaceTextView mTvPassportType;
@BindView(R2.id.tv_address)
TypeFaceTextView mTvAddress;
@BindView(R2.id.tv_email)
TypeFaceTextView mTvEmail;
@BindView(R2.id.tv_phone)
TypeFaceTextView mTvPhone;
@BindView(R2.id.tv_school)
TypeFaceTextView mTvSchool;
@BindView(R2.id.tv_specialty)
TypeFaceTextView mTvSpecialty;
@BindView(R2.id.tv_degree)
TypeFaceTextView mTvDegree;
@BindView(R2.id.tv_graduate_date)
TypeFaceTextView mTvGraduateDate;
@BindView(R2.id.tv_link_man)
TypeFaceTextView mTvLinkMan;
@BindView(R2.id.et_link_phone)
TypeFaceTextView mEtLinkPhone;
@BindView(R2.id.ll_base)
LinearLayout mLlBase;
@BindView(R2.id.tv_obtain_date)
TypeFaceTextView mTvObtainDate;
@BindView(R2.id.tv_positive_date)
TypeFaceTextView mTvPositiveDate;
@BindView(R2.id.tv_leave_date)
TypeFaceTextView mTvLeaveDate;
@BindView(R2.id.tv_bank_num)
TypeFaceTextView mTvBankNum;
@BindView(R2.id.tv_fund_num)
TypeFaceTextView mTvFundNum;
@BindView(R2.id.tv_social_num)
TypeFaceTextView mTvSocialNum;
@BindView(R2.id.tv_job_title)
TypeFaceTextView mTvJobTitle;
@BindView(R2.id.tv_job_level)
TypeFaceTextView mTvJobLevel;
@BindView(R2.id.tv_persion_type)
TypeFaceTextView mTvPersionType;
@BindView(R2.id.rlv_resume_file)
RecyclerView mRlvResumeFile;
@BindView(R2.id.tv_resume_hint)
TypeFaceTextView mTvResumeHint;
@BindView(R2.id.ll_job)
LinearLayout mLlJob;
@BindView(R2.id.btn_edit)
Button mBtnEdit;
private String mId;
private UserRecordDetailBean mDetailBean;
private ActivityResultLauncher<Intent> mLauncher = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
result -> {
if (result.getResultCode() == RESULT_OK) {
setStateView(STATE_LOAD);
getUserRecordDetail();
}
});
@Override
protected int getContentViewId() {
return R.layout.fragment_user_record_base_phone;
@ -23,7 +144,215 @@ public class UserRecordBaseFragment extends BaseFragment {
@Override
protected void setDataToView(View dataView) {
setStateView(STATE_SUCCESS);
ButterKnife.bind(this, dataView);
Bundle bundle = getArguments();
if (bundle != null) {
mId = bundle.getString("id");
}
if (!TextUtils.isEmpty(mId)) {
getUserRecordDetail();
} else {
ToastUtils.show("数据有误");
setStateView(STATE_ERROR);
}
}
/**
* 获取档案基础信息详情
*/
private void getUserRecordDetail() {
RetrofitManager.getInstance()
.create(OAApi.class)
.getUserRecordDetailById()
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<UserRecordDetailBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull UserRecordDetailBean userRecordDetailBean) {
setData(userRecordDetailBean);
setStateView(STATE_SUCCESS);
setReLoEnable(false, false);
}
@Override
public void onError(@NonNull Throwable e) {
ExceptionHandler.handleException(e);
setStateView(STATE_ERROR);
setReLoEnable(false, false);
}
@Override
public void onComplete() {
}
});
}
private void setData(UserRecordDetailBean b) {
mBtnEdit.setOnClickListener(v -> {
Intent intent = new Intent(mActivity, UserRecordEditActivity.class);
intent.putExtra("id", mId);
mLauncher.launch(intent);
});
mDetailBean = b;
mTvNumber.setText(b.getArchivesNum());
mTvName.setText(b.getName());
mTvGender.setText(b.getSexName());
mTvBirthday.setText(b.getBirthday());
mTvIdCard.setText(b.getIdCard());
mTvPolitical.setText(b.getPoliticalOutlookName());
mTvMarital.setText(b.getMaritalStatusName());
mTvNationality.setText(b.getNationality());
mTvNativePlace.setText(b.getNativeAddress());
mTvPassport.setText(b.getResidence());
mTvPassportType.setText(b.getResidenceNatureName());
mTvAddress.setText(b.getAddress());
mTvEmail.setText(b.getEmail());
mTvPhone.setText(b.getPhone());
mTvSchool.setText(b.getGraduation());
mTvSpecialty.setText(b.getMajorName());
mTvDegree.setText(b.getHighestDegree());
mTvGraduateDate.setText(b.getGraduationDate());
mTvLinkMan.setText(b.getEmergencyContact());
mEtLinkPhone.setText(b.getEmergencyContactPhone());
mTvObtainDate.setText(b.getJoinTime());
mTvPositiveDate.setText(b.getCeremonialTime());
mTvLeaveDate.setText(b.getQuitTime());
mTvBankNum.setText(b.getBankAccount());
mTvFundNum.setText(b.getFundAccount());
mTvSocialNum.setText(b.getSecurityAccount());
mTvJobTitle.setText(b.getTitleName());
mTvJobLevel.setText(b.getTitleGradeName());
mTvPersionType.setText(b.getUserTypeName());
//证件照
if (!TextUtils.isEmpty(b.getPhoto())) {
mRlvImgs.setVisibility(View.VISIBLE);
List<AddFileBean> files = new ArrayList<>();
String[] split = b.getPhoto().split(",");
for (int i = 0; i < split.length; i++) {
AddFileBean bean = new AddFileBean();
bean.setId(split[i]);
bean.setPath(BaseUrlApi.BASE_IMG_URL + split[i]);
files.add(bean);
}
doGetFileInfos(b.getPhoto(), files, 2);
} else {
mRlvImgs.setVisibility(View.GONE);
}
//简历附件
if (!TextUtils.isEmpty(b.getResume())) {
mRlvResumeFile.setVisibility(View.VISIBLE);
mTvResumeHint.setVisibility(View.GONE);
List<AddFileBean> files = new ArrayList<>();
String[] split = b.getResume().split(",");
for (int i = 0; i < split.length; i++) {
AddFileBean bean = new AddFileBean();
bean.setId(split[i]);
bean.setPath(BaseUrlApi.BASE_IMG_URL + split[i]);
files.add(bean);
}
doGetFileInfos(b.getResume(), files, 1);
} else {
mRlvResumeFile.setVisibility(View.GONE);
mTvResumeHint.setVisibility(View.VISIBLE);
}
}
private void doGetFileInfos(String fileId, List<AddFileBean> files, int type) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "获取中...");
dialog.show();
RetrofitManager.getInstance()
.create(BaseApiService.class)
.getFileInfoList(fileId)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<List<FileInfoBean>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull List<FileInfoBean> fileInfoBeans) {
if (dialog.isShowing()) dialog.dismiss();
if (fileInfoBeans.size() > 0) {
for (int i = 0; i < files.size(); i++) {
for (int j = 0; j < fileInfoBeans.size(); j++) {
if (files.get(i).getId().equals(fileInfoBeans.get(j).getFileId())) {
files.get(i).setFileName(fileInfoBeans.get(j).getFileName());
files.get(i).setFileType(FileUtils.getFileType(fileInfoBeans.get(j).getFileName()));
}
}
}
if (type == 2) {
AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
mRlvImgs.setLayoutManager(new GridLayoutManager(mActivity, 5));
mRlvImgs.setAdapter(adapter);
adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
} else {
AddFileAdapter adapter = new AddFileAdapter(mActivity, files);
mRlvResumeFile.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvResumeFile.setAdapter(adapter);
adapter.addOnItemClickListener(addFileBean -> previewFile(addFileBean, files));
}
} else {
ToastUtils.show("未找到文档信息");
}
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
/**
* 预览文件
*/
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

View File

@ -1,11 +1,42 @@
package com.tenlionsoft.oamodule.fragments;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.google.gson.Gson;
import com.hjq.toast.ToastUtils;
import com.tenlionsoft.baselib.constant.PathConfig;
import com.tenlionsoft.baselib.core.beans.BaseSuccessBean;
import com.tenlionsoft.baselib.core.retrofit_net.RetrofitManager;
import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
import com.tenlionsoft.baselib.core.widget.base.BaseFragment;
import com.tenlionsoft.baselib.core.widget.views.CustomStateView;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.adapter.EducateAdapter;
import com.tenlionsoft.oamodule.beans.SaveEducateBean;
import com.tenlionsoft.oamodule.net.OAApi;
import com.tenlionsoft.oamodule.widget.EducateDialog;
import java.util.ArrayList;
import java.util.List;
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;
import okhttp3.MediaType;
import okhttp3.RequestBody;
/**
* 作者: adam
@ -15,6 +46,17 @@ import com.tenlionsoft.oamodule.R;
*/
@Route(path = PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_EDU)
public class UserRecordEduFragment extends BaseFragment {
@BindView(R2.id.rlv_edu)
RecyclerView mRlvEdu;
@BindView(R2.id.csv_state)
CustomStateView mCsvState;
@BindView(R2.id.btn_confirm)
Button mBtnConfirm;
private String mId;
private int mCurrentPage = 1;
private List<SaveEducateBean> mDatas = new ArrayList<>();
private EducateAdapter mAdapter;
@Override
protected int getContentViewId() {
return R.layout.fragment_user_record_edu_phone;
@ -22,7 +64,198 @@ public class UserRecordEduFragment extends BaseFragment {
@Override
protected void setDataToView(View dataView) {
ButterKnife.bind(this, dataView);
setStateView(STATE_SUCCESS);
setReLoEnable(false, false);
Bundle bundle = getArguments();
if (bundle != null) {
mId = bundle.getString("id");
}
mRlvEdu.setLayoutManager(new LinearLayoutManager(mActivity));
mAdapter = new EducateAdapter(mActivity, mDatas, 2);
mAdapter.addOnDelOrEditListener(new EducateAdapter.OnDelOrEditListener() {
@Override
public void onDelBean(SaveEducateBean bean, int i) {
doDelEdu(bean, i);
}
@Override
public void onEditBean(SaveEducateBean bean, int i) {
doEditEdu(bean, i);
}
});
mRlvEdu.setAdapter(mAdapter);
if (!TextUtils.isEmpty(mId)) {
getEduList();
} else {
mCsvState.setState(CustomStateView.STATE_ERROR);
}
mBtnConfirm.setOnClickListener(v -> showAddEducateDialog(null, 1, 0));
}
/**
* 编辑
*/
private void doEditEdu(SaveEducateBean bean, int i) {
showAddEducateDialog(bean, 2, i);
}
/**
* 删除
*/
private void doDelEdu(SaveEducateBean bean, int i) {
new AlertDialog.Builder(mActivity)
.setTitle("警告")
.setMessage("确定要删除该条教育经历吗?")
.setNegativeButton("取消", (dialog, which) -> dialog.dismiss())
.setPositiveButton("确定", (dialog, which) -> {
dialog.dismiss();
doDelEduNet(bean);
})
.create()
.show();
}
/**
* 删除教育经历
*/
private void doDelEduNet(SaveEducateBean bean) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "删除中...");
dialog.show();
RetrofitManager.getInstance()
.create(OAApi.class)
.doDelEducate(bean.getUserEducationId())
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<BaseSuccessBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseSuccessBean bean) {
if (dialog.isShowing()) dialog.dismiss();
getEduList();
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
/**
* 显示添加 编辑
*/
private void showAddEducateDialog(SaveEducateBean bean, int type, int pos) {
EducateDialog dialog = new EducateDialog.Builder(mActivity)
.setType(type)
.setBean(bean)
.build();
dialog.addOnChangeListener(new EducateDialog.OnChangeListener() {
@Override
public void doSave(SaveEducateBean bean) {
//新增教育经历
dialog.dismiss();
hideSoftInput();
doAddEdu(bean);
}
@Override
public void doEdit(SaveEducateBean bean) {
//编辑
dialog.dismiss();
hideSoftInput();
doEditEduNet(bean, pos);
}
});
dialog.show();
}
/**
* 保存编辑
*
* @param bean
* @param pos
*/
private void doEditEduNet(SaveEducateBean bean, int pos) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "保存中...");
dialog.show();
bean.setUserArchivesId(mId);
RequestBody body = RequestBody.create(new Gson().toJson(bean), MediaType.parse("application/json; charset=utf-8"));
RetrofitManager.getInstance()
.create(OAApi.class)
.doEditEducate(bean.getUserEducationId(), body)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<BaseSuccessBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseSuccessBean bean) {
if (dialog.isShowing()) dialog.dismiss();
ToastUtils.show("保存成功");
getEduList();
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
/**
* 添加
*/
private void doAddEdu(SaveEducateBean bean) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "保存中...");
dialog.show();
bean.setUserArchivesId(mId);
RequestBody body = RequestBody.create(new Gson().toJson(bean), MediaType.parse("application/json; charset=utf-8"));
RetrofitManager.getInstance()
.create(OAApi.class)
.doSaveEducate(body)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<BaseSuccessBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseSuccessBean bean) {
if (dialog.isShowing()) dialog.dismiss();
ToastUtils.show("保存成功");
getEduList();
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
@Override
@ -30,8 +263,47 @@ public class UserRecordEduFragment extends BaseFragment {
}
/**
* 获取教育经历列表
*/
private void getEduList() {
mDatas.clear();
mAdapter.setData(mDatas);
RetrofitManager.getInstance()
.create(OAApi.class)
.getUserEducateList(mId)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<List<SaveEducateBean>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull List<SaveEducateBean> educateDetailBeans) {
if (educateDetailBeans.size() > 0) {
mCsvState.setState(CustomStateView.STATE_SUCCESS);
mDatas = educateDetailBeans;
mAdapter.setData(mDatas);
} else {
mCsvState.setState(CustomStateView.STATE_EMPTY);
}
}
@Override
public void onError(@NonNull Throwable e) {
ExceptionHandler.handleException(e);
mCsvState.setState(CustomStateView.STATE_ERROR);
}
@Override
public void onComplete() {
}
});
}
@Override
protected void loadMoreData() {
}
}

View File

@ -0,0 +1,303 @@
package com.tenlionsoft.oamodule.fragments;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.RelativeLayout;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.google.gson.Gson;
import com.hjq.toast.ToastUtils;
import com.tenlionsoft.baselib.constant.PathConfig;
import com.tenlionsoft.baselib.core.beans.BaseSuccessBean;
import com.tenlionsoft.baselib.core.retrofit_net.RetrofitManager;
import com.tenlionsoft.baselib.core.retrofit_net.conver.RxTransformer;
import com.tenlionsoft.baselib.core.widget.base.BaseFragment;
import com.tenlionsoft.baselib.core.widget.views.CustomStateView;
import com.tenlionsoft.baselib.utils.ExceptionHandler;
import com.tenlionsoft.baselib.utils.UIUtil;
import com.tenlionsoft.oamodule.R;
import com.tenlionsoft.oamodule.R2;
import com.tenlionsoft.oamodule.adapter.ResumeAdapter;
import com.tenlionsoft.oamodule.beans.SaveResumeBean;
import com.tenlionsoft.oamodule.net.OAApi;
import com.tenlionsoft.oamodule.widget.ResumeDialog;
import java.util.ArrayList;
import java.util.List;
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;
import okhttp3.MediaType;
import okhttp3.RequestBody;
/**
* 作者: adam
* 日期: 2022/7/1 - 17:17
* 邮箱: itgaojian@163.com
* 描述: 个人档案---工作简历
*/
@Route(path = PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_WORK)
public class UserRecordResumeFragment extends BaseFragment {
@BindView(R2.id.rlv_resume)
RecyclerView mRlvResume;
@BindView(R2.id.csv_state)
CustomStateView mCsvState;
@BindView(R2.id.rl_content)
RelativeLayout mRlContent;
@BindView(R2.id.btn_confirm)
Button mBtnConfirm;
private String mId;
private List<SaveResumeBean> mDatas = new ArrayList<>();
private ResumeAdapter mAdapter;
@Override
protected int getContentViewId() {
return R.layout.fragment_user_record_resume_phone;
}
@Override
protected void setDataToView(View dataView) {
ButterKnife.bind(this, dataView);
setStateView(STATE_SUCCESS);
setReLoEnable(false, false);
Bundle bundle = getArguments();
if (bundle != null) {
mId = bundle.getString("id");
}
mAdapter = new ResumeAdapter(mActivity, mDatas, 2);
mRlvResume.setLayoutManager(new LinearLayoutManager(mActivity));
mRlvResume.setAdapter(mAdapter);
mAdapter.addOnDelOrEditListener(new ResumeAdapter.OnDelOrEditListener() {
@Override
public void onDel(SaveResumeBean bean, int i) {
new AlertDialog.Builder(mActivity)
.setTitle("警告")
.setMessage("确定要删除该条记录吗?")
.setNegativeButton("取消", (dialog, which) -> dialog.dismiss())
.setPositiveButton("确定", (dialog, which) -> {
dialog.dismiss();
doDelNet(bean);
})
.create()
.show();
}
@Override
public void onEdit(SaveResumeBean bean, int i) {
showAddResumeDialog(bean, 2, i);
}
});
if (!TextUtils.isEmpty(mId)) {
getUserResume();
} else {
mCsvState.setState(CustomStateView.STATE_ERROR);
}
mBtnConfirm.setOnClickListener(v -> showAddResumeDialog(null, 1, 0));
}
/**
* 新增或删除
*
* @param bean
* @param type
* @param pos
*/
private void showAddResumeDialog(SaveResumeBean bean, int type, int pos) {
ResumeDialog dialog = new ResumeDialog.Builder(mActivity)
.setType(type)
.setBean(bean)
.build();
dialog.addOnChangeListener(new ResumeDialog.OnChangeListener() {
@Override
public void doSave(SaveResumeBean bean) {
//新增教育经历
dialog.dismiss();
hideSoftInput();
doSaveNet(bean);
}
@Override
public void doEdit(SaveResumeBean bean) {
dialog.dismiss();
hideSoftInput();
doEditNet(bean);
}
});
dialog.show();
}
/**
* 编辑保存
*
* @param bean
*/
private void doEditNet(SaveResumeBean bean) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "保存中...");
dialog.show();
bean.setUserArchivesId(mId);
RequestBody body = RequestBody.create(new Gson().toJson(bean), MediaType.parse("application/json; charset=utf-8"));
RetrofitManager.getInstance()
.create(OAApi.class)
.doEditWork(bean.getUserWorkId(), body)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<BaseSuccessBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseSuccessBean bean) {
if (dialog.isShowing()) dialog.dismiss();
ToastUtils.show("保存成功");
getUserResume();
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
/**
* 新增
*
* @param bean
*/
private void doSaveNet(SaveResumeBean bean) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "保存中...");
dialog.show();
bean.setUserArchivesId(mId);
RequestBody body = RequestBody.create(new Gson().toJson(bean), MediaType.parse("application/json; charset=utf-8"));
RetrofitManager.getInstance()
.create(OAApi.class)
.doSaveWork(body)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<BaseSuccessBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseSuccessBean bean) {
if (dialog.isShowing()) dialog.dismiss();
ToastUtils.show("保存成功");
getUserResume();
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
/**
* 删除
*/
private void doDelNet(SaveResumeBean bean) {
ProgressDialog dialog = UIUtil.initDialog(mActivity, "删除中...");
dialog.show();
RetrofitManager.getInstance()
.create(OAApi.class)
.doDelWork(bean.getUserWorkId())
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<BaseSuccessBean>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull BaseSuccessBean bean) {
if (dialog.isShowing()) dialog.dismiss();
getUserResume();
}
@Override
public void onError(@NonNull Throwable e) {
if (dialog.isShowing()) dialog.dismiss();
ExceptionHandler.handleException(e);
}
@Override
public void onComplete() {
}
});
}
/**
* 获取用户工作简历
*/
private void getUserResume() {
mDatas.clear();
mAdapter.setData(mDatas);
RetrofitManager.getInstance()
.create(OAApi.class)
.getUserWorkList(mId)
.compose(RxTransformer.getTransformer())
.subscribe(new Observer<List<SaveResumeBean>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull List<SaveResumeBean> saveResumeBeans) {
if (saveResumeBeans.size() > 0) {
mCsvState.setState(CustomStateView.STATE_SUCCESS);
mDatas = saveResumeBeans;
mAdapter.setData(mDatas);
} else {
mCsvState.setState(CustomStateView.STATE_EMPTY);
}
}
@Override
public void onError(@NonNull Throwable e) {
ExceptionHandler.handleException(e);
mCsvState.setState(CustomStateView.STATE_ERROR);
}
@Override
public void onComplete() {
}
});
}
@Override
protected void refreshView() {
}
@Override
protected void loadMoreData() {
}
}

View File

@ -1,37 +0,0 @@
package com.tenlionsoft.oamodule.fragments;
import android.view.View;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.tenlionsoft.baselib.constant.PathConfig;
import com.tenlionsoft.baselib.core.widget.base.BaseFragment;
import com.tenlionsoft.oamodule.R;
/**
* 作者: adam
* 日期: 2022/7/1 - 17:17
* 邮箱: itgaojian@163.com
* 描述: 个人档案---工作简历
*/
@Route(path = PathConfig.PATH_MODULE_OA_FRAGMENT_USER_RECORD_WORK)
public class UserRecordWorkFragment extends BaseFragment {
@Override
protected int getContentViewId() {
return R.layout.fragment_user_record_work_phone;
}
@Override
protected void setDataToView(View dataView) {
setStateView(STATE_SUCCESS);
}
@Override
protected void refreshView() {
}
@Override
protected void loadMoreData() {
}
}

View File

@ -33,6 +33,8 @@ public class EducateHolder extends BaseViewHolder {
public Button mBtnDel;
@BindView(R2.id.btn_edit)
public Button mBtnEdit;
@BindView(R2.id.line)
public View mLine;
public EducateHolder(@NonNull @NotNull View itemView) {
super(itemView);

View File

@ -0,0 +1,21 @@
package com.tenlionsoft.oamodule.holder;
import android.view.View;
import org.jetbrains.annotations.NotNull;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
/**
* 作者: adam
* 日期: 2022/7/4 - 16:13
* 邮箱: itgaojian@163.com
* 描述:
*/
public class HonourHolder extends RecyclerView.ViewHolder {
public HonourHolder(@NonNull @NotNull View itemView) {
super(itemView);
}
}

View File

@ -35,6 +35,8 @@ public class ResumeHolder extends BaseViewHolder {
public Button mBtnDel;
@BindView(R2.id.btn_edit)
public Button mBtnEdit;
@BindView(R2.id.line)
public View mLine;
public ResumeHolder(@NonNull @NotNull View itemView) {
super(itemView);

View File

@ -16,7 +16,6 @@ import com.tenlionsoft.oamodule.beans.DocumentDetailBean;
import com.tenlionsoft.oamodule.beans.DocumentListBean;
import com.tenlionsoft.oamodule.beans.DocumentTypeList;
import com.tenlionsoft.oamodule.beans.DriverBean;
import com.tenlionsoft.oamodule.beans.EducateDetailBean;
import com.tenlionsoft.oamodule.beans.EmailDraftDetailBean;
import com.tenlionsoft.oamodule.beans.EmailDraftListBean;
import com.tenlionsoft.oamodule.beans.EmailInboxDetailBean;
@ -43,6 +42,9 @@ import com.tenlionsoft.oamodule.beans.OaFlowLogBean;
import com.tenlionsoft.oamodule.beans.RoutineAcceptListBean;
import com.tenlionsoft.oamodule.beans.RoutineBean;
import com.tenlionsoft.oamodule.beans.RoutineListBean;
import com.tenlionsoft.oamodule.beans.SaveEducateBean;
import com.tenlionsoft.oamodule.beans.SaveHonourBean;
import com.tenlionsoft.oamodule.beans.SaveResumeBean;
import com.tenlionsoft.oamodule.beans.ScheduleDetailBean;
import com.tenlionsoft.oamodule.beans.ScheduleListBean;
import com.tenlionsoft.oamodule.beans.ScheduleTypeBean;
@ -750,6 +752,13 @@ public interface OAApi {
Observable<BaseSuccessBean> doSaveScheduleType(@Body RequestBody body);
/*==========人员档案========*/
/**
* 获取个人档案ID
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@GET("app/userarchives/pageTurnTo")
Observable<String> getUserRecordId();
/**
* 根据UserID获取个人档案详情
*/
@ -793,22 +802,22 @@ public interface OAApi {
* 修改工作简历
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@PUT("app/usereducation/updateusereducation/{userEducationId}")
Observable<BaseSuccessBean> doEditWork(@Path("userEducationId") String id, @Body RequestBody body);
@PUT("app/userwork/updateuserwork/{userWorkId}")
Observable<BaseSuccessBean> doEditWork(@Path("userWorkId") String id, @Body RequestBody body);
/**
* 删除工作简历
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@DELETE("app/usereducation/remove/{ids}")
@DELETE("app/userwork/remove/{ids}")
Observable<BaseSuccessBean> doDelWork(@Path("ids") String id);
/**
* 获取工作简历列表
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@GET("app/usereducation/list")
Observable<List<EducateDetailBean>> getUserWorkList();
@GET("app/userwork/list")
Observable<List<SaveResumeBean>> getUserWorkList(@Query("userArchivesId") String id);
@ -840,7 +849,7 @@ public interface OAApi {
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@GET("app/usereducation/list")
Observable<List<EducateDetailBean>> getUserEducateList();
Observable<List<SaveEducateBean>> getUserEducateList(@Query("userArchivesId") String id);
/**
* 获取人力档案类型
@ -849,6 +858,37 @@ public interface OAApi {
@GET("app/userarchivestype/list")
Observable<List<UserRecordTypeList>> getUserRecordTypeList();
/*个人荣誉*/
/**
* 新增个人荣誉
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@POST("app/userhonor/save")
Observable<BaseSuccessBean> doSaveUserHonour(@Body RequestBody body);
/**
* 修改个人荣誉
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@PUT("app/userhonor/updateuserhonor/{userHonorId}")
Observable<BaseSuccessBean> doEditUserHonour(@Path("userHonorId") String id, @Body RequestBody body);
/**
* 删除个人荣誉
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@DELETE("app/userhonor/remove/{ids}")
Observable<BaseSuccessBean> doDelHonour(@Path("ids") String id);
/**
* 获取个人荣誉列表
*/
@Headers({"base_url_name:oa", "need_token:true", "Content-Type: application/json", "Accept: application/json"})
@GET("app/userhonor/list")
Observable<List<SaveHonourBean>> getUserHonourList(@Query("userArchivesId") String id);
/*==============新闻=========================*/
/**

View File

@ -87,6 +87,7 @@ public class EducateDialog extends Dialog {
private void doConfirm() {
if (checkParams()) {
HideSoftKeyBoardDialog();
if (mChangeListener != null) {
String name = mEtName.getText().toString().trim();
String specialty = mEtSpecialty.getText().toString().trim();
@ -102,6 +103,7 @@ public class EducateDialog extends Dialog {
if (mType == 1) {
mChangeListener.doSave(bean);
} else {
bean.setUserEducationId(mBean.getUserEducationId());
mChangeListener.doEdit(bean);
}
}
@ -180,6 +182,15 @@ public class EducateDialog extends Dialog {
}
}
public void HideSoftKeyBoardDialog() {
try {
InputMethodManager imm = (InputMethodManager) mContext.getSystemService(Activity.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
} catch (Exception ex) {
}
}
public static class Builder {
private Context mContext;
private int mType;

View File

@ -90,6 +90,7 @@ public class ResumeDialog extends Dialog {
private void doConfirm() {
if (checkParams()) {
HideSoftKeyBoardDialog();
if (mChangeListener != null) {
String name = mEtName.getText().toString().trim();
String dept = mEtDept.getText().toString().trim();
@ -107,6 +108,8 @@ public class ResumeDialog extends Dialog {
if (mType == 1) {
mChangeListener.doSave(bean);
} else {
bean.setUserArchivesId(mBean.getUserArchivesId());
bean.setUserWorkId(mBean.getUserWorkId());
mChangeListener.doEdit(bean);
}
}
@ -181,12 +184,20 @@ public class ResumeDialog extends Dialog {
void doEdit(SaveResumeBean bean);
}
public void HideSoftKeyBoardDialog() {
try {
InputMethodManager imm = (InputMethodManager) mContext.getSystemService(Activity.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
} catch (Exception ex) {
}
}
public void HideSoftKeyBoardDialog(Activity activity) {
try {
InputMethodManager imm = (InputMethodManager) activity.getSystemService(activity.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.HIDE_NOT_ALWAYS, 0);
imm.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
} catch (Exception ex) {
}
}

View File

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:layout_width="match_parent"
android:layout_height="match_parent"
@ -7,85 +8,6 @@
android:orientation="vertical"
tools:context=".activity.record.UserRecordAddActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:orientation="horizontal"
android:padding="5dp">
<LinearLayout
android:id="@+id/ll_type_base"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_type_base"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="基础信息"
android:textSize="14sp" />
<ImageView
android:id="@+id/iv_type_base"
android:layout_width="wrap_content"
android:layout_height="5dp"
android:layout_marginTop="5dp"
android:scaleType="fitXY"
android:src="@drawable/ic_type_bottom_icon" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_type_job"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_type_job"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="入职信息"
android:textColor="@color/gray_a9"
android:textSize="14sp" />
<ImageView
android:id="@+id/iv_type_job"
android:layout_width="wrap_content"
android:layout_height="5dp"
android:layout_marginTop="5dp"
android:scaleType="fitXY"
android:src="@drawable/ic_type_bottom_icon"
android:visibility="invisible" />
</LinearLayout>
</LinearLayout>
<Button
android:id="@+id/btn_del"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10dp"
android:background="@drawable/sel_btn_gray_white_round"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="15dp"
android:paddingTop="3dp"
android:paddingRight="15dp"
android:paddingBottom="3dp"
android:text="删除"
android:textColor="@color/col_white_gray_press" />
</RelativeLayout>
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
@ -93,6 +15,7 @@
android:layout_margin="10dp"
android:background="@drawable/shp_rectangle_white_10"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:scrollbars="none">
<LinearLayout
@ -108,6 +31,17 @@
android:orientation="vertical"
tools:visibility="visible">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:padding="5dp"
android:text="基础信息"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
android:textStyle="bold"
app:text_type_cus="2" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -128,7 +62,32 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_imgs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
tools:itemCount="1"
tools:listitem="@layout/item_show_photo" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="档案编号"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_number"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:drawablePadding="5dp"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
@ -139,7 +98,8 @@
android:layout_gravity="center_vertical"
android:text="姓名"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceEditText
android:id="@+id/et_name"
@ -161,7 +121,8 @@
android:layout_gravity="center_vertical"
android:text="性别"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_gender"
@ -211,7 +172,8 @@
android:layout_gravity="center_vertical"
android:text="身份证号"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceEditText
android:id="@+id/et_id_card"
@ -234,7 +196,8 @@
android:layout_gravity="center_vertical"
android:text="政治面貌"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_political"
@ -259,7 +222,8 @@
android:layout_gravity="center_vertical"
android:text="婚姻状况"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_marital"
@ -308,7 +272,8 @@
android:layout_gravity="center_vertical"
android:text="籍贯"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceEditText
android:id="@+id/et_native_place"
@ -352,7 +317,8 @@
android:layout_gravity="center_vertical"
android:text="户口性质"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_passport_type"
@ -466,7 +432,8 @@
android:layout_gravity="center_vertical"
android:text="专业"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_specialty"
@ -582,9 +549,18 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone"
tools:visibility="visible">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:padding="5dp"
android:text="入职信息"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
android:textStyle="bold"
app:text_type_cus="2" />
<LinearLayout style="@style/item_hor_content">
@ -637,18 +613,19 @@
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="所在部门"
android:text="离职日期"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_dept"
android:id="@+id/tv_leave_date"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
@ -657,60 +634,11 @@
android:drawablePadding="5dp"
android:focusable="true"
android:gravity="right"
android:hint="请选择所在部门"
android:hint="请选择离职日期"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="岗位"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_post"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:drawableRight="@drawable/ic_arrow_right_24"
android:drawablePadding="5dp"
android:focusable="true"
android:gravity="right"
android:hint="请选择岗位"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="直接上级"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_leader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:drawableRight="@drawable/ic_arrow_right_24"
android:drawablePadding="5dp"
android:focusable="true"
android:gravity="right"
android:hint="请选择直接上级"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
@ -786,7 +714,8 @@
android:layout_gravity="center_vertical"
android:text="职称"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_job_title"
@ -811,7 +740,8 @@
android:layout_gravity="center_vertical"
android:text="职称职等"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_job_level"
@ -836,7 +766,8 @@
android:layout_gravity="center_vertical"
android:text="人员分类"
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="14sp"
app:text_show_hint="true" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_persion_type"
@ -852,65 +783,39 @@
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<!--教育信息-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingRight="10dp">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:padding="5dp"
android:text="教育经历"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
android:textStyle="bold" />
<Button
android:id="@+id/btn_add_educate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/sel_btn_submit"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:text="添加教育经历"
android:textColor="@color/white" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_educate"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_educate_int"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="20dp"
android:text="未录入教育经历" />
</RelativeLayout>
</LinearLayout>
<!--工作经历-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingRight="10dp">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:padding="5dp"
android:text="简历上传"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
android:textStyle="bold"
app:text_type_cus="2" />
<Button
android:id="@+id/btn_add_resume"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/sel_btn_submit"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:text="添加简历"
android:textColor="@color/white" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -918,43 +823,12 @@
android:paddingLeft="10dp"
android:paddingRight="10dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingRight="10dp">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:padding="5dp"
android:text="工作简历"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
android:textStyle="bold" />
<Button
android:id="@+id/btn_add_resume"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/sel_btn_submit"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:text="添加工作简历"
android:textColor="@color/white" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_resume"
android:id="@+id/rlv_resume_file"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
@ -964,15 +838,21 @@
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="20dp"
android:text="未录入工作简历" />
android:text="未录入简历" />
</RelativeLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_resume_file"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
<Button
android:id="@+id/btn_confirm"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:background="@drawable/sel_btn_submit"
android:text="保存"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</LinearLayout>

View File

@ -1,11 +1,785 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="wrap_content"
android:background="@color/gray_f7"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="基础信息" />
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:background="@drawable/shp_rectangle_white_10"
android:paddingTop="10dp"
android:scrollbars="none">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingRight="10dp">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="基本信息"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
app:text_type_cus="2" />
<Button
android:id="@+id/btn_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/sel_btn_submit_no_size"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="5dp"
android:paddingTop="3dp"
android:paddingRight="5dp"
android:paddingBottom="3dp"
android:text="编辑"
android:textColor="@color/col_white_gray_press" />
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_base"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:visibility="visible">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_imgs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:itemCount="1"
tools:listitem="@layout/item_add_or_del_file" />
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="档案编号"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_number"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="姓名"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="性别"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_gender"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="出生日期"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_birthday"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="身份证号"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_id_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:digits="@string/limit_id_card"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="政治面貌"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_political"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="婚姻状况"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_marital"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
style="@style/item_hor_content"
android:visibility="gone">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="国籍"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_nationality"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="籍贯"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_native_place"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="户口"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_passport"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="户口性质"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_passport_type"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="家庭地址"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_address"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="电子邮箱"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="联系电话"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:digits="@string/limit_phone"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="毕业院校"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_school"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="专业"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_specialty"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="最高学位"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_degree"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="毕业日期"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_graduate_date"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="紧急联系人"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_link_man"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="联系人电话"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/et_link_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/ll_job"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:visibility="visible">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="入职信息"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
app:text_type_cus="2" />
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="入职日期"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_obtain_date"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="转正日期"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_positive_date"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="离职日期"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_leave_date"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="银行账号"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_bank_num"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="公积金号"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_fund_num"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="社保卡号"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_social_num"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@null"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="职称"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_job_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="职称职等"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_job_level"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout style="@style/item_hor_content">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="人员分类"
android:textColor="@color/black"
android:textSize="14sp" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_persion_type"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:focusable="true"
android:gravity="right"
android:hint="未录入"
android:textColor="@color/gray_80"
android:textSize="14sp" />
</LinearLayout>
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="工作简历"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
app:text_type_cus="2" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:layout_marginRight="10dp"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_resume_file"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_resume_hint"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:visibility="gone"
android:padding="20dp"
android:text="未录入工作简历" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</LinearLayout>

View File

@ -1,11 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:background="@color/gray_f7"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
<RelativeLayout
android:id="@+id/rl_content"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_margin="10dp"
android:layout_weight="1"
android:background="@drawable/shp_rectangle_white_10"
android:padding="10dp">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_edu"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<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>
<Button
android:id="@+id/btn_confirm"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="教育经历" />
android:layout_below="@id/rl_content"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:background="@drawable/sel_btn_submit"
android:text="新增"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>

View File

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/gray_f7"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_content"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_margin="10dp"
android:layout_weight="1"
android:background="@drawable/shp_rectangle_white_10"
android:padding="10dp">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rlv_resume"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<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>
<Button
android:id="@+id/btn_confirm"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/rl_content"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:background="@drawable/sel_btn_submit"
android:text="新增"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>

View File

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工作简历" />
</LinearLayout>

View File

@ -1,149 +1,169 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="3dp"
android:orientation="horizontal"
android:paddingLeft="15dp"
android:paddingTop="5dp"
android:paddingRight="5dp"
android:paddingBottom="5dp">
android:orientation="vertical">
<LinearLayout
android:layout_width="0dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
android:layout_margin="3dp"
android:orientation="horizontal"
android:padding="5dp">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/black"
android:textSize="@dimen/text_15"
android:textStyle="bold"
tools:text="学校名称" />
<LinearLayout
android:layout_width="match_parent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
android:layout_weight="1"
android:orientation="vertical">
<LinearLayout
android:layout_width="0dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="专业:"
android:text="时间:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_specialty"
android:id="@+id/tv_start"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
app:text_type_cus="2"
tools:text="开始" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:textColor="@color/black"
tools:text="专业" />
android:textStyle="bold"
app:text_type_cus="2" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_end"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
app:text_type_cus="2"
tools:text="结束" />
</LinearLayout>
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:textColor="@color/black"
android:textSize="@dimen/text_15"
android:textStyle="bold"
tools:text="学校名称" />
<LinearLayout
android:layout_width="0dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="学历:"
android:textColor="@color/black" />
android:layout_weight="1"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_degree"
android:layout_width="wrap_content"
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="专业:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_specialty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="专业" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="学历" />
android:layout_weight="1"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="学历:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_degree"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="学历" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
<Button
android:id="@+id/btn_del"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="时间:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_start"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/sel_btn_gray_white_round"
android:gravity="center"
android:textColor="@color/black"
tools:text="开始" />
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="删除"
android:textColor="@color/col_white_gray_press" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
<Button
android:id="@+id/btn_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:textColor="@color/black"
android:textStyle="bold" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_end"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="5dp"
android:background="@drawable/sel_btn_submit"
android:gravity="center"
android:textColor="@color/black"
tools:text="结束" />
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="编辑"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<Button
android:id="@+id/btn_del"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/sel_btn_gray_white_round"
android:gravity="center"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="删除"
android:textColor="@color/col_white_gray_press" />
<Button
android:id="@+id/btn_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@drawable/sel_btn_submit"
android:gravity="center"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="编辑"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>
<View
android:id="@+id/line"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:layout_marginRight="20dp"
android:background="@color/base_line" />
</LinearLayout>

View File

@ -1,172 +1,189 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="3dp"
android:orientation="horizontal"
android:paddingLeft="15dp"
android:paddingTop="5dp"
android:paddingRight="5dp"
android:paddingBottom="5dp">
android:orientation="vertical">
<LinearLayout
android:layout_width="0dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
android:layout_margin="3dp"
android:orientation="horizontal"
android:padding="5dp">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/black"
android:textSize="@dimen/text_15"
android:textStyle="bold"
tools:text="单位名称" />
<LinearLayout
android:layout_width="match_parent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="部门 : "
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_dept"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="部门" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工作内容 : "
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="工作内容工作内容工作内容工作内容工作内容工作内容工作内容工作内容工作内容工作内容" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
android:layout_weight="1"
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="离职原因 : "
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_cause"
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="离职原因:" />
android:textSize="@dimen/text_15"
android:textStyle="bold"
tools:text="单位名称" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="部门 : "
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_dept"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="部门" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工作内容 : "
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="工作内容工作内容工作内容工作内容工作内容工作内容工作内容工作内容工作内容工作内容" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="离职原因 : "
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_cause"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="离职原因:" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="时间:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_start"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:textColor="@color/black"
android:textSize="@dimen/text_16"
app:text_type_cus="2"
tools:text="开始" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:textColor="@color/black"
android:textStyle="bold" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_end"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:textColor="@color/black"
app:text_type_cus="2"
tools:text="结束" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
<Button
android:id="@+id/btn_del"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="时间:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_start"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/sel_btn_gray_white_round"
android:gravity="center"
android:textColor="@color/black"
tools:text="开始" />
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingTop="3dp"
android:paddingRight="10dp"
android:paddingBottom="3dp"
android:text="删除"
android:textColor="@color/col_white_gray_press" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
<Button
android:id="@+id/btn_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:textColor="@color/black"
android:textStyle="bold" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_end"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="5dp"
android:background="@drawable/sel_btn_submit"
android:gravity="center"
android:textColor="@color/black"
tools:text="结束" />
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingTop="3dp"
android:paddingRight="10dp"
android:paddingBottom="3dp"
android:text="编辑"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<Button
android:id="@+id/btn_del"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/sel_btn_gray_white_round"
android:gravity="center"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingTop="3dp"
android:paddingRight="10dp"
android:paddingBottom="3dp"
android:text="删除"
android:textColor="@color/col_white_gray_press" />
<Button
android:id="@+id/btn_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@drawable/sel_btn_submit"
android:gravity="center"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingTop="3dp"
android:paddingRight="10dp"
android:paddingBottom="3dp"
android:text="编辑"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>
<View
android:id="@+id/line"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:layout_marginRight="20dp"
android:background="@color/base_line" />
</LinearLayout>

View File

@ -0,0 +1,146 @@
<?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">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="3dp"
android:orientation="horizontal"
android:padding="5dp">
<ImageView
android:id="@+id/iv_img"
android:layout_width="70dp"
android:layout_height="70dp"
android:scaleType="fitXY"
tools:src="@drawable/ic_img_default_banner" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_weight="1"
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:textColor="@color/black"
android:textSize="@dimen/text_15"
android:textStyle="bold"
tools:text="学校名称" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="发证机关:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_degree"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="青花池" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="horizontal">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="获取日期:"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
tools:text="2022-2-2" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:orientation="vertical">
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="荣誉简介"
android:textColor="@color/black" />
<com.tenlionsoft.baselib.core.widget.views.TypeFaceTextView
android:id="@+id/tv_remark"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:textColor="@color/black"
tools:text="荣誉简介" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<Button
android:id="@+id/btn_del"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/sel_btn_gray_white_round"
android:gravity="center"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="删除"
android:textColor="@color/col_white_gray_press" />
<Button
android:id="@+id/btn_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@drawable/sel_btn_submit"
android:gravity="center"
android:minWidth="0dp"
android:minHeight="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="编辑"
android:textColor="@color/col_white_gray_press" />
</LinearLayout>
</LinearLayout>
<View
android:id="@+id/line"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:layout_marginRight="20dp"
android:background="@color/base_line" />
</LinearLayout>