using Furion.DynamicApiController;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Nirvana.Common.ApiBase;
using System;
using System.Threading.Tasks;
using YBDevice.NApi.Application.ThirdClient.Family;
namespace YBDevice.NApi.Application.ThirdClient
{
///
/// 第三方相关调用
///
[ApiDescriptionSettings("ThirdClient")]
[Authorize]
public class OpenAppService : IDynamicApiController
{
private readonly IOpenService _openService;
private readonly IOpenFamilyService _familyService;
public OpenAppService(IOpenService openService, IOpenFamilyService familyService)
{
_openService = openService;
_familyService = familyService;
}
///
/// BMI计算
///
///
///
[AllowAnonymous]
public async Task CalcBmiAsync(BmiInfoC2SDto data)
{
return await _openService.CalcBmiAsync(data);
}
///
/// 身高预测
///
///
///
[AllowAnonymous]
public async Task CalcPredictHeightAsync(HeightInfoC2SDto data)
{
return await _openService.CalcPredictHeightAsync(data);
}
///
/// 登录接口
///
///
///
[AllowAnonymous]
public async Task OnLoginAsync(TouTiaoLoginC2SDto data)
{
return await _openService.OnLoginAsync(data);
}
///
/// 解密用户资料,如果未注册则自动进行注册,否则更新资料
///
///
///
[AllowAnonymous]
public async Task DecryptDataAsync(DecryptUserInfoC2SDto data)
{
return await _openService.DecryptDataAsync(data);
}
///
/// 用户注册
///
///
///
[AllowAnonymous]
public async Task RegisterAsync(SubmitUserInfoC2SDto data)
{
return await _openService.RegisterAsync(data);
}
///
/// 获取测量记录列表
///
/// 家庭成员ID
/// 页码
/// 每页显示数量
///
[QueryParameters]
public async Task GetResultListAsync(Guid familyid, int page = 1, int pagesize = 10)
{
return await _openService.GetResultListAsync(familyid, page, pagesize);
}
///
/// 家庭成员列表
///
///
public async Task GetFamilyListAsync()
{
return await _familyService.GetListAsync();
}
///
/// 修改家庭成员资料
///
///
public async Task SubmitFamilyAsync(FamilySubmitC2SDto data)
{
return await _familyService.SubmitAsync(data);
}
///
/// 获取用户信息
///
/// 家庭成员ID
///
[QueryParameters]
public async Task GetUserInfoAsync(Guid? familyid)
{
return await _openService.GetUserInfoAsync(familyid);
}
///
/// 添加测量记录
///
///
///
public async Task AddResultAsync(InsertResultC2SDto data)
{
return await _openService.AddResultAsync(data);
}
///
/// 退出登录
///
///
///
[HttpGet]
[QueryParameters]
public async Task OutLoginAsync(string sessionId)
{
return await _openService.OutLoginAsync(sessionId);
}
///
/// 修改用户资料
///
///
///
public async Task SubmitUserInfoAsync(SumitUserInfoC2SDto data)
{
return await _openService.SubmitUserInfoAsync(data);
}
}
}