コード例 #1
0
        public ResultModel <Produto> Update(Produto produto)
        {
            try
            {
                var resultModel = new ResultModel <Produto>(true);

                var data = UnitOfWork.ProdutoRepository.Update(produto);
                if (data is null)
                {
                    resultModel.IsOk = false;
                    resultModel.AddMessage(string.Format(MensagemErro.MSG007, "Produto"), SystemMessageTypeEnum.Info);
                }
                else
                {
                    resultModel.Items.Add(data);
                    resultModel.AddMessage(string.Format(MensagemSucesso.MSG001), SystemMessageTypeEnum.Success);
                    this.Commit();
                }
                resultModel.Pages = null;

                return(resultModel);
            }
            catch (Exception ex)
            {
                var resultModel = new ResultModel <Produto>(false);
                resultModel.Pages = null;
                resultModel.AddMessage(ex.Message, SystemMessageTypeEnum.Error);
                return(resultModel);
            }
        }
コード例 #2
0
        public ResultModel <Produto> Save(Produto produto, string perfis, string perfisInterno, IFormFile foto)
        {
            try
            {
                var data = new Produto();

                var resultModel = new ResultModel <Produto>(true);

                var item = Get(produto.Id).Items.FirstOrDefault();

                var isNew = item is null;
                var error = string.Empty;

                var perfisArray = !string.IsNullOrWhiteSpace(perfis) ? perfis.Split(',') : new string[] { };

                if (isNew)
                {
                    produto.Nome       = produto.Nome;
                    produto.ValorVenda = produto.ValorVenda;
                    produto.Imagem     = produto.Imagem;
                }
                else
                {
                    item.Nome       = produto.Nome;
                    item.ValorVenda = produto.ValorVenda;

                    if (produto.Imagem != null)
                    {
                        item.Imagem = produto.Imagem;
                    }

                    data = UnitOfWork.ProdutoRepository.Update(produto);
                }

                if (data.Id > 0)
                {
                    resultModel.IsOk = false;
                    resultModel.AddMessage(string.Format(MensagemErro.MSG007, "Produto"), SystemMessageTypeEnum.Info);
                }
                else
                {
                    resultModel.Items.Add(data);
                    resultModel.AddMessage(string.Format(MensagemSucesso.MSG001), SystemMessageTypeEnum.Success);
                    Commit();
                }

                resultModel.Pages = null;

                return(resultModel);
            }
            catch (Exception ex)
            {
                var resultModel = new ResultModel <Produto>(false);
                resultModel.Pages = null;
                resultModel.AddMessage(ex.Message, SystemMessageTypeEnum.Error);
                return(resultModel);
            }
        }
コード例 #3
0
        public ResultModel <Produto> GetList(Entities.Filters.ProdutoFilter filter, string sortDir = "asc", int sortCol = 0)
        {
            try
            {
                if (filter.ResultPagesModel != null &&
                    (filter.ResultPagesModel.Offset == 0 &&
                     filter.ResultPagesModel.Actual == 0))
                {
                    filter.ResultPagesModel = new Entities.Filters.PaginationFilter().ResultPagesModel;
                }

                var resultModel = UnitOfWork.ProdutoRepository.GetList(filter, sortDir, sortCol);
                resultModel.Messages = null;
                return(resultModel);
            }
            catch (Exception ex)
            {
                var resultModel = new ResultModel <Produto>(false);
                resultModel.Pages = null;
                resultModel.AddMessage(ex.Message, SystemMessageTypeEnum.Error);
                return(resultModel);
            }
        }