оно раотает

This commit is contained in:
ityurner02@mail.ru 2023-04-30 13:04:29 +04:00
parent 139326a4b8
commit efe87a6a04
5 changed files with 27 additions and 23 deletions

View File

@ -13,7 +13,6 @@ namespace PlumbingRepairDatabaseImplement.Implements
{
using var context = new PlumbingRepairDataBase();
return context.Clients
.Include(x => x.Orders)
.Select(x => x.GetViewModel)
.ToList();
}
@ -23,11 +22,15 @@ namespace PlumbingRepairDatabaseImplement.Implements
{
return new();
}
if (!string.IsNullOrEmpty(model.Email))
if (model.Id.HasValue)
{
var res = GetElement(model);
return res != null ? new() { res } : new();
}
if (!string.IsNullOrEmpty(model.Email))
{
using var context = new PlumbingRepairDataBase();
return context.Clients
.Include(x => x.Orders)
.Where(x => x.Email.Contains(model.Email))
.Select(x => x.GetViewModel)
.ToList();
@ -36,19 +39,22 @@ namespace PlumbingRepairDatabaseImplement.Implements
}
public ClientViewModel? GetElement(ClientSearchModel model)
{
using var context = new PlumbingRepairDataBase();
if (model.Id.HasValue)
{
return context.Clients
.FirstOrDefault(x => (x.Id == model.Id))?.GetViewModel;
}
else if (!string.IsNullOrEmpty(model.Email) && !string.IsNullOrEmpty(model.Password))
{
return context.Clients
.FirstOrDefault(x => (x.Email == model.Email && x.Password == model.Password))?.GetViewModel;
}
return new();
}
if (string.IsNullOrEmpty(model.ClientFIO) &&
string.IsNullOrEmpty(model.Email) &&
string.IsNullOrEmpty(model.Password) &&
!model.Id.HasValue)
{
return null;
}
using var context = new PlumbingRepairDataBase();
var temp = context.Clients
.FirstOrDefault(x => (string.IsNullOrEmpty(model.ClientFIO) || x.ClientFIO == model.ClientFIO) &&
(string.IsNullOrEmpty(model.Email) || x.Email == model.Email) &&
(string.IsNullOrEmpty(model.Password) || x.Password == model.Password) &&
(!model.Id.HasValue || x.Id == model.Id))
?.GetViewModel;
return temp;
}
public ClientViewModel? Insert(ClientBindingModel model)
{
var newClient = Client.Create(model);

View File

@ -10,8 +10,10 @@ namespace PlumbingRepairDatabaseImplement.Implements
{
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
{
if (model.MessageId == null)
if (string.IsNullOrEmpty(model.MessageId))
{
return null;
}
using var context = new PlumbingRepairDataBase();
return context.Messages.FirstOrDefault(x => x.MessageId == model.MessageId)?.GetViewModel;
}

View File

@ -12,7 +12,7 @@ using PlumbingRepairDatabaseImplement;
namespace PlumbingRepairDatabaseImplement.Migrations
{
[DbContext(typeof(PlumbingRepairDataBase))]
[Migration("20230429174158_WithMessage")]
[Migration("20230430082314_WithMessage")]
partial class WithMessage
{
/// <inheritdoc />

View File

@ -10,13 +10,9 @@ namespace PlumbingRepairDatabaseImplement.Models
[Key]
public string MessageId { get; private set; } = string.Empty;
public int? ClientId { get; private set; }
[Required]
public string SenderName { get; private set; } = string.Empty;
[Required]
public DateTime DateDelivery { get; private set; }
[Required]
public DateTime DateDelivery { get; private set; } = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Utc);
public string Subject { get; private set; } = string.Empty;
[Required]
public string Body { get; private set; } = string.Empty;
public virtual Client? Client { get; set; }