public async Task <HistorialEntregas> GetSpecific(Int64?id) { try { String query = String.Format(@"SELECT HE.IDHistorialEntrega, HE.IDOrdenEntrega, USR.FullName 'Usuario', HE.Latitud, HE.Longitud, HE.FechaEntrega FROM HistorialEntregas HE INNER JOIN AspNetUsers USR ON HE.IDUsuario = USR.Id WHERE IDHistorialEntrega = {0}", id); DataBaseSettings db = new DataBaseSettings(); DataTable aux = await db.GetDataTable(query); List <HistorialEntregas> data = aux.AsEnumerable().Select(m => new HistorialEntregas() { idHistorialEntrega = m.Field <Int64>("IDHistorialEntrega"), idOrdenEntrega = m.Field <Int64>("IDOrdenEntrega"), idUsuario = m.Field <String>("Usuario"), latitud = m.Field <String>("Latitud"), longitud = m.Field <String>("Longitud"), fechaEntrega = m.Field <DateTime>("FechaEntrega") }).ToList(); HistorialEntregas result = data.First(); result.fotos = (await this.GetSpecificFotos(id)).images; result.firmas = (await this.GetSpecificFirmas(id)).images; return(result); } catch (Exception ex) { throw ex; } }
public async Task <Int64?> Insert(HistorialEntregas data) { try { String query = String.Format(@"INSERT INTO HistorialEntregas (IDOrdenEntrega, IDUsuario, Latitud, Longitud) OUTPUT Inserted.IDHistorialEntrega VALUES ({0}, '{1}', '{2}', '{3}')", data.idOrdenEntrega, data.idUsuario, data.latitud, data.longitud); DataBaseSettings db = new DataBaseSettings(); DataTable aux = await db.GetDataTable(query); if (aux.Rows.Count > 0) { return(Convert.ToInt64(aux.Rows[0]["IDHistorialEntrega"].ToString())); } throw new Exception("Ha ocurrido un error al guardar la entrega"); } catch (Exception ex) { throw ex; } }