using System; using System.Collections.Generic; using System.Linq; using BeWo.Data.ICD10; using BS.Shared; using BS.Shared.DataContracts; namespace BeWo.Report.ReportObjects { public class EmployeeDataRO : AbstractBeWoReportObject { public long EmployeeOid { get; set; } public string FamilyStatus { get; set; } public string Fax { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public string Mail { get; set; } public string Mobile { get; set; } public string Name { get { return this.FirstName + " " + this.LastName; } } public string DateOfBirth { get; set; } public string Notice { get; set; } public string Occupation { get; set; } public string Phone { get; set; } public string PostCode { get; set; } public string ReferenceNumber { get; set; } public List RelatedEmployees { get; set; } public string Sex { get; set; } public string Street { get; set; } public string Town { get; set; } public object VarField1 { get; set; } public object VarField2 { get; set; } public object VarField3 { get; set; } public object VarField4 { get; set; } public object VarField5 { get; set; } public object VarField6 { get; set; } public object VarField7 { get; set; } public object VarField8 { get; set; } public object VarField9 { get; set; } public object VarField10 { get; set; } public EmployeeDC Employee { get; set; } public static EmployeeDataRO Create(EmployeeDC pDC) { var result = new EmployeeDataRO(); result.Employee = pDC; result.EmployeeOid = pDC.EmployeeOid.Value; result.FirstName = pDC.FirstName; result.LastName = pDC.LastName; if (pDC.DateOfBirth.HasValue) { result.DateOfBirth = pDC.DateOfBirth.Value.ToShortDateString(); } result.Sex = pDC.Sex == BS.Shared.Sex.Female ? "weiblich" : "männlich"; result.Occupation = pDC.Profession; if (pDC.FamilyStatus.HasValue) { switch (pDC.FamilyStatus.Value) { case BS.Shared.FamilyStatus.Divorced: result.FamilyStatus = "geschieden"; break; case BS.Shared.FamilyStatus.Married: result.FamilyStatus = "verheiratet"; break; case BS.Shared.FamilyStatus.Single: result.FamilyStatus = "ledig"; break; case BS.Shared.FamilyStatus.Widowed: result.FamilyStatus = "verwitwet"; break; case BS.Shared.FamilyStatus.Partner: result.FamilyStatus = "in Partnerschaft"; break; case BS.Shared.FamilyStatus.PartnerDivorced: result.FamilyStatus = "getrennt lebend"; break; case BS.Shared.FamilyStatus.PartnerDead: result.FamilyStatus = "partnerhinterblieben"; break; case BS.Shared.FamilyStatus.PartnerMarried: result.FamilyStatus = "verpartnert"; break; case BS.Shared.FamilyStatus.Entpartnert: result.FamilyStatus = "entpartnert"; break; } } result.Street = pDC.Street; result.Town = pDC.Town; result.PostCode = pDC.PostalCode; foreach (var iContact in pDC.ContactInformations) { switch (iContact.ContactType) { case ContactType.business_Phone: result.Phone = iContact.ContactValue; break; case ContactType.business_MobilePhone: result.Mobile = iContact.ContactValue; break; case ContactType.business_Mail: result.Mail = iContact.ContactValue; break; case ContactType.business_Fax: result.Fax = iContact.ContactValue; break; } } //result.Notice = pDC.Notice; return result; } } }