Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
get track is working, and search is reworked
  • Loading branch information
Jeremy Mill committed Nov 20, 2015
1 parent 04d07b0 commit a56016d
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 21 deletions.
6 changes: 6 additions & 0 deletions TeamDBAwesome/TeamDBAwesome/Controllers/GetTrackController.cs
Expand Up @@ -4,7 +4,9 @@ using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TeamDBAwesome.Models;
using TeamDBAwesome.SqlService;
using Newtonsoft.Json;

namespace TeamDBAwesome.Controllers
{
Expand All @@ -17,7 +19,11 @@ namespace TeamDBAwesome.Controllers

MySqlService sql = new MySqlService();

Track track = sql.GetTrack(TrackID);

string serialized = JsonConvert.SerializeObject(track);

message.Content = new StringContent(serialized);

return message;
}
Expand Down
8 changes: 4 additions & 4 deletions TeamDBAwesome/TeamDBAwesome/Models/Track.cs
Expand Up @@ -8,10 +8,10 @@ namespace TeamDBAwesome.Models
public class Track
{
public int TrackId { get; set; }
public string Name { get; set; }
public int AlbumId { get; set; }
public int MediaTypeId { get; set; }
public int GenreId { get; set; }
public string TrackName { get; set; }
public string AlbumTitle { get; set; }
public string MediaType { get; set; }
public string Genre { get; set; }
public string Composer { get; set; }
public int Milliseconds { get; set; }
public int Bytes { get; set; }
Expand Down
67 changes: 50 additions & 17 deletions TeamDBAwesome/TeamDBAwesome/SqlService/MySqlService.cs
Expand Up @@ -225,8 +225,20 @@ namespace TeamDBAwesome.SqlService
queries.Add("Media", "select * from chinook.mediatype where name like \'%" + search.Media + "%\' ");
queries.Add("Album", "select * from chinook.album where Title like \'%" + search.Album + "%\' ");
queries.Add("Artist", "select * from chinook.artist where name like \'%" + search.Artist + "%\' ");
queries.Add("Track", "select * from chinook.track where name like \'%" + search.Track + "%\' ");
queries.Add("Composer", "select * from chinook.track where composer like \'%" + search.Composer + "%\' ");

string trackQuery = "select track.TrackId as trackid,track.Name as trackname,track.Composer as trackcomposer,track.Milliseconds,track.Bytes,track.UnitPrice,"
+ "Album.Title as albumtitle,MediaType.Name as mediatype,Genre.Name as genre "
+ "from track left join Album on track.AlbumId = Album.AlbumId left join mediatype on track.MediaTypeId=mediatype.MediaTypeId left join genre on track.GenreId = genre.GenreId "
+ "where track.Name like \'%" + search.Track + "%\'";

queries.Add("Track", trackQuery);

string composerQuery = "select track.TrackId as trackid,track.Name as trackname,track.Composer as trackcomposer,track.Milliseconds,track.Bytes,track.UnitPrice,"
+ "Album.Title as albumtitle,MediaType.Name as mediatype,Genre.Name as genre "
+ "from track left join Album on track.AlbumId = Album.AlbumId left join mediatype on track.MediaTypeId=mediatype.MediaTypeId left join genre on track.GenreId = genre.GenreId "
+ "where track.Composer like \'%" + search.Composer + "%\'";

queries.Add("Composer", composerQuery);
queries.Add("Genre", "select * from chinook.genre where name like \'%" + search.Genre + "%\' ");

//declare theresult and init it
Expand Down Expand Up @@ -275,30 +287,30 @@ namespace TeamDBAwesome.SqlService
{
searchresult.Track.Add(new Track
{
AlbumId = int.Parse(GetDBString("AlbumID", reader)),
TrackId = int.Parse(GetDBString("TrackId", reader)),
Name = GetDBString("Name", reader),
MediaTypeId = int.Parse(GetDBString("MediaTypeId", reader)),
GenreId = int.Parse(GetDBString("GenreId", reader)),
Composer = GetDBString("Composer", reader),
TrackName = GetDBString("trackname", reader),
Composer = GetDBString("trackcomposer", reader),
Milliseconds = int.Parse(GetDBString("Milliseconds", reader)),
Bytes = int.Parse(GetDBString("Bytes", reader)),
UnitPrice = float.Parse(GetDBString("UnitPrice", reader))
});
UnitPrice = float.Parse(GetDBString("UnitPrice", reader)),
AlbumTitle = GetDBString("albumtitle", reader),
MediaType = GetDBString("mediatype", reader),
Genre = GetDBString("genre", reader)
});
}
else if (key.Key == "Composer")
{
searchresult.Composer.Add(new Track
{
AlbumId = int.Parse(GetDBString("AlbumID", reader)),
TrackId = int.Parse(GetDBString("TrackId", reader)),
Name = GetDBString("Name", reader),
MediaTypeId = int.Parse(GetDBString("MediaTypeId", reader)),
GenreId = int.Parse(GetDBString("GenreId", reader)),
Composer = GetDBString("Composer", reader),
TrackName = GetDBString("trackname", reader),
Composer = GetDBString("trackcomposer", reader),
Milliseconds = int.Parse(GetDBString("Milliseconds", reader)),
Bytes = int.Parse(GetDBString("Bytes", reader)),
UnitPrice = float.Parse(GetDBString("UnitPrice", reader))
UnitPrice = float.Parse(GetDBString("UnitPrice", reader)),
AlbumTitle = GetDBString("albumtitle", reader),
MediaType = GetDBString("mediatype", reader),
Genre = GetDBString("genre", reader)
});
}
else if(key.Key == "Genre")
Expand Down Expand Up @@ -333,11 +345,32 @@ namespace TeamDBAwesome.SqlService

if(open == true)
{
string query = "SELECT * from ";
string query = "select track.TrackId as trackid,track.Name as trackname,track.Composer as trackcomposer,track.Milliseconds,track.Bytes,track.UnitPrice,"
+ "Album.Title as albumtitle,MediaType.Name as mediatype,Genre.Name as genre "
+ "from track left join Album on track.AlbumId = Album.AlbumId left join mediatype on track.MediaTypeId=mediatype.MediaTypeId left join genre on track.GenreId = genre.GenreId "
+ "where track.TrackId = \'" + trackId.ToString() + "\'";

MySqlCommand cmd = new MySqlCommand(query, SqlConn);

MySqlDataReader reader = cmd.ExecuteReader();

while (reader.Read())
{
track.TrackId = int.Parse(GetDBString("TrackId", reader));
track.TrackName = GetDBString("trackname", reader);
track.Composer = GetDBString("trackcomposer", reader);
track.Milliseconds = int.Parse(GetDBString("Milliseconds", reader));
track.Bytes = int.Parse(GetDBString("Bytes", reader));
track.UnitPrice = float.Parse(GetDBString("UnitPrice", reader));
track.AlbumTitle = GetDBString("albumtitle", reader);
track.MediaType = GetDBString("mediatype", reader);
track.Genre = GetDBString("genre", reader);

}
}
else
{

//do a thing
}


Expand Down

0 comments on commit a56016d

Please sign in to comment.