/**
 * @swagger
 * /api/v1/admin/services:
 *   get:
 *     summary: 获取服务列表
 *     description: 获取所有服务列表，支持分页和分类筛选
 *     tags: [Admin Services]
 *     security:
 *       - bearerAuth: []
 *     parameters:
 *       - in: query
 *         name: page
 *         schema:
 *           type: integer
 *           minimum: 1
 *           default: 1
 *         description: 页码
 *       - in: query
 *         name: limit
 *         schema:
 *           type: integer
 *           minimum: 1
 *           maximum: 100
 *           default: 10
 *         description: 每页数量
 *       - in: query
 *         name: categoryId
 *         schema:
 *           type: string
 *           format: uuid
 *         description: 分类ID筛选
 *       - in: query
 *         name: status
 *         schema:
 *           type: string
 *           enum: [active, inactive]
 *         description: 服务状态筛选
 *       - in: query
 *         name: search
 *         schema:
 *           type: string
 *         description: 搜索关键词（标题）
 *     responses:
 *       200:
 *         description: 获取成功
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 success:
 *                   type: boolean
 *                   example: true
 *                 data:
 *                   type: object
 *                   properties:
 *                     services:
 *                       type: array
 *                       items:
 *                         allOf:
 *                           - $ref: '#/components/schemas/Service'
 *                           - type: object
 *                             properties:
 *                               category:
 *                                 $ref: '#/components/schemas/Category'
 *                     pagination:
 *                       $ref: '#/components/schemas/PaginationMeta'
 *       401:
 *         description: 未授权
 *       403:
 *         description: 权限不足
 *
 *   post:
 *     summary: 创建服务
 *     description: 创建新的服务项目，支持多语言内容
 *     tags: [Admin Services]
 *     security:
 *       - bearerAuth: []
 *     requestBody:
 *       required: true
 *       content:
 *         application/json:
 *           schema:
 *             type: object
 *             required:
 *               - categoryId
 *               - titleZh
 *               - descriptionZh
 *             properties:
 *               categoryId:
 *                 type: string
 *                 format: uuid
 *                 description: 分类ID
 *               serviceType:
 *                 type: string
 *                 description: 服务具体类型，用于跳转对应预约表单
 *                 enum: [flight, hotel, lounge, airport_transfer, unaccompanied_minor, train, telemedicine, special_passenger, pet_transport, guide_translation, visa, exhibition, air_logistics, sea_freight, travel_planning, insurance]
 *                 example: "flight"
 *               titleZh:
 *                 type: string
 *                 description: 中文标题
 *                 example: "机场接机服务"
 *               titleEn:
 *                 type: string
 *                 description: 英文标题
 *                 example: "Airport Pickup Service"
 *               titlePt:
 *                 type: string
 *                 description: 葡萄牙语标题
 *                 example: "Serviço de Busca no Aeroporto"
 *               descriptionZh:
 *                 type: string
 *                 description: 中文描述
 *                 example: "专业的机场接机服务"
 *               descriptionEn:
 *                 type: string
 *                 description: 英文描述
 *               descriptionPt:
 *                 type: string
 *                 description: 葡萄牙语描述
 *               image:
 *                 type: string
 *                 description: 服务图片URL
 *                 example: "/uploads/images/service.jpg"
 *               price:
 *                 type: number
 *                 format: decimal
 *                 description: 服务价格
 *                 example: 299.00
 *               status:
 *                 type: string
 *                 enum: [active, inactive]
 *                 default: active
 *                 description: 服务状态
 *               sortOrder:
 *                 type: integer
 *                 default: 0
 *                 description: 排序顺序
 *           example:
 *             categoryId: "550e8400-e29b-41d4-a716-446655440000"
 *             serviceType: "airport_transfer"
 *             titleZh: "机场接机服务"
 *             titleEn: "Airport Pickup Service"
 *             descriptionZh: "专业的机场接机服务"
 *             price: 299.00
 *             status: "active"
 *     responses:
 *       201:
 *         description: 创建成功
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 success:
 *                   type: boolean
 *                   example: true
 *                 data:
 *                   $ref: '#/components/schemas/Service'
 *       400:
 *         description: 请求参数错误
 *       401:
 *         description: 未授权
 *       403:
 *         description: 权限不足
 *
 * /api/v1/admin/services/{id}:
 *   get:
 *     summary: 获取服务详情
 *     description: 获取指定服务的详细信息
 *     tags: [Admin Services]
 *     security:
 *       - bearerAuth: []
 *     parameters:
 *       - in: path
 *         name: id
 *         required: true
 *         schema:
 *           type: string
 *           format: uuid
 *         description: 服务ID
 *     responses:
 *       200:
 *         description: 获取成功
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 success:
 *                   type: boolean
 *                   example: true
 *                 data:
 *                   allOf:
 *                     - $ref: '#/components/schemas/Service'
 *                     - type: object
 *                       properties:
 *                         category:
 *                           $ref: '#/components/schemas/Category'
 *       401:
 *         description: 未授权
 *       403:
 *         description: 权限不足
 *       404:
 *         description: 服务不存在
 *
 *   put:
 *     summary: 更新服务
 *     description: 更新服务信息
 *     tags: [Admin Services]
 *     security:
 *       - bearerAuth: []
 *     parameters:
 *       - in: path
 *         name: id
 *         required: true
 *         schema:
 *           type: string
 *           format: uuid
 *         description: 服务ID
 *     requestBody:
 *       required: true
 *       content:
 *         application/json:
 *           schema:
 *             type: object
 *             properties:
 *               categoryId:
 *                 type: string
 *                 format: uuid
 *               serviceType:
 *                 type: string
 *                 description: 服务具体类型，用于跳转对应预约表单
 *                 enum: [flight, hotel, lounge, airport_transfer, unaccompanied_minor, train, telemedicine, special_passenger, pet_transport, guide_translation, visa, exhibition, air_logistics, sea_freight, travel_planning, insurance]
 *               titleZh:
 *                 type: string
 *               titleEn:
 *                 type: string
 *               titlePt:
 *                 type: string
 *               descriptionZh:
 *                 type: string
 *               descriptionEn:
 *                 type: string
 *               descriptionPt:
 *                 type: string
 *               image:
 *                 type: string
 *               price:
 *                 type: number
 *                 format: decimal
 *               status:
 *                 type: string
 *                 enum: [active, inactive]
 *               sortOrder:
 *                 type: integer
 *           example:
 *             titleZh: "更新后的服务标题"
 *             serviceType: "flight"
 *             price: 399.00
 *     responses:
 *       200:
 *         description: 更新成功
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 success:
 *                   type: boolean
 *                   example: true
 *                 data:
 *                   $ref: '#/components/schemas/Service'
 *       400:
 *         description: 请求参数错误
 *       401:
 *         description: 未授权
 *       403:
 *         description: 权限不足
 *       404:
 *         description: 服务不存在
 *
 *   delete:
 *     summary: 删除服务
 *     description: 删除指定服务
 *     tags: [Admin Services]
 *     security:
 *       - bearerAuth: []
 *     parameters:
 *       - in: path
 *         name: id
 *         required: true
 *         schema:
 *           type: string
 *           format: uuid
 *         description: 服务ID
 *     responses:
 *       200:
 *         description: 删除成功
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 success:
 *                   type: boolean
 *                   example: true
 *                 message:
 *                   type: string
 *                   example: "Service deleted successfully"
 *       401:
 *         description: 未授权
 *       403:
 *         description: 权限不足
 *       404:
 *         description: 服务不存在
 */
