From afabdb515b405e0130f4715720a692b61910ec56 Mon Sep 17 00:00:00 2001
From: bsw215583320 <baoshiwei121@163.com>
Date: 星期五, 08 十一月 2024 13:46:47 +0800
Subject: [PATCH] Merge branch 'herb' into cloud

---
 jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttSampleCallback.java |   29 +++++++++++++++++++----------
 1 files changed, 19 insertions(+), 10 deletions(-)

diff --git a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttSampleCallback.java b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttSampleCallback.java
index fd66d01..e9e23cf 100644
--- a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttSampleCallback.java
+++ b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/mqtt/MqttSampleCallback.java
@@ -206,18 +206,26 @@
       case MqttConstant.TENANT_UP_PREFIX_EQU:
         ThreadUtil.execute(() -> {
           try {
-            DryEquipment equipment = (DryEquipment) messageJson.get("equipment");
-
+            Object equObj = messageJson.get("equipment");
+            DryEquipment equipment = JSON.parseObject(equObj.toString(), DryEquipment.class);
+            TenantContext.setTenant(equipment.getTenantId()+"");
             DryEquipment dryEquipment = equipmentService.selectByTenantIdEquipmentId(equipment.getTenantId() + "", equipment.getCode());
             if (dryEquipment == null) {
               equipmentService.save(equipment);
             }
-
+            Object typeObj = messageJson.get("eqpType");
+            DryEqpType eqpType = JSON.parseObject(typeObj.toString(), DryEqpType.class);
+            DryEqpType dryEqpType = eqpTypeService.getById(eqpType.getId());
+            if (dryEqpType == null) {
+              eqpTypeService.save(eqpType);
+            }
             // 鑾峰彇璁惧鎵�灞炶溅闂�
-            DryShop shop = (DryShop) messageJson.get("shop");
-            shop.setTenantId(equipment.getTenantId());
-            dryShopService.save(shop);
-
+            Object shopObj = messageJson.get("shop");
+            DryShop shop = JSON.parseObject(shopObj.toString(), DryShop.class);
+            DryShop dryShop = dryShopService.getById(shop.getId());
+            if (dryShop == null) {
+              dryShopService.save(shop);
+            }
           } catch (Exception e) {
             e.printStackTrace();
           }
@@ -273,17 +281,18 @@
           String clientId = mqttUtil.getMqttClient().getClientId();
           String tenant = clientId.substring(clientId.lastIndexOf("_")+1);
           if (tenantId!=null && tenantId.equals(tenant)) {
+            TenantContext.setTenant(tenantId);
             // 鏍规嵁璁惧缂栫爜鏌ヨ璁惧淇℃伅
             String code = messageJson.getString("code");
             DryEquipment equipmentVo = equipmentService.selectByTenantIdEquipmentId(tenantId,code);
             // 鏍规嵁璁惧杞﹂棿id鏌ヨ杞﹂棿淇℃伅
-            DryShop shop = dryShopService.selectByTenantIdShopId(tenantId, equipmentVo.getShopId());
+            DryShop shop = dryShopService.getById(equipmentVo.getShopId());
             // 鏍规嵁璁惧绫诲瀷ID鏌ヨ璁惧绫诲瀷淇℃伅
-            DryEqpType eqpType = eqpTypeService.selectByTenantIdTypeId(tenantId, equipmentVo.getType());
+            DryEqpType eqpType = eqpTypeService.getById(equipmentVo.getType());
 
             JSONObject res = new JSONObject();
 
-            res.put("tenant", clientId);
+            res.put("tenant", tenantId);
             res.put("equipment", equipmentVo);
             res.put("shop", shop);
             res.put("eqpType", eqpType);

--
Gitblit v1.9.3