Agent and Mission GraphQL CRUD operations

This commit is contained in:
Eng. Elias
2024-02-20 17:06:45 +04:00
parent e6f08d85fc
commit 619f199abe
13 changed files with 1744 additions and 59 deletions

View File

@@ -24,10 +24,10 @@ CREATE TABLE "Agent" (
CREATE TABLE "Mission" (
"id" SERIAL NOT NULL,
"name" TEXT NOT NULL,
"tasks" JSONB NOT NULL,
"verbose" BOOLEAN NOT NULL,
"process" "MissionProcess" NOT NULL,
"result" TEXT NOT NULL,
"tasks" JSONB[] DEFAULT ARRAY[]::JSONB[],
"verbose" BOOLEAN NOT NULL DEFAULT false,
"process" "MissionProcess" NOT NULL DEFAULT 'SEQUENTIAL',
"result" TEXT NOT NULL DEFAULT '',
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updatedAt" TIMESTAMP(3) NOT NULL,
@@ -35,16 +35,19 @@ CREATE TABLE "Mission" (
);
-- CreateTable
CREATE TABLE "AgentInMission" (
"agentId" INTEGER NOT NULL,
"missionId" INTEGER NOT NULL,
"assignedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "AgentInMission_pkey" PRIMARY KEY ("agentId","missionId")
CREATE TABLE "_AgentToMission" (
"A" INTEGER NOT NULL,
"B" INTEGER NOT NULL
);
-- AddForeignKey
ALTER TABLE "AgentInMission" ADD CONSTRAINT "AgentInMission_agentId_fkey" FOREIGN KEY ("agentId") REFERENCES "Agent"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
-- CreateIndex
CREATE UNIQUE INDEX "_AgentToMission_AB_unique" ON "_AgentToMission"("A", "B");
-- CreateIndex
CREATE INDEX "_AgentToMission_B_index" ON "_AgentToMission"("B");
-- AddForeignKey
ALTER TABLE "AgentInMission" ADD CONSTRAINT "AgentInMission_missionId_fkey" FOREIGN KEY ("missionId") REFERENCES "Mission"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE "_AgentToMission" ADD CONSTRAINT "_AgentToMission_A_fkey" FOREIGN KEY ("A") REFERENCES "Agent"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "_AgentToMission" ADD CONSTRAINT "_AgentToMission_B_fkey" FOREIGN KEY ("B") REFERENCES "Mission"("id") ON DELETE CASCADE ON UPDATE CASCADE;