This commit is contained in:
2025-06-19 14:03:15 +05:00
parent 652e0e9989
commit 37232fc39f
10 changed files with 72 additions and 39 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
PORT=3001
DB_URL=postgres://postgres:v1sq3vD5faXL@194.26.138.94:5432/mate
HMAC_SECRET=9a9ccda5db157ccfd04b4094264c55f58097f85d1fd6c22fbab0a86680dd3efd
API_URL=http://192.168.1.122:3000
API_URL=http://192.168.1.224:3000
COMPANY_ID=2a4f54db-7a1f-42c2-a965-3b185d92b063
+2 -2
View File
@@ -47,10 +47,10 @@ export const appsToServers = pgTable(
{
appId: uuid("app_id")
.notNull()
.references(() => appsTable.id),
.references(() => appsTable.id, { onDelete: "cascade" }),
serverId: uuid("server_id")
.notNull()
.references(() => serversTable.id),
.references(() => serversTable.id, { onDelete: "cascade" }),
},
(t) => [primaryKey({ columns: [t.appId, t.serverId] })]
);
+37 -6
View File
@@ -1,17 +1,20 @@
import { pgTable, timestamp, uuid, varchar } from "drizzle-orm/pg-core";
import {
pgTable,
primaryKey,
timestamp,
uuid,
varchar,
} from "drizzle-orm/pg-core";
import { companiesTable } from "./companies";
import { relations } from "drizzle-orm";
import { sessionsTable } from "./sessions";
import { usersTable } from "./users";
import { managersTable } from "./managers";
export const clientsTable = pgTable("clients", {
id: uuid("id").defaultRandom().primaryKey(),
name: varchar("name").notNull(),
phone: varchar("phone", { length: 11 }).notNull(),
phone: varchar("phone", { length: 11 }).unique().notNull(),
email: varchar("email"),
ownerId: uuid("owner_id")
.notNull()
.references(() => usersTable.id, { onDelete: "cascade" }),
companyId: uuid("company_id")
.notNull()
.references(() => companiesTable.id, { onDelete: "cascade" }),
@@ -30,4 +33,32 @@ export const clientsRelations = relations(clientsTable, ({ one, many }) => ({
references: [companiesTable.id],
}),
sessions: many(sessionsTable),
managers: many(clientsToManagers),
}));
export const clientsToManagers = pgTable(
"clients_to_managers",
{
clientId: uuid("client_id")
.notNull()
.references(() => clientsTable.id, { onDelete: "cascade" }),
managerId: uuid("manager_id")
.notNull()
.references(() => managersTable.id, { onDelete: "cascade" }),
},
(t) => [primaryKey({ columns: [t.clientId, t.managerId] })]
);
export const clientsToManagersRelations = relations(
clientsToManagers,
({ one }) => ({
client: one(clientsTable, {
fields: [clientsToManagers.clientId],
references: [clientsTable.id],
}),
manager: one(managersTable, {
fields: [clientsToManagers.managerId],
references: [managersTable.id],
}),
})
);
+6 -6
View File
@@ -1,5 +1,5 @@
import { pgTable, text, timestamp, uuid } from "drizzle-orm/pg-core";
import { usersTable } from "./users";
import { managersTable } from "./managers";
import { sessionsTable } from "./sessions";
import { relations } from "drizzle-orm";
@@ -8,18 +8,18 @@ export const commentsTable = pgTable("comments", {
text: text("text").notNull(),
createdAt: timestamp("created_at").notNull().defaultNow(),
updatedAt: timestamp("updated_at").notNull().defaultNow(),
ownerId: uuid("owner_id")
managerId: uuid("manager_id")
.notNull()
.references(() => usersTable.id, { onDelete: "cascade" }),
.references(() => managersTable.id, { onDelete: "cascade" }),
sessionId: uuid("session_id")
.notNull()
.references(() => sessionsTable.id, { onDelete: "cascade" }),
});
export const commentsRelations = relations(commentsTable, ({ one }) => ({
owner: one(usersTable, {
fields: [commentsTable.ownerId],
references: [usersTable.id],
manager: one(managersTable, {
fields: [commentsTable.managerId],
references: [managersTable.id],
}),
session: one(sessionsTable, {
fields: [commentsTable.sessionId],
+2 -2
View File
@@ -1,6 +1,6 @@
import { relations } from "drizzle-orm";
import { pgTable, timestamp, uuid, varchar } from "drizzle-orm/pg-core";
import { usersTable } from "./users";
import { managersTable } from "./managers";
import { appsTable } from "./apps";
import { serversTable } from "./servers";
@@ -17,7 +17,7 @@ export const companiesTable = pgTable("companies", {
});
export const companiesRelations = relations(companiesTable, ({ many }) => ({
users: many(usersTable),
managers: many(managersTable),
servers: many(serversTable),
apps: many(appsTable),
}));
+1 -1
View File
@@ -1,4 +1,4 @@
export * from "./users";
export * from "./managers";
export * from "./tokens";
export * from "./companies";
export * from "./servers";
@@ -3,8 +3,9 @@ import { pgTable, text, timestamp, uuid, varchar } from "drizzle-orm/pg-core";
import { tokensTable } from "./tokens";
import { companiesTable } from "./companies";
import { commentsTable } from "./comments";
import { clientsToManagers } from "./clients";
export const usersTable = pgTable("users", {
export const managersTable = pgTable("managers", {
id: uuid("id").defaultRandom().primaryKey(),
fullname: text("fullname"),
email: varchar("email").unique().notNull(),
@@ -21,11 +22,12 @@ export const usersTable = pgTable("users", {
.$onUpdate(() => new Date()),
});
export const usersRelations = relations(usersTable, ({ one, many }) => ({
export const managersRelations = relations(managersTable, ({ one, many }) => ({
company: one(companiesTable, {
fields: [usersTable.companyId],
fields: [managersTable.companyId],
references: [companiesTable.id],
}),
tokens: many(tokensTable),
comments: many(commentsTable),
clients: many(clientsToManagers),
}));
+6 -6
View File
@@ -7,7 +7,7 @@ import {
integer,
} from "drizzle-orm/pg-core";
import { companiesTable } from "./companies";
import { usersTable } from "./users";
import { managersTable } from "./managers";
import { relations } from "drizzle-orm";
import { serversTable } from "./servers";
import { clientsTable } from "./clients";
@@ -28,9 +28,9 @@ export const sessionsTable = pgTable(
appId: uuid("app_id")
.notNull()
.references(() => appsTable.id, { onDelete: "cascade" }),
ownerId: uuid("owner_id")
managerId: uuid("manager_id")
.notNull()
.references(() => usersTable.id, { onDelete: "cascade" }),
.references(() => managersTable.id, { onDelete: "cascade" }),
serverId: uuid("server_id")
.notNull()
.references(() => serversTable.id, { onDelete: "cascade" }),
@@ -56,9 +56,9 @@ export const sessionsTable = pgTable(
);
export const sessionsRelations = relations(sessionsTable, ({ one, many }) => ({
owner: one(usersTable, {
fields: [sessionsTable.ownerId],
references: [usersTable.id],
manager: one(managersTable, {
fields: [sessionsTable.managerId],
references: [managersTable.id],
}),
server: one(serversTable, {
fields: [sessionsTable.serverId],
+6 -6
View File
@@ -1,13 +1,13 @@
import { relations } from "drizzle-orm";
import { pgTable, text, timestamp, uuid } from "drizzle-orm/pg-core";
import { usersTable } from "./users";
import { managersTable } from "./managers";
export const tokensTable = pgTable("tokens", {
id: uuid("id").defaultRandom().primaryKey(),
token: text("token").notNull(),
userId: uuid("user_id")
managerId: uuid("manager_id")
.notNull()
.references(() => usersTable.id, { onDelete: "cascade" }),
.references(() => managersTable.id, { onDelete: "cascade" }),
createdAt: timestamp("created_at", { withTimezone: true })
.notNull()
.defaultNow(),
@@ -18,8 +18,8 @@ export const tokensTable = pgTable("tokens", {
});
export const tokensRelations = relations(tokensTable, ({ one }) => ({
user: one(usersTable, {
fields: [tokensTable.userId],
references: [usersTable.id],
manager: one(managersTable, {
fields: [tokensTable.managerId],
references: [managersTable.id],
}),
}));
+6 -6
View File
@@ -8,7 +8,7 @@ import cron from "node-cron";
import { exec, execFile } from "child_process";
import { createHmac } from "crypto";
import got from "got";
import { readdirSync, readFile, readFileSync } from "fs";
import { readdirSync } from "fs";
import treeKill from "tree-kill";
type Session = typeof sessionsTable.$inferSelect & {
@@ -296,10 +296,10 @@ serve({
fetch: () => new Response("venom"),
});
async function runSummarization() {
try {
const res = execFile("C://neuro/summary.exe");
} catch (error) {}
}
// async function runSummarization() {
// try {
// const res = execFile("C://neuro/summary.exe");
// } catch (error) {}
// }
console.log("Server is running at http://localhost:3001");