コード例 #1
0
        /// <summary>
        /// 批量删除
        /// </summary>
        /// <param name="organizationElementRequestDtos"></param>
        /// <returns></returns>
        public async Task <bool> BatchRemoveAsync(IList <OrganizationElementRequestDto> organizationElementRequestDtos)
        {
            var orgIds               = organizationElementRequestDtos.Select(m => m.OrganizationId).ToList();
            var elementIds           = organizationElementRequestDtos.Select(m => m.ElementId).ToList();
            var organizationElements = await _organizationElementRespository.EntitiesByExpressionAsync(e => orgIds.Contains(e.OrganizationId) &&
                                                                                                       elementIds.Contains(e.ElementId) && e.IsDelete == false);

            var entities = organizationElementRequestDtos.MapToModifyEntities <OrganizationElementRequestDto, OrganizationElement>(organizationElements.ToList());
            await OrganizationElementValidatorsFilter.DoValidationAsync(_organizationElementRespository, entities, ValidatorTypeConstants.Create);

            await _organizationElementRespository.BatchUpdateAsync(entities);

            return(true);
        }