public void SubirCoordenadasEmpleados(int ID, decimal Latitud, decimal Longitud, decimal?Velocidad, decimal Precision, decimal Bearing, string tiempo) { using (zeusEntities context = new zeusEntities()) { tbl_coordenadas coordenadasSubir = new tbl_coordenadas(); Pubnub DataStream = new Pubnub("pub-c-873c406e-047c-4a4a-a0d9-6d8176a935e8", "sub-c-f076a8c8-2b78-11e6-b700-0619f8945a4f"); coordenadasSubir.usr_id = ID; coordenadasSubir.usr_latitud = Latitud; coordenadasSubir.usr_longitud = Longitud; coordenadasSubir.usr_velocidad = Velocidad; coordenadasSubir.usr_precision = Precision; coordenadasSubir.usr_bearing = Bearing; coordenadasSubir.usr_fecha_coordenada = HelperMethods.ConvertToUnixTimestamp(Convert.ToDateTime(tiempo)); coordenadasSubir.usr_direccion = HelperMethods.GoogleGeoCode(Latitud, Longitud); context.tbl_coordenadas.Add(coordenadasSubir); context.SaveChanges(); UbicacionDTO coordenadasPublicar = new UbicacionDTO(coordenadasSubir); DataStream.Publish <string>( ID.ToString(), coordenadasPublicar, delegate { }, delegate { }); } }
public UbicacionDTO(tbl_coordenadas coordenada) { ID_Usuario_Ubicacion = coordenada.usr_id; ID_Coordenada = coordenada.ID_Coordenada_; Latitud = coordenada.usr_latitud; Longitud = coordenada.usr_longitud; Velocidad = coordenada.usr_velocidad; Precision = coordenada.usr_precision; Bearing = coordenada.usr_bearing; Tiempo = HelperMethods.ConvertFromUnixTimestamp(coordenada.usr_fecha_coordenada, true); Direccion = coordenada.usr_direccion; using (zeusEntities context = new zeusEntities()) { Nombre_Usuario = (from usuario in context.tbl_informacion_usuarios join usuarioCoordenada in context.tbl_coordenadas on usuario.usr_login_ID equals usuarioCoordenada.usr_id where usuario.usr_login_ID == coordenada.usr_id select usuario.usr_nombres + " " + usuario.usr_apellidos).FirstOrDefault(); } }