public async Task <UserPermissionResponse> CreateUserPermission(DirectUserPermissionModel model, int companyId) { using (var _context = _dbcontext()) { try { var userPerm = await _context.SpecialPermissions.Where(x => x.Is_deleted == false && x.CompanyId == companyId).ToListAsync(); for (int i = 0; i < model.UserPerms.Length; i++) { var is_user_perm_exist = userPerm.Any(x => x.UserId == model.UserPerms[i].UserId && x.DocumentType == model.UserPerms[i].Permission.DocumentType); if (is_user_perm_exist == true) { model.UserPerms[i].Success = false; model.UserPerms[i].Message = "User Permission Exist"; } else { var perm = new SpecialPermission { UserId = model.UserPerms[i].UserId, DocumentType = model.UserPerms[i].Permission.DocumentType, DocumentAccessLevel = model.UserPerms[i].Permission.DocumentAccessLevel, Create = model.UserPerms[i].Permission.Create, Read = model.UserPerms[i].Permission.Read, Update = model.UserPerms[i].Permission.Update, Delete = model.UserPerms[i].Permission.Delete, Upload = model.UserPerms[i].Permission.Upload, Download = model.UserPerms[i].Permission.Download, Amend = model.UserPerms[i].Permission.Amend, Cancel = model.UserPerms[i].Permission.Cancel, Approval = model.UserPerms[i].Permission.Approval, SetPermission = model.UserPerms[i].Permission.SetPermission, CompanyId = companyId, DateCreated = DateTime.Now }; model.UserPerms[i].Success = true; model.UserPerms[i].Message = "Created"; _context.SpecialPermissions.Add(perm); } } await _context.SaveChangesAsync(); return(new UserPermissionResponse(model)); } catch (Exception ex) { return(new UserPermissionResponse(ex.Message)); } } }
public async Task <UserPermissionResponse> UpdateUserPermission(DirectUserPermissionModel model, int companyId) { using (var _context = _dbcontext()) { try { var userPerm = await _context.SpecialPermissions.Where(x => x.Is_deleted == false && x.CompanyId == companyId).ToListAsync(); for (int i = 0; i < model.UserPerms.Length; i++) { var userPermission = userPerm.FirstOrDefault(x => x.UserId == model.UserPerms[i].UserId && x.DocumentType == model.UserPerms[i].Permission.DocumentType); if (userPermission == null) { model.UserPerms[i].Success = false; model.UserPerms[i].Message = "User Permission Not Found"; } else { userPermission.UserId = model.UserPerms[i].UserId; userPermission.DocumentType = model.UserPerms[i].Permission.DocumentType; userPermission.DocumentAccessLevel = model.UserPerms[i].Permission.DocumentAccessLevel; userPermission.Create = model.UserPerms[i].Permission.Create; userPermission.Read = model.UserPerms[i].Permission.Read; userPermission.Update = model.UserPerms[i].Permission.Update; userPermission.Delete = model.UserPerms[i].Permission.Delete; userPermission.Upload = model.UserPerms[i].Permission.Upload; userPermission.Download = model.UserPerms[i].Permission.Download; userPermission.Amend = model.UserPerms[i].Permission.Amend; userPermission.Cancel = model.UserPerms[i].Permission.Cancel; userPermission.Approval = model.UserPerms[i].Permission.Approval; userPermission.SetPermission = model.UserPerms[i].Permission.SetPermission; userPermission.CompanyId = companyId; userPermission.DateCreated = DateTime.Now; model.UserPerms[i].Success = true; model.UserPerms[i].Message = "Updated"; _context.SpecialPermissions.Update(userPermission); } } await _context.SaveChangesAsync(); return(new UserPermissionResponse(model)); } catch (Exception ex) { return(new UserPermissionResponse(ex.Message)); } } }
public UserPermissionResponse(DirectUserPermissionModel userpermission) : this(true, string.Empty, userpermission) { }
public UserPermissionResponse(bool success, string message, DirectUserPermissionModel userpermission) : base(success, message) { _userpermission = userpermission; }