hrms-api-backend/BMA.EHR.Application/Repositories/Reports/ProbationReportRepository.cs

338 lines
30 KiB
C#

using BMA.EHR.Application.Common.Interfaces;
using BMA.EHR.Application.Responses;
using BMA.EHR.Application.Repositories.MessageQueue;
using BMA.EHR.Domain.Models.Probation;
using BMA.EHR.Domain.Extensions;
using Microsoft.AspNetCore.Hosting;
using Microsoft.EntityFrameworkCore;
using System.Net.Http.Headers;
using Newtonsoft.Json;
using System.Globalization;
using Microsoft.Extensions.Configuration;
namespace BMA.EHR.Application.Repositories.Reports
{
public class ProbationReportRepository
{
#region " Fields "
private readonly IApplicationDBContext _dbContext;
private readonly IWebHostEnvironment _hostingEnvironment;
private readonly NotificationRepository _repositoryNoti;
private readonly IConfiguration _configuration;
#endregion
#region " Constructor and Destructor "
public ProbationReportRepository(IApplicationDBContext dbContext,
NotificationRepository repositoryNoti,
IWebHostEnvironment hostEnvironment,
IConfiguration configuration)
{
_dbContext = dbContext;
_hostingEnvironment = hostEnvironment;
_repositoryNoti = repositoryNoti;
_configuration = configuration;
}
#endregion
#region " Methods "
#region
public async Task<object> GetProbationAssignAsync(Guid assign_id, string token)
{
var api_url = $"{_configuration["APIPROBATION"]}assign/probation-assign?assign_id={assign_id}";
ProbationAssignResponse probation_assign;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var req = new HttpRequestMessage(HttpMethod.Get, api_url);
var res = await client.SendAsync(req);
var result = await res.Content.ReadAsStringAsync();
probation_assign = JsonConvert.DeserializeObject<ProbationAssignResponse>(result);
if (probation_assign.data != null)
{
return new
{
Name = string.IsNullOrEmpty(probation_assign.data.profile.name) ? string.Empty : probation_assign.data.profile.name,
Position = string.IsNullOrEmpty(probation_assign.data.profile.Position) ? string.Empty : probation_assign.data.profile.Position,
Department = string.IsNullOrEmpty(probation_assign.data.profile.Department) ? string.Empty : probation_assign.data.profile.Department,
OrganizationOrganization = string.IsNullOrEmpty(probation_assign.data.profile.OrganizationOrganization) ? string.Empty : probation_assign.data.profile.OrganizationOrganization,
Oc = string.IsNullOrEmpty(probation_assign.data.profile.Oc) ? string.Empty : probation_assign.data.profile.Oc,
DateStart = string.IsNullOrEmpty(probation_assign.data.assign.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : probation_assign.data.assign.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
DateFinish = string.IsNullOrEmpty(probation_assign.data.assign.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : probation_assign.data.assign.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
NameMentor1 = string.IsNullOrEmpty(probation_assign.data.mentors[0].name) ? string.Empty : probation_assign.data.mentors[0].name,
DateMentor1 = string.IsNullOrEmpty(probation_assign.data.mentors[0].dated.ToString()) ? "วันที่ เดือน พ.ศ." : probation_assign.data.mentors[0].dated.ToThaiFullDate().ToString().ToThaiNumber(),
PositionMentor1 = string.IsNullOrEmpty(probation_assign.data.mentors[0].Position) ? string.Empty : probation_assign.data.mentors[0].Position,
NameMentor2 = probation_assign.data.mentors.Count > 1 ? probation_assign.data.mentors[1].name : string.Empty,
DateMentor2 = probation_assign.data.mentors.Count > 1 ? probation_assign.data.mentors[1].dated.ToThaiFullDate().ToString().ToThaiNumber() : "วันที่ เดือน พ.ศ.",
PositionMentor2 = probation_assign.data.mentors.Count > 1 ? probation_assign.data.mentors[1].Position : string.Empty,
NameCommander = string.IsNullOrEmpty(probation_assign.data.commander.name) ? string.Empty : probation_assign.data.commander.name,
DateCommander = string.IsNullOrEmpty(probation_assign.data.commander.dated.ToString()) ? "วันที่ เดือน พ.ศ." : probation_assign.data.commander.dated.ToThaiFullDate().ToString().ToThaiNumber(),
PositionCommander = string.IsNullOrEmpty(probation_assign.data.commander.Position) ? string.Empty : probation_assign.data.commander.Position,
Jobs = probation_assign.data.jobs.ToList(),
Knowledge = probation_assign.data.knowledges.ToList(),
Competency = probation_assign.data.competencys.ToList(),
Outputs = probation_assign.data.outputs.ToList(),
OtherDesc = string.IsNullOrEmpty(probation_assign.data.assign.other_desc) ? string.Empty : probation_assign.data.assign.other_desc,
Other4Desc = string.IsNullOrEmpty(probation_assign.data.assign.other4_desc) ? string.Empty : probation_assign.data.assign.other4_desc,
Other5No1Desc = string.IsNullOrEmpty(probation_assign.data.assign.other4_desc) ? string.Empty : probation_assign.data.assign.other4_desc,
Other5No2Desc = string.IsNullOrEmpty(probation_assign.data.assign.other5_no2_desc) ? string.Empty : probation_assign.data.assign.other5_no2_desc,
};
}
else
{
return null;
}
}
}
#endregion
#region (, )
public async Task<object> GetEvaluateRecordAsync(Guid assign_id, string token)
{
var api_url = $"{_configuration["APIPROBATION"]}report/form-record?id={assign_id}";
EvaluateRecordAssignResponse evaluate_record;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var req = new HttpRequestMessage(HttpMethod.Get, api_url);
var res = await client.SendAsync(req);
var result = await res.Content.ReadAsStringAsync();
evaluate_record = JsonConvert.DeserializeObject<EvaluateRecordAssignResponse>(result);
if (evaluate_record.data != null)
{
evaluate_record.data.evaluate.orientation = evaluate_record.data.evaluate.orientation == "1" ? "(/) ดำเนินการแล้ว ( ) ยังไม่ได้ดำเนินการ" : "( ) ดำเนินการแล้ว (/) ยังไม่ได้ดำเนินการ";
evaluate_record.data.evaluate.self_learning = evaluate_record.data.evaluate.self_learning == "1" ? "(/) ดำเนินการแล้ว ( ) ยังไม่ได้ดำเนินการ" : "( ) ดำเนินการแล้ว (/) ยังไม่ได้ดำเนินการ";
evaluate_record.data.evaluate.training_seminar = evaluate_record.data.evaluate.training_seminar == "1" ? "(/) ดำเนินการแล้ว ( ) ยังไม่ได้ดำเนินการ" : "( ) ดำเนินการแล้ว (/) ยังไม่ได้ดำเนินการ";
evaluate_record.data.evaluate.other_training = evaluate_record.data.evaluate.other_training == "1" ? "(/) ดำเนินการแล้ว ( ) ยังไม่ได้ดำเนินการ" : "( ) ดำเนินการแล้ว (/) ยังไม่ได้ดำเนินการ";
return new
{
DirectorName = string.IsNullOrEmpty(evaluate_record.data.director.name) ? string.Empty : evaluate_record.data.director.name,
DirectorPosition = string.IsNullOrEmpty(evaluate_record.data.director.Position) ? string.Empty : evaluate_record.data.director.Position,
DirectorDated = string.IsNullOrEmpty(evaluate_record.data.evaluate.sign_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_record.data.evaluate.sign_dated.ToThaiFullDate().ToString().ToThaiNumber(),
Name = string.IsNullOrEmpty(evaluate_record.data.experimentee.name) ? string.Empty : evaluate_record.data.experimentee.name,
Position = string.IsNullOrEmpty(evaluate_record.data.experimentee.Position) ? string.Empty : evaluate_record.data.experimentee.Position,
Department = string.IsNullOrEmpty(evaluate_record.data.experimentee.Department) ? string.Empty : evaluate_record.data.experimentee.Department,
Organizationorganization = string.IsNullOrEmpty(evaluate_record.data.experimentee.OrganizationOrganization) ? string.Empty : evaluate_record.data.experimentee.OrganizationOrganization,
Oc = string.IsNullOrEmpty(evaluate_record.data.experimentee.Oc) ? string.Empty : evaluate_record.data.experimentee.Oc,
DateStart = string.IsNullOrEmpty(evaluate_record.data.assign.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_record.data.assign.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
DateFinish = string.IsNullOrEmpty(evaluate_record.data.assign.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_record.data.assign.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
No = evaluate_record.data.evaluate.no = string.IsNullOrEmpty(evaluate_record.data.evaluate.no) ? string.Empty : evaluate_record.data.evaluate.no.ToThaiNumber(),
EvaluateDateStart = string.IsNullOrEmpty(evaluate_record.data.evaluate.date_start.ToString()) ? string.Empty : evaluate_record.data.evaluate.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
EvaluateDateFinish = string.IsNullOrEmpty(evaluate_record.data.evaluate.date_finish.ToString()) ? string.Empty : evaluate_record.data.evaluate.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
Achievements = evaluate_record.data.evaluate.achievements,
Role = evaluate_record.data.evaluate.role == "mentor" ? "ผู้ดูแลการทดลองปฏิบัติหน้าที่ราชการ" : "ผู้บังคับบัญชา",
Evaluate = evaluate_record.data.evaluate,
};
}
else
{
return null;
}
}
}
#endregion
#region ()
public async Task<object> GetEvaluateAssignAsync(Guid id, string token)
{
var api_url = $"{_configuration["APIPROBATION"]}report/evaluate-commander?id={id}";
EvaluateAssignResponse evaluate_assign;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var req = new HttpRequestMessage(HttpMethod.Get, api_url);
var res = await client.SendAsync(req);
var result = await res.Content.ReadAsStringAsync();
evaluate_assign = JsonConvert.DeserializeObject<EvaluateAssignResponse>(result);
if (evaluate_assign.data != null)
{
evaluate_assign.data.evaluate.orientation = evaluate_assign.data.evaluate.orientation == "1" ? "[/] ดำเนินการแล้ว [ ] ยังไม่ได้ดำเนินการ" : "[ ] ดำเนินการแล้ว [/] ยังไม่ได้ดำเนินการ";
evaluate_assign.data.evaluate.self_learning = evaluate_assign.data.evaluate.self_learning == "1" ? "[/] ดำเนินการแล้ว [ ] ยังไม่ได้ดำเนินการ" : "[ ] ดำเนินการแล้ว [/] ยังไม่ได้ดำเนินการ";
evaluate_assign.data.evaluate.training_seminar = evaluate_assign.data.evaluate.training_seminar == "1" ? "[/] ดำเนินการแล้ว [ ] ยังไม่ได้ดำเนินการ" : "[ ] ดำเนินการแล้ว [/] ยังไม่ได้ดำเนินการ";
evaluate_assign.data.evaluate.other_training = evaluate_assign.data.evaluate.other_training == "1" ? "[/] ดำเนินการแล้ว [ ] ยังไม่ได้ดำเนินการ" : "[ ] ดำเนินการแล้ว [/] ยังไม่ได้ดำเนินการ";
return new
{
No = string.IsNullOrEmpty(evaluate_assign.data.evaluate.no.ToString()) ? string.Empty : evaluate_assign.data.evaluate.no.ToString().ToThaiNumber(),
EvaluateDateStart = string.IsNullOrEmpty(evaluate_assign.data.evaluate.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
EvaluateDateFinish = string.IsNullOrEmpty(evaluate_assign.data.evaluate.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
Name = string.IsNullOrEmpty(evaluate_assign.data.experimentee.name) ? string.Empty : evaluate_assign.data.experimentee.name,
Position = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Position) ? string.Empty : evaluate_assign.data.experimentee.Position,
Department = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Department) ? string.Empty : evaluate_assign.data.experimentee.Department,
OrganizationOrganization = string.IsNullOrEmpty(evaluate_assign.data.experimentee.OrganizationOrganization) ? string.Empty : evaluate_assign.data.experimentee.OrganizationOrganization,
Oc = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Oc) ? string.Empty : evaluate_assign.data.experimentee.Oc,
DateStart = string.IsNullOrEmpty(evaluate_assign.data.assign.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.assign.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
DateFinish = string.IsNullOrEmpty(evaluate_assign.data.assign.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.assign.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
CommanderName = string.IsNullOrEmpty(evaluate_assign.data.commander.name) ? string.Empty : evaluate_assign.data.commander.name,
CommanderPosition = string.IsNullOrEmpty(evaluate_assign.data.commander.Position) ? string.Empty : evaluate_assign.data.commander.Position,
CommanderDated = string.IsNullOrEmpty(evaluate_assign.data.evaluate.sign_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.sign_dated.ToThaiFullDate().ToString().ToThaiNumber(),
BehaviorStrengthDesc = evaluate_assign.data.evaluate.behavior_strength_desc,
BehaviorImproveDesc = evaluate_assign.data.evaluate.behavior_improve_desc,
Evaluate = evaluate_assign.data.evaluate,
};
}
else
{
return null;
}
}
}
#endregion
#region ()
public async Task<object> GetEvaluateChairmanAssignAsync(Guid id, string token)
{
var api_url = $"{_configuration["APIPROBATION"]}report/evaluate-chairman?id={id}";
EvaluateChairmanAssignResponse evaluate_assign;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var req = new HttpRequestMessage(HttpMethod.Get, api_url);
var res = await client.SendAsync(req);
var result = await res.Content.ReadAsStringAsync();
evaluate_assign = JsonConvert.DeserializeObject<EvaluateChairmanAssignResponse>(result);
if (evaluate_assign.data != null)
{
evaluate_assign.data.evaluate.achievement_score = evaluate_assign.data.evaluate.achievement_score.ToThaiNumber();
evaluate_assign.data.evaluate.behavior_score = evaluate_assign.data.evaluate.behavior_score.ToThaiNumber();
evaluate_assign.data.evaluate.sum_score = evaluate_assign.data.evaluate.sum_score.ToThaiNumber();
evaluate_assign.data.evaluate.achievement_percent = evaluate_assign.data.evaluate.achievement_percent.ToThaiNumber();
evaluate_assign.data.evaluate.behavior_percent = evaluate_assign.data.evaluate.behavior_percent.ToThaiNumber();
evaluate_assign.data.evaluate.sum_percent = evaluate_assign.data.evaluate.sum_percent.ToThaiNumber();
evaluate_assign.data.evaluate.develop_orientation_score = evaluate_assign.data.evaluate.develop_orientation_score.ToThaiNumber();
evaluate_assign.data.evaluate.develop_self_learning_score = evaluate_assign.data.evaluate.develop_self_learning_score.ToThaiNumber();
evaluate_assign.data.evaluate.develop_training_seminar_score = evaluate_assign.data.evaluate.develop_training_seminar_score.ToThaiNumber();
evaluate_assign.data.evaluate.develop_other_training_score = evaluate_assign.data.evaluate.develop_other_training_score.ToThaiNumber();
evaluate_assign.data.evaluate.develop_total_score = evaluate_assign.data.evaluate.develop_total_score.ToThaiNumber();
evaluate_assign.data.evaluate.develop_orientation_percent = evaluate_assign.data.evaluate.develop_orientation_percent.ToThaiNumber();
evaluate_assign.data.evaluate.develop_self_learning_percent = evaluate_assign.data.evaluate.develop_self_learning_percent.ToThaiNumber();
evaluate_assign.data.evaluate.develop_training_seminar_percent = evaluate_assign.data.evaluate.develop_training_seminar_percent.ToThaiNumber();
evaluate_assign.data.evaluate.develop_other_training_percent = evaluate_assign.data.evaluate.develop_other_training_percent.ToThaiNumber();
evaluate_assign.data.evaluate.develop_total_percent = evaluate_assign.data.evaluate.develop_total_percent.ToThaiNumber();
return new
{
No = string.IsNullOrEmpty(evaluate_assign.data.evaluate.no.ToString()) ? string.Empty : evaluate_assign.data.evaluate.no.ToString().ToThaiNumber(),
EvaluateDateStart = string.IsNullOrEmpty(evaluate_assign.data.evaluate.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
EvaluateDateFinish = string.IsNullOrEmpty(evaluate_assign.data.evaluate.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
Name = string.IsNullOrEmpty(evaluate_assign.data.experimentee.name) ? string.Empty : evaluate_assign.data.experimentee.name,
Position = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Position) ? string.Empty : evaluate_assign.data.experimentee.Position,
Department = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Department) ? string.Empty : evaluate_assign.data.experimentee.Department,
OrganizationOrganization = string.IsNullOrEmpty(evaluate_assign.data.experimentee.OrganizationOrganization) ? string.Empty : evaluate_assign.data.experimentee.OrganizationOrganization,
Oc = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Oc) ? string.Empty : evaluate_assign.data.experimentee.Oc,
DateStart = string.IsNullOrEmpty(evaluate_assign.data.assign.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.assign.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
DateFinish = string.IsNullOrEmpty(evaluate_assign.data.assign.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.assign.date_finish.ToThaiFullDate().ToString().ToThaiNumber(),
ChairmanName = string.IsNullOrEmpty(evaluate_assign.data.chairman.name) ? string.Empty : evaluate_assign.data.chairman.name,
ChairmanPosition = string.IsNullOrEmpty(evaluate_assign.data.chairman.Position) ? string.Empty : evaluate_assign.data.chairman.Position,
ChairmanDated = string.IsNullOrEmpty(evaluate_assign.data.evaluate.chairman_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.chairman_dated.ToThaiFullDate().ToString().ToThaiNumber(),
Director1Name = string.IsNullOrEmpty(evaluate_assign.data.director1.name) ? string.Empty : evaluate_assign.data.director1.name,
Director1Position = string.IsNullOrEmpty(evaluate_assign.data.director1.Position) ? string.Empty : evaluate_assign.data.director1.Position,
Director1Dated = string.IsNullOrEmpty(evaluate_assign.data.evaluate.director1_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.director1_dated.ToThaiFullDate().ToString().ToThaiNumber(),
Director2Name = string.IsNullOrEmpty(evaluate_assign.data.director2.name) ? string.Empty : evaluate_assign.data.director2.name,
Director2Position = string.IsNullOrEmpty(evaluate_assign.data.director2.Position) ? string.Empty : evaluate_assign.data.director2.Position,
Director2Dated = string.IsNullOrEmpty(evaluate_assign.data.evaluate.director2_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.director2_dated.ToThaiFullDate().ToString().ToThaiNumber(),
Evaluate = evaluate_assign.data.evaluate,
};
}
else
{
return null;
}
}
}
#endregion
#region
public async Task<object> GetEvaluateResultAssignAsync(Guid id, string token)
{
var api_url = $"{_configuration["APIPROBATION"]}evaluate-result?assign_id={id}";
EvaluateResultAssignResponse evaluate_assign;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var req = new HttpRequestMessage(HttpMethod.Get, api_url);
var res = await client.SendAsync(req);
var result = await res.Content.ReadAsStringAsync();
evaluate_assign = JsonConvert.DeserializeObject<EvaluateResultAssignResponse>(result);
if (evaluate_assign.data != null)
{
return new
{
EvaluateDateStart = string.IsNullOrEmpty(evaluate_assign.data.evaluate.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
EvaluateDateFinish = string.IsNullOrEmpty(evaluate_assign.data.evaluate.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.date_start.ToThaiFullDate().ToString().ToThaiNumber(),
Position = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Position) ? string.Empty : evaluate_assign.data.experimentee.Position,
Department = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Department) ? string.Empty : evaluate_assign.data.experimentee.Department,
OrganizationOrganization = string.IsNullOrEmpty(evaluate_assign.data.experimentee.OrganizationOrganization) ? string.Empty : evaluate_assign.data.experimentee.OrganizationOrganization,
Oc = string.IsNullOrEmpty(evaluate_assign.data.experimentee.Oc) ? string.Empty : evaluate_assign.data.experimentee.Oc,
Reson = string.IsNullOrEmpty(evaluate_assign.data.evaluate.reson) ? string.Empty : evaluate_assign.data.evaluate.reson,
DevelopComplete = string.IsNullOrEmpty(evaluate_assign.data.evaluate.develop_complete.ToString()) ? 0 : evaluate_assign.data.evaluate.develop_complete,
PassResult = string.IsNullOrEmpty(evaluate_assign.data.evaluate.pass_result.ToString()) ? 0 : evaluate_assign.data.evaluate.pass_result,
ExpandMonth = string.IsNullOrEmpty(evaluate_assign.data.evaluate.expand_month.ToString()) ? string.Empty : evaluate_assign.data.evaluate.expand_month.ToString().ToThaiNumber(),
ChairmanName = string.IsNullOrEmpty(evaluate_assign.data.chairman.name) ? string.Empty : evaluate_assign.data.chairman.name,
ChairmanPosition = string.IsNullOrEmpty(evaluate_assign.data.chairman.Position) ? string.Empty : evaluate_assign.data.chairman.Position,
ChairmanDate = string.IsNullOrEmpty(evaluate_assign.data.evaluate.chairman_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.chairman_dated.ToThaiFullDate().ToString().ToThaiNumber(),
CommanderName = string.IsNullOrEmpty(evaluate_assign.data.commander.name) ? string.Empty : evaluate_assign.data.commander.name,
CommanderPosition = string.IsNullOrEmpty(evaluate_assign.data.commander.Position) ? string.Empty : evaluate_assign.data.commander.Position,
CommanderDate = string.IsNullOrEmpty(evaluate_assign.data.evaluate.director1_dated.ToString()) ? "วันที่ เดือน พ.ศ." : evaluate_assign.data.evaluate.director1_dated.ToThaiFullDate().ToString().ToThaiNumber(),
Name = evaluate_assign.data.experimentee.name,
RoundNo = evaluate_assign.data.assign.round_no.ToString().ToThaiNumber(),
DateStart = string.IsNullOrEmpty(evaluate_assign.data.assign.date_start.ToString()) ? "วันที่ เดือน พ.ศ." : DateTime.Parse(evaluate_assign.data.assign.date_start).ToThaiFullDate().ToString().ToThaiNumber(),
DateFinish = string.IsNullOrEmpty(evaluate_assign.data.assign.date_finish.ToString()) ? "วันที่ เดือน พ.ศ." : DateTime.Parse(evaluate_assign.data.assign.date_finish).ToThaiFullDate().ToString().ToThaiNumber(),
};
}
else
{
return null;
}
}
}
#endregion
#region
//public static string ConvertDateMonthYear(string year, string month, string date)
//{
// year = year.ToInteger().ToThaiYear().ToString().ToThaiNumber();
// month = month.ToInteger().ToThaiMonth();
// date = date.StartsWith("0") ? date.Substring(1).ToThaiNumber() : date.ToThaiNumber();
// return $"วันที่ {date} เดือน {month} พ.ศ. {year}";
//}
#endregion
#endregion
public async Task NotifyProbation()
{
var cronjobNotis = await _dbContext.Set<CronjobNotiProbation>()
.AsQueryable()
.ToListAsync();
foreach (var cronjobNoti in cronjobNotis)
{
if (cronjobNoti.ReceiveDate.Date == DateTime.Now.Date && cronjobNoti.IsSendNoti == false)
{
await _repositoryNoti.PushNotificationAsync(
cronjobNoti.ReceiverUserId,
cronjobNoti.Subject,
cronjobNoti.Body,
cronjobNoti.Payload,
cronjobNoti.IsSendInbox,
cronjobNoti.IsSendMail
);
cronjobNoti.IsSendNoti = true;
}
}
await _dbContext.SaveChangesAsync();
}
}
}