Expose vigencia details in notifications
This commit is contained in:
parent
6c88c3ebfd
commit
71ab348bc3
|
|
@ -24,24 +24,31 @@ public class NotificationsController : ControllerBase
|
|||
[HttpGet("/notifications")]
|
||||
public async Task<ActionResult<List<NotificationDto>>> GetNotifications()
|
||||
{
|
||||
var query = _db.Notifications.AsNoTracking();
|
||||
|
||||
var items = await query
|
||||
.OrderByDescending(n => n.Data)
|
||||
.Select(n => new NotificationDto
|
||||
var items = await (
|
||||
from notification in _db.Notifications.AsNoTracking()
|
||||
join vigencia in _db.VigenciaLines.AsNoTracking()
|
||||
on notification.VigenciaLineId equals vigencia.Id into vigencias
|
||||
from vigencia in vigencias.DefaultIfEmpty()
|
||||
orderby notification.Data descending
|
||||
select new NotificationDto
|
||||
{
|
||||
Id = n.Id,
|
||||
Tipo = n.Tipo,
|
||||
Titulo = n.Titulo,
|
||||
Mensagem = n.Mensagem,
|
||||
Data = n.Data,
|
||||
ReferenciaData = n.ReferenciaData,
|
||||
DiasParaVencer = n.DiasParaVencer,
|
||||
Lida = n.Lida,
|
||||
LidaEm = n.LidaEm,
|
||||
VigenciaLineId = n.VigenciaLineId,
|
||||
Cliente = n.Cliente,
|
||||
Linha = n.Linha
|
||||
Id = notification.Id,
|
||||
Tipo = notification.Tipo,
|
||||
Titulo = notification.Titulo,
|
||||
Mensagem = notification.Mensagem,
|
||||
Data = notification.Data,
|
||||
ReferenciaData = notification.ReferenciaData,
|
||||
DiasParaVencer = notification.DiasParaVencer,
|
||||
Lida = notification.Lida,
|
||||
LidaEm = notification.LidaEm,
|
||||
VigenciaLineId = notification.VigenciaLineId,
|
||||
Cliente = notification.Cliente ?? vigencia.Cliente,
|
||||
Linha = notification.Linha ?? vigencia.Linha,
|
||||
Conta = vigencia.Conta,
|
||||
Usuario = notification.Usuario ?? vigencia.Usuario,
|
||||
PlanoContrato = vigencia.PlanoContrato,
|
||||
DtEfetivacaoServico = vigencia.DtEfetivacaoServico,
|
||||
DtTerminoFidelizacao = vigencia.DtTerminoFidelizacao
|
||||
})
|
||||
.ToListAsync();
|
||||
|
||||
|
|
|
|||
|
|
@ -14,4 +14,9 @@ public class NotificationDto
|
|||
public Guid? VigenciaLineId { get; set; }
|
||||
public string? Cliente { get; set; }
|
||||
public string? Linha { get; set; }
|
||||
public string? Conta { get; set; }
|
||||
public string? Usuario { get; set; }
|
||||
public string? PlanoContrato { get; set; }
|
||||
public DateTime? DtEfetivacaoServico { get; set; }
|
||||
public DateTime? DtTerminoFidelizacao { get; set; }
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue