This commit is contained in:
seb
2026-10-10 02:08:10 +02:00
parent d4e2b05cb0
commit 7f8661be3e
43 changed files with 3312 additions and 2339 deletions

View File

@@ -1,6 +1,8 @@
import * as db from '../../db/printer.js';
import { emit } from '../sse.js';
// #region Helpers
function requireSelectedCompany(req) {
const companyId = req.user?.selectedCompanyId;
if (companyId == null) {
@@ -29,6 +31,8 @@ function printerErrorStatus(error) {
return 500;
}
// #endregion
/**
* Registers printer routes for the authenticated user's selected company.
* @param {import('express').Application} app
@@ -76,6 +80,8 @@ export function register(app, basePath = '') {
* schema:
* $ref: '#/components/schemas/Error'
*/
// #region GET /printer
app.get(`${basePath}/printer`, async (req, res) => {
const selected = requireSelectedCompany(req);
if (selected.error) {
@@ -92,6 +98,8 @@ export function register(app, basePath = '') {
}
});
// #endregion
/**
* @openapi
* /printer/order:
@@ -148,6 +156,8 @@ export function register(app, basePath = '') {
* schema:
* $ref: '#/components/schemas/Error'
*/
// #region PUT /printer/order
app.put(`${basePath}/printer/order`, async (req, res) => {
const selected = requireSelectedCompany(req);
if (selected.error) {
@@ -167,6 +177,8 @@ export function register(app, basePath = '') {
}
});
// #endregion
/**
* @openapi
* /printer/{id}:
@@ -219,6 +231,8 @@ export function register(app, basePath = '') {
* schema:
* $ref: '#/components/schemas/Error'
*/
// #region GET /printer/:id
app.get(`${basePath}/printer/:id`, async (req, res) => {
const selected = requireSelectedCompany(req);
if (selected.error) {
@@ -243,6 +257,8 @@ export function register(app, basePath = '') {
}
});
// #endregion
/**
* @openapi
* /printer:
@@ -291,6 +307,8 @@ export function register(app, basePath = '') {
* schema:
* $ref: '#/components/schemas/Error'
*/
// #region POST /printer
app.post(`${basePath}/printer`, async (req, res) => {
const selected = requireSelectedCompany(req);
if (selected.error) {
@@ -317,6 +335,8 @@ export function register(app, basePath = '') {
}
});
// #endregion
async function handleUpdate(req, res) {
const selected = requireSelectedCompany(req);
if (selected.error) {
@@ -461,9 +481,18 @@ export function register(app, basePath = '') {
* schema:
* $ref: '#/components/schemas/Error'
*/
// #region PATCH /printer/:id
app.patch(`${basePath}/printer/:id`, handleUpdate);
// #endregion
// #region PUT /printer/:id
app.put(`${basePath}/printer/:id`, handleUpdate);
// #endregion
/**
* @openapi
* /printer/{id}:
@@ -510,6 +539,8 @@ export function register(app, basePath = '') {
* schema:
* $ref: '#/components/schemas/Error'
*/
// #region DELETE /printer/:id
app.delete(`${basePath}/printer/:id`, async (req, res) => {
const selected = requireSelectedCompany(req);
if (selected.error) {
@@ -531,4 +562,6 @@ export function register(app, basePath = '') {
res.status(status).json({ error: error.message });
}
});
// #endregion
}