76 lines
1.7 KiB
JavaScript
76 lines
1.7 KiB
JavaScript
const express = require("express");
|
|
const {
|
|
getGainByTicketCode,
|
|
deliverClaim,
|
|
} = require("../controllers/employee.controller");
|
|
|
|
const authMiddleware = require("../middlewares/auth.middleware");
|
|
const roleMiddleware = require("../middlewares/role.middleware");
|
|
|
|
const router = express.Router();
|
|
|
|
/**
|
|
* @swagger
|
|
* /api/employee/ticket/{code}:
|
|
* get:
|
|
* summary: Rechercher le gain associé à un ticket
|
|
* tags:
|
|
* - Employee
|
|
* security:
|
|
* - bearerAuth: []
|
|
* parameters:
|
|
* - in: path
|
|
* name: code
|
|
* required: true
|
|
* schema:
|
|
* type: string
|
|
* description: Code du ticket à 10 caractères
|
|
* responses:
|
|
* 200:
|
|
* description: Gain trouvé
|
|
* 400:
|
|
* description: Ticket non encore utilisé par un client
|
|
* 404:
|
|
* description: Ticket introuvable
|
|
*/
|
|
router.get(
|
|
"/ticket/:code",
|
|
authMiddleware,
|
|
roleMiddleware("EMPLOYEE"),
|
|
getGainByTicketCode
|
|
);
|
|
|
|
/**
|
|
* @swagger
|
|
* /api/employee/claim/{id}/deliver:
|
|
* patch:
|
|
* summary: Marquer un lot comme remis en boutique
|
|
* tags:
|
|
* - Employee
|
|
* security:
|
|
* - bearerAuth: []
|
|
* parameters:
|
|
* - in: path
|
|
* name: id
|
|
* required: true
|
|
* schema:
|
|
* type: integer
|
|
* description: ID de la réclamation
|
|
* responses:
|
|
* 200:
|
|
* description: Lot remis avec succès
|
|
* 400:
|
|
* description: Gain expiré ou non valide
|
|
* 404:
|
|
* description: Réclamation introuvable
|
|
* 409:
|
|
* description: Lot déjà remis
|
|
*/
|
|
router.patch(
|
|
"/claim/:id/deliver",
|
|
authMiddleware,
|
|
roleMiddleware("EMPLOYEE"),
|
|
deliverClaim
|
|
);
|
|
|
|
module.exports = router; |