修改自车模型接口请求位置

This commit is contained in:
tongchenfei
2020-11-30 14:49:44 +08:00
parent 5773086c96
commit 8e4b58a93b
7 changed files with 175 additions and 44 deletions

1
.idea/gradle.xml generated
View File

@@ -74,6 +74,7 @@
</set>
</option>
<option name="resolveModulePerSourceSet" value="false" />
<option name="useQualifiedModuleNames" value="true" />
</GradleProjectSettings>
</option>
</component>

View File

@@ -120,9 +120,6 @@ public class EntrancePresenter extends Presenter<EntranceView> implements Weathe
// 相当于每次onResume都会请求一下个人信息目的是能够相对及时的同步手机端的个人信息修改
requestUserInfo();
}
if(DebugConfig.isMapBased()) {
requestCarModelList();
}
getCommonConfig();
}
@@ -242,38 +239,4 @@ public class EntrancePresenter extends Presenter<EntranceView> implements Weathe
return "";
}
}
private void requestCarModelList() {
Map<String, String> params = new HashMap<>(8);
params.put("sn", Utils.getSn());
// params.put("sn", "ZD802B1932L00617");
mNetWork.create(UserInfoNetApiServices.class, DztHttpConstant.getBaseUrl()).
requestCarModelList(params).
subscribeOn(Schedulers.io()).
observeOn(Schedulers.io()).
subscribe(new SubscribeImpl<CarModelListResponse>(RequestOptions.create(context)) {
@Override
public void onSuccess(CarModelListResponse o) {
super.onSuccess(o);
Logger.d(TAG, "请求车模列表成功: " + o);
// todo 保存到sp中
SharedPrefsMgr.getInstance(context).putString("CAR_MODEL_LIST",
GsonUtil.jsonFromObject(o.getResult()));
}
@Override
public void onError(Throwable e) {
super.onError(e);
Logger.e(TAG, e, "请求自车模型失败");
}
@Override
public void onError(String message, int code) {
super.onError(message, code);
Logger.e(TAG, "请求自车模型失败: " + message);
}
});
}
}

View File

@@ -23,7 +23,4 @@ public interface UserInfoNetApiServices {
*/
@GET("carlife/carMachine/getAccountInfo")
Single<UserInfoResponse> requestUserInfo(@QueryMap Map<String, String> params);
@GET("yycp-userDataService/app/enthusiasm/getEnthusiasmInfo/v1")
Observable<CarModelListResponse> requestCarModelList(@QueryMap Map<String, String> params);
}

View File

@@ -0,0 +1,34 @@
package com.mogo.service.impl.adas;
import com.mogo.commons.debug.DebugConfig;
import java.util.Map;
import io.reactivex.Observable;
import retrofit2.http.GET;
import retrofit2.http.QueryMap;
interface CarModelInfoNetApiServices {
String HOST_DEV = "http://dzt-test.zhidaozhixing.com";
String HOST_TEST = "http://dzt-test.zhidaozhixing.com";
String HOST_DEMO = "http://dzt-show.zhidaozhixing.com";
String HOST_PRODUCT = "http://dzt.zhidaozhixing.com";
static String getBaseUrl(){
switch ( DebugConfig.getNetMode() ) {
case DebugConfig.NET_MODE_DEV:
return HOST_DEV;
case DebugConfig.NET_MODE_QA:
return HOST_TEST;
case DebugConfig.NET_MODE_DEMO:
return HOST_DEMO;
default:
return HOST_PRODUCT;
}
}
@GET("yycp-userDataService/app/enthusiasm/getEnthusiasmInfo/v1")
Observable<CarModelListResponse> requestCarModelList(@QueryMap Map<String, String> params);
}

View File

@@ -0,0 +1,47 @@
package com.mogo.service.impl.adas;
import com.mogo.module.common.entity.OwnCarModelEntity;
import java.util.List;
public class CarModelListInfo {
private String sn;
/**
* 热心指数 eg: 1 1.5 2 2.5
*/
private float enthusiasmIndex;
private List<OwnCarModelEntity> imageData;
public String getSn() {
return sn;
}
public void setSn(String sn) {
this.sn = sn;
}
public float getEnthusiasmIndex() {
return enthusiasmIndex;
}
public void setEnthusiasmIndex(float enthusiasmIndex) {
this.enthusiasmIndex = enthusiasmIndex;
}
public List<OwnCarModelEntity> getImageData() {
return imageData;
}
public void setImageData(List<OwnCarModelEntity> imageData) {
this.imageData = imageData;
}
@Override
public String toString() {
return "CarModelListInfo{" +
"sn='" + sn + '\'' +
", enthusiasmIndex=" + enthusiasmIndex +
", imageData=" + imageData +
'}';
}
}

View File

@@ -0,0 +1,29 @@
package com.mogo.service.impl.adas;
import com.mogo.commons.data.BaseData;
/**
* 请求根据热心指数获取自车图标列表的响应类
*
* @author tongchenfei
*/
public class CarModelListResponse extends BaseData {
private CarModelListInfo result;
public CarModelListInfo getResult() {
return result;
}
public void setResult(CarModelListInfo result) {
this.result = result;
}
@Override
public String toString() {
return "CarModelListResponse{" +
"result=" + result +
", code=" + code +
", msg='" + msg + '\'' +
'}';
}
}

View File

@@ -8,6 +8,8 @@ import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.commons.context.ContextHolderUtil;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.commons.network.SubscribeImpl;
import com.mogo.commons.network.Utils;
import com.mogo.map.uicontroller.EnumMapUI;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.MogoModule;
@@ -22,6 +24,8 @@ import com.mogo.service.statusmanager.IMogoStatusManager;
import com.mogo.utils.TipToast;
import com.mogo.utils.UiThreadHandler;
import com.mogo.utils.logger.Logger;
import com.mogo.utils.network.RequestOptions;
import com.mogo.utils.network.utils.GsonUtil;
import com.mogo.utils.storage.SharedPrefsMgr;
import com.zhidao.adasconfig.api.AdasConfigApiController;
import com.zhidao.adasconfig.common.config.EnumCarChatIncognitoMode;
@@ -34,7 +38,11 @@ import com.zhidao.autopilot.support.api.IAutopolitDataCallBack;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import io.reactivex.schedulers.Schedulers;
import static com.mogo.module.common.utils.SPConst.getSpGuide;
@@ -132,10 +140,17 @@ public class MogoADASController implements IMogoADASController {
@Override
public void requestGetCarModelListInfo() {
Logger.d( TAG, "requestGetCarModelListInfo" );
// 向adas发送车模list
AutopilotServiceManage.getInstance().settingCarModelListInfo( SharedPrefsMgr.getInstance( context ).getString(
"CAR_MODEL_LIST", "default-value" ) );
if (DebugConfig.isMapBased()) {
Logger.d(TAG, "requestGetCarModelListInfo");
// 向adas发送车模list
String carModelList = SharedPrefsMgr.getInstance(context).getString(
"CAR_MODEL_LIST", "");
if (carModelList != null && !carModelList.isEmpty()) {
AutopilotServiceManage.getInstance().settingCarModelListInfo(carModelList);
}
// 此处进行网络请求请求成功后再通知一次adas
requestCarModelList();
}
}
@Override
@@ -144,6 +159,8 @@ public class MogoADASController implements IMogoADASController {
MyLocationUtil.emphasizeMyLocation();
}
needEmphasizeMyLocation = false;
useTestSn = !useTestSn;
}
@Override
@@ -155,6 +172,8 @@ public class MogoADASController implements IMogoADASController {
}
}
private boolean useTestSn = false;
private void invokeShowADASOperation() {
int delay = CarSeries.isF8xxSeries() ? 0 : 100;
@@ -303,6 +322,47 @@ public class MogoADASController implements IMogoADASController {
adasDataCallbackList.remove(callback);
}
private static final String TEST_SN = "ZD802B1932L00617";
private String currentSn = TEST_SN;
private void requestCarModelList() {
Map<String, String> params = new HashMap<>(8);
params.put("sn", Utils.getSn());
// currentSn = useTestSn ? TEST_SN : Utils.getSn();
// params.put("sn", currentSn);
MogoApisHandler.getInstance().getApis().getNetworkApi().create(CarModelInfoNetApiServices.class, CarModelInfoNetApiServices.getBaseUrl()).
requestCarModelList(params).
subscribeOn(Schedulers.io()).
observeOn(Schedulers.io()).
subscribe(new SubscribeImpl<CarModelListResponse>(RequestOptions.create(context)) {
@Override
public void onSuccess(CarModelListResponse o) {
super.onSuccess(o);
Logger.d(TAG, "请求车模列表成功: " + o);
// 保存到sp中
String value = GsonUtil.jsonFromObject(o.getResult());
SharedPrefsMgr.getInstance(context).putString("CAR_MODEL_LIST",
value);
if(value != null && !value.isEmpty()){
AutopilotServiceManage.getInstance().settingCarModelListInfo(value);
}
}
@Override
public void onError(Throwable e) {
super.onError(e);
Logger.e(TAG, e, "请求自车模型失败");
}
@Override
public void onError(String message, int code) {
super.onError(message, code);
Logger.e(TAG, "请求自车模型失败: " + message);
}
});
}
@Override
public void release() {
AutopilotServiceManage.getInstance().release();