瀏覽代碼

Merge remote-tracking branch 'origin/master' into prod

tanbin 8 月之前
父節點
當前提交
61f2c94368

+ 20 - 0
device-api-service-merc-mini/src/main/java/com/xy/controller/MercMiniDeviceController.java

@@ -500,4 +500,24 @@ public class MercMiniDeviceController {
         return R.ok(deviceBluetoothAuthService.saveOrUpdate(deviceBluetoothAuth));
         return R.ok(deviceBluetoothAuthService.saveOrUpdate(deviceBluetoothAuth));
     }
     }
 
 
+
+    @ApiOperation("支付宝Npad音量设置")
+    @PostMapping("setAliNpadVol")
+    public R<Boolean> setAliNpadVol(@RequestBody @Validated DeviceInfoDto.NfcVol nfcVol) {
+        String deviceId = nfcVol.getDeviceId();
+        DeviceSetAttr dto = new DeviceSetAttr();
+        dto.setType("VOL").setTerminalId(deviceId).setValue(nfcVol.getValue());
+        return R.ok(R.feignCheckData(alipayDeviceService.setAttributes(dto)));
+    }
+
+
+    @ApiOperation("音量、温度查询")
+    @PostMapping("queryAliNpadVol")
+    public R<Boolean> queryAliNpadVol(@RequestBody DeviceInfoDto.NfcVolQuery dto) {
+        DeviceQueryAttr deviceQueryAttr = new DeviceQueryAttr();
+        deviceQueryAttr.setTerminalId(dto.getDeviceId());
+        deviceQueryAttr.setType("VOL");
+        return R.ok(R.feignCheckData(alipayDeviceService.queryAttributes(deviceQueryAttr)));
+    }
+
 }
 }

+ 13 - 0
device-api-service/src/main/java/com/xy/service/DeviceMqttConsumerImpl.java

@@ -16,6 +16,7 @@ import com.xy.device.EnumDeviceOnlineStatus;
 import com.xy.dto.*;
 import com.xy.dto.*;
 import com.xy.dto.be.MercDto;
 import com.xy.dto.be.MercDto;
 import com.xy.dto.be.MercUserDeviceDto;
 import com.xy.dto.be.MercUserDeviceDto;
+import com.xy.dto.nfc.UpperDeviceStatusDTO;
 import com.xy.entity.*;
 import com.xy.entity.*;
 import com.xy.enums.ChannelType;
 import com.xy.enums.ChannelType;
 import com.xy.enums.MsgConfigId;
 import com.xy.enums.MsgConfigId;
@@ -60,6 +61,10 @@ public class DeviceMqttConsumerImpl implements DeviceMqttConsumer {
 
 
     private DeviceFaultInfoServiceImpl deviceFaultInfoService;
     private DeviceFaultInfoServiceImpl deviceFaultInfoService;
 
 
+    private DeviceSysinfoServiceImpl deviceSysinfoService;
+
+    private AlipayDeviceService alipayDeviceService;
+
     @Override
     @Override
     @ApiOperation("设备在线")
     @ApiOperation("设备在线")
     @Async(DeviceThreadPoolConfig.DEVICE_NETWORK_POLL)
     @Async(DeviceThreadPoolConfig.DEVICE_NETWORK_POLL)
@@ -406,6 +411,14 @@ public class DeviceMqttConsumerImpl implements DeviceMqttConsumer {
         } catch (Exception e) {
         } catch (Exception e) {
             return;
             return;
         }
         }
+        DeviceSysinfo deviceSysinfo = deviceSysinfoService.getById(deviceId);
+        if (deviceSysinfo != null) {
+            Boolean isHaveAlipayNpad = deviceSysinfo.getIsHaveAlipayNpad();
+            if (BooleanUtil.isTrue(isHaveAlipayNpad)) {
+                //nfc 同步上位机状态
+                alipayDeviceService.upperDeviceStatusSync(new UpperDeviceStatusDTO().setTerminalId(String.valueOf(deviceId)).setOnline(netState == 1));
+            }
+        }
         //上报状态
         //上报状态
         DeviceStatusDto.Up up = new DeviceStatusDto.Up().setDeviceId(deviceId);
         DeviceStatusDto.Up up = new DeviceStatusDto.Up().setDeviceId(deviceId);
         up.setNetState(netState);
         up.setNetState(netState);

+ 1 - 0
device-api/src/main/java/com/xy/dto/DeviceInfoDto.java

@@ -26,6 +26,7 @@ import java.util.List;
 @Data
 @Data
 @Accessors(chain = true)
 @Accessors(chain = true)
 public class DeviceInfoDto {
 public class DeviceInfoDto {
+
     /**
     /**
      * 删除线路\点位时时指定 传入 wherePlaceLineId\wherePlaceId
      * 删除线路\点位时时指定 传入 wherePlaceLineId\wherePlaceId
      */
      */