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>
|
||||
<version>0.1.55</version>
|
||||
</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>
|
||||
|
||||
<build>
|
||||
|
|
|
@ -20,8 +20,6 @@ public class TelegramBotController extends TelegramLongPollingBot {
|
|||
|
||||
final TelegramBot telegramBot;
|
||||
final SshRepository sshRepository;
|
||||
final TelegramBotKeyboard telegramBotKeyboard;
|
||||
final UnameChatButtonAggregate unameChatButtonAggregate;
|
||||
final TelegramBotService telegramBotService;
|
||||
|
||||
@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:
|
||||
name: "ServerMonitorBot"
|
||||
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