Commit 3aef610f19826b7f4695e4b24da5449d152689cc

Authored by YangShuai
2 parents dfd95d75 92ef3449

Merge branch 'master' of bj.gitlab.cnlive.com:cnlive-team/newModuleStrike

app/strike/src/main/java/com/cnlive/strike/imgutil/ImgActivity.java
@@ -20,9 +20,11 @@ import com.cnlive.core.imageload.config.PriorityMode; @@ -20,9 +20,11 @@ import com.cnlive.core.imageload.config.PriorityMode;
20 import com.cnlive.core.imageload.config.ScaleMode; 20 import com.cnlive.core.imageload.config.ScaleMode;
21 import com.cnlive.core.imageload.loader.ImageLoader; 21 import com.cnlive.core.imageload.loader.ImageLoader;
22 import com.cnlive.core.imageload.preview.PreviewImageViewActivity; 22 import com.cnlive.core.imageload.preview.PreviewImageViewActivity;
  23 +import com.cnlive.core.imageload.preview.model.ImagePreviewShowInfo;
23 import com.cnlive.core.imageload.preview.model.PreviewData; 24 import com.cnlive.core.imageload.preview.model.PreviewData;
24 import com.cnlive.core.imageload.util.DownLoadImageService; 25 import com.cnlive.core.imageload.util.DownLoadImageService;
25 import com.cnlive.strike.R; 26 import com.cnlive.strike.R;
  27 +import com.cnlive.strike.user.auth.UserService;
26 28
27 import java.io.File; 29 import java.io.File;
28 import java.util.ArrayList; 30 import java.util.ArrayList;
@@ -106,10 +108,21 @@ public class ImgActivity extends AppCompatActivity { @@ -106,10 +108,21 @@ public class ImgActivity extends AppCompatActivity {
106 .into(iv_test1); 108 .into(iv_test1);
107 109
108 PreviewData data = new PreviewData(); 110 PreviewData data = new PreviewData();
109 - data.setLife(false);  
110 - data.setFriend(false);  
111 - data.setScan(false);  
112 - data.setCollection(false); 111 + data.setCollection(true);
  112 + data.setSid(UserService.getUid(this));
  113 + data.setType("1");
  114 + data.setUserId(UserService.getUid(this));
  115 + data.setCollection(true);
  116 + data.setSave(true);
  117 +
  118 + ArrayList<ImagePreviewShowInfo> list = new ArrayList<>();
  119 + ImagePreviewShowInfo info = new ImagePreviewShowInfo();
  120 + info.setImgPath(URL1);
  121 + info.setPreviewPath(URL1);
  122 + list.add(info);
  123 + data.setPicList(list);
  124 +
  125 +
113 data.setShowImg(URL1); 126 data.setShowImg(URL1);
114 iv_test1.setOnClickListener(view -> PreviewImageViewActivity.startPreviewPictrue(this, view, data)); 127 iv_test1.setOnClickListener(view -> PreviewImageViewActivity.startPreviewPictrue(this, view, data));
115 128
core/app_qr/src/main/java/com/cnlive/strike/moudle/qr/api/ApiServiceQrcode.java
@@ -89,7 +89,14 @@ public interface ApiServiceQrcode { @@ -89,7 +89,14 @@ public interface ApiServiceQrcode {
89 89
90 @POST("Daren/order/addOrderMHT.action") 90 @POST("Daren/order/addOrderMHT.action")
91 Observable<BaseResult<CottonCandyInfo>> getCottonCandy(@QueryMap Map<String, String> param); 91 Observable<BaseResult<CottonCandyInfo>> getCottonCandy(@QueryMap Map<String, String> param);
  92 + /**
  93 + * 生成棉花糖订单信息
  94 + * @param param
  95 + * @return
  96 + */
92 97
  98 + @POST("Daren/group/userAddGroup.action")
  99 + Observable<BaseResult> userAddGroup(@QueryMap Map<String, String> param);
93 100
94 /** 101 /**
95 * 音箱家庭邀请成员 102 * 音箱家庭邀请成员
@@ -99,14 +106,4 @@ public interface ApiServiceQrcode { @@ -99,14 +106,4 @@ public interface ApiServiceQrcode {
99 @POST("Daren/sound/familyGroupInviteYD.action") 106 @POST("Daren/sound/familyGroupInviteYD.action")
100 Observable<BaseResult> familyGroupInviteYD(@QueryMap() Map<String, String> map); 107 Observable<BaseResult> familyGroupInviteYD(@QueryMap() Map<String, String> map);
101 108
102 -  
103 - /**  
104 - * 生成棉花糖订单信息  
105 - * @param param  
106 - * @return  
107 - */  
108 -  
109 - @POST("Daren/group/userAddGroup.action")  
110 - Observable<BaseResult> userAddGroup(@QueryMap Map<String, String> param);  
111 -  
112 } 109 }
core/app_qr/src/main/java/com/cnlive/strike/moudle/qr/frame/presenter/ScanNewPresenter.java
@@ -6,7 +6,6 @@ import android.text.TextUtils; @@ -6,7 +6,6 @@ import android.text.TextUtils;
6 import com.cnlive.core.libs.base.frame.presenter.BasePresenter; 6 import com.cnlive.core.libs.base.frame.presenter.BasePresenter;
7 import com.cnlive.strike.moudle.qr.frame.view.ScanNewView; 7 import com.cnlive.strike.moudle.qr.frame.view.ScanNewView;
8 import com.cnlive.strike.moudle.qr.ui.activity.ScanZarBarActivity; 8 import com.cnlive.strike.moudle.qr.ui.activity.ScanZarBarActivity;
9 -import com.hannesdorfmann.mosby3.mvp.MvpBasePresenter;  
10 import com.top.zibin.luban.Luban; 9 import com.top.zibin.luban.Luban;
11 import com.top.zibin.luban.OnCompressListener; 10 import com.top.zibin.luban.OnCompressListener;
12 11
core/app_qr/src/main/java/com/cnlive/strike/moudle/qr/routers/QrRouters.java
@@ -198,4 +198,21 @@ public class QrRouters { @@ -198,4 +198,21 @@ public class QrRouters {
198 .withBoolean("isStarPage", isStarPage) 198 .withBoolean("isStarPage", isStarPage)
199 .navigation(context); 199 .navigation(context);
200 } 200 }
  201 +
  202 +
  203 + public static void startChatActivity(Context context,String groupId,String groupName){
  204 +
  205 + ARouter.getInstance().build("/chat/ChatActivity")
  206 + .withString("targetId", groupId)
  207 + .withString("chatType", "Private")
  208 + .withString("conversationName", groupName)
  209 + .navigation(context);
  210 + }
  211 + public static void startChatGroupDetailActivity(Context context,String groupId,String groupName){
  212 +
  213 + ARouter.getInstance().build("/cnconversation/ChatGroupDetailActivity")
  214 + .withString("groupId", groupId)
  215 + .withString("groupName", groupName)
  216 + .navigation(context);
  217 + }
201 } 218 }
core/app_qr/src/main/java/com/cnlive/strike/moudle/qr/ui/activity/SpeakerBindStateActivity.java
@@ -3,6 +3,7 @@ package com.cnlive.strike.moudle.qr.ui.activity; @@ -3,6 +3,7 @@ package com.cnlive.strike.moudle.qr.ui.activity;
3 import android.content.Context; 3 import android.content.Context;
4 import android.content.Intent; 4 import android.content.Intent;
5 5
  6 +import com.alibaba.android.arouter.facade.annotation.Route;
6 import com.cnlive.core.libs.base.frame.activity.BaseActivity; 7 import com.cnlive.core.libs.base.frame.activity.BaseActivity;
7 import com.cnlive.strike.moudle.qr.R; 8 import com.cnlive.strike.moudle.qr.R;
8 import com.cnlive.strike.moudle.qr.databinding.ActivitySpeakerBindStateBinding; 9 import com.cnlive.strike.moudle.qr.databinding.ActivitySpeakerBindStateBinding;
@@ -17,6 +18,7 @@ import com.cnlive.strike.moudle.qr.frame.view.SpeakerBindStateView; @@ -17,6 +18,7 @@ import com.cnlive.strike.moudle.qr.frame.view.SpeakerBindStateView;
17 * <p> 18 * <p>
18 * 简介: 音响绑定状态 19 * 简介: 音响绑定状态
19 */ 20 */
  21 +@Route(path = "/qr/SpeakerBindStateActivity")
20 public class SpeakerBindStateActivity extends BaseActivity<SpeakerBindStateView, SpeakerBindStatePresenter> { 22 public class SpeakerBindStateActivity extends BaseActivity<SpeakerBindStateView, SpeakerBindStatePresenter> {
21 23
22 public ActivitySpeakerBindStateBinding binding; 24 public ActivitySpeakerBindStateBinding binding;
core/app_qr/src/main/java/com/cnlive/strike/moudle/qr/uitl/QrContentUtil.java
@@ -60,8 +60,6 @@ public class QrContentUtil { @@ -60,8 +60,6 @@ public class QrContentUtil {
60 public QrContentBean getQrContentBean(String result) { 60 public QrContentBean getQrContentBean(String result) {
61 QrContentBean bean = new QrContentBean(); 61 QrContentBean bean = new QrContentBean();
62 JSONObject jsonObject = null; 62 JSONObject jsonObject = null;
63 -  
64 -  
65 try { 63 try {
66 if (!TextUtils.isEmpty(result) && result.startsWith("http://apps.pay.cnlive.com/cash-register/payauto/default?")) { 64 if (!TextUtils.isEmpty(result) && result.startsWith("http://apps.pay.cnlive.com/cash-register/payauto/default?")) {
67 Uri uri = Uri.parse(result); 65 Uri uri = Uri.parse(result);
@@ -130,6 +128,7 @@ public class QrContentUtil { @@ -130,6 +128,7 @@ public class QrContentUtil {
130 bean.setContent(homepageId); 128 bean.setContent(homepageId);
131 bean.setType(type); 129 bean.setType(type);
132 break; 130 break;
  131 +
133 case "subscriShareType": 132 case "subscriShareType":
134 String homepageid = (String) jsonObject.get("homepageId"); 133 String homepageid = (String) jsonObject.get("homepageId");
135 if (TextUtils.isEmpty(homepageid)) { 134 if (TextUtils.isEmpty(homepageid)) {
@@ -151,6 +150,18 @@ public class QrContentUtil { @@ -151,6 +150,18 @@ public class QrContentUtil {
151 bean.setContent(content); 150 bean.setContent(content);
152 bean.setType(type); 151 bean.setType(type);
153 break; 152 break;
  153 + case "groupQrType":
  154 + String qrContent = (String) jsonObject.get("content");
  155 + if (TextUtils.isEmpty(qrContent)) {
  156 + bean.setType("other");
  157 + bean.setContent(result);
  158 + return bean;
  159 + }
  160 + bean.setContent(qrContent);
  161 + bean.setType(type);
  162 +
  163 + break;
  164 +
154 165
155 default: 166 default:
156 bean.setType("other"); 167 bean.setType("other");
@@ -179,6 +190,7 @@ public class QrContentUtil { @@ -179,6 +190,7 @@ public class QrContentUtil {
179 return bean; 190 return bean;
180 } 191 }
181 192
  193 +
182 public void getQrContent(Context mContext, String content, IdentifyTheQRCodeCallback successfulCallback) { 194 public void getQrContent(Context mContext, String content, IdentifyTheQRCodeCallback successfulCallback) {
183 if (TextUtils.isEmpty(content)) AlertUtil.showDeftToast(mContext, "请选择有效的二维码"); 195 if (TextUtils.isEmpty(content)) AlertUtil.showDeftToast(mContext, "请选择有效的二维码");
184 196
@@ -217,16 +229,23 @@ public class QrContentUtil { @@ -217,16 +229,23 @@ public class QrContentUtil {
217 jumpWitnessInfo(mContext, data.getContent(), successfulCallback); 229 jumpWitnessInfo(mContext, data.getContent(), successfulCallback);
218 break; 230 break;
219 case "dazhongQrType": 231 case "dazhongQrType":
  232 + //大众体育
220 jumpSportInfo(mContext, data.getContent(), successfulCallback); 233 jumpSportInfo(mContext, data.getContent(), successfulCallback);
221 break; 234 break;
222 case "starMoodShareType": 235 case "starMoodShareType":
223 - jumpStartInfo(mContext, data.getContent(), successfulCallback,true); 236 + //明星主页
  237 + jumpStartInfo(mContext, data.getContent(), successfulCallback, true);
224 break; 238 break;
225 case "xiaoJiaSpeakerType": 239 case "xiaoJiaSpeakerType":
  240 + //小家音响
226 jumpXiaoJiaSpeaker(mContext, data.getContent(), successfulCallback); 241 jumpXiaoJiaSpeaker(mContext, data.getContent(), successfulCallback);
227 break; 242 break;
228 case "subscriShareType": 243 case "subscriShareType":
229 - jumpStartInfo(mContext, data.getContent(), successfulCallback,false); 244 + jumpStartInfo(mContext, data.getContent(), successfulCallback, false);
  245 + break;
  246 + case "groupQrType":
  247 + //公共群组
  248 + jumpGroupInfo(mContext, data.getContent(), successfulCallback);
230 break; 249 break;
231 250
232 default: 251 default:
@@ -243,11 +262,18 @@ public class QrContentUtil { @@ -243,11 +262,18 @@ public class QrContentUtil {
243 ); 262 );
244 } 263 }
245 264
  265 + /**
  266 + * 小家音响
  267 + *
  268 + * @param mContext
  269 + * @param content
  270 + * @param successfulCallback
  271 + */
246 private void jumpXiaoJiaSpeaker(Context mContext, String content, IdentifyTheQRCodeCallback successfulCallback) { 272 private void jumpXiaoJiaSpeaker(Context mContext, String content, IdentifyTheQRCodeCallback successfulCallback) {
247 - if (!TextUtils.isEmpty(content)){  
248 - SpeakerBindStateActivity.startActivity(mContext,content); 273 + if (!TextUtils.isEmpty(content)) {
  274 + SpeakerBindStateActivity.startActivity(mContext, content);
249 successfulCallback.qRCodeCallback(true, ""); 275 successfulCallback.qRCodeCallback(true, "");
250 - }else { 276 + } else {
251 successfulCallback.qRCodeCallback(false, "数据异常"); 277 successfulCallback.qRCodeCallback(false, "数据异常");
252 } 278 }
253 279
@@ -271,6 +297,50 @@ public class QrContentUtil { @@ -271,6 +297,50 @@ public class QrContentUtil {
271 } 297 }
272 298
273 299
  300 + /**
  301 + * 公共群组
  302 + *
  303 + * @param context
  304 + * @param content
  305 + * @param successfulCallback
  306 + */
  307 + public static void jumpGroupInfo(Context context, String content, IdentifyTheQRCodeCallback successfulCallback) {
  308 + try {
  309 + JSONObject jsonObject = new JSONObject(content);
  310 +
  311 + String groupId = jsonObject.getString("groupId");
  312 + String groupName = jsonObject.getString("groupName");
  313 +
  314 + QrRouters.startChatGroupDetailActivity(context, groupId, groupName);
  315 + successfulCallback.qRCodeCallback(true, "");
  316 +// HashMap<String, String> hashMap = new HashMap<>();
  317 +// hashMap.put("groupId",groupId);
  318 +// hashMap.put("sid",UserService.getUid(context));
  319 +// Logic.create(hashMap).action(new Logic.Action<Map<String, String>, BaseInfo>() {
  320 +// @Override
  321 +// public Disposable action(Map<String, String> stringStringMap, DataCallback<BaseInfo> dataCallback) {
  322 +// return ApiRequest.service(ApiServiceQrcode.class, apiServiceQrcode -> apiServiceQrcode.userAddGroup(stringStringMap)).subscribe(context, dataCallback);
  323 +// }
  324 +// }).<BaseInfo>event().setFailureCallback(new FailureCallback() {
  325 +// @Override
  326 +// public void onFailure(int i, String s) {
  327 +// successfulCallback.qRCodeCallback(false, s);
  328 +// }
  329 +// }).setSuccessCallback(new SuccessCallback<BaseInfo>() {
  330 +// @Override
  331 +// public void onSuccess(BaseInfo baseInfo) {
  332 +// QrRouters.startChatActivity(context, groupId, groupName);
  333 +// successfulCallback.qRCodeCallback(true, "");
  334 +// }
  335 +// }).start();
  336 +//
  337 +
  338 + } catch (JSONException e) {
  339 + e.printStackTrace();
  340 + successfulCallback.qRCodeCallback(false, "数据异常");
  341 + }
  342 + }
  343 +
274 private void scanCottonCandyActivity(Context mContext, QrContentBean data, IdentifyTheQRCodeCallback successfulCallback) { 344 private void scanCottonCandyActivity(Context mContext, QrContentBean data, IdentifyTheQRCodeCallback successfulCallback) {
275 345
276 if (mContext == null) return; 346 if (mContext == null) return;
core/imageload/src/main/AndroidManifest.xml
@@ -3,8 +3,23 @@ @@ -3,8 +3,23 @@
3 package="com.cnlive.core.imageload"> 3 package="com.cnlive.core.imageload">
4 4
5 <application> 5 <application>
6 - <activity android:name=".preview.DataProcessingActivity"></activity>  
7 - <activity android:name=".preview.PreviewImageViewActivity" /> 6 + <activity
  7 + android:name=".preview.PreviewImageViewActivity"
  8 + android:configChanges="keyboardHidden|screenSize|smallestScreenSize|screenLayout|orientation"
  9 + android:launchMode="singleTop"
  10 + android:theme="@style/Theme.AppCompat.NoActionBar"/>
  11 + <activity
  12 + android:name=".preview.DataProcessingActivity"
  13 + android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"
  14 + android:launchMode="singleTop"
  15 + android:theme="@style/ProcessHtmlDialogActivityTheme">
  16 + <intent-filter>
  17 + <action android:name="com.cnlive.strike.moudle.preview.ui.DataProcessingActivity" />
  18 + <category android:name="android.intent.category.DEFAULT" />
  19 + <!-- 文字类型 -->
  20 + <data android:mimeType="text/plain" />
  21 + </intent-filter>
  22 + </activity>
8 </application> 23 </application>
9 24
10 </manifest> 25 </manifest>
11 \ No newline at end of file 26 \ No newline at end of file
core/imageload/src/main/java/com/cnlive/core/imageload/preview/PreviewImageViewActivity.java
@@ -6,6 +6,7 @@ import android.content.Intent; @@ -6,6 +6,7 @@ import android.content.Intent;
6 import android.graphics.Color; 6 import android.graphics.Color;
7 import android.view.View; 7 import android.view.View;
8 8
  9 +import com.alibaba.android.arouter.facade.annotation.Route;
9 import com.cnlive.core.imageload.R; 10 import com.cnlive.core.imageload.R;
10 import com.cnlive.core.imageload.databinding.ActivityPreviewImageViewBinding; 11 import com.cnlive.core.imageload.databinding.ActivityPreviewImageViewBinding;
11 import com.cnlive.core.imageload.preview.adapter.PreviewAdapter; 12 import com.cnlive.core.imageload.preview.adapter.PreviewAdapter;
@@ -24,6 +25,14 @@ import androidx.core.app.ActivityCompat; @@ -24,6 +25,14 @@ import androidx.core.app.ActivityCompat;
24 import androidx.core.app.ActivityOptionsCompat; 25 import androidx.core.app.ActivityOptionsCompat;
25 import androidx.fragment.app.Fragment; 26 import androidx.fragment.app.Fragment;
26 27
  28 +/**
  29 + * 创建:wukuiqing
  30 + * <p>
  31 + * 时间:2018/3/26
  32 + * <p>
  33 + * 描述:
  34 + */
  35 +@Route(path = "/preview/PreviewImageViewActivity")
27 public class PreviewImageViewActivity extends BaseActivity<PreviewImageView, PreviewImagePresenter> { 36 public class PreviewImageViewActivity extends BaseActivity<PreviewImageView, PreviewImagePresenter> {
28 37
29 ImagePreviewShowInfo previewInfo; 38 ImagePreviewShowInfo previewInfo;
@@ -57,6 +66,7 @@ public class PreviewImageViewActivity extends BaseActivity&lt;PreviewImageView, Pre @@ -57,6 +66,7 @@ public class PreviewImageViewActivity extends BaseActivity&lt;PreviewImageView, Pre
57 getWindow().getDecorView().setBackgroundColor(Color.TRANSPARENT); 66 getWindow().getDecorView().setBackgroundColor(Color.TRANSPARENT);
58 StatusBarUtil.setTransparentForWindow(this); 67 StatusBarUtil.setTransparentForWindow(this);
59 StatusBarUtil.addTranslucentView(this,0); 68 StatusBarUtil.addTranslucentView(this,0);
  69 + if (getPresenter()!=null)getPresenter().processData(PreviewImageViewActivity.this,getIntent());
60 } 70 }
61 71
62 @Override 72 @Override
core/imageload/src/main/res/values/style.xml
@@ -28,4 +28,15 @@ @@ -28,4 +28,15 @@
28 <item name="android:background">@drawable/qmui_tip_dialog_bg</item> 28 <item name="android:background">@drawable/qmui_tip_dialog_bg</item>
29 </style> 29 </style>
30 30
  31 + <style name="ProcessHtmlDialogActivityTheme" parent="Theme.AppCompat.Dialog">
  32 + <item name="android:windowFrame">@android:color/transparent</item><!--边框-->
  33 + <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
  34 + <item name="android:windowIsTranslucent">true</item><!--半透明-->
  35 + <item name="android:windowBackground">@android:color/transparent</item><!--背景透明-->
  36 + <item name="windowNoTitle">true</item>
  37 + <item name="windowActionBar">true</item>
  38 + <item name="android:windowActionBar">true</item>
  39 + <item name="android:windowCloseOnTouchOutside">false</item>
  40 + </style>
  41 +
31 </resources> 42 </resources>
32 \ No newline at end of file 43 \ No newline at end of file
module/pedometer/src/main/java/com/cnlive/moudle/pedometer/frame/presenter/RunningFinishFragmetPresenter.java
@@ -468,6 +468,6 @@ public class RunningFinishFragmetPresenter extends BasePresenter&lt;RunningFinishFr @@ -468,6 +468,6 @@ public class RunningFinishFragmetPresenter extends BasePresenter&lt;RunningFinishFr
468 // }); 468 // });
469 //// 469 ////
470 // } 470 // }
471 -// }, 2000); 471 +// }, 2000);u
472 // 472 //
473 } 473 }