88 lines
3.8 KiB
C#
88 lines
3.8 KiB
C#
using BeWo.Data.Access;
|
|
using BeWo.Data.Entities;
|
|
using BeWo.Service.DCEntityMapper;
|
|
using BS.Shared.DataContracts;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace BeWo.Report.ReportObjects
|
|
{
|
|
public class ValidationMessageListRO : AbstractBeWoReportObject<ValidationMessageListRO>
|
|
{
|
|
public List<ValidationMessageRO> ValidationMessagesForMonth { get; set; }
|
|
public DateTime ReportStartDate { get; set; }
|
|
public DateTime ReportEndDate { get; set; }
|
|
|
|
|
|
|
|
|
|
public static ValidationMessageListRO Create(DateTime reportStart, DateTime reportEnd, List<ValidationMessage> validationMessagesForMonth)
|
|
{
|
|
var ro = new ValidationMessageListRO();
|
|
ro.ValidationMessagesForMonth = new List<ValidationMessageRO>();
|
|
ro.ReportStartDate = reportStart;
|
|
ro.ReportEndDate = reportEnd;
|
|
|
|
foreach (var msg in validationMessagesForMonth)
|
|
ro.ValidationMessagesForMonth.Add(CreateMessageRO(msg));
|
|
|
|
ro.ValidationMessagesForMonth = ro.ValidationMessagesForMonth.OrderBy(v => v.Employee.LastNameFirstName).ThenBy(v => v.TimeStamp).ToList();
|
|
|
|
return ro;
|
|
}
|
|
|
|
public static ValidationMessageRO CreateMessageRO(ValidationMessage message)
|
|
{
|
|
var ro = new ValidationMessageRO();
|
|
|
|
ro.TimeStamp = message.InsTs;
|
|
ro.Message = message.Message;
|
|
ro.Customer = message.CustomerName;
|
|
ro.ServiceRecordStart = message.ServiceRecordStart;
|
|
ro.ServiceRecordEnd = message.ServiceRecordEnd;
|
|
|
|
if (message.UserOid.HasValue)
|
|
ro.User = MapperFactory.UserDC_User.MapToNewDC(DAOFactory.GenericDAO.GetByID<ApplicationUser>(message.UserOid.Value));
|
|
if (message.EmployeeOid.HasValue)
|
|
ro.Employee = MapperFactory.EmployeeDC_Employee.MapToNewDC(DAOFactory.GenericDAO.GetByID<Employee>(message.EmployeeOid.Value));
|
|
if (message.SupportConceptOid.HasValue)
|
|
ro.SupportConcept = MapperFactory.SupportConceptDC_SupportConcept.MapToNewDC(DAOFactory.GenericDAO.GetByID<SupportConcept>(message.SupportConceptOid.Value));
|
|
|
|
switch (message.ServiceRecordValidationResult)
|
|
{
|
|
case 0: ro.ValidationResult = "Überschneidung zweier Leistungsempfangenden"; break;
|
|
case 1: ro.ValidationResult = "Terminüberschneidung zweier Mitarbeitenden"; break;
|
|
case 2: ro.ValidationResult = "Termin außerhalb des Hilfeplanzeitraums"; break;
|
|
case 3: ro.ValidationResult = "Überschreitung von bewilligten Stunden"; break;
|
|
case 4: ro.ValidationResult = "Überschreitung des zugelassenen Bearbeitungszeitraums"; break;
|
|
case 5: ro.ValidationResult = "Fehler beim Speichern"; break;
|
|
case 6: ro.ValidationResult = "Dokumentieren nach Erstellung der Spitzabrechnung"; break;
|
|
case 7: ro.ValidationResult = "Dokumentieren nach ablauf der Frist"; break;
|
|
case 8: ro.ValidationResult = "Termin außerhalb des Hilfeplanzeitraums"; break;
|
|
case 9: ro.ValidationResult = "Unterschrift existiert bereits"; break;
|
|
}
|
|
|
|
return ro;
|
|
}
|
|
|
|
|
|
public class ValidationMessageRO
|
|
{
|
|
public DateTime? TimeStamp { get; set; }
|
|
public string Message { get; set; }
|
|
public UserDC User { get; set; }
|
|
public EmployeeDC Employee { get; set; }
|
|
public string Customer { get; set; }
|
|
public SupportConceptDC SupportConcept { get; set; }
|
|
public DateTime? ServiceRecordStart { get; set; }
|
|
public DateTime? ServiceRecordEnd { get; set; }
|
|
public string ValidationResult { get; set; }
|
|
}
|
|
}
|
|
|
|
}
|
|
|