// GET: Paramedic public ActionResult Index(int?id) { HajjHackathonDBEntities db = new HackathonWeb.HajjHackathonDBEntities(); Request REQ = null; if (id != null) { REQ = db.Requests.Where(x => x.ID == id).FirstOrDefault(); } else { REQ = db.RequestFollowUps.Where(x => x.Status == ERequestStatus.Waiting.ToString()).FirstOrDefault().Request; } RequestFollowUp FU = db.RequestFollowUps.Where(cc => cc.RequestID == REQ.ID).FirstOrDefault(); RequestDetailsViewModel model = new Models.RequestDetailsViewModel() { Comment = REQ.Comment, CreateDateTime = REQ.DateTime, DiseaseA = REQ.Person.DiseaseA, DiseaseB = REQ.Person.DiseaseB, DiseaseC = REQ.Person.DiseaseC, GPS = REQ.GPS, VitalSignA = REQ.VitalSignA, VitalSignB = REQ.VitalSignB, Type = REQ.Type, RequestStatus = REQ.Status, ParamedicName = REQ.Paramedic != null?REQ.Paramedic.Name:"", RequestID = REQ.ID, }; return(View(model)); }
public void HandleWaitingRequests() { HajjHackathonDBEntities db = new HackathonWeb.HajjHackathonDBEntities(); var allwaiting = db.Requests.Where(x => x.Status != ERequestStatus.Terminated.ToString() && x.Status != ERequestStatus.Accepted.ToString()).ToList(); foreach (var x in allwaiting) { if (x.RequestFollowUps.Where(y => y.Status == ERequestStatus.Waiting.ToString()).Count() > 0) { continue; } List <Paramedic> res = null; if (x.Type == ERequestType.AutoH.ToString() || x.Type == ERequestType.Escalated.ToString()) { res = db.Paramedics.Where(y => y.Status == EParamedicStatus.Available.ToString() && y.Type == EParamedicType.B.ToString()).ToList(); } else { res = db.Paramedics.Where(y => y.Status == EParamedicStatus.Available.ToString() && y.Type == EParamedicType.A.ToString()).ToList(); } Paramedic parRes = GetNearestParamedic(x.GPS, res); if (parRes != null) { RequestFollowUp reqFU = new HackathonWeb.RequestFollowUp() { AssignedDateTime = DateTime.Now, AssignedToID = parRes.ID, RequestID = x.ID, Status = ERequestStatus.Waiting.ToString(), }; parRes.Status = EParamedicStatus.WaitToConfirm.ToString(); db.RequestFollowUps.Add(reqFU); db.SaveChanges(); } } }
// GET: Super public ActionResult Index() { HajjHackathonDBEntities db = new HackathonWeb.HajjHackathonDBEntities(); return(View(db.Paramedics.ToArray())); }