using NLog; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.Http; using ULA.Cathay.CreditoModel.Credito; using ULA.Cathay.ModuloMantenimiento.Commons; using ULA.Cathay.ModuloMantenimiento.Json; using Ultimus.Interfaces; namespace ULA.Cathay.ModuloMantenimiento.ControllersWebApi { public class VehiculoAPIController : ApiController { private static Logger logger = LogManager.GetLogger("VehiculoAPIController"); private string _IDLogger; public string IDLogger { get { return _IDLogger; } set { _IDLogger = string.Format("INCIDENT {0}|", value); } } #region IDejecutivo #region ObtenerItems [HttpGet] public List ObtenerItems(string UserId) { List listaVehiculo = null; try { listaVehiculo = new List(); using (CreditoContex db = new CreditoContex()) { listaVehiculo = db.Vehiculo.Where(i => i.UserId == UserId).ToList(); } } catch (Exception ex) { logger.Error(IDLogger + " Error " + Utilities.GetCurrentMethodName() + "=" + ex.Message + ex.StackTrace); } return listaVehiculo; } #endregion #region toggleStateItem [HttpPost] public string toggleStateItem(Vehiculo model) { try { using (CreditoContex db = new CreditoContex()) { Vehiculo _model = db.Vehiculo.Where(t => t.IdVehiculo == model.IdVehiculo && t.UserId == model.UserId).FirstOrDefault(); if (_model != null) { _model.Estado = model.Estado; _model.UsuarioModificado = model.UsuarioModificado; _model.FechaModificacion = DateTime.Now; db.SaveChanges(); return TipoCodigoRespuesta.EXITOSO.ToString(); } } } catch (Exception ex) { logger.Error(IDLogger + " Error " + Utilities.GetCurrentMethodName() + "=" + ex.Message + ex.StackTrace); return TipoCodigoRespuesta.ERROR.ToString(); } return TipoCodigoRespuesta.ERROR.ToString(); } #endregion #region ModificarItem [HttpPost] public string ModificarItem(Vehiculo model) { try { using (CreditoContex db = new CreditoContex()) { Vehiculo _model = db.Vehiculo.Where(t => t.IdVehiculo == model.IdVehiculo && t.UserId == model.UserId).FirstOrDefault(); if (_model != null) { _model.Marca = model.Marca; _model.TipoVehiculo = model.TipoVehiculo; _model.MotorCC = model.MotorCC; _model.Ano = model.Ano; _model.Placa = model.Placa; _model.ValorKilometro = model.ValorKilometro; _model.UsuarioModificado = model.UsuarioModificado; _model.FechaModificacion = DateTime.Now; _model.Default = model.Default; db.SaveChanges(); return TipoCodigoRespuesta.EXITOSO.ToString(); } } } catch (Exception ex) { logger.Error(IDLogger + " Error " + Utilities.GetCurrentMethodName() + "=" + ex.Message + ex.StackTrace); return TipoCodigoRespuesta.ERROR.ToString(); } return TipoCodigoRespuesta.ERROR.ToString(); } #endregion #region InsertarItem [HttpPost] public string InsertarItem(Vehiculo model) { try { Vehiculo _model = new Vehiculo(); int? Next_id; int idActual; using (CreditoContex db = new CreditoContex()) { Next_id = db.Vehiculo.Max(t => (int?)t.IdVehiculo); idActual = (Next_id == null) ? 0 : Convert.ToInt32(Next_id); _model.IdVehiculo = (idActual + 1); _model.UserId = model.UserId; _model.Marca = model.Marca; _model.TipoVehiculo = model.TipoVehiculo; _model.MotorCC = model.MotorCC; _model.Ano = model.Ano; _model.Placa = model.Placa; _model.ValorKilometro = model.ValorKilometro; _model.UsuarioCreador = model.UsuarioCreador; _model.FechaCreacion = DateTime.Now; _model.Estado = true; _model.Default = model.Default; db.Vehiculo.Add(_model); db.SaveChanges(); } } catch (Exception ex) { logger.Error(IDLogger + " Error " + Utilities.GetCurrentMethodName() + "=" + ex.Message + ex.StackTrace); return TipoCodigoRespuesta.ERROR.ToString(); } return TipoCodigoRespuesta.EXITOSO.ToString(); } #endregion #endregion } }