public IEnumerable <UserZone> GetAllZonesByUser(int userid) { IList <UserZone> zones = new List <UserZone>(); using (Npgsql.NpgsqlConnection conn = new Npgsql.NpgsqlConnection(Infrastructure.ConfigReader.ConnectionString.ToString())) { conn.Open(); using (Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(GetZoneByUserQuery, conn)) { command.Parameters.Add(new Npgsql.NpgsqlParameter("userid", NpgsqlTypes.NpgsqlDbType.Integer)); command.Prepare(); command.Parameters[0].Value = userid; using (Npgsql.NpgsqlDataReader dr = command.ExecuteReader()) { while (dr.Read()) { var temp = new UserZone() { UserID = Helper.ConvertFromDBVal <int>(dr[0]), ZoneId = Helper.ConvertFromDBVal <int>(dr[1]) }; zones.Add(temp); } } } } return(zones); }
public void DeleteUserZone(UserZone userzone) { using (Npgsql.NpgsqlConnection conn = new Npgsql.NpgsqlConnection(Infrastructure.ConfigReader.ConnectionString.ToString())) { conn.Open(); using (Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(DeleteUserZoneQuery, conn)) { command.Parameters.Add(new Npgsql.NpgsqlParameter("userzoneid", NpgsqlTypes.NpgsqlDbType.Integer)); command.Prepare(); command.Parameters[0].Value = userzone.UserZoneID; int rowsAffected = command.ExecuteNonQuery(); } } }
public void SaveUserZone(UserZone userzone) { string query; bool isUpdate = false; // Want to know right off the bat if we're doing a insert or update if (userzone.UserZoneID > 0) { query = UpdateUserZoneQuery; isUpdate = true; } else { query = InsertUserZoneQuery; } using (Npgsql.NpgsqlConnection conn = new Npgsql.NpgsqlConnection(Infrastructure.ConfigReader.ConnectionString.ToString())) { conn.Open(); using (Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(query, conn)) { command.Parameters.Add(new Npgsql.NpgsqlParameter("userid", NpgsqlTypes.NpgsqlDbType.Integer)); command.Parameters.Add(new Npgsql.NpgsqlParameter("zoneid", NpgsqlTypes.NpgsqlDbType.Integer)); if (isUpdate) { command.Parameters.Add(new Npgsql.NpgsqlParameter("userzoneid", NpgsqlTypes.NpgsqlDbType.Integer)); } command.Prepare(); command.Parameters[0].Value = userzone.UserID; command.Parameters[1].Value = userzone.ZoneId; if (isUpdate) { command.Parameters[2].Value = userzone.UserZoneID; } int rowsAffected = command.ExecuteNonQuery(); } } }
public ActionResult Create(Web.ViewModel.UserCreateViewModel uc, string values) { // In addition to updating the User table , also update the timeslot table if // the assigned roleid is 3 (for SA) . If the assigned roleid is 3 , then the number // of available SA's should go up by one for all the timeslots . // You may right it in a static method and call the update code , so that if a user is // deleted , then the number of available SA's go down by 1 . int a; var newUser = uc.user; PhoneUser newPhoneUser = new PhoneUser(); IEnumerable <User> users = new List <User>(); users = _UserRepository.GetAllUsersByRole(3); a = users.Count(); if (newUser.selectedRole == "Administrator") { newUser.AssignedRoleId = 1; } if (newUser.selectedRole == "Manager") { newUser.AssignedRoleId = 2; } if (newUser.selectedRole == "SA") { newUser.AssignedRoleId = 3; } if (newUser.selectedRole == "AA") { newUser.AssignedRoleId = 4; } if (newUser.selectedRole == "Customer Service Agent") { newUser.AssignedRoleId = 5; } var temp = _UserRepository.GetUserByUsername(newUser.UserName); if (temp != null) { return(Json(new { msg = "Not Null. User exists." })); } newUser.Address2 = ""; newUser.newPassword = "******"; // Default first time password newUser.IsActive = true; _UserRepository.SaveUser(newUser); if (newUser.AssignedRoleId == 3) { // add one available SA in the timeslot table . var timeslots = _timeSlotRepository.TimeSlots; // get the timeslots Threshold threshold = new Threshold(); threshold = _ThresholdRepository.Thresholds.First(); foreach (var timeslot in timeslots) { timeslot.Num_Available_SA = timeslot.Num_Available_SA + 1; timeslot.Title = timeslot.Num_Available_SA; if (timeslot.Num_Available_SA > threshold.Upper_Calendar) { timeslot.Color = "green"; } else if (timeslot.Num_Available_SA >= threshold.Lower_Calendar && timeslot.Num_Available_SA <= threshold.Upper_Calendar) { timeslot.Color = "yellow"; } else { timeslot.Color = "red"; } _timeSlotRepository.SaveTimeSlot(timeslot); } } var tempUser = _UserRepository.GetUserByUsername(uc.user.UserName); newPhoneUser.CRMUserId = tempUser.UserId; newPhoneUser.Email = uc.user.EmailOne; newPhoneUser.Extension = uc.extensionNum; newPhoneUser.FirstName = uc.user.FirstName; newPhoneUser.MiddleName = uc.user.MiddleName; newPhoneUser.LastName = uc.user.LastName; newPhoneUser.AccountId = 1155; _PhoneUserRepos.SavePhoneUser(newPhoneUser); if (values != "") { var ids = values.Split(','); UserZone uz = new UserZone(); var usernew = _UserRepository.GetUserByUsername(uc.user.UserName); uz.UserID = usernew.UserId; for (int i = 0; i < ids.Length; i++) { uz.ZoneId = Convert.ToInt32(ids[i]); _UserZoneRepository.SaveUserZone(uz); } } return(Json(new { redirectToUrl = Url.Action("Index") })); }
public ActionResult Edit(Web.ViewModel.UserCreateViewModel uc, string values, string vals) { var newUser = uc.user; //newUser.oldPassword = EncryptPassword(newUser.oldPassword); string newPswd; bool check = false; if (newUser.oldPassword != null && newUser.changePassword1 != null && newUser.changePassword2 != null) { newPswd = SavePassword(vals, uc.user.UserId); if (newPswd == "") { check = false; } else { check = true; newUser.newPassword = newPswd; } } PhoneUser newPhoneUser = new PhoneUser(); newPhoneUser.CRMUserId = uc.user.UserId; newPhoneUser.Email = uc.user.EmailOne; newPhoneUser.Extension = uc.extensionNum; newPhoneUser.FirstName = uc.user.FirstName; newPhoneUser.MiddleName = uc.user.MiddleName; newPhoneUser.LastName = uc.user.LastName; newPhoneUser.AccountId = 1155; newPhoneUser.PhoneUserId = 1; _PhoneUserRepos.SavePhoneUser(newPhoneUser); newUser.firstTime = false; _UserRepository.SaveUser(newUser); if (values != "") { var ids = values.Split(','); UserZone uz = new UserZone(); uz.UserID = uc.user.UserId; _UserZoneRepository.DeleteUserZoneByUserID(uc.user.UserId); for (int i = 0; i < ids.Length; i++) { uz.ZoneId = Convert.ToInt32(ids[i]); _UserZoneRepository.SaveUserZone(uz); } } if (newUser.AssignedRoleId == 1 || newUser.AssignedRoleId == 2) { return(Json(new { redirectToUrl = Url.Action("Index"), data = check })); } else { return(Json(new { redirectToUrl = Url.Action("Edit", new { id = newUser.UserId }), data = check })); // return RedirectToAction("Edit", "User", new { id = newUser.UserId }); } }