fix
This commit is contained in:
commit
35c6c08bc4
@ -22,7 +22,7 @@ namespace FoodOrdersDatabaseImplement.Models
|
|||||||
public virtual Client? Client { get; set; }
|
public virtual Client? Client { get; set; }
|
||||||
public bool HasRead { get; private set; }
|
public bool HasRead { get; private set; }
|
||||||
public string? Reply { get; private set; }
|
public string? Reply { get; private set; }
|
||||||
public static MessageInfo? Create(MessageInfoBindingModel model)
|
public static MessageInfo? Create(MessageInfoBindingModel model)
|
||||||
{
|
{
|
||||||
if (model == null)
|
if (model == null)
|
||||||
{
|
{
|
||||||
@ -35,10 +35,13 @@ namespace FoodOrdersDatabaseImplement.Models
|
|||||||
HasRead = model.HasRead,
|
HasRead = model.HasRead,
|
||||||
Subject = model.Subject,
|
Subject = model.Subject,
|
||||||
ClientId = model.ClientId,
|
ClientId = model.ClientId,
|
||||||
MessageId = model.MessageId,
|
MessageId = model.MessageId,
|
||||||
SenderName = model.SenderName,
|
ClientId = model.ClientId,
|
||||||
DateDelivery = model.DateDelivery,
|
SenderName = model.SenderName,
|
||||||
};
|
Body = model.Body,
|
||||||
|
Subject = model.Subject,
|
||||||
|
DateDelivery = model.DateDelivery,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
public void Update(MessageInfoBindingModel model)
|
public void Update(MessageInfoBindingModel model)
|
||||||
{
|
{
|
||||||
@ -50,16 +53,19 @@ namespace FoodOrdersDatabaseImplement.Models
|
|||||||
HasRead = model.HasRead;
|
HasRead = model.HasRead;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel GetViewModel => new()
|
public MessageInfoViewModel GetViewModel => new()
|
||||||
{
|
{
|
||||||
Body = Body,
|
Body = Body,
|
||||||
Reply = Reply,
|
Reply = Reply,
|
||||||
HasRead = HasRead,
|
HasRead = HasRead,
|
||||||
Subject = Subject,
|
Subject = Subject,
|
||||||
ClientId = ClientId,
|
ClientId = ClientId,
|
||||||
MessageId = MessageId,
|
MessageId = MessageId,
|
||||||
SenderName = SenderName,
|
ClientId = ClientId,
|
||||||
DateDelivery = DateDelivery,
|
SenderName = SenderName,
|
||||||
};
|
Body = Body,
|
||||||
}
|
Subject = Subject,
|
||||||
|
DateDelivery = DateDelivery,
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -10,6 +10,7 @@ namespace FoodOrdersFileImplement
|
|||||||
private readonly string DishFileName = "Dish.xml";
|
private readonly string DishFileName = "Dish.xml";
|
||||||
private readonly string ClientFileName = "Clients.xml";
|
private readonly string ClientFileName = "Clients.xml";
|
||||||
private readonly string ImplementerFileName = "Implementer.xml";
|
private readonly string ImplementerFileName = "Implementer.xml";
|
||||||
|
private readonly string MessageInfoFileName = "MessageInfo.xml";
|
||||||
private readonly string ShopFileName = "Shop.xml";
|
private readonly string ShopFileName = "Shop.xml";
|
||||||
public List<Component> Components { get; private set; }
|
public List<Component> Components { get; private set; }
|
||||||
public List<Order> Orders { get; private set; }
|
public List<Order> Orders { get; private set; }
|
||||||
@ -17,6 +18,7 @@ namespace FoodOrdersFileImplement
|
|||||||
public List<Shop> Shops { get; private set; }
|
public List<Shop> Shops { get; private set; }
|
||||||
public List<Client> Clients { get; private set; }
|
public List<Client> Clients { get; private set; }
|
||||||
public List<Implementer> Implementers { get; private set; }
|
public List<Implementer> Implementers { get; private set; }
|
||||||
|
public List<MessageInfo> Messages { get; private set; }
|
||||||
|
|
||||||
public static DataFileSingleton GetInstance()
|
public static DataFileSingleton GetInstance()
|
||||||
{
|
{
|
||||||
@ -32,6 +34,7 @@ namespace FoodOrdersFileImplement
|
|||||||
public void SaveShops() => SaveData(Shops, ShopFileName, "Shops", x => x.GetXElement);
|
public void SaveShops() => SaveData(Shops, ShopFileName, "Shops", x => x.GetXElement);
|
||||||
public void SaveClients() => SaveData(Clients, ClientFileName, "Clients", x => x.GetXElement);
|
public void SaveClients() => SaveData(Clients, ClientFileName, "Clients", x => x.GetXElement);
|
||||||
public void SaveImplementer() => SaveData(Implementers, ImplementerFileName, "Implementer", x => x.GetXElement);
|
public void SaveImplementer() => SaveData(Implementers, ImplementerFileName, "Implementer", x => x.GetXElement);
|
||||||
|
public void SaveMessages() => SaveData(Orders, ImplementerFileName, "Messages", x => x.GetXElement);
|
||||||
private DataFileSingleton()
|
private DataFileSingleton()
|
||||||
{
|
{
|
||||||
Components = LoadData(ComponentFileName, "Component", x => Component.Create(x)!)!;
|
Components = LoadData(ComponentFileName, "Component", x => Component.Create(x)!)!;
|
||||||
@ -40,6 +43,7 @@ namespace FoodOrdersFileImplement
|
|||||||
Clients = LoadData(ClientFileName, "Client", x => Client.Create(x)!)!;
|
Clients = LoadData(ClientFileName, "Client", x => Client.Create(x)!)!;
|
||||||
Shops = LoadData(ShopFileName, "Shop", x => Shop.Create(x)!)!;
|
Shops = LoadData(ShopFileName, "Shop", x => Shop.Create(x)!)!;
|
||||||
Implementers = LoadData(ImplementerFileName, "Implementer", x => Implementer.Create(x)!)!;
|
Implementers = LoadData(ImplementerFileName, "Implementer", x => Implementer.Create(x)!)!;
|
||||||
|
Messages = LoadData(MessageInfoFileName, "MessageInfo", x => MessageInfo.Create(x)!)!;
|
||||||
}
|
}
|
||||||
private static List<T>? LoadData<T>(string filename, string xmlNodeName, Func<XElement, T> selectFunction)
|
private static List<T>? LoadData<T>(string filename, string xmlNodeName, Func<XElement, T> selectFunction)
|
||||||
{
|
{
|
||||||
|
@ -2,29 +2,52 @@
|
|||||||
using FoodOrdersContracts.SearchModels;
|
using FoodOrdersContracts.SearchModels;
|
||||||
using FoodOrdersContracts.StoragesContracts;
|
using FoodOrdersContracts.StoragesContracts;
|
||||||
using FoodOrdersContracts.ViewModels;
|
using FoodOrdersContracts.ViewModels;
|
||||||
|
using FoodOrdersFileImplement.Models;
|
||||||
|
|
||||||
namespace FoodOrdersFileImplement.Implements
|
namespace FoodOrdersFileImplement.Implements
|
||||||
{
|
{
|
||||||
public class MessageInfoStorage : IMessageInfoStorage
|
public class MessageInfoStorage : IMessageInfoStorage
|
||||||
{
|
{
|
||||||
|
private readonly DataFileSingleton _source;
|
||||||
|
public MessageInfoStorage()
|
||||||
|
{
|
||||||
|
_source = DataFileSingleton.GetInstance();
|
||||||
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
|
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
if (model.MessageId != null)
|
||||||
|
{
|
||||||
|
return _source.Messages.FirstOrDefault(x => x.MessageId == model.MessageId)?.GetViewModel;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<MessageInfoViewModel> GetFilteredList(MessageInfoSearchModel model)
|
public List<MessageInfoViewModel> GetFilteredList(MessageInfoSearchModel model)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
return _source.Messages
|
||||||
|
.Where(x => x.ClientId == model.ClientId)
|
||||||
|
.Select(x => x.GetViewModel)
|
||||||
|
.ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<MessageInfoViewModel> GetFullList()
|
public List<MessageInfoViewModel> GetFullList()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
return _source.Messages
|
||||||
|
.Select(x => x.GetViewModel)
|
||||||
|
.ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? Insert(MessageInfoBindingModel model)
|
public MessageInfoViewModel? Insert(MessageInfoBindingModel model)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
var newMessage = MessageInfo.Create(model);
|
||||||
|
if (newMessage == null)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
_source.Messages.Add(newMessage);
|
||||||
|
_source.SaveMessages();
|
||||||
|
return newMessage.GetViewModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? Update(MessageInfoBindingModel model)
|
public MessageInfoViewModel? Update(MessageInfoBindingModel model)
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
using FoodOrdersListImplement.Models;
|
using FoodOrdersListImplement.Models;
|
||||||
|
using static System.Formats.Asn1.AsnWriter;
|
||||||
|
|
||||||
namespace FoodOrdersListImplement
|
namespace FoodOrdersListImplement
|
||||||
{
|
{
|
||||||
@ -11,6 +12,7 @@ namespace FoodOrdersListImplement
|
|||||||
public List<Shop> Shops { get; set; }
|
public List<Shop> Shops { get; set; }
|
||||||
public List<Client> Clients { get; set; }
|
public List<Client> Clients { get; set; }
|
||||||
public List<Implementer> Implementers { get; set; }
|
public List<Implementer> Implementers { get; set; }
|
||||||
|
public List<MessageInfo> Messages { get; set; }
|
||||||
private DataListSingleton()
|
private DataListSingleton()
|
||||||
{
|
{
|
||||||
Components = new List<Component>();
|
Components = new List<Component>();
|
||||||
@ -19,6 +21,7 @@ namespace FoodOrdersListImplement
|
|||||||
Clients = new List<Client>();
|
Clients = new List<Client>();
|
||||||
Shops = new List<Shop>();
|
Shops = new List<Shop>();
|
||||||
Implementers = new List<Implementer>();
|
Implementers = new List<Implementer>();
|
||||||
|
Messages = new List<MessageInfo>();
|
||||||
}
|
}
|
||||||
public static DataListSingleton GetInstance()
|
public static DataListSingleton GetInstance()
|
||||||
{
|
{
|
||||||
|
@ -2,29 +2,60 @@
|
|||||||
using FoodOrdersContracts.SearchModels;
|
using FoodOrdersContracts.SearchModels;
|
||||||
using FoodOrdersContracts.StoragesContracts;
|
using FoodOrdersContracts.StoragesContracts;
|
||||||
using FoodOrdersContracts.ViewModels;
|
using FoodOrdersContracts.ViewModels;
|
||||||
|
using FoodOrdersListImplement.Models;
|
||||||
|
|
||||||
namespace FoodOrdersListImplement.Implements
|
namespace FoodOrdersListImplement.Implements
|
||||||
{
|
{
|
||||||
public class MessageInfoStorage : IMessageInfoStorage
|
public class MessageInfoStorage : IMessageInfoStorage
|
||||||
{
|
{
|
||||||
|
private readonly DataListSingleton _source;
|
||||||
|
public MessageInfoStorage()
|
||||||
|
{
|
||||||
|
_source = DataListSingleton.GetInstance();
|
||||||
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
|
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
foreach (var message in _source.Messages)
|
||||||
|
{
|
||||||
|
if (model.MessageId != null && model.MessageId.Equals(message.MessageId))
|
||||||
|
return message.GetViewModel;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<MessageInfoViewModel> GetFilteredList(MessageInfoSearchModel model)
|
public List<MessageInfoViewModel> GetFilteredList(MessageInfoSearchModel model)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
List<MessageInfoViewModel> result = new();
|
||||||
|
foreach (var item in _source.Messages)
|
||||||
|
{
|
||||||
|
if (item.ClientId.HasValue && item.ClientId == model.ClientId)
|
||||||
|
{
|
||||||
|
result.Add(item.GetViewModel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<MessageInfoViewModel> GetFullList()
|
public List<MessageInfoViewModel> GetFullList()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
List<MessageInfoViewModel> result = new();
|
||||||
|
foreach (var item in _source.Messages)
|
||||||
|
{
|
||||||
|
result.Add(item.GetViewModel);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? Insert(MessageInfoBindingModel model)
|
public MessageInfoViewModel? Insert(MessageInfoBindingModel model)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
var newMessage = MessageInfo.Create(model);
|
||||||
|
if (newMessage == null)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
_source.Messages.Add(newMessage);
|
||||||
|
return newMessage.GetViewModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? Update(MessageInfoBindingModel model)
|
public MessageInfoViewModel? Update(MessageInfoBindingModel model)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user