From 36dd8ee92ab43241bcff4b2f39e1092138b0ca9b Mon Sep 17 00:00:00 2001 From: zzc <1278921369@qq.com> Date: Tue, 20 Aug 2024 00:49:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=AE=BE=E5=A4=87=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E4=BC=98=E5=8C=96=E7=AD=89=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/device/iot/DeviceByDeviceName.java | 91 ++++ .../org/dromara/web/service/IotService.java | 15 + .../service/impl/EqEquipmentServiceImpl.java | 13 +- .../src/main/resources/application-dev.yml | 5 +- .../i18n/messages_zh_CN(3).properties | 465 ++++++++++++++++++ 5 files changed, 583 insertions(+), 6 deletions(-) create mode 100644 ruoyi-admin/src/main/java/org/dromara/web/device/iot/DeviceByDeviceName.java create mode 100644 ruoyi-admin/src/main/resources/i18n/messages_zh_CN(3).properties diff --git a/ruoyi-admin/src/main/java/org/dromara/web/device/iot/DeviceByDeviceName.java b/ruoyi-admin/src/main/java/org/dromara/web/device/iot/DeviceByDeviceName.java new file mode 100644 index 000000000..1a554d1e6 --- /dev/null +++ b/ruoyi-admin/src/main/java/org/dromara/web/device/iot/DeviceByDeviceName.java @@ -0,0 +1,91 @@ +package org.dromara.web.device.iot; + +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @ClassName : DeviceByDeviceName + * @Author : ZZC + * @Date : 2024/8/20 0:26 + * @Description : 根据设备名称查询的信息 /api/tenant/devices + **/ +@NoArgsConstructor +@Data +public class DeviceByDeviceName { + + + private IdDTO id; + private Long createdTime; + private AdditionalInfoDTO additionalInfo; + private TenantIdDTO tenantId; + private CustomerIdDTO customerId; + private String name; + private String type; + private String label; + private DeviceProfileIdDTO deviceProfileId; + private DeviceDataDTO deviceData; + private FirmwareIdDTO firmwareId; + private Object softwareId; + + @NoArgsConstructor + @Data + public static class IdDTO { + private String entityType; + private String id; + } + + @NoArgsConstructor + @Data + public static class AdditionalInfoDTO { + private Boolean gateway; + private Boolean overwriteActivityTime; + private String description; + } + + @NoArgsConstructor + @Data + public static class TenantIdDTO { + private String entityType; + private String id; + } + + @NoArgsConstructor + @Data + public static class CustomerIdDTO { + private String entityType; + private String id; + } + + @NoArgsConstructor + @Data + public static class DeviceProfileIdDTO { + private String entityType; + private String id; + } + + @NoArgsConstructor + @Data + public static class DeviceDataDTO { + private ConfigurationDTO configuration; + private TransportConfigurationDTO transportConfiguration; + + @NoArgsConstructor + @Data + public static class ConfigurationDTO { + private String type; + } + + @NoArgsConstructor + @Data + public static class TransportConfigurationDTO { + private String type; + } + } + + @NoArgsConstructor + @Data + public static class FirmwareIdDTO { + private String entityType; + private String id; + } +} diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/IotService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/IotService.java index a719e4666..95cac126a 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/IotService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/IotService.java @@ -176,6 +176,21 @@ public class IotService { return deviceDto; } + /** + * 根据设备名称获取获取设备信息 + * @param deviceName + * @return + */ + public DeviceByDeviceName apiTenantDevicesByName(String deviceName){ + Map map = new HashMap<>(); + map.put("deviceName",deviceName); + String send = getSend(CommonYmlConfig.URL_IOT_DEVICE_BY_NAME, map); + JSONObject jsonObject = JSON.parseObject(send); + DeviceByDeviceName deviceDto = jsonObject.toJavaObject(DeviceByDeviceName.class); + if (deviceDto.getId()==null) throw new RuntimeException(MessageUtils.message("message.fault.device.notfound")); + return deviceDto; + } + public String getToken() { String token = tokenCache.getIfPresent("token"); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EqEquipmentServiceImpl.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EqEquipmentServiceImpl.java index e85b1f91d..52125a790 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EqEquipmentServiceImpl.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EqEquipmentServiceImpl.java @@ -14,10 +14,7 @@ import lombok.RequiredArgsConstructor; import org.dromara.system.domain.vo.SysUserVo; import org.dromara.system.service.ISysUserService; import org.dromara.web.device.*; -import org.dromara.web.device.iot.DeviceClientMsgDto; -import org.dromara.web.device.iot.DeviceDto; -import org.dromara.web.device.iot.DeviceMsgDto; -import org.dromara.web.device.iot.DeviceServerMsgDto; +import org.dromara.web.device.iot.*; import org.dromara.web.domain.EqArea; import org.dromara.web.domain.bo.*; import org.dromara.web.domain.vo.EqEquipmentDetailVo; @@ -258,6 +255,14 @@ public class EqEquipmentServiceImpl implements IEqEquipmentService { //通过设备mac地址查询设备编码 final String macPrefix = "mock_"; + equipmentCode = macPrefix + equipmentCode; + + //根据设备名称地址查询设备id(设备code) + DeviceByDeviceName deviceByNameDto = iotService.apiTenantDevicesByName(equipmentCode);//无信息会抛异常 无需判断 + if (deviceByNameDto==null) throw new RuntimeException("设备不存在"); + String equipmentName = equipmentCode;//暂时不存设备名称 下面从其他接口获取并存入了 + equipmentCode = deviceByNameDto.getId().getId(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq( EqEquipment::getEquipmentCode,equipmentCode); EqEquipmentVo eqEquipmentVo = baseMapper.selectVoOne(lqw); diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index a72a47dd8..c4abc3b44 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -44,7 +44,7 @@ spring: # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题) url: jdbc:mysql://8.219.157.97:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true username: root - password: root + password: d.u=6m9D)jrVT%! # 从库数据源 slave: lazy: true @@ -95,7 +95,7 @@ spring.data: # 端口,默认为6379 port: 6379 # 数据库索引 - database: 0 + database: 2 # redis 密码必须配置 password: ruoyi123 # 连接超时时间 @@ -264,3 +264,4 @@ iot: telemetry: /api/plugins/telemetry/{entityType}/{entityId}/values/timeseries operate: /api/plugins/rpc/oneway/{deviceId} device: /api/device/{deviceId} + deviceByName: /api/tenant/devices?deviceName={deviceName} diff --git a/ruoyi-admin/src/main/resources/i18n/messages_zh_CN(3).properties b/ruoyi-admin/src/main/resources/i18n/messages_zh_CN(3).properties new file mode 100644 index 000000000..0dd55d608 --- /dev/null +++ b/ruoyi-admin/src/main/resources/i18n/messages_zh_CN(3).properties @@ -0,0 +1,465 @@ +#错误消息 +not.null=* 必须填写 +user.jcaptcha.error=验证码错误 +user.jcaptcha.expire=验证码已失效 +user.not.exists=对不起, 您的账号:{0} 不存在. +user.password.not.match=用户不存在/密码错误 +user.password.retry.limit.count=密码输入错误{0}次 +user.password.retry.limit.exceed=密码输入错误{0}次,帐户锁定{1}分钟 +user.password.delete=对不起,您的账号:{0} 已被删除 +user.blocked=对不起,您的账号:{0} 已禁用,请联系管理员 +role.blocked=角色已封禁,请联系管理员 +user.logout.success=退出成功 +length.not.valid=长度必须在{min}到{max}个字符之间 +user.username.not.blank=用户名不能为空 +user.username.not.valid=* 2到20个汉字、字母、数字或下划线组成,且必须以非数字开头 +user.username.length.valid=账户长度必须在{min}到{max}个字符之间 +user.password.not.blank=用户密码不能为空 +user.password.length.valid=用户密码长度必须在{min}到{max}个字符之间 +user.password.not.valid=* 5-50个字符 +user.email.not.valid=邮箱格式错误 +user.email.not.blank=邮箱不能为空 +user.phonenumber.not.blank=用户手机号不能为空 +user.mobile.phone.number.not.valid=手机号格式错误 +user.login.success=登录成功 +user.register.success=注册成功 +user.register.save.error=保存用户 {0} 失败,注册账号已存在 +user.register.error=注册失败,请联系系统管理人员 +user.notfound=请重新登录 +user.forcelogout=管理员强制退出,请重新登录 +user.unknown.error=未知错误,请重新登录 +auth.grant.type.error=认证权限类型错误 +auth.grant.type.blocked=认证权限类型已禁用 +auth.grant.type.not.blank=认证权限类型不能为空 +auth.clientid.not.blank=认证客户端id不能为空 +##文件上传消息 +upload.exceed.maxSize=上传的文件大小超出限制的文件大小!
允许的文件最大大小是:{0}MB! +upload.filename.exceed.length=上传的文件名最长{0}个字符 +##权限 +no.permission=您没有数据的权限,请联系管理员添加权限 [{0}] +no.create.permission=您没有创建数据的权限,请联系管理员添加权限 [{0}] +no.update.permission=您没有修改数据的权限,请联系管理员添加权限 [{0}] +no.delete.permission=您没有删除数据的权限,请联系管理员添加权限 [{0}] +no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}] +no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}] +repeat.submit.message=不允许重复提交,请稍候再试 +rate.limiter.message=访问过于频繁,请稍候再试 +sms.code.not.blank=短信验证码不能为空 +sms.code.retry.limit.count=短信验证码输入错误{0}次 +sms.code.retry.limit.exceed=短信验证码输入错误{0}次,帐户锁定{1}分钟 +email.code.not.blank=邮箱验证码不能为空 +email.code.retry.limit.count=邮箱验证码输入错误{0}次 +email.code.retry.limit.exceed=邮箱验证码输入错误{0}次,帐户锁定{1}分钟 +xcx.code.not.blank=小程序[code]不能为空 +social.source.not.blank=第三方登录平台[source]不能为空 +social.code.not.blank=第三方登录平台[code]不能为空 +social.state.not.blank=第三方登录平台[state]不能为空 +##租户 +tenant.number.not.blank=租户编号不能为空 +tenant.not.exists=对不起, 您的租户不存在,请联系管理员 +tenant.blocked=对不起,您的租户已禁用,请联系管理员 +tenant.expired=对不起,您的租户已过期,请联系管理员 + + + + +##《登录》login +login.name0=登录 +login.name1=请输入账号 +login.name2=请输入密码 +login.name3=我已阅读并同意签署 +login.name4=立即注册 +login.name5=支持手机号/邮箱登录 +##《注册》register +register.name0=注册 +register.name1=注册账号 +register.name2=请输入账号 +register.name3=请输入密码 +register.name4=请再次输入密码 +register.name5=两次输入的密码不一致 +##《注册成功》registerSuccess +registerSuccess.name0=注册成功 +registerSuccess.name1=您的登录账号 +registerSuccess.name2=您的密码 +registerSuccess.name3=立即登录 +##《首页》homepage +homepage.name0=首页 +homepage.name1=状态 +homepage.name2=已关闭 +homepage.name3=打开 +homepage.name4=关门提醒 +homepage.name5=开门提醒 +homepage.name6=暂停提醒 +homepage.name7=已关门 +homepage.name8=是否开门? +homepage.name9=是否暂停 +homepage.name10=请选择 +##《关门提醒》warningClose +warningClose.name0=关门提醒 +warningClose.name1=设备-deviceName-已开门-num-分钟了,请记得关门 +warningClose.name2=设备 +warningClose.name3=已开门 +warningClose.name4=分钟了,请记得关门 +warningClose.name5=关门 +warningClose.name6=我知道了 +##《添加设备》add +add.name0=添加设备 +add.name1=请输入设备编码 +add.name2=请输入 +add.name3=添加 +## 《添加成功》addSuccess +addSuccess.name0=添加成功 +addSuccess.name1=返回 +addSuccess.name2=继续搜索 +##《添加失败》addFailure +addFailure.name0=添加失败 +addFailure.name1=请输入正确的设备编号后再试 +addFailure.name3=重新添加 +##《设备详情》detail +detail.name0=详情 +##(已关闭 打开10% 打开100%) +detail.name1=状态 +detail.name2=已关闭 +detail.name3=打开 +detail.name4=运行状态 +detail.name5=半开 +detail.name6=关 +detail.name7=停 +detail.name8=开 +detail.name9=半开门 +detail.name10=灯管理 +detail.name11=设置 +detail.name12=min分second秒后关灯 +detail.name13=倒计时重置 +detail.name14=运行次数 +detail.name15=操作次数 +detail.name16=数据日志 +detail.name17=清码 +detail.name18=对码 +detail.name19=开门设置 +detail.name20=已打开 +##《倒计时设置》countdown +countdown.name0=倒计时设置 +countdown.name1=取消 +countdown.name2=确认 +##《数据日志》log +log.name0=数据日志 +log.name1=选择日期 +log.name2=今天 +log.name3=周日 +log.name4=周一 +log.name5=周二 +log.name6=周三 +log.name7=周四 +log.name8=周五 +log.name9=周六 +log.name10=开门提醒 +log.name11=年 +log.name12=月 +log.name13=日 +log.name14=时 +log.name15=分 +log.name16=秒 +##《对码》checkcode +checkcode.name0=对码 +checkcode.name1=对码中 +checkcode.name2=对码成功 +checkcode.name3=对码失败请重试 +##《清码》clearcode +clearcode.name0=提示 +clearcode.name1=请输入登录密码 +clearcode.name2=请输入登录密码才能进行设备清码 +clearcode.name3=取消 +clearcode.name4=确认 +clearcode.name5=密码错误请重试 + +##《设备掉线详情》offDetail +offDetail.name0=详情 +offDetail.name1=设备已离线 + +##《优化-设置》set +set.name0=设置 +set.name1=设备名称 +set.name2=设备位置 +set.name3=反弹力设置 +set.name4=红外感应 +set.name5=开启此功能,电机关门时,如有人或物在门下经过则触发红外感应器 ,门会立即停止关闭,并打开。 +set.name6=行程距离限制 +set.name7=半开门功能开关 +set.name8=半开门高度设置 +set.name9=提醒关门功能开关 +set.name10=提醒关门时间设置 +set.name11=自动关门 +set.name12=打开此功能,当门开到最大时,在设置的倒计时时间内,门没有被控制,则在倒计时结束后,门会自动关闭。 +set.name13=自动关门时间设置 +set.name14=运行次数 +set.name15=WiFi网络 +set.name16=时区 +set.name17=设备型号 +set.name18=序列号 +set.name19=模组版本 +set.name20=MCU版本 +set.name21=删除设备 +set.name22=启动自动开门功能,需要先打开红外保护感应功能 + +##《通用》setCommon +setCommon.detail=详情 +setCommon.add=添加 +setCommon.edit=编辑 +setCommon.delete=删除 +setCommon.alert=提示 +setCommon.cancel=取消 +setCommon.confirm=确认 + +##《未设置详情》noinit +noinit.name0=详情 +noinit.name1=行程未校准 +noinit.name2=设备未校准行程,将不能进行设备控制 +noinit.name3=行程校准教程 +noinit.name4=请在设备上操作 +noinit.name5=设置开门位置 +noinit.name6=1.请长按“SET”键 +noinit.name7=观察:显示器显示“1”闪烁 +noinit.name8=2.再次按下"SET"键 +noinit.name9=观察:显示器显示为“1”常亮 +noinit.name10=3.长按“UP”键,使门至最大开门位置后松手停止 +noinit.name11=观察:门向开门方向运行,当门达到最大开门位置后 +noinit.name12=设置关门位置: +noinit.name13=4.再次按下“SET”键 +noinit.name14=观察:显示器显示为“2”常亮 +noinit.name15=5.长按“向下”键至关闭位置后松手 +noinit.name16=观察:门向关门方向运行,当门达到关闭位置后停止 +noinit.name17=自动校验: +noinit.name18=6.再次按下“SET”键 + + +##《修改设备名称》setEqname +setEqname.name0=修改设备名称 +setEqname.name1=请输入名称 +setEqname.name2=上一页 +setEqname.name3=确认 +##《设备位置修改》setEqarea +setEqarea.name0=修改设备位置 +setEqarea.name1=上一页 +setEqarea.name2=确认 +##《反弹力设置》setRebound +setRebound.name0=电机反弹力 +setRebound.name1=调节反弹力 +setRebound.name2=电机在开门时,若开门的力超出设定范围值,门会立即停止开门; +setRebound.name3=若关门的力超出设定范围值,门会立即停止关闭并开门,此功能可以调整开/关门感应力的范围值。 +##《删除设备》setDelete +setDelete.name0=删除设备 +setDelete.name1=提示 +setDelete.name2=删除设备后,将不能管理设备请谨慎操作! +setDelete.name3=取消 +setDelete.name4=确认删除 +##《时区设置》setZone +setZone.name0=时区 +setZone.name1=选择时间格式 +setZone.name2=时间格式 +##《wifi网络》setWifi +setWifi.name0=wifi网络 +setWifi.name1=提示 +setWifi.name2=已连接WiFi +setWifi.name3=若需更换网络,请确保你在设备旁边后,点击重置WiFi按钮 +setWifi.name4=确认删除 +setWifi.name5=取消 + +## 《开合状态》 +openStatus.name0=已关闭 +openStatus.name1=打开 +## 《运行状态》 +runStatus.name0=停止中 +runStatus.name1=关闭中 +runStatus.name2=开启中 +runStatus.name11=红外故障 +runStatus.name12=电机运转故障 +runStatus.name13=电机维护故障 +runStatus.name14=设备故障 + +## 日志状态 +## 《运行状态》 +logStatus.name0=停止中 +logStatus.name1=关闭中 +logStatus.name2=开启中 +## 《故障状态》 +logStatus.name10=无异常 +logStatus.name11=红外故障 +logStatus.name12=电机运转故障 +logStatus.name13=电机维护故障 +logStatus.name14=设备故障 +## 《故障状态》 +logStatus.name101=烟雾报警 +logStatus.name102=红外触发报警 +logStatus.name103=电机运行报警 +logStatus.name104=电机维修报警 +logStatus.name105=非APP开门提醒 +logStatus.name106=非APP关门提醒 +logStatus.name107=关门故障报警 +logStatus.name108=开门故障报警 +logStatus.name109=开门运行提醒 +logStatus.name110=关门运行提醒 +logStatus.name111=忘记关门提醒 +logStatus.name112=门体手动开启提醒 +logStatus.name113=半开门运行提醒 +logStatus.name114=门体停止运行提醒 + +# 设备共享 +deviceShare.name1 = 设备共享 +deviceShare.name2 = 请输入对方登录账号 +deviceShare.name3 = 温馨提示 +deviceShare.name4 = 设备共享后,对方账号也可以访问管理当前账号所有设备,对方不可删除当前账号设备。 + +# 我的 +my.name0 = 登录账号 +my.name1 = 账号管理 +my.name2 = 分布管理 +my.name3 = 家庭管理 +my.name4 = 设备共享 +my.name5 = 切换语言 +my.name6 = 我的 +my.name7 = 设备配网 +message.fault.device.notfound = 设备不存在 + +# 我的账号 +account.name0=我的账号 +account.name1=退出登录 +account.name2=头像 +account.name3=昵称 +account.name4=邮箱 +account.name5=设置登录密码 +account.name6=修改密码 +account.name7=注销账号 +account.name8=注销后无法恢复,请谨慎操作 +account.name9=退出登录会清除您的登录信息,确认退出吗? +account.name10=重选 +account.name11=关闭 +account.name12=旋转 +account.name13=预览 +account.name14=上传 +account.name15=注销账号后无法恢复,确认注销吗? +account.name16=注销账号 + +# 修改昵称 +accountForm.name0=修改昵称 +accountForm.name1=修改登录密码 +accountForm.name2=绑定邮箱 +accountForm.name3=添加 +accountForm.name4=家庭名称 +accountForm.name5=请输入昵称 +accountForm.name6=请输入名称 +accountForm.name7=请输入旧密码 +accountForm.name8=请输入新密码 +accountForm.name9=请再次输入密码 +accountForm.name10=请输入邮箱 +accountForm.name11=请输入验证码 +accountForm.name12=发送验证码 +accountForm.name13=请稍候…… +accountForm.name14=s后获取 +accountForm.name15=您当前邮箱号为 +accountForm.name16=上一页 +accountForm.name17=确认 +accountForm.name18=两次输入的密码不一致 +accountForm.name19=请输入正确的邮箱 +accountForm.name20=请上传图片 +accountForm.name21=上传/拍照 +accountForm.name22=上传中... +accountForm.name23=上传失败 +accountForm.name24=重新上传 +accountForm.name25=修改头像 + +# devForm 设备共享 +devForm.name0 = 设备共享 +devForm.name1 = 请输入对方登录账号 +devForm.name2 = 温馨提示 +devForm.name3 = 设备共享后,对方账号也可以访问管理当前账号所有设备,对方不可删除当前账号设备。 +devForm.name4 = 上一页 +devForm.name5 = 添加 +devForm.name6 = 设备共享成功,是否继续共享? +# 分布管理 +distribution.name0=分布管理 +distribution.name1=默认 +# family 家庭管理 +family.name0=家庭管理 +family.name1=我的家 +family.name2=我加入的家庭 +family.name3=个区域 +family.name4=个设备 +# 成员管理 +familyDetail.name0=成员管理 +familyDetail.name1=家庭名称 +familyDetail.name2=我加入的家庭 +familyDetail.name3=提示 +familyDetail.name4=移除当前成员后,对方将不能访问当前家庭进行设备管理! +familyDetail.name5=取消 +familyDetail.name6=确定 +familyDetail.name7=删除 +familyDetail.name8=主人 +# 设置语言 +setLanguage.name0=设置语言 +#配网 +ble.name0=设备配网 +ble.name1=执行成功! +ble.name2=环境已存在,不需要重复初始化! +ble.name3=配网环境未得到初始化,请先执行环境初始化! +ble.name4=搜索蓝牙任务,已经停止运行,无需重复停止! +ble.name5=搜索蓝牙任务,已经在运行,无需重复运行! +ble.name6=蓝牙设备不具备扫描WIFI列表的能力! +ble.name7=蓝牙设备未连接,请先连接设备! +ble.name8=传递参数错误! +ble.name9=初始化会话失败,请重新初始化! +ble.name10=预留! +ble.name11=环境检查OK! +ble.name12=位置权限未打开! +ble.name13=GPS未打开! +ble.name14=此设备不支持蓝牙! +ble.name15=需要打开蓝牙开关,才能继续! +ble.name16=需要位置权限,才能继续! +ble.name17=请允许位置权限,才能继续! +ble.name18=需要位置权限,才能继续! +ble.name19=正在连接蓝牙设备,请允许配对或稍后重试!! +ble.name20=已经连接蓝牙设备,请断开蓝牙后重新尝试! +ble.name21=正在供应配网数据,稍后重试! +ble.name22=需要蓝牙权限,才能继续! +ble.name23=需要蓝牙权限,才能继续! +ble.name24= 无需密码,点击确定开始配网! +ble.name25=请输入 +ble.name26= 的密码! +ble.name27=APP需要位置权限,才能继续! +ble.name28=APP需要蓝牙权限,才能继续! +ble.name29=需要根据提示处理! +ble.name30=正在扫描蓝牙设备.... +ble.name31=正在连接蓝牙设备....(最长40S) +ble.name32=参数错误,请重试! +ble.name33=正在获取WIFI列表.... +ble.name34=配网中.... +ble.name35=扫描完成! +ble.name36=请打开蓝牙! +ble.name37=未知错误! +ble.name38=连接蓝牙成功! +ble.name39=连接蓝牙失败!可尝试重新搜索,重启蓝牙,或重启应用! +ble.name40=蓝牙连接断开! +ble.name41=未知错误!尝试手动重启蓝牙,或重启应用! +ble.name42=配网成功! +ble.name43=密码错误,重新尝试! +ble.name44=无法找到网络,重新尝试! +ble.name45=设备断开连接,重新尝试! +ble.name46=失败,可重启APP或重新尝试! +ble.name47=初始化配网环境 +ble.name48=操作说明 +ble.name49=第一步 +ble.name50=第二步 +ble.name51=下一步 +ble.name52=扫描蓝牙设备结果 +ble.name53=提示:没有扫描到蓝牙设备! +ble.name54=提示:点击需要配网的蓝牙设备,进入下一步。 +ble.name55=重新搜索 +ble.name56=获取WIFI列表结果 +ble.name57=提示:没有扫描到可用的WIFI网络! +ble.name58=提示:点击要连接的WIFI网络,输入密码,开始配网! +ble.name59=重新获取 +ble.name60=长按设备WIFI按键10秒以上,LED灯快速闪烁后,松手。 +ble.name61=点击,下一步,按提示输入信息,开始配网。 +ble.name62=提示:输入wifi密码 +ble.name63=提示:开始配网 +ble.name64=返回首页 \ No newline at end of file