created LogsController with

Create/Edit/Delete Logs methods on it.
#29
This commit is contained in:
Watts 2017-04-12 22:01:48 +01:00
parent 2342aef8f9
commit c2de9a0575
2 changed files with 62 additions and 11 deletions

View File

@ -0,0 +1,62 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using System.Web.Http.Controllers;
using Interfaces;
namespace WindowsDataCenter.Controllers
{
[RoutePrefix("api/logs")]
public class LogsController:ApiController
{
private IRepository _repo;
private ILogger _logger;
public LogsController(IRepository repo, ILogger logger)
{
if (repo == null)
{
throw new ArgumentNullException(nameof(repo));
}
if (logger == null)
{
throw new ArgumentNullException(nameof(logger));
}
_repo = repo;
_logger = logger;
}
/// <summary>
///
/// </summary>
/// <param name="log"></param>
/// <returns></returns>
[HttpPost]
[Route("create")]
public IHttpActionResult CreateAndEditResultLog([FromBody] TimeLog log)
{
log.Source = LogSource.UI;
if (log.Id > 0)
{
_repo.UpdateLog(log);
}
else
{
_repo.CreateLog(log);
}
return Ok();
}
[HttpDelete]
[Route("delete")]
public IHttpActionResult DeleteLog([FromBody] TimeLog log)
{
_logger.Info("Removing Log {0} for user id {1}", log.Id, log.UserId);
_repo.DeleteLog(log);
return Ok();
}
}
}

View File

@ -44,16 +44,5 @@ namespace WindowsDataCenter
Content = new StringContent(logId.ToString()) Content = new StringContent(logId.ToString())
}); });
} }
/// <summary>
///
/// </summary>
/// <param name="log"></param>
/// <returns></returns>
[HttpPost]
[Route("manual")]
public IHttpActionResult ManuallyPostData([FromBody] ManualLog log)
{
throw new NotImplementedException();
}
} }
} }