public UserFormViewModel() { UserDataSet dataset = new UserDataSet(); UserDataSetTableAdapters.System_UsersTableAdapter User = new UserDataSetTableAdapters.System_UsersTableAdapter(); UserDataSetTableAdapters.System_Users_ObsTableAdapter User_obs = new UserDataSetTableAdapters.System_Users_ObsTableAdapter(); _row = dataset.System_Users.NewSystem_UsersRow(); _row_obs = dataset.System_Users_Obs.NewSystem_Users_ObsRow(); //Usuario _row.Name = ""; _row.FullName = ""; _row.Phone = ""; _row.Email = ""; _row.Password = ""; _row.ModifiedDate = DateTime.Now; _row.CreatedDate = DateTime.Now; _row.Enabled = true; _row.Id = 0; //observaciones usuasrio _row_obs.Observations = ""; SaveCommand = new RelayCommand(Save, CanSave); }
public void Load(int IdUsuario, TextBox txtoldPassword) { try { ContraseñaTextbox = txtoldPassword; idusuario = IdUsuario; UserDataSet dataset = new UserDataSet(); UserDataSetTableAdapters.System_UsersTableAdapter TableUser = new UserDataSetTableAdapters.System_UsersTableAdapter(); UserDataSet.System_UsersDataTable dataTable = TableUser.GetDataUserById(IdUsuario); if (dataTable.Rows.Count > 0) { UserDataSetTableAdapters.System_Users_ObsTableAdapter User_obs = new UserDataSetTableAdapters.System_Users_ObsTableAdapter(); UserDataSet.System_Users_ObsDataTable dataTable_Obs = User_obs.GetDataUser_ObsById(IdUsuario); _row = (UserDataSet.System_UsersRow)dataTable.Rows[0]; RaisePropertyChanged(nameof(Name)); RaisePropertyChanged(nameof(Phone)); RaisePropertyChanged(nameof(FullName)); RaisePropertyChanged(nameof(Email)); RaisePropertyChanged(nameof(Enabled)); _row_obs = (UserDataSet.System_Users_ObsRow)dataTable_Obs.Rows[0]; RaisePropertyChanged(nameof(Observations)); } FormLoadFinished?.Invoke(); } catch (Exception e) { FormLoadError?.Invoke(e); } }
public void Save() { bool validate = true; int indentificadorUser = 0; string contraseña = ""; try { UserDataSetTableAdapters.System_UsersTableAdapter TableUser = new UserDataSetTableAdapters.System_UsersTableAdapter(); if (idusuario == 0) { contraseña = _row.Password; } else { if (string.IsNullOrEmpty(ContraseñaTextbox.Text.ToString())) { contraseña = Getpassword(idusuario); } else { contraseña = SHA256Encrypt(ContraseñaTextbox.Text.ToString()); } } validate = validateDatas(_row.Name, _row.FullName, _row.Phone, _row.Email, contraseña, TableUser, idusuario); if (validate) { UserDataSet dataset = new UserDataSet(); UserDataSetTableAdapters.System_Users_ObsTableAdapter tableAdapterUserObs = new UserDataSetTableAdapters.System_Users_ObsTableAdapter(); UserDataSet.System_UsersDataTable dataTable = TableUser.GetDataUserById(_row.Id); //actualizamnos si existe el registro if (dataTable.Rows.Count > 0) { var rowuser = dataset.System_Users.NewSystem_UsersRow(); rowuser = dataTable[0]; rowuser["Name"] = _row.Name; rowuser["Phone"] = _row.Phone; rowuser["CreatedDate"] = DateTime.Now; rowuser["ModifiedDate"] = DateTime.Now; rowuser["FullName"] = _row.FullName; rowuser["Password"] = contraseña; rowuser["Enabled"] = _row.Enabled; int numeroderegistros = TableUser.Update(rowuser); //si se actualizado el user actualizamos las observaciones if (numeroderegistros > 0) { //actualizamos la observacion tableAdapterUserObs.UpdateUserObs(_row_obs.Observations, _row.Id); } } //insertamos el nuevo user y las observaciones (user_obs) else { TableUser = new UserDataSetTableAdapters.System_UsersTableAdapter(); //obtenemos de la tabla user el nuevo registro que se introducira var rowUser = dataset.System_Users.NewSystem_UsersRow(); //Name rowUser.Name = _row.Name; //Phone rowUser.Phone = _row.Phone; //fecha creacion rowUser.CreatedDate = DateTime.Now; //fecha modificacion rowUser.ModifiedDate = DateTime.Now; //Fullname rowUser.FullName = _row.FullName; //Email rowUser.Email = _row.Email; //Password rowUser.Password = SHA256Encrypt(contraseña.ToString()); //enabled rowUser.Enabled = _row.Enabled; //agregamos la nueva fila dataset.System_Users.AddSystem_UsersRow(rowUser); //actualizamos la tabla User en el dataset TableUser.Update(dataset.System_Users); //al insertar el registro nuevo en la tabla User Id se actualiza indentificadorUser = Convert.ToInt32(rowUser.Id); // a continuación insertamos el resto de datos en la tabla User_obs cepsa con el indentificador del User recient introduzido tableAdapterUserObs = new UserDataSetTableAdapters.System_Users_ObsTableAdapter(); //obtenemos de la tabla User_obs el nuevo registro que se introducira var rowUser_obs = dataset.System_Users_Obs.NewSystem_Users_ObsRow(); //Id rowUser_obs.Id = indentificadorUser; //observations rowUser_obs.Observations = _row_obs.Observations; //agregamos la nueva fila a tabla User_obs dataset.System_Users_Obs.AddSystem_Users_ObsRow(rowUser_obs); //actualizamos la tabla User_obs en el dataset tableAdapterUserObs.Update(dataset.System_Users_Obs); } FormSaveFinished?.Invoke(); } } catch (Exception e) { FormSaveError?.Invoke(e); } }