public void SimpleTestForOneList(bool expected, int start, int end) { var list = new List <Leave>() { new Leave { StartDate = new DateTime(2019, 1, start), EndDate = new DateTime(2019, 1, end) } }; Assert.Equal(expected, ValidatorLeaveLists.ValidateLeaves(list)); }
public void NormalTestForOneList(bool expected, int start1, int end1, int start2, int end2) { var list = new List <Leave>() { new Leave { StartDate = new DateTime(2019, 1, start1), EndDate = new DateTime(2019, 1, end1) }, new Leave { StartDate = new DateTime(2019, 1, start2), EndDate = new DateTime(2019, 1, end2) } }; Assert.Equal(expected, ValidatorLeaveLists.ValidateLeaves(list)); }
public void TestForTwoLists(bool expected, int start1, int end1, int start2, int end2, int start3, int end3) { var first = new List <Leave>() { new Leave { StartDate = new DateTime(2019, 1, start1), EndDate = new DateTime(2019, 1, end1) }, new Leave { StartDate = new DateTime(2019, 1, start2), EndDate = new DateTime(2019, 1, end2) } }; var second = new List <Leave>() { new Leave { StartDate = new DateTime(2019, 1, start3), EndDate = new DateTime(2019, 1, end3) } }; Assert.Equal(expected, ValidatorLeaveLists.MergingListsValidly(first, second)); }
public ActionResult UpdateLeaves(int id, [FromBody] List <Leave> leaves) { var user = db.Employee .Include(e => e.Leave) .Single(V => V.EmployeeId == id); if (leaves != null && user != null) { foreach (var leave in leaves) { var temp = user.Leave.SingleOrDefault(li => li.LeaveId == leave.LeaveId); if (temp != null) { temp.StartDate = leave.StartDate; temp.EndDate = leave.EndDate; temp.TypeLeave = leave.TypeLeave; db.Leave.Update(temp); } else { return(BadRequest()); } } if (!ValidatorLeaveLists.ValidateLeaves(user.Leave.ToList())) { return(BadRequest()); } } else { return(NotFound()); } db.SaveChanges(); return(Ok()); }
public ActionResult SetLeaves(int id, [FromBody] List <LeaveDto> leavesDto) { var user = db.Employee .Include(e => e.Leave) .SingleOrDefault(V => V.EmployeeId == id); if (leavesDto != null && user != null) { var leaves = new List <Leave>(); foreach (var leave in leavesDto) { leaves.Add(new Leave { TypeLeave = leave.TypeLeave, StartDate = leave.StartDate, EndDate = leave.EndDate }); } if (ValidatorLeaveLists.MergingListsValidly(leaves, user.Leave.ToList())) { foreach (var leave in leaves) { user.Leave.Add(leave); } } else { return(BadRequest()); } } else { return(NotFound()); } db.SaveChanges(); return(Ok()); }