From 9e5ede4a8e9ac4b1a02f0057f98ff3abaa063aa3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E5=A2=9E=E9=A3=9E?= <331023091@qq.com> Date: Fri, 8 Aug 2025 17:48:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E8=81=94=E8=B0=83=EF=BC=8C?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=8F=82=E6=95=B0=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../intelligent/shelves/HomeActivity.kt | 20 +++++++++++-------- .../intelligent/shelves/ShelfActivity.kt | 6 ++++++ .../intelligent/shelves/model/ShelfModel.kt | 1 + .../intelligent/shelves/net/NetViewModel.kt | 8 ++++---- .../shuwei/intelligent/shelves/net/UiState.kt | 1 + .../intelligent/shelves/net/UrlConfig.kt | 11 +++++----- .../intelligent/shelves/task/SyncTask.kt | 1 + .../intelligent/shelves/task/TaskManager.kt | 2 +- 8 files changed, 32 insertions(+), 18 deletions(-) diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/HomeActivity.kt b/app/src/main/java/com/shuwei/intelligent/shelves/HomeActivity.kt index 60ea534..90ff86b 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/HomeActivity.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/HomeActivity.kt @@ -115,7 +115,8 @@ class HomeActivity : BaseActivity() { val androidId = Settings.Secure.getString(contentResolver, Settings.Secure.ANDROID_ID) Log.d(TAG, "onCreate: androidId=${androidId}") - App.getInstance().deviceId = "53babf69-0d2f-3875-a649-f2e12f80ad4c1" + App.getInstance().deviceId = androidId + //"53babf69-0d2f-3875-a649-f2e12f80ad4c1" val swDpValue = resources?.configuration?.smallestScreenWidthDp Log.d(TAG, "onCreate: swDpValue=$swDpValue") @@ -166,8 +167,8 @@ class HomeActivity : BaseActivity() { val subList01 = tempList.subList(0, 5) val subList02 = tempList.subList(5, 10) repeat(5) { index -> - list.add(subList01[index]) - list.add(subList02[index]) + list.add(subList01[index].also { it.deviceId = App.getInstance().deviceId }) + list.add(subList02[index].also { it.deviceId = App.getInstance().deviceId }) } shelfAdapter.notifyDataSetChanged() } @@ -189,15 +190,16 @@ class HomeActivity : BaseActivity() { data = serialReader.toString() } else if (srcData.startsWith(HEADER) && srcData.contains(FOOTER).not()) { serialReader.clear() - serialReader.append(srcData) + serialReader.append(srcData).append(",") return - } else if (srcData.contains(FOOTER).not()) { - serialReader.append(srcData) + } else if (srcData.startsWith(HEADER).not() && srcData.contains(FOOTER).not()) { + serialReader.append(srcData).append(",") return } else { val endIndex = srcData.indexOf(FOOTER) + FOOTER.length serialReader.append(srcData.substring(0, endIndex)) - data = serialReader.toString() + Log.d(TAG, "receiveSerialPortData:serialReader: $serialReader") + data = serialReader.toString().replace(",","") } val cmd = data.substring(HEADER.length, HEADER.length + 4) @@ -274,8 +276,9 @@ class HomeActivity : BaseActivity() { if (index <= 10) { list.firstOrNull { it.deviceNo == index }?.let { it.weight = realWeightDouble + val pos = list.indexOf(it) + shelfAdapter.notifyItemChanged(pos) } - shelfAdapter.notifyItemChanged(index) } count += 8 @@ -337,6 +340,7 @@ class HomeActivity : BaseActivity() { val model = getSerializableExtra(ShelfActivity.SHELF_MODEL) as ShelfModel list[position].apply { + goodsId = model.goodsId goodsName = model.goodsName weight = model.weight createTime = model.createTime diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/ShelfActivity.kt b/app/src/main/java/com/shuwei/intelligent/shelves/ShelfActivity.kt index 326455e..db7ad60 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/ShelfActivity.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/ShelfActivity.kt @@ -103,6 +103,7 @@ class ShelfActivity : BaseActivity() { } val data = ShelfModel( shelfName = shelfModel?.shelfName, + goodsId = list[clickIndex].goodsId?:"", goodsName = list[clickIndex].goodsName, weight = realWeight / 1000.0, createTime = DateTimeUtil.formatDateTime(dateTime = Date()) @@ -124,6 +125,9 @@ class ShelfActivity : BaseActivity() { val zeroClearingCmd = "${HomeActivity.HEADER}0401${hex}${HomeActivity.FOOTER}" Log.d(TAG, "onCreate: zeroClearingCmd=$zeroClearingCmd") SerialPortManager.send(zeroClearingCmd) + //清零 + realWeight = 0 + binding.tvFoodWeight.text = "${realWeight}克" } KeyboardUtil.hideKeyboard(v.context, v) } @@ -163,6 +167,8 @@ class ShelfActivity : BaseActivity() { it.finishRefresh(500) } else if (binding.refreshLayout.state == RefreshState.Loading) { it.finishLoadMore(500) + } else { + } } diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/model/ShelfModel.kt b/app/src/main/java/com/shuwei/intelligent/shelves/model/ShelfModel.kt index 3e9d54e..cecdaf3 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/model/ShelfModel.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/model/ShelfModel.kt @@ -8,6 +8,7 @@ data class ShelfModel( var shelfName: String? = null, var goodsId: String = "", var goodsName: String? = null, + var deviceId: String? = null, var weight: Double? = null, var createTime: String? = null ) : Serializable \ No newline at end of file diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModel.kt b/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModel.kt index 3e6cd36..505114a 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModel.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModel.kt @@ -20,16 +20,16 @@ class NetViewModel : ViewModel() { // .build() // .create(ApiService::class.java) - private val _getShelfListUiState = MutableStateFlow(UiState.Loading) + private val _getShelfListUiState = MutableStateFlow(UiState.Initial) val getShelfListUiState: StateFlow = _getShelfListUiState - private val _saveShelfGoodsListUiState = MutableStateFlow(UiState.Loading) + private val _saveShelfGoodsListUiState = MutableStateFlow(UiState.Initial) val saveShelfGoodsListUiState: StateFlow = _saveShelfGoodsListUiState - private val _getGoodsListUiState = MutableStateFlow(UiState.Loading) + private val _getGoodsListUiState = MutableStateFlow(UiState.Initial) val getGoodsListUiState: StateFlow = _getGoodsListUiState - private val _getAccessTokenUiState = MutableStateFlow(UiState.Loading) + private val _getAccessTokenUiState = MutableStateFlow(UiState.Initial) val getAccessTokenUiState: StateFlow = _getAccessTokenUiState fun getAccessToken(deviceId: String) { diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/net/UiState.kt b/app/src/main/java/com/shuwei/intelligent/shelves/net/UiState.kt index eb2eac8..82af3c4 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/net/UiState.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/net/UiState.kt @@ -1,6 +1,7 @@ package com.shuwei.intelligent.shelves.net sealed class UiState { + object Initial : UiState() object Loading : UiState() data class Success(val data: RespData) : UiState() data class Error(val msg: String) : UiState() diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/net/UrlConfig.kt b/app/src/main/java/com/shuwei/intelligent/shelves/net/UrlConfig.kt index c6b27ec..0b3d373 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/net/UrlConfig.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/net/UrlConfig.kt @@ -2,11 +2,12 @@ package com.shuwei.intelligent.shelves.net object UrlConfig { - const val BASE_URL = "http://192.168.1.7:9002" - const val GET_ACCESS_TOKEN = "/restaurant/equipment/stEquipment/getEquipmentToken" - const val GET_SHELF_LIST = "/inventory/smartShelves/app/getShelvesListByDeviceId" - const val GET_GOODS_LIST = "/inventory/smartShelves/app/getGoodsPageList" - const val SAVE_SHELF_GOODS_LIST = "/inventory/smartShelves/app/saveShelvesGoodsList" + //const val BASE_URL = "http://192.168.1.7:9002" + const val BASE_URL = "https://yyjk.shuziweidao.com/gateway/" + const val GET_ACCESS_TOKEN = "restaurant/equipment/stEquipment/getEquipmentToken" + const val GET_SHELF_LIST = "inventory/smartShelves/app/getShelvesListByDeviceId" + const val GET_GOODS_LIST = "inventory/smartShelves/app/getGoodsPageList" + const val SAVE_SHELF_GOODS_LIST = "inventory/smartShelves/app/saveShelvesGoodsList" } diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/task/SyncTask.kt b/app/src/main/java/com/shuwei/intelligent/shelves/task/SyncTask.kt index ec6afa3..c1390f7 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/task/SyncTask.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/task/SyncTask.kt @@ -44,6 +44,7 @@ class SyncTask(appContext: Context, workerParams: WorkerParameters) : it.goodsList = submitList } val resp = apiService.saveShelfGoodsList(body) + Log.d(TAG, "performSync: body:${body.toJsonString()}") Log.d(TAG, "performSync: resp:${resp.toJsonString()}") } } diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/task/TaskManager.kt b/app/src/main/java/com/shuwei/intelligent/shelves/task/TaskManager.kt index af658e6..30b35ed 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/task/TaskManager.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/task/TaskManager.kt @@ -12,7 +12,7 @@ object TaskManager { fun startTask() { val nextRequest = OneTimeWorkRequestBuilder() .setInitialDelay(3, TimeUnit.MINUTES) -// .setInitialDelay(10, TimeUnit.SECONDS) +// .setInitialDelay(30, TimeUnit.SECONDS) // .setInputData(inputData) .build() WorkManager.getInstance(App.getInstance())