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)); }
public JsonResult GetList() { List <ViaturasViewModel> result = DBViatura.ParseListToViewModel(DBViatura.GetAllToList()); //Apply User Dimensions Validations List <AcessosDimensões> userDimensions = DBUserDimensions.GetByUserId(User.Identity.Name); if (userDimensions.Where(y => y.Dimensão == (int)Dimensions.Region).Count() > 0) { result.RemoveAll(x => !userDimensions.Any(y => y.Dimensão == (int)Dimensions.Region && y.ValorDimensão == x.CodigoRegiao)); } if (userDimensions.Where(y => y.Dimensão == (int)Dimensions.FunctionalArea).Count() > 0) { result.RemoveAll(x => !userDimensions.Any(y => y.Dimensão == (int)Dimensions.FunctionalArea && y.ValorDimensão == x.CodigoAreaFuncional)); } if (userDimensions.Where(y => y.Dimensão == (int)Dimensions.ResponsabilityCenter).Count() > 0) { result.RemoveAll(x => !userDimensions.Any(y => y.Dimensão == (int)Dimensions.ResponsabilityCenter && y.ValorDimensão == x.CodigoCentroResponsabilidade)); } result.ForEach(x => { if (x.Estado != null) { x.EstadoDescricao = EnumerablesFixed.ViaturasEstado.Where(y => y.Id == x.Estado).FirstOrDefault().Value; } if (x.TipoCombustivel != null && x.TipoCombustivel != 0) { x.TipoCombustivelDescricao = EnumerablesFixed.ViaturasTipoCombustivel.Where(y => y.Id == x.TipoCombustivel).FirstOrDefault().Value; } if (x.TipoPropriedade != null && x.TipoPropriedade != 0) { x.TipoPropriedadeDescricao = EnumerablesFixed.ViaturasTipoPropriedade.Where(y => y.Id == x.TipoPropriedade).FirstOrDefault().Value; } if (!string.IsNullOrEmpty(x.CodigoMarca)) { x.Marca = DBMarcas.ParseToViewModel(DBMarcas.GetById(Int32.Parse(x.CodigoMarca))); } if (!string.IsNullOrEmpty(x.CodigoModelo)) { x.Modelo = DBModelos.ParseToViewModel(DBModelos.GetById(Int32.Parse(x.CodigoModelo))); } if (!string.IsNullOrEmpty(x.CodigoTipoViatura)) { x.TipoViatura = DBTiposViaturas.ParseToViewModel(DBTiposViaturas.GetById(Int32.Parse(x.CodigoTipoViatura))); } }); return(Json(result)); }
public JsonResult DeleteViatura([FromBody] ViaturasViewModel data) { if (data != null) { ErrorHandler result = new ErrorHandler(); DBViatura.Delete(DBViatura.ParseToDB(data)); if (DBViaturaImagem.GetByMatricula(data.Matricula) != null) { ViaturasImagens ViaturaImagem = DBViaturaImagem.GetByMatricula(data.Matricula); DBViaturaImagem.Delete(ViaturaImagem); } result = new ErrorHandler() { eReasonCode = 0, eMessage = "Viatura removida com sucesso." }; return(Json(result)); } return(Json(false)); }
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)); }
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)); }