Skip to content

Commit ac11d0b

Browse files
damienmoulardClement-Roque
authored andcommitted
add membersController for account management
1 parent f46c52f commit ac11d0b

File tree

3 files changed

+95
-0
lines changed

3 files changed

+95
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Data;
4+
using System.Data.Entity;
5+
using System.Data.Entity.Infrastructure;
6+
using System.Linq;
7+
using System.Net;
8+
using System.Net.Http;
9+
using System.Threading.Tasks;
10+
using System.Web.Http;
11+
using System.Web.Http.Description;
12+
using Zenergy.Models;
13+
14+
namespace Zenergy.Controllers.ApiControllers
15+
{
16+
public class membersController : ApiController
17+
{
18+
private ZenergyContext db = new ZenergyContext();
19+
20+
// GET: api/members/5
21+
[ResponseType(typeof(member))]
22+
public async Task<IHttpActionResult> Getmember(int id)
23+
{
24+
member member = await db.member.FindAsync(id);
25+
if (member == null)
26+
{
27+
return NotFound();
28+
}
29+
30+
return Ok(member);
31+
}
32+
33+
// POST: api/members
34+
[ResponseType(typeof(member))]
35+
public async Task<IHttpActionResult> Postmember(member member)
36+
{
37+
if (!ModelState.IsValid)
38+
{
39+
return BadRequest(ModelState);
40+
}
41+
42+
db.member.Add(member);
43+
44+
try
45+
{
46+
await db.SaveChangesAsync();
47+
}
48+
catch (DbUpdateException)
49+
{
50+
if (memberExists(member.userId))
51+
{
52+
return Conflict();
53+
}
54+
else
55+
{
56+
throw;
57+
}
58+
}
59+
60+
return CreatedAtRoute("DefaultApi", new { id = member.userId }, member);
61+
}
62+
63+
// DELETE: api/members/5
64+
[ResponseType(typeof(member))]
65+
public async Task<IHttpActionResult> Deletemember(int id)
66+
{
67+
member member = await db.member.FindAsync(id);
68+
if (member == null)
69+
{
70+
return NotFound();
71+
}
72+
73+
db.member.Remove(member);
74+
await db.SaveChangesAsync();
75+
76+
return Ok(member);
77+
}
78+
79+
protected override void Dispose(bool disposing)
80+
{
81+
if (disposing)
82+
{
83+
db.Dispose();
84+
}
85+
base.Dispose(disposing);
86+
}
87+
88+
private bool memberExists(int id)
89+
{
90+
return db.member.Count(e => e.userId == id) > 0;
91+
}
92+
}
93+
}

Diff for: Zenergy/Zenergy/Services/UserServices.cs

+1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ public async Task<user> findByMailAndPassword(string userMail, string userPass)
5050
}
5151
catch (InvalidOperationException e)
5252
{
53+
System.Diagnostics.Debug.WriteLine(e.StackTrace);
5354
return null;
5455
}
5556

Diff for: Zenergy/Zenergy/Zenergy.csproj

+1
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@
176176
</Reference>
177177
</ItemGroup>
178178
<ItemGroup>
179+
<Compile Include="Controllers\ApiControllers\membersController.cs" />
179180
<Compile Include="Controllers\ApiControllers\usersController.cs" />
180181
<Compile Include="Controllers\HomeController.cs" />
181182
<Compile Include="Models\accessory.cs">

0 commit comments

Comments
 (0)