Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
more API work, check the ref
  • Loading branch information
Jeremy Mill committed Dec 7, 2015
1 parent 83249db commit 6459541
Show file tree
Hide file tree
Showing 9 changed files with 234 additions and 3 deletions.
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TeamDBAwesome.SqlService;

namespace TeamDBAwesome.Controllers
{
public class AddTrackCustomPlaylistController : ApiController
{
public HttpResponseMessage Get(int PlaylistID, int TrackID)
{
HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

MySqlService sql = new MySqlService();

int status = sql.addToCustomPlaylist(TrackID, PlaylistID);

message.Content = new StringContent(status.ToString());

return message;
}
}
}
@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TeamDBAwesome.SqlService;
using TeamDBAwesome.Models;

namespace TeamDBAwesome.Controllers
{
public class AddTrackPlaylistController : ApiController
{
public HttpResponseMessage Get(int PlaylistID, int TrackID)
{
HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

MySqlService sql = new MySqlService();

int status = sql.addToPlaylist(TrackID, PlaylistID);

message.Content = new StringContent(status.ToString());

return message;
}

}
}
26 changes: 26 additions & 0 deletions TeamDBAwesome/TeamDBAwesome/Controllers/CreateOrderController.cs
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TeamDBAwesome.SqlService;

namespace TeamDBAwesome.Controllers
{
public class CreateOrderController : ApiController
{
public HttpResponseMessage Get(int CustomerID)
{
HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

MySqlService sql = new MySqlService();

int newOrder = sql.createOrder(CustomerID);

message.Content = new StringContent(newOrder.ToString());

return message;
}
}
}
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TeamDBAwesome.SqlService;

namespace TeamDBAwesome.Controllers
{
public class RemoveCustomTrackController : ApiController
{
public HttpResponseMessage Get(int PlaylistID, int TrackID)
{
HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

MySqlService sql = new MySqlService();

int status = sql.removeFromCustomPlaylist(TrackID, PlaylistID);

message.Content = new StringContent(status.ToString());

return message;
}
}
}
26 changes: 26 additions & 0 deletions TeamDBAwesome/TeamDBAwesome/Controllers/RemoveTrackController.cs
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TeamDBAwesome.SqlService;

namespace TeamDBAwesome.Controllers
{
public class RemoveTrackController : ApiController
{
public HttpResponseMessage Get(int PlaylistID, int TrackID)
{
HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

MySqlService sql = new MySqlService();

int status = sql.removeFromPlaylist(TrackID, PlaylistID);

message.Content = new StringContent(status.ToString());

return message;
}
}
}
100 changes: 97 additions & 3 deletions TeamDBAwesome/TeamDBAwesome/SqlService/MySqlService.cs
Expand Up @@ -142,6 +142,96 @@ namespace TeamDBAwesome.SqlService

}

public int addToPlaylist(int trackid, int playlistid)
{
bool connect = this.OpenConnection();
if(connect == true)
{
string insert = "INSERT INTO PlaylistTrack (PlaylistId,TrackId) VALUES (" + playlistid + "," + trackid + ")";
MySqlCommand command = new MySqlCommand(insert, SqlConn);
command.ExecuteNonQuery();
return 0;
}
else
{
return 1;
}

}

public int addToCustomPlaylist(int trackid, int playlistid)
{
bool connect = this.OpenConnection();
if (connect == true)
{
string insert = "INSERT INTO MyPlaylistTrack (PlaylistId,TrackId) VALUES (" + playlistid + "," + trackid + ")";
MySqlCommand command = new MySqlCommand(insert, SqlConn);
command.ExecuteNonQuery();
return 0;
}
else
{
return 1;
}

}

public int removeFromCustomPlaylist(int trackid, int playlistid)
{
bool connect = this.OpenConnection();
if (connect == true)
{
string insert = "DELETE FROM MyPlaylistTrack WHERE PlaylistId = " + playlistid + " AND TrackId = " + trackid;
MySqlCommand command = new MySqlCommand(insert, SqlConn);
command.ExecuteNonQuery();
return 0;
}
else
{
return 1;
}

}

public int removeFromPlaylist(int trackid, int playlistid)
{
bool connect = this.OpenConnection();
if (connect == true)
{
string insert = "DELETE FROM PlaylistTrack WHERE PlaylistId = " + playlistid + " AND TrackId = " + trackid;
MySqlCommand command = new MySqlCommand(insert, SqlConn);
command.ExecuteNonQuery();
return 0;
}
else
{
return 1;
}

}

public int createOrder(int custId)
{
bool open = this.OpenConnection();
if(open == true)
{
string insert = "INSERT INTO Orders (CustomerId) VALUES (" + custId + ")";
MySqlCommand command = new MySqlCommand(insert, SqlConn);
command.ExecuteNonQuery();

string pk_query = "SELECT LAST_INSERT_ID()";
command = new MySqlCommand(pk_query, SqlConn);
int newOrderID = int.Parse(command.ExecuteScalar() + "");


return newOrderID;
}
else
{
return 0;
}
}

/// <summary>
/// adds a payment type to the database
/// </summary>
Expand Down Expand Up @@ -459,7 +549,7 @@ namespace TeamDBAwesome.SqlService
return searchresult;
}
}

public int NewCustomPlaylist(CustomPlaylistId playlist)
{
bool open = this.OpenConnection();
Expand Down Expand Up @@ -637,14 +727,15 @@ namespace TeamDBAwesome.SqlService
if(open == true)
{
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, " +
"track.Milliseconds,track.Bytes, track.UnitPrice, Album.Title as albumtitle,MediaType.Name as mediatype, artist.name as artist, " +
"Genre.Name as genre " +
"from track " +
"left join playlisttrack on track.TrackId = playlisttrack.trackid " +
"left join playlist on playlist.PlaylistId = playlisttrack.PlaylistId " +
"left join Album on track.AlbumId = Album.AlbumId " +
"left join mediatype on track.MediaTypeId=mediatype.MediaTypeId " +
"left join genre on track.GenreId = genre.GenreId " +
"left join artist on album.artistid = artist.artistid " +
"where playlist.PlaylistId = " + PlaylistID;

MySqlCommand cmd = new MySqlCommand(query, SqlConn);
Expand All @@ -666,6 +757,7 @@ namespace TeamDBAwesome.SqlService
track.AlbumTitle = GetDBString("albumtitle", reader);
track.MediaType = GetDBString("mediatype", reader);
track.Genre = GetDBString("genre", reader);
track.artist = GetDBString("artist", reader);

tracklist.Add(track);
}
Expand All @@ -688,14 +780,15 @@ namespace TeamDBAwesome.SqlService
if (open == true)
{
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, " +
"track.Milliseconds,track.Bytes, track.UnitPrice, Album.Title as albumtitle,MediaType.Name as mediatype, artist.name as artist, " +
"Genre.Name as genre " +
"from track " +
"left join MyPlaylistTrack on track.TrackId = MyPlaylistTrack.trackid " +
"left join MyPlayList on MyPlayList.PlaylistId = MyPlaylistTrack.PlaylistId " +
"left join Album on track.AlbumId = Album.AlbumId " +
"left join mediatype on track.MediaTypeId=mediatype.MediaTypeId " +
"left join genre on track.GenreId = genre.GenreId " +
"left join artist on album.artistid = artist.artistid " +
"where playlist.PlaylistId = " + PlaylistID;

MySqlCommand cmd = new MySqlCommand(query, SqlConn);
Expand All @@ -717,6 +810,7 @@ namespace TeamDBAwesome.SqlService
track.AlbumTitle = GetDBString("albumtitle", reader);
track.MediaType = GetDBString("mediatype", reader);
track.Genre = GetDBString("genre", reader);
track.artist = GetDBString("artist", reader);

tracklist.Add(track);
}
Expand Down
5 changes: 5 additions & 0 deletions TeamDBAwesome/TeamDBAwesome/TeamDBAwesome.csproj
Expand Up @@ -166,6 +166,9 @@
<Compile Include="Controllers\AddCustomPlaylistController.cs" />
<Compile Include="Controllers\AddPaymentController.cs" />
<Compile Include="Controllers\AddPlaylistController.cs" />
<Compile Include="Controllers\AddTrackCustomPlaylistController.cs" />
<Compile Include="Controllers\AddTrackPlaylistController.cs" />
<Compile Include="Controllers\CreateOrderController.cs" />
<Compile Include="Controllers\DropCustomPlaylistController.cs" />
<Compile Include="Controllers\DropPlaylistController.cs" />
<Compile Include="Controllers\GetCustomerController.cs" />
Expand All @@ -177,6 +180,8 @@
<Compile Include="Controllers\GetTrackController.cs" />
<Compile Include="Controllers\HomeController.cs" />
<Compile Include="Controllers\NewCustomerController.cs" />
<Compile Include="Controllers\RemoveCustomTrackController.cs" />
<Compile Include="Controllers\RemoveTrackController.cs" />
<Compile Include="Controllers\SearchController.cs" />
<Compile Include="Controllers\TestController.cs" />
<Compile Include="Controllers\UpdateCustomerController.cs" />
Expand Down
Binary file modified chinookmodel.mwb
Binary file not shown.
Binary file modified chinookmodel.mwb.bak
Binary file not shown.

0 comments on commit 6459541

Please sign in to comment.