using Hotline.Caching.Interfaces;
using Hotline.CallCenter.BlackLists;
using Hotline.CallCenter.Calls;
using Hotline.CallCenter.Ivrs;
using Hotline.CallCenter.Tels;
using Hotline.KnowledgeBase;
using Hotline.Orders;
using Hotline.Repository.SqlSugar;
using Hotline.Settings;
using Hotline.Share.Dtos.Home;
using Hotline.Users;
using MapsterMapper;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using StackExchange.Redis;
using XF.Domain.Authentications;
using XF.Domain.Constants;
using XF.Domain.Exceptions;
using XF.Domain.Repository;
namespace Hotline.Api.Controllers;
///
/// 主页相关接口
///
public class HomeController : BaseController
{
private readonly ISugarUnitOfWork _uow;
private readonly ISessionContext _sessionContext;
private readonly ISystemAuthorityRepository _systemAuthorityRepository;
private readonly ISystemMenuRepository _systemMenuRepository;
private readonly IMapper _mapper;
private readonly IRepository _userFastMenuRepository;
private readonly IRepository _userRepository;
private readonly ISystemSettingCacheManager _systemSettingCacheManager;
public HomeController(
ISugarUnitOfWork uow,
ISessionContext sessionContext,
ISystemAuthorityRepository systemAuthorityRepository,
ISystemMenuRepository systemMenuRepository,
IMapper mapper,
IRepository userFastMenuRepository,
IRepository userRepository,
ISystemSettingCacheManager systemSettingCacheManager)
{
_uow = uow;
_sessionContext = sessionContext;
_systemAuthorityRepository = systemAuthorityRepository;
_systemMenuRepository = systemMenuRepository;
_mapper = mapper;
_userFastMenuRepository = userFastMenuRepository;
_userRepository = userRepository;
_systemSettingCacheManager = systemSettingCacheManager;
}
#region 开放请求接口
///
/// 获取当前用户信息
///
///
[HttpGet("myinfo")]
public async Task