public async Task <ActionResult <JsonR> > changeStatus(long ReceptionId, int IdWaiting)//,string comment="")
        {
            string   today = MYHelper.PersianDate(MYHelper.GetDate());
            DateTime from  = MYHelper.DiffDate(today, true).AddDays(-7);
            DateTime to    = MYHelper.DiffDate(today, false);
            JsonR    result;
            var      lst   = repository.GetAll().Result;
            tblVisit model = lst.FirstOrDefault(c => c.IdReception == ReceptionId && c.VisitDate >= from && c.VisitDate <= to);

            if (model == null)
            {
                result = new JsonR {
                    Title = "error", Message = "ویزیت به تاریخ امروز وجود ندارد"
                };
                return(result);
            }
            model.IdWaiting = IdWaiting;
            ContextDb db = new ContextDb();

            db.tblReceptions.Find(ReceptionId).IdWaiting = IdWaiting;

            //if (!string.IsNullOrEmpty(comment))
            //    model.Comment = comment;
            db.SaveChanges();
            result = new JsonR {
                Title = "success", Message = "عملیات با موفقیت انجام شد"
            };
            return(result);
        }
        public ActionResult DeleteConfirmed(int id)
        {
            tblVisit tblVisit = db.tblVisits.Find(id);

            db.tblVisits.Remove(tblVisit);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "ID,ID_User,ID_Local,Date")] tblVisit tblVisit)
 {
     if (ModelState.IsValid)
     {
         db.Entry(tblVisit).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ID_Local = new SelectList(db.tblLocals, "ID", "Name", tblVisit.ID_Local);
     ViewBag.ID_User  = new SelectList(db.tblUsers, "ID", "ID", tblVisit.ID_User);
     return(View(tblVisit));
 }
Beispiel #4
0
 public ActionResult Edit([Bind(Include = "Id,DoctId,PatientId,Complaint,DateOfVisit")] tblVisit tblVisit)
 {
     if (ModelState.IsValid)
     {
         db.Entry(tblVisit).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.DoctId    = new SelectList(db.tblDoctors, "Id", "Name", tblVisit.DoctId);
     ViewBag.PatientId = new SelectList(db.tblPatients, "Id", "Name", tblVisit.PatientId);
     return(View(tblVisit));
 }
        // GET: Visits/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tblVisit tblVisit = db.tblVisits.Find(id);

            if (tblVisit == null)
            {
                return(HttpNotFound());
            }
            return(View(tblVisit));
        }
        public async Task <ActionResult <bool> > Post(tblVisit model)
        {
            try
            {
                model.VisitDate = MYHelper.GetDate(model.FarsiDate);
                await repository.Add(model);

                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
        // GET: Visits/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tblVisit tblVisit = db.tblVisits.Find(id);

            if (tblVisit == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ID_Local = new SelectList(db.tblLocals, "ID", "Name", tblVisit.ID_Local);
            ViewBag.ID_User  = new SelectList(db.tblUsers, "ID", "ID", tblVisit.ID_User);
            return(View(tblVisit));
        }
Beispiel #8
0
        // GET: Visits/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tblVisit tblVisit = db.tblVisits.Find(id);

            if (tblVisit == null)
            {
                return(HttpNotFound());
            }
            ViewBag.DoctId    = new SelectList(db.tblDoctors, "Id", "Name", tblVisit.DoctId);
            ViewBag.PatientId = new SelectList(db.tblPatients, "Id", "Name", tblVisit.PatientId);
            return(View(tblVisit));
        }
        public ActionResult Create([Bind(Include = "ID,ID_User,ID_Local,Date")] tblVisit tblVisit)
        {
            tblVisit.ID_User = User.Identity.GetUserId();
            tblVisit.Date    = DateTime.Now;
            if (ModelState.IsValid)
            {
                db.tblVisits.Add(tblVisit);
                db.SaveChanges();

                //проследување на ID од штотуку внесениот локал до контролетрот Ratings
                TempData["idL"] = tblVisit.ID_Local;
                return(RedirectToAction("Create", "Ratings"));
            }

            ViewBag.ID_Local = new SelectList(db.tblLocals, "ID", "Name", tblVisit.ID_Local);
            ViewBag.ID_User  = new SelectList(db.tblUsers, "ID", "ID", tblVisit.ID_User);
            return(RedirectToAction("Create", "Rating"));
        }
        public async Task <ActionResult <bool> > Put(long id, tblVisit model)
        {
            if (id != model.Id)
            {
                return(BadRequest());
            }

            try
            {
                model.VisitDate = MYHelper.GetDate(model.FarsiDate);
                await repository.Update(model);

                return(true);
            }
            catch (DbUpdateConcurrencyException)
            {
                return(false);
            }
        }
        // GET: Visits/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tblVisit tblVisit = db.tblVisits.Find(id);

            if (tblVisit == null)
            {
                return(HttpNotFound());
            }
            tblLocal tblLocal = db.tblLocals.Find(tblVisit.ID_Local);

            int    idLocal = tblLocal.ID;               // потребно ни е за прашалникот за коментарите и рејтингот
            string idUser  = User.Identity.GetUserId(); //зачувување на IDUser во локална променлива кој ни е потребен за
                                                        //наоѓање на коментарите

            //земање на сите гласови за оваа локација
            var getRate = from a in db.tblRatings
                          where a.ID_Local == idLocal
                          select a;

            //земање на сите коментари за локалот од одреден корисник
            var getComments = from c in db.tblComments
                              where c.ID_Local == idLocal && c.ID_User == idUser
                              select c;

            //пресметување на рејтингот за оваа локација
            float rateing = new int();

            foreach (tblRating r in getRate)
            {
                rateing += r.Rate;
            }
            rateing             = rateing / getRate.Count();
            TempData["rateing"] = rateing;              //се проследува пресметаниот рејтинг до View-то
            ViewBag.comments    = getComments.ToList(); //се проследуваат пронајдените коментари до view-то
            return(View(tblLocal));
        }
        public IActionResult GetAll(string LName, string fromdate, string todate)
        {
            fromdate = fromdate.Replace('_', '/');
            todate   = todate.Replace('_', '/');
            ContextDb db = new ContextDb();
            IEnumerable <GetVisitListResult> lst;

            if (!string.IsNullOrEmpty(LName))
            {
                lst = db.tblVisits.Join(db.tblReceptions.Where(c => c.tbl_patient.LastName.Contains(LName)), c => c.IdReception, d => d.Id, (c, d) => new GetVisitListResult
                {
                    Tel                    = d.tbl_patient.Tel,
                    service                = d.tbl_Service.Name,
                    ReceptionId            = c.IdReception,
                    VisitCurrentId         = c.Id,
                    patientId              = d.IdPatient,
                    DateCurrent            = c.VisitDate,
                    IdWaitingVisitCurrent  = c.IdWaiting,
                    FullName               = d.tbl_patient.Name + " " + d.tbl_patient.LastName,
                    DossierNumberPermanent = d.tbl_patient.DossierNumberPermanent
                });
            }
            else
            {
                if (string.IsNullOrEmpty(fromdate))
                {
                    lst = db.tblVisits.Join(db.tblReceptions, c => c.IdReception, d => d.Id, (c, d) => new GetVisitListResult
                    {
                        Tel                    = d.tbl_patient.Tel,
                        service                = d.tbl_Service.Name,
                        ReceptionId            = c.IdReception,
                        patientId              = d.IdPatient,
                        VisitCurrentId         = c.Id,
                        IdWaitingVisitCurrent  = c.IdWaiting,
                        DateCurrent            = c.VisitDate,
                        FullName               = d.tbl_patient.Name + " " + d.tbl_patient.LastName,
                        DossierNumberPermanent = d.tbl_patient.DossierNumberPermanent
                    });
                }
                else
                {
                    DateTime from = MYHelper.DiffDate(fromdate, true);
                    DateTime to   = MYHelper.DiffDate(todate, false);
                    lst = db.tblVisits.Where(c => c.VisitDate >= from && c.VisitDate <= to).Join(db.tblReceptions, c => c.IdReception, d => d.Id, (c, d) => new GetVisitListResult
                    {
                        Tel                    = d.tbl_patient.Tel,
                        service                = d.tbl_Service.Name,
                        ReceptionId            = c.IdReception,
                        VisitCurrentId         = c.Id,
                        patientId              = d.IdPatient,
                        DateCurrent            = c.VisitDate,
                        IdWaitingVisitCurrent  = c.IdWaiting,
                        FullName               = d.tbl_patient.Name + " " + d.tbl_patient.LastName,
                        DossierNumberPermanent = d.tbl_patient.DossierNumberPermanent
                    });
                }
            }
            lst = lst.GroupBy(d => d.ReceptionId).Select(d => new GetVisitListResult
            {
                Tel                    = d.FirstOrDefault().Tel,
                service                = d.FirstOrDefault().service,
                ReceptionId            = d.Key,
                DateCurrent            = d.OrderBy(z => z.DateCurrent).FirstOrDefault().DateCurrent,
                VisitCurrentId         = d.OrderBy(z => z.DateCurrent).FirstOrDefault().VisitCurrentId,
                patientId              = d.FirstOrDefault().patientId,
                IdWaitingVisitCurrent  = d.OrderBy(z => z.DateCurrent).FirstOrDefault().IdWaitingVisitCurrent,
                FullName               = d.FirstOrDefault().FullName,
                DossierNumberPermanent = d.FirstOrDefault().DossierNumberPermanent
            });
            lst = lst.Distinct().ToList();
            foreach (var item in lst)
            {
                var lstvisit = db.tblVisits.Where(c => c.IdReception == item.ReceptionId).OrderBy(c => c.VisitDate).ToList();//.Select(c => c.PersianDate);
                for (int i = 1; i <= lstvisit.Count(); i++)
                {
                    tblVisit visit = lstvisit.Skip((i - 1)).Take(1).FirstOrDefault();
                    switch (i)
                    {
                    case 1:
                        item.Date1      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting1 = visit.IdWaiting;
                        break;

                    case 2:
                        item.Date2      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting2 = visit.IdWaiting;
                        break;

                    case 3:
                        item.Date3      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting3 = visit.IdWaiting;
                        break;

                    case 4:
                        item.Date4      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting4 = visit.IdWaiting;
                        break;

                    case 5:
                        item.Date5      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting5 = visit.IdWaiting;
                        break;

                    case 6:
                        item.Date6      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting6 = visit.IdWaiting;
                        break;

                    case 7:
                        item.Date7      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting7 = visit.IdWaiting;
                        break;

                    case 8:
                        item.Date8      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting8 = visit.IdWaiting;
                        break;

                    case 9:
                        item.Date9      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting9 = visit.IdWaiting;
                        break;

                    case 10:
                        item.Date10      = MYHelper.PersianDate(visit.VisitDate);
                        item.IdWaiting10 = visit.IdWaiting;
                        break;

                    default:
                        break;
                    }
                }
            }
            return(Ok(lst));
        }