コード例 #1
0
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="menuRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> CreateAsync(MenuRequestDto menuRequestDto)
        {
            var menu = menuRequestDto.MapToCreateEntity <MenuRequestDto, Menu>();
            await MenuValidatorsFilter.DoValidationAsync(_menuRespository, menu, ValidatorTypeConstants.Create);

            return(await _menuRespository.InsertAsync(menu));
        }
コード例 #2
0
        /// <summary>
        /// 批量新增
        /// </summary>
        /// <param name="menuRequestDtos"></param>
        /// <returns></returns>
        public async Task <bool> BatchCreateAsync(IList <MenuRequestDto> menuRequestDtos)
        {
            var entities = menuRequestDtos.MapToCreateEntities <MenuRequestDto, Menu>();
            await MenuValidatorsFilter.DoValidationAsync(_menuRespository, entities, ValidatorTypeConstants.Create);

            await _menuRespository.BatchInsertAsync(entities);

            return(true);
        }
コード例 #3
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="menuRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> ModifyAsync(MenuRequestDto menuRequestDto)
        {
            var menu = await _menuRespository.FirstOrDefaultAsync(e => e.Id == menuRequestDto.Id);

            var entity = menuRequestDto.MapToModifyEntity <MenuRequestDto, Menu>(menu);
            await MenuValidatorsFilter.DoValidationAsync(_menuRespository, entity, ValidatorTypeConstants.Modify);

            return(await _menuRespository.UpdateAsync(entity));
        }
コード例 #4
0
        /// <summary>
        /// 批量修改
        /// </summary>
        /// <param name="menuRequestDtos"></param>
        /// <returns></returns>
        public async Task <bool> BatchModifyAsync(IList <MenuRequestDto> menuRequestDtos)
        {
            var ids   = menuRequestDtos.Select(m => m.Id).ToList();
            var menus = await _menuRespository.EntitiesByExpressionAsync(e => ids.Contains(e.Id));

            var entities = menuRequestDtos.MapToModifyEntities <MenuRequestDto, Menu>(menus.ToList());
            await MenuValidatorsFilter.DoValidationAsync(_menuRespository, entities, ValidatorTypeConstants.Create);

            await _menuRespository.BatchUpdateAsync(entities);

            return(true);
        }