Files
hrm_eva/ApiControllers/eva_temp_fingerscanControllers.cs
Nakorn Rientrakrunchai 7281477c17 debug on server
2020-08-03 21:05:55 +07:00

226 lines
8.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.Logging;
using TTSW.Controllers;
using TTSW.EF;
using TTSW.Utils;
using TTSW.Constant;
using TTSW.Common;
using TodoAPI2.Models;
using System.Data;
using Microsoft.Extensions.Configuration;
using System.IO;
namespace TodoAPI2.Controllers
{
//[Authorize]
[Produces("application/json")]
[Route("api/eva_temp_fingerscan")]
public class eva_temp_fingerscanController : BaseController
{
#region Private Variables
private ILogger<eva_temp_fingerscanController> _logger;
private Ieva_temp_fingerscanService _repository;
private IConfiguration Configuration { get; set; }
#endregion
#region Properties
#endregion
/// <summary>
/// Default constructure for dependency injection
/// </summary>
/// <param name="repository"></param>
/// <param name="configuration"></param>
/// <param name="logger"></param>
public eva_temp_fingerscanController(ILogger<eva_temp_fingerscanController> logger, Ieva_temp_fingerscanService repository, IConfiguration configuration)
{
_logger = logger;
_repository = repository;
Configuration = configuration;
}
/// <summary>
/// Get Blank Item
/// </summary>
/// <remarks>
/// </remarks>
/// <returns>Return a blank item</returns>
/// <response code="200">Returns the item</response>
/// <response code="500">Error Occurred</response>
[HttpGet("GetBlankItem")]
[ProducesResponseType(typeof(eva_temp_fingerscanWithSelectionViewModel), 200)]
[ProducesResponseType(400)]
[ProducesResponseType(500)]
//[ValidateAntiForgeryToken]
public IActionResult GetBlankItem()
{
try
{
if (!MyHelper.checkAuth(Configuration, HttpContext)) return Unauthorized();
var result = _repository.GetBlankItem();
return Ok(result);
}
catch (Exception ex)
{
_logger.LogCritical($"Exception in IActionResult GetBlankItem.", ex);
return StatusCode(500, $"{ex.Message}");
}
}
/// <summary>
/// Get list items by badgenumber
/// </summary>
/// <remarks>
/// </remarks>
/// <returns>Return list of items by specifced keyword</returns>
/// <response code="200">Returns the item</response>
/// <response code="500">Error Occurred</response>
[HttpGet("")]
[ProducesResponseType(typeof(List<eva_temp_fingerscanViewModel>), 200)]
[ProducesResponseType(400)]
[ProducesResponseType(500)]
//[ValidateAntiForgeryToken]
public IActionResult GetList(string badgenumber)
{
try
{
if (!MyHelper.checkAuth(Configuration, HttpContext)) return Unauthorized();
return Ok(_repository.GetListBybadgenumber(badgenumber));
}
catch (Exception ex)
{
_logger.LogCritical($"Exception in IActionResult GetList.", ex);
return StatusCode(500, $"{ex.Message}");
}
}
/// <summary>
/// Get list items by search
/// </summary>
/// <remarks>
/// </remarks>
/// <returns>Return list of items by specifced keyword</returns>
/// <response code="200">Returns the item</response>
/// <response code="500">Error Occurred</response>
[HttpGet("GetListBySearch")]
[ProducesResponseType(typeof(List<eva_temp_fingerscanViewModel>), 200)]
[ProducesResponseType(400)]
[ProducesResponseType(500)]
//[ValidateAntiForgeryToken]
public IActionResult GetListBySearch(eva_temp_fingerscanSearchModel model)
{
try
{
if (!MyHelper.checkAuth(Configuration, HttpContext)) return Unauthorized();
return Ok(_repository.GetListBySearch(model));
}
catch (Exception ex)
{
_logger.LogCritical($"Exception in IActionResult GetListBySearch.", ex);
string error_detail = ex.Message + " " + ex.StackTrace;
if(ex.InnerException != null)
{
error_detail += ex.InnerException.Message;
}
return StatusCode(500, error_detail);
}
}
///// <summary>
///// InsertFingerScanToHR
///// </summary>
///// <remarks>
///// </remarks>
///// <param name="model"></param>
///// <returns>Response Result Message</returns>
///// <response code="200">Response Result Message</response>
///// <response code="400">If the model is invalid</response>
///// <response code="500">Error Occurred</response>
//[HttpPost("InsertFingerScanToHR")]
//[ProducesResponseType(typeof(CommonResponseMessage), 200)]
//[ProducesResponseType(400)]
//[ProducesResponseType(500)]
////[ValidateAntiForgeryToken]
//public IActionResult InsertFingerScanToHR([FromBody] List<string> model)
//{
// if (ModelState.IsValid)
// {
// try
// {
// string rowCount = _repository.InsertFingerScanToHR(model);
// var message = new CommonResponseMessage();
// message.code = "200";
// message.message = "เพิ่มข้อมูลเรียบร้อย จำนวน " + rowCount + " รายการ";
// message.data = null;
// return Ok(message);
// }
// catch (Exception ex)
// {
// _logger.LogCritical($"InsertFingerScanToHR.", ex);
// return StatusCode(500, $"{ex.Message}");
// }
// }
// return BadRequest(ModelState);
//}
/// <summary>
/// RecieveFingerScanFromLocal
/// </summary>
/// <remarks>
/// </remarks>
/// <param name="model"></param>
/// <returns>Response Result Message</returns>
/// <response code="200">Response Result Message</response>
/// <response code="400">If the model is invalid</response>
/// <response code="500">Error Occurred</response>
[HttpPost("RecieveFingerScanFromLocal")]
[ProducesResponseType(typeof(CommonResponseMessage), 200)]
[ProducesResponseType(400)]
[ProducesResponseType(500)]
//[ValidateAntiForgeryToken]
public IActionResult RecieveFingerScanFromLocal([FromBody] List<fingerscanDataModel> model)
{
if (ModelState.IsValid)
{
try
{
Console.WriteLine("RecieveFingerScanFromLocal");
string rowCount = _repository.RecieveFingerScanFromLocal(model);
var message = new CommonResponseMessage();
message.code = "200";
message.message = "เพิ่มข้อมูลเรียบร้อย จำนวน " + rowCount + " รายการ";
message.data = null;
return Ok(message);
}
catch (Exception ex)
{
_logger.LogCritical($"RecieveFingerScanFromLocal.", ex);
Console.WriteLine(ex.Message);
Console.WriteLine(ex.StackTrace);
if (ex.InnerException != null)
{
Console.WriteLine(ex.InnerException.Message);
}
return StatusCode(500, $"{ex.Message}");
}
}
return BadRequest(ModelState);
}
}
}