noti วินัย

This commit is contained in:
kittapath 2025-02-19 17:56:02 +07:00
parent 9e513d3f1a
commit ae990c0c5f
21 changed files with 244 additions and 1508 deletions

View file

@ -15,6 +15,7 @@ using System.Security.Claims;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Microsoft.AspNetCore.Mvc.RazorPages;
using System.Net.Http.Headers;
namespace BMA.EHR.DisciplineComplaint.Service.Controllers
{
@ -31,11 +32,13 @@ namespace BMA.EHR.DisciplineComplaint.Service.Controllers
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly NotificationRepository _repositoryNoti;
private readonly PermissionRepository _permission;
private readonly IConfiguration _configuration;
public DisciplineComplaintController(DisciplineDbContext context,
MinIODisciplineService documentService,
NotificationRepository repositoryNoti,
IHttpContextAccessor httpContextAccessor,
IConfiguration configuration,
PermissionRepository permission)
{
// _repository = repository;
@ -44,13 +47,14 @@ namespace BMA.EHR.DisciplineComplaint.Service.Controllers
_httpContextAccessor = httpContextAccessor;
_repositoryNoti = repositoryNoti;
_permission = permission;
_configuration = configuration;
}
#region " Properties "
private string? UserId => _httpContextAccessor?.HttpContext?.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value;
private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value;
private string? token => _httpContextAccessor.HttpContext.Request.Headers["Authorization"];
#endregion
@ -372,15 +376,6 @@ namespace BMA.EHR.DisciplineComplaint.Service.Controllers
LastUpdatedAt = DateTime.Now,
});
}
await _repositoryNoti.PushNotificationAsync(
Guid.Parse("08dbca3a-8b6a-4a4e-8b23-1f62e4f30ef6"),
$"มีคำขอร้องเรียนเรื่อง {req.title}",
$"มีคำขอร้องเรียนเรื่อง {req.title}",
"",
"",
true,
true
);
await _context.DisciplineComplaints.AddAsync(disciplineComplaint);
await _context.SaveChangesAsync();
return Success(disciplineComplaint.Id);
@ -679,6 +674,33 @@ namespace BMA.EHR.DisciplineComplaint.Service.Controllers
LastUpdatedAt = DateTime.Now,
});
}
var baseAPIOrg = _configuration["API"];
var apiUrlOrg = $"{baseAPIOrg}/org/workflow/find/director";
var refId = new List<Guid>();
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
var _res = await client.PostAsJsonAsync(apiUrlOrg, new
{
refId = persons.Select(x => x.PersonId),
});
var _result = await _res.Content.ReadAsStringAsync();
var org = JsonConvert.DeserializeObject<DirectorRequest>(_result);
if (_res.IsSuccessStatusCode)
{
refId = org.result.Select(x => Guid.Parse(x.id)).ToList();
}
}
await _repositoryNoti.PushNotificationsAsync(
refId.ToArray(),
$"มีคำขอสืบสวนเรื่อง {data.Title}",
$"มีคำขอสืบสวนเรื่อง {data.Title}",
"",
"",
true,
true
);
data.DisciplineInvestigates.Add(disciplineInvestigate);
await _context.SaveChangesAsync();