public void updateChildren(ChildDTO childDTO, List <ChallengeDTO> challenges) { UpdateDTO update = new UpdateDTO(childDTO, challenges); UserEventArgs userArgs = new UserEventArgs(UserEvent.NewChild, update); OnUserEvent(userArgs); }
private Child MapToEntity(Guid personId, ChildDTO childDTO) => new Child { PersonId = personId, Id = childDTO.Id, Name = childDTO.Name, Surname = childDTO.Surname, Birthday = childDTO.Birthday };
private void notifyRegisterChild(Child child) { ChildDTO childDTO = new ChildDTO(child.Name, child.Age, entriesRepo.FindChallengeNumber(child.Id)); foreach (KeyValuePair <long, IObserver> entry in loggedClients) { IObserver sentClient = loggedClients[entry.Key]; Task.Run(() => sentClient.updateChildren(childDTO, GetAllChallenges())); } }
public async Task <ActionResult <ChildDTO> > PostChild( [FromRoute] Guid personId, [FromBody] ChildDTO childDTO) { var child = await ChildManager.AddChild(personId, childDTO).ConfigureAwait(false); return(child != null ? (ObjectResult)Ok(child) : BadRequest(new { ErrorMEssage = "Entity not found" })); }
public void userUpdate(object sender, UserEventArgs e) { if (e.UserEvent == UserEvent.NewChild) { UpdateDTO update = (UpdateDTO)e.Data; ChildDTO child = update.Child; List <ChallengeDTO> challenges = update.Challenges; ChildrenDataGridView.BeginInvoke(new UpdateDelegate(this.UpdateChildren), new Object[] { update }); ChallengesDataGridView.BeginInvoke(new UpdateDelegate(this.UpdateChallenges), new Object[] { update }); } }
public async Task AddChild(Guid personID, ChildDTO childDTO) { using (var scope = ScopeProvider.BeginLifetimeScope()) { var familyTreeContext = scope.Resolve <FamilyTreedbContext>(); await familyTreeContext.Child.AddAsync(MapToEntity(personID, childDTO)).ConfigureAwait(false); await familyTreeContext.SaveChangesAsync().ConfigureAwait(false); } }
public static ChildDTO ToDTO(this Child child) { var dto = new ChildDTO { Id = child.Id, FirstName = child.FirstName, LastName = child.LastName, }; return(dto); }
public ActionResult UpdateChild(ChildDTO childDTO) { var user = GetUser(); if (!AdminService.IsAdmin(user)) { return(Unauthorized()); } ChildService.Update(childDTO); return(Ok()); }
// PUT: api/Child/5 public IHttpActionResult Put([FromBody] ChildDTO child) { var repo = new UserRepository(); if (repo.modifyChild(child)) { return(Ok()); } else { return(BadRequest()); } }
private void UpdateChildren(UpdateDTO update) { ChildDTO child = update.Child; List <ChildDTO> children = new List <ChildDTO>(); foreach (DataGridViewRow row in ChildrenDataGridView.Rows) { children.Add((ChildDTO)row.DataBoundItem); } children.Add(child); //ChildrenDataGridView.Rows.Clear(); ChildrenDataGridView.DataSource = children; }
public void Update(ChildDTO editedChild) { using (var unitOfWork = unitOfWorkFactory.Get()) { var childRepository = unitOfWork.ChildRepository; var existingChild = childRepository.Get().SingleOrDefault(m => m.Id == editedChild.Id); existingChild.FullName = editedChild.FullName; childRepository.Edited(existingChild); unitOfWork.SaveChanges(); } }
public void Add(ChildDTO child) { using (var unitOfWork = unitOfWorkFactory.Get()) { var childRepository = unitOfWork.ChildRepository; childRepository.Add(new Child { FullName = child.FullName, GroupId = child.GroupId }); unitOfWork.SaveChanges(); } }
public void updateChildren(ChildDTO childDTO, List <ChallengeDTO> challenges) { UpdateDTO update = new UpdateDTO(childDTO, challenges); try { sendResponse(new ObjectResponseProtocol.NewChildResponse(update)); } catch (Exception e) { throw new ValidationException("Sending error: " + e); } }
public async Task <ChildDTO> PutChild(Guid personId, ChildDTO childDTO) { var request = JsonConvert.SerializeObject(childDTO, JsonSerializerSettings); var requestContent = new StringContent(request, Encoding.UTF8, ContentType); var response = await this.PutAsync(FamilyTreePaths.PutChild(personId, childDTO.Id), requestContent) .ConfigureAwait(false); var responseContent = await response.Content.ReadAsStringAsync().ConfigureAwait(false); return(response.IsSuccessStatusCode ? JsonConvert.DeserializeObject <ChildDTO>(responseContent, JsonSerializerSettings) : throw new Exception("Family Three SVC unavailable")); }
private async Task GenerateId(ChildDTO dto) { dto.Id = "Child/" + dto.LastName + ", " + dto.FirstName; var numberOfChildrenWithSameName = await _session.Query <ChildDTO>() .CountAsync(x => x.FirstName == dto.FirstName && x.LastName == dto.LastName); if (numberOfChildrenWithSameName > 0) { dto.Id += " - " + (numberOfChildrenWithSameName + 1); _logger.Debug("Found more children with same name, add number identifier {number} to id", numberOfChildrenWithSameName + 1); } }
private async Task <ChildDTO> CreateChild(string firstName, string lastname, string userId) { var dto = new ChildDTO { FirstName = firstName, LastName = lastname, Adults = new List <string> { userId } }; await GenerateId(dto); return(dto); }
//send email to doctor when child change the doctor public static void DoctorEmail(ChildDTO child, string doctor) { string body = ""; if (doctor == "old") { body = "Hi " + "<b>" + child.Clinic.Doctor.FirstName + " " + child.Clinic.Doctor.LastName + "</b>, <br />" + "Your patient: <b>" + child.Name + "</b> selected some other doctor"; } else { body = "Hi " + "<b>" + child.Clinic.Doctor.FirstName + " " + child.Clinic.Doctor.LastName + "</b>, <br />" + "A new patient: <b>" + child.Name + "</b> has been registered to you"; } SendEmail(child.Clinic.Doctor.FirstName, child.Clinic.Doctor.Email, body); }
public ActionResult CreateChild(ChildDTO childDTO, int week) { if (string.IsNullOrEmpty(childDTO.FullName)) { return(RedirectToAction("Index", new { groupId = childDTO.GroupId, week })); } var user = GetUser(); if (!AdminService.IsAdmin(user)) { return(Unauthorized()); } ChildService.Add(childDTO); return(RedirectToAction("Index", new { groupId = childDTO.GroupId, week })); }
public async Task <ChildDTO> UpdateChild(Guid personId, Guid childId, ChildDTO child) { var personEntity = await PersonRepo.GetPerson(personId).ConfigureAwait(false); var childEntity = await ChildRepo.GetChild(childId).ConfigureAwait(false); if (personEntity == null || childEntity == null) { return(null); } await ChildRepo.UpdateChild(personId, childId, child).ConfigureAwait(false); child.PersonId = personId; child.Age = child.Birthday.HasValue ? DateTime.Today.Year - child.Birthday.Value.Year : await NumberGenerator.GetRandomNumbers().ConfigureAwait(false); Logger.LogInformation($"Child with id {child.Id} successfully updated."); return(child); }
// POST: api/Child public IHttpActionResult Post([FromBody] ChildDTO child) { if (child.Id != null) { return(BadRequest()); } if (child.Name == null) { return(BadRequest()); } if (child.Password == null) { return(BadRequest()); } if (child.Surname == null) { return(BadRequest()); } if (child.UserName == null) { return(BadRequest()); } var repo = new UserRepository(); try { repo.SaveChild(child); } catch (Exception ex) { Console.WriteLine(ex.Message); return(InternalServerError()); } return(Ok()); }
public UpdateDTO(ChildDTO child, List <ChallengeDTO> challenges) { Child = child; Challenges = challenges; }
private async Task AddChildToSession(ChildDTO dto) { await _session.StoreAsync(dto); _logger.ForContext("child", dto).Information("Added child to session"); }
//end public void WeeklyScheduleTLT() { //help variables DateTime thisDay; DateTime dateSchedule; DateTime date = calcBeaginYear(); DateTime dateEnd; double numHoursScheduledToday; double childHours = 0; double NumHours; int numWindows; const double maxDailyNumHours = 4;//מקסימום 4 טיפולים ליום... List <ChildKinderGarden> sortedListChildren; List <ChildDTO> children = new List <ChildDTO>(); List <string> daysWorkProfessional = new List <string>(); //מס החלונות ליום העבודה הנל מאותחל ב0 לצורך הגבלה של חלון אחד בשבוע List <string> daysMeetingsProfessional = new List <string>(); // ימים של פגישות שלה KinderGarden kinderGarden; //end using (TafToTafEntities db = new TafToTafEntities()) { for (int professionKind = 1; professionKind < 4; professionKind++) { sortedListChildren = db.ChildKinderGardens.Where(ch => ch.BeginYear.Value == date).OrderBy(ch => ch.KindrGardenID).ToList(); //במעבר מקלינאיות לפיזיותרפיסטיות וכדומה הריצה מתחדשת על רשימת כל הילדים בגנים foreach (var professional in db.Professionals) { numWindows = 0; if (daysWorkProfessional.Count() > 0) { daysWorkProfessional.Clear(); } if (professional.ProfessionKind.Value == professionKind) { for (int i = 1; i <= 5; i++) { switch (i) { case 1: if (professional.Sunday.Value) { daysWorkProfessional.Add("Sunday"); } break; case 2: if (professional.Monday.Value) { daysWorkProfessional.Add("Monday"); } break; case 3: if (professional.Thuesday.Value) { daysWorkProfessional.Add("Tuesday"); } break; case 4: if (professional.Wednesday.Value) { daysWorkProfessional.Add("Wednesday"); } break; case 5: if (professional.Tursday.Value) { daysWorkProfessional.Add("Thursday"); } break; } } if (children.Count() > 0) { children.RemoveAll(ch => ch.Id != 0); } //ריקון רשימת ילדים של עובדת קודמת לצורך הןספת ילדים לעובדת נוכחית NumHours = professional.NumHourWork.Value; //אתחול מספר השעות לעובדת לשעות שבועיות שלה for (int iCH = 0; iCH < sortedListChildren.Count(); iCH++) //הפסקות וישיבות? { if (NumHours <= 0) { break; } int childID = sortedListChildren[iCH].ChildID.Value; var child = db.Children.FirstOrDefault(ch => ch.Id == childID); int kGardenId = sortedListChildren[iCH].KindrGardenID.Value; kinderGarden = db.KinderGardens.First(kG => kG.Id == kGardenId); if (child != null && daysWorkProfessional.Contains(kinderGarden.MeetingDay)) { if (child.NumHoursConfirm.Value / 3 <= NumHours)//לא כולל הפסקה? { if (daysMeetingsProfessional.Contains(kinderGarden.MeetingDay) == false) { daysMeetingsProfessional.Add(kinderGarden.MeetingDay); } childHours = child.NumHoursConfirm.Value / 3; children.Add(ChildDTO.ToChildDTO(child)); //הוספת ילד בעל מספר שעות שמתאימות למסגרת NumHours -= childHours; //הפחתת מספר השעות שששובצו לעובדת sortedListChildren.RemoveAt(iCH); //הסרת ילד מרשימה ממוינת כיוון ששובצה לו מטפלת iCH--; //בגלל שהוסר ילד מהרשימה האינדקס הבא יעבור למקום של הנוכחי וצריך "לחזור אחורה" } } } if (children.Count() != 0) { sortChidren(professionKind, children);//פונקציה למניעת התנגשות שני מפגשים לאותו ילד באותה השעה } thisDay = DateTime.Now; //סידור המערכת לעובדת נוכחית לשבוע הקרוב //ע"י מעבר על כל ימי עבודתה ושיבוץ השעות בהתאם לזמני המוסד או לדרישות העובדת //כרגע אנחנו לא מתייחסים לדרישות עובדת כלומר כל יום מאיזה שעה עד איזה שעה אלא //ממלאים לה ימים שלמים עד שנגמרות השעות כלומר היום הקצר יצא ביום האחרון בשבוע for (int i = 1; i <= 7; i++) { numHoursScheduledToday = 0; if (daysWorkProfessional.Contains(thisDay.DayOfWeek.ToString()) == true && db.Holidays.FirstOrDefault(h => h.Date == (thisDay.Date)) == null) { dateSchedule = new DateTime(thisDay.Year, thisDay.Month, thisDay.Day, 9, 0, 0); foreach (var child in children) { kinderGarden = db.KinderGardens.FirstOrDefault(k => k.Id == db.ChildKinderGardens. FirstOrDefault(ch => ch.ChildID == child.Id).KindrGardenID); dateEnd = dateSchedule.AddHours(0.75); if (db.Calanders.FirstOrDefault(c => c.ChildId == child.Id && c.DateStart >= dateSchedule && c.DateStart < dateEnd || c.DateEnd > dateSchedule && c.DateEnd <= dateEnd) == null) { //הילד הזה לא שובץ כבר באותם השעות if (child.NumTretments >= 1 && numHoursScheduledToday + 0.75 <= maxDailyNumHours)//להעביר את התנאי כתור תנאי הלולאה? { var treatment = new Calander() { DateStart = dateSchedule, DateEnd = dateEnd,//האם השעות מתווספות? ChildId = child.Id, KinderGardenId = db.ChildKinderGardens.Where(ch => ch.BeginYear.Value == date) .First(ch => ch.ChildID == child.Id).KindrGardenID, ProfessionalId = professional.Id, KindId = professionKind,//? NameMeeting = child.FirstName + " " + child.LastName, }; db.Calanders.Add(treatment); child.NumTretments--; dateSchedule = dateEnd.AddHours(0.25);//הפסקה של רבע שעה בין טיפול לטיפול if (dateSchedule.Hour == 12) { if (daysMeetingsProfessional.Contains(thisDay.DayOfWeek.ToString())) //אם קיימת ישיבת צוות לעובדת באותו יום { if (numWindows == 0) //אין לה שעור חלון השבוע { dateSchedule = dateSchedule.AddHours(2); numWindows++; } else { break; } }//נגמר השיבוץ להיום} else { break; } } numHoursScheduledToday += 0.75 + 0.25; } } } } thisDay = thisDay.AddDays(1); } } } } db.SaveChanges();//script האם צריך על כל הכנסה או מספיק בסוף ה Console.WriteLine("finished"); } }
public static Child ToChild(this ChildDTO dto) { return(new Child(dto.Id, dto.FirstName, dto.LastName)); }