更新redis操作

This commit is contained in:
2026-01-20 10:51:17 +08:00
parent 022eac2d97
commit 2948d2567c
6 changed files with 77 additions and 183 deletions

View File

@@ -2,15 +2,10 @@ import 'dart:convert';
import 'dart:io';
import 'package:EasyDartModule/EasyDartModule.dart';
import 'package:EasyDartModule/base/database/DataBase.dart';
import 'package:EasyDartModule/base/discovery/Discovery.dart';
import 'package:EasyDartModule/base/logger/Logger.dart';
import 'package:EasyDartModule/base/mqtt/mqtt.dart';
import 'package:EasyDartModule/base/redis/redis.dart';
import 'package:EasyDartModule/base/storage/Storage.dart';
import 'package:EasyDartModule/base/websocket/WebSocket.dart';
import './const/Constants.dart';
import './controller/AreaController.dart';
import './controller/BedController.dart';
import './controller/BedTypeController.dart';
@@ -23,138 +18,27 @@ import './controller/RoomTypeController.dart';
// import './service/AlarmRuleService.dart';
import './controller/FileUploadController.dart';
import 'handler/MqttHandler.dart';
import 'const/ServiceConstant.dart';
// import 'service/DailyTaskService.dart';
import './const/CommonVariables.dart';
void main(List<String> args) async {
if (true) {
initEasyDartModule();
await EasyDartModule.redis.connect();
// return;
}
if (false) {
String? ep = Platform.environment["vsbs_server_port"];
int port = ep == null ? 9200 : int.parse(ep);
String nacosServer =
Platform.environment["nacos_server"] ?? "http://10.20.1.2:8848";
String nacosNameSpaceId = Platform.environment["nacos_namespaceId"] ??
"d3b43bfe-f584-4b8f-a390-353abc69c856";
String nacosBindIp = Platform.environment["nacos_bindIp"] ?? "";
//初始化服务发现
EasyDartModule.init(
discoveryConfig:
DiscoveryConfig(host: nacosServer, namespaceId: nacosNameSpaceId));
//注册实例
await EasyDartModule.discovery
.registerInstance(Constants.serviceName, nacosBindIp, Constants.port);
//查询日志服务配置信息
String logger = await EasyDartModule.discovery.getConfig("logger");
var loggerConfig = jsonDecode(logger);
//查询数据库配置信息
String mongodb = await EasyDartModule.discovery.getConfig("mongodb");
var mongodbConfig = jsonDecode(mongodb);
//查询存储配置
String storage = await EasyDartModule.discovery.getConfig("storage");
var storageConfig = jsonDecode(storage);
//查询mqtt配置
String mqtt = await EasyDartModule.discovery.getConfig("mqtt");
var mqttConfig = jsonDecode(mqtt);
var redisConfig =
jsonDecode(await EasyDartModule.discovery.getConfig("redis"));
var gatewayConfig =
jsonDecode(await EasyDartModule.discovery.getConfig("gateway"));
ServiceConstant.service_address = gatewayConfig["host"];
// ServiceConstant.service_address = "https://vsbst-api.he-info.cn";
MqttHandler mqttHandler = MqttHandler();
EasyDartModule.init(
loggerConfig: LoggerConfig(
host: loggerConfig["host"], serviceName: Constants.serviceName),
dataBaseConfig: DataBaseConfig(
host: mongodbConfig["host"],
userName: mongodbConfig["userName"],
password: mongodbConfig["password"],
dataBase: mongodbConfig["dataBase"]),
storageConfig: StorageConfig(
host: storageConfig["host"],
port: storageConfig["port"],
accessKey: storageConfig["accessKey"],
secretKey: storageConfig["secretKey"]),
mqttConfig: MqttConfig(
host: mqttConfig["host"],
clientId: mqttConfig["clientId"],
topic: [mqttConfig["topic"]],
messgae: (topic, msg) {
mqttHandler.message(topic, msg);
// print("topic: $topic, msg:$msg");
}),
redisConfig:
RedisConfig(host: redisConfig["host"], port: redisConfig["port"]));
EasyDartModule.webServer.addHandler(RoomController());
EasyDartModule.webServer.addHandler(RoomTypeController());
EasyDartModule.webServer.addHandler(BedTypeController());
EasyDartModule.webServer.addHandler(BedController());
EasyDartModule.webServer.addHandler(DiseaseTypeController());
EasyDartModule.webServer.addHandler(PersonController());
EasyDartModule.webServer.addHandler(PersonTypeController());
// EasyDartModule.webServer.addHandler(StatisticsController());
EasyDartModule.webServer.addHandler(AreaController());
EasyDartModule.webServer.addHandler(FileUploadController());
EasyDartModule.webServer.start(port);
//测试mqtt 订阅
// EasyDartModule.mqtt
// .subscribe("/vsbs/sensor/mattress/676a227a1e121f98e5000000", 0);
// EasyDartModule.mqtt.connect();
// EasyDartModule.mqtt.
//推送
// EasyDartModule.mqtt.publish(topic, msg);
//测试db
// Future.delayed(Duration(seconds: 5), () async {
// var db = EasyDartModule.dataBase;
// var r = await db.query("uc_sys_user");
// print(r);
// });
//测试storage
// String bucketName = "test-bu";
// String objectName = "/aa/bb/objectName.gif";
// EasyDartModule.storage.createBucket(bucketName).then((v) {
// EasyDartModule.storage
// .uploadObject(bucketName, objectName, File("a.gif").readAsBytesSync())
// .then((path) {
// print("上传文件: $path");
// EasyDartModule.storage.getObject(bucketName, objectName).then((data) {
// print("下载文件");
// File("b.gif").writeAsBytesSync(data);
// print("下载完毕");
// });
// });
// // EasyDartModule.storage.deleteObject(bucketName, "objectName");
// });
await EasyDartModule.redis.connect();
// AlarmRuleService();
// DailyTaskService();
// EasyDartModule.logger
// .info("${Constants.serviceName}启动完毕", tag: Constants.serviceName);
}
initEasyDartModule();
}
void initEasyDartModule() {
Future<void> initEasyDartModule() async {
try {
String? web = Platform.environment["web_port"] ?? "9200";
List<String> redis =
(Platform.environment["redis"] ?? "127.0.0.1:6379").split(":");
if (redis.length == 1) {
redis.add("6379");
}
EasyDartModule.init(
loggerConfig: LoggerConfig(
host: ServiceConstant.logService, serviceName: "快检报告服务"),
redisConfig: RedisConfig(host: "192.168.1.129", port: 6379),
redisConfig: RedisConfig(host: redis[0], port: int.parse(redis[1])),
webSocketConfig:
WebSocketConfig(ServiceConstant.webSocketService, (data) {
// 接收到服务消息
@@ -193,6 +77,10 @@ void initEasyDartModule() {
print("object");
}));
while (!EasyDartModule.redis.isConnected()) {
await Future.delayed(Duration(seconds: 1));
}
EasyDartModule.webServer.addHandler(RoomController());
EasyDartModule.webServer.addHandler(RoomTypeController());
EasyDartModule.webServer.addHandler(BedTypeController());
@@ -203,7 +91,9 @@ void initEasyDartModule() {
// EasyDartModule.webServer.addHandler(StatisticsController());
EasyDartModule.webServer.addHandler(AreaController());
EasyDartModule.webServer.addHandler(FileUploadController());
EasyDartModule.webServer.start(9200,);
EasyDartModule.webServer.start(
int.parse(web),
);
} catch (e) {
print(e);
EasyDartModule.logger.error("websocket连接失败--》:$e");

View File

@@ -71,7 +71,7 @@ class AreaService {
Future<void> _recoverExperiences() async {
try {
// 使用keys方法获取所有体验中的设备
final keys = await edm.EasyDartModule.redis.keys("experience_*");
final keys = await edm.EasyDartModule.redis.scanKeys("experience_*");
for (var key in keys) {
try {