From c45355ceacf1d1ba678c4c3ca0d9fbffc1c10f84 Mon Sep 17 00:00:00 2001 From: md Date: Thu, 12 Aug 2021 20:52:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=AB=8B=E5=8D=B3=E9=87=87?= =?UTF-8?q?=E9=9B=86=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../outdoor/activity/UserActivity.java | 2 + .../outdoor/fragment/GatherGetFragment.java | 12 +++-- .../outdoor/fragment/GatheringFragment.java | 1 + .../outdoor/fragment/PoiVideoFragment.java | 8 +-- .../outdoor/fragment/RoadFragment.java | 2 +- .../outdoor/fragment/TreasureFragment.java | 5 +- .../fragment/UserAttestationFragment.java | 50 ++---------------- .../navinfo/outdoor/http/HttpInterface.java | 4 +- .../drawable-hdpi/marker_poi_video_bg1.png | Bin 2040 -> 1231 bytes .../res/drawable-hdpi/poi_video_have_bg1.png | Bin 0 -> 1279 bytes .../main/res/drawable/poi_video_have_bg.png | Bin 878 -> 0 bytes 11 files changed, 23 insertions(+), 61 deletions(-) create mode 100644 app/src/main/res/drawable-hdpi/poi_video_have_bg1.png delete mode 100644 app/src/main/res/drawable/poi_video_have_bg.png diff --git a/app/src/main/java/com/navinfo/outdoor/activity/UserActivity.java b/app/src/main/java/com/navinfo/outdoor/activity/UserActivity.java index d8527eb..40b242a 100644 --- a/app/src/main/java/com/navinfo/outdoor/activity/UserActivity.java +++ b/app/src/main/java/com/navinfo/outdoor/activity/UserActivity.java @@ -26,6 +26,7 @@ import com.kongzue.dialog.v3.MessageDialog; import com.lzy.okgo.OkGo; import com.lzy.okgo.model.Response; import com.navinfo.outdoor.R; +import com.navinfo.outdoor.api.Constant; import com.navinfo.outdoor.base.BaseActivity; import com.navinfo.outdoor.bean.BankPhoneBean; import com.navinfo.outdoor.bean.CityBean; @@ -118,6 +119,7 @@ public class UserActivity extends BaseActivity implements View.OnClickListener { Intent gatheringIntent = new Intent(this, FragmentManagement.class); gatheringIntent.putExtra("tag", 24); startActivity(gatheringIntent); + break; case R.id.btn_attestation: Intent attestationIntent = new Intent(this, FragmentManagement.class); 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 51436cc..ca9393f 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/GatherGetFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/GatherGetFragment.java @@ -249,7 +249,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe getActivity().runOnUiThread(new Runnable() { @Override public void run() { - initCompleteTask(HttpInterface.COMPLETE, poiEntity.getTaskId(), true, taskIdPoiEntity); + initCompleteTask(HttpInterface.SUBMIT_POLYGON_TASK, poiEntity.getTaskId(), true, taskIdPoiEntity); } }); } @@ -273,7 +273,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe if (poiEntity != null) { int type = poiEntity.getType(); if (type == 6) { - initSubmitPolygonTask(HttpInterface.SUBMIT_POLYGON_TASK, poiEntity.getTaskId()); + initSubmitPolygonTask(HttpInterface.COMPLETE, poiEntity.getTaskId()); } else { new Thread(new Runnable() { @Override @@ -465,7 +465,7 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe public void run() { initViewByTaskStatus(1); if (aBoolean) { - initCompleteTask(HttpInterface.COMPLETE, GatherGetFragment.this.poiEntity.getTaskId(), true, polygonEntity); + initCompleteTask(HttpInterface.SUBMIT_POLYGON_TASK, GatherGetFragment.this.poiEntity.getTaskId(), true, polygonEntity); } } }); @@ -549,12 +549,14 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe return; } showLoadingDialog(); + HttpParams httpParams = new HttpParams(); + httpParams.put("id",taskId); OkGoBuilder.getInstance() .Builder(getActivity()) - .url(url + "/" + taskId) + .url(url) .cls(UnPolygonTaskBean.class) .token(Constant.ACCESS_TOKEN) - .params(new HttpParams()) + .params(httpParams) .getRequest(new Callback() { @Override public void onSuccess(UnPolygonTaskBean response, int id) { diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/GatheringFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/GatheringFragment.java index 649bbd9..90eaafa 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/GatheringFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/GatheringFragment.java @@ -209,6 +209,7 @@ public class GatheringFragment extends BaseFragment implements View.OnClickListe MessageDialog.show((AppCompatActivity) getActivity(), "绑定成功", "确定", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { @Override public boolean onClick(BaseDialog baseDialog, View v) { + getActivity().finish(); return false; } 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 49eba07..d1f49c5 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java @@ -383,10 +383,10 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick private void poiVideoUpload(int poiVideoBody, File fileZip) { -// if (poiVideoBody == 0) { -// Toast.makeText(getActivity(), "请先保存本地在上传", Toast.LENGTH_SHORT).show(); -// return; -// } + if (poiVideoBody == 0) { + Toast.makeText(getActivity(), "请先保存本地在上传", Toast.LENGTH_SHORT).show(); + return; + } if (fileZip == null) { Toast.makeText(getActivity(), "未压缩完成", Toast.LENGTH_SHORT).show(); return; 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 8277c53..761e555 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/RoadFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/RoadFragment.java @@ -387,7 +387,7 @@ public class RoadFragment extends BaseDrawerFragment implements View.OnClickList private void poiVideoUpload(int body, File fileZip) { if (body == 0) { - Toast.makeText(getContext(), "请先保存本地在上传", Toast.LENGTH_SHORT).show(); + Toast.makeText(getContext(), "请先保存本地上传", Toast.LENGTH_SHORT).show(); return; } if (fileZip == null) { 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 36b79af..db21b4d 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java @@ -490,6 +490,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen List latLineString = GeometryTools.getLatLngs(geo); // 构造 PolylineOpitons PolylineOptions polylineOptions = new PolylineOptions() + .addAll(latLineString) // 折线设置圆形线头 .lineCap(true) @@ -847,9 +848,9 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen if (poiEntity.getTaskStatus() == 1) { poiVideoDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.marker_poi_video_bg1); } else { - poiVideoDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.poi_video_have_bg); + poiVideoDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.poi_video_have_bg1); } - Marker poiVideoMarker = tencentMap.addMarker(new MarkerOptions(latLng).icon(poiVideoDescriptor).alpha(0.9f) + Marker poiVideoMarker = tencentMap.addMarker(new MarkerOptions(latLng).icon(poiVideoDescriptor).alpha(0.5f) .flat(true) .clockwise(false)); poiVideoMarker.setClickable(true); 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 1ac5d40..83c923a 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/UserAttestationFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/UserAttestationFragment.java @@ -63,7 +63,6 @@ public class UserAttestationFragment extends BaseFragment implements View.OnClic private TextView tvCard2; private ImageView ivHera3; private TextView tvCard3; - private SharedPreferences.Editor navInfoEditor; private File file; @@ -90,7 +89,6 @@ public class UserAttestationFragment extends BaseFragment implements View.OnClic @Override protected void initView() { super.initView(); - navInfoEditor = getActivity().getSharedPreferences("navInfo", Context.MODE_PRIVATE).edit(); ivAttestation = findViewById(R.id.iv_attestation); ivAttestation.setOnClickListener(this); ivAttestation1 = findViewById(R.id.iv_attestation1); @@ -228,16 +226,17 @@ public class UserAttestationFragment extends BaseFragment implements View.OnClic dismissLoadingDialog(); if (response.getCode()==200){ DialogSettings.style = DialogSettings.STYLE.STYLE_KONGZUE; - MessageDialog.show((AppCompatActivity) getActivity(), "提示", "通过", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { + MessageDialog.show((AppCompatActivity) getActivity(), "提示", "提交成功", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { @Override public boolean onClick(BaseDialog baseDialog, View v) { + Toast.makeText(getContext(), "", Toast.LENGTH_SHORT).show(); getActivity().finish(); return false; } }); }else { DialogSettings.style = DialogSettings.STYLE.STYLE_KONGZUE; - MessageDialog.show((AppCompatActivity) getActivity(), "提示", "不通过", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { + MessageDialog.show((AppCompatActivity) getActivity(), "提示", "提交失败", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { @Override public boolean onClick(BaseDialog baseDialog, View v) { @@ -253,49 +252,6 @@ public class UserAttestationFragment extends BaseFragment implements View.OnClic Log.d("TAG", "onSuccess: sss********sssssssssssss 失败" + e.getMessage() + ""); } }); - /* OkGo - // 请求方式和请求url - .post(HttpInterface.USER_AUTH_ADD) - // 请求的 tag, 主要用于取消对应的请求 - - - .addFileParams("file", takePhoneList) - .tag(this) - .execute(new DialogCallback(NameAuthenticationBean.class) { - @Override - public void onSuccess(Response response) { - dismissLoadingDialog(); - Log.d("TAG", "onSuccess: " + response.toString() + "sssssssssssss"); - if (response.code()==200) { - DialogSettings.style = DialogSettings.STYLE.STYLE_KONGZUE; - MessageDialog.show((AppCompatActivity) getActivity(), "提示", "通过", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { - @Override - public boolean onClick(BaseDialog baseDialog, View v) { - navInfoEditor.putString("attestationName",attestationName); - navInfoEditor.commit(); - return false; - } - }); - } else { - DialogSettings.style = DialogSettings.STYLE.STYLE_KONGZUE; - MessageDialog.show((AppCompatActivity) getActivity(), "提示", "不通过", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { - @Override - public boolean onClick(BaseDialog baseDialog, View v) { - - return false; - } - }); - } - } - - @Override - public void onError(Response response) { - super.onError(response); - dismissLoadingDialog(); - Toast.makeText(getActivity(), response.message(), Toast.LENGTH_SHORT).show(); - Log.d("TAG", "onError: " + response.message()); - } - });*/ dismissDialog(); } diff --git a/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java b/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java index bd28e26..3945db0 100644 --- a/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java +++ b/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java @@ -114,8 +114,8 @@ public class HttpInterface { public static final String RECEIVED_POLYGON_TASK = IP+TASK_PATH + "polygonTask/"+USERID+"/receivedPolygontask"; //面状任务任务领取 //172.23.139.4:8003/m4/task/1/unReceivedTask?taskIds=&auditIds=214,278 取消领取的接口 public static final String UNRECEIVED_POLYGON_TASK = IP+TASK_PATH + "m4/task/"+USERID+"/unReceivedTask";//所有類型结束领取 - public static final String COMPLETE = IP+TASK_PATH + "polygonTask/"+USERID+"/complete";//面状任务任务采集 - public static final String SUBMIT_POLYGON_TASK = IP+TASK_PATH + "polygonTask/"+USERID+"/submitPolygontask";//面状任务结束采集 + public static final String COMPLETE = IP+TASK_PATH + "polygonTask/"+USERID+"/complete";//面状任务结束领取 + public static final String SUBMIT_POLYGON_TASK = IP+TASK_PATH + "polygonTask/"+USERID+"/submitPolygontask";//面状任务开始采集 /** * public static final String IPm8 = "http://172.23.139.4:8003/m4/"; diff --git a/app/src/main/res/drawable-hdpi/marker_poi_video_bg1.png b/app/src/main/res/drawable-hdpi/marker_poi_video_bg1.png index 5d64b7aab2d0e353820b44c2e8652e99060197d2..cf7b8931a175dd3fffbed03db55f052d93e25bad 100644 GIT binary patch literal 1231 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