- Changed default MariaDB password in docker-compose.yml from 'SE3112' to '3112'. - Added user creation and permissions for 'wago' in the MariaDB initialization script. - Updated unit options in App.jsx to include a digital/bool option. - Enhanced LoginScreen component to support inline display and improved error handling. - Improved point filtering logic in PointLibrary and adjusted default unit handling. - Refined authentication checks for dashboard and admin permissions. - Simplified API calls by removing unnecessary token checks. - Enhanced TrendChart component with better data handling and formatting. - Updated CSS styles for improved layout and responsiveness in trend views and sidebar.
69 lines
2.0 KiB
SQL
69 lines
2.0 KiB
SQL
CREATE DATABASE IF NOT EXISTS `wago` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
USE `wago`;
|
|
|
|
DELIMITER //
|
|
|
|
CREATE PROCEDURE create_isp_tables()
|
|
BEGIN
|
|
DECLARE table_index INT DEFAULT 1;
|
|
DECLARE value_index INT DEFAULT 1;
|
|
DECLARE value_columns LONGTEXT DEFAULT '';
|
|
DECLARE stmt_sql LONGTEXT;
|
|
|
|
WHILE value_index <= 200 DO
|
|
SET value_columns = CONCAT(value_columns, ', `Wert', value_index, '` TEXT NULL');
|
|
SET value_index = value_index + 1;
|
|
END WHILE;
|
|
|
|
WHILE table_index <= 20 DO
|
|
SET stmt_sql = CONCAT(
|
|
'CREATE TABLE IF NOT EXISTS `isp',
|
|
LPAD(table_index, 2, '0'),
|
|
'` (',
|
|
'`id` INT(11) NOT NULL AUTO_INCREMENT,',
|
|
'`datum` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,',
|
|
'`userlevel` INT(1) NOT NULL',
|
|
value_columns,
|
|
', PRIMARY KEY (`id`)',
|
|
') ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;'
|
|
);
|
|
|
|
PREPARE stmt FROM stmt_sql;
|
|
EXECUTE stmt;
|
|
DEALLOCATE PREPARE stmt;
|
|
|
|
SET table_index = table_index + 1;
|
|
END WHILE;
|
|
END//
|
|
|
|
CALL create_isp_tables()//
|
|
DROP PROCEDURE create_isp_tables//
|
|
|
|
DELIMITER ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `app_users` (
|
|
`id` INT NOT NULL AUTO_INCREMENT,
|
|
`username` VARCHAR(80) NOT NULL,
|
|
`name` VARCHAR(120) NOT NULL,
|
|
`email` VARCHAR(160) NULL,
|
|
`password_hash` VARCHAR(255) NOT NULL,
|
|
`role` ENUM('viewer', 'technician', 'admin') NOT NULL DEFAULT 'viewer',
|
|
`active` TINYINT(1) NOT NULL DEFAULT 1,
|
|
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uniq_app_users_username` (`username`),
|
|
UNIQUE KEY `uniq_app_users_email` (`email`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
|
|
CREATE USER IF NOT EXISTS 'root'@'%' IDENTIFIED BY 'SE3112';
|
|
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
|
|
FLUSH PRIVILEGES;
|
|
|
|
|
|
|
|
CREATE USER IF NOT EXISTS 'wago'@'%' IDENTIFIED BY '3112';
|
|
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX ON `wago`.* TO 'wago'@'%';
|
|
FLUSH PRIVILEGES;
|