Example #1
0
        /// <summary>
        /// 增加数据用户映射信息
        /// </summary>
        /// <param name="dto">数据用户映射信息DTO</param>
        /// <returns>业务操作结果</returns>
        public virtual async Task <OperationResult> CreateEntityUserMapAsync(TEntityUserMapInputDto dto)
        {
            dto.CheckNotNull("dto");
            if (await EntityUserMapRepository.CheckExistsAsync(m => m.EntityInfo.Id.Equals(dto.EntityInfoId) && m.User.Id.Equals(dto.UserId)))
            {
                return(OperationResult.Success);
            }
            TEntityInfo entityInfo = await EntityInfoRepository.GetByKeyAsync(dto.EntityInfoId);

            if (entityInfo == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定编号的数据实体信息不存在"));
            }
            TUser user = await UserRepository.GetByKeyAsync(dto.UserId);

            if (user == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定编号的角色信息不存在"));
            }
            TEntityUserMap map = dto.MapTo <TEntityUserMap>();

            map.EntityInfo = entityInfo;
            map.User       = user;
            if (dto.FilterGroup != null)
            {
                map.FilterGroupJson = dto.FilterGroup.ToJsonString();
            }
            await EntityUserMapRepository.InsertAsync(map);

            return(new OperationResult(OperationResultType.Success, "数据角色映射信息添加成功"));
        }
Example #2
0
        /// <summary>
        /// 删除数据用户映射信息
        /// </summary>
        /// <param name="id">数据用户映射编号</param>
        /// <returns>业务操作结果</returns>
        public virtual async Task <OperationResult> DeleteEntityUserMapAsync(TEntityUserMapKey id)
        {
            TEntityUserMap map = await EntityUserMapRepository.GetByKeyAsync(id);

            if (map == null)
            {
                return(OperationResult.NoChanged);
            }
            await EntityUserMapRepository.DeleteAsync(map);

            return(new OperationResult(OperationResultType.Success, "数据角色映射信息删除成功"));
        }
Example #3
0
        /// <summary>
        /// 编辑数据用户映射信息
        /// </summary>
        /// <param name="dto">数据用户映射信息DTO</param>
        /// <returns>业务操作结果</returns>
        public virtual async Task <OperationResult> UpdateEntityUserMapAsync(TEntityUserMapInputDto dto)
        {
            dto.CheckNotNull("dto");
            TEntityUserMap map = await EntityUserMapRepository.GetByKeyAsync(dto.Id);

            if (map == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定编号的数据角色映射信息不存在"));
            }
            map = dto.MapTo(map);
            if (!map.EntityInfo.Id.Equals(dto.EntityInfoId))
            {
                TEntityInfo entityInfo = await EntityInfoRepository.GetByKeyAsync(dto.EntityInfoId);

                if (entityInfo == null)
                {
                    return(new OperationResult(OperationResultType.QueryNull, "指定编号的数据实体信息不存在"));
                }
                map.EntityInfo = entityInfo;
            }
            if (!map.User.Id.Equals(dto.UserId))
            {
                TUser user = await UserRepository.GetByKeyAsync(dto.UserId);

                if (user == null)
                {
                    return(new OperationResult(OperationResultType.QueryNull, "指定编号的角色信息不存在"));
                }
                map.User = user;
            }
            if (map.FilterGroupJson != dto.FilterGroup.ToJsonString())
            {
                map.FilterGroupJson = dto.FilterGroup.ToJsonString();
            }
            await EntityUserMapRepository.UpdateAsync(map);

            return(new OperationResult(OperationResultType.Success, "数据角色映射信息编辑成功"));
        }
Example #4
0
        /// <summary>
        /// 编辑数据用户映射信息
        /// </summary>
        /// <param name="dto">数据用户映射信息DTO</param>
        /// <returns>业务操作结果</returns>
        public virtual async Task <OperationResult> UpdateEntityUserMapAsync(TEntityUserMapInputDto dto)
        {
            dto.CheckNotNull("dto");
            TEntityUserMap map = await EntityUserMapRepository.GetByKeyAsync(dto.Id);

            if (map == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定编号的数据角色映射信息不存在"));
            }
            map = dto.MapTo(map);
            if (map.EntityInfo == null || !map.EntityInfo.Id.Equals(dto.EntityInfoId))
            {
                TEntityInfo entityInfo = await EntityInfoRepository.GetByKeyAsync(dto.EntityInfoId);

                if (entityInfo == null)
                {
                    return(new OperationResult(OperationResultType.QueryNull, "指定编号的数据实体信息不存在"));
                }
                map.EntityInfo = entityInfo;
            }
            if (map.User == null || !map.User.Id.Equals(dto.UserId))
            {
                TUser user = await UserRepository.GetByKeyAsync(dto.UserId);

                if (user == null)
                {
                    return(new OperationResult(OperationResultType.QueryNull, "指定编号的角色信息不存在"));
                }
                map.User = user;
            }
            if (map.FilterGroupJson != dto.FilterGroup.ToJsonString())
            {
                map.FilterGroupJson = dto.FilterGroup.ToJsonString();
            }
            return(await EntityUserMapRepository.UpdateAsync(map) > 0
                ? new OperationResult(OperationResultType.Success, "用户“{0}”与实体“{1}”的映射信息更新成功".FormatWith(map.User.UserName, map.EntityInfo.Name))
                : OperationResult.NoChanged);
        }