attach label to item

This commit is contained in:
Fred KISSIE
2026-05-05 21:35:10 +02:00
parent 09baf2f32e
commit 0d04cc365f
6 changed files with 177 additions and 15 deletions

View File

@@ -16,14 +16,13 @@ import {
resourceLabels,
resources,
siteLabels,
sites,
type Label
sites
} from "@server/db";
import response from "@server/lib/response";
import logger from "@server/logger";
import type { CreateOrEditLabelResponse } from "@server/routers/labels/types";
import HttpCode from "@server/types/HttpCode";
import { eq } from "drizzle-orm";
import { and, eq } from "drizzle-orm";
import { NextFunction, Request, Response } from "express";
import createHttpError from "http-errors";
import { z } from "zod";
@@ -74,7 +73,10 @@ export async function createOrgLabel(
const { name, color, siteId, resourceId } = parsedBody.data;
if (siteId) {
const siteCount = await db.$count(sites, eq(sites.siteId, siteId));
const siteCount = await db.$count(
sites,
and(eq(sites.siteId, siteId), eq(sites.orgId, orgId))
);
if (siteCount === 0) {
return next(
@@ -88,8 +90,11 @@ export async function createOrgLabel(
if (resourceId) {
const resourceCount = await db.$count(
sites,
eq(resources.resourceId, resourceId)
resources,
and(
eq(resources.resourceId, resourceId),
eq(resources.orgId, orgId)
)
);
if (resourceCount === 0) {