Files

35 lines
958 B
JavaScript
Raw Permalink Normal View History

'use strict';
const Controller = require('egg').Controller;
/**
* 轮播图控制器 - CarouselController
*
* 负责首页轮播图的查询和展示。
*
* 主要接口:
* - GET /api/carousel : 获取启用的轮播图列表(按 sort_order 升序排列)
*/
class CarouselController extends Controller {
/**
* 获取轮播图列表
*
* 查询条件:enabled = 1(仅返回启用状态的轮播图)
* 排序规则:sort_order ASC(序号越小越靠前)
*/
async index() {
const { ctx } = this;
const list = await ctx.model.Carousel.findAll({
where: { enabled: true },
order: [
['sort_order', 'ASC'],
],
attributes: ['id', 'image_url', 'title', 'content', 'button_text', 'button_link', 'sort_order', 'link_url', 'enabled', 'created_at', 'updated_at'],
});
ctx.body = ctx.helper.success(list, '获取轮播图列表成功');
}
}
module.exports = CarouselController;