Commit 4c655484 by 严久程

课程列表页促销标签

parents b447274c 34f3b72b
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx10248m -XX:MaxPermSize=256m
#org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
#org.gradle.parallel=true
# org.gradle.parallel=true
#org.gradle.parallel=true
android.useDeprecatedNdk=true
android.enableAapt2=false
# pack:test|prod|pre test测试 prod正式
#pack=pre
#pack=auto_test
#pack=test
pack=prod
#予发布环境
#http://prem.yidianling.com/
#server php服务器api域名
serverurl.test=https://testapp2.yidianling.com/v3/
serverurl.auto_test=https://auto_testapp2.yidianling.com/v3/
serverurl.prod=https://app2.yidianling.com/v3/
serverurl.pre=https://preapp.yidianling.com/v3/
#行为数据埋点域名
actionurl.test=https://testapi.ydl.com/api/data/bigdata/
actionurl.auto_test=https://auto_testapi.ydl.com/api/data/bigdata/
actionurl.prod=https://api.ydl.com/api/data/bigdata/
#新h5
weburl.test=https://testwebapp.ydl.com/
weburl.auto_test=https://auto_testwebapp.ydl.com/
weburl.prod=https://webapp.ydl.com/
#ydlh5
ydlh5url.test=https://testh5.ydl.com/
ydlh5url.auto_test=https://auto_testh5.ydl.com/
#ydlh5url.test=http://192.168.204.5:3006/
ydlh5url.prod=https://h5.ydl.com/
#h5
h5url.test=https://testh2.yidianling.com/
h5url.auto_test=https://auto_testh2.yidianling.com/
h5url.prod=https://h2.yidianling.com/
h5url.pre=https://preh.yidianling.com/
#java服务器api域名(投放系统)
javaurl.test = http://testdelivery.yidianling.com/
javaurl.auto_test = http://auto_testdelivery.yidianling.com/
javaurl.prod = https://delivery.yidianling.com/
#m站H5地址
mh5url.test = https://testnewm.ydl.com/
mh5url.auto_test = https://auto_testnewm.ydl.com/
mh5url.prod = https://m.ydl.com/
#java服务器api域名(优惠券)
javacouponurl.test = https://testapi.ydl.com/
javacouponurl.auto_test = https://auto_testapi.ydl.com/
javacouponurl.prod = https://api.ydl.com/
#java服务器api域名(h5耗时统计,域名问题后续服务端会统一)
javatempurl.test = https://47.97.49.44:8082/api/
javatempurl.prod = https://dc.ydl.com/api/
#java服务器api统一域名
javaapi.test = https://testapi.ydl.com/api/
javaapi.auto_test = https://auto_testapi.ydl.com/api/
javaapi.prod = https://api.ydl.com/api/
#android.enableBuildCache=true
#org.gradle.caching=true
#org.gradle.daemon=true
#org.gradle.jvmargs=-Xmx4096M
#systemProp.http.proxyHost=192.168.98.150
#systemProp.http.proxyPort=8123
org.gradle.jvmargs=-Xmx1024M
......@@ -13,7 +13,6 @@ import android.util.Log
import com.alibaba.android.arouter.launcher.ARouter
import com.tbruyelle.rxpermissions2.RxPermissions
import com.umeng.analytics.MobclickAgent
import com.umeng.commonsdk.framework.UMModuleRegister.getAppContext
import com.ydl.audioim.YDLavManager
import com.ydl.component.music.MusicPlayActivity
import com.ydl.component.mvp.DemoContract
......@@ -137,7 +136,7 @@ class MainActivity : BaseLceActivity<DemoContract.View, DemoContract.Presenter>(
override fun reLoadData() {
mPresenter?.loadUsers()
mPresenter.loadHome()
}
......
......@@ -2,13 +2,11 @@
package com.ydl.component.base;
import android.content.Context;
import com.ydl.component.BuildConfig;
import com.ydl.ydlcommon.base.config.GlobalConfig;
import com.ydl.ydlcommon.base.config.IConfigModule;
import com.ydl.ydlcommon.base.config.YDLConstants;
import com.ydl.ydlcommon.base.delegate.IAppLifecycles;
import com.ydl.ydlcommon.base.config.GlobalConfig;
import org.jetbrains.annotations.NotNull;
import java.util.List;
......@@ -27,9 +25,13 @@ public final class DemoGlobalConfig implements IConfigModule {
@Override
public void applyOptions(@NotNull Context context, @NotNull GlobalConfig.Builder builder) {
builder.setFrom("ydl".equals(BuildConfig.FLAVOR) ? YDLConstants.FROM_YDL : YDLConstants.FROM_XLZX)
// String env = YDLConstants.ENV_AUTO_TEST;
// String env = YDLConstants.ENV_PROD;
String env = YDLConstants.ENV_TEST;
builder.setFrom( "ydl".equals(BuildConfig.FLAVOR) ?YDLConstants.FROM_YDL :YDLConstants.FROM_XLZX)
.addUrl("github", APP_DOMAIN)
.setEnv(YDLConstants.ENV_TEST)
.setEnv(env)
.setDebug(BuildConfig.DEBUG);
}
}
......@@ -39,6 +39,10 @@ class DemoPresenter : BasePresenter<DemoContract.View,DemoContract.Model>(),
}
override fun onSuccess(users: JsonObject) {
if (users.getAsJsonObject("data")==null){
mView.setData("")
return
}
var cateTitle = users.getAsJsonObject("data").getAsJsonArray("askCategoryData").get(0).asJsonObject.get("cateTitle").asString;
mView.setData(cateTitle)
}
......
ext {
kotlin_version = "1.3.21"
dev_mode = false
dev_mode = true
ydl_app = [
appName : "心理咨询壹点灵",
......@@ -44,12 +44,12 @@ ext {
//第三步 若干
"m-confide" : "0.0.29",
"m-consultant" : "0.0.42",
"m-consultant" : "0.0.44",
"m-course" : "0.0.30",
"m-fm" : "0.0.21",
"m-muse" : "0.0.19",
"m-tests" : "0.0.12",
"m-user" : "0.0.34",
"m-user" : "0.0.37",
//-------------- 业务模块 API 层 --------------
......@@ -64,7 +64,7 @@ ext {
//-------------- 功能组件 --------------
//第一步
"ydl-platform" : "0.0.27",
"ydl-platform" : "0.0.28.3",
//第二步 若干
"ydl-webview" : "0.0.28",
......@@ -74,7 +74,7 @@ ext {
//以下 几乎不会动
"router" : "0.0.1",
"ydl-net" : "0.0.2",
"ydl-net" : "0.0.3",
"ydl-utils" : "0.0.3",
"ydl-flutter-base": "0.0.3",
]
......@@ -101,7 +101,7 @@ ext {
//-------------- 功能组件 --------------
//第一步
"ydl-platform" : "0.0.27",
"ydl-platform" : "0.0.28.3",
//第二步 若干
"ydl-webview" : "0.0.28",
......@@ -112,7 +112,7 @@ ext {
//以下 几乎不会动
"router" : "0.0.1",
"ydl-net" : "0.0.2",
"ydl-net" : "0.0.3",
"ydl-utils" : "0.0.3",
"ydl-flutter-base": "0.0.3",
]
......
......@@ -13,13 +13,11 @@ import com.ydl.ydlcommon.data.http.RxUtils
import com.ydl.ydlcommon.data.http.ThrowableConsumer
import com.ydl.ydlcommon.mvp.base.BasePresenter
import com.ydl.ydlcommon.mvp.base.IView
import com.ydl.ydlcommon.utils.RxLifecycleUtils
import com.ydl.ydlcommon.utils.YDLAsyncUtils
import com.ydl.ydlcommon.utils.YDLCacheUtils
import com.yidianling.common.tools.RxNetTool
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.functions.Consumer
import io.reactivex.schedulers.Schedulers
/**
* @author yuanwai
......@@ -54,7 +52,7 @@ class ConfideHomePresenterImpl : BasePresenter<IConfideHomeContract.View,IConfid
override fun asyncResult(`object`: Any?) {
//如果没有缓存数据,显示加载框
if (`object` !is String || TextUtils.isEmpty(`object`)){
mView.showProgress()
mView.showLoading()
}
if (`object` is String){
......@@ -82,20 +80,8 @@ class ConfideHomePresenterImpl : BasePresenter<IConfideHomeContract.View,IConfid
val disposable = mModel.confideHomeRequest()
.map { it }
.filter { it != null }
.subscribeOn(Schedulers.io())
.doOnSubscribe {
if (!isRefresh){
mView.showLoading()//显示进度条
}
}
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doFinally {
if (!isRefresh){
mView.hideLoading()//隐藏进度条
}
}.compose(RxLifecycleUtils.bindToLifecycle(mView))
.compose(RxUtils.applySchedulers(mView as IView))
.doFinally { mView.hideLoading() }
.subscribe(Consumer {
mView.confideHomeResponse(it)
updateCache(it)
......
......@@ -75,6 +75,7 @@
/>
<com.ydl.ydlcommon.mvp.lce.view.YDLStateView
android:visibility="gone"
android:id="@+id/lce_state_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
......
......@@ -44,7 +44,9 @@ class ConsultAssistantDialogUtils private constructor() {
}
}
"doctor_list" -> {
shouldShowDialog(activity, origin, fromActivity = fromActivity)
if (!ConsultantIn.isLogin() || (ConsultantIn.getUserImpl().getUserInfo()?.user_type == 1 && ConsultantIn.isLogin())) {
shouldShowDialog(activity, origin, fromActivity = fromActivity)
}
}
}
......
......@@ -2,20 +2,36 @@ package com.yidianling.course.net;
import com.ydl.ydlcommon.data.http.BaseAPIResponse;
import com.ydl.ydlcommon.data.http.BaseResponse;
import com.yidianling.course.bean.*;
import com.yidianling.course.bean.CouponHintResponseBean;
import com.yidianling.course.bean.Course;
import com.yidianling.course.bean.CourseAddOrderBean;
import com.yidianling.course.bean.CourseCouponBean;
import com.yidianling.course.bean.CourseListDataBean;
import com.yidianling.course.bean.CourseMediaDetailBean;
import com.yidianling.course.bean.CoursePlayBean;
import com.yidianling.course.bean.PostersShareBean;
import com.yidianling.course.course_special_list.bean.CourseSpecialListBean;
import com.yidianling.course.model.CourseCategoryBean;
import com.yidianling.course.model.TopicCourseBean;
import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.*;
import java.util.List;
import java.util.Map;
import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.Body;
import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.Headers;
import retrofit2.http.POST;
import retrofit2.http.Query;
import retrofit2.http.QueryMap;
import retrofit2.http.Url;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN_COUPON_URL;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN_JAVA;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN_JAVA_URL;
/**
* Created by Jim on 2018/2/26 0026.
......@@ -88,7 +104,7 @@ public interface NetApiStore {
* @return
*/
@GET("marketing/coupon/new/available")
@Headers(YDL_DOMAIN + YDL_DOMAIN_COUPON_URL)
@Headers(YDL_DOMAIN + YDL_DOMAIN_JAVA_URL)
Observable<BaseResponse<List<CourseCouponBean>>> getCourseCoupons(@Query("uid") String uid,
@Query("services") String services,
@Query("receiveType") String receiveType,
......@@ -96,7 +112,7 @@ public interface NetApiStore {
//领取优惠券
@POST("marketing/coupon/new/receives")
@Headers(YDL_DOMAIN + YDL_DOMAIN_COUPON_URL)
@Headers(YDL_DOMAIN + YDL_DOMAIN_JAVA_URL)
Observable<BaseResponse<List<String>>> receiveCoupon(@Body RequestBody body);
......
......@@ -10,7 +10,8 @@ class UserBIConstants {
const val OS = "Android" //android系统
//用户埋点板块
const val PART_ID_LOGIN_MAIN = "login_main|"
const val PART_ID_LOGIN_MAIN = "login_main"
const val PART_ID_LOGIN_MAIN_PREFIX = "login_main|"
//咨询筛选页
const val PART_ID_CONSULT_FILTER_PAGE = "consult_filter_page"
//百度监测 应用启动行为
......@@ -41,12 +42,12 @@ class UserBIConstants {
* action type
* 行为数据埋点,sign1字段 是对同一key下多种不同行为的描述
*/
const val ACTION_TYPE_CODE_LOGIN: String = PART_ID_LOGIN_MAIN+"code_login" //验证码登录
const val ACTION_TYPE_RESET_PWD: String = PART_ID_LOGIN_MAIN+"reset_pwd" //重置密码登录
const val ACTION_TYPE_PWD_LOGIN: String = PART_ID_LOGIN_MAIN+"pwd_login" //手机号密码登录
const val ACTION_TYPE_DIRECT_LOGIN: String = PART_ID_LOGIN_MAIN+"direct_login" //一键登录
const val ACTION_TYPE_QQ_THIRD_LOGIN: String = PART_ID_LOGIN_MAIN+"qq_login" //QQ登录
const val ACTION_TYPE_WX_THIRD_LOGIN: String = PART_ID_LOGIN_MAIN+"wx_login" //WX登录
const val ACTION_TYPE_CODE_LOGIN: String = PART_ID_LOGIN_MAIN_PREFIX+"code_login" //验证码登录
const val ACTION_TYPE_RESET_PWD: String = PART_ID_LOGIN_MAIN_PREFIX+"reset_pwd" //重置密码登录
const val ACTION_TYPE_PWD_LOGIN: String = PART_ID_LOGIN_MAIN_PREFIX+"pwd_login" //手机号密码登录
const val ACTION_TYPE_DIRECT_LOGIN: String = PART_ID_LOGIN_MAIN_PREFIX+"direct_login" //一键登录
const val ACTION_TYPE_QQ_THIRD_LOGIN: String = PART_ID_LOGIN_MAIN_PREFIX+"qq_login" //QQ登录
const val ACTION_TYPE_WX_THIRD_LOGIN: String = PART_ID_LOGIN_MAIN_PREFIX+"wx_login" //WX登录
}
//====================壹点灵用户版首页(ydl_user_main_page)====================
......
......@@ -2,6 +2,7 @@ package com.ydl.ydlnet.builder.config;
import android.content.Context;
import android.text.TextUtils;
import com.ydl.ydlnet.builder.cookie.CookieJarImpl;
import com.ydl.ydlnet.builder.cookie.store.CookieStore;
import com.ydl.ydlnet.builder.factory.ApiFactory;
......@@ -9,19 +10,22 @@ import com.ydl.ydlnet.builder.http.SSLUtils;
import com.ydl.ydlnet.builder.interceptor.HeaderInterceptor;
import com.ydl.ydlnet.builder.interceptor.NetCacheInterceptor;
import com.ydl.ydlnet.builder.interceptor.NoNetCacheInterceptor;
import com.ydl.ydlnet.builder.interceptor.log.RequestHandler;
import com.ydl.ydlnet.builder.interceptor.log.RequestLogInterceptor;
import com.ydl.ydlnet.builder.manage.HttpUrlManager;
import com.ydl.ydlnet.client.interfaces.BuildHeadersListener;
import okhttp3.Cache;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import javax.net.ssl.HostnameVerifier;
import java.io.File;
import java.io.InputStream;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import javax.net.ssl.HostnameVerifier;
import okhttp3.Cache;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
/**
* Created by haorui on 2019-09-02 .
* Des: 统一OkHttp配置信息
......@@ -80,6 +84,7 @@ public class OkHttpConfig {
private InputStream bksFile;
private String password;
private InputStream[] certificates;
private RequestHandler requestHandler;
private Interceptor[] interceptors;
private Interceptor[] netInterceptors;
private BuildHeadersListener buildHeadersListener;
......@@ -99,6 +104,11 @@ public class OkHttpConfig {
return this;
}
public Builder setRequestHandler(RequestHandler requestHandler) {
this.requestHandler= requestHandler;
return this;
}
public Builder setCache(boolean isCache) {
this.isCache = isCache;
return this;
......@@ -210,9 +220,7 @@ public class OkHttpConfig {
* 配置开发环境
*/
private void setDebugConfig() {
if (isDebug) {
okHttpClientBuilder.addInterceptor(new RequestLogInterceptor());
}
okHttpClientBuilder.addInterceptor(new RequestLogInterceptor(isDebug,requestHandler));
}
......
package com.ydl.ydlnet.builder.interceptor.log;
import okhttp3.Interceptor;
import okhttp3.Request;
import okhttp3.Response;
/**
* Created by haorui on 2019-11-26 .
* Des:
*/
public interface RequestHandler {
Response onHttpResultResponse(String httpResult, Interceptor.Chain chain, Response response);
Request onHttpRequestBefore(Interceptor.Chain chain, Request request);
RequestHandler EMPTY = new RequestHandler() {
@Override
public Response onHttpResultResponse(String httpResult, Interceptor.Chain chain, Response response) {
//不管是否处理,都必须将response返回出去
return response;
}
@Override
public Request onHttpRequestBefore(Interceptor.Chain chain, Request request) {
//不管是否处理,都必须将request返回出去
return request;
}
};
}
package com.ydl.ydlnet.builder.interceptor.log;
import android.support.annotation.Nullable;
import com.ydl.ydlnet.utils.CharacterHandler;
import com.ydl.ydlnet.utils.NetLogUtils;
import com.ydl.ydlnet.utils.UrlEncoderUtils;
import com.ydl.ydlnet.utils.ZipHelper;
import okhttp3.*;
import okio.Buffer;
import okio.BufferedSource;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
......@@ -15,14 +13,27 @@ import java.net.URLDecoder;
import java.nio.charset.Charset;
import java.util.List;
import java.util.concurrent.TimeUnit;
import okhttp3.Interceptor;
import okhttp3.MediaType;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
import okhttp3.ResponseBody;
import okio.Buffer;
import okio.BufferedSource;
/**
* Created by haorui on 2019-09-01 .
* Des: 解析框架中的网络请求和响应结果并打印
*/
public class RequestLogInterceptor implements Interceptor {
private DefaultFormatPrinter mPrinter = new DefaultFormatPrinter();
private boolean mIsDebug ;
private RequestHandler mRequestHandler;
public RequestLogInterceptor() {
public RequestLogInterceptor(boolean isDebug, RequestHandler requestHandler) {
this.mIsDebug = isDebug;
this.mRequestHandler = requestHandler;
}
@Override
......@@ -36,6 +47,8 @@ public class RequestLogInterceptor implements Interceptor {
mPrinter.printFileRequest(request);
}
if (mRequestHandler != null)
request = mRequestHandler.onHttpRequestBefore(chain, request);
long t1 =System.nanoTime() ;
Response originalResponse;
......@@ -55,19 +68,24 @@ public class RequestLogInterceptor implements Interceptor {
bodyString = printResult(request, originalResponse);
}
final List<String> segmentList = request.url().encodedPathSegments();
final String header = originalResponse.headers().toString();
final int code = originalResponse.code();
final boolean isSuccessful = originalResponse.isSuccessful();
final String message = originalResponse.message();
final String url = originalResponse.request().url().toString();
if (responseBody != null && isParseable(responseBody.contentType())) {
mPrinter.printJsonResponse(TimeUnit.NANOSECONDS.toMillis(t2 - t1), isSuccessful,
code, header, responseBody.contentType(), bodyString, segmentList, message, url);
} else {
mPrinter.printFileResponse(TimeUnit.NANOSECONDS.toMillis(t2 - t1),
isSuccessful, code, header, segmentList, message, url);
if (mRequestHandler != null)
mRequestHandler.onHttpResultResponse(bodyString, chain, originalResponse);
if(mIsDebug) {
final List<String> segmentList = request.url().encodedPathSegments();
final String header = originalResponse.headers().toString();
final int code = originalResponse.code();
final boolean isSuccessful = originalResponse.isSuccessful();
final String message = originalResponse.message();
final String url = originalResponse.request().url().toString();
if (responseBody != null && isParseable(responseBody.contentType())) {
mPrinter.printJsonResponse(TimeUnit.NANOSECONDS.toMillis(t2 - t1), isSuccessful,
code, header, responseBody.contentType(), bodyString, segmentList, message, url);
} else {
mPrinter.printFileResponse(TimeUnit.NANOSECONDS.toMillis(t2 - t1),
isSuccessful, code, header, segmentList, message, url);
}
}
return originalResponse;
......
......@@ -5,5 +5,7 @@ package com.ydl.ydlcommon.base.config
* Des:
*/
const val YDL_DOMAIN = "Domain-Name:"
//JAVA Api 地址
const val YDL_DOMAIN_JAVA = "JAVA_BASE_URL"
const val YDL_DOMAIN_COUPON_URL = "SERVER_COUPON_URL"
//JAVA 域名
const val YDL_DOMAIN_JAVA_URL = "YDL_DOMAIN_JAVA_URL"
......@@ -83,7 +83,7 @@ class GlobalConfig private constructor(var builder: Builder) {
.config()
.setBaseUrl(appBaseURL ?: HttpConfig.PHP_BASE_URL)
.addUrl(YDL_DOMAIN_JAVA, HttpConfig.JAVA_BASE_URL)
.addUrl(YDL_DOMAIN_COUPON_URL, HttpConfig.SERVER_COUPON_URL)
.addUrl(YDL_DOMAIN_JAVA_URL, HttpConfig.JAVA_URL)
.setMultipleUrlMap(multipleUrl)
if (okHttpClient == null) {
......@@ -91,6 +91,7 @@ class GlobalConfig private constructor(var builder: Builder) {
}
apiFactory.setOkClient(okHttpClient)
HttpConfig.getInstance().initAuth()
}
}
......
package com.ydl.ydlcommon.bean
/**
* Created by haorui on 2019-11-26.
* Des:
*/
class AuthBean {
/**
* id : 1
* appId : android_zhuzhan
* appKey : 123456
* version : 4.0.00
*/
var id: Int = 0
var appId: String? = null
var appKey: String? = null
var version: String? = null
}
package com.ydl.ydlcommon.data.http.api;
import com.google.gson.Gson;
import com.ydl.ydlcommon.bean.AuthBean;
import com.ydl.ydlcommon.bean.MustUP;
import com.ydl.ydlcommon.data.http.BaseAPIResponse;
import com.ydl.ydlcommon.data.http.BaseResponse;
......@@ -8,12 +9,13 @@ import com.ydl.ydlcommon.data.http.FormatText;
import com.ydl.ydlcommon.data.http.params.ActionDataBean;
import com.ydl.ydlcommon.utils.NetworkParamsUtils;
import com.ydl.ydlnet.YDLHttpUtils;
import java.util.List;
import io.reactivex.Observable;
import okhttp3.MediaType;
import okhttp3.RequestBody;
import java.util.List;
/**
* 模块请求工具类
* Created by hgw on 2018/1/23.
......@@ -39,4 +41,12 @@ public class ApiRequestUtil {
RequestBody body = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), new Gson().toJson(actionDataParams));
return YDLHttpUtils.Companion.obtainApi(NetApiStore.class).actionDataCount(body);
}
/**
* 获取动态密钥
* @return
*/
public static Observable<BaseAPIResponse<AuthBean>> getDynamicToken() {
return YDLHttpUtils.Companion.obtainApi(NetApiStore.class).getDynamicToken();
}
}
package com.ydl.ydlcommon.data.http.api;
import com.ydl.ydlcommon.bean.AuthBean;
import com.ydl.ydlcommon.bean.MustUP;
import com.ydl.ydlcommon.data.http.BaseAPIResponse;
import com.ydl.ydlcommon.data.http.BaseResponse;
import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.*;
import java.util.Map;
import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.Body;
import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.Headers;
import retrofit2.http.POST;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN_JAVA;
import static com.ydl.ydlcommon.base.config.AppConfigKt.YDL_DOMAIN_JAVA_URL;
/**
* 网络请求api
......@@ -32,4 +40,8 @@ interface NetApiStore {
@POST("data/bigdata/maidian/writeMaiDianData")
Observable<BaseAPIResponse<String>> actionDataCount(@Body RequestBody body);
@Headers(YDL_DOMAIN+ YDL_DOMAIN_JAVA_URL)
@GET("risk/key/info")
Observable<BaseAPIResponse<AuthBean>> getDynamicToken();
}
......@@ -28,19 +28,19 @@ h5url.prod=https://h2.yidianling.com/
h5url.pre=https://preh.yidianling.com/
#java服务器api域名(投放系统)
javaurl.test = http://testdelivery.yidianling.com/
javaurl.auto_test = http://auto_testdelivery.yidianling.com/
javaurl.prod = https://delivery.yidianling.com/
javacasturl.test = http://testdelivery.yidianling.com/
javacasturl.auto_test = http://auto_testdelivery.yidianling.com/
javacasturl.prod = https://delivery.yidianling.com/
#m站H5地址
mh5url.test = https://testnewm.ydl.com/
mh5url.auto_test = https://auto_testnewm.ydl.com/
mh5url.prod = https://m.ydl.com/
#java服务器api域名(优惠券)
javacouponurl.test = https://testapi.ydl.com/
javacouponurl.auto_test = https://auto_testapi.ydl.com/
javacouponurl.prod = https://api.ydl.com/
#java服务器域名
javaurl.test = https://testapi.ydl.com/
javaurl.auto_test = https://auto_testapi.ydl.com/
javaurl.prod = https://api.ydl.com/
#java服务器api域名(h5耗时统计,域名问题后续服务端会统一)
javatempurl.test = https://47.97.49.44:8082/api/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment