소스 검색

#CHANGE 优化

weizhengliang 3 년 전
부모
커밋
65e3bede41

+ 0 - 9
middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/contract/nursehome/DeviceContract.kt

@@ -21,11 +21,6 @@ interface DeviceContract {
         fun showData(data: NurseDeviceInfoVO)
 
         /**
-         * 显示tcp通讯数据
-         */
-        fun showTcpData(data: TcpSeverDTO)
-
-        /**
          * 设置配置数据
          */
         fun showSettingData(data: PartSettingDO)
@@ -43,10 +38,6 @@ interface DeviceContract {
         fun loadData(ethMac: String)
 
         /**
-         * 获取tcp通讯地址和心跳间隔
-         */
-        fun loadTcpData()
-        /**
          * 获取设置数据
          */
         fun getSettingData(partId:Int)

+ 9 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/contract/nursehome/NurseHomeActivityContract.kt

@@ -3,6 +3,7 @@ package com.wdkl.ncs.android.middleware.logic.contract.nursehome
 import com.wdkl.ncs.android.lib.base.BaseContract
 import com.wdkl.ncs.android.middleware.model.ChildCategoryShell
 import com.wdkl.ncs.android.middleware.model.dos.AppVersionDO
+import com.wdkl.ncs.android.middleware.model.dto.TcpSeverDTO
 
 /**
  * 获取设备数据接口
@@ -13,6 +14,10 @@ interface NurseHomeActivityContract{
 
         fun showAppVersion(appInfo: AppVersionDO)
 
+        /**
+         * 显示tcp通讯数据
+         */
+        fun showTcpData(data: TcpSeverDTO)
     }
 
 
@@ -20,5 +25,9 @@ interface NurseHomeActivityContract{
         //获取APP版本信息
         fun getAppVersion(partId: Int, deviceType: Int)
 
+        /**
+         * 获取tcp通讯地址和心跳间隔
+         */
+        fun loadTcpData()
     }
 }

+ 3 - 26
middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/presenter/nursehome/DevicePresenter.kt

@@ -35,11 +35,7 @@ class DevicePresenter @Inject constructor() : RxPresenter<DeviceContract.View>()
      */
     @Inject
     protected lateinit var deviceApi: DeviceApi
-    /**
-     * 获取tcp api
-     */
-    @Inject
-    protected lateinit var tCPApi: TCPApi
+
     /**
      * 设置api
      */
@@ -66,13 +62,10 @@ class DevicePresenter @Inject constructor() : RxPresenter<DeviceContract.View>()
             providerView().complete()
             when (result) {
                 is NurseDeviceInfoVO -> {
-                    providerView().showData(result as NurseDeviceInfoVO)
-                }
-                is TcpSeverDTO -> {
-                    providerView().showTcpData(result as TcpSeverDTO)
+                    providerView().showData(result)
                 }
                 is PartSettingDO -> {
-                    providerView().showSettingData(result as PartSettingDO)
+                    providerView().showSettingData(result)
                 }
             }
 
@@ -110,22 +103,6 @@ class DevicePresenter @Inject constructor() : RxPresenter<DeviceContract.View>()
 
     }
 
-    /**
-     * 获取tcp IP 端口 心跳数据
-     */
-    override fun loadTcpData() {
-        tCPApi.getTCPApi().map {
-            var tcpSeverDTO = TcpSeverDTO()
-
-            var gson = GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create()
-            tcpSeverDTO = gson.fromJson(it.getJsonString(), TcpSeverDTO::class.java)
-            return@map tcpSeverDTO
-        }
-                .compose(ThreadFromUtils.defaultSchedulers())
-                .subscribe(observable)
-
-    }
-
     override fun getSettingData(partId: Int) {
         settingApi.getPartSetting(partId).map {
             var PartSettingDO = PartSettingDO()

+ 26 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/presenter/nursehome/NurseHomeActivityPresenter.kt

@@ -11,11 +11,13 @@ import com.wdkl.ncs.android.lib.utils.getJsonString
 import com.wdkl.ncs.android.lib.utils.more
 import com.wdkl.ncs.android.middleware.api.HelloApi
 import com.wdkl.ncs.android.middleware.api.NurseHomeApi
+import com.wdkl.ncs.android.middleware.api.TCPApi
 import com.wdkl.ncs.android.middleware.di.MiddlewareDaggerComponent
 import com.wdkl.ncs.android.middleware.logic.contract.hello.HelloActivityContract
 import com.wdkl.ncs.android.middleware.logic.contract.nursehome.NurseHomeActivityContract
 import com.wdkl.ncs.android.middleware.model.ChildCategoryShell
 import com.wdkl.ncs.android.middleware.model.dos.AppVersionDO
+import com.wdkl.ncs.android.middleware.model.dto.TcpSeverDTO
 import io.reactivex.disposables.Disposable
 import org.json.JSONArray
 import javax.inject.Inject
@@ -31,6 +33,11 @@ class NurseHomeActivityPresenter @Inject constructor() :RxPresenter<NurseHomeAct
     @Inject
     protected lateinit var nurseHomeApi: NurseHomeApi
 
+    /**
+     * 获取tcp api
+     */
+    @Inject
+    protected lateinit var tCPApi: TCPApi
 
     /**
      * 依赖注入初始化
@@ -54,6 +61,9 @@ class NurseHomeActivityPresenter @Inject constructor() :RxPresenter<NurseHomeAct
                     //app版本信息
                     providerView().showAppVersion(result)
                 }
+                is TcpSeverDTO -> {
+                    providerView().showTcpData(result)
+                }
             }
         }
 
@@ -77,4 +87,20 @@ class NurseHomeActivityPresenter @Inject constructor() :RxPresenter<NurseHomeAct
                 .compose(ThreadFromUtils.defaultSchedulers())
                 .subscribe(observer)
     }
+
+    /**
+     * 获取tcp IP 端口 心跳数据
+     */
+    override fun loadTcpData() {
+        tCPApi.getTCPApi().map {
+            var tcpSeverDTO = TcpSeverDTO()
+
+            var gson = GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create()
+            tcpSeverDTO = gson.fromJson(it.getJsonString(), TcpSeverDTO::class.java)
+            return@map tcpSeverDTO
+        }
+            .compose(ThreadFromUtils.defaultSchedulers())
+            .subscribe(observer)
+
+    }
 }

+ 1 - 0
nursehome/src/main/java/com/wdkl/ncs/android/component/nursehome/activity/AppUpdateActivity.kt

@@ -75,6 +75,7 @@ class AppUpdateActivity :BaseActivity<AppUpdatePresenter, UpdateLayBinding>(), A
 
     fun startInstallApk() {
         AppUpdateHelper.installAPK(this);
+        finish()
 
         /*Thread{
             AppUpdateHelper.updateApp(this, object : AppUpdateHelper.UpdateCallBack {

+ 27 - 12
nursehome/src/main/java/com/wdkl/ncs/android/component/nursehome/activity/NurseHomeActivity.kt

@@ -44,6 +44,7 @@ import com.wdkl.ncs.android.middleware.logic.contract.nursehome.NurseHomeActivit
 import com.wdkl.ncs.android.middleware.logic.presenter.nursehome.NurseHomeActivityPresenter
 import com.wdkl.ncs.android.middleware.model.bean.SettingConfiguration
 import com.wdkl.ncs.android.middleware.model.dos.AppVersionDO
+import com.wdkl.ncs.android.middleware.model.dto.TcpSeverDTO
 import com.wdkl.ncs.android.middleware.model.vo.CallingHistoryVO
 import com.wdkl.ncs.android.middleware.model.vo.FrameBedVO
 import com.wdkl.ncs.android.middleware.model.vo.InteractionVO
@@ -124,13 +125,9 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
                 startActivityForResult(intent, 10)
             }
         }
-        //初始化tcp
-        Thread ( Runnable {
-            run {
-                TcpClient.getInstance().init(Constants.tcp_ip, Constants.tcp_port!!.toInt(), Constants.reader_idle_time!!.toInt())
-//                TcpClient.getInstance().init("47.106.200.55", 5080, 9)
-            }
-        }).start()
+
+        presenter.loadTcpData()
+
         regReceiver()//注册时间广播
 
         if(Constants.hospital_name!=null&& !Constants.hospital_name.equals("")){
@@ -307,13 +304,11 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
     }
 
     override fun showAppVersion(appInfo: AppVersionDO) {
-        Log.d("AppUpdate", "loadAppVersion111 =====>>  version_code: " + appInfo.versionCode + ", path: " + appInfo.appPath)
-        val newAppVersion = appInfo.versionCode.substring(1)
-        Log.d("AppUpdate", "loadAppVersion222 =====>>  newAppVersion: " + newAppVersion + ", curAppVersion: " + BuildConfig.VERSION_NAME)
-        showMessage("获取版本成功,当前版本: " + BuildConfig.VERSION_NAME + ", 服务器版本: " + newAppVersion)
+        Log.d("AppUpdate", "loadAppVersion111 =====>>  versionNo: " + appInfo.versionNo + ", path: " + appInfo.appPath)
+        showMessage("获取版本成功,当前版本号: " + BuildConfig.VERSION_CODE + ", 服务器版本号: " + appInfo.versionNo)
 
         //服务器版本和当前版本不一致才做升级操作
-        if (!BuildConfig.VERSION_NAME.equals(newAppVersion)) {
+        if (BuildConfig.VERSION_CODE != appInfo.versionNo) {
             Constants.app_path = appInfo.appPath
             AppTool.Time.delay(200) {
                 push("/nursehome/update")
@@ -321,6 +316,26 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
         }
     }
 
+    /**
+     * 显示设备tcp相关的配置信息
+     */
+    override fun showTcpData(data: TcpSeverDTO) {
+        Log.e(TAG,"收到返回的TCP设备信息 ")
+        Log.e(TAG,"收到返回的TCP设备信息 "+data.readerIdleTime)
+        Log.e(TAG,"收到返回的TCP设备信息 "+data.tcpPort)
+        Log.e(TAG,"收到返回的TCP设备信息 "+data.publicIp)
+        Constants.tcp_ip = data.publicIp
+        Constants.tcp_port = ""+data.tcpPort
+        Constants.reader_idle_time = ""+data.readerIdleTime
+
+        //初始化tcp
+        Thread ( Runnable {
+            run {
+                TcpClient.getInstance().init(Constants.tcp_ip, Constants.tcp_port!!.toInt(), Constants.reader_idle_time!!.toInt())
+            }
+        }).start()
+    }
+
 
     override fun onClick(p0: View) {
        when(p0.id){

+ 2 - 22
nursehome/src/main/java/com/wdkl/ncs/android/component/nursehome/activity/RegisterActivity.kt

@@ -108,12 +108,10 @@ class RegisterActivity : BaseActivity<DevicePresenter, ActivityRegisterBinding>(
         btn_reload.setOnClickListener {
             btn_reload.isEnabled = false
             presenter.loadData(Constants.mac!!)
-            presenter.loadTcpData()
         }
 
         if (permissionGrant) {
             presenter.loadData(Constants.mac!!)
-            presenter.loadTcpData()
         } else {
             reload()
         }
@@ -124,7 +122,6 @@ class RegisterActivity : BaseActivity<DevicePresenter, ActivityRegisterBinding>(
             if (permissionGrant) {
                 btn_reload.isEnabled = false
                 presenter.loadData(Constants.mac!!)
-                presenter.loadTcpData()
             } else {
                 reload()
             }
@@ -173,12 +170,7 @@ class RegisterActivity : BaseActivity<DevicePresenter, ActivityRegisterBinding>(
             showMessage("服务器返回数据不全,请联系管理员")
             reload()
             return
-        }else if(TextUtils.isEmpty(Constants.tcp_ip)|| TextUtils.isEmpty(Constants.tcp_port)){
-            feedback_device_info_tv.text = "初始化tcp连接数据为null"
-            showMessage("初始化tcp连接数据为null")
-            reload()
-            return
-        }else if (data.status != null && data.status == 0) {
+        } else if (data.status != null && data.status == 0) {
             feedback_device_info_tv.text = "设备未启用"
             showMessage("设备未启用")
             reload()
@@ -198,19 +190,6 @@ class RegisterActivity : BaseActivity<DevicePresenter, ActivityRegisterBinding>(
     }
 
     /**
-     * 显示设备tcp相关的配置信息
-     */
-    override fun showTcpData(data: TcpSeverDTO) {
-        Log.e(TAG,"收到返回的TCP设备信息 ")
-        Log.e(TAG,"收到返回的TCP设备信息 "+data.readerIdleTime)
-        Log.e(TAG,"收到返回的TCP设备信息 "+data.tcpPort)
-        Log.e(TAG,"收到返回的TCP设备信息 "+data.publicIp)
-        Constants.tcp_ip = data.publicIp
-        Constants.tcp_port = ""+data.tcpPort
-        Constants.reader_idle_time = ""+data.readerIdleTime
-    }
-
-    /**
      * 得到设置配置的信息
      */
     override fun showSettingData(data: PartSettingDO) {
@@ -260,6 +239,7 @@ class RegisterActivity : BaseActivity<DevicePresenter, ActivityRegisterBinding>(
      *页面销毁回调
      */
     override fun destory() {
+        handler.removeCallbacksAndMessages(null)
     }
 
     /**

+ 0 - 2
nursehome/src/main/java/com/wdkl/ncs/android/component/nursehome/util/AppUpdateHelper.java

@@ -11,8 +11,6 @@ import android.os.Environment;
 import android.support.v4.content.FileProvider;
 import android.util.Log;
 
-import com.wdkl.ncs.android.component.nursehome.common.Constants;
-
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.InputStreamReader;