Exemplo n.º 1
0
 public void Delete(PerfilImpressora perfilImpressora)
 {
     using (TransactionScope transactionScope = _uow.CreateTransactionScope())
     {
         _uow.PerfilImpressoraItemRepository.Delete(perfilImpressora.PerfilImpressoraItens.ToList());
         _uow.PerfilImpressoraRepository.Delete(perfilImpressora);
         _uow.SaveChanges();
         transactionScope.Complete();
     }
 }
Exemplo n.º 2
0
        public ActionResult Cadastrar(PerfilImpressoraCreateViewModel model)
        {
            Func <string, ViewResult> errorView = (error) =>
            {
                CarregarDadosImpressaoItem();

                if (error != null)
                {
                    Notify.Error(Resources.CommonStrings.RequestUnexpectedErrorMessage);
                }

                return(View(model));
            };

            if (!ModelState.IsValid)
            {
                return(errorView(null));
            }

            if (model.TiposImpressao.NullOrEmpty())
            {
                ModelState.AddModelError(nameof(model.TiposImpressao), "Selecione pelo menos um tipo de impressão para o perfil.");
                return(errorView(null));
            }

            var teste = model.TiposImpressao.Where(w => w.Impressoras.Any(a => a.Selecionado)).Any();

            if (!model.TiposImpressao.Where(w => w.Impressoras.Any(a => a.Selecionado)).Any())
            {
                ModelState.AddModelError(nameof(model.TiposImpressao), "Escolha pelo menos uma impressora para o perfil");
                return(errorView(null));
            }

            var teste2 = model.TiposImpressao.Where(w => w.Impressoras.Any(a => a.Selecionado)).Any();

            if (model.TiposImpressao.Where(w => !w.Impressoras.Any(a => a.Selecionado)).Any())
            {
                ModelState.AddModelError(nameof(model.TiposImpressao), "Todos os tipos de impressão selecionados devem ter pelos menos um empresa escolhida.");
                return(errorView(null));
            }

            PerfilImpressora perfilImpressora = Mapper.Map <PerfilImpressora>(model);

            perfilImpressora.IdEmpresa = IdEmpresa;

            _perfilImpressoraService.Add(perfilImpressora);

            Notify.Success(Resources.CommonStrings.RegisterCreatedSuccessMessage);
            return(RedirectToAction("Index"));
        }
Exemplo n.º 3
0
        public ActionResult Detalhes(int id)
        {
            CarregarDadosImpressaoItem();

            PerfilImpressora perfilImpressora = _uow.PerfilImpressoraRepository.ObterPorIdImpressorasAtivas(id);

            if (perfilImpressora == null)
            {
                throw new HttpException(404, "Not found");
            }

            var model = Mapper.Map <PerfilImpressoraCreateViewModel>(perfilImpressora);

            foreach (var modelTipos in model.TiposImpressao)
            {
                modelTipos.Impressoras = modelTipos.Impressoras.Where(x => x.IdImpressora != 0).OrderBy(o => o.Nome).ToList();
            }

            return(View(model));
        }
Exemplo n.º 4
0
        public void Edit(PerfilImpressora perfilImpressora)
        {
            var perfilItensOld = _uow.PerfilImpressoraItemRepository.ObterPorIdPerfilImpressora(perfilImpressora.IdPerfilImpressora);

            List <PerfilImpressoraItem> perfilItensAdd =
                perfilImpressora.PerfilImpressoraItens.Where(x => !perfilItensOld.Any(y => y.IdImpressora == x.IdImpressora && y.IdImpressaoItem == x.IdImpressaoItem)).ToList();

            List <PerfilImpressoraItem> perfilItensRem =
                perfilItensOld.Where(x => !perfilImpressora.PerfilImpressoraItens.Any(y => y.IdImpressora == x.IdImpressora && y.IdImpressaoItem == x.IdImpressaoItem)).ToList();

            using (TransactionScope transactionScope = _uow.CreateTransactionScope())
            {
                _uow.PerfilImpressoraRepository.Update(perfilImpressora);
                _uow.PerfilImpressoraItemRepository.AddRange(perfilItensAdd);
                _uow.PerfilImpressoraItemRepository.Delete(perfilItensRem);

                _uow.SaveChanges();
                transactionScope.Complete();
            }
        }
Exemplo n.º 5
0
        public ActionResult Editar(int id)
        {
            CarregarDadosImpressaoItem();

            PerfilImpressora perfilImpressora = _uow.PerfilImpressoraRepository.ObterPorIdImpressorasAtivas(id);

            if (perfilImpressora == null)
            {
                throw new HttpException(404, "Not found");
            }

            var model = Mapper.Map <PerfilImpressoraCreateViewModel>(perfilImpressora);

            List <Printer> impressoras = _uow.BOPrinterRepository.ObterPorEmpresa(IdEmpresa);

            foreach (var modelTipos in model.TiposImpressao)
            {
                foreach (var impressora in impressoras)
                {
                    if (!modelTipos.Impressoras.Any(a => a.IdImpressora == impressora.Id))
                    {
                        var impressoraView = new ImpressoraViewModel()
                        {
                            IdImpressora = impressora.Id,
                            Nome         = impressora.Name,
                            Selecionado  = false
                        };

                        modelTipos.Impressoras.Add(impressoraView);
                    }
                }

                modelTipos.Impressoras = modelTipos.Impressoras.Where(x => x.IdImpressora != 0).OrderBy(o => o.Nome).ToList();
            }

            return(View(model));
        }
Exemplo n.º 6
0
 public void Add(PerfilImpressora perfilImpressora)
 {
     _uow.PerfilImpressoraRepository.Add(perfilImpressora);
     _uow.SaveChanges();
 }