public bool AddPrisoner(PrisonerDto prisoner, out int newId) { if (prisoner != null) { dataService.ExecNonQuery("insertPrisoner", prisoner, "newID", out int lasID); var countPhones = prisoner.PhoneNumbers.Length; var phones = new Phone[countPhones]; if (lasID != default(int)) { for (int i = 0; i < countPhones; i++) { phones[i] = new Phone() { PrisonerId = lasID, PhoneNumber = prisoner.PhoneNumbers[i] }; } dataService.ExecNonQuery("dbo.InsertPhoneNumbers", phones); newId = lasID; return(true); } } newId = default(int); return(default(bool)); }
public bool AddPrisoner(PrisonerDto prisoner, out int newId) { int _newId = default(int); var result = new PrisonerServiceClient() .Execute(client => client.AddPrisoner(prisoner, out _newId)); newId = _newId; return(result); }
public static string ExportPrisonersInbox(SoftJailDbContext context, string prisonersNames) { var names = prisonersNames.Split(','); var prisoners = context.Prisoners .Include(p => p.Mails) .Where(p => names.Any(n => n == p.FullName)) .ToArray(); var result = new List <PrisonerDto>(); foreach (var p in prisoners) { PrisonerDto prisonerDto = new PrisonerDto { Id = p.Id, IncarcerationDate = p.IncarcerationDate.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture), Name = p.FullName, }; var messages = new List <MailDto>(); foreach (var m in p.Mails) { var charArray = m.Description.ToCharArray(); Array.Reverse(charArray); var desc = new string(charArray); MailDto mailDto = new MailDto { Description = desc }; messages.Add(mailDto); } prisonerDto.EncryptedMessages = messages.ToArray(); result.Add(prisonerDto); } var export = result.OrderBy(a => a.Name).ThenBy(a => a.Id).ToArray(); var sb = new StringBuilder(); var serializer = new XmlSerializer(typeof(PrisonerDto[]), new XmlRootAttribute("Prisoners")); serializer.Serialize(new StringWriter(sb), export, new XmlSerializerNamespaces(new[] { XmlQualifiedName.Empty })); var xml = sb.ToString(); return(xml); }
public void EditPrisoner(PrisonerDto prisoner) { if (prisoner != null) { dataService.ExecNonQuery("EditPrisoner", prisoner); var countPhones = prisoner.PhoneNumbers.Length; var phones = new Phone[countPhones]; for (int i = 0; i < countPhones; i++) { phones[i] = new Phone() { PrisonerId = prisoner.PrisonerId, PhoneNumber = prisoner.PhoneNumbers[i] }; } dataService.ExecNonQuery("dbo.InsertPhoneNumbers", phones); } }
public static string ExportPrisonersByCells(SoftJailDbContext context, int[] ids) { var prisonersToSerialize = new List <PrisonerDto>(); foreach (var id in ids) { var prisoner = context.Prisoners.Include(x => x.Cell).FirstOrDefault(p => p.Id == id); var prisiniorDto = new PrisonerDto() { Id = prisoner.Id, Name = prisoner.FullName, CellNumber = prisoner.Cell.CellNumber }; List <OfficerDto> prisonerOfficers = new List <OfficerDto>(); var officers = context.OfficersPrisoners.Where(p => p.PrisonerId == id).Select(op => op.Officer) .ToList(); foreach (var officer in officers.OrderBy(x => x.FullName).ThenBy(x => x.Id)) { prisonerOfficers.Add(new OfficerDto() { Department = officer.Department.Name, OfficerName = officer.FullName, Salary = officer.Salary }); } prisiniorDto.Officers = prisonerOfficers; prisonersToSerialize.Add(prisiniorDto); } var jsonString = JsonConvert.SerializeObject(prisonersToSerialize.OrderBy(p => p.Name).ThenBy(p => p.Id), Newtonsoft.Json.Formatting.Indented); return(jsonString); }