/// <summary> /// Загрузить настройки внешнего вида для формы /// </summary> /// <param name="form">форма</param> /// <param name="xml">Xml с настройками внешнего вида формы</param> public static void DefaultFormState_InsertUpdate(this Form form, string xml) { using (var dbAdmin = new ApplicationEntitie(0)) { try { if (!dbAdmin.DefaultFormStates.Any(f => f.FormName == form.Name)) { var defauleRule = new DefaultFormState { FormName = form.Name, DefaultXml = xml }; dbAdmin.DefaultFormStates.Add(defauleRule); } else { dbAdmin.DefaultFormStates.First(f => f.FormName == form.Name) .DefaultXml = xml; } dbAdmin.SaveChanges(); } catch (Exception ex) { DBException.WriteLog(ex); } } }
/// <summary> /// Сохранить текущий внешний вид для объекта класса /// <see cref="T:DevExpress.XtraGrid.GridControl" /> /// в базу данных /// </summary> /// <param name="formName">Имя формы</param> /// <param name="controlName">Имя контрола</param> /// <param name="layout">Массив настроек контрола</param> /// <param name="layoutType">Тип сохранения контрола</param> public static UserLayout UserLayout_InsertUpdate(string formName, string controlName, byte[] layout, int layoutType = 1) { UserLayout userLayout; var name = formName + "." + controlName; using (var db = new ApplicationEntitie(0)) { userLayout = db.UserLayouts.FirstOrDefault(ul => ul.UserId == DBUser.Working.Id && ul.TableName == name && ul.LayoutType == layoutType); if (userLayout != null) { userLayout.Layout = layout; } else { userLayout = new UserLayout { Layout = layout, TableName = name, LayoutType = layoutType, UserId = DBUser.Working.Id }; db.UserLayouts.Add(userLayout); } db.SaveChanges(); } return(userLayout); }
/// <summary> /// Сохранить текущий внешний вид для объекта класса /// <see cref="T:DevExpress.XtraGrid.GridControl" /> /// в базу данных /// </summary> /// <param name="control">Контрол для сохранения настроек</param> public static void SaveLastLayout(this Control control) { var tableName = control.UniqueName(); using (var db = new ApplicationEntitie(0)) { var layout = control.GetLayoutData(); var userLayout = db.UserLayouts.FirstOrDefault(ul => ul.UserId == DBUser.Working.Id && ul.TableName == tableName && ul.LayoutType == 2); if (userLayout != null) { userLayout.Layout = layout; } else { userLayout = new UserLayout { Layout = layout, TableName = tableName, LayoutType = 2, UserId = DBUser.Working.Id }; db.UserLayouts.Add(userLayout); } db.SaveChanges(); } }
/// <summary> /// Вернуть внешний вид для объекта в значение по умолчанию /// </summary> /// <param name="form">форма</param> /// <param name="name">имя объекта</param> /// <param name="pc">Объект, для которого необходимо вернуть состояние</param> /// <returns>Возвращается массив байтов</returns> public static void SaveDefaultLayout(this Form form, string name, Control pc) { using (var db = new ApplicationEntitie(0)) { if (form == null) { throw new ArgumentException("Форма не задана"); } var tableName = form.Name + "." + name; var layout = pc.GetLayoutData(); var defLayout = db.DefaultLayouts.FirstOrDefault(dl => dl.TableName == tableName); if (defLayout == null) { defLayout = new DefaultLayout { TableName = tableName, Layout = layout }; db.DefaultLayouts.Add(defLayout); } else if (!db.DefaultLayouts.Any(dl => dl.cs_Layout == SqlFunctions.Checksum(layout))) { defLayout.Layout = layout; } db.SaveChanges(); } }
/// <summary> /// Получить пользователя по Id /// </summary> /// <param name="user">Пользователь</param> /// <param name="password">Новый пароль</param> /// <returns>Объект пользователя</returns> public static bool UpdatePassword(this User user, string password) { user.UserPassword = password; using (var db = new ApplicationEntitie(0)) { db.Users.Find(user.Id) .UserPassword = password; db.SaveChanges(); return(true); } }
/// <summary> /// Удалить пароль пользователя /// </summary> /// <param name="user">Пользователь</param> public static bool Users_RemovePassword_Id(this User user) { if (XtraMessageBox.Show("Вы уверены, что хотите удалить пароль сотрудника?", "Удаление пароля", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) { return(false); } user.UserPassword = null; using (var db = new ApplicationEntitie(0)) { db.Users.Find(user.Id) .UserPassword = null; db.SaveChanges(); return(true); } }
/// <summary> /// Сохранить текущий внешний вид для объекта класса /// <see cref="T:DevExpress.XtraGrid.GridControl" /> /// в базу данных /// </summary> /// <param name="formName">Имя формы</param> /// <param name="controlName">Имя контрола</param> /// <param name="layoutName">Название сохранённой настройки</param> /// <param name="layout">Массив настроек контрола</param> /// <param name="layoutType">Тип сохранения контрола</param> public static UserLayout UserLayout_Insert(string formName, string controlName, string layoutName, byte[] layout, int layoutType = 1) { UserLayout userLayout; var name = formName + "." + controlName; using (var db = new ApplicationEntitie(0)) { userLayout = new UserLayout { Layout = layout, TableName = name, LayoutType = layoutType, LayoutName = layoutName, UserId = DBUser.Working.Id }; db.UserLayouts.Add(userLayout); db.SaveChanges(); } return(userLayout); }
private void CreateClick(object sender, EventArgs e) { errorProvider.ClearErrors(); if (!ValidateChildren() || errorProvider.HasErrors) { DialogResult = DialogResult.None; return; } var user = new User { LastName = ParseToDefaultForm(txtLastName.Text), FirstName = ParseToDefaultForm(txtFirstName.Text), MiddleName = ParseToDefaultForm(txtMiddleName.Text) }; var newPass = new ChangePasswordForm().NewPassword(); if (newPass == null) { DialogResult = DialogResult.None; return; } user.UserPassword = Security.CreateHash(newPass); using (var dbUser = new ApplicationEntitie(0)) { var roles = ccbRoles.Properties.Items.Cast <CheckedListBoxItem>() . Where(item => item.CheckState == CheckState.Checked) . Select(r => (int)r.Value); foreach (var role in dbUser.Roles.Where(rr => roles.Contains(rr.Id))) { dbUser.Roles.Attach(role); user.Roles.Add(role); } dbUser.Users.Add(user); dbUser.SaveChanges(); NewUser = user; } }
private void CreateClick(object sender, EventArgs e) { errorProvider.ClearErrors(); if (!ValidateChildren() || errorProvider.HasErrors) { DialogResult = DialogResult.None; return; } var user = new User { LastName = ParseToDefaultForm(txtLastName.Text), FirstName = ParseToDefaultForm(txtFirstName.Text), MiddleName = ParseToDefaultForm(txtMiddleName.Text) }; var newPass = new ChangePasswordForm().NewPassword(); if (newPass == null) { DialogResult = DialogResult.None; return; } user.UserPassword = Security.CreateHash(newPass); using (var dbUser = new ApplicationEntitie(0)) { var roles = ccbRoles.Properties.Items.Cast<CheckedListBoxItem>() . Where(item => item.CheckState == CheckState.Checked) . Select(r => (int) r.Value); foreach (var role in dbUser.Roles.Where(rr => roles.Contains(rr.Id))) { dbUser.Roles.Attach(role); user.Roles.Add(role); } dbUser.Users.Add(user); dbUser.SaveChanges(); NewUser = user; } }
private void DeleteStatesItemClick(object sender, EventArgs eventArgs) { if (!dxsmiRemove.Items.OfType <DXEditMenuItem>().Any(item => item.EditValue != null && (bool)item.EditValue)) { MessageWindow.GetInstance("Не выбрано ни одно состояние"); } else { using (var db = new ApplicationEntitie(0)) { var database = db; foreach (var state in dxsmiRemove.Items .OfType <DXEditMenuItem>() .Where(item => (bool)item.EditValue) .Select(item => database.UserLayouts.Find((int)item.Tag))) { db.UserLayouts.Remove(state); } db.SaveChanges(); MessageWindow.GetInstance("Выбранные состояния успешно удалены.", MessageType.Info); } } }
/// <summary> /// Сохранить текущий внешний вид для объекта класса /// <see cref="T:DevExpress.XtraGrid.GridControl" /> /// в базу данных /// </summary> /// <param name="formName">Имя формы</param> /// <param name="controlName">Имя контрола</param> /// <param name="layout">Массив настроек контрола</param> /// <param name="layoutType">Тип сохранения контрола</param> public static UserLayout UserLayout_InsertUpdate(string formName, string controlName, byte[] layout, int layoutType = 1) { UserLayout userLayout; var name = formName + "." + controlName; using (var db = new ApplicationEntitie(0)) { userLayout = db.UserLayouts.FirstOrDefault(ul => ul.UserId == DBUser.Working.Id && ul.TableName == name && ul.LayoutType == layoutType); if (userLayout != null) { userLayout.Layout = layout; } else { userLayout = new UserLayout { Layout = layout, TableName = name, LayoutType = layoutType, UserId = DBUser.Working.Id }; db.UserLayouts.Add(userLayout); } db.SaveChanges(); } return userLayout; }
/// <summary> /// Удалить пароль пользователя /// </summary> /// <param name="user">Пользователь</param> public static bool Users_RemovePassword_Id(this User user) { if (XtraMessageBox.Show("Вы уверены, что хотите удалить пароль сотрудника?", "Удаление пароля", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) { return false; } user.UserPassword = null; using (var db = new ApplicationEntitie(0)) { db.Users.Find(user.Id) .UserPassword = null; db.SaveChanges(); return true; } }
private void DeleteStatesItemClick(object sender, EventArgs eventArgs) { if (!dxsmiRemove.Items.OfType<DXEditMenuItem>().Any(item => item.EditValue != null && (bool)item.EditValue)) { MessageWindow.GetInstance("Не выбрано ни одно состояние"); } else { using (var db = new ApplicationEntitie(0)) { var database = db; foreach (var state in dxsmiRemove.Items .OfType<DXEditMenuItem>() .Where(item => (bool)item.EditValue) .Select(item => database.UserLayouts.Find((int)item.Tag))) { db.UserLayouts.Remove(state); } db.SaveChanges(); MessageWindow.GetInstance("Выбранные состояния успешно удалены.", MessageType.Info); } } }
/// <summary> /// Сохранить текущий внешний вид для объекта класса /// <see cref="T:DevExpress.XtraGrid.GridControl" /> /// в базу данных /// </summary> /// <param name="formName">Имя формы</param> /// <param name="controlName">Имя контрола</param> /// <param name="layoutName">Название сохранённой настройки</param> /// <param name="layout">Массив настроек контрола</param> /// <param name="layoutType">Тип сохранения контрола</param> public static UserLayout UserLayout_Insert(string formName, string controlName, string layoutName, byte[] layout, int layoutType = 1) { UserLayout userLayout; var name = formName + "." + controlName; using (var db = new ApplicationEntitie(0)) { userLayout = new UserLayout { Layout = layout, TableName = name, LayoutType = layoutType, LayoutName = layoutName, UserId = DBUser.Working.Id }; db.UserLayouts.Add(userLayout); db.SaveChanges(); } return userLayout; }
/// <summary> /// Получить пользователя по Id /// </summary> /// <param name="user">Пользователь</param> /// <param name="password">Новый пароль</param> /// <returns>Объект пользователя</returns> public static bool UpdatePassword(this User user, string password) { user.UserPassword = password; using (var db = new ApplicationEntitie(0)) { db.Users.Find(user.Id) .UserPassword = password; db.SaveChanges(); return true; } }