public void delete(MasterFormUserRoleData userRoleView) { using (var ctx = new ConXContext()) { using (TransactionScope scope = new TransactionScope()) { UserRole userRole = ctx.UserRoles .Where(z => z.userRoleId == userRoleView.userRoleId) .SingleOrDefault(); List <UserRoleFunctionAuthorization> functions = ctx.UserRoleFunctionAuthorizations .Where(z => z.userRoleId == userRoleView.userRoleId) .ToList(); foreach (UserRoleFunctionAuthorization function in functions) { ctx.UserRoleFunctionAccesses.RemoveRange(ctx.UserRoleFunctionAccesses .Where(z => z.userRoleFunctionAuthorizationId == function.userRoleFunctionAuthorizationId)); ctx.SaveChanges(); } ctx.UserRoleFunctionAuthorizations.RemoveRange(ctx.UserRoleFunctionAuthorizations .Where(z => z.userRoleId == userRoleView.userRoleId)); ctx.SaveChanges(); ctx.UserRoles.Remove(userRole); ctx.SaveChanges(); scope.Complete(); } } }
public void createUserRole(MasterFormUserRoleData data) { using (var ctx = new ConXContext()) { using (TransactionScope scope = new TransactionScope()) { UserRole userRole = new UserRole() { roleName = data.roleName, isPC = data.isPC, createUser = data.createUser, createDatetime = DateTime.Now, updateDatetime = DateTime.Now, updateUser = data.createUser, status = "A" }; userRole.userRoleFunctionAuthorizationList = new List <UserRoleFunctionAuthorization>(); string functionId = ""; UserRoleFunctionAuthorization functionAuth = new UserRoleFunctionAuthorization(); foreach (MasterFormUserRoleFunctionData function in data.functions) { if (!functionId.Equals(function.functionId)) { functionId = function.functionId; functionAuth = new UserRoleFunctionAuthorization() { menuFunctionId = function.functionId, createDatetime = DateTime.Now, createUser = data.createUser }; functionAuth.userRoleFunctionAccessList = new List <UserRoleFunctionAccess>(); userRole.userRoleFunctionAuthorizationList.Add(functionAuth); } UserRoleFunctionAccess action = new UserRoleFunctionAccess() { menuFunctionActionId = function.actionId, createDatetime = DateTime.Now, createUser = data.createUser }; functionAuth.userRoleFunctionAccessList.Add(action); } ctx.UserRoles.Add(userRole); ctx.SaveChanges(); scope.Complete(); } } }
public HttpResponseMessage update(MasterFormUserRoleData model) { try { userRoleService.updateUserRole(model); CommonResponseView res = new CommonResponseView() { status = CommonStatus.SUCCESS, message = "บันทึกข้อมูลสำเร็จ" }; return(Request.CreateResponse(HttpStatusCode.OK, res)); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.ToString())); } }
public HttpResponseMessage postDelete(MasterFormUserRoleData model) { try { userRoleService.delete(model); CommonResponseView res = new CommonResponseView() { status = CommonStatus.SUCCESS, message = "ลบข้อมูลสำเร็จ" }; return(Request.CreateResponse(HttpStatusCode.OK, res)); } catch { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "ไม่สามารถลบข้อมูลนี้ได้เนื่องจากถูกใช้งานไปแล้ว")); } }
public void updateUserRole(MasterFormUserRoleData data) { using (var ctx = new ConXContext()) { using (TransactionScope scope = new TransactionScope()) { ctx.UserRoleFunctionAccesses.RemoveRange( ctx.UserRoleFunctionAccesses .Include("userRoleFunctionAuthorization") .Where(z => z.userRoleFunctionAuthorization.userRoleId == data.userRoleId) ); ctx.UserRoleFunctionAuthorizations.RemoveRange(ctx.UserRoleFunctionAuthorizations.Where(z => z.userRoleId == data.userRoleId)); ctx.SaveChanges(); UserRole userRole = ctx.UserRoles.Where(z => z.userRoleId == data.userRoleId).SingleOrDefault(); string functionId = ""; List <UserRoleFunctionAuthorization> functionAuthList = new List <UserRoleFunctionAuthorization>(); UserRoleFunctionAuthorization functionAuth = new UserRoleFunctionAuthorization(); foreach (MasterFormUserRoleFunctionData function in data.functions) { if (!functionId.Equals(function.functionId)) { functionId = function.functionId; functionAuth = new UserRoleFunctionAuthorization() { userRoleId = userRole.userRoleId, menuFunctionId = function.functionId, createDatetime = DateTime.Now, createUser = data.createUser }; functionAuth.userRoleFunctionAccessList = new List <UserRoleFunctionAccess>(); ctx.UserRoleFunctionAuthorizations.Add(functionAuth); } UserRoleFunctionAccess action = new UserRoleFunctionAccess() { menuFunctionActionId = function.actionId, createDatetime = DateTime.Now, createUser = data.createUser }; functionAuth.userRoleFunctionAccessList.Add(action); } userRole.roleName = data.roleName; userRole.updateDatetime = DateTime.Now; userRole.updateUser = data.createUser; userRole.status = data.status; ctx.SaveChanges(); scope.Complete(); } } }