| 123456789101112131415161718192021222324252627282930313233 |
- import { defineEventHandler, EventHandlerRequest } from 'h3';
- import { DB } from '~~/server/db/DB';
- import { createErrorResponse, createSuccessResponse, IResponse } from '~~/server/utils/response';
- import type { IChannel } from './[id]';
- export default defineEventHandler<EventHandlerRequest, Promise<IResponse<IChannel & {
- childs: IChannel[];
- }>>>(async (event) => {
- try {
- const query = getQuery(event);
- const name = query.name as string;
- if (!name)
- return createErrorResponse('分类名称不能为空');
-
- const category = await DB.table('pr_cms_channel')
- .where('name', name)
- .where('status', 'normal')
- .first();
- if (!category)
- return createErrorResponse('分类不存在');
- const childs = await DB.table('pr_cms_channel')
- .where('status', 'normal')
- .where('parent_id', category.id)
- .orderBy('weigh', 'desc')
- .orderBy('id', 'desc')
- .get();
- category.childs = childs;
- return createSuccessResponse(category);
- } catch (error) {
- return createErrorResponse(error);
- }
- });
|