diff --git a/.idea/misc.xml b/.idea/misc.xml
index 219b34f..8a8f75b 100755
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -5,7 +5,7 @@
-
+
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 755ad02..8c0eba2 100755
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -47,14 +47,29 @@
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:ignore="GoogleAppIndexingWarning">
-
-
-
-
+
+
+
+
+
+
-
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/base/MainActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/base/MainActivity.java
index 9a1fe04..41b7f91 100755
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/base/MainActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/base/MainActivity.java
@@ -6,7 +6,6 @@ import android.provider.Settings;
import android.support.v7.app.AlertDialog;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
-import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
@@ -29,18 +28,16 @@ import com.sucstepsoft.cm_utils.utils.PermissionUtils;
import com.sucstepsoft.cm_utils.utils.ToastUtils;
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
import com.sucstepsoft.txrealtimelocation.R;
-import com.sucstepsoft.txrealtimelocation.ScreenManager;
+import com.sucstepsoft.txrealtimelocation.activitys.lawlib.LawLibActivity;
import com.sucstepsoft.txrealtimelocation.activitys.companylib.CompanyLibActivity;
+import com.sucstepsoft.txrealtimelocation.activitys.issue.CheckOptionsActivity;
import com.sucstepsoft.txrealtimelocation.activitys.issue.IssueCheckActivity;
import com.sucstepsoft.txrealtimelocation.activitys.issue.IssueMineActivity;
import com.sucstepsoft.txrealtimelocation.activitys.mine.UserActivity;
import com.sucstepsoft.txrealtimelocation.activitys.notice.NoticeActivity;
import com.sucstepsoft.txrealtimelocation.activitys.trouble.TroubleReportActivity;
import com.sucstepsoft.txrealtimelocation.adapters.FunctionAdapter;
-import com.sucstepsoft.txrealtimelocation.beans.AppTokenUser;
-import com.sucstepsoft.txrealtimelocation.beans.SignTimeBean;
import com.sucstepsoft.txrealtimelocation.beans.VersionBean;
-import com.sucstepsoft.txrealtimelocation.broadcasts.ScreenBroadCastListener;
import com.sucstepsoft.txrealtimelocation.net.LocationApiService;
import java.io.File;
@@ -56,15 +53,8 @@ import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
import io.reactivex.schedulers.Schedulers;
-//import com.sucstepsoft.txrealtimelocation.services.LocationService;
-
-//import com.sucstepsoft.txrealtimelocation.activitys.issue.IssueReportActivity;
-//import com.sucstepsoft.txrealtimelocation.activitys.locus.LocusMapActivity;
-//import com.sucstepsoft.txrealtimelocation.utils.PointUtils;
public class MainActivity extends BaseActivity {
- private static final int GPS_REQUEST_CODE = 1234;
- public static boolean isForeground = false;
@BindView(R.id.rlv_funcs)
RecyclerView mRlvBtns;
@BindView(R.id.iv_user_icon)
@@ -87,8 +77,6 @@ public class MainActivity extends BaseActivity {
TextView mTvAvisoNum;
@BindView(R.id.ll_day_aviso)
LinearLayout mLlDayAviso;
- @BindView(R.id.ll_issue_dis)
- LinearLayout mLlIssueDis;
@BindView(R.id.tv_mine_issue_num)
TextView mTvMineIssueNum;
@BindView(R.id.ll_mine_issue)
@@ -106,7 +94,6 @@ public class MainActivity extends BaseActivity {
PermissionConstants.MICROPHONE,
};
private Unbinder mBind;
- private int userType = 2;//1是N员 2是片长
private List mFuncs = new ArrayList<>();
private String[] mBtnStrs = new String[]{"企业信息", "隐患上报", "隐患复查", "法律法规"};
private int[] mBtnIds = new int[]{R.drawable.ic_issue_report,
@@ -114,8 +101,6 @@ public class MainActivity extends BaseActivity {
R.drawable.ic_issue_disp,
R.drawable.ic_work_path};
private Gson mGson = null;
- private int mPrecisionDefault = 70;
- private AlertDialog mGpsSettingDialog;
private AlertDialog mGpsWeakDialog;
@Override
@@ -176,8 +161,10 @@ public class MainActivity extends BaseActivity {
intent = new Intent(this, TroubleReportActivity.class);
break;
case "隐患复查":
+ intent = new Intent(this, CheckOptionsActivity.class);
break;
case "法律法规":
+ intent = new Intent(this, LawLibActivity.class);
break;
}
startActivity(intent);
@@ -290,7 +277,6 @@ public class MainActivity extends BaseActivity {
* report 案件上报
*/
@OnClick({
- R.id.ll_issue_dis,
R.id.ll_mine_issue,
R.id.tv_sign,
R.id.tv_rule,
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyDetailActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyDetailActivity.java
index 5299606..2f989cb 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyDetailActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyDetailActivity.java
@@ -1,5 +1,8 @@
package com.sucstepsoft.txrealtimelocation.activitys.companylib;
+import android.content.Intent;
+import android.view.View;
+
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
import com.sucstepsoft.txrealtimelocation.R;
@@ -22,7 +25,10 @@ public class CompanyDetailActivity extends BaseActivity {
public void initData() {
mBind = ButterKnife.bind(this);
mTvBaseTitle.setText("企业详情");
- refreshView(STATE_LOAD_LOADING);
+ refreshView(STATE_LOAD_SUCCESS);
+ mTvPublish.setVisibility(View.VISIBLE);
+ mTvPublish.setText("修改");
+ mTvPublish.setOnClickListener(v -> startActivity(new Intent(this, CompanyInfoEditActivity.class)));
String mId = getIntent().getStringExtra("id");
getCompanyDetailById(mId);
}
@@ -31,6 +37,7 @@ public class CompanyDetailActivity extends BaseActivity {
}
+
@Override
protected void onDestroy() {
super.onDestroy();
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyInfoEditActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyInfoEditActivity.java
index 92d8c35..fe2ad31 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyInfoEditActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/CompanyInfoEditActivity.java
@@ -1,10 +1,50 @@
package com.sucstepsoft.txrealtimelocation.activitys.companylib;
-import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
-import com.sucstepsoft.txrealtimelocation.R;
+import android.content.Intent;
+import android.database.Cursor;
+import android.graphics.Color;
+import android.net.Uri;
+import android.os.Build;
+import android.provider.MediaStore;
+import android.support.v4.content.FileProvider;
+import android.support.v7.widget.GridLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.text.TextUtils;
+import android.view.Gravity;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.TextView;
+import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
+import com.bigkoo.pickerview.view.OptionsPickerView;
+import com.sucstepsoft.cm_utils.constant.PathConfig;
+import com.sucstepsoft.cm_utils.core.beans.AddPhotoBean;
+import com.sucstepsoft.cm_utils.core.beans.DictionaryBean;
+import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
+import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
+import com.sucstepsoft.cm_utils.core.widget.base.AddPhotoAdapter;
+import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
+import com.sucstepsoft.cm_utils.core.widget.views.ButtomDialogView;
+import com.sucstepsoft.cm_utils.utils.ProiderUtil;
+import com.sucstepsoft.cm_utils.utils.RegexUtils;
+import com.sucstepsoft.cm_utils.utils.ToastUtils;
+import com.sucstepsoft.cm_utils.utils.UserLgUtils;
+import com.sucstepsoft.txrealtimelocation.R;
+import com.sucstepsoft.txrealtimelocation.activitys.common.PhotoActivity;
+import com.sucstepsoft.txrealtimelocation.beans.TypeListBean;
+import com.sucstepsoft.txrealtimelocation.net.LocationApiService;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
+import io.reactivex.Observer;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.schedulers.Schedulers;
/**
* 企业信息编辑
@@ -15,6 +55,61 @@ public class CompanyInfoEditActivity extends BaseActivity {
private String mId;
+ @BindView(R.id.tv_issue_base_info)
+ TextView mTvIssueBaseInfo;
+ @BindView(R.id.et_company_name)
+ EditText mEtCompanyName;
+ @BindView(R.id.tv_com_type)
+ TextView mTvComType;
+ @BindView(R.id.et_register_address)
+ EditText mEtRegisterAddress;
+ @BindView(R.id.et_detail_address)
+ EditText mEtDetailAddress;
+ @BindView(R.id.tv_trade)
+ TextView mTvTrade;
+ @BindView(R.id.et_peo_count)
+ EditText mEtPeoCount;
+ @BindView(R.id.tv_risk)
+ TextView mTvRisk;
+ @BindView(R.id.et_pre)
+ EditText mEtPre;
+ @BindView(R.id.et_phone)
+ EditText mEtPhone;
+ @BindView(R.id.tv_issue_detail_info)
+ TextView mTvIssueDetailInfo;
+ @BindView(R.id.rlv_door)
+ RecyclerView mRlvDoor;
+ @BindView(R.id.rlv_place)
+ RecyclerView mRlvPlace;
+ @BindView(R.id.btn_submit)
+ Button mBtnSubmit;
+ private List mDoorPhotos;
+ private List mPlacePhotos;
+ private AddPhotoBean mCurrentBean;
+ private String mPicPath;
+ private String mDoorPhotoIds = "";
+ private String mPlacePhotoIds = "";
+ private OptionsPickerView mTypePicker;//单位类型
+ private OptionsPickerView mTradePicker;//管理行业
+ private OptionsPickerView mCountyPicker;//旗县
+ private OptionsPickerView mStreetPicker;//街道
+ private OptionsPickerView mTraitPicker;//风险特点
+ private List mTypeList = new ArrayList<>();//单位类型
+ private List mTradeList = new ArrayList<>();//管理行业
+ private List mCountyList = new ArrayList<>();//旗县
+ private List mStreetList = new ArrayList<>();//街道
+ private List mTraitList = new ArrayList<>();//风险特点
+ private String mSelTypeId = "";//单位类型ID
+ private String mSelTradeId = "";//管理行业ID
+ private String mSelCountyId = "";//旗县ID
+ private String mSelStreetId = "";//街道ID
+ private String mTraitId = "";//风险特点ID
+ private String companyName = "";//企业名称
+ private String regisAddress = "";//注册地址
+ private String detailAddress = "";//详细地址
+ private String praceNum = "";//从业人员数量
+ private String people = "";//主要负责人
+ private String phone = "";//联系电话
@Override
protected int setLayoutId() {
return R.layout.activity_company_info_edit;
@@ -31,6 +126,339 @@ public class CompanyInfoEditActivity extends BaseActivity {
private void getCompanyDetail(String id) {
+ }
+ private void initPhotoView() {
+ mDoorPhotos = new ArrayList<>();
+ mPlacePhotos = new ArrayList<>();
+ mDoorPhotos.add(new AddPhotoBean());
+ mPlacePhotos.add(new AddPhotoBean());
+ AddPhotoAdapter mDoorPhotoAdapter = new AddPhotoAdapter(this, mDoorPhotos);
+ mRlvDoor.setLayoutManager(new GridLayoutManager(mActivity, 4));
+ mRlvDoor.setAdapter(mDoorPhotoAdapter);
+ //删除上传的相片
+ mDoorPhotoAdapter.addOnDeleteListener(((bean, i) -> {
+ mDoorPhotoAdapter.removeItem(bean);
+ mDoorPhotoIds = mDoorPhotoIds.replace(bean.getId() + ",", "");
+ }));
+ mDoorPhotoAdapter.addOnItemClickListener(bean -> {
+ if (TextUtils.isEmpty(bean.getPath())) {
+ //空数据
+ showSelectPhoto(bean);
+ } else {
+ //预览
+ ArrayList list = new ArrayList<>();
+ list.add(bean.getPath());
+ Intent intent = new Intent();
+ intent.putExtra(PhotoActivity.TAG_IMGURL, list);
+ intent.setClass(mActivity, PhotoActivity.class);
+ startActivity(intent);
+ }
+ });
+
+ AddPhotoAdapter mPlacePhotoAdapter = new AddPhotoAdapter(this, mPlacePhotos);
+ mRlvPlace.setLayoutManager(new GridLayoutManager(mActivity, 4));
+ mRlvPlace.setAdapter(mPlacePhotoAdapter);
+ //删除上传的相片
+ mPlacePhotoAdapter.addOnDeleteListener(((bean, i) -> {
+ mDoorPhotoAdapter.removeItem(bean);
+ mPlacePhotoIds = mPlacePhotoIds.replace(bean.getId() + ",", "");
+ }));
+ mPlacePhotoAdapter.addOnItemClickListener(bean -> {
+ if (TextUtils.isEmpty(bean.getPath())) {
+ //空数据
+ showSelectPhoto(bean);
+ } else {
+ //预览
+ ArrayList list = new ArrayList<>();
+ list.add(bean.getPath());
+ Intent intent = new Intent();
+ intent.putExtra(PhotoActivity.TAG_IMGURL, list);
+ intent.setClass(mActivity, PhotoActivity.class);
+ startActivity(intent);
+ }
+ });
+ }
+
+ /**
+ * 显示选择图片
+ *
+ * @param bean
+ */
+ private void showSelectPhoto(AddPhotoBean bean) {
+ hideSoftKeyboard();
+ ButtomDialogView buttomDialogView = new ButtomDialogView.DialogBuilder(mActivity)
+ .setIsBackCancelable(true)
+ .setIscancelable(true)
+ .setShowLocation(Gravity.BOTTOM)
+ .setIsShowFile(false)
+ .build();
+ buttomDialogView.addOnChoseListener(new ButtomDialogView.OnChoseListener() {
+ @Override
+ public void choseFile() {
+ }
+
+ @Override
+ public void choseAlbum() {
+ mCurrentBean = bean;
+ Intent intent = new Intent(Intent.ACTION_PICK, null);
+ intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
+ "image/*");
+ startActivityForResult(intent, BaseUrlApi.PHOTO_REQUEST);
+ buttomDialogView.dismiss();
+ }
+
+ @Override
+ public void choseShoot() {
+ mCurrentBean = bean;
+ mPicPath = PathConfig.CATCH_PATH + System.currentTimeMillis() + ".jpg";
+ File file = new File(mPicPath);
+ Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
+ // 下面这句指定调用相机拍照后的照片存储的路径
+ Uri uri;
+ if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M) {
+ uri = Uri.fromFile(file);
+ } else {
+ uri = FileProvider.getUriForFile(mActivity, ProiderUtil.getFileProviderName(mActivity), file);
+ }
+ intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
+ startActivityForResult(intent, BaseUrlApi.CAMERA_REQUEST);
+ }
+
+ @Override
+ public void loginOut() {
+
+ }
+
+ @Override
+ public void changePwd() {
+
+ }
+ });
+ buttomDialogView.show();
+ }
+
+ /**
+ * 显示单位类型
+ */
+ private void onShowTypePicker() {
+ hideSoftKeyboard();
+ if (mTypeList != null && mTypeList.size() > 0) {
+ if (mTypePicker == null) {
+ mTypePicker = new OptionsPickerBuilder(mActivity, (options1, options2, options3, v) -> {
+ DictionaryBean bean = mTypeList.get(options1);
+ mSelTypeId = bean.getId();
+ mTvComType.setText(bean.getName());
+ }).setTitleText("请选择企业类型")
+ .setCancelColor(Color.parseColor("#1189FF"))
+ .setSubmitColor(Color.parseColor("#1189FF"))
+ .setTitleColor(Color.parseColor("#1189FF"))
+ .build();
+ mTypePicker.setPicker(mTypeList);
+ }
+ mTypePicker.show();
+ } else {
+ getDicList("", 1);
+ }
+ }
+
+ private void doSubmit() {
+ if (checkParams()) {
+ //提交
+ }
+ }
+
+ private boolean checkParams() {
+ companyName = mEtCompanyName.getText().toString().trim();
+ if (TextUtils.isEmpty(companyName)) {
+ ToastUtils.showShort("请输入企业名称");
+ return false;
+ }
+ regisAddress = mEtRegisterAddress.getText().toString().trim();
+ if (TextUtils.isEmpty(regisAddress)) {
+ ToastUtils.showShort("请输入企业注册地址");
+ return false;
+ }
+ detailAddress = mEtDetailAddress.getText().toString().trim();
+ if (TextUtils.isEmpty(detailAddress)) {
+ ToastUtils.showShort("请输入企业详细地址");
+ return false;
+ }
+ praceNum = mEtPeoCount.getText().toString().trim();
+ if (TextUtils.isEmpty(praceNum)) {
+ ToastUtils.showShort("请输入从业人员数量");
+ return false;
+ }
+ people = mEtPre.getText().toString().trim();
+ if (TextUtils.isEmpty(people)) {
+ ToastUtils.showShort("请输入企业负责人");
+ return false;
+ }
+ phone = mEtPhone.getText().toString().trim();
+ if (TextUtils.isEmpty(phone) || !RegexUtils.isMobileSimple(phone)) {
+ ToastUtils.showShort("请输入合法的联系电话");
+ return false;
+ }
+ if (TextUtils.isEmpty(mSelTypeId)) {
+ ToastUtils.showShort("请选择企业类型");
+ return false;
+ }
+ if (TextUtils.isEmpty(mSelTradeId)) {
+ ToastUtils.showShort("请选择企业所属行业");
+ return false;
+ }
+ if (TextUtils.isEmpty(mSelStreetId)) {
+ ToastUtils.showShort("请选择企业所属街道");
+ return false;
+ }
+ if (TextUtils.isEmpty(mTraitId)) {
+ ToastUtils.showShort("请选择企业风险特点");
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * 显示管理行业选项
+ */
+ private void getDicList(String id, int type) {
+ RetrofitManager.getInstance()
+ .create(LocationApiService.class)
+ .getDictListAll(id, UserLgUtils.getToken())
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(new Observer>() {
+
+ @Override
+ public void onSubscribe(Disposable d) {
+
+ }
+
+ @Override
+ public void onNext(List dictionaryBeans) {
+
+ }
+
+ @Override
+ public void onError(Throwable e) {
+
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+
+
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (resultCode == RESULT_OK) {
+ switch (requestCode) {
+ case BaseUrlApi.CAMERA_REQUEST://相机
+ uploadImg(mPicPath, 1);
+ break;
+ case BaseUrlApi.PHOTO_REQUEST://相册
+ try {
+ if (data == null) return;
+ Uri uri = data.getData();
+ String[] proj = {MediaStore.Images.Media.DATA};
+ Cursor cursor = managedQuery(uri, proj, null, null, null);
+ int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
+ cursor.moveToFirst();
+ String srcPath = cursor.getString(column_index);
+ uploadImg(srcPath, 2);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ break;
+ }
+ }
+ super.onActivityResult(requestCode, resultCode, data);
+ }
+
+ /**
+ * 上传文件
+ *
+ * @param picPath
+ */
+ private void uploadImg(String picPath, int src) {
+// File file = new File(picPath);
+// if (!file.exists()) {
+// showToast("图片路径错误.");
+// return;
+// }
+// ProgressDialog progressDialog = UIUtil.initDialog(mActivity, "正在上传...");
+// progressDialog.show();
+// Luban.with(mActivity)
+// .load(picPath)
+// .ignoreBy(100)
+// .setTargetDir(PathConfig.CATCH_PATH)
+// .filter(path -> !(TextUtils.isEmpty(path) || path.toLowerCase().endsWith(".gif")))
+// .setCompressListener(new OnCompressListener() {
+// @Override
+// public void onStart() {
+//
+// }
+//
+// @Override
+// public void onSuccess(File file) {
+// RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file);
+// MultipartBody.Part body = MultipartBody.Part.createFormData("image", file.getName(), requestFile);
+// RetrofitManager.getInstance()
+// .create(LocationApiService.class)
+// .uploadImage(body, UserLgUtils.getToken())
+// .subscribeOn(Schedulers.io())
+// .observeOn(AndroidSchedulers.mainThread())
+// .subscribe(new Observer() {
+// @Override
+// public void onSubscribe(Disposable d) {
+//
+// }
+//
+// @Override
+// public void onNext(BaseUserBean baseUserBean) {
+// if (progressDialog != null && progressDialog.isShowing()) {
+// progressDialog.dismiss();
+// }
+// ToastUtils.showShort("上传成功");
+// mPhotoIds += (baseUserBean.getData() + ",");
+// mCurrentBean.setId(baseUserBean.getData());
+// mCurrentBean.setPath(picPath);
+// if (mPhotos.size() < 4) {
+// mPhotos.add(new AddPhotoBean());
+// }
+// mPhotoAdapter.notifyDataSetChanged();
+// mCurrentBean = null;
+// }
+//
+// @Override
+// public void onError(Throwable e) {
+// if (progressDialog != null && progressDialog.isShowing()) {
+// progressDialog.dismiss();
+// }
+// ToastUtils.showShort("上传失败,请稍后重试.");
+// if (file.exists()) {
+// file.delete();
+// }
+// }
+//
+// @Override
+// public void onComplete() {
+//
+// }
+// });
+// }
+//
+// @Override
+// public void onError(Throwable e) {
+// if (progressDialog.isShowing()) {
+// progressDialog.dismiss();
+// }
+// ToastUtils.showShort("图片上传失败,请稍后重试");
+// }
+// })
+// .launch();
}
@Override
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/EnterCompanyInfoActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/EnterCompanyInfoActivity.java
index 54e1e96..dd24365 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/EnterCompanyInfoActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/companylib/EnterCompanyInfoActivity.java
@@ -2,6 +2,7 @@ package com.sucstepsoft.txrealtimelocation.activitys.companylib;
import android.content.Intent;
import android.database.Cursor;
+import android.graphics.Color;
import android.net.Uri;
import android.os.Build;
import android.provider.MediaStore;
@@ -14,15 +15,25 @@ import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
+import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
+import com.bigkoo.pickerview.view.OptionsPickerView;
import com.sucstepsoft.cm_utils.constant.PathConfig;
import com.sucstepsoft.cm_utils.core.beans.AddPhotoBean;
+import com.sucstepsoft.cm_utils.core.beans.DictionaryBean;
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
+import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
import com.sucstepsoft.cm_utils.core.widget.base.AddPhotoAdapter;
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
import com.sucstepsoft.cm_utils.core.widget.views.ButtomDialogView;
+import com.sucstepsoft.cm_utils.utils.LogUtils;
import com.sucstepsoft.cm_utils.utils.ProiderUtil;
+import com.sucstepsoft.cm_utils.utils.RegexUtils;
+import com.sucstepsoft.cm_utils.utils.ToastUtils;
+import com.sucstepsoft.cm_utils.utils.UserLgUtils;
import com.sucstepsoft.txrealtimelocation.R;
import com.sucstepsoft.txrealtimelocation.activitys.common.PhotoActivity;
+import com.sucstepsoft.txrealtimelocation.beans.TypeListBean;
+import com.sucstepsoft.txrealtimelocation.net.LocationApiService;
import java.io.File;
import java.util.ArrayList;
@@ -31,6 +42,10 @@ import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
+import io.reactivex.Observer;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.schedulers.Schedulers;
/**
* 录入企业信息页面
@@ -72,6 +87,27 @@ public class EnterCompanyInfoActivity extends BaseActivity {
private String mPicPath;
private String mDoorPhotoIds = "";
private String mPlacePhotoIds = "";
+ private OptionsPickerView mTypePicker;//单位类型
+ private OptionsPickerView mTradePicker;//管理行业
+ private OptionsPickerView mCountyPicker;//旗县
+ private OptionsPickerView mStreetPicker;//街道
+ private OptionsPickerView mTraitPicker;//风险特点
+ private List mTypeList = new ArrayList<>();//单位类型
+ private List mTradeList = new ArrayList<>();//管理行业
+ private List mCountyList = new ArrayList<>();//旗县
+ private List mStreetList = new ArrayList<>();//街道
+ private List mTraitList = new ArrayList<>();//风险特点
+ private String mSelTypeId = "";//单位类型ID
+ private String mSelTradeId = "";//管理行业ID
+ private String mSelCountyId = "";//旗县ID
+ private String mSelStreetId = "";//街道ID
+ private String mTraitId = "";//风险特点ID
+ private String companyName = "";//企业名称
+ private String regisAddress = "";//注册地址
+ private String detailAddress = "";//详细地址
+ private String praceNum = "";//从业人员数量
+ private String people = "";//主要负责人
+ private String phone = "";//联系电话
@Override
protected int setLayoutId() {
@@ -84,7 +120,7 @@ public class EnterCompanyInfoActivity extends BaseActivity {
refreshView(STATE_LOAD_SUCCESS);
mBind = ButterKnife.bind(this);
initPhotoView();
-
+ mBtnSubmit.setOnClickListener(v -> doSubmit());
}
private void initPhotoView() {
@@ -197,6 +233,120 @@ public class EnterCompanyInfoActivity extends BaseActivity {
buttomDialogView.show();
}
+ /**
+ * 显示单位类型
+ */
+ private void onShowTypePicker() {
+ hideSoftKeyboard();
+ if (mTypeList != null && mTypeList.size() > 0) {
+ if (mTypePicker == null) {
+ mTypePicker = new OptionsPickerBuilder(EnterCompanyInfoActivity.this, (options1, options2, options3, v) -> {
+ DictionaryBean bean = mTypeList.get(options1);
+ mSelTypeId = bean.getId();
+ mTvComType.setText(bean.getName());
+ }).setTitleText("请选择企业类型")
+ .setCancelColor(Color.parseColor("#1189FF"))
+ .setSubmitColor(Color.parseColor("#1189FF"))
+ .setTitleColor(Color.parseColor("#1189FF"))
+ .build();
+ mTypePicker.setPicker(mTypeList);
+ }
+ mTypePicker.show();
+ } else {
+ getDicList("", 1);
+ }
+ }
+
+ private void doSubmit() {
+ if (checkParams()) {
+ //提交
+ }
+ }
+
+ private boolean checkParams() {
+ companyName = mEtCompanyName.getText().toString().trim();
+ if (TextUtils.isEmpty(companyName)) {
+ ToastUtils.showShort("请输入企业名称");
+ return false;
+ }
+ regisAddress = mEtRegisterAddress.getText().toString().trim();
+ if (TextUtils.isEmpty(regisAddress)) {
+ ToastUtils.showShort("请输入企业注册地址");
+ return false;
+ }
+ detailAddress = mEtDetailAddress.getText().toString().trim();
+ if (TextUtils.isEmpty(detailAddress)) {
+ ToastUtils.showShort("请输入企业详细地址");
+ return false;
+ }
+ praceNum = mEtPeoCount.getText().toString().trim();
+ if (TextUtils.isEmpty(praceNum)) {
+ ToastUtils.showShort("请输入从业人员数量");
+ return false;
+ }
+ people = mEtPre.getText().toString().trim();
+ if (TextUtils.isEmpty(people)) {
+ ToastUtils.showShort("请输入企业负责人");
+ return false;
+ }
+ phone = mEtPhone.getText().toString().trim();
+ if (TextUtils.isEmpty(phone) || !RegexUtils.isMobileSimple(phone)) {
+ ToastUtils.showShort("请输入合法的联系电话");
+ return false;
+ }
+ if (TextUtils.isEmpty(mSelTypeId)) {
+ ToastUtils.showShort("请选择企业类型");
+ return false;
+ }
+ if (TextUtils.isEmpty(mSelTradeId)) {
+ ToastUtils.showShort("请选择企业所属行业");
+ return false;
+ }
+ if (TextUtils.isEmpty(mSelStreetId)) {
+ ToastUtils.showShort("请选择企业所属街道");
+ return false;
+ }
+ if (TextUtils.isEmpty(mTraitId)) {
+ ToastUtils.showShort("请选择企业风险特点");
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * 显示管理行业选项
+ */
+ private void getDicList(String id, int type) {
+ RetrofitManager.getInstance()
+ .create(LocationApiService.class)
+ .getDictListAll(id, UserLgUtils.getToken())
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(new Observer>() {
+
+ @Override
+ public void onSubscribe(Disposable d) {
+
+ }
+
+ @Override
+ public void onNext(List dictionaryBeans) {
+
+ }
+
+ @Override
+ public void onError(Throwable e) {
+
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+
+
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
@@ -306,6 +456,7 @@ public class EnterCompanyInfoActivity extends BaseActivity {
// })
// .launch();
}
+
@Override
protected void onDestroy() {
super.onDestroy();
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/CheckOptionsActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/CheckOptionsActivity.java
index c63d506..70c0f35 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/CheckOptionsActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/CheckOptionsActivity.java
@@ -1,7 +1,6 @@
package com.sucstepsoft.txrealtimelocation.activitys.issue;
-import android.app.ProgressDialog;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
@@ -10,25 +9,18 @@ import android.provider.MediaStore;
import android.support.v4.content.FileProvider;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
-import android.text.TextUtils;
import android.view.Gravity;
import com.sucstepsoft.cm_utils.constant.PathConfig;
import com.sucstepsoft.cm_utils.core.beans.AddPhotoBean;
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
-import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
import com.sucstepsoft.cm_utils.core.widget.views.ButtomDialogView;
import com.sucstepsoft.cm_utils.utils.ProiderUtil;
-import com.sucstepsoft.cm_utils.utils.ToastUtils;
-import com.sucstepsoft.cm_utils.utils.UIUtil;
-import com.sucstepsoft.cm_utils.utils.UserLgUtils;
import com.sucstepsoft.txrealtimelocation.R;
import com.sucstepsoft.txrealtimelocation.activitys.common.PhotoActivity;
import com.sucstepsoft.txrealtimelocation.activitys.issue.demo.Options;
import com.sucstepsoft.txrealtimelocation.activitys.issue.demo.OptionsAdapter;
-import com.sucstepsoft.txrealtimelocation.beans.BaseUserBean;
-import com.sucstepsoft.txrealtimelocation.net.LocationApiService;
import java.io.File;
import java.util.ArrayList;
@@ -37,15 +29,6 @@ import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
-import io.reactivex.Observer;
-import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.schedulers.Schedulers;
-import okhttp3.MediaType;
-import okhttp3.MultipartBody;
-import okhttp3.RequestBody;
-import top.zibin.luban.Luban;
-import top.zibin.luban.OnCompressListener;
public class CheckOptionsActivity extends BaseActivity {
Unbinder mBind;
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsAdapter.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsAdapter.java
index fabcae6..6109925 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsAdapter.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsAdapter.java
@@ -7,6 +7,8 @@ import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.ArrayAdapter;
+import android.widget.RadioGroup;
import com.sucstepsoft.cm_utils.core.beans.AddPhotoBean;
import com.sucstepsoft.cm_utils.core.widget.base.AddPhotoAdapter;
@@ -40,45 +42,73 @@ public class OptionsAdapter extends BaseRecyclerAdapter
oHolder.mScvOptions.setOnClickListener(v -> {
EmStateCheck state = oHolder.mScvOptions.getViewState();
switch (state) {
- case NORMAL:
+ case NORMAL://未检查
oHolder.mScvOptions.setCheckState(EmStateCheck.CHECK);
mData.get(i).setState(EmStateCheck.CHECK);
- oHolder.mRlvPhotos.setVisibility(View.GONE);
+ initContentView(oHolder, mData.get(i), i);
break;
- case CHECK:
+ case CHECK://合格
oHolder.mScvOptions.setCheckState(EmStateCheck.UNCHECK);
mData.get(i).setState(EmStateCheck.UNCHECK);
- oHolder.mRlvPhotos.setVisibility(View.VISIBLE);
- initPhotosView(oHolder.mRlvPhotos, mData.get(i), i);
+ initContentView(oHolder, mData.get(i), i);
break;
- case UNCHECK:
- oHolder.mRlvPhotos.setVisibility(View.GONE);
+ case UNCHECK://有隐患
oHolder.mScvOptions.setCheckState(EmStateCheck.NORMAL);
mData.get(i).setState(EmStateCheck.NORMAL);
+ oHolder.mLlContent.setVisibility(View.GONE);
+ oHolder.mRlvPhotos.setVisibility(View.GONE);
break;
}
});
- if (mData.get(i).getState() == EmStateCheck.UNCHECK) {
- oHolder.mRlvPhotos.setVisibility(View.VISIBLE);
- initPhotosView(oHolder.mRlvPhotos, mData.get(i), i);
+ if (mData.get(i).getState() == EmStateCheck.UNCHECK || mData.get(i).getState() == EmStateCheck.CHECK) {
+ initContentView(oHolder, mData.get(i), i);
} else {
+ oHolder.mLlContent.setVisibility(View.GONE);
oHolder.mRlvPhotos.setVisibility(View.GONE);
}
oHolder.mTvTitle.setText(mData.get(i).getTitle());
}
- public void initPhotosView(RecyclerView rlv, Options op, int index) {
+ private void initContentView(OptionsHolder oHolder, Options op, int index) {
+ //1.合格只要相片
+ //2.存在隐患
+ // 立即整改 当天 立即 rg 图片
+ // 限期增改 1 5 10 15 20 25 30天 选择spinner 图片
+ oHolder.mRlvPhotos.setVisibility(View.VISIBLE);
+ EmStateCheck state = mData.get(index).getState();
+ //合格
+ if (state == EmStateCheck.CHECK) {
+ oHolder.mLlContent.setVisibility(View.GONE);
+
+ } else {
+ oHolder.mLlContent.setVisibility(View.VISIBLE);
+
+ //立即整改
+ String[] defaultArray = mContext.getResources().getStringArray(R.array.limit);
+ ArrayAdapter defaultApater = new ArrayAdapter<>(mContext, R.layout.item_pop_text, defaultArray);
+ oHolder.mSpinner.setAdapter(defaultApater);
+ oHolder.mRg.setOnCheckedChangeListener((radioGroup, i) -> {
+ if (i == R.id.rb_now) {
+ //立即整改
+ oHolder.mSpinner.setAdapter(defaultApater);
+ } else {
+ //限期整改
+ String[] stringArray = mContext.getResources().getStringArray(R.array.timeLimit);
+ ArrayAdapter adapter = new ArrayAdapter<>(mContext, R.layout.item_pop_text, stringArray);
+ oHolder.mSpinner.setAdapter(adapter);
+ }
+ });
+ }
AddPhotoAdapter photoAdapter = new AddPhotoAdapter(mContext, op.getPhotos());
- rlv.setAdapter(photoAdapter);
- rlv.setLayoutManager(new GridLayoutManager(mContext, 4));
+ oHolder.mRlvPhotos.setAdapter(photoAdapter);
+ oHolder.mRlvPhotos.setLayoutManager(new GridLayoutManager(mContext, 4));
photoAdapter.addOnItemClickListener(bean -> {
if (mSelectPhotoListener != null) {
if (TextUtils.isEmpty(bean.getPath())) {
//空数据,选择图片
- mSelectPhotoListener.onSelectPhoto(bean, op, index,1);
+ mSelectPhotoListener.onSelectPhoto(bean, op, index, 1);
} else {
- mSelectPhotoListener.onSelectPhoto(bean,op,index,2);
-
+ mSelectPhotoListener.onSelectPhoto(bean, op, index, 2);
}
}
});
@@ -91,6 +121,6 @@ public class OptionsAdapter extends BaseRecyclerAdapter
}
public interface SelectPhoto {
- void onSelectPhoto(AddPhotoBean bean, Options options, int i,int type);
+ void onSelectPhoto(AddPhotoBean bean, Options options, int i, int type);
}
}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsHolder.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsHolder.java
index ea71788..43300be 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsHolder.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/issue/demo/OptionsHolder.java
@@ -1,8 +1,11 @@
package com.sucstepsoft.txrealtimelocation.activitys.issue.demo;
import android.support.annotation.NonNull;
+import android.support.v7.widget.AppCompatSpinner;
import android.support.v7.widget.RecyclerView;
import android.view.View;
+import android.widget.LinearLayout;
+import android.widget.RadioGroup;
import android.widget.TextView;
import com.sucstepsoft.txrealtimelocation.R;
@@ -18,11 +21,17 @@ public class OptionsHolder extends RecyclerView.ViewHolder {
public TextView mTvTitle;
public StateCheckView mScvOptions;
public RecyclerView mRlvPhotos;
+ public LinearLayout mLlContent;
+ public AppCompatSpinner mSpinner;
+ public RadioGroup mRg;
public OptionsHolder(@NonNull View itemView) {
super(itemView);
mTvTitle = itemView.findViewById(R.id.tv_title);
mScvOptions = itemView.findViewById(R.id.scv_options);
mRlvPhotos = itemView.findViewById(R.id.rlv_photos);
+ mLlContent = itemView.findViewById(R.id.ll_content);
+ mSpinner = itemView.findViewById(R.id.sp_term);
+ mRg = itemView.findViewById(R.id.rg_term);
}
}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/lawlib/LawLibActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/lawlib/LawLibActivity.java
new file mode 100644
index 0000000..0fb25ef
--- /dev/null
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/lawlib/LawLibActivity.java
@@ -0,0 +1,88 @@
+package com.sucstepsoft.txrealtimelocation.activitys.lawlib;
+
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.ImageView;
+import android.widget.ProgressBar;
+import android.widget.TextView;
+
+import com.jcodecraeer.xrecyclerview.XRecyclerView;
+import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
+import com.sucstepsoft.txrealtimelocation.R;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import butterknife.Unbinder;
+
+public class LawLibActivity extends BaseActivity {
+ private static final int STATE_LO = 833;
+ private static final int STATE_SU = 933;
+ private static final int STATE_ER = 1033;
+ private static final int STATE_EM = 1133;
+ @BindView(R.id.et_law_name)
+ EditText mEtLawName;
+ @BindView(R.id.btn_search)
+ Button mBtnSearch;
+ @BindView(R.id.pb_loading)
+ ProgressBar mPbLoading;
+ @BindView(R.id.iv_empty)
+ ImageView mIvEmpty;
+ @BindView(R.id.tv_error_hint)
+ TextView mTvErrorHint;
+ @BindView(R.id.xlv_com_lib)
+ XRecyclerView mXlvComLib;
+ private Unbinder mBind;
+
+ @Override
+ protected int setLayoutId() {
+ return R.layout.activity_law_lib;
+ }
+
+ @Override
+ public void initData() {
+ mBind = ButterKnife.bind(this);
+ refreshView(STATE_LOAD_SUCCESS);
+ mTvBaseTitle.setText("法律法规");
+ reStateView(STATE_LO);
+ }
+
+ private void reStateView(int state) {
+ switch (state) {
+ case STATE_LO:
+ mTvErrorHint.setVisibility(View.VISIBLE);
+ mTvErrorHint.setText("数据加载中...");
+ mIvEmpty.setVisibility(View.GONE);
+ mXlvComLib.setVisibility(View.GONE);
+ mPbLoading.setVisibility(View.VISIBLE);
+ break;
+ case STATE_SU:
+ mTvErrorHint.setVisibility(View.GONE);
+ mIvEmpty.setVisibility(View.GONE);
+ mXlvComLib.setVisibility(View.VISIBLE);
+ mPbLoading.setVisibility(View.GONE);
+ break;
+ case STATE_ER:
+ mTvErrorHint.setVisibility(View.VISIBLE);
+ mTvErrorHint.setText("数据加载失败,请稍后重试");
+ mIvEmpty.setVisibility(View.VISIBLE);
+ mXlvComLib.setVisibility(View.GONE);
+ mPbLoading.setVisibility(View.GONE);
+ break;
+ case STATE_EM:
+ mTvErrorHint.setVisibility(View.VISIBLE);
+ mTvErrorHint.setText("未找到相关内容");
+ mIvEmpty.setVisibility(View.VISIBLE);
+ mXlvComLib.setVisibility(View.GONE);
+ mPbLoading.setVisibility(View.GONE);
+ break;
+ }
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ mBind.unbind();
+ }
+
+}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/SelCompanyActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/SelCompanyActivity.java
index 524cda1..23028f1 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/SelCompanyActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/SelCompanyActivity.java
@@ -1,11 +1,29 @@
package com.sucstepsoft.txrealtimelocation.activitys.trouble;
-import android.support.v7.app.AppCompatActivity;
+import android.content.Intent;
import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.text.TextUtils;
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.ImageView;
+import android.widget.ProgressBar;
+import android.widget.TextView;
+import com.jcodecraeer.xrecyclerview.ProgressStyle;
+import com.jcodecraeer.xrecyclerview.XRecyclerView;
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
+import com.sucstepsoft.cm_utils.utils.ToastUtils;
import com.sucstepsoft.txrealtimelocation.R;
+import com.sucstepsoft.txrealtimelocation.activitys.companylib.CompanyDetailActivity;
+import com.sucstepsoft.txrealtimelocation.adapters.CompanyCheckAdapter;
+import com.sucstepsoft.txrealtimelocation.beans.CompanyBean;
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
@@ -13,9 +31,27 @@ import butterknife.Unbinder;
* 选择企业
*/
public class SelCompanyActivity extends BaseActivity {
-
-
+ private static final int STATE_LO = 433;
+ private static final int STATE_SU = 533;
+ private static final int STATE_ER = 633;
+ private static final int STATE_EM = 733;
+ @BindView(R.id.et_company_name)
+ EditText mEtCompanyName;
+ @BindView(R.id.tv_com_type)
+ TextView mTvComType;
+ @BindView(R.id.btn_search)
+ Button mBtnSearch;
+ @BindView(R.id.pb_loading)
+ ProgressBar mPbLoading;
+ @BindView(R.id.iv_empty)
+ ImageView mIvEmpty;
+ @BindView(R.id.tv_error_hint)
+ TextView mTvErrorHint;
+ @BindView(R.id.xlv_com_lib)
+ XRecyclerView mXlvComLib;
private Unbinder mBind;
+ private List mDatas = new ArrayList<>();
+ private CompanyCheckAdapter mAdapter;
@Override
protected int setLayoutId() {
@@ -26,7 +62,88 @@ public class SelCompanyActivity extends BaseActivity {
public void initData() {
mBind = ButterKnife.bind(this);
mTvBaseTitle.setText("选择企业");
+ mTvPublish.setVisibility(View.VISIBLE);
+ mTvPublish.setText("确定");
+ mTvPublish.setOnClickListener(v -> {
+ String selDataId = mAdapter.getSelDataId();
+ if (TextUtils.isEmpty(selDataId)) {
+ ToastUtils.showShort("请选择企业");
+ } else {
+ Intent intent = new Intent();
+ intent.putExtra("id", selDataId);
+ setResult(123, intent);
+ finish();
+ }
+ });
refreshView(STATE_LOAD_SUCCESS);
+ reStateView(STATE_LO);
+ getCompanyList();
+ }
+
+ private void getCompanyList() {
+ for (int i = 0; i < 100; i++) {
+ CompanyBean bean = new CompanyBean();
+ bean.setId(i + "");
+ bean.setName(i + " 测试标题测试标题测试标题测试标题");
+ bean.setAddress("测试地址测试地址测试地址测试地址测试地址");
+ bean.setPeople("测试");
+ mDatas.add(bean);
+ }
+ mAdapter = new CompanyCheckAdapter(mActivity, mDatas);
+ mXlvComLib.setAdapter(mAdapter);
+ LinearLayoutManager layoutManager = new LinearLayoutManager(mActivity);
+ layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
+ mAdapter.addOnItemClickListener(bean -> startActivity(new Intent(this, CompanyDetailActivity.class)));
+ mXlvComLib.setLayoutManager(layoutManager);
+// mXlvComLib.setAdapter(mAdapter);
+// mXlvComLib.addOnItemClickListener(bean -> showIssueDetail(bean));
+ mXlvComLib.setNoMore(true);
+ mXlvComLib.setRefreshProgressStyle(ProgressStyle.BallGridBeat);
+ mXlvComLib.setLoadingMoreProgressStyle(ProgressStyle.Pacman);
+ mXlvComLib.setLoadingListener(new XRecyclerView.LoadingListener() {
+ @Override
+ public void onRefresh() {
+
+ }
+
+ @Override
+ public void onLoadMore() {
+
+ }
+ });
+ reStateView(STATE_SU);
+ }
+
+ private void reStateView(int state) {
+ switch (state) {
+ case STATE_LO:
+ mTvErrorHint.setVisibility(View.VISIBLE);
+ mTvErrorHint.setText("数据加载中...");
+ mIvEmpty.setVisibility(View.GONE);
+ mXlvComLib.setVisibility(View.GONE);
+ mPbLoading.setVisibility(View.VISIBLE);
+ break;
+ case STATE_SU:
+ mTvErrorHint.setVisibility(View.GONE);
+ mIvEmpty.setVisibility(View.GONE);
+ mXlvComLib.setVisibility(View.VISIBLE);
+ mPbLoading.setVisibility(View.GONE);
+ break;
+ case STATE_ER:
+ mTvErrorHint.setVisibility(View.VISIBLE);
+ mTvErrorHint.setText("数据加载失败,请稍后重试");
+ mIvEmpty.setVisibility(View.VISIBLE);
+ mXlvComLib.setVisibility(View.GONE);
+ mPbLoading.setVisibility(View.GONE);
+ break;
+ case STATE_EM:
+ mTvErrorHint.setVisibility(View.VISIBLE);
+ mTvErrorHint.setText("未找到相关内容");
+ mIvEmpty.setVisibility(View.VISIBLE);
+ mXlvComLib.setVisibility(View.GONE);
+ mPbLoading.setVisibility(View.GONE);
+ break;
+ }
}
@Override
@@ -34,4 +151,5 @@ public class SelCompanyActivity extends BaseActivity {
super.onDestroy();
mBind.unbind();
}
+
}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/TroubleReportActivity.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/TroubleReportActivity.java
index cb4b49b..98ef2db 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/TroubleReportActivity.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/activitys/trouble/TroubleReportActivity.java
@@ -1,11 +1,14 @@
package com.sucstepsoft.txrealtimelocation.activitys.trouble;
import android.content.Intent;
+import android.provider.CallLog;
+import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
+import com.sucstepsoft.cm_utils.utils.LogUtils;
import com.sucstepsoft.txrealtimelocation.R;
import butterknife.BindView;
@@ -31,7 +34,19 @@ public class TroubleReportActivity extends BaseActivity {
mBind = ButterKnife.bind(this);
refreshView(STATE_LOAD_SUCCESS);
mTvBaseTitle.setText("企业隐患上报");
- mTvSelCompany.setOnClickListener(v -> startActivity(new Intent(this, SelCompanyActivity.class)));
+
+ mTvSelCompany.setOnClickListener(v -> startActivityForResult(new Intent(this, SelCompanyActivity.class), 223));
+ }
+
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
+ super.onActivityResult(requestCode, resultCode, data);
+ if (requestCode == 223) {
+ if (resultCode == 123) {
+ String id = data.getStringExtra("id");
+ LogUtils.e(id);
+ }
+ }
}
@Override
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/adapters/CompanyCheckAdapter.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/adapters/CompanyCheckAdapter.java
new file mode 100644
index 0000000..91d9283
--- /dev/null
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/adapters/CompanyCheckAdapter.java
@@ -0,0 +1,68 @@
+package com.sucstepsoft.txrealtimelocation.adapters;
+
+import android.content.Context;
+import android.os.Handler;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.CompoundButton;
+
+import com.sucstepsoft.cm_utils.core.widget.base.BaseRecyclerAdapter;
+import com.sucstepsoft.cm_utils.utils.LogUtils;
+import com.sucstepsoft.txrealtimelocation.R;
+import com.sucstepsoft.txrealtimelocation.activitys.lawlib.LawLibActivity;
+import com.sucstepsoft.txrealtimelocation.adapters.holders.CompanyCheckHolder;
+import com.sucstepsoft.txrealtimelocation.beans.CompanyBean;
+
+import java.util.List;
+
+/**
+ * 作者: adam
+ * 日期: 2020/3/30 - 12:35 PM
+ * 邮箱: itgaojian@163.com
+ * 描述:
+ */
+public class CompanyCheckAdapter extends BaseRecyclerAdapter {
+ private int mCheckIndex = 0;
+ private String mCheckId = "";
+ private boolean onBind;
+
+ public CompanyCheckAdapter(Context ctx, List list) {
+ super(ctx, list);
+ }
+
+ @Override
+ public CompanyCheckHolder createHolder(ViewGroup parent, int viewType) {
+ View itemView = LayoutInflater.from(mContext).inflate(R.layout.item_company_check, parent, false);
+ return new CompanyCheckHolder(itemView);
+ }
+
+ @Override
+ public void bindHolder(CompanyCheckHolder holder, int i) {
+ holder.itemView.setOnClickListener(v -> {
+ mCheckId = mData.get(i).getId();
+ notifyDataSetChanged();
+ });
+// holder.mCbCheck.setOnCheckedChangeListener((compoundButton, b) -> {
+// mCheckId = mData.get(i).getId();
+// LogUtils.e(b + "===" + mCheckId);
+//// if (!onBind) {
+//// notifyDataSetChanged();
+//// }
+// });
+ if (!TextUtils.isEmpty(mCheckId) && mData.get(i).getId().equals(mCheckId)) {
+ holder.mCbCheck.setChecked(true);
+ } else {
+ holder.mCbCheck.setChecked(false);
+ }
+ holder.mTvName.setText(mData.get(i).getName());
+ holder.mTvAddress.setText("地址:" + mData.get(i).getAddress());
+ holder.mTvPeo.setText("负责人:" + mData.get(i).getPeople());
+ }
+
+ public String getSelDataId() {
+ return mCheckId;
+ }
+}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/adapters/holders/CompanyCheckHolder.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/adapters/holders/CompanyCheckHolder.java
new file mode 100644
index 0000000..445de46
--- /dev/null
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/adapters/holders/CompanyCheckHolder.java
@@ -0,0 +1,31 @@
+package com.sucstepsoft.txrealtimelocation.adapters.holders;
+
+import android.support.annotation.NonNull;
+import android.support.v7.view.menu.MenuBuilder;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.CheckBox;
+import android.widget.TextView;
+
+import com.sucstepsoft.txrealtimelocation.R;
+
+/**
+ * 作者: adam
+ * 日期: 2020/3/30 - 12:30 PM
+ * 邮箱: itgaojian@163.com
+ * 描述:
+ */
+public class CompanyCheckHolder extends RecyclerView.ViewHolder {
+ public TextView mTvName;
+ public TextView mTvAddress;
+ public TextView mTvPeo;
+ public CheckBox mCbCheck;
+
+ public CompanyCheckHolder(@NonNull View itemView) {
+ super(itemView);
+ mTvName = itemView.findViewById(R.id.tv_name);
+ mTvAddress = itemView.findViewById(R.id.tv_address);
+ mTvPeo = itemView.findViewById(R.id.tv_peo);
+ mCbCheck = itemView.findViewById(R.id.cb_check);
+ }
+}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/beans/CompanyBean.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/beans/CompanyBean.java
new file mode 100644
index 0000000..720a319
--- /dev/null
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/beans/CompanyBean.java
@@ -0,0 +1,46 @@
+package com.sucstepsoft.txrealtimelocation.beans;
+
+/**
+ * 作者: adam
+ * 日期: 2020/3/30 - 12:38 PM
+ * 邮箱: itgaojian@163.com
+ * 描述:
+ */
+public class CompanyBean {
+ private String name;
+ private String address;
+ private String people;
+ private String id;
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getAddress() {
+ return address;
+ }
+
+ public void setAddress(String address) {
+ this.address = address;
+ }
+
+ public String getPeople() {
+ return people;
+ }
+
+ public void setPeople(String people) {
+ this.people = people;
+ }
+}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/EmStateCheck.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/EmStateCheck.java
index 16f62c5..bc7ccb4 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/EmStateCheck.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/EmStateCheck.java
@@ -4,8 +4,9 @@ package com.sucstepsoft.txrealtimelocation.widget;
* 作者: adam
* 日期: 2020-03-26 - 12:53
* 邮箱: itgaojian@163.com
- * 描述:
+ * 描述: 未检查,合格,
+ * 存在隐患: 立即整改,限期整改
*/
public enum EmStateCheck {
- UNCHECK, NORMAL, CHECK
+ NORMAL, CHECK, UNCHECK
}
diff --git a/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/StateCheckView.java b/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/StateCheckView.java
index 9f8cef0..920849d 100644
--- a/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/StateCheckView.java
+++ b/app/src/main/java/com/sucstepsoft/txrealtimelocation/widget/StateCheckView.java
@@ -20,7 +20,6 @@ public class StateCheckView extends LinearLayout {
private static final int[] STATE_NORMAL = new int[]{R.attr.state_normal};
private static final int[] STATE_CHECK = new int[]{R.attr.state_check};
private static final int[] STATE_UNCHECK = new int[]{R.attr.state_uncheck};
-
private EmStateCheck mState = EmStateCheck.NORMAL;
private TextView mTvState;
@@ -71,10 +70,10 @@ public class StateCheckView extends LinearLayout {
mTvState.setText("未检查");
break;
case CHECK:
- mTvState.setText("已检查");
+ mTvState.setText("合格");
break;
case UNCHECK:
- mTvState.setText("不合格");
+ mTvState.setText("存在隐患");
break;
}
}
diff --git a/app/src/main/res/drawable-xhdpi/ic_check_blue.png b/app/src/main/res/drawable-xhdpi/ic_check_blue.png
new file mode 100644
index 0000000..ad62739
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_check_blue.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_check_exist.png b/app/src/main/res/drawable-xhdpi/ic_check_exist.png
new file mode 100644
index 0000000..87f60e0
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_check_exist.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_search.png b/app/src/main/res/drawable-xhdpi/ic_search.png
new file mode 100644
index 0000000..3caab00
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_search.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_search_blue.png b/app/src/main/res/drawable-xhdpi/ic_search_blue.png
new file mode 100644
index 0000000..ca22732
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_search_blue.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_uncheck_blue.png b/app/src/main/res/drawable-xhdpi/ic_uncheck_blue.png
new file mode 100644
index 0000000..bc6b3d1
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_uncheck_blue.png differ
diff --git a/app/src/main/res/drawable/sel_check_blue.xml b/app/src/main/res/drawable/sel_check_blue.xml
new file mode 100644
index 0000000..f3060c8
--- /dev/null
+++ b/app/src/main/res/drawable/sel_check_blue.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_check_options_ce.xml b/app/src/main/res/layout/activity_check_options_ce.xml
index a9ff9f9..21dd9d2 100644
--- a/app/src/main/res/layout/activity_check_options_ce.xml
+++ b/app/src/main/res/layout/activity_check_options_ce.xml
@@ -3,11 +3,16 @@
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"
+ android:orientation="vertical"
tools:context=".activitys.issue.CheckOptionsActivity">
+
+ android:layout_height="wrap_content"
+ tools:layoutManager="LinearLayoutManager"
+ tools:listitem="@layout/item_options" />
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_company_detail.xml b/app/src/main/res/layout/activity_company_detail.xml
index f587e54..34f5dd7 100644
--- a/app/src/main/res/layout/activity_company_detail.xml
+++ b/app/src/main/res/layout/activity_company_detail.xml
@@ -1,9 +1,148 @@
-
+ android:background="@color/white">
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_company_info_edit.xml b/app/src/main/res/layout/activity_company_info_edit.xml
index 477f9ab..200007d 100644
--- a/app/src/main/res/layout/activity_company_info_edit.xml
+++ b/app/src/main/res/layout/activity_company_info_edit.xml
@@ -1,9 +1,426 @@
-
+ android:orientation="vertical">
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_enter_company_info.xml b/app/src/main/res/layout/activity_enter_company_info.xml
index fba8477..7c75331 100644
--- a/app/src/main/res/layout/activity_enter_company_info.xml
+++ b/app/src/main/res/layout/activity_enter_company_info.xml
@@ -8,13 +8,14 @@
-
-
-
-
-
-
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_law_lib.xml b/app/src/main/res/layout/activity_law_lib.xml
new file mode 100644
index 0000000..abd8250
--- /dev/null
+++ b/app/src/main/res/layout/activity_law_lib.xml
@@ -0,0 +1,91 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 5269f8c..b50d782 100755
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -179,6 +179,10 @@
android:textSize="10sp" />
+
@@ -44,6 +45,7 @@
android:textColor="@color/black"
tools:text="单位类型" />
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_company_check.xml b/app/src/main/res/layout/item_company_check.xml
new file mode 100644
index 0000000..abf416c
--- /dev/null
+++ b/app/src/main/res/layout/item_company_check.xml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_options.xml b/app/src/main/res/layout/item_options.xml
index 9b1697f..936bc03 100644
--- a/app/src/main/res/layout/item_options.xml
+++ b/app/src/main/res/layout/item_options.xml
@@ -3,32 +3,87 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:layout_margin="5dp"
android:orientation="vertical">
-
+
+
+ android:gravity="center_vertical"
+ android:orientation="horizontal"
+ android:padding="5dp">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_pop_text.xml b/app/src/main/res/layout/item_pop_text.xml
new file mode 100644
index 0000000..1b77ed5
--- /dev/null
+++ b/app/src/main/res/layout/item_pop_text.xml
@@ -0,0 +1,10 @@
+
+
diff --git a/app/src/main/res/layout/options_state.xml b/app/src/main/res/layout/options_state.xml
index ec43765..2cb04f6 100644
--- a/app/src/main/res/layout/options_state.xml
+++ b/app/src/main/res/layout/options_state.xml
@@ -17,11 +17,11 @@
+ tools:text="存在隐患" />
\ No newline at end of file
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
new file mode 100644
index 0000000..4276340
--- /dev/null
+++ b/app/src/main/res/values/arrays.xml
@@ -0,0 +1,17 @@
+
+
+
+ - 立即整改
+ - 当天整改
+
+
+ - 1天
+ - 5天
+ - 10天
+ - 15天
+ - 20天
+ - 25天
+ - 30天
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml
index a38fced..3958dde 100644
--- a/app/src/main/res/values/attrs.xml
+++ b/app/src/main/res/values/attrs.xml
@@ -1,8 +1,9 @@
-
-
-
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index cb57f47..2674204 100755
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -24,6 +24,7 @@
- true
- false
+
+
+
+
+
+
+
+
+
+
+
+
+