示例#1
0
        public IActionResult UpdateCitizen()
        {
            List <SelectListItem> selectListItems = new List <SelectListItem>();
            var hospitals = userManager.Users.Where(user => user.IsHospital == true);

            foreach (var item in hospitals)
            {
                selectListItems.Add(new SelectListItem {
                    Text = item.Name, Value = item.HospitalId.ToString()
                });
            }
            ViewBag.hospitals = selectListItems;

            var logged_user_id      = signInManager.UserManager.GetUserId(User);
            var logged_user_citizen = userManager.Users
                                      .Where(usr => usr.Id == logged_user_id)
                                      .FirstOrDefault();
            var rc = new RegisterCitizen()
            {
                Id                 = 0, //logged_user_citizen.CitizenId,
                Name               = logged_user_citizen.Name,
                Email              = logged_user_citizen.Email,
                BirthDate          = logged_user_citizen.BirthDate,
                Bloodgroup         = logged_user_citizen.Bloodgroup,
                Height             = logged_user_citizen.Height,
                Weight             = logged_user_citizen.Weight,
                Gender             = logged_user_citizen.Gender,
                City               = logged_user_citizen.City,
                State              = logged_user_citizen.State,
                Address            = logged_user_citizen.Address,
                Mobile             = logged_user_citizen.Mobile,
                CheckupData        = logged_user_citizen.CheckupData,
                Hospital_id_select = context.CitizenHospitals
                                     .Where(us => us.CitizenId == logged_user_citizen.CitizenId)
                                     .FirstOrDefault()
                                     .Hospital.HospitalId,
            };

            //Here only it comes
            var y = context.CitizenHospitals;

            return(View(rc));
        }
示例#2
0
        public async Task <IActionResult> Details()
        {
            ApplicationUser usr = await GetCurrentUserAsync();

            RegisterCitizen rc = new RegisterCitizen()
            {
                Address     = usr.Address,
                BirthDate   = usr.BirthDate,
                Bloodgroup  = usr.Bloodgroup,
                CheckupData = usr.CheckupData,
                City        = usr.City,
                State       = usr.State,
                Email       = usr.Email,
                Name        = usr.Name,
                Mobile      = usr.Mobile,
                Gender      = usr.Gender,
                Height      = usr.Height,
                Weight      = usr.Weight,
            };

            return(View(rc));
        }
示例#3
0
        public IActionResult UpdateCitizen(RegisterCitizen registerCitizen)
        {
            var logged_user_id      = signInManager.UserManager.GetUserId(User);
            var logged_user_citizen = userManager.Users
                                      .Where(usr => usr.Id == logged_user_id)
                                      .FirstOrDefault();

            var user = userManager.Users.Where(u => u.Id == logged_user_id).FirstOrDefault();

            user.Name        = registerCitizen.Name;
            user.BirthDate   = registerCitizen.BirthDate;
            user.Address     = registerCitizen.Address;
            user.City        = registerCitizen.City;
            user.State       = registerCitizen.State;
            user.Height      = registerCitizen.Height;
            user.Weight      = registerCitizen.Weight;
            user.Gender      = registerCitizen.Gender;
            user.CheckupData = registerCitizen.CheckupData;
            user.Bloodgroup  = registerCitizen.Bloodgroup;
            user.Mobile      = registerCitizen.Mobile;
            user.hid         = userManager.Users.Where(us => us.HospitalId == registerCitizen.Hospital_id_select).FirstOrDefault().Id;

            CitizenHospital ch = new CitizenHospital()
            {
                CitizenId = logged_user_citizen.CitizenId,
                Hospital  = userManager.Users.Where(us => us.HospitalId == registerCitizen.Hospital_id_select).FirstOrDefault(),
            };

            var ch_changes = context.CitizenHospitals.Attach(ch);

            ch_changes.State = Microsoft.EntityFrameworkCore.EntityState.Modified;
            context.SaveChanges();

            _citizenRepository.Update(user);
            TempData["SuccessMessage"] = "Profile Updated Successfully.";
            return(RedirectToAction("Dashboard", "Citizen"));
        }
示例#4
0
        public async Task <IActionResult> RegisterCitizenAsPatient(RegisterCitizen registerCitizen)
        {
            ApplicationUser Citizen_with_max_ID = citizenRepository.GetMaxCitizen();

            if (ModelState.IsValid)
            {
                //copy data from registerviewmodel to identityuser
                var user = new ApplicationUser
                {
                    //CitizenId = 0,
                    CitizenId   = Citizen_with_max_ID.CitizenId + 1,
                    UserName    = registerCitizen.Email,
                    Email       = registerCitizen.Email,
                    Name        = registerCitizen.Name,
                    Gender      = registerCitizen.Gender,
                    Mobile      = registerCitizen.Mobile,
                    IsCitizen   = true,
                    BirthDate   = DateTime.Now,
                    Bloodgroup  = registerCitizen.Bloodgroup,
                    Height      = registerCitizen.Height,
                    Weight      = registerCitizen.Weight,
                    CheckupData = registerCitizen.CheckupData,
                    State       = registerCitizen.State,
                    City        = registerCitizen.City,
                    Address     = registerCitizen.Address,
                };

                CitizenHospital citizenHospital = new CitizenHospital();

                citizenHospital.Hospital = userManager.Users
                                           .Where(user => user.IsHospital == true)
                                           .Where(us => us.HospitalId == registerCitizen.Hospital_id_select)
                                           .FirstOrDefault();

                citizenHospital.CitizenId = Citizen_with_max_ID.CitizenId + 1;
                using (var transaction = context.Database.BeginTransaction())
                {
                    context.CitizenHospitals.Add(citizenHospital);
                    context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT dbo.CitizenHospitals ON;");
                    context.SaveChanges();
                    context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT dbo.CitizenHospitals OFF;");
                    transaction.Commit();
                }

                var result = await userManager.CreateAsync(user, registerCitizen.Password);

                if (result.Succeeded)
                {
                    await userManager.AddToRoleAsync(user, "Citizen");

                    var     max_patient = patientRepository.GetMaxPatient();
                    Patient patient     = new Patient();
                    patient.PatientId = max_patient.PatientId + 1;
                    patient.CitizenId = user.CitizenId;
                    patient.Hospital  = userManager.Users
                                        .Where(user => user.IsHospital == true)
                                        .Where(us => us.HospitalId == registerCitizen.Hospital_id_select)
                                        .FirstOrDefault();

                    using (var transaction = context.Database.BeginTransaction())
                    {
                        context.Patients.Add(patient);
                        context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT dbo.Patients ON;");
                        context.SaveChanges();
                        context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT dbo.Patients OFF;");
                        transaction.Commit();
                    }

                    TempData["SuccessMessage"] = "Citizen Registered & Hospitalized Successfully!";
                    return(RedirectToAction("Index", "Patient"));
                }
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }
            return(View(registerCitizen));
        }