## 概要 [Task3555: 既存API修正(アカウント情報取得API、アカウント作成API)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3555) Accountにauto_file_delete、file_retention_daysを追加 既存のテストでアカウントを作成している部分に項目の値を追加。 ## レビューポイント -entityの ``` @Column({ default: 30 }) ``` が必要かどうか。 ## UIの変更 なし ## 動作確認状況 - ローカルで確認 ## 補足 - 相談、参考資料などがあれば
330 lines
5.8 KiB
TypeScript
330 lines
5.8 KiB
TypeScript
/**
|
||
* 階層
|
||
* @const {number}
|
||
*/
|
||
export const TIERS = {
|
||
//OMDS東京
|
||
TIER1: 1,
|
||
//OMDS現地法人
|
||
TIER2: 2,
|
||
//代理店
|
||
TIER3: 3,
|
||
//販売店
|
||
TIER4: 4,
|
||
//エンドユーザー
|
||
TIER5: 5,
|
||
} as const;
|
||
|
||
/**
|
||
* 音声ファイルをEast USに保存する国リスト
|
||
* @const {number}
|
||
*/
|
||
export const BLOB_STORAGE_REGION_US = ['CA', 'KY', 'US'];
|
||
|
||
/**
|
||
* 音声ファイルをAustralia Eastに保存する国リスト
|
||
* @const {number}
|
||
*/
|
||
export const BLOB_STORAGE_REGION_AU = ['AU', 'NZ'];
|
||
|
||
/**
|
||
* 音声ファイルをNorth Europeに保存する国リスト
|
||
* @const {number}
|
||
*/
|
||
export const BLOB_STORAGE_REGION_EU = [
|
||
'AT',
|
||
'BE',
|
||
'BG',
|
||
'HR',
|
||
'CY',
|
||
'CZ',
|
||
'DK',
|
||
'EE',
|
||
'FI',
|
||
'FR',
|
||
'DE',
|
||
'GR',
|
||
'HU',
|
||
'IS',
|
||
'IE',
|
||
'IT',
|
||
'LV',
|
||
'LI',
|
||
'LT',
|
||
'LU',
|
||
'MT',
|
||
'NL',
|
||
'NO',
|
||
'PL',
|
||
'PT',
|
||
'RO',
|
||
'RS',
|
||
'SK',
|
||
'SI',
|
||
'ZA',
|
||
'ES',
|
||
'SE',
|
||
'CH',
|
||
'TR',
|
||
'GB',
|
||
];
|
||
|
||
/**
|
||
* 管理ロール
|
||
* @const {string[]}
|
||
*/
|
||
export const ADMIN_ROLES = {
|
||
ADMIN: 'admin',
|
||
STANDARD: 'standard',
|
||
} as const;
|
||
|
||
/**
|
||
* ロール
|
||
* @const {string[]}
|
||
*/
|
||
export const USER_ROLES = {
|
||
NONE: 'none',
|
||
AUTHOR: 'author',
|
||
TYPIST: 'typist',
|
||
} as const;
|
||
|
||
/**
|
||
* ロールのソート順
|
||
* @const {string[]}
|
||
*/
|
||
export const USER_ROLE_ORDERS = [
|
||
USER_ROLES.AUTHOR,
|
||
USER_ROLES.TYPIST,
|
||
USER_ROLES.NONE,
|
||
] as string[];
|
||
|
||
/**
|
||
* ライセンス注文状態
|
||
* @const {string[]}
|
||
*/
|
||
export const LICENSE_ISSUE_STATUS = {
|
||
ISSUE_REQUESTING: 'Issue Requesting',
|
||
ISSUED: 'Issued',
|
||
CANCELED: 'Order Canceled',
|
||
};
|
||
|
||
/**
|
||
* ライセンス種別
|
||
* @const {string[]}
|
||
*/
|
||
export const LICENSE_TYPE = {
|
||
TRIAL: 'TRIAL',
|
||
NORMAL: 'NORMAL',
|
||
CARD: 'CARD',
|
||
} as const;
|
||
/**
|
||
* ライセンス状態
|
||
* @const {string[]}
|
||
*/
|
||
export const LICENSE_ALLOCATED_STATUS = {
|
||
UNALLOCATED: 'Unallocated',
|
||
ALLOCATED: 'Allocated',
|
||
REUSABLE: 'Reusable',
|
||
DELETED: 'Deleted',
|
||
} as const;
|
||
/**
|
||
* 切り替え元種別
|
||
* @const {string[]}
|
||
*/
|
||
export const SWITCH_FROM_TYPE = {
|
||
NONE: 'NONE',
|
||
CARD: 'CARD',
|
||
TRIAL: 'TRIAL',
|
||
} as const;
|
||
|
||
/**
|
||
* ライセンスの期限切れが近いと見なす日数のしきい値
|
||
* @const {number}
|
||
*/
|
||
export const LICENSE_EXPIRATION_THRESHOLD_DAYS = 14;
|
||
|
||
/**
|
||
* ライセンスの有効期間
|
||
* @const {number}
|
||
*/
|
||
export const LICENSE_EXPIRATION_DAYS = 365;
|
||
|
||
/**
|
||
* タイムゾーンを加味したライセンスの有効期間(8時間)
|
||
* @const {number}
|
||
*/
|
||
export const LICENSE_EXPIRATION_TIME_WITH_TIMEZONE = 8;
|
||
|
||
/**
|
||
* カードライセンスの桁数
|
||
* @const {number}
|
||
*/
|
||
export const CARD_LICENSE_LENGTH = 20;
|
||
|
||
/**
|
||
* 音声ファイルに紐づくオプションアイテムの数
|
||
* @const {string}
|
||
*/
|
||
export const OPTION_ITEM_NUM = 10;
|
||
|
||
/**
|
||
* 文字起こしタスクのステータス
|
||
* @const {string[]}
|
||
*/
|
||
export const TASK_STATUS = {
|
||
UPLOADED: 'Uploaded',
|
||
PENDING: 'Pending',
|
||
IN_PROGRESS: 'InProgress',
|
||
FINISHED: 'Finished',
|
||
BACKUP: 'Backup',
|
||
} as const;
|
||
|
||
/**
|
||
* タスク一覧でソート可能な属性の一覧
|
||
*/
|
||
export const TASK_LIST_SORTABLE_ATTRIBUTES = [
|
||
'JOB_NUMBER',
|
||
'STATUS',
|
||
'ENCRYPTION',
|
||
'AUTHOR_ID',
|
||
'WORK_TYPE',
|
||
'FILE_NAME',
|
||
'FILE_LENGTH',
|
||
'FILE_SIZE',
|
||
'RECORDING_STARTED_DATE',
|
||
'RECORDING_FINISHED_DATE',
|
||
'UPLOAD_DATE',
|
||
'TRANSCRIPTION_STARTED_DATE',
|
||
'TRANSCRIPTION_FINISHED_DATE',
|
||
] as const;
|
||
|
||
/**
|
||
* タスク一覧のソート条件(昇順・降順)
|
||
*/
|
||
export const SORT_DIRECTIONS = ['ASC', 'DESC'] as const;
|
||
|
||
/**
|
||
* 通知タグの最大個数
|
||
* NotificationHubの仕様上タグ式のOR条件で使えるタグは20個まで
|
||
* https://learn.microsoft.com/ja-jp/azure/notification-hubs/notification-hubs-tags-segment-push-message#tag-expressions
|
||
*/
|
||
export const TAG_MAX_COUNT = 20;
|
||
|
||
/**
|
||
* 通知のプラットフォーム種別文字列
|
||
*/
|
||
export const PNS = {
|
||
WNS: 'wns',
|
||
APNS: 'apns',
|
||
};
|
||
|
||
/**
|
||
* ユーザーのライセンスの有効期限の状態
|
||
*/
|
||
export const USER_LICENSE_EXPIRY_STATUS = {
|
||
NORMAL: 'Normal',
|
||
NO_LICENSE: 'NoLicense',
|
||
ALERT: 'Alert',
|
||
RENEW: 'Renew',
|
||
};
|
||
|
||
/**
|
||
*トライアルライセンスの有効期限(日数)
|
||
* @const {number}
|
||
*/
|
||
export const TRIAL_LICENSE_EXPIRATION_DAYS = 30;
|
||
|
||
/**
|
||
* ライセンスの発行数
|
||
* @const {number}
|
||
*/
|
||
export const TRIAL_LICENSE_ISSUE_NUM = 100;
|
||
|
||
/**
|
||
* worktypeの最大登録数
|
||
* @const {number}
|
||
*/
|
||
export const WORKTYPE_MAX_COUNT = 20;
|
||
|
||
/**
|
||
* worktypeのDefault値の取りうる値
|
||
**/
|
||
export const OPTION_ITEM_VALUE_TYPE = {
|
||
DEFAULT: 'Default',
|
||
BLANK: 'Blank',
|
||
LAST_INPUT: 'LastInput',
|
||
} as const;
|
||
|
||
/**
|
||
* オプションアイテムのタイプ文字列と数値の対応
|
||
**/
|
||
export const OPTION_ITEM_VALUE_TYPE_NUMBER: {
|
||
type: string;
|
||
value: number;
|
||
}[] = [
|
||
{
|
||
type: OPTION_ITEM_VALUE_TYPE.BLANK,
|
||
value: 1,
|
||
},
|
||
{
|
||
type: OPTION_ITEM_VALUE_TYPE.DEFAULT,
|
||
value: 2,
|
||
},
|
||
{
|
||
type: OPTION_ITEM_VALUE_TYPE.LAST_INPUT,
|
||
value: 3,
|
||
},
|
||
];
|
||
|
||
/**
|
||
* ADB2Cユーザのidentity.signInType
|
||
* @const {string[]}
|
||
*/
|
||
export const ADB2C_SIGN_IN_TYPE = {
|
||
EMAILADDRESS: 'emailAddress',
|
||
} as const;
|
||
|
||
/**
|
||
* MANUAL_RECOVERY_REQUIRED
|
||
* @const {string}
|
||
*/
|
||
export const MANUAL_RECOVERY_REQUIRED = '[MANUAL_RECOVERY_REQUIRED]';
|
||
|
||
/**
|
||
* 利用規約種別
|
||
* @const {string[]}
|
||
*/
|
||
export const TERM_TYPE = {
|
||
EULA: 'EULA',
|
||
DPA: 'DPA',
|
||
PRIVACY_NOTICE: 'PrivacyNotice',
|
||
} as const;
|
||
|
||
/**
|
||
* 音声ファイルのフォーマット
|
||
* @const {string}
|
||
*/
|
||
export const USER_AUDIO_FORMAT = 'DS2(QP)';
|
||
|
||
/**
|
||
* ユニットテスト実行をしている場合のNODE_ENVの値
|
||
* @const {string[]}
|
||
*/
|
||
export const NODE_ENV_TEST = 'test';
|
||
|
||
/**
|
||
* ユーザに対するライセンスの状態
|
||
* @const {string[]}
|
||
*/
|
||
export const USER_LICENSE_STATUS = {
|
||
UNALLOCATED: 'unallocated',
|
||
ALLOCATED: 'allocated',
|
||
EXPIRED: 'expired',
|
||
} as const;
|
||
|
||
/**
|
||
* ファイル保持日数の初期値
|
||
* @const {number}
|
||
*/
|
||
export const FILE_RETENTION_DAYS_DEFAULT = 30;
|