using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using DbInRunWebApi.Model; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace DbInRunWebApi.Controllers { [Route("[controller]")] [ApiController] public class LoginController : ControllerBase { // POST: Login [HttpPost("TryLogin")] public LoginResponse Login([FromBody] LoginUser user) { var service = Cdy.Tag.ServiceLocator.Locator.Resolve(); string Token = service.Login(user.UserName, user.Password); return new LoginResponse() { Token = Token, Result = !string.IsNullOrEmpty(Token), LoginTime = DateTime.UtcNow.ToBinary(),TimeOut = service.TimeOut }; } /// /// /// /// /// [HttpPost("Hart")] public bool Hart([FromBody] Requestbase token) { if (string.IsNullOrEmpty(token.Time)) { return false; } long ltmp = long.Parse(token.Time); if ((DateTime.UtcNow - DateTime.FromBinary(ltmp)).TotalSeconds > Cdy.Tag.ServiceLocator.Locator.Resolve().TimeOut) { return false; } return Cdy.Tag.ServiceLocator.Locator.Resolve().FreshUserId(token.Token); } /// /// /// /// /// [HttpPost("Logout")] public bool Logout([FromBody] Requestbase token) { return Cdy.Tag.ServiceLocator.Locator.Resolve().Logout(token.Token); } } }