public ActionResult EditDetails(PhysicianDataModel dt)
        {
            CASDatabaseEntities   db           = new CASDatabaseEntities();
            Physician             objPhysician = new Physician();
            List <SelectListItem> list         = new List <SelectListItem>();

            var getSpecData = db.SpecializationDatas.ToList();

            foreach (var item in getSpecData)
            {
                list.Add(new SelectListItem
                {
                    Text  = item.SpecializationName,
                    Value = item.SpecializationID.ToString()
                });
            }
            dt.ListSpecialization = list;

            var id      = Convert.ToInt32(Session["UserID"]);
            var getData = db.Physicians.Where(a => a.UserID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    getData.FirstName        = dt.FirstName;
                    getData.LastName         = dt.LastName;
                    getData.Gender           = dt.Gender;
                    getData.SpecializationID = dt.SpecializationID;
                    getData.TotalExperience  = dt.TotalExperience;
                    getData.Education        = dt.Education;
                    getData.CurrentStatus    = dt.CurrentStatus;
                }
                else
                {
                    objPhysician.FirstName        = dt.FirstName;
                    objPhysician.LastName         = dt.LastName;
                    objPhysician.Gender           = dt.Gender;
                    objPhysician.TotalExperience  = dt.TotalExperience;
                    objPhysician.SpecializationID = dt.SpecializationID;
                    objPhysician.Education        = dt.Education;
                    objPhysician.CurrentStatus    = dt.CurrentStatus;

                    db.Physicians.Add(objPhysician);
                }
                db.SaveChanges();
            }
            var checkName = db.Physicians.Where(a => a.UserID == id).FirstOrDefault();

            if (checkName.FirstName != null)
            {
                Session["Name"] = checkName.FirstName;
            }
            else
            {
                Session["Name"] = null;
            }
            Session["ID"] = checkName.PhysicianID;
            return(View(dt));
        }
        public ActionResult UpdateOrder(int?ID, string str)
        {
            CASDatabaseEntities db          = new CASDatabaseEntities();
            PatientOrderModel   dt          = new PatientOrderModel();
            PatientOrderDetail  objOrder    = new PatientOrderDetail();
            DrugDelivery        objDelivery = new DrugDelivery();

            var id      = Convert.ToInt32(ID);
            var getData = db.PatientOrderDetails.Where(m => m.PatientOrderID == id).FirstOrDefault();

            if (str == "Deliver")
            {
                getData.OrderStatus = "Delivered";

                objDelivery.PatientOrderID = getData.PatientOrderID;
                objDelivery.DeliveryDate   = DateTime.Today;
                db.DrugDeliveries.Add(objDelivery);

                Session["Deliver"] = "Delivered";
            }
            else
            {
                getData.OrderStatus = "Rejected";
            }
            dt.OrderStatus = getData.OrderStatus;
            db.SaveChanges();
            return(RedirectToAction("ViewPatientOrders", "Salesperson"));
        }
        public ActionResult SendMessages(InboxDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            Inbox objInbox         = new Inbox();

            if (ModelState.IsValid)
            {
                var salesData = (from u in db.Users
                                 where u.RoleID == 4
                                 select new
                {
                    u.EmailID
                }).SingleOrDefault();
                string ToEmailID = salesData.EmailID;

                objInbox.FromEmailID   = Session["EmailID"].ToString();
                objInbox.ToEmailID     = ToEmailID;
                objInbox.Subject       = dt.Subject;
                objInbox.MessageDetail = dt.MessageDetail;
                objInbox.MessageDate   = DateTime.Now;
                objInbox.IsRead        = false;

                db.Inboxes.Add(objInbox);
                db.SaveChanges();
                ViewBag.text = "Message Sent";
            }
            else
            {
                ViewBag.text = "Message Not Sent";
            }
            return(View(dt));
        }
        public ActionResult ViewAllSupplierMessages(int?ID, InboxDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            Inbox objInbox         = new Inbox();

            var id      = Convert.ToInt32(ID);
            var getData = db.Inboxes.Where(m => m.MessageID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    objInbox.FromEmailID   = getData.FromEmailID;
                    objInbox.ToEmailID     = getData.ToEmailID;
                    objInbox.MessageDetail = dt.MessageDetail;
                    objInbox.MessageDate   = DateTime.Now;
                    objInbox.ReplyID       = id;
                    objInbox.IsRead        = false;

                    db.Inboxes.Add(objInbox);
                    db.SaveChanges();
                }
                else
                {
                    ViewBag.text = "Failed";
                }
            }
            return(RedirectToAction("ViewAllSupplierMessages", "Salesperson"));
        }
        public ActionResult OnRequest(int id, string str)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();

            var getData = db.RequestAdmins.Where(m => m.RequestID == id).FirstOrDefault();

            if (str == "Accepted")
            {
                getData.Status = "Accepted";
                db.SaveChanges();
                return(RedirectToAction("Register", "Admin"));
            }


            db.RequestAdmins.Remove(getData);
            db.SaveChanges();
            return(RedirectToAction("ViewRequests", "Admin"));
        }
        public ActionResult UpdateHistory(int?ID, PatientDataModel dt)
        {
            CASDatabaseEntities db         = new CASDatabaseEntities();
            Patient             objPatient = new Patient();

            int id      = Convert.ToInt32(ID);
            var getData = db.Patients.Where(m => m.PatientID == id).FirstOrDefault();

            getData.History = dt.History;
            db.SaveChanges();
            return(RedirectToAction("History", "Physician"));
        }
        public ActionResult DeleteUser(int id, string str)
        {
            switch (str)
            {
            case "Patient":
                CASDatabaseEntities db = new CASDatabaseEntities();
                var getPatient         = db.Patients.Where(m => m.PatientID == id).FirstOrDefault();
                var getPUser           = db.Users.Where(m => m.UserID == getPatient.UserID).FirstOrDefault();
                if (getPUser != null)
                {
                    getPUser.IsLocked = true;
                }
                db.SaveChanges();
                return(RedirectToAction("ViewPatient", "Admin"));

            case "Physician":
                CASDatabaseEntities dbp = new CASDatabaseEntities();
                var getPhysician        = dbp.Physicians.Where(m => m.PhysicianID == id).FirstOrDefault();
                var getPhUser           = dbp.Users.Where(m => m.UserID == getPhysician.UserID).FirstOrDefault();
                if (getPhUser != null)
                {
                    getPhUser.IsLocked = true;
                }
                dbp.SaveChanges();
                return(RedirectToAction("ViewPhysician", "Admin"));

            case "Salesperson":
                CASDatabaseEntities dbs = new CASDatabaseEntities();
                var getSales            = dbs.Salespersons.Where(m => m.SalespersonID == id).FirstOrDefault();
                var getSaUser           = dbs.Users.Where(m => m.UserID == getSales.UserID).FirstOrDefault();
                if (getSaUser != null)
                {
                    getSaUser.IsLocked = true;
                }
                dbs.SaveChanges();
                return(RedirectToAction("ViewSalesperson", "Admin"));

            case "Supplier":
                CASDatabaseEntities dbss = new CASDatabaseEntities();
                var getSupplier          = dbss.Suppliers.Where(m => m.SupplierID == id).FirstOrDefault();
                var getSUser             = dbss.Users.Where(m => m.UserID == getSupplier.UserID).FirstOrDefault();
                if (getSUser != null)
                {
                    getSUser.IsLocked = true;
                }
                dbss.SaveChanges();
                return(RedirectToAction("ViewSupplier", "Admin"));

            default:
                return(RedirectToAction("Index", "Admin"));
            }
        }
        public ActionResult AddDrugs(DrugDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            Drug objDrug           = new Drug();

            if (ModelState.IsValid)
            {
                var getData = db.Drugs.Where(m => m.DrugName == dt.DrugName).FirstOrDefault();
                if (getData != null)
                {
                    ViewBag.Text = "Drug Already Present. Only Updation Allowed";
                }
                else
                {
                    if (dt.QOH == 0)
                    {
                        ViewBag.Text = "New Drug Cannot Be Entered With ZERO Quantity.";
                    }
                    else
                    {
                        if (dt.MfgDate > DateTime.Today || dt.ExpDate < DateTime.Today)
                        {
                            ViewBag.Text = "Invalid Manufacturing or Expiry Date";
                        }
                        else
                        {
                            objDrug.DrugName       = dt.DrugName;
                            objDrug.Manufacturer   = dt.Manufacturer;
                            objDrug.Substitutions  = dt.Substitutions;
                            objDrug.MfgDate        = dt.MfgDate;
                            objDrug.ExpDate        = dt.ExpDate;
                            objDrug.Uses           = dt.Uses;
                            objDrug.SideEffects    = dt.SideEffects;
                            objDrug.NotRecommended = dt.NotRecommended;
                            objDrug.QOH            = dt.QOH;
                            objDrug.QOHType        = dt.QOHType;
                            objDrug.Price          = Convert.ToDecimal(dt.Price);
                            objDrug.DiscountAmount = Convert.ToDecimal(dt.DiscountAmount);
                            objDrug.IsDeleted      = false;

                            db.Drugs.Add(objDrug);
                            db.SaveChanges();

                            ViewBag.Text = "Drug Inserted Successfully";
                        }
                    }
                }
            }
            return(View(dt));
        }
        public ActionResult EditDetails(PatientDataModel dt)
        {
            CASDatabaseEntities db         = new CASDatabaseEntities();
            Patient             objPatient = new Patient();

            var id      = Convert.ToInt32(Session["UserID"]);;
            var getData = db.Patients.Where(m => m.UserID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    getData.FirstName      = dt.FirstName;
                    getData.LastName       = dt.LastName;
                    getData.Gender         = dt.Gender;
                    getData.DOB            = dt.DOB;
                    getData.Address        = dt.Address;
                    getData.ContactNo      = dt.ContactNo;
                    getData.EmgContactName = dt.EmgContactName;
                    getData.EmgContactNo   = dt.EmgContactNo;
                }
                else
                {
                    objPatient.FirstName      = dt.FirstName;
                    objPatient.LastName       = dt.LastName;
                    objPatient.Gender         = dt.Gender;
                    objPatient.DOB            = dt.DOB;
                    objPatient.Address        = dt.Address;
                    objPatient.ContactNo      = dt.ContactNo;
                    objPatient.EmgContactName = dt.EmgContactName;
                    objPatient.EmgContactNo   = dt.EmgContactNo;
                    db.Patients.Add(objPatient);
                }
                db.SaveChanges();
            }
            var checkName = db.Patients.Where(a => a.UserID == id).FirstOrDefault();

            if (checkName.FirstName != null)
            {
                Session["Name"] = checkName.FirstName;
            }
            else
            {
                Session["Name"] = null;
            }
            Session["ID"] = checkName.PatientID;
            return(View(dt));
        }
Beispiel #10
0
        public ActionResult RequestAdmin(RequestDataModel dt)
        {
            CASDatabaseEntities db         = new CASDatabaseEntities();
            RequestAdmin        objRequest = new RequestAdmin();

            List <SelectListItem> list = new List <SelectListItem>();
            var getData = db.RoleDetails.ToList();

            foreach (var item in getData)
            {
                if (item.RoleID == 1 || item.RoleID == 4)
                {
                    continue;
                }
                else
                {
                    list.Add(new SelectListItem
                    {
                        Text  = item.RoleName,
                        Value = item.RoleID.ToString()
                    });
                }
            }
            dt.ListRole = list;

            if (ModelState.IsValid)
            {
                var getEmail = db.Users.Where(m => m.EmailID == dt.EmailID).FirstOrDefault();
                if (getEmail != null)
                {
                    ViewBag.text = "This E-mail ID is already registered.";
                }
                else
                {
                    objRequest.FirstName = dt.FirstName;
                    objRequest.LastName  = dt.LastName;
                    objRequest.EmailID   = dt.EmailID;
                    objRequest.RoleID    = dt.RoleID;
                    objRequest.Status    = "Requested";

                    db.RequestAdmins.Add(objRequest);
                    db.SaveChanges();

                    ViewBag.text = "Request has been sent. Please wait for the E-mail.";
                }
            }
            return(View(dt));
        }
        public ActionResult DeleteDrugs(int?ID)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            DrugDataModel       dt = new DrugDataModel();

            int id      = Convert.ToInt32(ID);
            var getData = db.Drugs.Where(m => m.DrugID == id).FirstOrDefault();

            if (getData != null)
            {
                getData.IsDeleted = true;
                dt.IsDeleted      = getData.IsDeleted;
                db.SaveChanges();
            }
            return(RedirectToAction("ViewDrugs", "Admin"));
        }
        public ActionResult ChangePassword(PasswordDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            User objUser           = new User();

            var id      = Convert.ToInt32(Session["UserID"]);
            var getData = db.Admins.Where(a => a.UserID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    var getInfo = (from u in db.Users
                                   where (u.UserID == id)
                                   select new
                    {
                        u.EmailID,
                        u.Password,
                    }).FirstOrDefault();
                    if (dt.OldPassword == dt.NewPassword)
                    {
                        ViewBag.text = "New Password Cannot Be Same As Old Password";
                    }
                    else
                    {
                        if (getInfo.Password == dt.OldPassword)
                        {
                            var getEmail = db.Users.FirstOrDefault(m => m.EmailID == getInfo.EmailID);

                            if (getEmail != null)
                            {
                                getEmail.Password = dt.NewPassword;
                                db.SaveChanges();
                                ViewBag.text = "Password Updated Successfully.";
                            }
                        }
                        else
                        {
                            ViewBag.text = "Password Incorrect. Please Enter Correct Password.";
                        }
                    }
                }
            }
            return(View(dt));
        }
        public ActionResult Inbox(int?ID, InboxDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            Inbox objInbox         = new Inbox();

            var id      = Convert.ToInt32(ID);
            var getData = db.SalespersonOrderDetails.Where(m => m.SalespersonOrderID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    var supplierData = (from o in db.SalespersonOrderDetails
                                        join s in db.Suppliers
                                        on o.SupplierID equals s.SupplierID
                                        join u in db.Users
                                        on s.UserID equals u.UserID
                                        where o.SalespersonOrderID == id
                                        select new
                    {
                        u.EmailID
                    }).FirstOrDefault();

                    string ToEmailID = supplierData.EmailID;

                    objInbox.FromEmailID   = Session["EmailID"].ToString();
                    objInbox.ToEmailID     = ToEmailID;
                    objInbox.Subject       = dt.Subject;
                    objInbox.MessageDetail = dt.MessageDetail;
                    objInbox.MessageDate   = DateTime.Now;
                    objInbox.IsRead        = false;

                    db.Inboxes.Add(objInbox);
                    db.SaveChanges();
                    ViewBag.text = "Message Sent";
                }
            }
            else
            {
                ViewBag.text = "Message Not Sent";
            }
            return(View(dt));
        }
        public ActionResult EditDetails(SupplierDataModel dt)
        {
            CASDatabaseEntities db          = new CASDatabaseEntities();
            Supplier            objSupplier = new Supplier();

            var id      = Convert.ToInt32(Session["UserID"]);
            var getData = db.Suppliers.Where(a => a.UserID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    getData.FirstName      = dt.FirstName;
                    getData.LastName       = dt.LastName;
                    getData.CompanyName    = dt.CompanyName;
                    getData.CompanyAddress = dt.CompanyAddress;
                    getData.CurrentStatus  = dt.CurrentStatus;
                }
                else
                {
                    objSupplier.FirstName      = dt.FirstName;
                    objSupplier.LastName       = dt.LastName;
                    objSupplier.CompanyName    = dt.CompanyName;
                    objSupplier.CompanyAddress = dt.CompanyAddress;
                    objSupplier.CurrentStatus  = dt.CurrentStatus;

                    db.Suppliers.Add(objSupplier);
                }
                db.SaveChanges();
            }
            var checkName = db.Suppliers.Where(a => a.UserID == id).FirstOrDefault();

            if (checkName.FirstName != null)
            {
                Session["Name"] = checkName.FirstName;
            }
            else
            {
                Session["Name"] = null;
            }
            Session["ID"] = checkName.SupplierID;
            return(View(dt));
        }
        public ActionResult MakeAppointments(AppointmentDataModel dt)
        {
            CASDatabaseEntities db             = new CASDatabaseEntities();
            Appointment         objAppointment = new Appointment();

            var id      = Convert.ToInt32(Session["UserID"]);
            var getData = db.Patients.Where(m => m.UserID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                GetLists(dt);
                if (getData != null)
                {
                    if (dt.AppointmentDate.DayOfWeek == 0 || (dt.AppointmentDate.Hour < 9 || dt.AppointmentDate.Hour > 17))
                    {
                        ViewBag.text = "Please Enter Time Between 9 AM and 5 PM";
                    }
                    else if (dt.AppointmentDate.Date < DateTime.Today)
                    {
                        ViewBag.text = "Please Enter a Valid Date";
                    }
                    else
                    {
                        objAppointment.PatientID         = getData.PatientID;
                        objAppointment.PhysicianID       = dt.PhysicianID;
                        objAppointment.Subject           = dt.Subject;
                        objAppointment.Description       = dt.Description;
                        objAppointment.AppointmentDate   = dt.AppointmentDate;
                        objAppointment.AppointmentStatus = "Requested";

                        db.Appointments.Add(objAppointment);
                        db.SaveChanges();
                        ViewBag.text = "Appointment Requested";
                    }
                }
                else
                {
                    ViewBag.text = "Cannot Request Appointment";
                }
            }
            return(View(dt));
        }
        public ActionResult EditDrugs(int?ID, DrugDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();

            int id      = Convert.ToInt32(ID);
            var getData = db.Drugs.Where(m => m.DrugID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    if (getData.QOH == 0 && dt.QOH > 0)
                    {
                        getData.IsDeleted = false;
                    }
                    else if (dt.QOH > 0 && dt.IsDeleted == false)
                    {
                        getData.IsDeleted = false;
                    }
                    else
                    {
                        getData.IsDeleted = true;
                    }
                    getData.DrugName       = dt.DrugName;
                    getData.Manufacturer   = dt.Manufacturer;
                    getData.Substitutions  = dt.Substitutions;
                    getData.Uses           = dt.Uses;
                    getData.SideEffects    = dt.SideEffects;
                    getData.NotRecommended = dt.NotRecommended;
                    getData.MfgDate        = dt.MfgDate;
                    getData.ExpDate        = dt.ExpDate;
                    getData.QOH            = dt.QOH;
                    getData.QOHType        = dt.QOHType;
                    getData.Price          = Convert.ToDecimal(dt.Price);
                    getData.DiscountAmount = Convert.ToDecimal(dt.DiscountAmount);

                    db.SaveChanges();
                }
            }
            return(RedirectToAction("ViewDrugs", "Salesperson"));
        }
        public ActionResult EditDetails(AdminDataModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            Admin objAdmin         = new Admin();

            var id      = Convert.ToInt32(Session["UserID"]);
            var getData = db.Admins.Where(a => a.UserID == id).FirstOrDefault();

            if (ModelState.IsValid)
            {
                if (getData != null)
                {
                    getData.FirstName = dt.FirstName;
                    getData.LastName  = dt.LastName;
                    getData.Gender    = dt.Gender;
                    getData.Address   = dt.Address;
                }
                else
                {
                    objAdmin.FirstName = dt.FirstName;
                    objAdmin.LastName  = dt.LastName;
                    objAdmin.Gender    = dt.Gender;
                    objAdmin.Address   = dt.Address;

                    db.Admins.Add(objAdmin);
                }
                db.SaveChanges();
            }
            var checkName = db.Admins.Where(a => a.UserID == id).FirstOrDefault();

            if (checkName.FirstName != null)
            {
                Session["Name"] = checkName.FirstName;
            }
            else
            {
                Session["Name"] = null;
            }
            Session["ID"] = checkName.AdminID;
            return(View(dt));
        }
        public ActionResult UpdateAppointment(int?ID, string str)
        {
            CASDatabaseEntities  db             = new CASDatabaseEntities();
            AppointmentDataModel dt             = new AppointmentDataModel();
            Appointment          objAppointment = new Appointment();

            var id      = Convert.ToInt32(ID);
            var getData = db.Appointments.Where(m => m.AppointmentID == id).FirstOrDefault();

            if (str == "Accept")
            {
                getData.AppointmentStatus = "Accepted";
                Session["Accept"]         = "Accepted";
            }
            else
            {
                getData.AppointmentStatus = "Rejected";
            }
            dt.AppointmentStatus = getData.AppointmentStatus;
            db.SaveChanges();
            return(RedirectToAction("ViewAppointment", "Physician"));
        }
        public ActionResult GetOrders(int?ID, SalesOrderModel dt)
        {
            CASDatabaseEntities    db       = new CASDatabaseEntities();
            SalespersonOrderDetail objOrder = new SalespersonOrderDetail();
            Random random = new Random();
            int    id     = Convert.ToInt32(Session["ID"]);

            if (ModelState.IsValid)
            {
                objOrder.SupplierID    = Convert.ToInt32(ID);
                objOrder.SalespersonID = id;
                objOrder.DrugName      = dt.DrugName;
                objOrder.Quantity      = dt.Quantity;
                objOrder.OrderNumber   = random.Next();
                objOrder.OrderDate     = DateTime.Today;
                objOrder.OrderStatus   = "Requested";

                db.SalespersonOrderDetails.Add(objOrder);
                db.SaveChanges();
            }
            return(View());
        }
Beispiel #20
0
        public ActionResult Login(LoginViewModel dt)
        {
            if (ModelState.IsValid)
            {
                CASDatabaseEntities db = new CASDatabaseEntities();

                var getData = db.Users.FirstOrDefault(m => m.UserName == dt.UserName);
                if (getData != null)
                {
                    if (getData.IsLocked == false)
                    {
                        if (getData.Password != dt.Password)
                        {
                            count++;
                            if (count == 1)
                            {
                                ViewBag.text = "Login Failed. Invalid Password. Two More Attempts Left.";
                            }
                            else if (count == 2)
                            {
                                ViewBag.text = "Login Failed. Invalid Password. One More Attempt Left.";
                            }
                            else if (count == 3)
                            {
                                getData.IsLocked = true;
                                db.SaveChanges();
                                ViewBag.text = "Login Failed. Invalid Password. No More Attempts Left.";
                            }
                        }
                        else
                        {
                            getData.IsActive        = true;
                            getData.LastLogDate     = DateTime.Today;
                            getData.IsEmailVerified = true;
                            db.SaveChanges();

                            var getRole = db.RoleDetails.Where(m => m.RoleID == getData.RoleID).Select(a => new { a.RoleName }).FirstOrDefault();
                            FormsAuthentication.SetAuthCookie(dt.EmailID, false);

                            var authTicket = new FormsAuthenticationTicket(1,
                                                                           getData.UserName,
                                                                           DateTime.Now,
                                                                           DateTime.Now.AddMinutes(20),
                                                                           false,
                                                                           getRole.RoleName);

                            string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
                            var    authCookie      = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                            HttpContext.Response.Cookies.Add(authCookie);

                            Session["EmailID"]  = getData.EmailID;
                            Session["UserID"]   = getData.UserID;
                            Session["UserName"] = getData.UserName;
                            Session["RoleName"] = getRole.RoleName;

                            switch (getRole.RoleName)
                            {
                            case "Admin":
                                return(RedirectToAction("Index", "Admin"));

                            case "Physician":
                                return(RedirectToAction("Index", "Physician"));

                            case "Patient":
                                return(RedirectToAction("Index", "Patient"));

                            case "Supplier":
                                return(RedirectToAction("Index", "Supplier"));

                            case "Salesperson":
                                return(RedirectToAction("Index", "Salesperson"));

                            default:
                                break;
                            }
                        }
                    }
                    else
                    {
                        ViewBag.text = "Account is Locked. Contact Administrator";
                    }
                }
                else
                {
                    ViewBag.text = "Invalid Username.";
                }
            }
            else
            {
                ViewBag.text = "Please Enter Credentials";
            }
            return(View());
        }
        public ActionResult OrderDrugs(PatientOrderModel dt)
        {
            CASDatabaseEntities db       = new CASDatabaseEntities();
            PatientOrderDetail  objOrder = new PatientOrderDetail();

            Random random = new Random();

            List <SelectListItem> list = new List <SelectListItem>();
            var getDrugDetails         = from d in db.Drugs
                                         where d.IsDeleted == false
                                         select new
            {
                d.DrugID,
                d.DrugName,
            };

            foreach (var item in getDrugDetails)
            {
                list.Add(new SelectListItem
                {
                    Text  = item.DrugName,
                    Value = item.DrugID.ToString()
                });
            }
            dt.ListDrug = list;

            var getQuantity = db.Drugs.Where(m => m.DrugID == dt.DrugID).FirstOrDefault();

            dt.QuantityAvailable = getQuantity.QOH;
            dt.QuantityType      = getQuantity.QOHType;
            dt.DrugID            = getQuantity.DrugID;

            var getSales = db.Salespersons.SingleOrDefault();

            dt.SalespersonID = getSales.SalespersonID;

            if (ModelState.IsValid)
            {
                if (dt.Quantity == 0)
                {
                    ViewBag.text = "Quantity Must Not be Zero.";
                }
                else if (dt.Quantity <= dt.QuantityAvailable)
                {
                    objOrder.DrugID        = dt.DrugID;
                    objOrder.Quantity      = dt.Quantity;
                    objOrder.OrderNumber   = random.Next();
                    objOrder.OrderDate     = DateTime.Today;
                    objOrder.OrderStatus   = "Requested";
                    objOrder.PatientID     = Convert.ToInt32(Session["ID"]);
                    objOrder.SalespersonID = dt.SalespersonID;

                    db.PatientOrderDetails.Add(objOrder);

                    getQuantity.QOH -= dt.Quantity;
                    if (getQuantity.QOH == 0)
                    {
                        getQuantity.IsDeleted = true;
                    }
                    db.SaveChanges();
                    ViewBag.text = "Order Successfully Placed";
                }
                else if (dt.Quantity > dt.QuantityAvailable)
                {
                    ViewBag.text = "Quantity Exceeded";
                }
            }
            return(View(dt));
        }
        public ActionResult Register(DataViewModel dt)
        {
            CASDatabaseEntities db = new CASDatabaseEntities();
            User   objUser         = new User();
            Random random          = new Random();

            List <SelectListItem> list = new List <SelectListItem>();
            var getData = db.RoleDetails.ToList();

            foreach (var item in getData)
            {
                if (item.RoleID == 1)
                {
                    continue;
                }
                else
                {
                    list.Add(new SelectListItem
                    {
                        Text  = item.RoleName,
                        Value = item.RoleID.ToString()
                    });
                }
            }
            dt.ListRole = list;

            if (ModelState.IsValid)
            {
                var getUserName = db.Users.Where(m => m.UserName == dt.UserName).FirstOrDefault();
                if (getUserName != null)
                {
                    ViewBag.text = "User Name is taken. Please choose another.";
                }
                else
                {
                    long pass = random.Next();
                    objUser.UserName        = dt.UserName;
                    objUser.EmailID         = dt.EmailID;
                    objUser.Password        = pass.ToString();
                    objUser.RoleID          = dt.RoleID;
                    objUser.IsActive        = false;
                    objUser.IsLocked        = false;
                    objUser.IsEmailVerified = false;

                    db.Users.Add(objUser);
                    db.SaveChanges();

                    SendVerificationLink(dt.EmailID, dt.UserName, pass);
                    Session["Register"] = "Registered";

                    var getUserID = db.Users.Where(m => m.RoleID == dt.RoleID).OrderByDescending(o => o.UserID).FirstOrDefault();
                    dt.UserID = getUserID.UserID;
                    switch (dt.RoleID)
                    {
                    case 2:
                        Patient pa = new Patient();
                        pa.UserID = getUserID.UserID;
                        db.Patients.Add(pa);
                        db.SaveChanges();
                        break;

                    case 3:
                        Physician ph = new Physician();
                        ph.UserID = getUserID.UserID;
                        db.Physicians.Add(ph);
                        db.SaveChanges();
                        break;

                    case 4:
                        Salesperson sa = new Salesperson();
                        sa.UserID = getUserID.UserID;
                        db.Salespersons.Add(sa);
                        db.SaveChanges();
                        break;

                    case 5:
                        Supplier s = new Supplier();
                        s.UserID = getUserID.UserID;
                        db.Suppliers.Add(s);
                        db.SaveChanges();
                        break;

                    default:
                        break;
                    }

                    ViewBag.text = "Registered Successfully. Account Activation Link Sent.";
                }
            }
            else
            {
                ViewBag.text = "Registration Unsuccessful.";
            }

            return(View(dt));
        }