예제 #1
0
        // GET: Servicos/Edit/5
        public async Task <IActionResult> Edit(string id, string returnUrl)
        {
            if (String.IsNullOrEmpty(id))
            {
                return(NotFound());
            }

            var servico = await _context.Servicos.Include(s => s.Servicos_DataExecucao).ThenInclude(sde => sde.DataExecucao).Where(s => s.ID.Equals(id)).FirstOrDefaultAsync();

            if (servico == null)
            {
                return(NotFound());
            }

            servico.Observacoes = servico.Observacoes?.Replace("<br/>", "\r\n");

            ServicosCreateViewModel response = new ServicosCreateViewModel
            {
                Servico         = servico,
                RequerentesList = new SelectList(_context.Requerentes.OrderBy(r => r.Nome).ToList(), "ID", "Nome", servico.RequerenteFK)
            };

            ViewData["ReturnUrl"] = returnUrl;

            return(View(response));
        }
예제 #2
0
        // GET: Servicos
        public async Task <IActionResult> RequerentesAjax(string id)
        {
            var requerentes = await _context.Requerentes.OrderBy(r => r.Nome).ToListAsync();

            // Caso exista id no parametro, mostrar esse requerente já selecionado, senão mostra o ultimo id
            var lastRequrente = (!String.IsNullOrEmpty(id)) ? await _context.Requerentes.FindAsync(id) : await _context.Requerentes.LastOrDefaultAsync();

            ServicosCreateViewModel response = new ServicosCreateViewModel()
            {
                RequerentesList = new SelectList(requerentes, "ID", "Nome", lastRequrente.ID)
            };

            return(PartialView("PartialViews/_RequerentesDropdown", response));
        }
예제 #3
0
        // GET: Servicos/ServSolicAjax
        public IActionResult ServSolicAjax(string id, string servSolic)
        {
            ServicosCreateViewModel response = new ServicosCreateViewModel()
            {
            };
            var allServSolic = _context.ServicosSolicitados.OrderBy(t => t.Nome); // Todos os serviços solicitados ordernados


            // Caso exista id, preenher as checkboxes de acordo com o serviço em questão
            // Quando existe id é porque se trata do editar, logo esse serviço pode ter serviços solicitados selecionados
            // nesse caso queremos preencher a dropdown com os serviços solicitados da relação
            if (!String.IsNullOrEmpty(servSolic))
            {
                string[] array = servSolic.Split(",");

                // Neste caso foi adicionado um novo serviço solicitado por Ajax
                // Quando não é fornecido um id, preenche de acordo com os serviços solicitados selecionados pelo utilizador
                // para não perder essa informação quando é adiciona um novo serviço solicitado
                response.ServSolicitados = allServSolic.Select(ss => new SelectListItem()
                {
                    //Selected = servSolic.Contains(ss.ID.ToString()),
                    Selected = (array.Where(serv => Int32.Parse(serv) == ss.ID).Count() != 0),
                    Text     = ss.Nome,
                    Value    = ss.ID.ToString()
                });
            }
            else
            {
                response.ServSolicitados = allServSolic.Select(ss => new SelectListItem()
                {
                    // Verificar se o serviço solicitado em que nos encontramos em cada instancia do select (select percorre todos), coincide com algum valor
                    // da lista Servicos_ServicosSolicitados. Caso exista, retorna verdade pois esse encontra-se selecionado
                    Selected = (_context.Servicos_ServicosSolicitados.Where(sss => sss.ServicoFK.Equals(id) && sss.ServicoSolicitadoFK == ss.ID).Count() != 0),
                    Text     = ss.Nome,
                    Value    = ss.ID.ToString()
                });
            }

            return(PartialView("PartialViews/_ServSolicitadosDropdown", response));
        }