public HttpResponseMessage Get(string EID, DateTime startDate, DateTime endDate) { try { using (ebuilderEntities entities = new ebuilderEntities()) { var allLeaves = entities.leavs.Where(l => l.EID == EID && (DateTime.Compare(startDate, l.date) < 0 && DateTime.Compare(l.date, endDate) < 0)).ToList(); var entity = new List <leavWithStatusAndName>(); foreach (leav l in allLeaves) { foreach (approval app in entities.approvals.Where(a => a.LID == l.LID).ToList()) { if (app.status == "accepted") { var levStatusName = new leavWithStatusAndName(l); entity.Add(levStatusName); //select only the accepted leaves } } } return(Request.CreateResponse(HttpStatusCode.OK, entity)); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }
public HttpResponseMessage GetManaged(string ManagerID) { try { using (ebuilderEntities entities = new ebuilderEntities()) { var manager = entities.employees.FirstOrDefault(e => e.EID == ManagerID); if (manager == null) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "No Manager exists for the given EID")); } entities.Entry(manager).Collection("employee1").Load(); var entity = new List <leavWithStatusAndName>(); foreach (var emp in manager.employee1) { var empLeaves = entities.leavs.Where(e => e.EID == emp.EID).ToList(); foreach (leav l in empLeaves) { var leavNameStatus = new leavWithStatusAndName(l); entity.Add(leavNameStatus); } } return(Request.CreateResponse(HttpStatusCode.OK, entity)); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }