fix: project name duplicate error (#35)

* feat: update frontend resources

* feat: update jooq model

* fix: project name duplicate error
This commit is contained in:
vran
2022-03-06 10:13:59 +08:00
committed by GitHub
parent f2a7019ec4
commit 1f3aa9e6d9
29 changed files with 2334 additions and 115 deletions

View File

@@ -77,7 +77,7 @@ public class Keys {
public static final UniqueKey<OauthAppRecord> KEY_OAUTH_APP_UK_REGISTRATION_ID = Internal.createUniqueKey(OauthApp.OAUTH_APP, DSL.name("KEY_oauth_app_uk_registration_id"), new TableField[] { OauthApp.OAUTH_APP.REGISTRATION_ID }, true);
public static final UniqueKey<OperationLogRecord> KEY_OPERATION_LOG_PRIMARY = Internal.createUniqueKey(OperationLog.OPERATION_LOG, DSL.name("KEY_operation_log_PRIMARY"), new TableField[] { OperationLog.OPERATION_LOG.ID }, true);
public static final UniqueKey<ProjectRecord> KEY_PROJECT_PRIMARY = Internal.createUniqueKey(Project.PROJECT, DSL.name("KEY_project_PRIMARY"), new TableField[] { Project.PROJECT.ID }, true);
public static final UniqueKey<ProjectRecord> KEY_PROJECT_UK_GROUP_ID_NAME = Internal.createUniqueKey(Project.PROJECT, DSL.name("KEY_project_uk_group_id_name"), new TableField[] { Project.PROJECT.GROUP_ID, Project.PROJECT.NAME }, true);
public static final UniqueKey<ProjectRecord> KEY_PROJECT_UK_GROUP_ID_NAME_DELETED_TOKEN = Internal.createUniqueKey(Project.PROJECT, DSL.name("KEY_project_uk_group_id_name_deleted_token"), new TableField[] { Project.PROJECT.GROUP_ID, Project.PROJECT.NAME, Project.PROJECT.DELETED_TOKEN }, true);
public static final UniqueKey<ProjectSyncRuleRecord> KEY_PROJECT_SYNC_RULE_PRIMARY = Internal.createUniqueKey(ProjectSyncRule.PROJECT_SYNC_RULE, DSL.name("KEY_project_sync_rule_PRIMARY"), new TableField[] { ProjectSyncRule.PROJECT_SYNC_RULE.ID }, true);
public static final UniqueKey<ProjectSyncRuleRecord> KEY_PROJECT_SYNC_RULE_UK_PROJECT_ID = Internal.createUniqueKey(ProjectSyncRule.PROJECT_SYNC_RULE, DSL.name("KEY_project_sync_rule_uk_project_id"), new TableField[] { ProjectSyncRule.PROJECT_SYNC_RULE.PROJECT_ID }, true);
public static final UniqueKey<SysKeyRecord> KEY_SYS_KEY_PRIMARY = Internal.createUniqueKey(SysKey.SYS_KEY, DSL.name("KEY_sys_key_PRIMARY"), new TableField[] { SysKey.SYS_KEY.ID }, true);

View File

@@ -17,7 +17,7 @@ import org.jooq.ForeignKey;
import org.jooq.Identity;
import org.jooq.Name;
import org.jooq.Record;
import org.jooq.Row6;
import org.jooq.Row7;
import org.jooq.Schema;
import org.jooq.Table;
import org.jooq.TableField;
@@ -74,6 +74,12 @@ public class Project extends TableImpl<ProjectRecord> {
*/
public final TableField<ProjectRecord, Boolean> DELETED = createField(DSL.name("deleted"), SQLDataType.BOOLEAN.nullable(false).defaultValue(DSL.inline("0", SQLDataType.BOOLEAN)), this, "");
/**
* The column <code>databasir.project.deleted_token</code>. default is 0, it
* will be set to {id} when deleted
*/
public final TableField<ProjectRecord, Integer> DELETED_TOKEN = createField(DSL.name("deleted_token"), SQLDataType.INTEGER.nullable(false).defaultValue(DSL.inline("0", SQLDataType.INTEGER)), this, "default is 0, it will be set to {id} when deleted");
/**
* The column <code>databasir.project.create_at</code>.
*/
@@ -129,7 +135,7 @@ public class Project extends TableImpl<ProjectRecord> {
@Override
public List<UniqueKey<ProjectRecord>> getUniqueKeys() {
return Arrays.asList(Keys.KEY_PROJECT_UK_GROUP_ID_NAME);
return Arrays.asList(Keys.KEY_PROJECT_UK_GROUP_ID_NAME_DELETED_TOKEN);
}
@Override
@@ -159,11 +165,11 @@ public class Project extends TableImpl<ProjectRecord> {
}
// -------------------------------------------------------------------------
// Row6 type methods
// Row7 type methods
// -------------------------------------------------------------------------
@Override
public Row6<Integer, String, String, Integer, Boolean, LocalDateTime> fieldsRow() {
return (Row6) super.fieldsRow();
public Row7<Integer, String, String, Integer, Boolean, Integer, LocalDateTime> fieldsRow() {
return (Row7) super.fieldsRow();
}
}

View File

@@ -21,6 +21,7 @@ public class ProjectPojo implements Serializable {
private String description;
private Integer groupId;
private Boolean deleted;
private Integer deletedToken;
private LocalDateTime createAt;
public ProjectPojo() {}
@@ -31,6 +32,7 @@ public class ProjectPojo implements Serializable {
this.description = value.description;
this.groupId = value.groupId;
this.deleted = value.deleted;
this.deletedToken = value.deletedToken;
this.createAt = value.createAt;
}
@@ -40,6 +42,7 @@ public class ProjectPojo implements Serializable {
String description,
Integer groupId,
Boolean deleted,
Integer deletedToken,
LocalDateTime createAt
) {
this.id = id;
@@ -47,6 +50,7 @@ public class ProjectPojo implements Serializable {
this.description = description;
this.groupId = groupId;
this.deleted = deleted;
this.deletedToken = deletedToken;
this.createAt = createAt;
}
@@ -120,6 +124,22 @@ public class ProjectPojo implements Serializable {
this.deleted = deleted;
}
/**
* Getter for <code>databasir.project.deleted_token</code>. default is 0, it
* will be set to {id} when deleted
*/
public Integer getDeletedToken() {
return this.deletedToken;
}
/**
* Setter for <code>databasir.project.deleted_token</code>. default is 0, it
* will be set to {id} when deleted
*/
public void setDeletedToken(Integer deletedToken) {
this.deletedToken = deletedToken;
}
/**
* Getter for <code>databasir.project.create_at</code>.
*/
@@ -143,6 +163,7 @@ public class ProjectPojo implements Serializable {
sb.append(", ").append(description);
sb.append(", ").append(groupId);
sb.append(", ").append(deleted);
sb.append(", ").append(deletedToken);
sb.append(", ").append(createAt);
sb.append(")");

View File

@@ -11,8 +11,8 @@ import java.time.LocalDateTime;
import org.jooq.Field;
import org.jooq.Record1;
import org.jooq.Record6;
import org.jooq.Row6;
import org.jooq.Record7;
import org.jooq.Row7;
import org.jooq.impl.UpdatableRecordImpl;
@@ -20,7 +20,7 @@ import org.jooq.impl.UpdatableRecordImpl;
* This class is generated by jOOQ.
*/
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements Record6<Integer, String, String, Integer, Boolean, LocalDateTime> {
public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements Record7<Integer, String, String, Integer, Boolean, Integer, LocalDateTime> {
private static final long serialVersionUID = 1L;
@@ -94,18 +94,34 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
return (Boolean) get(4);
}
/**
* Setter for <code>databasir.project.deleted_token</code>. default is 0, it
* will be set to {id} when deleted
*/
public void setDeletedToken(Integer value) {
set(5, value);
}
/**
* Getter for <code>databasir.project.deleted_token</code>. default is 0, it
* will be set to {id} when deleted
*/
public Integer getDeletedToken() {
return (Integer) get(5);
}
/**
* Setter for <code>databasir.project.create_at</code>.
*/
public void setCreateAt(LocalDateTime value) {
set(5, value);
set(6, value);
}
/**
* Getter for <code>databasir.project.create_at</code>.
*/
public LocalDateTime getCreateAt() {
return (LocalDateTime) get(5);
return (LocalDateTime) get(6);
}
// -------------------------------------------------------------------------
@@ -118,17 +134,17 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
}
// -------------------------------------------------------------------------
// Record6 type implementation
// Record7 type implementation
// -------------------------------------------------------------------------
@Override
public Row6<Integer, String, String, Integer, Boolean, LocalDateTime> fieldsRow() {
return (Row6) super.fieldsRow();
public Row7<Integer, String, String, Integer, Boolean, Integer, LocalDateTime> fieldsRow() {
return (Row7) super.fieldsRow();
}
@Override
public Row6<Integer, String, String, Integer, Boolean, LocalDateTime> valuesRow() {
return (Row6) super.valuesRow();
public Row7<Integer, String, String, Integer, Boolean, Integer, LocalDateTime> valuesRow() {
return (Row7) super.valuesRow();
}
@Override
@@ -157,7 +173,12 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
}
@Override
public Field<LocalDateTime> field6() {
public Field<Integer> field6() {
return Project.PROJECT.DELETED_TOKEN;
}
@Override
public Field<LocalDateTime> field7() {
return Project.PROJECT.CREATE_AT;
}
@@ -187,7 +208,12 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
}
@Override
public LocalDateTime component6() {
public Integer component6() {
return getDeletedToken();
}
@Override
public LocalDateTime component7() {
return getCreateAt();
}
@@ -217,7 +243,12 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
}
@Override
public LocalDateTime value6() {
public Integer value6() {
return getDeletedToken();
}
@Override
public LocalDateTime value7() {
return getCreateAt();
}
@@ -252,19 +283,26 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
}
@Override
public ProjectRecord value6(LocalDateTime value) {
public ProjectRecord value6(Integer value) {
setDeletedToken(value);
return this;
}
@Override
public ProjectRecord value7(LocalDateTime value) {
setCreateAt(value);
return this;
}
@Override
public ProjectRecord values(Integer value1, String value2, String value3, Integer value4, Boolean value5, LocalDateTime value6) {
public ProjectRecord values(Integer value1, String value2, String value3, Integer value4, Boolean value5, Integer value6, LocalDateTime value7) {
value1(value1);
value2(value2);
value3(value3);
value4(value4);
value5(value5);
value6(value6);
value7(value7);
return this;
}
@@ -282,7 +320,7 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
/**
* Create a detached, initialised ProjectRecord
*/
public ProjectRecord(Integer id, String name, String description, Integer groupId, Boolean deleted, LocalDateTime createAt) {
public ProjectRecord(Integer id, String name, String description, Integer groupId, Boolean deleted, Integer deletedToken, LocalDateTime createAt) {
super(Project.PROJECT);
setId(id);
@@ -290,6 +328,7 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
setDescription(description);
setGroupId(groupId);
setDeleted(deleted);
setDeletedToken(deletedToken);
setCreateAt(createAt);
}
@@ -305,6 +344,7 @@ public class ProjectRecord extends UpdatableRecordImpl<ProjectRecord> implements
setDescription(value.getDescription());
setGroupId(value.getGroupId());
setDeleted(value.getDeleted());
setDeletedToken(value.getDeletedToken());
setCreateAt(value.getCreateAt());
}
}

View File

@@ -31,9 +31,10 @@ public class ProjectDao extends BaseDao<ProjectPojo> {
super(PROJECT, ProjectPojo.class);
}
public int updateDeletedById(boolean b, Integer databaseId) {
public int updateDeletedById(boolean b, Integer projectId) {
return dslContext
.update(PROJECT).set(PROJECT.DELETED, b).where(PROJECT.ID.eq(databaseId))
.update(PROJECT).set(PROJECT.DELETED, b).set(PROJECT.DELETED_TOKEN, projectId)
.where(PROJECT.ID.eq(projectId))
.execute();
}

View File

@@ -1,20 +0,0 @@
CREATE TABLE IF NOT EXISTS operation_log
(
id BIGINT PRIMARY KEY AUTO_INCREMENT NOT NULL,
operator_user_id INT NOT NULL COMMENT 'ref to user.id',
operator_username VARCHAR(128) NOT NULL COMMENT 'user.username',
operator_nickname VARCHAR(255) NOT NULL COMMENT 'user.nickname',
operation_module VARCHAR(128) NOT NULL,
operation_code VARCHAR(255) NOT NULL,
operation_name VARCHAR(255) NOT NULL,
operation_response JSON NOT NULL,
is_success BOOLEAN NOT NULL DEFAULT FALSE,
involved_project_id INT DEFAULT NULL COMMENT 'ref to project.id',
involved_group_id INT DEFAULT NULL COMMENT 'ref to group.id',
involved_user_id INT DEFAULT NULL COMMENT 'ref to user.id',
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
DROP INDEX uk_name ON `group`;

View File

@@ -1,9 +0,0 @@
CREATE TABLE IF NOT EXISTS user_favorite_project
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
user_id INT NOT NULL,
project_id INT NOT NULL,
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
UNIQUE uk_user_id_project_id (user_id, project_id)
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;

View File

@@ -1,18 +0,0 @@
CREATE TABLE IF NOT EXISTS oauth_app
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
registration_id VARCHAR(100) NOT NULL,
app_name VARCHAR(128) NOT NULL,
app_icon VARCHAR(256) NOT NULL DEFAULT '',
app_type VARCHAR(64) NOT NULL COMMENT 'github, gitlab',
client_id VARCHAR(256),
client_secret VARCHAR(256),
auth_url VARCHAR(256),
resource_url VARCHAR(256),
scope VARCHAR(256),
update_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
UNIQUE uk_registration_id (registration_id)
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci COMMENT 'oauth app info';

View File

@@ -1,7 +1,7 @@
CREATE DATABASE IF NOT EXISTS databasir;
USE databasir;
CREATE TABLE sys_key
CREATE TABLE IF NOT EXISTS sys_key
(
id INT PRIMARY KEY AUTO_INCREMENT,
rsa_public_key TEXT NOT NULL,
@@ -12,7 +12,7 @@ CREATE TABLE sys_key
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE sys_mail
CREATE TABLE IF NOT EXISTS sys_mail
(
id INT PRIMARY KEY AUTO_INCREMENT,
username TEXT NOT NULL,
@@ -24,7 +24,7 @@ CREATE TABLE sys_mail
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE user
CREATE TABLE IF NOT EXISTS user
(
id INT PRIMARY KEY AUTO_INCREMENT,
email VARCHAR(512) NOT NULL,
@@ -40,7 +40,7 @@ CREATE TABLE user
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE user_role
CREATE TABLE IF NOT EXISTS user_role
(
id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT NOT NULL,
@@ -51,31 +51,31 @@ CREATE TABLE user_role
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE `group`
CREATE TABLE IF NOT EXISTS `group`
(
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
description VARCHAR(512) NOT NULL,
deleted BOOLEAN NOT NULL DEFAULT FALSE,
update_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT UNIQUE uk_name (name)
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE `project`
CREATE TABLE IF NOT EXISTS `project`
(
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
description TEXT NOT NULL,
group_id INT NOT NULL,
deleted BOOLEAN NOT NULL DEFAULT FALSE,
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT UNIQUE uk_group_id_name (group_id, name)
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
description TEXT NOT NULL,
group_id INT NOT NULL,
deleted BOOLEAN NOT NULL DEFAULT FALSE,
deleted_token INT NOT NULL DEFAULT 0 COMMENT 'default is 0, it will be set to {id} when deleted',
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT UNIQUE uk_group_id_name_deleted_token (group_id, name, deleted_token)
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE `project_sync_rule`
CREATE TABLE IF NOT EXISTS `project_sync_rule`
(
id INT PRIMARY KEY AUTO_INCREMENT,
project_id INT NOT NULL,
@@ -89,7 +89,7 @@ CREATE TABLE `project_sync_rule`
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE `data_source`
CREATE TABLE IF NOT EXISTS `data_source`
(
id INT PRIMARY KEY AUTO_INCREMENT,
project_id INT NOT NULL,
@@ -104,7 +104,7 @@ CREATE TABLE `data_source`
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE `data_source_property`
CREATE TABLE IF NOT EXISTS `data_source_property`
(
id INT PRIMARY KEY AUTO_INCREMENT,
data_source_id INT NOT NULL,
@@ -115,7 +115,7 @@ CREATE TABLE `data_source_property`
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE database_document
CREATE TABLE IF NOT EXISTS database_document
(
id INT PRIMARY KEY AUTO_INCREMENT,
project_id INT NOT NULL,
@@ -129,7 +129,7 @@ CREATE TABLE database_document
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE database_document_history
CREATE TABLE IF NOT EXISTS database_document_history
(
id INT PRIMARY KEY AUTO_INCREMENT,
project_id INT NOT NULL,
@@ -142,7 +142,7 @@ CREATE TABLE database_document_history
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE table_document
CREATE TABLE IF NOT EXISTS table_document
(
id INT PRIMARY KEY AUTO_INCREMENT,
@@ -155,7 +155,7 @@ CREATE TABLE table_document
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE table_column_document
CREATE TABLE IF NOT EXISTS table_column_document
(
id INT PRIMARY KEY AUTO_INCREMENT,
@@ -176,7 +176,7 @@ CREATE TABLE table_column_document
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE table_index_document
CREATE TABLE IF NOT EXISTS table_index_document
(
id INT PRIMARY KEY AUTO_INCREMENT,
@@ -191,7 +191,7 @@ CREATE TABLE table_index_document
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE table_trigger_document
CREATE TABLE IF NOT EXISTS table_trigger_document
(
id INT PRIMARY KEY AUTO_INCREMENT,
@@ -207,7 +207,7 @@ CREATE TABLE table_trigger_document
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE login
CREATE TABLE IF NOT EXISTS login
(
id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT NOT NULL,
@@ -232,4 +232,51 @@ CREATE TABLE IF NOT EXISTS document_remark
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
INDEX idx_project_id (project_id)
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
COLLATE utf8mb4_unicode_ci;
CREATE TABLE IF NOT EXISTS operation_log
(
id BIGINT PRIMARY KEY AUTO_INCREMENT NOT NULL,
operator_user_id INT NOT NULL COMMENT 'ref to user.id',
operator_username VARCHAR(128) NOT NULL COMMENT 'user.username',
operator_nickname VARCHAR(255) NOT NULL COMMENT 'user.nickname',
operation_module VARCHAR(128) NOT NULL,
operation_code VARCHAR(255) NOT NULL,
operation_name VARCHAR(255) NOT NULL,
operation_response JSON NOT NULL,
is_success BOOLEAN NOT NULL DEFAULT FALSE,
involved_project_id INT DEFAULT NULL COMMENT 'ref to project.id',
involved_group_id INT DEFAULT NULL COMMENT 'ref to group.id',
involved_user_id INT DEFAULT NULL COMMENT 'ref to user.id',
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE IF NOT EXISTS user_favorite_project
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
user_id INT NOT NULL,
project_id INT NOT NULL,
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
UNIQUE uk_user_id_project_id (user_id, project_id)
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE TABLE IF NOT EXISTS oauth_app
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
registration_id VARCHAR(100) NOT NULL,
app_name VARCHAR(128) NOT NULL,
app_icon VARCHAR(256) NOT NULL DEFAULT '',
app_type VARCHAR(64) NOT NULL COMMENT 'github, gitlab',
client_id VARCHAR(256),
client_secret VARCHAR(256),
auth_url VARCHAR(256),
resource_url VARCHAR(256),
scope VARCHAR(256),
update_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
create_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
UNIQUE uk_registration_id (registration_id)
) CHARSET utf8mb4
COLLATE utf8mb4_unicode_ci COMMENT 'oauth app info';