public int DeleteData(List <IDto> listDto) { int returnCode = CommonData.DbReturnCode.Succeed; try { using (BaseDao context = new BaseDao()) { context.BeginTransaction(); foreach (SYS_UserDetailDTO _UserDeleteDto in listDto) { #region Delete GroupAssign var _groupsassign = context.ms_groupsassign.AsQueryable(); _groupsassign = _groupsassign.Where(ga => ga.UserCode.Equals(_UserDeleteDto.UserName)); foreach (var ga in _groupsassign) { context.DeleteObject(ga); context.Saves(); } if (returnCode != CommonData.DbReturnCode.Succeed) { context.Rollback(); return(returnCode); } #endregion Delete GroupAssign #region Delete User var _user = context.ms_users.FirstOrDefault(u => u.Code.Equals(_UserDeleteDto.UserName)); //_user = _user.Where(u => u.Code.Equals(_UserDeleteDto.UserName)); if (returnCode == CommonData.DbReturnCode.Succeed) { context.DeleteObject(_user); //context.Saves(); returnCode = context.Saves(CommonData.FunctionGr.SY_Users, CommonData.Action.Delete, new { _user.Code, _user.DisplayName }, typeof(ms_users).Name); } if (returnCode != CommonData.DbReturnCode.Succeed) { context.Rollback(); return(returnCode); } } //Commit to database if (returnCode == CommonData.DbReturnCode.Succeed) { context.Commit(); } #endregion Delete User } } catch (Exception ex) { returnCode = this.ProcessDbException(ex); } return(returnCode); }
public int UpdateData(SYS_UserDetailDTO _UserUpdateDto) { int returnCode = CommonData.DbReturnCode.Succeed; try { using (BaseDao context = new BaseDao()) { context.BeginTransaction(); #region Update User ms_users _users = context.ms_users.FirstOrDefault(u => u.ID.Equals(_UserUpdateDto.ID)); if (_users != null) { _users.ID = _UserUpdateDto.ID; _users.Code = _UserUpdateDto.UserName; _users.DisplayName = _UserUpdateDto.FullName; _users.Status = _UserUpdateDto.Status; _users.Password = _UserUpdateDto.Password; //Save to database //returnCode = context.Saves(); returnCode = context.Saves(CommonData.FunctionGr.SY_Users, CommonData.Action.Update, new { _users.Code, _users.DisplayName, _users.Status }, typeof(ms_users).Name); //Check if error occur if (returnCode != CommonData.DbReturnCode.Succeed) { context.Rollback(); return(returnCode); } } else { returnCode = CommonData.DbReturnCode.DataNotFound; } #endregion Update User #region Delete GroupAssign var _groupsassign = context.ms_groupsassign.AsQueryable(); _groupsassign = _groupsassign.Where(ga => ga.UserCode.Equals(_UserUpdateDto.UserName)); foreach (var ga in _groupsassign) { context.DeleteObject(ga); } #endregion Delete GroupAssign #region Insert data to GroupAssign Table ms_groupsassign groupsassign = null; foreach (var item in _UserUpdateDto.UserGroups) { groupsassign = new ms_groupsassign(); groupsassign.UserCode = _UserUpdateDto.UserName; groupsassign.GroupCode = item.Code; groupsassign.SystemData = "0"; context.ms_groupsassign.AddObject(groupsassign); returnCode = context.Saves(); } if (returnCode != CommonData.DbReturnCode.Succeed) { context.Rollback(); return(returnCode); } //Commit to database if (returnCode == CommonData.DbReturnCode.Succeed) { context.Commit(); } #endregion Insert data to GroupAssign Table } } catch (Exception ex) { returnCode = this.ProcessDbException(ex); } return(returnCode); }