diff --git a/app/build.gradle b/app/build.gradle index 6d77245..2511031 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -125,4 +125,7 @@ dependencies { implementation 'com.googlecode.mp4parser:isoparser:1.1.21' // Android常用库 implementation 'com.github.lazylibrary:lazylibrary:1.0.2' + //屏幕的适配百分比 + //https://www.jianshu.com/p/0c2a8db91bda?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation + implementation 'com.android.support:percent:27.0.2' } \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/outdoor/adapter/TaskExplainAdapter2.java b/app/src/main/java/com/navinfo/outdoor/adapter/TaskExplainAdapter2.java index 610581a..dc05f3b 100644 --- a/app/src/main/java/com/navinfo/outdoor/adapter/TaskExplainAdapter2.java +++ b/app/src/main/java/com/navinfo/outdoor/adapter/TaskExplainAdapter2.java @@ -24,8 +24,11 @@ public class TaskExplainAdapter2 extends RecyclerView.Adapter explainList2) { - this.explainList2.addAll(explainList2); - notifyDataSetChanged(); + if (explainList2!=null){ + this.explainList2.addAll(explainList2); + notifyDataSetChanged(); + } + } @NonNull diff --git a/app/src/main/java/com/navinfo/outdoor/api/Constant.java b/app/src/main/java/com/navinfo/outdoor/api/Constant.java index 2cb8f14..3bc6bf7 100644 --- a/app/src/main/java/com/navinfo/outdoor/api/Constant.java +++ b/app/src/main/java/com/navinfo/outdoor/api/Constant.java @@ -1,5 +1,7 @@ package com.navinfo.outdoor.api; +import android.widget.TextView; + import com.navinfo.outdoor.R; import com.navinfo.outdoor.bean.JobSearchBean; import com.navinfo.outdoor.util.SdkFolderCreate; @@ -22,17 +24,17 @@ public class Constant { * 位置权限 */ public static final String SET_LOCATION_PERMISSION = "请在“设置”中给予“TengXunMap”位置权限,否则当前功能将不可使用"; - public static final String SET_LOCATION= "请在“设置”中给予权限否则当前功能将不可使用"; + public static final String SET_LOCATION = "请在“设置”中给予权限否则当前功能将不可使用"; public static final String GET_ERR_MESSAGE1 = "设备缺少使用腾讯定位服务需要的基本条件"; public static final String GET_ERR_MESSAGE2 = "manifest 中配置的 key 不正确"; public static final String GET_ERR_MESSAGE3 = "自动加载libtencentloc.so失败"; - public static final String BASE_FOLDER = SdkFolderCreate.getSDPath()+"/navinfoOutDoor"; + public static final String BASE_FOLDER = SdkFolderCreate.getSDPath() + "/navinfoOutDoor"; // 保存图片的目录 - public static final String PICTURE_FOLDER = BASE_FOLDER+"/picture"; - public static final String VIDEOS_ = BASE_FOLDER+"/videos"; - public static final String POI_DAO = BASE_FOLDER+"/BaseDao/"; + public static final String PICTURE_FOLDER = BASE_FOLDER + "/picture"; + public static final String VIDEOS_ = BASE_FOLDER + "/videos"; + public static final String POI_DAO = BASE_FOLDER + "/BaseDao/"; // 申请权限的RequestCode public static final int PERMISSION_REQUEST_CODE = 0x100; @@ -43,7 +45,6 @@ public class Constant { public static final String DATA_FILE = "dataFile"; - //message word 值 public static final int TREASURE_FRAGMENT = 100;//抽屉界面的展示和隐藏 public static final int TREASURE_WORD = 39;//poi 对地图页面marker 的一个展示 编辑 @@ -76,18 +77,19 @@ public class Constant { public static final int GATHER_GET_MAP = 30;//地图点击marker 后弹窗点击开始采集 public static final int HOME_MINE = 32;//点击我的实时监听刷新 public static final int HOME_TREASURE = 33;//点击寻宝实时监听刷新 - public static final int JOB_WORD_MONITOR=34;//筛选条件的刷新 + public static final int JOB_WORD_MONITOR = 34;//筛选条件的刷新 public static final int EVENT_WHAT_LOCATION_CHANGE = 35; // 定位位置更新的Event的What值 - public static final int CHARGING_PILE_BODY=36;//充电装的body + public static final int CHARGING_PILE_BODY = 36;//充电装的body public static final int CHARGING_PILE_PHONE = 37;//充电桩的照片 public static final int EVENT_WHAT_CURRENT_MARKER = 41; // 显示当前正在编辑的POI类型数据的Event的What值 + public static String USER_ATTESTATION_NAME; //实名认证姓名 银行卡 public static int NUMBER = 200; //任务个数 - public static int LIMIT_TTPE = -1; //权限类型,普通任务-0,专属任务-1 - public static int TASK_TYPE = -1; // 任务类型 - public static int TASK_STASTUS = -1; // 任务状态 - public static String CODE =""; //区号 + public static int LIMIT_TTPE = -1; //权限类型,普通任务-0,专属任务-1 + public static int TASK_TYPE = -1; // 任务类型 + public static int TASK_STASTUS = -1; // 任务状态 + public static String CODE = ""; //区号 /** * 用户当前位置 */ @@ -105,4 +107,6 @@ public class Constant { public static MapView treasureMap; public static final String INTENT_VIDEO_PATH = "INTENT_VIDEO_PATH"; // 拍照界面指定的视频文件保存位置 + + public static boolean IS_FILTER_LIST_ITEM =true;//poi页面的查重 } diff --git a/app/src/main/java/com/navinfo/outdoor/base/BaseFragment.java b/app/src/main/java/com/navinfo/outdoor/base/BaseFragment.java index 8ac2bcc..f311057 100644 --- a/app/src/main/java/com/navinfo/outdoor/base/BaseFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/base/BaseFragment.java @@ -9,6 +9,7 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; +import android.widget.Toast; import androidx.annotation.IdRes; import androidx.annotation.NonNull; diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/ChargingPileFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/ChargingPileFragment.java index e9f6da3..6737728 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/ChargingPileFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/ChargingPileFragment.java @@ -105,6 +105,7 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC private Integer chargingPileBody; private ArrayList phoneLists; + private PoiEntity poiEntity; public static ChargingPileFragment newInstance(Bundle bundle) { ChargingPileFragment fragment = new ChargingPileFragment(); @@ -133,7 +134,7 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC obtain.what = Constant.MAIN_HEADER; obtain.obj = header; EventBus.getDefault().post(obtain); - header.findViewById(R.id.iv_final).setOnClickListener(new View.OnClickListener() { + header.findViewById(R.id.iv_charging_pile_final).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle arguments = getArguments(); @@ -398,7 +399,7 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC private void initShowPileSharePre() { station = getArguments().getString("station"); if (station!=null){ - PoiEntity poiEntity = new Gson().fromJson(station, PoiEntity.class); + poiEntity = new Gson().fromJson(station, PoiEntity.class); pid = poiEntity.getId(); taskId = poiEntity.getTaskId(); String x = poiEntity.getX(); @@ -569,13 +570,17 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC if (all) { //保存数据库: ChargingPileEntity chargingPileEntity = new ChargingPileEntity(); - ArrayList photoBean; photoBean = new ArrayList<>(); + ArrayList photoBean; + photoBean = new ArrayList<>(); if (latLng == null || latLng.equals("")) { Toast.makeText(getActivity(), "请确定点位", Toast.LENGTH_SHORT).show(); return; } else { String encode = Geohash.getInstance().encode(latLng.latitude,latLng.longitude); chargingPileEntity.setP(encode); + poiEntity.setX(String.valueOf(latLng.longitude)); + poiEntity.setY(String.valueOf(latLng.latitude)); + } String name = tvNameContent.getText().toString().trim();//名称 if (name == null || name.equals("")) { @@ -600,7 +605,7 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC } String tagEquipment = (String) ivEquipment.getTag(); if (tagEquipment == null ) { - Toast.makeText(getActivity(), "请拍照 设备编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 设备标牌", Toast.LENGTH_SHORT).show(); return; } else { photoBean.add(tagEquipment); @@ -608,7 +613,7 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC String tagFacility = (String) ivFacility.getTag(); if (sign_exist != 0) { if (tagFacility == null) { - Toast.makeText(getActivity(), "请拍照 设备编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 设备标牌", Toast.LENGTH_SHORT).show(); return; } else { photoBean.add(tagFacility); @@ -632,7 +637,7 @@ public class ChargingPileFragment extends BaseDrawerFragment implements View.OnC String tagDevice = (String) ivDevice.getTag(); if (sign_exist == 1) { if (tagDevice == null) { - Toast.makeText(getActivity(), "请拍照 设备编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 设备标牌", Toast.LENGTH_SHORT).show(); return; } else { photoBean.add(tagDevice); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/ChargingStationFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/ChargingStationFragment.java index 9fdf3f6..bfd1f7d 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/ChargingStationFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/ChargingStationFragment.java @@ -135,7 +135,7 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. obtain.what = Constant.MAIN_HEADER; obtain.obj = header; EventBus.getDefault().post(obtain); - header.findViewById(R.id.iv_final).setOnClickListener(new View.OnClickListener() { + header.findViewById(R.id.iv_charging_station_final).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle arguments = getArguments(); @@ -149,6 +149,7 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. obtain.what = Constant.TREASURE_FRAGMENT; obtain.obj = isSliding; EventBus.getDefault().post(obtain); + Message mainButtonVisiableMsg = Message.obtain(); mainButtonVisiableMsg.what = Constant.MAIN_BUTTON_VISIABLE; mainButtonVisiableMsg.obj = View.VISIBLE; @@ -176,7 +177,7 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. obtain.what = Constant.MAIN_HEADER; obtain.obj = header; EventBus.getDefault().post(obtain); - header.findViewById(R.id.iv_final).setOnClickListener(new View.OnClickListener() { + header.findViewById(R.id.iv_charging_station_final).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle arguments = getArguments(); @@ -370,14 +371,32 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. String[] phones = telPhone.split("\\|"); for (int i = 0; i < phones.length; i++) { if (i == 0) { - if (!StringUtils.isEmpty(phones[i])) { - String[] split = phones[i].split("-"); - if (split[0] == phones[i]) { - poiBeans.add(new PhoneBean("电话*", phones[i], "", R.drawable.icon_add_bg)); + if (!StringUtils.isEmpty(phones[i])) if (!StringUtils.isEmpty(phones[i])) { + if (phones[i].contains("-")) { // 包含区号数据的电话 + String[] split = phones[i].split("-"); + if (split!=null&&split.length>1) { + poiBeans.add(new PhoneBean("电话", split[1] + "", split[0] + "", R.drawable.icon_add_bg)); + } else { + poiBeans.add(new PhoneBean("电话", "", "", R.drawable.icon_add_bg)); + } } else { - poiBeans.add(new PhoneBean("电话*", split[1], split[0], R.drawable.icon_add_bg)); + if (!StringUtils.isEmpty(phones[i])) { + if (phones[i].contains("-")) { // 包含区号数据的电话 + String[] split = phones[i].split("-"); + if (split!=null&&split.length>1) { + poiBeans.add(new PhoneBean("", split[1] + "", split[0] + "", R.drawable.icon_del_bg)); + } else { + poiBeans.add(new PhoneBean("", "", "", R.drawable.icon_del_bg)); + } + } else { + if (phones[i]!=null) { + poiBeans.add(new PhoneBean("", phones[i] + "", "", R.drawable.icon_del_bg)); + } else { + poiBeans.add(new PhoneBean("", "", "", R.drawable.icon_del_bg)); + } + } + } } - } } else { if (!StringUtils.isEmpty(phones[i])) { @@ -453,6 +472,9 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. if (showPoiEntity.getId() != 0) { initPile(); } + if (showPoiEntity.getTaskStatus()==3){ + disables(); + } } private void initPile() { @@ -740,28 +762,28 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. } String tagName = (String) ivName.getTag(); if (tagName == null) { - Toast.makeText(getActivity(), "请拍照 充电桩编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 名称照片", Toast.LENGTH_SHORT).show(); return; } else { infoPhoto.add(new Info(tagName)); } String tagInternal = (String) ivInternal.getTag(); if (tagInternal == null) { - Toast.makeText(getActivity(), "请拍照 设备编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 服务说明", Toast.LENGTH_SHORT).show(); return; } else { infoPhoto.add(new Info(tagInternal)); } String tagElse = (String) ivElse.getTag(); if (tagElse == null) { - Toast.makeText(getActivity(), "请拍照 设备编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 充电站指引牌", Toast.LENGTH_SHORT).show(); return; } else { infoPhoto.add(new Info(tagElse)); } String tagScutcheon = (String) ivScutcheon.getTag(); if (tagScutcheon == null) { - Toast.makeText(getActivity(), "请拍照 设备编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 停车收费标牌", Toast.LENGTH_SHORT).show(); return; } else { infoPhoto.add(new Info(tagScutcheon)); @@ -890,6 +912,7 @@ public class ChargingStationFragment extends BaseDrawerFragment implements View. chargingPileUploadNetWork(chargingPileBody, fileList); } else { Toast.makeText(getActivity(), "保存成功", Toast.LENGTH_SHORT).show(); + onBackPressed(); } Log.d("TAG", "onSuccess: " + chargingStationBean.getBody()); } diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/FilterFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/FilterFragment.java index e128802..59612c5 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/FilterFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/FilterFragment.java @@ -36,7 +36,9 @@ import org.greenrobot.eventbus.Subscribe; import java.io.Serializable; import java.util.ArrayList; import java.util.List; - +/** + * 筛选的Fragment + * */ public class FilterFragment extends BaseDrawerFragment implements View.OnClickListener { private Button btnFilter; private XRecyclerView recyclerFilter; @@ -58,13 +60,13 @@ public class FilterFragment extends BaseDrawerFragment implements View.OnClickLi @Override public void onHiddenChanged(boolean hidden) { super.onHiddenChanged(hidden); - if (!hidden) { - View header = LayoutInflater.from(getActivity()).inflate(R.layout.filter_header, null); + if (hidden) { + View header1 = LayoutInflater.from(getActivity()).inflate(R.layout.filter_header, null); Message obtain = Message.obtain(); obtain.what = Constant.MAIN_HEADER; - obtain.obj = header; + obtain.obj = header1; EventBus.getDefault().post(obtain); - header.findViewById(R.id.iv_final).setOnClickListener(new View.OnClickListener() { + header1.findViewById(R.id.iv_filter_final).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle arguments = getArguments(); @@ -86,6 +88,7 @@ public class FilterFragment extends BaseDrawerFragment implements View.OnClickLi } onBackPressed(); } + }); } } @@ -107,7 +110,7 @@ public class FilterFragment extends BaseDrawerFragment implements View.OnClickLi obtain.what = Constant.MAIN_HEADER; obtain.obj = header; EventBus.getDefault().post(obtain); - header.findViewById(R.id.iv_final).setOnClickListener(new View.OnClickListener() { + header.findViewById(R.id.iv_filter_final).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle arguments = getArguments(); @@ -305,6 +308,7 @@ public class FilterFragment extends BaseDrawerFragment implements View.OnClickLi obtain.what = Constant.FILTER_LIST_ITEM; obtain.obj = poiEntity; EventBus.getDefault().post(obtain); + } } }); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/GatherGetFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/GatherGetFragment.java index 1d6ea11..3fd3764 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/GatherGetFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/GatherGetFragment.java @@ -45,6 +45,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe private PoiDao poiDao; private ChargingPileDao chargingPileDao; + public static GatherGetFragment newInstance(Bundle bundle) { GatherGetFragment fragment = new GatherGetFragment(); fragment.setArguments(bundle); @@ -129,16 +130,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe initViewByTaskStatus(taskStatus); } } - /** - * btnGetTask.setVisibility(View.GONE);领取任务 - * // btnCancelGet.setVisibility(View.VISIBLE);取消领取 - * //btnFinishGather.setVisibility(View.VISIBLE);结束采集 - * //btnGather.setVisibility(View.GONE);立即采集 - * btnGetTask.setVisibility(View.GONE); - * btnCancelGet.setVisibility(View.VISIBLE); - * btnFinishGather.setVisibility(View.GONE); - * btnGather.setVisibility(View.VISIBLE); - * */ + private void initViewByTaskStatus(int taskStatus) { switch (taskStatus) { @@ -264,12 +256,12 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe getActivity().runOnUiThread(new Runnable() { @Override public void run() { -// poiEntity.setTaskStatus(0); -// initViewByTaskStatus(0); - btnGetTask.setVisibility(View.VISIBLE); - btnCancelGet.setVisibility(View.GONE); - btnGather.setVisibility(View.VISIBLE); - btnFinishGather.setVisibility(View.GONE); + poiEntity.setTaskStatus(0); + initViewByTaskStatus(0); +// btnGetTask.setVisibility(View.VISIBLE); +// btnCancelGet.setVisibility(View.GONE); +// btnGather.setVisibility(View.VISIBLE); +// btnFinishGather.setVisibility(View.GONE); } }); } @@ -295,73 +287,84 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe @Override public void onSuccess(ReceivedBean response, int id) { dismissLoadingDialog(); - ReceivedBean.BodyBean listBean = response.getBody(); - PoiEntity chargingListEntity = new PoiEntity(); - chargingListEntity.setTaskId(taskId); - chargingListEntity.setStation_type(listBean.getSptype()); - chargingListEntity.setName(listBean.getName()); - chargingListEntity.setPrecision(listBean.getPrice() + ""); - chargingListEntity.setAddress(listBean.getAddress()); - chargingListEntity.setTelPhone(listBean.getTelephone() + ""); - chargingListEntity.setType(Integer.valueOf(listBean.getType())); - chargingListEntity.setTaskStatus(1); - chargingListEntity.setIsLocalData(1); - String geo = listBean.getGeo(); - chargingListEntity.setGeoWkt(geo); - Geometry geometry = GeometryTools.createGeometry(geo); - if (geometry.getGeometryType().equals("Point")) {//点 - LatLng latLng = GeometryTools.createLatLng(geo); - chargingListEntity.setX(latLng.longitude + ""); - chargingListEntity.setY(latLng.latitude + ""); - } else if (geometry.getGeometryType().equals("LineString")) {//线 - List latLineString = GeometryTools.getLatLngs(geo); - chargingListEntity.setX(latLineString.get(0).longitude + ""); - chargingListEntity.setY(latLineString.get(0).latitude + ""); - } else if (geometry.getGeometryType().equals("Polygon")) {//面 - List latPolygon = GeometryTools.getLatLngs(geo); - chargingListEntity.setX(latPolygon.get(0).longitude + ""); - chargingListEntity.setY(latPolygon.get(0).latitude + ""); - } - //充电桩 - List csTaskList = response.getBody().getCsTaskList(); - for (int i = 0; i < csTaskList.size(); i++) { - ChargingPileEntity chargingPileEntity = new ChargingPileEntity(); - chargingPileEntity.setFid(taskId); - chargingPileEntity.setName(csTaskList.get(i).getName()); - chargingPileEntity.setMemo(csTaskList.get(i).getAddress()); - chargingPileEntity.setP(csTaskList.get(i).getGeo()); + if (response.getCode() == 200){ + ReceivedBean.BodyBean listBean = response.getBody(); + PoiEntity chargingListEntity = new PoiEntity(); + if (listBean!=null){ + chargingListEntity.setTaskId(taskId); + chargingListEntity.setStation_type(listBean.getSptype()); + chargingListEntity.setName(listBean.getName()); + chargingListEntity.setPrecision(listBean.getPrice() + ""); + chargingListEntity.setAddress(listBean.getAddress()); + chargingListEntity.setTelPhone(listBean.getTelephone() + ""); + chargingListEntity.setType(Integer.valueOf(listBean.getType())); + chargingListEntity.setTaskStatus(1); + chargingListEntity.setIsLocalData(1); + String geo = listBean.getGeo(); + chargingListEntity.setGeoWkt(geo); + Geometry geometry = GeometryTools.createGeometry(geo); + if (geometry.getGeometryType().equals("Point")) {//点 + LatLng latLng = GeometryTools.createLatLng(geo); + chargingListEntity.setX(latLng.longitude + ""); + chargingListEntity.setY(latLng.latitude + ""); + } else if (geometry.getGeometryType().equals("LineString")) {//线 + List latLineString = GeometryTools.getLatLngs(geo); + chargingListEntity.setX(latLineString.get(0).longitude + ""); + chargingListEntity.setY(latLineString.get(0).latitude + ""); + } else if (geometry.getGeometryType().equals("Polygon")) {//面 + List latPolygon = GeometryTools.getLatLngs(geo); + chargingListEntity.setX(latPolygon.get(0).longitude + ""); + chargingListEntity.setY(latPolygon.get(0).latitude + ""); + } + } + + //充电桩 + List csTaskList = response.getBody().getCsTaskList(); + if (csTaskList!=null){ + + } + for (int i = 0; i < csTaskList.size(); i++) { + ChargingPileEntity chargingPileEntity = new ChargingPileEntity(); + chargingPileEntity.setFid(taskId); + chargingPileEntity.setName(csTaskList.get(i).getName()); + chargingPileEntity.setMemo(csTaskList.get(i).getAddress()); + chargingPileEntity.setP(csTaskList.get(i).getGeo()); + new Thread(new Runnable() { + @Override + public void run() { + chargingPileDao.insertChargingPileEntity(chargingPileEntity); + } + }).start(); + } + //获取当前位置的marker + senMessageMarker(chargingListEntity.getType(),chargingListEntity.getY(),chargingListEntity.getX()); new Thread(new Runnable() { @Override public void run() { - chargingPileDao.insertChargingPileEntity(chargingPileEntity); - } - }).start(); - } - //获取当前位置的marker - senMessageMarker(chargingListEntity.getType(),chargingListEntity.getY(),chargingListEntity.getX()); - new Thread(new Runnable() { - @Override - public void run() { - InsertAndUpdateUtils.getInstance().insertOrUpdate(getContext(), chargingListEntity); - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { + InsertAndUpdateUtils.getInstance().insertOrUpdate(getContext(), chargingListEntity); + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { // poiEntity.setTaskStatus(1); // initViewByTaskStatus(1); - btnGetTask.setVisibility(View.GONE); - btnCancelGet.setVisibility(View.VISIBLE); - btnFinishGather.setVisibility(View.VISIBLE); - btnGather.setVisibility(View.GONE); - if (isSaver) { - Message obtain = Message.obtain(); - obtain.what = Constant.GATHER_GET_MAP; - obtain.obj = chargingListEntity; - EventBus.getDefault().post(obtain); + btnGetTask.setVisibility(View.GONE); + btnCancelGet.setVisibility(View.VISIBLE); + btnFinishGather.setVisibility(View.VISIBLE); + btnGather.setVisibility(View.GONE); + if (isSaver) { + Message obtain = Message.obtain(); + obtain.what = Constant.GATHER_GET_MAP; + obtain.obj = chargingListEntity; + EventBus.getDefault().post(obtain); + } } - } - }); - } - }).start(); + }); + } + }).start(); + }else { + Toast.makeText(getActivity(), "本任务已锁定", Toast.LENGTH_SHORT).show(); + } + } @Override @@ -395,25 +398,28 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe if (response.getCode() == 200) {// 0.未领取 1.已领取,2.未保存(保存到本地但未提交成功),3.已保存(保存到本地提交成功),4已上传(结束采集), PolygonTaskBean.BodyBean listBean = response.getBody(); PoiEntity polygonEntity = new PoiEntity(); - polygonEntity.setTaskId(listBean.getId()); - polygonEntity.setName(listBean.getName()); - polygonEntity.setType(Integer.valueOf(listBean.getType())); - String geo = listBean.getGeo(); - polygonEntity.setGeoWkt(geo); - Geometry geometry = GeometryTools.createGeometry(geo); - if (geometry.getGeometryType().equals("Point")) {//点 - LatLng latLng = GeometryTools.createLatLng(geo); - polygonEntity.setX(latLng.longitude + ""); - polygonEntity.setY(latLng.latitude + ""); - } else if (geometry.getGeometryType().equals("LineString")) {//线 - List latLineString = GeometryTools.getLatLngs(geo); - polygonEntity.setX(latLineString.get(0).longitude + ""); - polygonEntity.setY(latLineString.get(0).latitude + ""); - } else if (geometry.getGeometryType().equals("Polygon")) {//面 - List latPolygon = GeometryTools.getLatLngs(geo); - polygonEntity.setX(latPolygon.get(0).longitude + ""); - polygonEntity.setY(latPolygon.get(0).latitude + ""); + if (listBean!=null){ + polygonEntity.setTaskId(listBean.getId()); + polygonEntity.setName(listBean.getName()); + polygonEntity.setType(Integer.valueOf(listBean.getType())); + String geo = listBean.getGeo(); + polygonEntity.setGeoWkt(geo); + Geometry geometry = GeometryTools.createGeometry(geo); + if (geometry.getGeometryType().equals("Point")) {//点 + LatLng latLng = GeometryTools.createLatLng(geo); + polygonEntity.setX(latLng.longitude + ""); + polygonEntity.setY(latLng.latitude + ""); + } else if (geometry.getGeometryType().equals("LineString")) {//线 + List latLineString = GeometryTools.getLatLngs(geo); + polygonEntity.setX(latLineString.get(0).longitude + ""); + polygonEntity.setY(latLineString.get(0).latitude + ""); + } else if (geometry.getGeometryType().equals("Polygon")) {//面 + List latPolygon = GeometryTools.getLatLngs(geo); + polygonEntity.setX(latPolygon.get(0).longitude + ""); + polygonEntity.setY(latPolygon.get(0).latitude + ""); + } } + polygonEntity.setTaskStatus(1); new Thread(new Runnable() { @Override @@ -569,6 +575,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe public void run() { poiEntity.setTaskStatus(0); initViewByTaskStatus(0); + onBackPressed(); // btnGather.setVisibility(View.VISIBLE); // btnFinishGather.setVisibility(View.GONE); @@ -648,6 +655,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe // btnCancelGet.setVisibility(View.VISIBLE); // btnFinishGather.setVisibility(View.GONE); // btnGather.setVisibility(View.VISIBLE); + if (isSaver) { Message obtain = Message.obtain(); obtain.what = Constant.GATHER_GET_MAP; @@ -697,30 +705,33 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe if (response.getCode()==200){ TaskByNetBean.BodyBean listBean = response.getBody(); PoiEntity poiListEntity = new PoiEntity(); - poiListEntity.setTaskId(taskId); - poiListEntity.setName(listBean.getName()); - poiListEntity.setAddress(listBean.getAddress()); - poiListEntity.setType(Integer.valueOf(listBean.getType())); - poiListEntity.setPrecision(String.valueOf(listBean.getPrice())); - poiListEntity.setIsExclusive(listBean.getIsExclusive()); - poiListEntity.setTaskStatus(1); - poiListEntity.setIsLocalData(1); - String geo = listBean.getGeo(); - poiListEntity.setGeoWkt(geo); - Geometry geometry = GeometryTools.createGeometry(geo); - if (geometry.getGeometryType().equals("Point")) {//点 - LatLng latLng = GeometryTools.createLatLng(geo); - poiListEntity.setX(latLng.longitude + ""); - poiListEntity.setY(latLng.latitude + ""); - } else if (geometry.getGeometryType().equals("LineString")) {//线 - List latLineString = GeometryTools.getLatLngs(geo); - poiListEntity.setX(latLineString.get(0).longitude + ""); - poiListEntity.setY(latLineString.get(0).latitude + ""); - } else if (geometry.getGeometryType().equals("Polygon")) {//面 - List latPolygon = GeometryTools.getLatLngs(geo); - poiListEntity.setX(latPolygon.get(0).longitude + ""); - poiListEntity.setY(latPolygon.get(0).latitude + ""); + if (listBean!=null){ + poiListEntity.setTaskId(taskId); + poiListEntity.setName(listBean.getName()); + poiListEntity.setAddress(listBean.getAddress()); + poiListEntity.setType(Integer.valueOf(listBean.getType())); + poiListEntity.setPrecision(String.valueOf(listBean.getPrice())); + poiListEntity.setIsExclusive(listBean.getIsExclusive()); + poiListEntity.setTaskStatus(1); + poiListEntity.setIsLocalData(1); + String geo = listBean.getGeo(); + poiListEntity.setGeoWkt(geo); + Geometry geometry = GeometryTools.createGeometry(geo); + if (geometry.getGeometryType().equals("Point")) {//点 + LatLng latLng = GeometryTools.createLatLng(geo); + poiListEntity.setX(latLng.longitude + ""); + poiListEntity.setY(latLng.latitude + ""); + } else if (geometry.getGeometryType().equals("LineString")) {//线 + List latLineString = GeometryTools.getLatLngs(geo); + poiListEntity.setX(latLineString.get(0).longitude + ""); + poiListEntity.setY(latLineString.get(0).latitude + ""); + } else if (geometry.getGeometryType().equals("Polygon")) {//面 + List latPolygon = GeometryTools.getLatLngs(geo); + poiListEntity.setX(latPolygon.get(0).longitude + ""); + poiListEntity.setY(latPolygon.get(0).latitude + ""); + } } + //获取当前位置的marker senMessageMarker(poiListEntity.getType(),poiListEntity.getY(),poiListEntity.getX()); new Thread(new Runnable() { @@ -730,12 +741,12 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe getActivity().runOnUiThread(new Runnable() { @Override public void run() { -// poiEntity.setTaskStatus(1); -// initViewByTaskStatus(1); - btnGetTask.setVisibility(View.GONE); - btnCancelGet.setVisibility(View.VISIBLE); - btnFinishGather.setVisibility(View.VISIBLE); - btnGather.setVisibility(View.GONE); + poiEntity.setTaskStatus(1); + initViewByTaskStatus(1); +// btnGetTask.setVisibility(View.GONE); +// btnCancelGet.setVisibility(View.VISIBLE); +// btnFinishGather.setVisibility(View.VISIBLE); +// btnGather.setVisibility(View.GONE); if (isSaver) { Message obtain = Message.obtain(); obtain.what = Constant.GATHER_GET_MAP; diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java index dcbb0fe..83be4fe 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java @@ -91,6 +91,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis private String takePhotoPath; private String takePhotoPath2; private ArrayList otherUploadList; + private CheckBox checkPot; public static OtherFragment newInstance(Bundle bundle) { OtherFragment fragment = new OtherFragment(); @@ -175,7 +176,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis } }); - CheckBox checkPot = findViewById(R.id.check_pot); + checkPot = findViewById(R.id.check_pot); checkPot.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { @@ -210,9 +211,21 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis btnOtherUploading.setOnClickListener(this::onClick); //数据展示 initShowPoi(); + //禁用所有操作控件 + //disables(); } + private void disables() { + spinnerOther.setEnabled(false); + checkPot.setEnabled(false); + editTaskName.setEnabled(false); + rlPicture.setEnabled(false); + rlPictures.setEnabled(false); + editOtherDescribe.setEnabled(false); + btnOtherLocal.setEnabled(false); + } + @Subscribe public void onEvent(Message data) { if (data.what == Constant.OTHER_WORD) { @@ -245,7 +258,10 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis editOtherDescribe.setText(describe); } int station_type = showPoiEntity.getStation_type(); - spinnerOther.setSelection(station_type, true); + + spinnerOther.setSelection(station_type, true); + + if (showPoiEntity.getPhotoInfo() != null) { for (int i = 0; i < showPoiEntity.getPhotoInfo().size(); i++) { String photo = showPoiEntity.getPhotoInfo().get(i).getPhoto(); @@ -260,6 +276,9 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis } } } + if (showPoiEntity.getTaskStatus()==3){ + disables(); + } } @Override @@ -471,6 +490,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis otherUploadByNet(body,otherUploadList); }else { Toast.makeText(getActivity(), "保存成功", Toast.LENGTH_SHORT).show(); + onBackPressed(); } } }); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/PoiFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/PoiFragment.java index ba15fe2..f4feea6 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/PoiFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/PoiFragment.java @@ -81,7 +81,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe private EditText editDescribe; private RelativeLayout rlPanorama, rlName, rlInternalPhotos, rlCard, rlElse; private ImageView ivPanorama, ivName, ivInternal, ivCard, ivElse; - private TextView tvExamine; + public TextView tvExamine; private EditText editNameContent, editSiteContent; private ArrayList poiBeans; private Button btnSaveLocal; @@ -97,6 +97,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe private RelativeLayout linearExist; private Spinner spinnerExist; + //获取的拍照图片 private String takePhotoPath2; private String takePhotoPath5; @@ -158,6 +159,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe onBackPressed(); } }); + } @Override @@ -216,6 +218,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe rlElse.setOnClickListener(this::onClick); linearExist = findViewById(R.id.linear_exist); spinnerExist = findViewById(R.id.spinner_exist); + ArrayAdapter adapterExist = new ArrayAdapter<>(getContext(), android.R.layout.simple_spinner_item, spinner); adapterExist.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //设置下拉列表框的下拉选项样式 spinnerExist.setAdapter(adapterExist); @@ -250,6 +253,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe //禁用所有可操作控件 //disables(); + } private void initShowPoi() { @@ -282,31 +286,45 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe for (int i = 0; i < phones.length; i++) { if (i == 0) { if (!StringUtils.isEmpty(phones[i])) { - String[] split = phones[i].split("-"); - if (split[0] == phones[i]) { - poiBeans.add(new PhoneBean("电话*", phones[i] + "", "", R.drawable.icon_add_bg)); + if (phones[i].contains("-")) { // 包含区号数据的电话 + String[] split = phones[i].split("-"); + if (split!=null&&split.length>1) { + poiBeans.add(new PhoneBean("电话", split[1] + "", split[0] + "", R.drawable.icon_add_bg)); + } else { + poiBeans.add(new PhoneBean("电话", "", "", R.drawable.icon_add_bg)); + } } else { - poiBeans.add(new PhoneBean("电话*", split[1] + "", split[0] + "", R.drawable.icon_add_bg)); + if (phones[i]!=null) { + poiBeans.add(new PhoneBean("电话", phones[i] + "", "", R.drawable.icon_add_bg)); + } else { + poiBeans.add(new PhoneBean("电话", "", "", R.drawable.icon_add_bg)); + } } - } } else { if (!StringUtils.isEmpty(phones[i])) { - String[] split = phones[i].split("-"); - if (split[0] == phones[i]) { - poiBeans.add(new PhoneBean("", phones[i] + "", "", R.drawable.icon_del_bg)); + if (phones[i].contains("-")) { // 包含区号数据的电话 + String[] split = phones[i].split("-"); + if (split!=null&&split.length>1) { + poiBeans.add(new PhoneBean("", split[1] + "", split[0] + "", R.drawable.icon_del_bg)); + } else { + poiBeans.add(new PhoneBean("", "", "", R.drawable.icon_del_bg)); + } } else { - poiBeans.add(new PhoneBean("", split[1] + "", split[0] + "", R.drawable.icon_del_bg)); + if (phones[i]!=null) { + poiBeans.add(new PhoneBean("", phones[i] + "", "", R.drawable.icon_del_bg)); + } else { + poiBeans.add(new PhoneBean("", "", "", R.drawable.icon_del_bg)); + } } } } - } } else { if (Constant.CODE == null || Constant.CODE.equals("")) { - poiBeans.add(new PhoneBean("电话*", "", "", R.drawable.icon_add_bg)); + poiBeans.add(new PhoneBean("电话", "", "", R.drawable.icon_add_bg)); } else { - poiBeans.add(new PhoneBean("电话*", "", Constant.CODE, R.drawable.icon_add_bg)); + poiBeans.add(new PhoneBean("电话", "", Constant.CODE, R.drawable.icon_add_bg)); } } @@ -339,6 +357,10 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe } } } + if (showPoiEntity.getTaskStatus() == 3){ + disables(); + } + } /** @@ -377,10 +399,15 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe //禁用所有可操作性控件 - private void disables() { + public void disables() { checkBoxLife.setEnabled(false); editNameContent.setEnabled(false); tvExamine.setEnabled(false); + rlPanorama.setEnabled(false);//禁用拍照全景 + rlName.setEnabled(false); + rlCard.setEnabled(false); + rlInternalPhotos.setEnabled(false); + rlElse.setEnabled(false); editSiteContent.setEnabled(false); linearContact.setEnabled(false); ivPanorama.setEnabled(false); @@ -437,6 +464,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe if (tagCard != null) { poiPicList.add(new File(tagCard)); } + new Thread(new Runnable() { @Override public void run() { @@ -529,7 +557,7 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe } String tagName = (String) ivName.getTag(); if (tagName == null) { - Toast.makeText(getActivity(), "请拍照 充电桩编码", Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), "请拍照 名称", Toast.LENGTH_SHORT).show(); return; } else { infoPhoto.add(new Info(tagName)); @@ -569,7 +597,6 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe }); } }).start(); - // onBackPressed(); } else { Toast.makeText(getActivity(), "没有申请权限,请手动申请", Toast.LENGTH_SHORT).show(); } @@ -658,11 +685,14 @@ public class PoiFragment extends BaseDrawerFragment implements View.OnClickListe getActivity().runOnUiThread(new Runnable() { @Override public void run() { + if (isLocal) { poiUploadByNetWork(body, poiPicList);//上传 } else { Toast.makeText(getActivity(), "保存成功", Toast.LENGTH_SHORT).show(); + onBackPressed(); } + } }); } diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java index c3010ce..e0ef386 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java @@ -76,7 +76,7 @@ import java.util.List; public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClickListener { private TextView tvPictures; - private TextView etRoadName; + private EditText etRoadName; private ImageView ivPoiVideoPicture; private RadioButton rbCar; private RadioButton rbBicycle; @@ -145,7 +145,7 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick poiDao = poiDatabase.getPoiDao(); tvPictures = (TextView) findViewById(R.id.tv_pictures); tvPictures.setOnClickListener(this::onClick); - etRoadName = (TextView) findViewById(R.id.et_poi_video_name); + etRoadName = (EditText) findViewById(R.id.et_poi_video_name); ivPoiVideoPicture = (ImageView) findViewById(R.id.iv_poi_video_picture); rbCar = (RadioButton) findViewById(R.id.rb_car); rbBicycle = (RadioButton) findViewById(R.id.rb_bicycle); @@ -225,6 +225,9 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick } } } + if (showPoiEntity.getTaskStatus() == 3){ + disables(); + } } private void disables() { @@ -341,6 +344,7 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick @Override public void run() { etRoadName.setText(sb); + etRoadName.setEnabled(false); } }); } @@ -508,6 +512,7 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick poiVideoUpload(poiVideoBody,fileZip); }else { Toast.makeText(getActivity(), "保存成功", Toast.LENGTH_SHORT).show(); + onBackPressed(); } } }); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/RoadFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/RoadFragment.java index 936b6b8..0437a2f 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/RoadFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/RoadFragment.java @@ -201,17 +201,24 @@ public class RoadFragment extends BaseDrawerFragment implements View.OnClickList } } } + if (showPoiEntity.getTaskStatus() == 3){ + disables(); + } } //禁用控件 - private void disables() throws JSONException { + private void disables() { etRoadName.setEnabled(false); rgType.setEnabled(false); ivRoadPicture.setEnabled(false); tvPictures.setEnabled(false); etDesc.setEnabled(false); btnRoadSave.setEnabled(false); + rbCar.setEnabled(false); + rbBicycle.setEnabled(false); + rbManual.setEnabled(false); + rbWalking.setEnabled(false); } @Override @@ -319,6 +326,7 @@ public class RoadFragment extends BaseDrawerFragment implements View.OnClickList @Override public void run() { etRoadName.setText(sb); + etRoadName.setEnabled(false); } }); } @@ -491,6 +499,7 @@ public class RoadFragment extends BaseDrawerFragment implements View.OnClickList } }).start(); Toast.makeText(getActivity(), "保存成功", Toast.LENGTH_SHORT).show(); + onBackPressed(); } @Override diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java index 51fb55e..68911d0 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java @@ -132,11 +132,11 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen @Override protected void initView() { super.initView(); - bitmapDescriptor1 = BitmapDescriptorFactory.fromResource(R.drawable.marker_poi_bg); - bitmapDescriptor2 = BitmapDescriptorFactory.fromResource(R.drawable.poi_video_bg); - bitmapDescriptor3 = BitmapDescriptorFactory.fromResource(R.drawable.marker_road_bg); - bitmapDescriptor4 = BitmapDescriptorFactory.fromResource(R.drawable.marker_charge_bg); - bitmapDescriptor5 = BitmapDescriptorFactory.fromResource(R.drawable.marker_other_bg); + bitmapDescriptor1 = BitmapDescriptorFactory.fromResource(R.mipmap.datouzhen); + bitmapDescriptor2 = BitmapDescriptorFactory.fromResource(R.mipmap.datouzhen); + bitmapDescriptor3 = BitmapDescriptorFactory.fromResource(R.mipmap.datouzhen); + bitmapDescriptor4 = BitmapDescriptorFactory.fromResource(R.mipmap.datouzhen); + bitmapDescriptor5 = BitmapDescriptorFactory.fromResource(R.mipmap.datouzhen); EventBus.getDefault().register(this); //fragment 管理器 @@ -156,13 +156,14 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen ivMessage.setOnClickListener(this::onClick); treasureMap = (MapView) findViewById(R.id.treasure_map); tencentMap = treasureMap.getMap(); + // if (getClass().getCanonicalName().equals("PioFragment")){ // ivMessage.setVisibility(View.VISIBLE); // }else { // ivMessage.setVisibility(View.GONE); // } cbMapType = (CheckBox) findViewById(R.id.cb_map_type); - cbFootType = (CheckBox) findViewById(R.id.cb_foot_type); + // sliding_layout.setScrollableViewHelper(new NestedScrollableViewHelper()); //地图转换 cbMapType.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @@ -219,10 +220,13 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen case 1: PoiFragment poiFragment = PoiFragment.newInstance(bundle); showSlidingFragment(poiFragment); + + break; case 2: ChargingStationFragment chargingStationFragment = ChargingStationFragment.newInstance(bundle); showSlidingFragment(chargingStationFragment); + break; case 3: PoiVideoFragment poiVideoFragment = PoiVideoFragment.newInstance(bundle); @@ -242,32 +246,35 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen } } else { JobSearchBean.BodyBean.ListBean listBean = (JobSearchBean.BodyBean.ListBean) marker.getTag(); - PoiEntity poiListEntity = new PoiEntity(); - poiListEntity.setTaskId(listBean.getId()); - poiListEntity.setGeoWkt(listBean.getGeo()); - poiListEntity.setName(listBean.getName()); - poiListEntity.setAddress(listBean.getAddress()); - poiListEntity.setTelPhone(listBean.getTelephone() + ""); - poiListEntity.setPrecision(listBean.getPrice()); - poiListEntity.setDist(listBean.getDist()); - poiListEntity.setType(Integer.valueOf(listBean.getType())); - String geo = listBean.getGeo(); - poiListEntity.setGeoWkt(geo); - Geometry geometry = GeometryTools.createGeometry(geo); - if (geometry.getGeometryType().equals("Point")) {//点 - LatLng latLng = GeometryTools.createLatLng(geo); - poiListEntity.setX(latLng.longitude + ""); - poiListEntity.setY(latLng.latitude + ""); - } else if (geometry.getGeometryType().equals("LineString")) {//线 - List latLineString = GeometryTools.getLatLngs(geo); - poiListEntity.setX(latLineString.get(0).longitude + ""); - poiListEntity.setY(latLineString.get(0).latitude + ""); - } else if (geometry.getGeometryType().equals("Polygon")) {//面 - List latPolygon = GeometryTools.getLatLngs(geo); - poiListEntity.setX(latPolygon.get(0).longitude + ""); - poiListEntity.setY(latPolygon.get(0).latitude + ""); + if (listBean != null) { + PoiEntity poiListEntity = new PoiEntity(); + poiListEntity.setTaskId(listBean.getId()); + poiListEntity.setGeoWkt(listBean.getGeo()); + poiListEntity.setName(listBean.getName()); + poiListEntity.setAddress(listBean.getAddress()); + poiListEntity.setTelPhone(listBean.getTelephone() + ""); + poiListEntity.setPrecision(listBean.getPrice()); + poiListEntity.setDist(listBean.getDist()); + poiListEntity.setType(Integer.valueOf(listBean.getType())); + String geo = listBean.getGeo(); + poiListEntity.setGeoWkt(geo); + Geometry geometry = GeometryTools.createGeometry(geo); + if (geometry.getGeometryType().equals("Point")) {//点 + LatLng latLng = GeometryTools.createLatLng(geo); + poiListEntity.setX(latLng.longitude + ""); + poiListEntity.setY(latLng.latitude + ""); + } else if (geometry.getGeometryType().equals("LineString")) {//线 + List latLineString = GeometryTools.getLatLngs(geo); + poiListEntity.setX(latLineString.get(0).longitude + ""); + poiListEntity.setY(latLineString.get(0).latitude + ""); + } else if (geometry.getGeometryType().equals("Polygon")) {//面 + List latPolygon = GeometryTools.getLatLngs(geo); + poiListEntity.setX(latPolygon.get(0).longitude + ""); + poiListEntity.setY(latPolygon.get(0).latitude + ""); + } + initMarker(poiListEntity); } - initMarker(poiListEntity); + } return false; } @@ -520,6 +527,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen } switch (Integer.valueOf(poiEntity.getType())) { case 1://poi + BitmapDescriptor poiDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.marker_poi_have_bg); Marker poiMarker = tencentMap.addMarker(new MarkerOptions(latLng).icon(poiDescriptor).alpha(0.9f) .flat(true) @@ -528,6 +536,8 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen poiMarker.setTitle(poiEntity.getName() + ""); poiMarker.setTag(poiEntity); removablesLocality.add(poiMarker); + + break; case 2://充电站 BitmapDescriptor chargeDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.marker_charge_have_bg); @@ -716,14 +726,14 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen FilterFragment filterFragment = (FilterFragment) supportFragmentManager.findFragmentByTag(FilterFragment.class.getName()); if (filterFragment != null) { fragmentTransaction.remove(filterFragment); - fragmentTransaction.commit(); + // fragmentTransaction.commit(); } } else if (data.what == Constant.GATHER_GET) { //筛选item 点击开始采集 // 如果当前fragment是筛选,则移除该fragment FilterFragment filterFragment = (FilterFragment) supportFragmentManager.findFragmentByTag(FilterFragment.class.getName()); if (filterFragment != null) { fragmentTransaction.remove(filterFragment); - fragmentTransaction.commit(); + //fragmentTransaction.commit(); } PoiEntity poiEntity = (PoiEntity) data.obj; @@ -754,6 +764,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen } frameLayout.setVisibility(View.GONE); fragmentTransaction.remove(gatherGetFragment); + fragmentTransaction.commit(); } else if (data.what == Constant.GATHER_GET_MAP) { //地图界面点击采集 点击开始采集 PoiEntity poiEntity = (PoiEntity) data.obj; Bundle bundle = new Bundle(); @@ -810,7 +821,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen if ((boolean) data.obj) { initCheckedMarker(Constant.OTHER_WORD); } - } else if (data.what == Constant.TREASURE_FRAGMENT) { + } else if (data.what == Constant.TREASURE_FRAGMENT) {//抽屉界面的展示和隐藏 if ((boolean) data.obj == true) { frameLayout.setVisibility(View.GONE); sliding_layout.setPanelHeight(0); @@ -819,17 +830,18 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen markerPoi.remove(); } } - } else if (data.what == Constant.MAIN_BUTTON_VISIABLE) { + } else if (data.what == Constant.MAIN_BUTTON_VISIABLE) {//控制主界面各个按钮显隐状态的what值 setMainButtonVisiable((Integer) data.obj); - } else if (data.what == Constant.MAIN_HEADER) { + } else if (data.what == Constant.MAIN_HEADER) {// 控制主界面各个header View view = (View) data.obj; initHeader(view); - } else if (data.what == Constant.MAIN_REMOVE) { + } else if (data.what == Constant.MAIN_REMOVE) {//// 控制主界面各个header移除 if ((boolean) data.obj) { dragView.removeAllViews(); } } else if (data.what == Constant.GATHER_GET_RETURN) {//item 点击页面的返回事件的处理 if ((boolean) data.obj) { + frameLayout.setVisibility(View.GONE); sliding_layout.setPanelHeight(1000); sliding_layout.setPanelState(SlidingUpPanelLayout.PanelState.COLLAPSED); @@ -837,6 +849,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen setMainButtonVisiable(View.VISIBLE); frameLayout.setVisibility(View.GONE); fragmentTransaction.remove(gatherGetFragment); + } } else if (data.what == Constant.CHARGING_STATION) {//充电站的充电桩 Bundle bundle = new Bundle(); @@ -845,7 +858,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen if (chargingPileEntity != null) { bundle.putSerializable("chargingPileEntity", chargingPileEntity); } - BitmapDescriptor pileDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.marker_pile_bg); + BitmapDescriptor pileDescriptor = BitmapDescriptorFactory.fromResource(R.mipmap.datouzhen); LatLng mapCenterPoint = getMapCenterPoint(); markerPoi = tencentMap.addMarker(new MarkerOptions(mapCenterPoint).icon(pileDescriptor)); ChargingPileFragment chargingPileFragment = ChargingPileFragment.newInstance(bundle); @@ -892,9 +905,9 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen ivLocation.setVisibility(visiable); ivRefish.setVisibility(visiable); cbMapType.setVisibility(visiable); - cbFootType.setVisibility(visiable); ivSubmit.setVisibility(visiable); ivFilter.setVisibility(visiable); + ivMessage.setVisibility(visiable); } private void initFilterMarker(List poiEntities) { @@ -919,7 +932,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen screenPosition = tencentMap.getProjection().toScreenLocation(latLng); sliding_layout.setPanelState(SlidingUpPanelLayout.PanelState.COLLAPSED); //创建Marker对象之前,设置属性 - if (markerPoi!=null){ + if (markerPoi != null) { markerPoi.setFixingPoint(screenPosition.x, screenPosition.y); } @@ -1098,7 +1111,9 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen public void run() { showPoiMarkerByType(1, mapCenterPoint); PoiFragment poiFragment = PoiFragment.newInstance(bundle); + showSlidingFragment(poiFragment); + ivMessage.setVisibility(View.GONE); } }); } @@ -1117,6 +1132,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen showPoiMarkerByType(2, mapCenterPoint); PoiVideoFragment poiVideoFragment = PoiVideoFragment.newInstance(bundle); showSlidingFragment(poiVideoFragment); + ivMessage.setVisibility(View.GONE); } }); } @@ -1197,13 +1213,13 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen private void showPoiMarkerByType(int type, LatLng latLng) { if (type == 1) { markerPoi = tencentMap.addMarker(new MarkerOptions(latLng).icon(bitmapDescriptor1)); - }else if (type == 2){ + } else if (type == 2) { markerPoi = tencentMap.addMarker(new MarkerOptions(latLng).icon(bitmapDescriptor2)); - }else if (type == 3){ + } else if (type == 3) { markerPoi = tencentMap.addMarker(new MarkerOptions(latLng).icon(bitmapDescriptor3)); - }else if (type == 4){ + } else if (type == 4) { markerPoi = tencentMap.addMarker(new MarkerOptions(latLng).icon(bitmapDescriptor4)); - }else if (type == 5){ + } else if (type == 5) { markerPoi = tencentMap.addMarker(new MarkerOptions(latLng).icon(bitmapDescriptor5)); } diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/UserAttestationFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/UserAttestationFragment.java index 6866dfa..78a6070 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/UserAttestationFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/UserAttestationFragment.java @@ -260,8 +260,8 @@ public class UserAttestationFragment extends BaseFragment implements View.OnClic takePhotoPath2 = PhotoPathUtil.getTakePhotoPath(data, "a", ""); ivAttestation2.setTag(takePhotoPath2); ivAttestation2.setImageBitmap(bitmap);//显示图像 - ivHera1.setVisibility(View.GONE); - tvCard1.setVisibility(View.GONE); + ivHera2.setVisibility(View.GONE); + tvCard2.setVisibility(View.GONE); } } if (requestCode == 300 && resultCode == RESULT_OK) { @@ -284,8 +284,8 @@ public class UserAttestationFragment extends BaseFragment implements View.OnClic takePhotoPath3 = PhotoPathUtil.getTakePhotoPath(data, "a", ""); ivAttestation3.setTag(takePhotoPath3); ivAttestation3.setImageBitmap(bitmap);//显示图像 - ivHera1.setVisibility(View.GONE); - tvCard1.setVisibility(View.GONE); + ivHera3.setVisibility(View.GONE); + tvCard3.setVisibility(View.GONE); } } } diff --git a/app/src/main/res/color/test_color_selector.xml b/app/src/main/res/color/test_color_selector.xml new file mode 100644 index 0000000..e9fd0ec --- /dev/null +++ b/app/src/main/res/color/test_color_selector.xml @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg.png b/app/src/main/res/drawable/bg.png new file mode 100644 index 0000000..88c77c7 Binary files /dev/null and b/app/src/main/res/drawable/bg.png differ diff --git a/app/src/main/res/drawable/color_backgroud.xml b/app/src/main/res/drawable/color_backgroud.xml new file mode 100644 index 0000000..1df2b71 --- /dev/null +++ b/app/src/main/res/drawable/color_backgroud.xml @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/iv_message.png b/app/src/main/res/drawable/iv_message.png index 443bae8..3588133 100644 Binary files a/app/src/main/res/drawable/iv_message.png and b/app/src/main/res/drawable/iv_message.png differ diff --git a/app/src/main/res/layout/activity_home.xml b/app/src/main/res/layout/activity_home.xml index 2a3c316..1a4880a 100644 --- a/app/src/main/res/layout/activity_home.xml +++ b/app/src/main/res/layout/activity_home.xml @@ -22,7 +22,7 @@ android:layout_marginTop="6dp" app:tabRippleColor="@android:color/transparent" app:tabIndicatorHeight="0dp" - app:tabTextColor="#F0686666" + app:tabTextColor="#F08A8888" app:tabSelectedTextColor="#000000" android:background="#ffff" app:layout_constraintBottom_toBottomOf="parent" diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 4ea8945..c64538c 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -4,7 +4,8 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@mipmap/bg" + app:layout_heightPercent="100%" + android:background="@drawable/bg" tools:context="activity.LoginActivity"> @@ -114,7 +116,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开放状态" - android:textSize="18sp" + android:textSize="16sp" android:textStyle="normal" android:textColor="#333" android:layout_margin="10dp" @@ -179,7 +181,7 @@ @@ -286,6 +288,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="02.拍照" + android:textSize="15sp" + android:textColor="@color/black" android:layout_margin="10dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/linear_type" /> @@ -737,6 +741,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="03.描述" + android:textSize="15sp" + android:textColor="@color/black" android:layout_margin="10dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/linear_photograph" /> @@ -755,9 +761,11 @@ android:id="@+id/edit_describe" android:layout_width="match_parent" android:layout_height="match_parent" - android:paddingBottom="30dp" + android:paddingBottom="40dp" android:layout_margin="2dp" android:gravity="top" + android:paddingTop="10dp" + android:paddingLeft="10dp" android:focusable="true" android:focusableInTouchMode="true" android:background="@color/white" diff --git a/app/src/main/res/layout/charging_pile_header.xml b/app/src/main/res/layout/charging_pile_header.xml index c147b97..d496ff9 100644 --- a/app/src/main/res/layout/charging_pile_header.xml +++ b/app/src/main/res/layout/charging_pile_header.xml @@ -15,7 +15,7 @@ app:layout_constraintTop_toTopOf="parent"> @@ -114,7 +116,7 @@ android:id="@+id/tv_examine" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="查看" + android:text="查重" android:layout_margin="4dp" android:textColor="@color/design_default_color_primary" android:layout_alignParentRight="true" @@ -195,7 +197,7 @@ android:id="@+id/tv_type" android:layout_alignParentLeft="true" android:layout_centerVertical="true" - android:text="类型*" + android:text="类型" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:textColor="#333" @@ -273,7 +275,9 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="02.拍照" + android:textSize="15sp" android:layout_margin="10dp" + android:textColor="@color/black" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/linear_exist" /> @@ -486,6 +490,8 @@ android:layout_height="wrap_content" android:layout_margin="10dp" android:text="03.添加" + android:textSize="15sp" + android:textColor="@color/black" app:layout_constraintBottom_toTopOf="@+id/recycler_station" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/linear_photograph" /> @@ -503,14 +509,17 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="10dp" - android:background="@drawable/underline" - android:orientation="vertical" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toBottomOf="@+id/linear_photograph"> + android:padding="3dp" + android:background="@drawable/shape_red_radius_bg" + android:orientation="horizontal" + app:layout_constraintTop_toTopOf="@+id/tv_03" + app:layout_constraintBottom_toBottomOf="@+id/tv_03" + app:layout_constraintRight_toRightOf="parent" + > @@ -518,6 +527,9 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" + android:textSize="12sp" + android:textColor="@color/white" + android:layout_marginRight="10dp" android:text="添加桩" /> @@ -550,6 +564,8 @@ android:focusableInTouchMode="true" android:background="@color/white" android:hint="任务描述" + android:paddingTop="10dp" + android:paddingLeft="10dp" android:textSize="15sp" /> diff --git a/app/src/main/res/layout/charging_station_header.xml b/app/src/main/res/layout/charging_station_header.xml index 91b4472..c6cbb6b 100644 --- a/app/src/main/res/layout/charging_station_header.xml +++ b/app/src/main/res/layout/charging_station_header.xml @@ -15,7 +15,7 @@ app:layout_constraintTop_toTopOf="parent"> diff --git a/app/src/main/res/layout/fragment_forget_paw.xml b/app/src/main/res/layout/fragment_forget_paw.xml index 6c57d41..5ba118a 100644 --- a/app/src/main/res/layout/fragment_forget_paw.xml +++ b/app/src/main/res/layout/fragment_forget_paw.xml @@ -4,7 +4,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@mipmap/bg" + android:background="@drawable/bg" tools:context=".fragment.ForgetPawFragment"> diff --git a/app/src/main/res/layout/fragment_other.xml b/app/src/main/res/layout/fragment_other.xml index 6318c2f..03ad688 100644 --- a/app/src/main/res/layout/fragment_other.xml +++ b/app/src/main/res/layout/fragment_other.xml @@ -250,40 +250,43 @@ android:id="@+id/tv_03" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_margin="10dp" + android:layout_marginTop="10dp" android:text="04概述" android:textStyle="bold" - app:layout_constraintStart_toStartOf="parent" + app:layout_constraintLeft_toLeftOf="@+id/tv_other_picture" app:layout_constraintTop_toBottomOf="@id/ll_image_picture" /> - + + + + + + + + + + + - + + app:layout_constraintTop_toBottomOf="@id/edit_other_describe">