upd
This commit is contained in:
@@ -6,3 +6,12 @@ export const roleNameEnum = pgEnum("role_name", [
|
||||
"director",
|
||||
"manager",
|
||||
]);
|
||||
|
||||
// Enum для типов серверов
|
||||
export const serverTypeEnum = pgEnum("server_type", ["stream", "local"]);
|
||||
|
||||
// Enum для местоположения серверов
|
||||
export const serverLocationEnum = pgEnum("server_location", ["ru1", "uae1"]);
|
||||
|
||||
// Enum для tier серверов
|
||||
export const serverTierEnum = pgEnum("server_tier", ["demo", "prod"]);
|
||||
|
||||
@@ -4,6 +4,7 @@ import { apps } from "./apps";
|
||||
import { users } from "./users";
|
||||
import { relations } from "drizzle-orm";
|
||||
import { createInsertSchema, createSelectSchema } from "drizzle-zod";
|
||||
import { serverTierEnum } from "./enums";
|
||||
|
||||
// Enums
|
||||
export const sessionModeEnum = pgEnum("session_mode", ["stream", "local"]);
|
||||
@@ -20,16 +21,13 @@ export const serverSessions = pgTable("server_sessions", {
|
||||
appId: uuid("app_id")
|
||||
.notNull()
|
||||
.references(() => apps.id),
|
||||
userId: uuid("user_id")
|
||||
.notNull()
|
||||
.references(() => users.id),
|
||||
startAt: timestamp("start_at", { withTimezone: true })
|
||||
.defaultNow()
|
||||
.notNull(),
|
||||
userId: uuid("user_id").references(() => users.id), // Nullable - для неавторизованных пользователей на demo-серверах
|
||||
startAt: timestamp("start_at", { withTimezone: true }).defaultNow().notNull(),
|
||||
endAt: timestamp("end_at", { withTimezone: true }), // Default 30 minutes from start_at
|
||||
appPid: integer("app_pid"),
|
||||
cirrusPid: integer("cirrus_pid"),
|
||||
mode: sessionModeEnum("mode").notNull(), // stream, local
|
||||
tier: serverTierEnum("tier"), // demo, prod (только для stream, nullable)
|
||||
status: sessionStatusEnum("status").notNull(), // starting, started, ending, ended
|
||||
createdAt: timestamp("created_at", { withTimezone: true })
|
||||
.defaultNow()
|
||||
|
||||
@@ -2,7 +2,6 @@ import {
|
||||
pgTable,
|
||||
uuid,
|
||||
varchar,
|
||||
pgEnum,
|
||||
timestamp,
|
||||
integer,
|
||||
} from "drizzle-orm/pg-core";
|
||||
@@ -10,11 +9,10 @@ import { relations } from "drizzle-orm";
|
||||
import { createInsertSchema, createSelectSchema } from "drizzle-zod";
|
||||
import { serverSessions } from "./serverSessions";
|
||||
import { branches } from "./branches";
|
||||
import { serverLocationEnum, serverTypeEnum, serverTierEnum } from "./enums";
|
||||
|
||||
// Enums
|
||||
export const serverLocationEnum = pgEnum("server_location", ["ru1", "uae1"]);
|
||||
export const serverTypeEnum = pgEnum("server_type", ["stream", "local"]);
|
||||
export const serverTierEnum = pgEnum("server_tier", ["demo", "prod"]);
|
||||
// Re-export enums for backward compatibility
|
||||
export { serverLocationEnum, serverTypeEnum, serverTierEnum };
|
||||
|
||||
export const servers = pgTable("servers", {
|
||||
id: uuid("id").primaryKey().defaultRandom(),
|
||||
|
||||
Reference in New Issue
Block a user