fix DataBaseImplement/Models

This commit is contained in:
ShabOl 2024-04-02 22:00:25 +04:00
parent e1fdeb7ba3
commit 332c58bda5
5 changed files with 23 additions and 21 deletions

View File

@ -36,6 +36,7 @@ namespace AutoWorkshopDatabaseImplement.Implements
.FirstOrDefault(x => (!string.IsNullOrEmpty(Model.ComponentName) && x.ComponentName == Model.ComponentName) ||
(Model.Id.HasValue && x.Id == Model.Id))?.GetViewModel;
}
public ComponentViewModel? Insert(ComponentBindingModel Model)
{
var NewComponent = Component.Create(Model);

View File

@ -36,31 +36,31 @@ namespace AutoWorkshopDatabaseImplement.Implements
public OrderViewModel? GetElement(OrderSearchModel Model)
{
if (!Model.Id.HasValue)
return new();
return null;
using var Context = new AutoWorkshopDatabase();
return Context.Orders
.Include(x => x.Repair)
.FirstOrDefault(x => x.Id == Model.Id)
?.GetViewModel;
.FirstOrDefault(x => Model.Id.HasValue && x.Id == Model.Id)?
.GetViewModel;
}
public OrderViewModel? Insert(OrderBindingModel Model)
{
using var Context = new AutoWorkshopDatabase();
{
if (Model == null)
return null;
var NewOrder = Order.Create(Context, Model);
return null;
var NewOrder = Order.Create(Model);
if (NewOrder == null)
return null;
using var Context = new AutoWorkshopDatabase();
Context.Orders.Add(NewOrder);
Context.SaveChanges();
return NewOrder.GetViewModel;
return Context.Orders.Include(x => x.Repair).FirstOrDefault(x => x.Id == NewOrder.Id)?.GetViewModel;
}
public OrderViewModel? Update(OrderBindingModel Model)
@ -74,7 +74,7 @@ namespace AutoWorkshopDatabaseImplement.Implements
Order.Update(Model);
Context.SaveChanges();
return Order.GetViewModel;
return Context.Orders.Include(x => x.Repair).FirstOrDefault(x => x.Id == Model.Id)?.GetViewModel;
}
public OrderViewModel? Delete(OrderBindingModel Model)

View File

@ -47,8 +47,8 @@ namespace AutoWorkshopDatabaseImplement.Implements
.Include(x => x.Components)
.ThenInclude(x => x.Component)
.FirstOrDefault(x => (!string.IsNullOrEmpty(Model.RepairName) && x.RepairName == Model.RepairName) ||
(Model.Id.HasValue && x.Id == Model.Id))
?.GetViewModel;
(Model.Id.HasValue && x.Id == Model.Id))?
.GetViewModel;
}
public RepairViewModel? Insert(RepairBindingModel Model)

View File

@ -1,11 +1,12 @@
using AutoWorkshopContracts.BindingModels;
using AutoWorkshopContracts.ViewModels;
using AutoWorkshopDataModels.Enums;
using AutoWorkshopDataModels.Models;
using System.ComponentModel.DataAnnotations;
namespace AutoWorkshopDatabaseImplement.Models
{
public class Order
public class Order : IOrderModel
{
public int Id { get; private set; }
@ -28,8 +29,11 @@ namespace AutoWorkshopDatabaseImplement.Models
public DateTime? DateImplement { get; private set; }
public static Order Create(AutoWorkshopDatabase context, OrderBindingModel Model)
public static Order? Create(OrderBindingModel Model)
{
if (Model is null)
return null;
return new Order()
{
Id = Model.Id,
@ -44,14 +48,10 @@ namespace AutoWorkshopDatabaseImplement.Models
public void Update(OrderBindingModel Model)
{
if (Model == null)
if (Model is null)
return;
Id = Model.Id;
RepairId = Model.RepairId;
Sum = Model.Sum;
Status = Model.Status;
DateCreate = Model.DateCreate;
DateImplement = Model.DateImplement;
}

View File

@ -6,7 +6,7 @@ using System.ComponentModel.DataAnnotations.Schema;
namespace AutoWorkshopDatabaseImplement.Models
{
public class Repair
public class Repair : IRepairModel
{
public int Id { get; set; }
@ -28,6 +28,7 @@ namespace AutoWorkshopDatabaseImplement.Models
_repairComponents = Components.ToDictionary(RepComp => RepComp.ComponentId, RepComp =>
(RepComp.Component as IComponentModel, RepComp.Count));
}
return _repairComponents;
}
}