ปรับปรุง api รับค่าการสแกนนิ้ว เพิ่มเติม
This commit is contained in:
@@ -137,43 +137,43 @@ namespace TodoAPI2.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
/// <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}");
|
||||
}
|
||||
}
|
||||
///// <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);
|
||||
}
|
||||
// return BadRequest(ModelState);
|
||||
//}
|
||||
|
||||
/// <summary>
|
||||
/// RecieveFingerScanFromLocal
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace TodoAPI2.Models
|
||||
List<eva_temp_fingerscanViewModel> GetListBybadgenumber(string badgenumber);
|
||||
List<eva_temp_fingerscanViewModel> GetListBySearch(eva_temp_fingerscanSearchModel model);
|
||||
eva_temp_fingerscanWithSelectionViewModel GetBlankItem();
|
||||
string InsertFingerScanToHR(List<string> model);
|
||||
string InsertFingerScanToHR(List<input_finger> model);
|
||||
string RecieveFingerScanFromLocal(List<fingerscanDataModel> model);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,13 @@ namespace TodoAPI2.Models
|
||||
public string path { get; set; }
|
||||
}
|
||||
|
||||
public class input_finger
|
||||
{
|
||||
public string data { get; set; }
|
||||
public string base64_img { get; set; }
|
||||
public string image_id { get; set; }
|
||||
}
|
||||
|
||||
public class eva_temp_fingerscanService : Ieva_temp_fingerscanService
|
||||
{
|
||||
private IBaseRepository2<eva_temp_fingerscanEntity, string> _repository;
|
||||
@@ -208,38 +215,45 @@ namespace TodoAPI2.Models
|
||||
// join e in all_emp on ClearName(i.fullname) equals ClearName(e.halfname)
|
||||
// select e.id.ToString() + "#" + GetDateStringForDB(i.checktime) + "#" + GetTimeStringForDB(i.checktime)).ToList();
|
||||
|
||||
var result = new List<string>();
|
||||
var result = new List<input_finger>();
|
||||
|
||||
foreach (var i in model)
|
||||
{
|
||||
var id = (from e in all_emp
|
||||
where ClearName(i.fullname) == ClearName(e.halfname)
|
||||
select e.id.ToString()).FirstOrDefault().ToString();
|
||||
byte[] imageBytes = Convert.FromBase64String(i.base64img);
|
||||
var r = PostAttachment(imageBytes, "jk" + i.image_id + ".jpg");
|
||||
var r2 = id + "#" + GetDateStringForDB(i.checktime) + "#" + GetTimeStringForDB(i.checktime) + "#" + r;
|
||||
result.Add(r2);
|
||||
if (!string.IsNullOrEmpty(id))
|
||||
{
|
||||
var r2 = id + "#" + GetDateStringForDB(i.checktime) + "#" + GetTimeStringForDB(i.checktime);
|
||||
var a = new input_finger();
|
||||
a.data = r2;
|
||||
a.base64_img = i.base64img;
|
||||
a.image_id = i.image_id;
|
||||
result.Add(a);
|
||||
}
|
||||
}
|
||||
|
||||
return InsertFingerScanToHR(result);
|
||||
}
|
||||
|
||||
public string InsertFingerScanToHR(List<string> model)
|
||||
public string InsertFingerScanToHR(List<input_finger> model)
|
||||
{
|
||||
int count_insert = 0;
|
||||
foreach (var i in model)
|
||||
{
|
||||
var data = i.Split('#');
|
||||
var data = i.data.Split('#');
|
||||
string employee_id = data[0];
|
||||
string date = data[1];
|
||||
string time = data[2];
|
||||
string picture = data[3];
|
||||
|
||||
string sql_checking = $"select employee_id,date,time from tad_time_attendances where employee_id={employee_id} and date='{date}' and time='{time}' ";
|
||||
|
||||
DataTable dt = db.ExecuteDataTableNpgsql(sql_checking, null);
|
||||
if (dt.Rows.Count == 0)
|
||||
{
|
||||
byte[] imageBytes = Convert.FromBase64String(i.base64_img);
|
||||
var picture = PostAttachment(imageBytes, "jk" + i.image_id + ".jpg");
|
||||
|
||||
string sql_insert = $"insert into tad_time_attendances(employee_id,date,time,picture) values({employee_id},'{date}','{time}','{picture}')";
|
||||
db.ExecuteNonQueryNpgsql(sql_insert, null);
|
||||
count_insert++;
|
||||
|
||||
12
tb320eva.xml
12
tb320eva.xml
@@ -3208,18 +3208,6 @@
|
||||
<response code="200">Returns the item</response>
|
||||
<response code="500">Error Occurred</response>
|
||||
</member>
|
||||
<member name="M:TodoAPI2.Controllers.eva_temp_fingerscanController.InsertFingerScanToHR(System.Collections.Generic.List{System.String})">
|
||||
<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>
|
||||
</member>
|
||||
<member name="M:TodoAPI2.Controllers.eva_temp_fingerscanController.RecieveFingerScanFromLocal(System.Collections.Generic.List{TodoAPI2.Models.fingerscanDataModel})">
|
||||
<summary>
|
||||
RecieveFingerScanFromLocal
|
||||
|
||||
Reference in New Issue
Block a user