Commit 8e11407c authored by shiyl's avatar shiyl

Merge branch 'feature/dev_fight_order' of...

Merge branch 'feature/dev_fight_order' of https://git.yidian-inc.com:8021/bp/ShenghuoquanBusiness into feature/dev_fight_order
parents 33db98c7 312280c2
package com.yidian.shenghuoquan.bgeneralbusiness.service.net package com.yidian.shenghuoquan.bgeneralbusiness.service.net
import com.google.gson.Gson import com.google.gson.Gson
import com.yidian.bcommon.BuildConfig
import com.yidian.bcommon.constant.RunConfig import com.yidian.bcommon.constant.RunConfig
import com.yidian.bcommon.http.HttpResult import com.yidian.bcommon.http.HttpResult
import com.yidian.shenghuoquan.bgeneralbusiness.service.net.callback.IBNARequestCallBack import com.yidian.shenghuoquan.bgeneralbusiness.service.net.callback.IBNARequestCallBack
...@@ -15,10 +14,10 @@ import org.json.JSONObject ...@@ -15,10 +14,10 @@ import org.json.JSONObject
*/ */
class BNAHttpReqService : ZapService() { class BNAHttpReqService : ZapService() {
private lateinit var resolver: ResultResolver /**
* @param resolver 此参数建议作为具体能力的方法入参 避免使用全局变量(异步回传H5结果时seq顺序错乱)
*/
override fun onAction(path: String, action: String, params: Any, options: Any, resolver: ResultResolver) { override fun onAction(path: String, action: String, params: Any, options: Any, resolver: ResultResolver) {
this.resolver = resolver
try { try {
//params //params
val realParams = params as JSONObject val realParams = params as JSONObject
...@@ -35,10 +34,10 @@ class BNAHttpReqService : ZapService() { ...@@ -35,10 +34,10 @@ class BNAHttpReqService : ZapService() {
//发起请求 //发起请求
when (method) { when (method) {
"GET", "get" -> { "GET", "get" -> {
BNARemoteDataSource.launchGetRequest(iMBRequestCallBackImpl, paramsMap, url) BNARemoteDataSource.launchGetRequest(iMBRequestCallBackImpl, paramsMap, url, resolver)
} }
"POST", "post" -> { "POST", "post" -> {
BNARemoteDataSource.launchPostRequest(iMBRequestCallBackImpl, paramsMap, url) BNARemoteDataSource.launchPostRequest(iMBRequestCallBackImpl, paramsMap, url, resolver)
} }
else -> { else -> {
resolver.fail(-1000, "request error", "不支持的请求方式") resolver.fail(-1000, "request error", "不支持的请求方式")
...@@ -72,12 +71,12 @@ class BNAHttpReqService : ZapService() { ...@@ -72,12 +71,12 @@ class BNAHttpReqService : ZapService() {
private val iMBRequestCallBackImpl = object : IBNARequestCallBack { private val iMBRequestCallBackImpl = object : IBNARequestCallBack {
override fun getRequestSuccess(response: Any?) { override fun getRequestSuccess(response: Any?, resolver: ResultResolver) {
val params = Gson().toJson(response) val params = Gson().toJson(response)
resolver.success(JSONObject(params)) resolver.success(JSONObject(params))
} }
override fun getRequestFailure(response: HttpResult<Any?>?) { override fun getRequestFailure(response: HttpResult<Any?>?, resolver: ResultResolver) {
response?.let { response?.let {
resolver.fail(response.code, null, response.reason) resolver.fail(response.code, null, response.reason)
} }
......
...@@ -4,15 +4,16 @@ import com.yidian.bcommon.http.HttpParamsUtils ...@@ -4,15 +4,16 @@ import com.yidian.bcommon.http.HttpParamsUtils
import com.yidian.bcommon.http.HttpResult import com.yidian.bcommon.http.HttpResult
import com.yidian.bcommon.http.HttpResultSubscriber import com.yidian.bcommon.http.HttpResultSubscriber
import com.yidian.bcommon.http.TransformUtil import com.yidian.bcommon.http.TransformUtil
import com.yidian.shenghuoquan.bgeneralbusiness.service.net.callback.IBNARequestCallBack
import com.yidian.http.ServiceFactory import com.yidian.http.ServiceFactory
import com.yidian.shenghuoquan.bgeneralbusiness.service.net.callback.IBNARequestCallBack
import com.yidian.xarc.xrouter.ResultResolver
object BNARemoteDataSource { object BNARemoteDataSource {
/** /**
* 发起get请求 * 发起get请求
*/ */
fun launchGetRequest(apiCallback: IBNARequestCallBack, requestParams: HashMap<String, String?>, url: String) { fun launchGetRequest(apiCallback: IBNARequestCallBack, requestParams: HashMap<String, String?>, url: String, resolver: ResultResolver) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp)
...@@ -21,11 +22,11 @@ object BNARemoteDataSource { ...@@ -21,11 +22,11 @@ object BNARemoteDataSource {
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
.subscribe(object : HttpResultSubscriber<Any?>() { .subscribe(object : HttpResultSubscriber<Any?>() {
override fun onSuccess(result: HttpResult<Any?>?) { override fun onSuccess(result: HttpResult<Any?>?) {
apiCallback.getRequestSuccess(result) apiCallback.getRequestSuccess(result, resolver)
} }
override fun onFailure(result: HttpResult<Any?>?) { override fun onFailure(result: HttpResult<Any?>?) {
apiCallback.getRequestFailure(result) apiCallback.getRequestFailure(result, resolver)
} }
}) })
} }
...@@ -33,7 +34,7 @@ object BNARemoteDataSource { ...@@ -33,7 +34,7 @@ object BNARemoteDataSource {
/** /**
* 发起post请求 * 发起post请求
*/ */
fun launchPostRequest(apiCallback: IBNARequestCallBack, requestParams: HashMap<String, String?>, url: String) { fun launchPostRequest(apiCallback: IBNARequestCallBack, requestParams: HashMap<String, String?>, url: String, resolver: ResultResolver) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp)
...@@ -42,11 +43,11 @@ object BNARemoteDataSource { ...@@ -42,11 +43,11 @@ object BNARemoteDataSource {
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
.subscribe(object : HttpResultSubscriber<Any?>() { .subscribe(object : HttpResultSubscriber<Any?>() {
override fun onSuccess(result: HttpResult<Any?>?) { override fun onSuccess(result: HttpResult<Any?>?) {
apiCallback.getRequestSuccess(result) apiCallback.getRequestSuccess(result, resolver)
} }
override fun onFailure(result: HttpResult<Any?>?) { override fun onFailure(result: HttpResult<Any?>?) {
apiCallback.getRequestFailure(result) apiCallback.getRequestFailure(result, resolver)
} }
}) })
} }
......
package com.yidian.shenghuoquan.bgeneralbusiness.service.net.callback package com.yidian.shenghuoquan.bgeneralbusiness.service.net.callback
import com.yidian.bcommon.http.HttpResult import com.yidian.bcommon.http.HttpResult
import com.yidian.xarc.xrouter.ResultResolver
interface IBNARequestCallBack { interface IBNARequestCallBack {
fun getRequestSuccess(response: Any?) fun getRequestSuccess(response: Any?, resolver: ResultResolver)
fun getRequestFailure(response: HttpResult<Any?>?) fun getRequestFailure(response: HttpResult<Any?>?, resolver: ResultResolver)
} }
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