Add customergroup sort with bulk order and locked implicit names.

Reorder via customergroup.order (exact id list → sort 0…n-1); block renaming POS/Lieferanten while still allowing create/update of other groups by name.
This commit is contained in:
seb
2026-08-07 03:38:01 +02:00
parent b095ab6199
commit c290fe8f4b
13 changed files with 229 additions and 59 deletions

View File

@@ -1,13 +1,13 @@
export const CREATE = `
INSERT INTO customergroup (name, company_id)
OUTPUT INSERTED.id, INSERTED.name
VALUES (@name, @companyId)
INSERT INTO customergroup (name, company_id, sort)
OUTPUT INSERTED.id, INSERTED.name, INSERTED.sort
VALUES (@name, @companyId, @sort)
`;
export const CREATE_WITHOUT_COMPANY = `
INSERT INTO customergroup (name)
OUTPUT INSERTED.id
VALUES (@name)
INSERT INTO customergroup (name, sort)
OUTPUT INSERTED.id, INSERTED.name, INSERTED.sort
VALUES (@name, @sort)
`;
export const SET_COMPANY = `
@@ -17,28 +17,46 @@ WHERE id = @id
`;
export const GET_BY_COMPANY_AND_NAME = `
SELECT id, name
SELECT id, name, sort
FROM customergroup
WHERE company_id = @companyId AND name = @name
`;
export const LIST_BY_COMPANY = `
SELECT id, name
SELECT id, name, sort
FROM customergroup
WHERE company_id = @companyId
ORDER BY name, id
ORDER BY sort ASC, name ASC, id ASC
`;
export const GET_BY_COMPANY_AND_ID = `
SELECT id, name
SELECT id, name, sort
FROM customergroup
WHERE id = @id AND company_id = @companyId
`;
export const UPDATE_NAME = `
export const GET_NEXT_SORT = `
SELECT ISNULL(MAX(sort), -1) + 1 AS sort
FROM customergroup
WHERE company_id = @companyId
`;
export const LIST_IDS_BY_COMPANY = `
SELECT id
FROM customergroup
WHERE company_id = @companyId
`;
export const UPDATE = `
UPDATE customergroup
SET name = @name
OUTPUT INSERTED.id, INSERTED.name
OUTPUT INSERTED.id, INSERTED.name, INSERTED.sort
WHERE id = @id AND company_id = @companyId
`;
export const UPDATE_SORT = `
UPDATE customergroup
SET sort = @sort
WHERE id = @id AND company_id = @companyId
`;