Commit 4993684acad9911839ac97f35c25ef0af148ed7e

Authored by 韩亚云
2 parents f2384867 76a32985

轨迹绑定接口修改2

.idea/gradle.xml
... ... @@ -3,9 +3,6 @@
3 3 <component name="GradleSettings">
4 4 <option name="linkedExternalProjectsSettings">
5 5 <GradleProjectSettings>
6   - <compositeConfiguration>
7   - <compositeBuild compositeDefinitionSource="SCRIPT" />
8   - </compositeConfiguration>
9 6 <option name="distributionType" value="DEFAULT_WRAPPED" />
10 7 <option name="externalProjectPath" value="$PROJECT_DIR$" />
11 8 <option name="modules">
... ...
moudle_pedometer/src/main/AndroidManifest.xml
... ... @@ -61,8 +61,7 @@
61 61 <activity android:name="com.cnlive.moudle.pedometer.ui.activity.MyRecordActivity" />
62 62 <activity android:name="com.cnlive.moudle.pedometer.ui.activity.ShareRecordActivity" />
63 63 <activity android:name="com.cnlive.moudle.pedometer.ui.activity.RaceRecordActivity" />
64   - <activity
65   - android:name="com.cnlive.moudle.pedometer.ui.activity.RegistrationInfoActivity"/>
  64 + <activity android:name="com.cnlive.moudle.pedometer.ui.activity.RegistrationInfoActivity" />
66 65  
67 66 <service
68 67 android:name="com.cnlive.moudle.pedometer.service.StepService"
... ... @@ -117,16 +116,16 @@
117 116  
118 117 <activity
119 118 android:name="com.cnlive.moudle.pedometer.ui.activity.PedometerMainActivity"
120   - android:launchMode="singleTask"/>
  119 + android:launchMode="singleTask" />
121 120 <activity
122 121 android:name="com.cnlive.moudle.pedometer.ui.activity.RunningMapActivity"
123   - android:launchMode="singleTask"/> <!-- android:theme="@style/Theme.AppCompat.Light.NoActionBar" -->
  122 + android:launchMode="singleTask" /> <!-- android:theme="@style/Theme.AppCompat.Light.NoActionBar" -->
124 123 <activity
125 124 android:name="com.cnlive.moudle.pedometer.ui.activity.RunRaceDetailActivity"
126   - android:launchMode="singleTask"/>
  125 + android:launchMode="singleTask" />
127 126 <activity
128 127 android:name="com.cnlive.moudle.pedometer.ui.activity.RunningFinishActivity"
129   - android:launchMode="singleTask"/>
  128 + android:launchMode="singleTask" />
130 129 <activity
131 130 android:name="com.cnlive.moudle.pedometer.ui.activity.UploadFailDetailActivity"
132 131 android:launchMode="singleTask" />
... ... @@ -138,6 +137,9 @@
138 137 <activity
139 138 android:name="com.cnlive.moudle.pedometer.ui.activity.OnGoingActivity"
140 139 android:launchMode="singleTask" />
  140 +
  141 + <!--轨迹列表详情页-->
  142 + <activity android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollTraceListDetailActivity" />
141 143 <!--************************************************路径工具**********************************************-->
142 144 <service
143 145 android:name="com.cnlive.moudle.collectionTrace.service.CollKeepLiveService"
... ... @@ -179,16 +181,11 @@
179 181 </intent-filter>
180 182 </receiver>
181 183  
182   - <activity
183   - android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollPedometerMainActivity"/>
184   - <activity
185   - android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollRunningFinishActivity"/> <!-- android:theme="@style/Theme.AppCompat.Light.NoActionBar" -->
186   - <activity
187   - android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollRunningMapActivity"/>
188   - <activity
189   - android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollRunRaceDetailActivity"/>
190   - <activity
191   - android:name="com.cnlive.moudle.collectionTrace.ui.activity.StartCollectTraceActivity"/>
  184 + <activity android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollPedometerMainActivity" />
  185 + <activity android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollRunningFinishActivity" /> <!-- android:theme="@style/Theme.AppCompat.Light.NoActionBar" -->
  186 + <activity android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollRunningMapActivity" />
  187 + <activity android:name="com.cnlive.moudle.collectionTrace.ui.activity.CollRunRaceDetailActivity" />
  188 + <activity android:name="com.cnlive.moudle.collectionTrace.ui.activity.StartCollectTraceActivity" />
192 189 </application>
193 190  
194 191 </manifest>
195 192 \ No newline at end of file
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/frame/view/CollRunningFinishFragmentView.java
... ... @@ -215,8 +215,8 @@ public class CollRunningFinishFragmentView implements MvpView, OnFenceListener {
215 215 @Override
216 216 public void run() {
217 217 if (null != collectLatLngs && collectLatLngs.size() > 1) {
218   -// getBaiDuSnap();
219   - addFence();
  218 + getBaiDuSnap();
  219 +// addFence();
220 220 }
221 221 }
222 222 }, 1000);
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/frame/view/CollRunningMapFragmentView.java
... ... @@ -378,6 +378,7 @@ public class CollRunningMapFragmentView implements MvpView, SensorEventListener
378 378 CollStepUtil.setCollEndPointData(getContext(), CollCommonInfo.getUserId(getContext()), collectPoint);
379 379 //跳转界面
380 380 CollRunningFinishActivity.startActivity(fragment.getActivity());
  381 + fragment.getActivity().finish();
381 382 }
382 383 });
383 384 endSelectDialog.setCancelable(false);
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/frame/view/CollTraceListDetailFragmentView.java
1 1 package com.cnlive.moudle.collectionTrace.frame.view;
2 2  
  3 +import android.app.Activity;
  4 +import android.content.Context;
3 5 import android.os.Handler;
4 6 import android.support.v7.widget.LinearLayoutManager;
5 7 import android.text.TextUtils;
... ... @@ -12,6 +14,7 @@ import com.baidu.mapapi.map.Overlay;
12 14 import com.baidu.mapapi.map.UiSettings;
13 15 import com.baidu.mapapi.model.LatLng;
14 16 import com.baidu.trace.LBSTraceClient;
  17 +import com.bumptech.glide.Glide;
15 18 import com.cnlive.moudle.collectionTrace.model.CollectPoint;
16 19 import com.cnlive.moudle.collectionTrace.model.RaceNameListInfo;
17 20 import com.cnlive.moudle.collectionTrace.ui.adapter.CollFinishDetaiAdapter;
... ... @@ -47,6 +50,9 @@ public class CollTraceListDetailFragmentView implements MvpView {
47 50 this.fragment = fragment;
48 51 }
49 52  
  53 + public Context getContext() {
  54 + return fragment == null ? null : fragment.getActivity();
  55 + }
50 56  
51 57 public void initView(RaceNameListInfo.EventShoeLinesBean eventShoeLinesBean) {
52 58 if (mClient == null) {
... ... @@ -59,8 +65,20 @@ public class CollTraceListDetailFragmentView implements MvpView {
59 65 //添加起点
60 66 CollectPoint startPoint = null;
61 67 List<CollectPoint> resultCollectPoints = null;
  68 + List<CollectPoint> allCollectPoints = null;
62 69 if (!TextUtils.isEmpty(eventShoeLinesBean.getLatLongitude())) {
63 70 resultCollectPoints = GsonUtil.jsonToList(eventShoeLinesBean.getLatLongitude(), CollectPoint.class);
  71 + allCollectPoints = GsonUtil.jsonToList(eventShoeLinesBean.getLatLongitude(), CollectPoint.class);
  72 +
  73 + }
  74 + //设置打点liebiao
  75 + if (null != allCollectPoints && allCollectPoints.size() > 1) {
  76 + //设置适配器
  77 + adapter = new CollFinishDetaiAdapter(fragment.getActivity(), allCollectPoints);
  78 + fragment.binding.includeFinishUserInfo.rvList.setLayoutManager(new LinearLayoutManager(fragment.getActivity()));
  79 + fragment.binding.includeFinishUserInfo.rvList.setAdapter(adapter);
  80 + } else {
  81 + fragment.binding.includeFinishUserInfo.rvList.setVisibility(View.GONE);
64 82 }
65 83 //获取打点不为空
66 84 if (null != resultCollectPoints && resultCollectPoints.size() > 1) {
... ... @@ -68,6 +86,29 @@ public class CollTraceListDetailFragmentView implements MvpView {
68 86 resultCollectPoints.remove(0);
69 87 //移除终点
70 88 resultCollectPoints.remove(resultCollectPoints.size() - 1);
  89 + //开始在地图上绘制打点信息
  90 + for (int i = 0; i < resultCollectPoints.size(); i++) {
  91 + LatLng latLng = new LatLng(resultCollectPoints.get(i).getLatitude(), resultCollectPoints.get(i).getLongitude());
  92 + MyMapUtil.setMapMarker(getContext(), baiduMap, latLng, R.drawable.icon_map_import);
  93 + }
  94 +
  95 + }
  96 +
  97 + //设置用户头像
  98 + if (!TextUtils.isEmpty(eventShoeLinesBean.getUserMsg().getNickName())) {
  99 + fragment.binding.includeFinishUserInfo.tvUserNickName.setText(eventShoeLinesBean.getUserMsg().getNickName());
  100 + }
  101 + //设置用户头像
  102 + if (!TextUtils.isEmpty(eventShoeLinesBean.getUserMsg().getImage())) {
  103 + Glide.with(getContext()).load(eventShoeLinesBean.getUserMsg().getImage()).into(fragment.binding.includeFinishUserInfo.qmIvIcon);
  104 + }
  105 + //设置用户行走公里
  106 + if (!TextUtils.isEmpty(eventShoeLinesBean.getMileage())) {
  107 + fragment.binding.includeFinishUserInfo.tvDistance.setText(eventShoeLinesBean.getMileage());
  108 + }
  109 + //设置日期
  110 + if (!TextUtils.isEmpty(eventShoeLinesBean.getEndTime())) {
  111 + fragment.binding.includeFinishUserInfo.tvDate.setText(TimeUtil.getStampToTime(Long.parseLong(eventShoeLinesBean.getEndTime()) * 1000, "yyyy-MM-dd HH:mm"));
71 112 }
72 113  
73 114 // //查询用户历史轨迹
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/frame/view/RaceNameListView.java
... ... @@ -22,6 +22,7 @@ import com.cnlive.libs.base.util.AlertUtil;
22 22 import com.cnlive.moudle.collectionTrace.commonInfo.CollCommonInfo;
23 23 import com.cnlive.moudle.collectionTrace.model.BindingShoeInfo;
24 24 import com.cnlive.moudle.collectionTrace.model.RaceNameListInfo;
  25 +import com.cnlive.moudle.collectionTrace.ui.activity.CollTraceListDetailActivity;
25 26 import com.cnlive.moudle.collectionTrace.ui.activity.StartCollectTraceActivity;
26 27 import com.cnlive.moudle.collectionTrace.ui.adapter.RaceNameListAdapter;
27 28 import com.cnlive.moudle.collectionTrace.ui.fragment.RaceNameListFragment;
... ... @@ -110,7 +111,7 @@ public class RaceNameListView implements MvpView, OnFenceListener {
110 111 adapter.setOnItemClick(new RaceNameListAdapter.OnItemClick() {
111 112 @Override
112 113 public void onItemClickListener(RaceNameListInfo.EventShoeLinesBean eventShoeLinesBean, int position) {
113   -
  114 + CollTraceListDetailActivity.startActivity(fragment.getActivity(), eventShoeLinesBean);
114 115 }
115 116 });
116 117 adapter.setOnAddShoeLineClick(new RaceNameListAdapter.OnAddShoeLineClick() {
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/ui/activity/CollTraceListDetailActivity.java
1 1 package com.cnlive.moudle.collectionTrace.ui.activity;
2 2  
  3 +import android.app.Activity;
  4 +import android.content.Intent;
3 5 import android.os.Bundle;
4 6  
  7 +import com.cnlive.libs.base.ui.QMUIFragment;
5 8 import com.cnlive.libs.base.ui.QMUIFragmentActivity;
6 9 import com.cnlive.moudle.collectionTrace.model.RaceNameListInfo;
  10 +import com.cnlive.moudle.collectionTrace.ui.fragment.CollTraceListDetailFragment;
7 11 import com.example.moudle_pedometer.R;
8 12  
9 13 /**
... ... @@ -23,5 +27,21 @@ public class CollTraceListDetailActivity extends QMUIFragmentActivity {
23 27 protected void onCreate(Bundle savedInstanceState) {
24 28 super.onCreate(savedInstanceState);
25 29 eventShoeLinesBean = (RaceNameListInfo.EventShoeLinesBean) getIntent().getExtras().get("eventShoeLinesBean");
  30 + if (null != eventShoeLinesBean) {
  31 + addFragment(CollTraceListDetailFragment.newInstance(eventShoeLinesBean));
  32 + }
  33 + }
  34 +
  35 + private void addFragment(QMUIFragment fragment) {
  36 + getSupportFragmentManager().beginTransaction()
  37 + .add(getContextViewId(), fragment, fragment.getClass().getSimpleName())
  38 + .addToBackStack(fragment.getClass().getSimpleName())
  39 + .commit();
  40 + }
  41 +
  42 + public static void startActivity(Activity activity, RaceNameListInfo.EventShoeLinesBean eventShoeLinesBean) {
  43 + Intent intent = new Intent(activity, CollTraceListDetailActivity.class);
  44 + intent.putExtra("eventShoeLinesBean", eventShoeLinesBean);
  45 + activity.startActivity(intent);
26 46 }
27 47 }
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/ui/adapter/RunListAdapter.java
... ... @@ -59,7 +59,7 @@ public class RunListAdapter extends RecyclerView.Adapter&lt;RunListAdapter.MyViewHo
59 59 public void onClick(View view) {
60 60 RunRaceDetailInfo runRaceDetailInfo = new RunRaceDetailInfo();
61 61 runRaceDetailInfo.setTitle(list.get(i).getTitle());
62   - RaceNameListActivity.newInstance(context, list.get(i).getId() + "",runRaceDetailInfo);
  62 + RaceNameListActivity.newInstance(context, list.get(i).getId() + "", runRaceDetailInfo);
63 63  
64 64 }
65 65 });
... ... @@ -91,4 +91,8 @@ public class RunListAdapter extends RecyclerView.Adapter&lt;RunListAdapter.MyViewHo
91 91 item_ly = itemView.findViewById(R.id.item_ly);
92 92 }
93 93 }
  94 +
  95 + public interface OnItemClickListener {
  96 + void onClickItem(RunLineInfo.ListBean bean, int position);
  97 + }
94 98 }
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/ui/fragment/CollTraceListDetailFragment.java
... ... @@ -5,6 +5,7 @@ import android.support.annotation.Nullable;
5 5 import android.view.View;
6 6  
7 7 import com.cnlive.libs.base.ui.QMUIFragment;
  8 +import com.cnlive.libs.base.util.StatusBarUtil2;
8 9 import com.cnlive.moudle.collectionTrace.frame.presenter.CollTraceListDetailFragmentPresenter;
9 10 import com.cnlive.moudle.collectionTrace.frame.view.CollTraceListDetailFragmentView;
10 11 import com.cnlive.moudle.collectionTrace.model.RaceNameListInfo;
... ... @@ -45,10 +46,14 @@ public class CollTraceListDetailFragment extends QMUIFragment&lt;CollTraceListDetai
45 46 @Override
46 47 public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
47 48 super.onViewCreated(view, savedInstanceState);
  49 + StatusBarUtil2.setColor(getActivity(), getResources().getColor(R.color.white), 0);
  50 +
48 51 if (null != getArguments()) {
49 52 eventShoeLinesBean = (RaceNameListInfo.EventShoeLinesBean) getArguments().get("eventShoeLinesBean");
50 53 if (null != eventShoeLinesBean) {
51   -
  54 + if (null != getMvpView()) {
  55 + getMvpView().initView(eventShoeLinesBean);
  56 + }
52 57 }
53 58 }
54 59 }
... ...
moudle_pedometer/src/main/res/layout/layout_coll_finish_user_info.xml
... ... @@ -93,6 +93,7 @@
93 93 <LinearLayout
94 94 android:layout_width="match_parent"
95 95 android:layout_height="wrap_content"
  96 + android:background="@color/white"
96 97 android:layout_marginTop="-3dp"
97 98 android:gravity="center_vertical">
98 99  
... ...