Esempio n. 1
0
        public JsonResult UpdateViatura([FromBody] ViaturasViewModel data)
        {
            if (data != null)
            {
                Viaturas viatura = DBViatura.ParseToDB(data);
                viatura.UtilizadorModificação = User.Identity.Name;
                DBViatura.Update(viatura);

                if (data.Imagem != null)
                {
                    ViaturasImagens ViaturaImagem = new ViaturasImagens
                    {
                        Matricula             = data.Matricula,
                        Imagem                = data.Imagem,
                        UtilizadorModificacao = User.Identity.Name
                    };
                    if (DBViaturaImagem.GetByMatricula(data.Matricula) != null)
                    {
                        DBViaturaImagem.Update(ViaturaImagem);
                    }
                    else
                    {
                        DBViaturaImagem.Create(ViaturaImagem);
                    }
                }


                return(Json(data));
            }
            return(Json(false));
        }
Esempio n. 2
0
 public ActionResult Edit([Bind(Include = "ID,Matricula,Marca,Modelo,Ano,TipoCombustivel,Cor,Cilindrada,Potencia,Lugares,Tipo,Imagens")] Viaturas viaturas)
 {
     if (ModelState.IsValid)
     {
         db.Entry(viaturas).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ID = new SelectList(db.Compras, "ID", "NomeStand", viaturas.ID);
     return(View(viaturas));
 }
Esempio n. 3
0
        // GET: Viaturas/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Viaturas viaturas = db.Viaturas.Find(id);

            if (viaturas == null)
            {
                return(HttpNotFound());
            }
            return(View(viaturas));
        }
Esempio n. 4
0
        // GET: Viaturas/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index"));
            }
            Viaturas viaturas = db.Viaturas.Find(id);

            if (viaturas == null)
            {
                return(RedirectToAction("Index"));
            }
            return(View(viaturas));
        }
Esempio n. 5
0
        // GET: Viaturas/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index"));
            }
            Viaturas viaturas = db.Viaturas.Find(id);

            if (viaturas == null)
            {
                return(RedirectToAction("Index"));
            }
            ViewBag.ID = new SelectList(db.Compras, "ID", "NomeStand", viaturas.ID);
            return(View(viaturas));
        }
Esempio n. 6
0
        public static bool Delete(Viaturas ObjectToDelete)
        {
            try
            {
                using (var ctx = new SuchDBContext())
                {
                    ctx.Viaturas.Remove(ObjectToDelete);
                    ctx.SaveChanges();
                }

                return(true);
            }
            catch (Exception e)
            {
                return(false);
            }
        }
Esempio n. 7
0
        public ActionResult DeleteConfirmed(int id)
        {
            Viaturas viaturas = db.Viaturas.Find(id);

            try {
                db.Viaturas.Remove(viaturas);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch (Exception)
            {
                ModelState.AddModelError("", string.Format("Não é possível apagar a viatura",
                                                           id, viaturas.Marca)
                                         );
            }
            return(View(viaturas));
        }
Esempio n. 8
0
        public static Viaturas Update(Viaturas ObjectToUpdate)
        {
            try
            {
                using (var ctx = new SuchDBContext())
                {
                    ObjectToUpdate.DataHoraModificação = DateTime.Now;
                    ctx.Viaturas.Update(ObjectToUpdate);
                    ctx.SaveChanges();
                }

                return(ObjectToUpdate);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Esempio n. 9
0
        public static Viaturas Create(Viaturas ObjectToCreate)
        {
            try
            {
                using (var ctx = new SuchDBContext())
                {
                    ObjectToCreate.DataHoraCriação = DateTime.Now;
                    ctx.Viaturas.Add(ObjectToCreate);
                    ctx.SaveChanges();
                }

                return(ObjectToCreate);
            }
            catch (Exception e)
            {
                return(null);
            }
        }
Esempio n. 10
0
        public JsonResult GetViaturaDetails([FromBody] ViaturasViewModel data)
        {
            if (data != null)
            {
                Viaturas viatura = DBViatura.GetByMatricula(data.Matricula);

                if (viatura != null)
                {
                    ViaturasViewModel result = DBViatura.ParseToViewModel(viatura);

                    if (DBViaturaImagem.GetByMatricula(data.Matricula) != null)
                    {
                        result.Imagem = DBViaturaImagem.GetByMatricula(result.Matricula).Imagem;
                    }

                    return(Json(result));
                }

                return(Json(new ViaturasViewModel()));
            }
            return(Json(false));
        }
Esempio n. 11
0
        public JsonResult CreateViatura([FromBody] ViaturasViewModel data)
        {
            try
            {
                if (data != null)
                {
                    if (data.Matricula != null && !string.IsNullOrEmpty(data.Matricula))
                    {
                        Viaturas viatura = DBViatura.GetByMatricula(data.Matricula);

                        if (viatura == null)
                        {
                            Viaturas viaturaToCreate = DBViatura.ParseToDB(data);
                            viaturaToCreate.UtilizadorCriação = User.Identity.Name;

                            if (string.IsNullOrEmpty(viaturaToCreate.NoProjeto))
                            {
                                string projectToSearch = "V" + viaturaToCreate.Matrícula;

                                List <NAVProjectsViewModel> AllProjects = DBNAV2017Projects.GetAll(_config.NAVDatabaseName, _config.NAVCompanyName, projectToSearch).ToList();
                                if (AllProjects != null && AllProjects.Count > 0)
                                {
                                    viaturaToCreate.NoProjeto = projectToSearch;
                                }
                            }

                            viaturaToCreate = DBViatura.Create(viaturaToCreate);

                            if (data.Imagem != null)
                            {
                                ViaturasImagens ViaturaImagem = new ViaturasImagens
                                {
                                    Matricula         = data.Matricula,
                                    Imagem            = data.Imagem,
                                    UtilizadorCriacao = User.Identity.Name
                                };
                                DBViaturaImagem.Create(ViaturaImagem);
                            }

                            if (viaturaToCreate == null)
                            {
                                data.eReasonCode = 3;
                                data.eMessage    = "Ocorreu um erro ao criar a viatura no portal.";
                            }
                            else
                            {
                                data.eReasonCode = 1;
                            }
                        }
                        else
                        {
                            data.eReasonCode = 4;
                            data.eMessage    = "Não pode criar a Viatura, porque já existe uma Viatura com esta matrícula no eSUCH.";
                        }
                    }
                    else
                    {
                        data.eReasonCode = 5;
                        data.eMessage    = "O campo Matrícula é de preenchimento obrigatório.";
                    }
                }
            }
            catch (Exception e)
            {
                data.eReasonCode = 4;
                data.eMessage    = "Ocorreu um erro ao criar a viatura";
            }
            return(Json(data));
        }
Esempio n. 12
0
        public static Viaturas ParseToDB(ViaturasViewModel x)
        {
            Viaturas viatura = new Viaturas();

            viatura.Matrícula         = x.Matricula;
            viatura.NºQuadro          = x.NQuadro;
            viatura.Estado            = x.Estado;
            viatura.CódigoTipoViatura = Int32.Parse(x.CodigoTipoViatura);
            viatura.CódigoMarca       = Int32.Parse(x.CodigoMarca);
            if (!string.IsNullOrEmpty(x.CodigoModelo))
            {
                viatura.CódigoModelo = Int32.Parse(x.CodigoModelo);
            }
            viatura.CartãoCombustível = x.CartaoCombustivel;
            viatura.Apólice           = x.Apolice;
            viatura.PesoBruto         = x.PesoBruto;
            viatura.Tara                         = x.Tara;
            viatura.Cilindrada                   = x.Cilindrada;
            viatura.TipoCombustível              = x.TipoCombustivel;
            viatura.NºLugares                    = x.NLugares;
            viatura.Cor                          = x.Cor;
            viatura.AtribuídaA                   = x.AtribuidaA;
            viatura.CódigoRegião                 = x.CodigoRegiao;
            viatura.CódigoÁreaFuncional          = x.CodigoAreaFuncional;
            viatura.CódigoCentroResponsabilidade = x.CodigoCentroResponsabilidade;
            viatura.TipoPropriedade              = x.TipoPropriedade;
            viatura.NºImobilizado                = x.NImobilizado;
            viatura.UtilizadorCriação            = x.UtilizadorCriacao;
            viatura.UtilizadorModificação        = x.UtilizadorModificacao;
            viatura.LocalParqueamento            = x.LocalParqueamento;
            viatura.Observações                  = x.Observacoes;
            viatura.Potência                     = x.Potencia;
            viatura.DistânciaEntreEixos          = x.DistanciaEntreEixos;
            viatura.PneumáticosFrente            = x.PneumaticosFrente;
            viatura.PneumáticosRetaguarda        = x.PneumaticosRetaguarda;
            viatura.ConsumoIndicativo            = x.ConsumoIndicativo;
            viatura.CartaVerde                   = x.CartaVerde;
            viatura.NºViaVerde                   = x.NViaVerde;
            viatura.ValorAquisição               = x.ValorAquisicao;
            viatura.ValorVenda                   = x.ValorVenda;
            //Imagem = x.Imagem,
            viatura.KmUltimaRevisão   = x.KmUltimaRevisao;
            viatura.IntervaloRevisões = x.IntervaloRevisoes;
            viatura.DuraçãoPneus      = x.DuracaoPneus;
            viatura.NoProjeto         = x.NoProjeto;

            viatura.DataMatrícula = x.DataMatricula != "" && x.DataMatricula != null?DateTime.Parse(x.DataMatricula) : (DateTime?)null;

            viatura.DataHoraModificação = x.DataHoraModificacao != "" && x.DataHoraModificacao != null?DateTime.Parse(x.DataHoraModificacao) : (DateTime?)null;

            viatura.DataAbate = x.DataAbate != "" && x.DataAbate != null?DateTime.Parse(x.DataAbate) : (DateTime?)null;

            viatura.DataAquisição = x.DataAquisicao != "" && x.DataAquisicao != null?DateTime.Parse(x.DataAquisicao) : (DateTime?)null;

            viatura.DataEntradaFuncionamento = x.DataEntradaFuncionamento != "" && x.DataEntradaFuncionamento != null?DateTime.Parse(x.DataEntradaFuncionamento) : (DateTime?)null;

            viatura.DataHoraCriação = x.DataHoraCriacao != "" && x.DataHoraCriacao != null?DateTime.Parse(x.DataHoraCriacao) : (DateTime?)null;

            viatura.DataUltimaInspeção = x.DataUltimaInspecao != "" && x.DataUltimaInspecao != null?DateTime.Parse(x.DataUltimaInspecao) : (DateTime?)null;

            viatura.DataUltimaRevisão = x.DataUltimaRevisao != "" && x.DataUltimaRevisao != null?DateTime.Parse(x.DataUltimaRevisao) : (DateTime?)null;

            viatura.ValidadeApólice = x.ValidadeApolice != "" && x.ValidadeApolice != null?DateTime.Parse(x.ValidadeApolice) : (DateTime?)null;

            viatura.ValidadeCartaVerde = x.ValidadeCartaVerde != "" && x.ValidadeCartaVerde != null?DateTime.Parse(x.ValidadeCartaVerde) : (DateTime?)null;

            viatura.ValidadeCartãoCombustivel = x.ValidadeCartaoCombustivel != "" && x.ValidadeCartaoCombustivel != null?DateTime.Parse(x.ValidadeCartaoCombustivel) : (DateTime?)null;

            return(viatura);
        }
Esempio n. 13
0
        public static ViaturasViewModel ParseToViewModel(Viaturas x)
        {
            ViaturasViewModel viatura = new ViaturasViewModel()
            {
                Matricula         = x.Matrícula,
                NQuadro           = x.NºQuadro,
                Estado            = x.Estado,
                CodigoTipoViatura = x.CódigoTipoViatura.ToString(),
                CodigoMarca       = x.CódigoMarca.ToString(),
                CodigoModelo      = x.CódigoModelo.ToString(),
                CartaoCombustivel = x.CartãoCombustível,
                Apolice           = x.Apólice,
                PesoBruto         = x.PesoBruto,
                Tara                         = x.Tara,
                Cilindrada                   = x.Cilindrada,
                TipoCombustivel              = x.TipoCombustível,
                NLugares                     = x.NºLugares,
                Cor                          = x.Cor,
                AtribuidaA                   = x.AtribuídaA,
                CodigoRegiao                 = x.CódigoRegião,
                CodigoAreaFuncional          = x.CódigoÁreaFuncional,
                CodigoCentroResponsabilidade = x.CódigoCentroResponsabilidade,
                TipoPropriedade              = x.TipoPropriedade,
                NImobilizado                 = x.NºImobilizado,
                UtilizadorCriacao            = x.UtilizadorCriação,
                UtilizadorModificacao        = x.UtilizadorModificação,
                LocalParqueamento            = x.LocalParqueamento,
                Observacoes                  = x.Observações,
                Potencia                     = x.Potência,
                DistanciaEntreEixos          = x.DistânciaEntreEixos,
                PneumaticosFrente            = x.PneumáticosFrente,
                PneumaticosRetaguarda        = x.PneumáticosRetaguarda,
                ConsumoIndicativo            = x.ConsumoIndicativo,
                CartaVerde                   = x.CartaVerde,
                NViaVerde                    = x.NºViaVerde,
                ValorAquisicao               = x.ValorAquisição,
                ValorVenda                   = x.ValorVenda,
                //Imagem = x.Imagem,
                KmUltimaRevisao   = x.KmUltimaRevisão,
                IntervaloRevisoes = x.IntervaloRevisões,
                DuracaoPneus      = x.DuraçãoPneus,
                NoProjeto         = x.NoProjeto
            };

            if (x.DataMatrícula != null)
            {
                viatura.DataMatricula = x.DataMatrícula.Value.ToString("yyyy-MM-dd");
            }
            if (x.DataHoraModificação != null)
            {
                viatura.DataHoraModificacao = x.DataHoraModificação.Value.ToString("yyyy-MM-dd hh:mm:ss");
            }
            if (x.DataAbate != null)
            {
                viatura.DataAbate = x.DataAbate.Value.ToString("yyyy-MM-dd");
            }
            if (x.DataAquisição != null)
            {
                viatura.DataAquisicao = x.DataAquisição.Value.ToString("yyyy-MM-dd");
            }
            if (x.DataEntradaFuncionamento != null)
            {
                viatura.DataEntradaFuncionamento = x.DataEntradaFuncionamento.Value.ToString("yyyy-MM-dd");
            }
            if (x.DataHoraCriação != null)
            {
                viatura.DataHoraCriacao = x.DataHoraCriação.Value.ToString("yyyy-MM-dd hh:mm:ss");
            }
            if (x.DataUltimaInspeção != null)
            {
                viatura.DataUltimaInspecao = x.DataUltimaInspeção.Value.ToString("yyyy-MM-dd");
            }
            if (x.DataUltimaRevisão != null)
            {
                viatura.DataUltimaRevisao = x.DataUltimaRevisão.Value.ToString("yyyy-MM-dd");
            }
            if (x.ValidadeApólice != null)
            {
                viatura.ValidadeApolice = x.ValidadeApólice.Value.ToString("yyyy-MM-dd");
            }
            if (x.ValidadeCartaVerde != null)
            {
                viatura.ValidadeCartaVerde = x.ValidadeCartaVerde.Value.ToString("yyyy-MM-dd");
            }
            if (x.ValidadeCartãoCombustivel != null)
            {
                viatura.ValidadeCartaoCombustivel = x.ValidadeCartãoCombustivel.Value.ToString("yyyy-MM-dd");
            }

            return(viatura);
        }
Esempio n. 14
0
        public ActionResult Create([Bind(Include = "ID,Matricula,Marca,Modelo,Ano,TipoCombustivel,Cor,Cilindrada,Potencia,Lugares,Tipo")] Viaturas viaturas, HttpPostedFileBase uploadFotografia)
        {
            //----------
            // escrever os dados de um novo Agente na BD

            // especificar o ID do novo Agente
            // testar se há registos na tabela dos Agentes
            // if (db.Agentes.Count()!=0){ }

            // ou então, usar a instrução TRY/CATCH
            int idNovaViatura = 0;

            try
            {
                idNovaViatura = db.Viaturas.Max(a => a.ID) + 1;
            }
            catch (Exception)
            {
                idNovaViatura = 1;
            }

            // guardar o ID do novo Agente
            viaturas.ID = idNovaViatura;

            // especificar (escolher) o nome do ficheiro
            string nomeImagem = "Viatura_" + idNovaViatura + ".jpg";

            // var. auxiliar
            string path = "";

            // validar se a imagem foi fornecida
            if (uploadFotografia != null)
            {
                // o ficheiro foi fornecido
                // validar se o q foi fornecido é uma imagem ----> fazer em casa
                // formatar o tamanho da imagem

                // criar o caminho completo até ao sítio onde o ficheiro
                // será guardado
                path = Path.Combine(Server.MapPath("~/fotos/"), nomeImagem);

                // guardar o nome do ficheiro na BD
                //viaturas.Imagens = item(nomeImagem);
            }
            else
            {
                // não foi fornecido qq ficheiro
                // gerar uma mensagem de erro
                ModelState.AddModelError("", "Não foi fornecida uma imagem...");
                // devolver o controlo à View
                return(View(viaturas));
            }
            //---------------------------


            if (ModelState.IsValid)
            {
                try
                {
                    db.Viaturas.Add(viaturas);
                    db.SaveChanges();
                    uploadFotografia.SaveAs(path);
                    return(RedirectToAction("Index"));
                }

                catch (Exception)
                {
                    ModelState.AddModelError("", "Houve um erro com a criação da viatura...");

                    /// se existir uma classe chamada 'Erro.cs'
                    /// iremos nela registar os dados do erro
                    /// - criar um objeto desta classe
                    /// - atribuir a esse objeto os dados do erro
                    ///   - nome do controller
                    ///   - nome do método
                    ///   - data + hora do erro
                    ///   - mensagem do erro (ex)
                    ///   - dados que se tentavam inserir
                    ///   - outros dados considerados relevante
                    /// - guardar o objeto na BD
                    ///
                    /// - notificar um GESTOR do sistema, por email,
                    ///   ou por outro meio, da ocorrência do erro
                    ///   e dos seus dados
                }
            }

            ViewBag.ID = new SelectList(db.Compras, "ID", "NomeStand", viaturas.ID);
            return(View(viaturas));
        }