Merged PR 471: DBマイグレーション
## 概要 [Task2805: DBマイグレーション](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2805) 利用規約情報管理テーブルを作成しました。 ユーザーテーブル・ユーザー退避テーブルの同意済み利用規約バージョンカラムを、EULA、DPA用に分割しました。 また、ユーザーテーブルの変更に伴うソースコード修正を実施しました。 ## レビューポイント DB定義の認識が合っているか。 ## UIの変更 なし ## 動作確認状況 migration up/downでの動作を確認 既存UTがすべて正常に動作することを確認 ## 補足 なし
This commit is contained in:
parent
7682c41ba5
commit
0e57d0cb81
13
dictation_server/db/migrations/043-create_terms.sql
Normal file
13
dictation_server/db/migrations/043-create_terms.sql
Normal file
@ -0,0 +1,13 @@
|
||||
-- +migrate Up
|
||||
CREATE TABLE IF NOT EXISTS `terms` (
|
||||
`id` BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT '通番',
|
||||
`document_type` VARCHAR(255) NOT NULL COMMENT '規約種別(EULA/DPA)',
|
||||
`version` VARCHAR(255) NOT NULL COMMENT 'バージョン',
|
||||
`created_by` VARCHAR(255) COMMENT '作成者',
|
||||
`created_at` TIMESTAMP DEFAULT now() COMMENT '作成時刻',
|
||||
`updated_by` VARCHAR(255) COMMENT '更新者',
|
||||
`updated_at` TIMESTAMP DEFAULT now() on UPDATE now() COMMENT '更新時刻'
|
||||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci;
|
||||
|
||||
-- +migrate Down
|
||||
DROP TABLE IF EXISTS `terms`;
|
||||
@ -0,0 +1,13 @@
|
||||
-- +migrate Up
|
||||
ALTER TABLE `users` CHANGE COLUMN `accepted_terms_version` `accepted_eula_version` VARCHAR(255) COMMENT '同意済み利用規約バージョン(EULA)',
|
||||
ADD COLUMN `accepted_dpa_version` VARCHAR(255) COMMENT '同意済み利用規約バージョン(DPA)' AFTER `accepted_eula_version`;
|
||||
|
||||
ALTER TABLE `users_archive` CHANGE COLUMN `accepted_terms_version` `accepted_eula_version` VARCHAR(255) COMMENT '同意済み利用規約バージョン(EULA)',
|
||||
ADD COLUMN `accepted_dpa_version` VARCHAR(255) COMMENT '同意済み利用規約バージョン(DPA)' AFTER `accepted_eula_version`;
|
||||
|
||||
-- +migrate Down
|
||||
ALTER TABLE `users` CHANGE COLUMN `accepted_eula_version` `accepted_terms_version` VARCHAR(255) COMMENT '同意済み利用規約バージョン(EULA)',
|
||||
DROP COLUMN `accepted_dpa_version`;
|
||||
|
||||
ALTER TABLE `users_archive` CHANGE COLUMN `accepted_eula_version` `accepted_terms_version` VARCHAR(255) COMMENT '同意済み利用規約バージョン(EULA)',
|
||||
DROP COLUMN `accepted_dpa_version`;
|
||||
@ -3316,9 +3316,13 @@
|
||||
"adminName": { "type": "string" },
|
||||
"adminMail": { "type": "string" },
|
||||
"adminPassword": { "type": "string" },
|
||||
"acceptedTermsVersion": {
|
||||
"acceptedEulaVersion": {
|
||||
"type": "string",
|
||||
"description": "同意済み利用規約のバージョン"
|
||||
"description": "同意済み利用規約のバージョン(EULA)"
|
||||
},
|
||||
"acceptedDpaVersion": {
|
||||
"type": "string",
|
||||
"description": "同意済み利用規約のバージョン(DPA)"
|
||||
},
|
||||
"token": { "type": "string", "description": "reCAPTCHA Token" }
|
||||
},
|
||||
@ -3328,7 +3332,8 @@
|
||||
"adminName",
|
||||
"adminMail",
|
||||
"adminPassword",
|
||||
"acceptedTermsVersion",
|
||||
"acceptedEulaVersion",
|
||||
"acceptedDpaVersion",
|
||||
"token"
|
||||
]
|
||||
},
|
||||
|
||||
@ -236,7 +236,8 @@ export const overrideAccountsRepositoryService = <TService>(
|
||||
tier: number,
|
||||
adminExternalUserId: string,
|
||||
adminUserRole: string,
|
||||
adminUserAcceptedTermsVersion: string,
|
||||
adminUserAcceptedEulaVersion: string,
|
||||
adminUserAcceptedDpaVersion: string,
|
||||
) => Promise<{ newAccount: Account; adminUser: User }>;
|
||||
deleteAccount?: (accountId: number, userId: number) => Promise<void>;
|
||||
deleteAccountAndInsertArchives?: (accountId: number) => Promise<User[]>;
|
||||
|
||||
@ -180,7 +180,8 @@ export const makeTestAccount = async (
|
||||
account_id: accountId,
|
||||
role: d?.role ?? 'admin none',
|
||||
author_id: d?.author_id ?? undefined,
|
||||
accepted_terms_version: d?.accepted_terms_version ?? '1.0',
|
||||
accepted_eula_version: d?.accepted_eula_version ?? '1.0',
|
||||
accepted_dpa_version: d?.accepted_dpa_version ?? '1.0',
|
||||
email_verified: d?.email_verified ?? true,
|
||||
auto_renew: d?.auto_renew ?? true,
|
||||
license_alert: d?.license_alert ?? true,
|
||||
@ -282,7 +283,8 @@ export const makeTestUser = async (
|
||||
external_id: d?.external_id ?? uuidv4(),
|
||||
role: d?.role ?? `${ADMIN_ROLES.STANDARD} ${USER_ROLES.NONE}`,
|
||||
author_id: d?.author_id,
|
||||
accepted_terms_version: d?.accepted_terms_version,
|
||||
accepted_eula_version: d?.accepted_eula_version ?? '1.0',
|
||||
accepted_dpa_version: d?.accepted_dpa_version ?? '1.0',
|
||||
email_verified: d?.email_verified ?? true,
|
||||
auto_renew: d?.auto_renew ?? true,
|
||||
license_alert: d?.license_alert ?? true,
|
||||
|
||||
@ -109,7 +109,8 @@ export class AccountsController {
|
||||
adminMail,
|
||||
adminPassword,
|
||||
adminName,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
} = body;
|
||||
const role = USER_ROLES.NONE;
|
||||
|
||||
@ -124,7 +125,8 @@ export class AccountsController {
|
||||
adminPassword,
|
||||
adminName,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
|
||||
return {};
|
||||
|
||||
@ -103,7 +103,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -134,7 +135,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
// 作成したアカウントのIDが返ってくるか確認
|
||||
expect(accountId).toBe(1);
|
||||
@ -150,7 +152,8 @@ describe('createAccount', () => {
|
||||
expect(account.tier).toBe(TIERS.TIER5);
|
||||
expect(account.primary_admin_user_id).toBe(user.id);
|
||||
expect(account.secondary_admin_user_id).toBe(null);
|
||||
expect(user.accepted_terms_version).toBe(acceptedTermsVersion);
|
||||
expect(user.accepted_eula_version).toBe(acceptedEulaVersion);
|
||||
expect(user.accepted_dpa_version).toBe(acceptedDpaVersion);
|
||||
expect(user.account_id).toBe(accountId);
|
||||
expect(user.role).toBe(role);
|
||||
});
|
||||
@ -181,7 +184,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'admin none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -201,7 +205,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -246,7 +251,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'admin none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -267,7 +273,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -296,7 +303,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -322,7 +330,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -358,7 +367,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -384,7 +394,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -422,7 +433,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -449,7 +461,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -486,7 +499,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -516,7 +530,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -555,7 +570,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async (
|
||||
@ -602,7 +618,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
@ -647,7 +664,8 @@ describe('createAccount', () => {
|
||||
const password = 'dummy_password';
|
||||
const username = 'dummy_username';
|
||||
const role = 'none';
|
||||
const acceptedTermsVersion = '1.0.0';
|
||||
const acceptedEulaVersion = '1.0.0';
|
||||
const acceptedDpaVersion = '1.0.0';
|
||||
|
||||
overrideAdB2cService(service, {
|
||||
createUser: async () => {
|
||||
@ -691,7 +709,8 @@ describe('createAccount', () => {
|
||||
password,
|
||||
username,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
} catch (e) {
|
||||
if (e instanceof HttpException) {
|
||||
|
||||
@ -159,14 +159,16 @@ export class AccountsService {
|
||||
password: string,
|
||||
username: string,
|
||||
role: string,
|
||||
acceptedTermsVersion: string,
|
||||
acceptedEulaVersion: string,
|
||||
acceptedDpaVersion: string,
|
||||
): Promise<{ accountId: number; userId: number; externalUserId: string }> {
|
||||
this.logger.log(
|
||||
`[IN] [${context.trackingId}] ${this.createAccount.name} | params: { ` +
|
||||
`country: ${country}, ` +
|
||||
`dealerAccountId: ${dealerAccountId}, ` +
|
||||
`role: ${role}, ` +
|
||||
`acceptedTermsVersion: ${acceptedTermsVersion} };`,
|
||||
`acceptedEulaVersion: ${acceptedEulaVersion} }, ` +
|
||||
`acceptedDpaVersion: ${acceptedDpaVersion} };`,
|
||||
);
|
||||
try {
|
||||
let externalUser: { sub: string } | ConflictError;
|
||||
@ -209,7 +211,8 @@ export class AccountsService {
|
||||
TIERS.TIER5,
|
||||
externalUser.sub,
|
||||
role,
|
||||
acceptedTermsVersion,
|
||||
acceptedEulaVersion,
|
||||
acceptedDpaVersion,
|
||||
);
|
||||
account = newAccount;
|
||||
user = adminUser;
|
||||
@ -698,6 +701,7 @@ export class AccountsService {
|
||||
externalUser.sub,
|
||||
USER_ROLES.NONE,
|
||||
null,
|
||||
null,
|
||||
);
|
||||
account = newAccount;
|
||||
user = adminUser;
|
||||
|
||||
@ -345,7 +345,8 @@ export const makeDefaultAccountsRepositoryMockValue =
|
||||
user.account_id = 1234567890123456;
|
||||
user.role = 'none admin';
|
||||
user.author_id = '6cce347f-0cf1-a15e-19ab-d00988b643f9';
|
||||
user.accepted_terms_version = '1.0';
|
||||
user.accepted_eula_version = '1.0';
|
||||
user.accepted_dpa_version = '1.0';
|
||||
user.email_verified = true;
|
||||
user.auto_renew = false;
|
||||
user.license_alert = false;
|
||||
@ -374,7 +375,8 @@ export const makeDefaultUsersRepositoryMockValue =
|
||||
user.account_id = 1234567890123456;
|
||||
user.role = 'none admin';
|
||||
user.author_id = '6cce347f-0cf1-a15e-19ab-d00988b643f9';
|
||||
user.accepted_terms_version = '1.0';
|
||||
user.accepted_eula_version = '1.0';
|
||||
user.accepted_dpa_version = '1.0';
|
||||
user.email_verified = true;
|
||||
user.auto_renew = false;
|
||||
user.license_alert = false;
|
||||
@ -422,7 +424,8 @@ export const makeDefaultUserGroupsRepositoryMockValue =
|
||||
user.account_id = 1234567890123456;
|
||||
user.role = 'none admin';
|
||||
user.author_id = '6cce347f-0cf1-a15e-19ab-d00988b643f9';
|
||||
user.accepted_terms_version = '1.0';
|
||||
user.accepted_eula_version = '1.0';
|
||||
user.accepted_dpa_version = '1.0';
|
||||
user.email_verified = true;
|
||||
user.auto_renew = false;
|
||||
user.license_alert = false;
|
||||
|
||||
@ -43,8 +43,10 @@ export class CreateAccountRequest {
|
||||
@ApiProperty()
|
||||
@IsAdminPasswordvalid()
|
||||
adminPassword: string;
|
||||
@ApiProperty({ description: '同意済み利用規約のバージョン' })
|
||||
acceptedTermsVersion: string;
|
||||
@ApiProperty({ description: '同意済み利用規約のバージョン(EULA)' })
|
||||
acceptedEulaVersion: string;
|
||||
@ApiProperty({ description: '同意済み利用規約のバージョン(DPA)' })
|
||||
acceptedDpaVersion: string;
|
||||
@ApiProperty({ description: 'reCAPTCHA Token' })
|
||||
token: string;
|
||||
}
|
||||
|
||||
@ -127,7 +127,8 @@ export const makeDefaultUsersRepositoryMockValue =
|
||||
account_id: 1234567890123456,
|
||||
role: 'none',
|
||||
author_id: '',
|
||||
accepted_terms_version: '1.0',
|
||||
accepted_eula_version: '1.0',
|
||||
accepted_dpa_version: '1.0',
|
||||
email_verified: true,
|
||||
deleted_at: null,
|
||||
created_by: 'test',
|
||||
|
||||
@ -116,7 +116,8 @@ export const makeDefaultUsersRepositoryMockValue =
|
||||
user1.account_id = 1234567890123456;
|
||||
user1.role = 'none';
|
||||
user1.author_id = '6cce347f-0cf1-a15e-19ab-d00988b643f9';
|
||||
user1.accepted_terms_version = '1.0';
|
||||
user1.accepted_eula_version = '1.0';
|
||||
user1.accepted_dpa_version = '1.0';
|
||||
user1.email_verified = true;
|
||||
user1.auto_renew = false;
|
||||
user1.license_alert = false;
|
||||
|
||||
@ -78,7 +78,8 @@ export const makeDefaultUsersRepositoryMockValue =
|
||||
user.account_id = 123;
|
||||
user.role = 'none';
|
||||
user.author_id = undefined;
|
||||
user.accepted_terms_version = '1.0';
|
||||
user.accepted_eula_version = '1.0';
|
||||
user.accepted_dpa_version = '1.0';
|
||||
user.email_verified = true;
|
||||
user.auto_renew = false;
|
||||
user.license_alert = false;
|
||||
|
||||
@ -423,7 +423,8 @@ const defaultTasksRepositoryMockValue: {
|
||||
account_id: 1,
|
||||
external_id: 'userId',
|
||||
role: 'typist',
|
||||
accepted_terms_version: '',
|
||||
accepted_eula_version: '',
|
||||
accepted_dpa_version: '',
|
||||
email_verified: true,
|
||||
auto_renew: true,
|
||||
license_alert: true,
|
||||
|
||||
@ -356,7 +356,8 @@ export const makeDefaultUsersRepositoryMockValue =
|
||||
user1.account_id = 1234567890123456;
|
||||
user1.role = 'none';
|
||||
user1.author_id = '6cce347f-0cf1-a15e-19ab-d00988b643f9';
|
||||
user1.accepted_terms_version = '1.0';
|
||||
user1.accepted_eula_version = '1.0';
|
||||
user1.accepted_dpa_version = '1.0';
|
||||
user1.email_verified = true;
|
||||
user1.auto_renew = false;
|
||||
user1.license_alert = false;
|
||||
@ -375,7 +376,8 @@ export const makeDefaultUsersRepositoryMockValue =
|
||||
user2.account_id = 1234567890123456;
|
||||
user2.role = 'none';
|
||||
user2.author_id = '551c4077-5b55-a38c-2c55-cd1edd537aa8';
|
||||
user2.accepted_terms_version = '1.0';
|
||||
user2.accepted_eula_version = '1.0';
|
||||
user2.accepted_dpa_version = '1.0';
|
||||
user2.email_verified = true;
|
||||
user2.auto_renew = false;
|
||||
user2.license_alert = false;
|
||||
|
||||
@ -188,7 +188,8 @@ describe('UsersService.confirmUserAndInitPassword', () => {
|
||||
external_id: 'TEST9999',
|
||||
account_id: 1,
|
||||
role: 'None',
|
||||
accepted_terms_version: 'string',
|
||||
accepted_eula_version: 'string',
|
||||
accepted_dpa_version: 'string',
|
||||
email_verified: false,
|
||||
created_by: 'string;',
|
||||
created_at: new Date(),
|
||||
@ -232,7 +233,8 @@ describe('UsersService.confirmUserAndInitPassword', () => {
|
||||
external_id: 'TEST9999',
|
||||
account_id: 1,
|
||||
role: 'None',
|
||||
accepted_terms_version: 'string',
|
||||
accepted_eula_version: 'string',
|
||||
accepted_dpa_version: 'string',
|
||||
email_verified: false,
|
||||
created_by: 'string;',
|
||||
created_at: new Date(),
|
||||
@ -272,7 +274,8 @@ describe('UsersService.confirmUserAndInitPassword', () => {
|
||||
external_id: 'TEST9999',
|
||||
account_id: 1,
|
||||
role: 'None',
|
||||
accepted_terms_version: 'string',
|
||||
accepted_eula_version: 'string',
|
||||
accepted_dpa_version: 'string',
|
||||
email_verified: true,
|
||||
created_by: 'string;',
|
||||
created_at: new Date(),
|
||||
@ -316,7 +319,8 @@ describe('UsersService.confirmUserAndInitPassword', () => {
|
||||
external_id: 'TEST9999',
|
||||
account_id: 1,
|
||||
role: 'None',
|
||||
accepted_terms_version: 'string',
|
||||
accepted_eula_version: 'string',
|
||||
accepted_dpa_version: 'string',
|
||||
email_verified: false,
|
||||
created_by: 'string;',
|
||||
created_at: new Date(),
|
||||
|
||||
@ -106,7 +106,8 @@ export class AccountsRepositoryService {
|
||||
* @param tier
|
||||
* @param adminExternalUserId
|
||||
* @param adminUserRole
|
||||
* @param adminUserAcceptedTermsVersion
|
||||
* @param adminUserAcceptedEulaVersion
|
||||
* @param adminUserAcceptedDpaVersion
|
||||
* @returns account/admin user
|
||||
*/
|
||||
async createAccount(
|
||||
@ -116,7 +117,8 @@ export class AccountsRepositoryService {
|
||||
tier: number,
|
||||
adminExternalUserId: string,
|
||||
adminUserRole: string,
|
||||
adminUserAcceptedTermsVersion: string,
|
||||
adminUserAcceptedEulaVersion: string,
|
||||
adminUserAcceptedDpaVersion: string,
|
||||
): Promise<{ newAccount: Account; adminUser: User }> {
|
||||
return await this.dataSource.transaction(async (entityManager) => {
|
||||
const account = new Account();
|
||||
@ -136,7 +138,8 @@ export class AccountsRepositoryService {
|
||||
user.account_id = persistedAccount.id;
|
||||
user.external_id = adminExternalUserId;
|
||||
user.role = adminUserRole;
|
||||
user.accepted_terms_version = adminUserAcceptedTermsVersion;
|
||||
user.accepted_eula_version = adminUserAcceptedEulaVersion;
|
||||
user.accepted_dpa_version = adminUserAcceptedDpaVersion;
|
||||
}
|
||||
const usersRepo = entityManager.getRepository(User);
|
||||
const newUser = usersRepo.create(user);
|
||||
|
||||
@ -32,7 +32,10 @@ export class User {
|
||||
author_id?: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
accepted_terms_version?: string;
|
||||
accepted_eula_version?: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
accepted_dpa_version?: string;
|
||||
|
||||
@Column({ default: false })
|
||||
email_verified: boolean;
|
||||
@ -99,7 +102,10 @@ export class UserArchive {
|
||||
author_id?: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
accepted_terms_version?: string;
|
||||
accepted_eula_version?: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
accepted_dpa_version?: string;
|
||||
|
||||
@Column()
|
||||
email_verified: boolean;
|
||||
|
||||
@ -40,7 +40,8 @@ export class UsersRepositoryService {
|
||||
license_alert,
|
||||
notification,
|
||||
author_id,
|
||||
accepted_terms_version,
|
||||
accepted_eula_version,
|
||||
accepted_dpa_version,
|
||||
encryption,
|
||||
encryption_password: encryptionPassword,
|
||||
prompt,
|
||||
@ -54,7 +55,8 @@ export class UsersRepositoryService {
|
||||
userEntity.license_alert = license_alert;
|
||||
userEntity.notification = notification;
|
||||
userEntity.author_id = author_id;
|
||||
userEntity.accepted_terms_version = accepted_terms_version;
|
||||
userEntity.accepted_eula_version = accepted_eula_version;
|
||||
userEntity.accepted_dpa_version = accepted_dpa_version;
|
||||
userEntity.encryption = encryption;
|
||||
userEntity.encryption_password = encryptionPassword;
|
||||
userEntity.prompt = prompt;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user