Commit dc943ef4 authored by 赵鹏翔's avatar 赵鹏翔

框架抽取优化

parent 0b548e35
......@@ -22,8 +22,8 @@ import com.fastcashier.lib_common.function.account.SelfCashierTerminalConfig;
import com.fastcashier.lib_common.net.CommonCallback;
import com.fastcashier.lib_common.util.LogFileUtils;
import com.miya.fastcashier.R;
import com.miya.fastcashier.net.ApiRequest;
import com.miya.fastcashier.net.ApiService;
import com.miya.fastcashier.net.MiyaApiRequest;
import com.miya.fastcashier.net.MiyaApi;
import com.miya.fastcashier.ui.dialog.CustomImageCenterDialog;
import com.miya.fastcashier.utils.FileUtils;
import com.miya.fastcashier.widget.EmptyRecyclerView;
......@@ -271,15 +271,15 @@ public class LFilePickerActivity extends BaseActivity {
File file = new File(path);
RequestBody requestBody = RequestBody.create(MediaType.parse(""), file);
MultipartBody.Part part = MultipartBody.Part.createFormData("logFile", file.getName(), requestBody);
String ip = ApiRequest.Companion.getDataSourceIp(selfCashierTerminalConfig, equType);
String ip = MiyaApiRequest.Companion.getDataSourceIp(selfCashierTerminalConfig, equType);
if (!TextUtils.isEmpty(selfCashierTerminalConfig.getScoRuntimeConfig().getPlatformUrl())) {
ip = selfCashierTerminalConfig.getScoRuntimeConfig().getPlatformUrl()
+ ApiService.Companion.getUPLOAD_LOG_FILE();
+ MiyaApi.Companion.getUPLOAD_LOG_FILE();
}
LogUtils.e("ip = " + ip);
tryGenQrCodeMsg(file.getName());
ApiRequest.Companion.uploadFile(ip, part,
MiyaApiRequest.Companion.uploadFile(ip, part,
new CommonCallback<String>() {
@Override
public void onSuccess(String data) {
......
package com.miya.fastcashier.net
import android.text.TextUtils
import com.fastcashier.lib_common.function.account.SelfCashierAccountInfo
import com.fastcashier.lib_common.function.account.SelfCashierTerminalConfig
import com.fastcashier.lib_common.net.*
import com.miya.fastcashier.net.param.LoginParams
import okhttp3.MultipartBody
class ApiRequest {
companion object {
// private var apiService: ApiService? = null
// private var sInstance: ApiRequest? = null
//
// @Synchronized
// fun getInstance(): ApiRequest {
// if (null == sInstance) {
// sInstance = ApiRequest()
// }
// return sInstance!!
// }
//
// private fun getApiService(): ApiService {
// if (null == apiService) {
// val httpLoggingInterceptor =
// MiyaHttpLoggingInterceptor {
// Log.e("####", it)
// if (!LogFileUtils.isProhibitWrite) {
// LogFileUtils.writeLog(BaseApplication.getApplication(),it)
// }
// }.apply { level = MiyaHttpLoggingInterceptor.Level.BODY }
//
//
// val socketFactory = arrayOfNulls<SSLSocketFactory>(1)
// val trustManager = arrayOfNulls<X509TrustManager>(1)
// SSLCertificatesInit.init(socketFactory, trustManager)
//
// val client = OkHttpClient.Builder()
// .addInterceptor(httpLoggingInterceptor)
// .addInterceptor(RequestSignInterceptor())
// .sslSocketFactory(socketFactory[0]!!, trustManager[0]!!)
// .build()
//
// val retrofit = Retrofit.Builder()
// .baseUrl(ApiConfig.baseUrl)
// .client(client)
// .addConverterFactory(GsonConverterFactory.create())
// .build()
//
// apiService = retrofit.create(ApiService::class.java)
// }
//
// return apiService!!
// }
private fun getBusinessApi(): ApiService {
return NetClient.getInstance().getApi(ApiService::class.java)
}
fun login(
loginParams: LoginParams,
commonCallback: CommonCallback<SelfCashierAccountInfo>
) {
getBusinessApi().login(loginParams).enqueue(commonCallback)
}
fun uploadFile(
url: String,
part: MultipartBody.Part,
commonCallback: CommonCallback<String>
) {
getBusinessApi().uploadFile(url, part).enqueue(commonCallback)
}
fun getDataSourceIp(
selfCashierTerminalConfig: SelfCashierTerminalConfig,
equType: String
): String? {
if (selfCashierTerminalConfig?.scoRuntimeConfig == null) {
throw RuntimeException("DataSourceIpUtils SelfCashierTerminalConfig is null")
}
val path = "${ApiService.UPLOAD_LOG_FILE}?equType=$equType"
return if (TextUtils.isEmpty(selfCashierTerminalConfig.scoRuntimeConfig.erpIp)) (ApiConfig.baseUrl + path)
else selfCashierTerminalConfig.scoRuntimeConfig.erpIp + path
}
}
// fun login(
// loginParams: LoginParams,
// commonCallback: CommonCallback<SelfCashierAccountInfo>
// ) {
// val apiService = ApiClient.getInstance().getApi(ApiService.javaClass) as ApiService
// apiService.login(loginParams).enqueue(commonCallback)
// }
//
// fun uploadFile(
// url: String,
// part: MultipartBody.Part,
// commonCallback: CommonCallback<String>
// ) {
// val apiService = ApiClient.getInstance().getApi(ApiService.javaClass) as ApiService
// apiService.uploadFile(url, part).enqueue(commonCallback)
// }
//
// fun getDataSourceIp(
// selfCashierTerminalConfig: SelfCashierTerminalConfig,
// equType: String
// ): String? {
//
// if (selfCashierTerminalConfig?.scoRuntimeConfig == null) {
// throw RuntimeException("DataSourceIpUtils SelfCashierTerminalConfig is null")
// }
//
// val path = "${ApiService.UPLOAD_LOG_FILE}?equType=$equType"
// return if (TextUtils.isEmpty(selfCashierTerminalConfig.scoRuntimeConfig.erpIp)) (ApiConfig.baseUrl + path)
// else selfCashierTerminalConfig.scoRuntimeConfig.erpIp + path
// }
}
\ No newline at end of file
......@@ -12,7 +12,7 @@ import retrofit2.http.*
/**
* 请求地址配置
*/
interface ApiService : BaseApi {
interface MiyaApi : BaseApi {
companion object {
......
package com.miya.fastcashier.net
import android.text.TextUtils
import com.fastcashier.lib_common.function.account.SelfCashierAccountInfo
import com.fastcashier.lib_common.function.account.SelfCashierTerminalConfig
import com.fastcashier.lib_common.net.*
import com.miya.fastcashier.net.param.LoginParams
import okhttp3.MultipartBody
class MiyaApiRequest {
companion object {
private var sMiyaApi: MiyaApi? = null
private fun getApi(): MiyaApi {
if (null == sMiyaApi) {
sMiyaApi = ApiClient.getInstance().creatApi(MiyaApi::class.java)
}
return sMiyaApi!!
}
fun login(
loginParams: LoginParams,
commonCallback: CommonCallback<SelfCashierAccountInfo>
) {
getApi().login(loginParams).enqueue(commonCallback)
}
fun uploadFile(
url: String,
part: MultipartBody.Part,
commonCallback: CommonCallback<String>
) {
getApi().uploadFile(url, part).enqueue(commonCallback)
}
fun getDataSourceIp(
selfCashierTerminalConfig: SelfCashierTerminalConfig,
equType: String
): String? {
if (selfCashierTerminalConfig?.scoRuntimeConfig == null) {
throw RuntimeException("DataSourceIpUtils SelfCashierTerminalConfig is null")
}
val path = "${MiyaApi.UPLOAD_LOG_FILE}?equType=$equType"
return if (TextUtils.isEmpty(selfCashierTerminalConfig.scoRuntimeConfig.erpIp))
(ApiConfig.baseUrl.plus(path))
else selfCashierTerminalConfig.scoRuntimeConfig.erpIp + path
}
}
}
\ No newline at end of file
......@@ -9,7 +9,7 @@ import com.fastcashier.lib_common.net.CommonCallback
import com.miya.fastcashier.R
import com.miya.fastcashier.net.param.LoginFormState
import com.miya.fastcashier.net.param.LoginParams
import com.miya.fastcashier.net.ApiRequest
import com.miya.fastcashier.net.MiyaApiRequest
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
......@@ -23,7 +23,7 @@ class LoginViewModel : ViewModel() {
viewModelScope.launch(Dispatchers.IO) {
ApiRequest.login(
MiyaApiRequest.login(
LoginParams(userName, passWord, ""),
object : CommonCallback<SelfCashierAccountInfo>(){
override fun onSuccess(data: SelfCashierAccountInfo) {
......
package com.fastcashier.lib_common.net
import android.util.Log
import com.blankj.utilcode.util.LogUtils
import com.fastcashier.lib_common.base.BaseApplication
import com.fastcashier.lib_common.util.LogFileUtils
import okhttp3.OkHttpClient
......@@ -10,17 +11,16 @@ import javax.net.ssl.SSLSocketFactory
import javax.net.ssl.X509TrustManager
class NetClient private constructor() {
class ApiClient private constructor() {
companion object {
// private var apiService: BaseApi? = null
private var sInstance: NetClient? = null
private var sInstance: ApiClient? = null
@Synchronized
fun getInstance(): NetClient {
fun getInstance(): ApiClient {
if (null == sInstance) {
sInstance = NetClient()
sInstance = ApiClient()
}
return sInstance!!
}
......@@ -55,15 +55,7 @@ class NetClient private constructor() {
return retrofit
}
// fun <T> getApi(tClass: Class<T>?): T {
// if (null == apiService) {
// apiService = generateClient().create(tClass)
// }
//
// return apiService!!
// }
fun <T> getApi(tClass: Class<T>?): T {
fun <T> creatApi(tClass: Class<T>?): T? {
return generateClient().create(tClass)
}
}
\ No newline at end of file
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