Ejemplo n.º 1
0
        public async Task <IActionResult> AddOrEdit(ProspectViewModel prospectViewModel)
        {
            prospectViewModel = await PopularListaSegmentos(prospectViewModel);

            ModelState.Remove("Name");
            ModelState.Remove("ProActive");
            ModelState.Remove("Competition");
            ModelState.Remove("NameCompetitors");
            ModelState.Remove("International");
            ModelState.Remove("Status");
            ModelState.Remove("Opening");
            ModelState.Remove("Type");
            ModelState.Remove("PhaseProspect");
            ModelState.Remove("CategoryId");
            ModelState.Remove("EmployeeId");
            ModelState.Remove("CustomerId");
            ModelState.Remove("CompanyId");

            if (!ModelState.IsValid)
            {
                return(Json(new { isValid = false, html = Helper.RenderRazorViewToString(this, "_AddOrEdit", prospectViewModel) }));
            }

            var customer = _mapper.Map <Customer>(prospectViewModel.Customer);

            await _customerService.Adicionar(customer);

            if (!OperacaoValida())
            {
                return(Json(new { isValid = false, html = Helper.RenderRazorViewToString(this, "_AddOrEdit", prospectViewModel) }));
            }

            return(Json(new { isValid = true, cliente = customer }));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> AddOrEdit(Guid id, ProspectViewModel prospectViewModel)
        {
            prospectViewModel = await PopularListas(prospectViewModel);

            string mensagem;

            if (!ModelState.IsValid)
            {
                _logger.Warn("Erro no estado da model");

                prospectViewModel.Customer = new CustomerViewModel();

                return(View(prospectViewModel));
            }

            if (!string.IsNullOrEmpty(prospectViewModel.ProspectEmployeeId))
            {
                foreach (var item in prospectViewModel.ProspectEmployeeId.Split(','))
                {
                    prospectViewModel.AddProspectEmployee(new ProspectEmployeeViewModel(Guid.Parse(item)));
                }
            }

            var prospect = _mapper.Map <Prospect>(prospectViewModel);

            if (id == null || id == Guid.Empty)
            {
                await _service.Adicionar(prospect);

                if (!OperacaoValida())
                {
                    _logger.Warn("Erro na validação da regra negocio");

                    return(View(prospectViewModel));
                }

                var idPsp = _mapper.Map <ProspectViewModel>(await _context.ObterPorId(prospect.Id)).IdPsp;

                mensagem = $"Projeto {idPsp} criado com sucesso!";

                _logger.Info(mensagem);
            }
            else
            {
                await _service.Atualizar(prospect);

                if (!OperacaoValida())
                {
                    _logger.Warn("Erro na validação da regra negocio");

                    return(View(prospectViewModel));
                }

                mensagem = $"Projeto {prospect.IdPsp} editado com sucesso!";

                _logger.Info(mensagem);
            }

            return(RedirectToAction(nameof(Index), new { mensagem }));
        }
Ejemplo n.º 3
0
        public ProspectView()
        {
            InitializeComponent();
            Model            = new ProspectViewModel();
            this.DataContext = Model;

            ListContent.Children.Add(Model.Content as Liste <T_E_PROSPECT_PRO>);
        }
Ejemplo n.º 4
0
        private async Task <ProspectViewModel> PopularListas(ProspectViewModel prospect)
        {
            prospect.Categories = _mapper.Map <IEnumerable <CategoryViewModel> >(await _categoryRepository.ObterTodos());
            prospect.Employees  = _mapper.Map <IEnumerable <EmployeeViewModel> >(await _employeeRepository.ObterTodos());
            prospect.Customers  = _mapper.Map <IEnumerable <CustomerViewModel> >(await _customerRepository.ObterTodos());
            prospect.Companies  = _mapper.Map <IEnumerable <CompanyViewModel> >(await _companyRepository.ObterTodos());

            return(prospect);
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> AddOrEdit()
        {
            var prospectViewModel = new ProspectViewModel();

            prospectViewModel.Customer = new CustomerViewModel();

            prospectViewModel = await PopularListaSegmentos(prospectViewModel);

            return(PartialView("_AddOrEdit", prospectViewModel));
        }
Ejemplo n.º 6
0
        public IActionResult Put([FromBody] ProspectViewModel model)
        {
            if (!ModelState.IsValid)
            {
                NotifyModelStateErrors();
                return(Response(model));
            }

            prospectAppService.Update(model);

            return(Response(model));
        }
Ejemplo n.º 7
0
        public static ProspectViewModel ToProspectViewModels(this Prospect x)
        {
            var result = new ProspectViewModel
            {
                ProspectID     = x.ProspectID,
                ProspectName   = x.ProspectName,
                ProspectType   = Enum.Parse(typeof(ProspectType), x.ProspectType.ToString()).ToString(),
                Closed         = x.Closed,
                AdditionalInfo = x.AdditionalInfo
            };

            return(result);
        }
Ejemplo n.º 8
0
        public void Update(ProspectViewModel viewModel)
        {
            var updateCommand = _mapper.Map <UpdateProspectCommand>(viewModel);

            _bus.SendCommand(updateCommand);
        }
Ejemplo n.º 9
0
        public void Create(ProspectViewModel viewModel)
        {
            var command = _mapper.Map <CreateProspectCommand>(viewModel);

            _bus.SendCommand(command);
        }
Ejemplo n.º 10
0
        private async Task <ProspectViewModel> PopularListaSegmentos(ProspectViewModel prospect)
        {
            prospect.Customer.Segments = _mapper.Map <IEnumerable <SegmentViewModel> >(await _segmentRepository.ObterTodos());

            return(prospect);
        }