Merge remote-tracking branch 'origin/dev_MogoAP_eagle-1030_211020_8.0.14' into dev_MogoAP_eagle-1030_211020_8.0.14

This commit is contained in:
董宏宇
2021-11-02 15:29:32 +08:00
8 changed files with 162 additions and 65 deletions

View File

@@ -284,7 +284,7 @@ class MoGoHmiFragment : MvpFragment<MoGoWarningContract.View?, WaringPresenter?>
var floatView: NoticeFloatView? = null
/**
* 展示普通公告 liyz
* 展示普通公告
* @param normalData
*/
override fun showNoticeNormal(normalData: NoticeNormalData) {

View File

@@ -36,15 +36,20 @@ class NoticeCheckDialog(context: Context) : BaseFloatDialog(context) {
}
}
fun showCheckDialog(title: String, content: String) {
/**
* 展示详情页面
*/
fun showCheckDialog(title: String, dbId: String) {
if (isShowing) {
return
}
if (title.isBlank() || content.isBlank()) {
if (title.isBlank() || dbId.isBlank()) {
return
}
pushCheckTitle?.text = title
pushCheckContent?.text = content
//网络请求处理数据
show()
}

View File

@@ -25,7 +25,6 @@ import com.mogo.utils.glide.GlideApp
class NoticeFloatView constructor(
private val context: Context
) {
companion object {
const val TYPE_TOP_VIEW = 1
const val TYPE_WINDOW_MANAGER = 2
@@ -55,13 +54,13 @@ class NoticeFloatView constructor(
pushContent = findViewById(R.id.notice_push_content)
titleIconContainer = findViewById(R.id.module_push_app_icon_title)
//查看结果
//查看结果 TODO
pushCheck.setOnClickListener {
pushData?.let {
if (pushCheckDialog == null) {
pushCheckDialog = NoticeCheckDialog(ContextHolderUtil.getContext())
}
pushCheckDialog!!.showCheckDialog(it.title, it.content)
pushCheckDialog!!.showCheckDialog(it.title, it.dbId)
}
}
}
@@ -78,34 +77,6 @@ class NoticeFloatView constructor(
pushImage.visible()
GlideApp.with(this).load(bean.imageUrl).placeholder(R.drawable.notice_banner_default).into(pushImage)
// image
// if (bean.imageUrl.isEmpty()) {
// pushImage.gone()
// } else if (bean.imageUrl.isNotEmpty()) {
// val params = pushImage.layoutParams
// params.width = getImgWidth()
// params.height = getImgHeight()
// pushImage.layoutParams = params
// pushImage.visible()
// GlideApp.with(this).load(bean.imageUrl).placeholder(R.drawable.notice_banner_default).into(pushImage)
// } else if (bean.QRCode.isNotEmpty()) {
// val params = pushImage.layoutParams
// params.width = getQrImgWidth()
// params.height = getQrImgHeight()
// pushImage.layoutParams = params
// ThreadPoolService.execute {
// val bmp = stringConverterBitmap(
// bean.QRCode,
// getQrImgWidth(),
// getQrImgHeight()
// )
// UiThreadHandler.post {
// pushImage.setImageBitmap(bmp)
// pushImage.visible()
// }
// }
// }
// content
if (bean.content.isEmpty()) {
pushContent.gone()
@@ -196,7 +167,6 @@ class NoticeFloatView constructor(
init {
delayClosePush = Runnable {
}
}

View File

@@ -64,14 +64,7 @@ class NoticeSocketManager {
return;
}
//TODO 展示弹框
CallerHmiManager.INSTANCE.showNormalBanner(obj);
// NoticePushData data = new NoticePushData();
// data.setImageUrl(obj.getImageUrl());
// data.setContent(obj.getContent());
// data.setInfoId(obj.getDbId());
// CallerHmiManager.INSTANCE.showTrafficBanner(data);
}
};

View File

@@ -1,13 +1,16 @@
package com.mogo.eagle.core.function.notice.network;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.eagle.core.data.notice.NoticeNormalDetail;
import java.util.Map;
import io.reactivex.Observable;
import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.QueryMap;
/**
* @author Jing
@@ -36,4 +39,12 @@ public interface NoticeApiService {
@POST("/deva/accidentInfoManage/policeUpdateTroubleStatus")
Observable<BaseData> sendAcceptStatus(@FieldMap Map<String, String> accidentParameters);
/**
* 获取普通公告详情
*
* @param param
* @return
*/
@GET("/deva/pc/pathAndPoi/getAnnouncementByDbId")
Observable<NoticeNormalDetail> getNoticeDetail(@QueryMap Map<String, String> param);
}

View File

@@ -4,6 +4,9 @@ import com.mogo.cloud.network.NetConstants;
import com.mogo.cloud.network.RetrofitFactory;
import com.mogo.cloud.passport.MoGoAiCloudClient;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.eagle.core.data.notice.NoticeNormalDetail;
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager;
import com.mogo.utils.logger.Logger;
import java.util.HashMap;
import java.util.Map;
@@ -20,7 +23,7 @@ import io.reactivex.schedulers.Schedulers;
* @since: 10/28/21
*/
public class NoticeNetWorkManager {
private String TAG = "AINotice";
private String TAG = "NoticeNetWorkManager";
private static volatile NoticeNetWorkManager requestNoticeManager;
private final NoticeApiService mNoticeApiService;
@@ -115,4 +118,45 @@ public class NoticeNetWorkManager {
}
});
}
/**
* 获取普通公告的详情
*
* @param dbId
*/
public void getNoticeDetail(String dbId) {
String sn = MoGoAiCloudClient.getInstance().getAiCloudClientConfig().getSn();
Map<String, String> map = new HashMap<>();
map.put("sn", sn);
map.put("infoId", dbId);
mNoticeApiService.getNoticeDetail(map)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<NoticeNormalDetail>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull NoticeNormalDetail noticeNormalDetail) {
Logger.d(TAG, "onNext ------ ");
// CallerHmiManager.INSTANCE.showNormalBanner(noticeNormalDetail);
}
@Override
public void onError(@NonNull Throwable e) {
Logger.e(TAG, " onError e = " + e);
}
@Override
public void onComplete() {
Logger.d(TAG, "onComplete ------ ");
}
});
}
}