Merge pull request 'feature/task-15-add_db' (#23) from feature/task-15-add_db into master
Reviewed-on: L_DelOff/ServerMonitorBot#23feature/task-26-template
commit
f08d88355a
14
pom.xml
14
pom.xml
|
@ -47,8 +47,18 @@
|
||||||
<artifactId>jsch</artifactId>
|
<artifactId>jsch</artifactId>
|
||||||
<version>0.1.55</version>
|
<version>0.1.55</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.liquibase</groupId>
|
||||||
|
<artifactId>liquibase-core</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.postgresql</groupId>
|
||||||
|
<artifactId>postgresql</artifactId>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|
|
@ -20,8 +20,6 @@ public class TelegramBotController extends TelegramLongPollingBot {
|
||||||
|
|
||||||
final TelegramBot telegramBot;
|
final TelegramBot telegramBot;
|
||||||
final SshRepository sshRepository;
|
final SshRepository sshRepository;
|
||||||
final TelegramBotKeyboard telegramBotKeyboard;
|
|
||||||
final UnameChatButtonAggregate unameChatButtonAggregate;
|
|
||||||
final TelegramBotService telegramBotService;
|
final TelegramBotService telegramBotService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
package ru.ldeloff.servermonitorbot.model;
|
||||||
|
|
||||||
|
import jakarta.persistence.*;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Entity
|
||||||
|
@Data
|
||||||
|
@Table(name = "roles")
|
||||||
|
public class Role {
|
||||||
|
@Id
|
||||||
|
@Column(name = "id")
|
||||||
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
|
private long id;
|
||||||
|
|
||||||
|
@Column(name = "role")
|
||||||
|
private String role;
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
package ru.ldeloff.servermonitorbot.model;
|
||||||
|
|
||||||
|
import jakarta.persistence.*;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Entity
|
||||||
|
@Data
|
||||||
|
@Table(name = "users")
|
||||||
|
public class User {
|
||||||
|
@Id
|
||||||
|
@Column(name = "id")
|
||||||
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Column(name = "login")
|
||||||
|
private Long login;
|
||||||
|
|
||||||
|
@ManyToOne
|
||||||
|
@JoinColumn(name = "id_role")
|
||||||
|
private Role role;
|
||||||
|
}
|
|
@ -1,3 +1,21 @@
|
||||||
|
spring:
|
||||||
|
application:
|
||||||
|
name: ServerMonitorBot
|
||||||
|
datasource:
|
||||||
|
url: jdbc:postgresql://localhost:5432/servermonitorbot
|
||||||
|
username: servermonitorbot
|
||||||
|
password: servermonitorbot
|
||||||
|
jpa:
|
||||||
|
hibernate:
|
||||||
|
ddl-auto: none
|
||||||
|
liquibase:
|
||||||
|
enabled: true
|
||||||
|
change-log: classpath:db/scripts/changelog-master.xml
|
||||||
|
url: jdbc:postgresql://localhost:5432/servermonitorbot
|
||||||
|
user: servermonitorbot
|
||||||
|
password: servermonitorbot
|
||||||
|
liquibase-schema: "liquibase"
|
||||||
|
default-schema: "servermonitorbot"
|
||||||
bot:
|
bot:
|
||||||
name: "ServerMonitorBot"
|
name: "ServerMonitorBot"
|
||||||
token: "token"
|
token: "token"
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<databaseChangeLog
|
||||||
|
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||||
|
|
||||||
|
<include file="release_0_0_1/changelog.xml" relativeToChangelogFile="true"/>
|
||||||
|
|
||||||
|
|
||||||
|
</databaseChangeLog>
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<databaseChangeLog
|
||||||
|
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||||
|
|
||||||
|
<include file="scripts/01_create_table_users.sql" relativeToChangelogFile="true"/>
|
||||||
|
<include file="scripts/02_create_table_roles.sql" relativeToChangelogFile="true"/>
|
||||||
|
<include file="scripts/03_add_FK_users_to_roles.sql" relativeToChangelogFile="true"/>
|
||||||
|
<include file="scripts/04_add_roles.sql" relativeToChangelogFile="true"/>
|
||||||
|
|
||||||
|
</databaseChangeLog>
|
|
@ -0,0 +1,17 @@
|
||||||
|
--liquibase formatted sql
|
||||||
|
|
||||||
|
--changeset L_DelOff:create_table_users rollbackSplitStatements:true
|
||||||
|
--comment: Создание таблицы пользователей
|
||||||
|
CREATE TABLE users
|
||||||
|
(
|
||||||
|
id integer PRIMARY KEY,
|
||||||
|
login VARCHAR(128),
|
||||||
|
id_role integer
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMENT ON TABLE users IS 'Пользователи';
|
||||||
|
COMMENT ON COLUMN users.id IS 'Идентификатор пользователя';
|
||||||
|
COMMENT ON COLUMN users.login IS 'Логин пользователя';
|
||||||
|
COMMENT ON COLUMN users.id_role IS 'Ссылка на роль пользователя';
|
||||||
|
|
||||||
|
--rollback DROP TABLE users;
|
|
@ -0,0 +1,15 @@
|
||||||
|
--liquibase formatted sql
|
||||||
|
|
||||||
|
--changeset L_DelOff:create_table_roles rollbackSplitStatements:true
|
||||||
|
--comment: Создание таблицы ролей
|
||||||
|
CREATE TABLE roles
|
||||||
|
(
|
||||||
|
id integer PRIMARY KEY,
|
||||||
|
role VARCHAR(128)
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMENT ON TABLE roles IS 'Пользователи';
|
||||||
|
COMMENT ON COLUMN roles.id IS 'Идентификатор пользователя';
|
||||||
|
COMMENT ON COLUMN roles.role IS 'Логин пользователя';
|
||||||
|
|
||||||
|
--rollback DROP TABLE roles;
|
|
@ -0,0 +1,2 @@
|
||||||
|
ALTER TABLE users
|
||||||
|
ADD COLUMN role_id INT NOT NULL REFERENCES roles(id);
|
|
@ -0,0 +1,2 @@
|
||||||
|
INSERT INTO roles (id, role) VALUES (1, 'ADMIN');
|
||||||
|
INSERT INTO roles (id, role) VALUES (2, 'USER');
|
Loading…
Reference in New Issue