aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
m---------ApartmentAdmin0
-rw-r--r--ApartmentManager/ApartmentManager/ApartmentManager.csproj5
-rw-r--r--ApartmentManager/ApartmentManager/Handler/ResidentsHandler.cs44
-rw-r--r--ApartmentManager/ApartmentManager/Model/CatalogSingleton.cs5
-rw-r--r--ApartmentManager/ApartmentManager/Model/Resident.cs8
-rw-r--r--ApartmentManager/ApartmentManager/Persistency/PersistenceFacade.cs86
-rw-r--r--ApartmentManager/ApartmentManager/Persistency/Persistency.cs12
-rw-r--r--ApartmentManager/ApartmentManager/View/ResidentsPage.xaml2
-rw-r--r--ApartmentManager/ApartmentManager/ViewModel/ApartmenViewModel.cs1
-rw-r--r--ApartmentManager/HousingWebAPI/Controllers/ResidentsController.cs29
-rw-r--r--ApartmentManager/HousingWebAPI/HousingWebAPI.csproj1
-rw-r--r--ApartmentManager/HousingWebAPI/ResidentList.cs20
-rw-r--r--ApartmentManager/HousingWebApi/Models/Resident.cs10
-rw-r--r--HousingDatabase.ldfbin8388608 -> 0 bytes
-rw-r--r--HousingDatabase.mdfbin8388608 -> 0 bytes
15 files changed, 172 insertions, 51 deletions
diff --git a/ApartmentAdmin b/ApartmentAdmin
new file mode 160000
+Subproject da22548164ed3a3a9b89f25b31780c35a89a3b3
diff --git a/ApartmentManager/ApartmentManager/ApartmentManager.csproj b/ApartmentManager/ApartmentManager/ApartmentManager.csproj
index 24202c3..722865c 100644
--- a/ApartmentManager/ApartmentManager/ApartmentManager.csproj
+++ b/ApartmentManager/ApartmentManager/ApartmentManager.csproj
@@ -106,7 +106,7 @@
<Compile Include="Model\CatalogSingleton.cs" />
<Compile Include="Model\Resident.cs" />
<Compile Include="Model\User.cs" />
- <Compile Include="Persistency\Persistency.cs" />
+ <Compile Include="Persistency\PersistenceFacade.cs" />
<Compile Include="Properties\Annotations.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ViewModel\ApartmenViewModel.cs" />
@@ -177,6 +177,9 @@
</Page>
</ItemGroup>
<ItemGroup>
+ <PackageReference Include="Microsoft.AspNet.WebApi.Client">
+ <Version>5.2.3</Version>
+ </PackageReference>
<PackageReference Include="Microsoft.NETCore.UniversalWindowsPlatform">
<Version>5.3.1</Version>
</PackageReference>
diff --git a/ApartmentManager/ApartmentManager/Handler/ResidentsHandler.cs b/ApartmentManager/ApartmentManager/Handler/ResidentsHandler.cs
index 6b6395e..c04007f 100644
--- a/ApartmentManager/ApartmentManager/Handler/ResidentsHandler.cs
+++ b/ApartmentManager/ApartmentManager/Handler/ResidentsHandler.cs
@@ -5,6 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Windows.UI.Popups;
using ApartmentManager.Model;
+using ApartmentManager.Persistency;
using ApartmentManager.ViewModel;
namespace ApartmentManager.Handler
@@ -17,31 +18,45 @@ namespace ApartmentManager.Handler
{
ApartmentViewModel = apartmenViewModel;
}
+ public void GetApartmentResidents()
+ {
+ Resident resident = new Resident();
+ resident.ApartmentNr = ApartmentViewModel.ApartmentNumber;
+
+ var residentlist = new PersistenceFacade().GetApartmentResidents(resident);
+ ApartmentViewModel.CatalogSingleton.Residents.Clear();
+
+ foreach (var resident2 in residentlist)
+ {
+ ApartmentViewModel.CatalogSingleton.Residents.Add(resident2);
+ }
+ }
public void CreateResident()
{
try
{
Resident resident = new Resident();
+ resident.ResidentNr = ApartmentViewModel.CatalogSingleton.Residents.Count;
+ resident.ResidentNr++;
resident.ApartmentNr = ApartmentViewModel.ApartmentNumber;
- resident.Name = ApartmentViewModel.NewResident.Name;
+ resident.FirstName = ApartmentViewModel.NewResident.FirstName;
resident.LastName = ApartmentViewModel.NewResident.LastName;
resident.BirthDate = ApartmentViewModel.NewResident.BirthDate;
resident.Email = ApartmentViewModel.NewResident.Email;
resident.Picture = ApartmentViewModel.NewResident.Picture;
resident.Phone = ApartmentViewModel.NewResident.Phone;
- //new PersistenceFacade().CreateHotel(hotel);
-
- ////HotelViewModel.Hotels.Hotels.Add(hotel);
- //var hotelsFromDatabase = new PersistenceFacade().GetHotels();
+ new PersistenceFacade().CreateResident(resident);
- //HotelViewModel.HotelCatalogSingleton.Hotels.Clear();
- //foreach (var hotel1 in hotelsFromDatabase)
- //{
- // ApartmentViewModel.HotelCatalogSingleton.Hotels.Add(hotel1);
+
+ var residentsFromDatabase = new PersistenceFacade().GetApartmentResidents(resident);
+ ApartmentViewModel.CatalogSingleton.Residents.Clear();
- //}
+ foreach (var resident2 in residentsFromDatabase)
+ {
+ ApartmentViewModel.CatalogSingleton.Residents.Add(resident2);
+ }
}
catch (Exception e)
{
@@ -55,7 +70,7 @@ namespace ApartmentManager.Handler
{
Resident resident = new Resident();
resident.ApartmentNr = ApartmentViewModel.ApartmentNumber;
- resident.Name = ApartmentViewModel.NewResident.Name;
+ resident.FirstName = ApartmentViewModel.NewResident.FirstName;
resident.LastName = ApartmentViewModel.NewResident.LastName;
resident.BirthDate = ApartmentViewModel.NewResident.BirthDate;
resident.Email = ApartmentViewModel.NewResident.Email;
@@ -85,7 +100,7 @@ namespace ApartmentManager.Handler
{
Resident resident = new Resident();
resident.ApartmentNr = ApartmentViewModel.ApartmentNumber;
- resident.Name = ApartmentViewModel.NewResident.Name;
+ resident.FirstName = ApartmentViewModel.NewResident.FirstName;
resident.LastName = ApartmentViewModel.NewResident.LastName;
resident.BirthDate = ApartmentViewModel.NewResident.BirthDate;
resident.Email = ApartmentViewModel.NewResident.Email;
@@ -108,9 +123,6 @@ namespace ApartmentManager.Handler
{
new MessageDialog(e.Message).ShowAsync();
}
- }
-
-
-
+ }
}
}
diff --git a/ApartmentManager/ApartmentManager/Model/CatalogSingleton.cs b/ApartmentManager/ApartmentManager/Model/CatalogSingleton.cs
index 26f7c2e..346d652 100644
--- a/ApartmentManager/ApartmentManager/Model/CatalogSingleton.cs
+++ b/ApartmentManager/ApartmentManager/Model/CatalogSingleton.cs
@@ -23,10 +23,7 @@ namespace ApartmentManager.Model
Apartment = new ObservableCollection<Apartment>();
Apartment.Add(new Apartment(1,"30 Square meters",2,"200",0,"adresas"));
Residents = new ObservableCollection<Resident>();
- Residents.Add(new Resident("Bibis", "Kiausiai", 3214568, new DateTime(2017, 1, 5, 0, 0, 0), "Bibis@mail.com", 1));
- Residents.Add(new Resident("Bibis", "Kiausiai", 3214568, new DateTime(2017, 1, 5, 0, 0, 0), "Bibis@mail.com", 1));
- Residents.Add(new Resident("Bibis", "Kiausiai", 3214568, new DateTime(2017, 1, 5, 0, 0, 0), "Bibis@mail.com", 1));
- Residents.Add(new Resident("Bibis", "Kiausiai", 3214568, new DateTime(2017, 1, 5, 0, 0, 0), "Bibis@mail.com", 1));
+
}
}
}
diff --git a/ApartmentManager/ApartmentManager/Model/Resident.cs b/ApartmentManager/ApartmentManager/Model/Resident.cs
index 5e859e6..f9cede7 100644
--- a/ApartmentManager/ApartmentManager/Model/Resident.cs
+++ b/ApartmentManager/ApartmentManager/Model/Resident.cs
@@ -9,7 +9,7 @@ namespace ApartmentManager.Model
{
public class Resident
{
- public string Name { get; set; }
+ public string FirstName { get; set; }
public string LastName { get; set; }
public int Phone { get; set; }
public DateTime BirthDate { get; set; }
@@ -19,9 +19,9 @@ namespace ApartmentManager.Model
public int ResidentNr { get; set; }
public Resident() { }
- public Resident(string Name, string LastName, int Phone, DateTime BirthDate, string Email, int ApartmentNr, int ResidentNr)
+ public Resident(string FirstName, string LastName, int Phone, DateTime BirthDate, string Email, int ApartmentNr, int ResidentNr)
{
- this.Name = Name;
+ this.FirstName = FirstName;
this.LastName = LastName;
this.Phone = Phone;
this.BirthDate = BirthDate;
@@ -31,7 +31,7 @@ namespace ApartmentManager.Model
}
public override string ToString()
{
- return string.Format($"Name: {Name}, LastName: {LastName}, Birth Date: {BirthDate}, Phone {Phone}, Email {Email} ");
+ return string.Format($"Name: {FirstName}, LastName: {LastName}, Birth Date: {BirthDate}, Phone {Phone}, Email {Email} ");
}
}
}
diff --git a/ApartmentManager/ApartmentManager/Persistency/PersistenceFacade.cs b/ApartmentManager/ApartmentManager/Persistency/PersistenceFacade.cs
new file mode 100644
index 0000000..882fd3a
--- /dev/null
+++ b/ApartmentManager/ApartmentManager/Persistency/PersistenceFacade.cs
@@ -0,0 +1,86 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net.Http;
+using System.Net.Http.Headers;
+using System.Text;
+using System.Threading.Tasks;
+using Windows.UI.Popups;
+using ApartmentManager.Model;
+using Newtonsoft.Json;
+
+namespace ApartmentManager.Persistency
+{
+ class PersistenceFacade
+ {
+
+ const string ServerUrl = "http://localhost:60916";
+ HttpClientHandler handler;
+
+ public PersistenceFacade()
+ {
+ handler = new HttpClientHandler();
+ handler.UseDefaultCredentials = true;
+ }
+
+ ///Get Get Residents///
+ public List<Resident> GetApartmentResidents(Resident resident)
+ {
+ using (var client = new HttpClient(handler))
+ {
+ client.BaseAddress = new Uri(ServerUrl);
+ client.DefaultRequestHeaders.Clear();
+ client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
+ try
+ {
+ string residentsBody = "api/residents/" + resident.ApartmentNr;
+ var response = client.GetAsync(residentsBody).Result;
+
+ if (response.IsSuccessStatusCode)
+ {
+ var residentList = response.Content.ReadAsAsync<IEnumerable<Resident>>().Result;
+ return residentList.ToList();
+ }
+
+ }
+ catch (Exception ex)
+ {
+ new MessageDialog(ex.Message).ShowAsync();
+ }
+ return null;
+ }
+ }
+ ///Get Get Residents///
+ public void CreateResident(Resident resident)
+ {
+ using (var client = new HttpClient(handler))
+ {
+ client.BaseAddress = new Uri(ServerUrl);
+ client.DefaultRequestHeaders.Clear();
+ client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
+ try
+ {
+ string postBody = JsonConvert.SerializeObject(resident);
+ var response = client.PostAsync("api/Residents",
+ new StringContent(postBody, Encoding.UTF8, "application/json"))
+ .Result;
+ if (response.IsSuccessStatusCode)
+ {
+ new MessageDialog("Success").ShowAsync();
+ }
+ else
+ {
+ new MessageDialog("Error").ShowAsync();
+ }
+
+ }
+ catch (Exception ex)
+ {
+ new MessageDialog(ex.Message).ShowAsync();
+ }
+ }
+
+ }
+
+ }
+}
diff --git a/ApartmentManager/ApartmentManager/Persistency/Persistency.cs b/ApartmentManager/ApartmentManager/Persistency/Persistency.cs
deleted file mode 100644
index ec46116..0000000
--- a/ApartmentManager/ApartmentManager/Persistency/Persistency.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace ApartmentManager.Persistency
-{
- class Persistency
- {
- }
-}
diff --git a/ApartmentManager/ApartmentManager/View/ResidentsPage.xaml b/ApartmentManager/ApartmentManager/View/ResidentsPage.xaml
index 020d4cc..8c8d053 100644
--- a/ApartmentManager/ApartmentManager/View/ResidentsPage.xaml
+++ b/ApartmentManager/ApartmentManager/View/ResidentsPage.xaml
@@ -18,7 +18,7 @@
<StackPanel Width="400" Margin="0,0,50,0">
<TextBlock Margin="0,10,0,10" Text="Resident Info" HorizontalAlignment="Center" FontSize="20" FontWeight="Bold"/>
<TextBlock Margin="0,10,0,10" Text="Name"/>
- <TextBox Text="{Binding NewResident.Name, Mode=TwoWay}" />
+ <TextBox Text="{Binding NewResident.FirstName, Mode=TwoWay}" />
<TextBlock Margin="0,10,0,10" Text="Last Name"/>
<TextBox Text="{Binding NewResident.LastName, Mode=TwoWay}" />
<TextBlock Margin="0,10,0,10" Text="Birthdate"/>
diff --git a/ApartmentManager/ApartmentManager/ViewModel/ApartmenViewModel.cs b/ApartmentManager/ApartmentManager/ViewModel/ApartmenViewModel.cs
index 57aa003..3d76120 100644
--- a/ApartmentManager/ApartmentManager/ViewModel/ApartmenViewModel.cs
+++ b/ApartmentManager/ApartmentManager/ViewModel/ApartmenViewModel.cs
@@ -36,6 +36,7 @@ namespace ApartmentManager.ViewModel
CreateResidentCommand = new RelayCommand(ResidentsHandler.CreateResident);
DeleteResidentCommand = new RelayCommand(ResidentsHandler.DeleteResident);
UpdateResidentCommand = new RelayCommand(ResidentsHandler.UpdateResident);
+ ResidentsHandler.GetApartmentResidents();
}
public User NewUser
diff --git a/ApartmentManager/HousingWebAPI/Controllers/ResidentsController.cs b/ApartmentManager/HousingWebAPI/Controllers/ResidentsController.cs
index b744392..e461b1a 100644
--- a/ApartmentManager/HousingWebAPI/Controllers/ResidentsController.cs
+++ b/ApartmentManager/HousingWebAPI/Controllers/ResidentsController.cs
@@ -22,17 +22,26 @@ namespace HousingWebApi.Controllers
return db.Residents;
}
- // GET: api/Residents/5
- [ResponseType(typeof(Resident))]
- public IHttpActionResult GetResident(int id)
+ // GET: api/Residents/1
+
+ [Route("api/Residents/{id}")]
+ [ResponseType(typeof(ResidentList))]
+ public IQueryable<ResidentList> GetResidents(int id)
{
- Resident resident = db.Residents.Find(id);
- if (resident == null)
- {
- return NotFound();
- }
-
- return Ok(resident);
+ var roomlist = from resident in db.Residents
+ where (resident.ApartmentNr == id)
+ select new ResidentList
+ {
+ ResidentNr = resident.ResidentNr,
+ ApartmentNr = resident.ApartmentNr,
+ FirstName = resident.FirstName,
+ LastName = resident.LastName,
+ BirthDate = resident.BirthDate,
+ Phone = resident.Phone,
+ Email = resident.Email,
+ Picture = resident.Picture
+ };
+ return roomlist;
}
// PUT: api/Residents/5
diff --git a/ApartmentManager/HousingWebAPI/HousingWebAPI.csproj b/ApartmentManager/HousingWebAPI/HousingWebAPI.csproj
index 42d22f9..da2d507 100644
--- a/ApartmentManager/HousingWebAPI/HousingWebAPI.csproj
+++ b/ApartmentManager/HousingWebAPI/HousingWebAPI.csproj
@@ -199,6 +199,7 @@
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Models\Resident.cs" />
<Compile Include="Models\User.cs" />
+ <Compile Include="ResidentList.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="Areas\HelpPage\HelpPage.css" />
diff --git a/ApartmentManager/HousingWebAPI/ResidentList.cs b/ApartmentManager/HousingWebAPI/ResidentList.cs
new file mode 100644
index 0000000..1fd4b30
--- /dev/null
+++ b/ApartmentManager/HousingWebAPI/ResidentList.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace HousingWebApi
+{
+ public class ResidentList
+ {
+ public int ResidentNr { get; set; }
+ public int ApartmentNr { get; set; }
+ public string FirstName { get; set; }
+ public string LastName { get; set; }
+ public DateTime? BirthDate { get; set; }
+ public int? Phone { get; set; }
+ public string Email { get; set; }
+ public byte[] Picture { get; set; }
+
+ }
+} \ No newline at end of file
diff --git a/ApartmentManager/HousingWebApi/Models/Resident.cs b/ApartmentManager/HousingWebApi/Models/Resident.cs
index 367631c..00fc439 100644
--- a/ApartmentManager/HousingWebApi/Models/Resident.cs
+++ b/ApartmentManager/HousingWebApi/Models/Resident.cs
@@ -9,17 +9,21 @@ namespace HousingWebApi
public partial class Resident
{
[Key]
+ [Column(Order = 0)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ResidentNr { get; set; }
+ [Key]
+ [Column(Order = 1)]
+ [DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ApartmentNr { get; set; }
[Required]
- [StringLength(15)]
+ [StringLength(20)]
public string FirstName { get; set; }
[Required]
- [StringLength(15)]
+ [StringLength(20)]
public string LastName { get; set; }
[Column(TypeName = "date")]
@@ -27,7 +31,7 @@ namespace HousingWebApi
public int? Phone { get; set; }
- [StringLength(26)]
+ [StringLength(30)]
public string Email { get; set; }
[Column(TypeName = "image")]
diff --git a/HousingDatabase.ldf b/HousingDatabase.ldf
deleted file mode 100644
index 80e00d5..0000000
--- a/HousingDatabase.ldf
+++ /dev/null
Binary files differ
diff --git a/HousingDatabase.mdf b/HousingDatabase.mdf
deleted file mode 100644
index 9fb615b..0000000
--- a/HousingDatabase.mdf
+++ /dev/null
Binary files differ