Ejemplo n.º 1
0
        /// <summary>
        /// 保存用户角色
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SaveUserRoleResponse SaveUserRole(SaveUserRoleRequest request)
        {
            var response = new SaveUserRoleResponse();

            if (request.Entity == null)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = "用户角色不能为空";
                return(response);
            }

            try
            {
                var entity = request.Entity.As <UserRolePo>();

                if (entity.Id == 0)
                {
                    if (_userRoleRepository.Any <UserRolePo>(e => e.IsValid == 1 && e.Name == entity.Name))
                    {
                        response.IsSuccess   = false;
                        response.MessageCode = "-1";
                        response.MessageText = "用户角色不能重复";
                        return(response);
                    }

                    EntityLogger.CreateEntity(entity);
                    entity.Id = _userRoleRepository.InsertReturnIdentity(entity);
                }
                else
                {
                    var entitytemp = _userRoleRepository.FindSingle <UserRolePo>(entity.Id);

                    if (entitytemp == null)
                    {
                        throw new Exception("更新用户角色信息不存在");
                    }

                    EntityLogger.UpdateEntity(entity);
                    _userRoleRepository.UpdateIgnoreColumns(entity, e => new { e.IsValid, e.CreateTime, e.CreateUserId, });
                }
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();
                LogManager.LogicLogger.ErrorFormat("保存用户角色出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
Ejemplo n.º 2
0
        public DeleteResult DeleteRole(int userId, int roleId)
        {
            var result = GetDefault <DeleteResult>();
            var model  = _userRoleRepository.FindSingle(x => x.UserId == userId && x.RoleId == roleId);

            if (model != null)
            {
                _userRoleRepository.Delete(model);
                _userRoleRepository.Commit();
            }

            result.IsDeleted = true;
            return(result);
        }