Пример #1
0
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="roleRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> CreateAsync(RoleRequestDto roleRequestDto)
        {
            var role = roleRequestDto.MapToCreateEntity <RoleRequestDto, Role>();
            await RoleValidatorsFilter.DoValidationAsync(_roleRespository, role, ValidatorTypeConstants.Create);

            return(await _roleRespository.InsertAsync(role));
        }
Пример #2
0
        /// <summary>
        /// 批量新增
        /// </summary>
        /// <param name="roleRequestDtos"></param>
        /// <returns></returns>
        public async Task <bool> BatchCreateAsync(IList <RoleRequestDto> roleRequestDtos)
        {
            var entities = roleRequestDtos.MapToCreateEntities <RoleRequestDto, Role>();
            await RoleValidatorsFilter.DoValidationAsync(_roleRespository, entities, ValidatorTypeConstants.Create);

            await _roleRespository.BatchInsertAsync(entities);

            return(true);
        }
Пример #3
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="roleRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> ModifyAsync(RoleRequestDto roleRequestDto)
        {
            var role = await _roleRespository.FirstOrDefaultAsync(e => e.Id == roleRequestDto.Id);

            var entity = roleRequestDto.MapToModifyEntity <RoleRequestDto, Role>(role);
            await RoleValidatorsFilter.DoValidationAsync(_roleRespository, entity, ValidatorTypeConstants.Modify);

            return(await _roleRespository.UpdateAsync(entity));
        }
Пример #4
0
        /// <summary>
        /// 批量修改
        /// </summary>
        /// <param name="roleRequestDtos"></param>
        /// <returns></returns>
        public async Task <bool> BatchModifyAsync(IList <RoleRequestDto> roleRequestDtos)
        {
            var ids   = roleRequestDtos.Select(m => m.Id).ToList();
            var roles = await _roleRespository.EntitiesByExpressionAsync(e => ids.Contains(e.Id));

            var entities = roleRequestDtos.MapToModifyEntities <RoleRequestDto, Role>(roles.ToList());
            await RoleValidatorsFilter.DoValidationAsync(_roleRespository, entities, ValidatorTypeConstants.Create);

            await _roleRespository.BatchUpdateAsync(entities);

            return(true);
        }