Files
张成 4443d43ec1 1
2025-12-15 22:03:01 +08:00

101 lines
3.2 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
const Framework = require("../../framework/node-core-framework.js");
const authorizationService = require('../services/authorization_service.js');
/**
* 账号管理控制器(客户端接口)
* 提供客户端调用的账号相关接口
*/
module.exports = {
/**
* @swagger
* /api/account/check-authorization:
* post:
* summary: 检查账号授权状态
* description: 根据设备SN码检查账号的授权状态剩余天数、是否过期等
* tags: [前端-账号管理]
* requestBody:
* required: true
* content:
* application/json:
* schema:
* type: object
* required:
* - sn_code
* properties:
* sn_code:
* type: string
* description: 设备SN码
* example: 'GHJU'
* responses:
* 200:
* description: 检查成功
* content:
* application/json:
* schema:
* type: object
* properties:
* code:
* type: integer
* description: 状态码0表示成功
* example: 0
* message:
* type: string
* description: 响应消息
* example: 'success'
* data:
* type: object
* properties:
* is_authorized:
* type: boolean
* description: 是否已授权
* example: true
* remaining_days:
* type: integer
* description: 剩余天数
* example: 30
* message:
* type: string
* description: 授权状态消息
* example: '授权有效,剩余 30 天'
* 400:
* description: 参数错误
* content:
* application/json:
* schema:
* type: object
* properties:
* code:
* type: integer
* example: 400
* message:
* type: string
* example: '请提供设备SN码'
* 500:
* description: 服务器错误
*/
'POST /account/check-authorization': async (ctx) => {
try {
const { sn_code } = ctx.getBody();
// 参数验证
if (!sn_code) {
return ctx.fail('请提供设备SN码');
}
// 调用授权服务检查授权状态
const result = await authorizationService.checkAuthorization(sn_code, 'sn_code');
// 返回授权检查结果
return ctx.success({
is_authorized: result.is_authorized,
remaining_days: result.remaining_days,
message: result.message
});
} catch (error) {
console.error('[账号管理] 检查授权状态失败:', error);
return ctx.fail('检查授权状态失败: ' + (error.message || '未知错误'));
}
}
};