/// <summary> /// Actualiza la informacion de un chofer en base de datos /// </summary> /// <param name="chofer"></param> /// <param name="usuario"></param> /// <returns></returns> public object ActualizarChofer(Sam3_Chofer chofer, Sam3_Usuario usuario) { try { using (SamContext ctx = new SamContext()) { if (!ctx.Sam3_Chofer.Where(x => x.Nombre == chofer.Nombre && x.Activo).AsParallel().Any()) { Sam3_Chofer choferEnBd = ctx.Sam3_Chofer.Where(x => x.ChoferID == chofer.ChoferID && x.Activo).AsParallel().SingleOrDefault(); choferEnBd.Activo = chofer.Activo != null && chofer.Activo != choferEnBd.Activo ? chofer.Activo : choferEnBd.Activo; choferEnBd.Nombre = chofer.Nombre != null && chofer.Nombre != choferEnBd.Nombre ? chofer.Nombre : choferEnBd.Nombre; choferEnBd.TransportistaID = chofer.TransportistaID != null && chofer.TransportistaID != choferEnBd.TransportistaID ? chofer.TransportistaID : choferEnBd.TransportistaID; choferEnBd.UsuarioModificacion = usuario.UsuarioID; choferEnBd.FechaModificacion = DateTime.Now; ctx.SaveChanges(); TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add("OK"); result.ReturnCode = 200; result.ReturnStatus = true; result.IsAuthenicated = true; return(result); } else { throw new Exception("Chofer existente"); } } } catch (Exception ex) { //-----------------Agregar mensaje al Log ----------------------------------------------- LoggerBd.Instance.EscribirLog(ex); //-----------------Agregar mensaje al Log ----------------------------------------------- TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add(ex.Message); result.ReturnCode = 500; result.ReturnStatus = false; result.IsAuthenicated = true; return(result); } }
/// <summary> /// Genera un nuevo registro de tipo Chofer /// </summary> /// <param name="chofer">Propiedades del nuevo registro</param> /// <param name="usuario">Información del usuario</param> /// <returns>JSON {"Nombre": "xxxx", "ChoferID":"10"}</returns> public object InsertarChofer(Sam3_Chofer chofer, Sam3_Usuario usuario) { try { using (SamContext ctx = new SamContext()) { if (!ctx.Sam3_Chofer.Where(x => x.Nombre == chofer.Nombre && x.TransportistaID == chofer.TransportistaID && x.Activo).AsParallel().Any()) { Sam3_Chofer nuevoChofer = new Sam3_Chofer(); nuevoChofer.Activo = true; nuevoChofer.FechaModificacion = DateTime.Now; nuevoChofer.Nombre = chofer.Nombre; nuevoChofer.UsuarioModificacion = usuario.UsuarioID; nuevoChofer.TransportistaID = chofer.TransportistaID; ctx.Sam3_Chofer.Add(nuevoChofer); ctx.SaveChanges(); return(new Chofer { Nombre = chofer.Nombre, ChoferID = chofer.ChoferID.ToString() }); } else { throw new Exception("Chofer existente"); } } } catch (Exception ex) { //-----------------Agregar mensaje al Log ----------------------------------------------- LoggerBd.Instance.EscribirLog(ex); //-----------------Agregar mensaje al Log ----------------------------------------------- TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add(ex.Message); result.ReturnCode = 500; result.ReturnStatus = false; result.IsAuthenicated = true; return(result); } }
public object Put(Sam3_Chofer chofer, string token) { string payload = ""; string newToken = ""; bool tokenValido = ManageTokens.Instance.ValidateToken(token, out payload, out newToken); if (tokenValido) { JavaScriptSerializer serializer = new JavaScriptSerializer(); Sam3_Usuario usuario = serializer.Deserialize <Sam3_Usuario>(payload); return(null); } else { TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add(payload); result.ReturnCode = 401; result.ReturnStatus = false; result.IsAuthenicated = false; return(result); } }
/// <summary> /// Elimina Logicamente el registro de un Chofer /// </summary> /// <param name="choferID"></param> /// <param name="usuario"></param> /// <returns></returns> public object EliminarChofer(int choferID, Sam3_Usuario usuario) { try { using (SamContext ctx = new SamContext()) { Sam3_Chofer chofer = ctx.Sam3_Chofer.Where(x => x.ChoferID == choferID).AsParallel().SingleOrDefault(); chofer.Activo = false; chofer.FechaModificacion = DateTime.Now; chofer.UsuarioModificacion = usuario.UsuarioID; ctx.SaveChanges(); TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add("OK"); result.ReturnCode = 200; result.ReturnStatus = true; result.IsAuthenicated = true; return(result); } } catch (Exception ex) { //-----------------Agregar mensaje al Log ----------------------------------------------- LoggerBd.Instance.EscribirLog(ex); //-----------------Agregar mensaje al Log ----------------------------------------------- TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add(ex.Message); result.ReturnCode = 500; result.ReturnStatus = false; result.IsAuthenicated = true; return(result); } }