添加model

main
还不如一只猪威武 11 months ago
parent 9da872d928
commit 4e055c66eb

@ -6,12 +6,12 @@ set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON) set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOUIC ON)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_CURRENT_BINARY_DIR}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_CURRENT_BINARY_DIR}")
if(WIN32) if(WIN32)
set(CMAKE_PREFIX_PATH $ENV{QT_5_MINGW64}) set(CMAKE_PREFIX_PATH $ENV{QT_5_MINGW64})
set(BOOST_INCLUDES third_party/boost-1_83/include) set(BOOST_INCLUDES third_party/boost-1_83/include)
set(BOOST_LIBRARIES third_party/boost-1_83/lib) # set(BOOST_LIBRARIES third_party/boost-1_83/lib)
endif () endif ()
if(APPLE) if(APPLE)
@ -67,7 +67,7 @@ target_link_libraries(${PROJECT_NAME} PUBLIC
rdkafka rdkafka
rdkafka++ rdkafka++
QxOrm QxOrm
${BOOST_LIBRARIES} # ${BOOST_LIBRARIES}
) )
include(third_party/QxOrm/QxOrm.cmake) include(third_party/QxOrm/QxOrm.cmake)

@ -1,9 +1,9 @@
[database] [database]
host=localhost host=localhost
port=3306 port=3306
database=sim database=zy_electromagnetic
username=root username=root
password=root123 password=root@1234
driver=QMYSQL driver=QMYSQL
[kafka] [kafka]

@ -4,8 +4,6 @@
void SimulationController::route(const QString &key, const QString &message) { void SimulationController::route(const QString &key, const QString &message) {
qDebug() << "form simulation" << key << message; qDebug() << "form simulation" << key << message;
} }
void SimulationController::setStepTime(int stepTime) { void SimulationController::setStepTime(int stepTime) {
@ -17,15 +15,11 @@ void SimulationController::setStepTime(int stepTime) {
} }
void SimulationController::start(long mapId) { void SimulationController::start() {
SimulationService::ins()->start();
} }
void SimulationController::stop(long simId) { void SimulationController::stop() {
SimulationService::ins()->end();
} }

@ -4,6 +4,8 @@
#include "../include/controller/base_controller.h" #include "../include/controller/base_controller.h"
#include "../service/simulation_service.h" #include "../service/simulation_service.h"
#include "../entity/scene.h"
#include "../entity/scene_task.h"
class SimulationController : public BaseController<SimulationController> { class SimulationController : public BaseController<SimulationController> {
@ -20,19 +22,19 @@ public:
* 仿 * 仿
* @param mapId id * @param mapId id
*/ */
void start(long mapId); void start();
/** /**
* 仿 * 仿
* @param simId 仿id * @param simId 仿id
*/ */
void stop(long simId); void stop();
/*** /***
* / 仿 * / 仿
* @param simID * @param simID
*/ */
void pause(long simID); void pause();
/** /**
* *
@ -40,9 +42,6 @@ public:
*/ */
void speed(); void speed();
public slots: public slots:
void route(const QString& key, const QString& message) override; void route(const QString& key, const QString& message) override;

@ -0,0 +1,289 @@
/*
Navicat Premium Data Transfer
Source Server : 10.0.0.10
Source Server Type : MySQL
Source Server Version : 80034
Source Host : 10.0.0.10:3306
Source Schema : zy_electromagnetic
Target Server Type : MySQL
Target Server Version : 80034
File Encoding : 65001
Date: 07/11/2023 09:41:04
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for t_config_communicate_old
-- ----------------------------
DROP TABLE IF EXISTS `t_config_communicate_old`;
CREATE TABLE `t_config_communicate_old` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`SystemName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '通信系统名称',
`CommunicateType` int NOT NULL COMMENT '通信方式: 1:tcp客户端,2:tcp服务端,3:udp发送端,4:udp接收端,5:kafka生产者,6kafak消费者7串口',
`Address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '网络地址',
`Port` int NOT NULL COMMENT '端口',
`LogicAddress` int NULL DEFAULT NULL COMMENT '协议分配的逻辑地址',
`ExtraName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主题名称或串口名称',
`SystemType` tinyint NULL DEFAULT NULL COMMENT '系统类型 1外部2内部3显控与服务器',
`Descraption` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_config_communicate_old
-- ----------------------------
INSERT INTO `t_config_communicate_old` VALUES (3, '红外单光子复合侦测子系统', 3, '10.0.0.1', 10003, 275, '', 1, '显控连接光电');
INSERT INTO `t_config_communicate_old` VALUES (4, '综合信息处理软件1', 4, '127.0.0.1', 10001, 529, NULL, 2, '连接显控软件');
INSERT INTO `t_config_communicate_old` VALUES (5, '接口及管理软件1', 4, '127.0.0.1', 10002, 273, NULL, 2, '连接显控软件');
INSERT INTO `t_config_communicate_old` VALUES (6, '综控模块软件1', 4, '127.0.0.1', 10003, 1041, NULL, 2, '连接显控软件');
INSERT INTO `t_config_communicate_old` VALUES (7, 'KafkaConsumer', 6, '127.0.0.1', 1, NULL, 'main', 2, 'test');
INSERT INTO `t_config_communicate_old` VALUES (8, 'KafkaConsumer1', 6, '127.0.0.1', 1, NULL, 'task', 2, 'test');
INSERT INTO `t_config_communicate_old` VALUES (9, '数据链/塔康信号空中目标分布式侦测定位系统', 1, '10.1.1.0', 8080, 200, '', 1, '');
-- ----------------------------
-- Table structure for t_model_antenna
-- ----------------------------
DROP TABLE IF EXISTS `t_model_antenna`;
CREATE TABLE `t_model_antenna` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
`Name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '天线名称',
`No` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '天线ID',
`AntennaGain` int NULL DEFAULT NULL COMMENT '天线增益',
`PolarMode` tinyint NULL DEFAULT NULL COMMENT '极化方式\r\n0-水平极化\r\n1-垂直极化\r\n2-左旋圆极化\r\n3-右旋圆极化',
`WaveHWidth` double NULL DEFAULT NULL COMMENT '天线波束水平宽度',
`WaveVWidth` double NULL DEFAULT NULL COMMENT '天线波束垂直宽度',
`WaveOrientation` double NULL DEFAULT NULL COMMENT '天线波束方位',
`WavePitching` double NULL DEFAULT NULL COMMENT '天线波束俯仰',
`ScanMode` tinyint NULL DEFAULT NULL COMMENT '天线扫描方式',
`ScanSAngle` double NULL DEFAULT NULL COMMENT '起始扫描角度',
`ScanEAngle` double NULL DEFAULT NULL COMMENT '终止扫描角度',
`ScanRate` double NULL DEFAULT NULL COMMENT '扫描速度',
`GraphName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '渲染模型文件',
`EquId` int NULL DEFAULT NULL COMMENT '装备模型ID',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '天线模型表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_model_antenna
-- ----------------------------
INSERT INTO `t_model_antenna` VALUES (2, '大型鱼骨天线', 'YG-001', 20, 0, 1, 1, 2, 0, 1, 78, 128, 1, 'antenna.gra', 4);
-- ----------------------------
-- Table structure for t_model_equipment
-- ----------------------------
DROP TABLE IF EXISTS `t_model_equipment`;
CREATE TABLE `t_model_equipment` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`Name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '装备名称',
`Type` int NULL DEFAULT NULL COMMENT '装备类型\r\n0:通信装备\r\n1:侦察装备\r\n2:干扰装备',
`No` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '装备编号',
`PowerStatus` bit(1) NULL DEFAULT NULL COMMENT '开关机状态\r\n0-关机\r\n1-开机',
`TXTargetID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '通信目标ID',
`Distance` double NULL DEFAULT NULL COMMENT '最大通信距离',
`GroupNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '组网号',
`PMId` int NULL DEFAULT NULL COMMENT '平台模型ID',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '装备模型库' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_model_equipment
-- ----------------------------
INSERT INTO `t_model_equipment` VALUES (4, '发射装备111', 0, 'EQ-SE-001', b'1', '2', 0, 't-01', 3);
-- ----------------------------
-- Table structure for t_model_platform
-- ----------------------------
DROP TABLE IF EXISTS `t_model_platform`;
CREATE TABLE `t_model_platform` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`Name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '平台模型名称',
`No` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '平台ID',
`Category` tinyint NULL DEFAULT NULL COMMENT '0-固定\r\n1-车载\r\n2-机载\r\n3-舰载\r\n4-星载\r\n5-弹载',
`MaxSpeed` double NULL DEFAULT NULL COMMENT '最大速度',
`TruningRadius` double NULL DEFAULT NULL COMMENT '转弯半径',
`GraphName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '渲染模型文件',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '平台模型表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_model_platform
-- ----------------------------
INSERT INTO `t_model_platform` VALUES (3, '战斗机模型', 'ZDJ-001', 2, 1000, 123, 'plan.gra');
-- ----------------------------
-- Table structure for t_model_receiver
-- ----------------------------
DROP TABLE IF EXISTS `t_model_receiver`;
CREATE TABLE `t_model_receiver` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`Name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '接收机名称',
`No` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '接收机ID',
`StartFreq` double NULL DEFAULT NULL COMMENT '起始工作频率(MHz)',
`EndFreq` double NULL DEFAULT NULL COMMENT '终止工作频率(MHz)',
`CenterFreq` double NULL DEFAULT NULL COMMENT '中心频率(MHz)',
`BandWidth` double NULL DEFAULT NULL COMMENT '工作带宽(MHz)',
`Sensitivity` double NULL DEFAULT NULL COMMENT '接收灵敏度(dBm)',
`FreqStandardDeviation` double NULL DEFAULT NULL COMMENT '频率标准差(Mhz)',
`FreqAvg` double NULL DEFAULT NULL COMMENT '频率均值(MHz)',
`BandStandardDeviation` double NULL DEFAULT NULL COMMENT '带宽标准差',
`BandAvg` double NULL DEFAULT NULL COMMENT '带宽均值',
`TimeStandardDeviation` double NULL DEFAULT NULL COMMENT '时间标准差',
`TimeAvg` double NULL DEFAULT NULL COMMENT '时间均值',
`DirecStandardDeviation` double NULL DEFAULT NULL COMMENT '方位标准差',
`DirecAvg` double NULL DEFAULT NULL COMMENT '方位均值',
`GraphName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '渲染模型文件',
`EquId` int NULL DEFAULT NULL COMMENT '装备模型ID',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '接收机模型表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_model_receiver
-- ----------------------------
INSERT INTO `t_model_receiver` VALUES (2, '小型窄带接收机', 'RE-001', 1, 30, 10, 3, 1, 0, 10, 1, 1, 1, 1, 1, 1, 'receiver.gra', 4);
-- ----------------------------
-- Table structure for t_model_sender
-- ----------------------------
DROP TABLE IF EXISTS `t_model_sender`;
CREATE TABLE `t_model_sender` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`Name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '发射机名称',
`No` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '发射机ID',
`StartFreq` double NULL DEFAULT NULL COMMENT '起始工作频率(MHz)',
`EndFreq` double NULL DEFAULT NULL COMMENT '终止工作频率(MHz)',
`CenterFreq` double NULL DEFAULT NULL COMMENT '中心频率(MHz)',
`BandWidth` double NULL DEFAULT NULL COMMENT '工作带宽(MHz)',
`Power` double NULL DEFAULT NULL COMMENT '发射功率',
`GraphName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '渲染模型文件',
`EquId` int NULL DEFAULT NULL COMMENT '装备模型ID',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '发射机模型表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_model_sender
-- ----------------------------
INSERT INTO `t_model_sender` VALUES (2, '大型10KW发射机', 'SE-001', 1, 30, 10, 3, 0, 'sender.gra', 4);
-- ----------------------------
-- Table structure for t_model_signal
-- ----------------------------
DROP TABLE IF EXISTS `t_model_signal`;
CREATE TABLE `t_model_signal` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`Category` int NULL DEFAULT NULL COMMENT '信号类型\r\n1.模拟信号\r\n2.数字信号\r\n3.跳频信号\r\n4.Link4A信号',
`SignalStyle` int NULL DEFAULT NULL COMMENT '信号样式',
`SNR` int NULL DEFAULT NULL COMMENT '信噪比',
`CarrierFreq` int NULL DEFAULT NULL COMMENT '载波频率(Hz)',
`BandWidth` double NULL DEFAULT NULL COMMENT '信号带宽',
`Sampling` int NULL DEFAULT NULL COMMENT '采样率',
`Baud` int NULL DEFAULT NULL COMMENT '波特率',
`StartCenterFreq` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '起始中心频率Hz(多个用逗号隔开)',
`EndCenterFreq` int NULL DEFAULT NULL COMMENT '终止中心频率Hz',
`Rate` int NULL DEFAULT NULL COMMENT '跳速(hop/s)',
`FreqCount` int NULL DEFAULT NULL COMMENT '频点个数',
`WorkMode` tinyint NULL DEFAULT NULL COMMENT '工作模式',
`SenderId` int NULL DEFAULT NULL COMMENT '发射机模型ID',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '信号模型表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_model_signal
-- ----------------------------
INSERT INTO `t_model_signal` VALUES (3, 1, 1, 1, 30000000, 1, 9600, 9600, '12843000,9750000', 28500000, 1, 1, 1, 2);
-- ----------------------------
-- Table structure for t_scene
-- ----------------------------
DROP TABLE IF EXISTS `t_scene`;
CREATE TABLE `t_scene` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`SceneName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '场景名称',
`TerrainType` int NULL DEFAULT NULL COMMENT '地形类型 \r\n1.山地\r\n2.平原\r\n3.沙漠\r\n4.城市',
`WeatherType` int NULL DEFAULT NULL COMMENT '天气类型\r\n1.晴朗\r\n2.雪天\r\n3.雨天\r\n4.阴天',
`RectInfo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '地形的矩形范围',
`BackSignalId` int NULL DEFAULT NULL COMMENT '背景信号Id',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '场景表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_scene
-- ----------------------------
INSERT INTO `t_scene` VALUES (1, '雪地-低温-场景', 1, 1, '126.8101,31.0501|133.0921,33.8190', 1);
-- ----------------------------
-- Table structure for t_scene_task
-- ----------------------------
DROP TABLE IF EXISTS `t_scene_task`;
CREATE TABLE `t_scene_task` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`TaskName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '任务名称',
`SceneId` int NULL DEFAULT NULL COMMENT '场景Id',
`TaskStartTime` datetime NULL DEFAULT NULL COMMENT '任务开始时间',
`TaskEndTime` datetime NULL DEFAULT NULL COMMENT '任务结束时间',
`Status` int NULL DEFAULT NULL COMMENT '任务状态',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '任务' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_scene_task
-- ----------------------------
INSERT INTO `t_scene_task` VALUES (1, '仿真任务1', 1, '2023-10-23 15:13:10', '2023-10-23 17:00:00', 62663472);
-- ----------------------------
-- Table structure for t_scene_task_plan
-- ----------------------------
DROP TABLE IF EXISTS `t_scene_task_plan`;
CREATE TABLE `t_scene_task_plan` (
`Id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`TaskId` int NULL DEFAULT NULL COMMENT '任务ID',
`PMId` int NULL DEFAULT NULL COMMENT '平台ID',
`Position` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '初始位置',
`Team` int NULL DEFAULT NULL COMMENT '队伍\r\n1.红方\r\n2.蓝方',
`TrackPath` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '移动轨迹',
PRIMARY KEY (`Id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_scene_task_plan
-- ----------------------------
INSERT INTO `t_scene_task_plan` VALUES (1, 1, 3, '110,110', 1, '');
INSERT INTO `t_scene_task_plan` VALUES (2, 1, 3, '140,110', 2, NULL);
-- ----------------------------
-- Table structure for t_user_info_old
-- ----------------------------
DROP TABLE IF EXISTS `t_user_info_old`;
CREATE TABLE `t_user_info_old` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
`name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户名',
`password` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '密码MD5加密',
`role` int NULL DEFAULT NULL,
`authority` int NULL DEFAULT NULL COMMENT '和权限表1248与运算1有0无',
`usable` int NULL DEFAULT NULL COMMENT '是否可用0未启用1启用',
`level` int NULL DEFAULT NULL COMMENT '用户等级0-50最高',
`createTime` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 23 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of t_user_info_old
-- ----------------------------
INSERT INTO `t_user_info_old` VALUES (1, '管理员', '666', 1, 15, 1, 0, '2023-09-13 14:51:14');
INSERT INTO `t_user_info_old` VALUES (3, '修改', 'ta', 1, 15, 1, 0, '2023-09-14 16:15:48');
INSERT INTO `t_user_info_old` VALUES (4, '添加', 'ta', 1, 15, 1, 0, '2023-09-14 16:18:16');
INSERT INTO `t_user_info_old` VALUES (5, '修改', 'aa', 1, 3, 1, 0, '2023-09-14 16:21:21');
INSERT INTO `t_user_info_old` VALUES (9, '添加2', 'ta', 1, 7, 1, 0, '2023-09-25 14:23:43');
INSERT INTO `t_user_info_old` VALUES (13, '添加3', 'ta', 1, 12, 1, 0, '2023-09-25 14:36:37');
INSERT INTO `t_user_info_old` VALUES (15, '新增', 'ta', 1, 5, 1, 0, '2023-09-25 14:39:35');
INSERT INTO `t_user_info_old` VALUES (19, '新增2', 'ta', 1, 7, 1, 0, '2023-09-25 15:19:41');
INSERT INTO `t_user_info_old` VALUES (20, '新增3', 'ta', 1, 5, 1, 0, '2023-09-25 15:32:10');
INSERT INTO `t_user_info_old` VALUES (21, '添加4', 'ta', 2, 1, 1, 0, '2023-09-25 15:51:22');
INSERT INTO `t_user_info_old` VALUES (22, '添加5', 'ta', 3, 9, 1, 0, '2023-09-25 15:57:18');
INSERT INTO `t_user_info_old` VALUES (23, '添加6', 'ta', 2, 15, 1, 0, '2023-09-25 16:21:18');
SET FOREIGN_KEY_CHECKS = 1;

@ -2,10 +2,12 @@
#ifndef CSCI_MAP_ENTITY_H #ifndef CSCI_MAP_ENTITY_H
#define CSCI_MAP_ENTITY_H #define CSCI_MAP_ENTITY_H
//#ifndef _MSC_VER #ifndef _MSC_VER
//#include <precompiled.h> #include <precompiled.h>
//#endif #else
#include <QxOrm.h> #include <QxOrm.h>
#endif
#include <QxOrm_Impl.h> #include <QxOrm_Impl.h>
class MapEntity{ class MapEntity{

@ -73,7 +73,7 @@ void KafkaHandler::_receive(RdKafka::Message *message) {
QString key; QString key;
if(message->key()){ if(message->key()){
key = QString::fromStdString(*message->key()); key = QString::fromStdString(*message->key());
qDebug() << "receive message key:" << key; // qDebug() << "receive message key:" << key;
} }
// TODO header 校验 message->headers() // TODO header 校验 message->headers()
@ -84,15 +84,15 @@ void KafkaHandler::_receive(RdKafka::Message *message) {
const RdKafka::Headers::Header hdr = hdrs[i]; const RdKafka::Headers::Header hdr = hdrs[i];
if (hdr.value() != nullptr){ if (hdr.value() != nullptr){
std::string value (static_cast<const char*>(hdr.value()), hdr.value_size()); std::string value (static_cast<const char*>(hdr.value()), hdr.value_size());
qDebug() << "receive message headers: " << QString::fromStdString(hdr.key()) // qDebug() << "receive message headers: " << QString::fromStdString(hdr.key())
<< "-" << QString::fromStdString(value); // << "-" << QString::fromStdString(value);
} }
} }
} }
std::string payload (static_cast<const char*>(message->payload()), message->len()); std::string payload (static_cast<const char*>(message->payload()), message->len());
auto msg = QString::fromStdString(payload); auto msg = QString::fromStdString(payload);
qDebug() << "receive message payload:" << msg; // qDebug() << "receive message payload:" << msg;
emit getIns()->handle(key, msg); emit getIns()->handle(key, msg);
} }

@ -35,7 +35,7 @@ void init(){
// 初始化日志, 开启会记录日志到文件 // 初始化日志, 开启会记录日志到文件
// LogHandler::init(); // LogHandler::init();
// 初始化数据库 // 初始化数据库
// DataBaseHandler::init(); DataBaseHandler::init();
// 初始化Kafka // 初始化Kafka
KafkaHandler::init(); KafkaHandler::init();
// 初始化Controller // 初始化Controller
@ -64,20 +64,20 @@ int main(int argc, char *argv[]) {
QCoreApplication app(argc, argv); QCoreApplication app(argc, argv);
// 加载配置文件 // 加载配置文件
// loadConfig(QCoreApplication::applicationDirPath() + "/application.ini"); loadConfig(QCoreApplication::applicationDirPath() + "/application.ini");
// 初始化系统 // 初始化系统
// init(); init();
/// test -start /// test -start
// qDebug() << "init"; qDebug() << "init";
// QString msg = "{\"name\":\"张三\"}"; QString msg = "{\"name\":\"张三\"}";
// QString key = "loadMap"; QString key = "loadMap";
// auto headers = RdKafka::Headers::create(); auto headers = RdKafka::Headers::create();
// headers->add("token", "safdasgdagafgafdsghfsjh"); headers->add("token", "safdasgdagafgafdsghfsjh");
// KafkaHandler::message("test_topic" , msg, key , headers); KafkaHandler::message("test_topic" , msg, key , headers);
// boost_test(); // boost_test();
bessel_test(); // bessel_test();
qDebug() << "sds"; qDebug() << "sds";
/// test -end /// test -end

@ -1,2 +1,55 @@
#include "simulation_service.h" #include "simulation_service.h"
SimulationService::SimulationService():_run(false),_landform(0), _weather(0), _interval(200){
_timer = new QTimer(this);
}
SimulationService::~SimulationService() = default;
void SimulationService::addTask(const SimulationTask& task) {
QObject::connect(this, SIGNAL(boost()), &task, SLOT(run()));
_tasks.push_back((SimulationTask *const &) task);
}
void SimulationService::start() {
QObject::connect(_timer, SIGNAL(timeout()), this, SLOT(compute()));
_timer->start(_interval);
}
void SimulationService::end() {
_timer->stop();
}
void SimulationService::clear() {
// TODO 重置
}
void SimulationService::compute() {
if (_run){
emit boost();
}
}
SimulationService *SimulationService::ins() {
static SimulationService simulationService;
return &simulationService;
}
void SimulationService::set(int landform, int weather, int interval, const QDateTime& startTime, const QDateTime& endTime) {
_landform = landform;
_weather = weather;
_interval = interval;
_startTime = startTime;
_endTime = endTime;
}
void SimulationService::pause() {
_run = !_run;
}

@ -3,6 +3,9 @@
#define CSCI_SIMULATION_SERVICE_H #define CSCI_SIMULATION_SERVICE_H
#include <QObject> #include <QObject>
#include <QTimer>
#include <QDateTime>
#include "simulation_task.h"
#include "../include/code/err_code.h" #include "../include/code/err_code.h"
enum SimulationCommand { START, STOP , PAUSE, RESUME, EXPEDITE, RETARD }; enum SimulationCommand { START, STOP , PAUSE, RESUME, EXPEDITE, RETARD };
@ -11,10 +14,49 @@ class SimulationService : public QObject{
Q_OBJECT Q_OBJECT
private:
bool _run; // 运行开关
QTimer *_timer; // 定时器
int _landform; // 地形
int _weather; //天气
int _interval; // 步长
QDateTime _startTime; // 开始时间
QDateTime _endTime; // 结束时间
QList<SimulationTask *> _tasks;
private:
SimulationService();
~SimulationService() override;
public: public:
void set(int landform, int weather, int interval, const QDateTime& startTime,const QDateTime& endTime);
void addTask(const SimulationTask& task);
void start();
void pause();
void end();
void clear();
public:
static SimulationService* ins();
public: signals:
void boost();
public slots:
void compute();
}; };

@ -0,0 +1,17 @@
#include "simulation_task.h"
SimulationTask::SimulationTask() = default;
SimulationTask::SimulationTask(const SimulationTask &task) {
}
void SimulationTask::run() {
QtConcurrent::run(compute, _state);
}
void SimulationTask::setSate(const QString& key, const QVariant& state) {
_state.insert(key, state);
}

@ -0,0 +1,35 @@
#ifndef CSCI_SIMULATION_TASK_H
#define CSCI_SIMULATION_TASK_H
#include <QObject>
#include <QtConcurrent>
class SimulationTask:public QObject {
Q_OBJECT
private:
QHash<QString, QVariant> _state;
public:
SimulationTask();
SimulationTask(const SimulationTask &task);
public:
void setSate(const QString& key, const QVariant& state);
public:
// TODO 具体模型需要实现的计算
static void compute(QHash<QString, QVariant> state);
public:signals:
void feather(QVariant state);
public slots:
void run();
};
#endif //CSCI_SIMULATION_TASK_H

@ -9,10 +9,7 @@ void TimerService::start() {
if(_run){ if(_run){
} }
_run = true; _run = true;
_timer.start(_interval); _timer.start(_interval);
} }

Loading…
Cancel
Save