|  |  | @ -3,15 +3,18 @@ | 
			
		
	
		
		
			
				
					
					|  |  |  | package com.yinuo.safetywatcher.watcher.ui |  |  |  | package com.yinuo.safetywatcher.watcher.ui | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | import android.view.View |  |  |  | import android.view.View | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.common.commonlib.db.DBUtils | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.common.commonlib.db.entity.Gas | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.common.commonlib.db.entity.Video | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.common.commonlib.net.bean.BaseResponse | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.common.commonlib.net.callback.RequestResultCallBack | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.yinuo.library.vlc.utils.LogUtils | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.R |  |  |  | import com.yinuo.safetywatcher.R | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.TestUtils |  |  |  | import com.yinuo.safetywatcher.TestUtils | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.databinding.ActivityCloudBinding |  |  |  | import com.yinuo.safetywatcher.databinding.ActivityCloudBinding | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.watcher.base.NoOptionsActivity |  |  |  | import com.yinuo.safetywatcher.watcher.base.NoOptionsActivity | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.common.commonlib.db.DBUtils |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.common.commonlib.net.callback.RequestResultCallBack |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.library.vlc.utils.LogUtils |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.watcher.bean.GasReqBean |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.watcher.bean.LastTimeResponse |  |  |  | import com.yinuo.safetywatcher.watcher.bean.LastTimeResponse | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.yinuo.safetywatcher.watcher.constant.GAS_CLOUD_UPLOAD_SIZE_ONCE | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.watcher.net.DevicesApi |  |  |  | import com.yinuo.safetywatcher.watcher.net.DevicesApi | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.yinuo.safetywatcher.watcher.net.UploadFileApi |  |  |  | import com.yinuo.safetywatcher.watcher.net.UploadFileApi | 
			
		
	
		
		
			
				
					
					|  |  |  | import kotlinx.coroutines.DelicateCoroutinesApi |  |  |  | import kotlinx.coroutines.DelicateCoroutinesApi | 
			
		
	
	
		
		
			
				
					|  |  | @ -103,18 +106,17 @@ class CloudActivity : NoOptionsActivity() { | 
			
		
	
		
		
			
				
					
					|  |  |  |     private fun getSensorDataUpload(cloudTime: Long) { |  |  |  |     private fun getSensorDataUpload(cloudTime: Long) { | 
			
		
	
		
		
			
				
					
					|  |  |  |         GlobalScope.launch { |  |  |  |         GlobalScope.launch { | 
			
		
	
		
		
			
				
					
					|  |  |  |             val gasList = DBUtils.gasDao().getAllBySyncFlagOrTime(false, cloudTime) |  |  |  |             val gasList = DBUtils.gasDao().getAllBySyncFlagOrTime(false, cloudTime) | 
			
		
	
		
		
			
				
					
					|  |  |  |             val tempList = arrayListOf<GasReqBean>() |  |  |  |             val tempList = arrayListOf<Gas>() | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             gasList.forEach { |  |  |  |             gasList.forEach { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 tempList.add(GasReqBean(it)) |  |  |  |                 tempList.add(it) | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                 if (tempList.size == 10) { |  |  |  |                 if (tempList.size == GAS_CLOUD_UPLOAD_SIZE_ONCE) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                     val upLoadList = arrayListOf<GasReqBean>() |  |  |  |                     val cloneList: ArrayList<Gas> = tempList.clone() as ArrayList<Gas> | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                     upLoadList.addAll(tempList) |  |  |  |                     devicesApi.uploadGasData(cloneList, UploadGasCallback(tempList)) | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     tempList.clear() |  |  |  |                     tempList.clear() | 
			
		
	
		
		
			
				
					
					|  |  |  |                     devicesApi.uploadGasData(upLoadList) |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (tempList.isNotEmpty()) { |  |  |  |             if (tempList.isNotEmpty()) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 devicesApi.uploadGasData(tempList) |  |  |  |                 devicesApi.uploadGasData(tempList, UploadGasCallback(tempList)) | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
	
		
		
			
				
					|  |  | @ -124,13 +126,32 @@ class CloudActivity : NoOptionsActivity() { | 
			
		
	
		
		
			
				
					
					|  |  |  |             val videoDao = DBUtils.videoDao() |  |  |  |             val videoDao = DBUtils.videoDao() | 
			
		
	
		
		
			
				
					
					|  |  |  |             val videoList = videoDao.getAllByTime(cloudTime, System.currentTimeMillis()) |  |  |  |             val videoList = videoDao.getAllByTime(cloudTime, System.currentTimeMillis()) | 
			
		
	
		
		
			
				
					
					|  |  |  |             // 上传 |  |  |  |             // 上传 | 
			
		
	
		
		
			
				
					
					|  |  |  |             videoList?.forEach { |  |  |  |             videoList.forEach { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                 uploadFile(it.path) |  |  |  |                 uploadFile(it) | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     private fun uploadFile(video: Video) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         TestUtils.testUploadFile(uploadApi, video, loadingDialog) | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     private fun uploadFile(path: String) { |  |  |  |     class UploadGasCallback(private val upLoadList: ArrayList<Gas>) : | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         TestUtils.testUploadFile(uploadApi, path, loadingDialog) |  |  |  |         RequestResultCallBack<BaseResponse>() { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         override fun onResult(result: BaseResponse) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             GlobalScope.launch { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 if (result.isOk()) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     val gasDao = DBUtils.gasDao() | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     upLoadList.forEach { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                         it.syncFlag = true | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                         gasDao.update(it) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         override fun onError(error: String?) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             LogUtils.e("UploadGasCallback $error") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } |