using Common;
using Microsoft.AspNetCore.Mvc;
using Services;
using LitJson;
using Model.Customer;
using Model;
using Infrastructure;
using Newtonsoft.Json.Linq;
using System.Text.Json.Nodes;
using System;
using Dto.Client;
using Infrastructure.Model;
using Vo.Client;
namespace Controllers.Client
{
///
/// ApiInfo)Controller
///
// [Route("ApiInfo")]
// [ApiExplorerSettings(GroupName = "ApiInfo")]
public class ApiPubController : BaseController
{
private readonly IApiInfoService _ApiInfoService;
private readonly IApiGroupService _ApiGroupService;
// private readonly ISysMenuService _SysMenuService;
public ApiPubController(IApiInfoService ApiInfoService, IApiGroupService ApiGroupService)//, ISysMenuService SysMenuService)
{
_ApiInfoService = ApiInfoService;
_ApiGroupService = ApiGroupService;
// _SysMenuService = SysMenuService;
}
#region 通用-获取接口列表
[HttpPost]
[Route("/v1/router/api/list")]
public IActionResult list([FromBody] ApiInfoDto param)
{
List groups = _ApiGroupService.ApiList(param);
List groupSubs = _ApiInfoService.ApiList(param, groups);
Dictionary response = _ApiInfoService.apiInfoList(param, groups, groupSubs);
return SUCCESS(response);
}
#endregion
#region 通用-获取分组列表
[HttpPost]
[Route("/v1/router/api/groups")]
public IActionResult groups([FromBody] ApiGroupDto param)
{
List response = _ApiGroupService.groups(param);
return SUCCESS(response);
}
#endregion
#region 通用-接收接口数据通知
[HttpPost]
[Route("/v1/router/api/notice")]
public IActionResult notice([FromBody] List param)
{
_ApiInfoService.noticeAll(param);
return SUCCESS("ok");
}
#endregion
}
}