コード例 #1
0
        /// <summary>
        /// Remove uma editora.
        /// </summary>
        /// <param name="viewModel">ViewModel com as informações da editora.</param>
        /// <returns></returns>
        public async Task <bool> DeletePublisher(PublisherViewModel viewModel)
        {
            var publisher = viewModel.AutoMapear <PublisherViewModel, Publisher>();

            _repository.Delete(publisher);
            OperationSuccesful = await _repository.Commit();

            return(OperationSuccesful);
        }
コード例 #2
0
        /// <summary>
        /// Altera informações de uma editora cadastrada.
        /// </summary>
        /// <param name="viewModel">ViewModel com as informações da editora.</param>
        /// <returns></returns>
        public async Task <PublisherViewModel> UpdatePublisher(PublisherViewModel viewModel)
        {
            #region Validação da regra de negócios

            if (await _repository.Exists(p => p.Name == viewModel.Name && p.PublisherId != viewModel.PublisherId))
            {
                ModelError = string.Format(Criticas.Ja_Existe_0, "outra Editora com este nome.");
                return(viewModel);
            }

            #endregion

            var publisher = viewModel.AutoMapear <PublisherViewModel, Publisher>();
            _repository.Update(publisher);
            OperationSuccesful = await _repository.Commit();

            return(viewModel);
        }
コード例 #3
0
        /// <summary>
        /// Cadastra uma nova editora.
        /// </summary>
        /// <param name="viewModel">ViewModel com as informações da editora.</param>
        /// <returns></returns>
        public async Task <PublisherViewModel> AddPublisher(PublisherViewModel viewModel)
        {
            #region Validação da regra de negócios

            if (await _repository.Exists(p => p.Name == viewModel.Name))
            {
                ModelError = string.Format(Criticas.Ja_Cadastrada_0, "Editora");
                return(viewModel);
            }

            #endregion

            var publisher = viewModel.AutoMapear <PublisherViewModel, Publisher>();
            _repository.Insert(publisher);
            OperationSuccesful = await _repository.Commit();

            //Recuperando o valor recebido pelo PublisherId.
            viewModel.PublisherId = publisher.PublisherId;

            return(viewModel);
        }