финальные изменения
This commit is contained in:
parent
35b5df3d58
commit
840c1176d3
@ -17,9 +17,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairFileImplement
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairDatabaseImplement", "PlumbingRepairDatabaseImplement\PlumbingRepairDatabaseImplement.csproj", "{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairDatabaseImplement", "PlumbingRepairDatabaseImplement\PlumbingRepairDatabaseImplement.csproj", "{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairClientApp", "..\..\PlumbingRepair 7 база\PlumbingRepairClientApp\PlumbingRepairClientApp.csproj", "{4F1E898C-449A-4A60-95D8-BC7818019644}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairClientApp", "..\..\PlumbingRepair 7 база\PlumbingRepairClientApp\PlumbingRepairClientApp.csproj", "{712EBB90-7365-4F29-B7C6-91E3F5157B0C}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairRestApi", "..\..\PlumbingRepair 7 база\PlumbingRepairRestApi\PlumbingRepairRestApi.csproj", "{CEB61A52-7C4D-45CC-A48B-E52B295EE28E}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PlumbingRepairRestApi", "..\..\PlumbingRepair 7 база\PlumbingRepairRestApi\PlumbingRepairRestApi.csproj", "{6CCF4B9D-A4CC-4751-A471-19DAA710413B}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
@ -55,14 +55,14 @@ Global
|
|||||||
{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}.Release|Any CPU.Build.0 = Release|Any CPU
|
{6DDC0CCD-97E0-4CB7-8024-C27DB9AEF97B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{4F1E898C-449A-4A60-95D8-BC7818019644}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{712EBB90-7365-4F29-B7C6-91E3F5157B0C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{4F1E898C-449A-4A60-95D8-BC7818019644}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{712EBB90-7365-4F29-B7C6-91E3F5157B0C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{4F1E898C-449A-4A60-95D8-BC7818019644}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{712EBB90-7365-4F29-B7C6-91E3F5157B0C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{4F1E898C-449A-4A60-95D8-BC7818019644}.Release|Any CPU.Build.0 = Release|Any CPU
|
{712EBB90-7365-4F29-B7C6-91E3F5157B0C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{CEB61A52-7C4D-45CC-A48B-E52B295EE28E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{6CCF4B9D-A4CC-4751-A471-19DAA710413B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{CEB61A52-7C4D-45CC-A48B-E52B295EE28E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{6CCF4B9D-A4CC-4751-A471-19DAA710413B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{CEB61A52-7C4D-45CC-A48B-E52B295EE28E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{6CCF4B9D-A4CC-4751-A471-19DAA710413B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{CEB61A52-7C4D-45CC-A48B-E52B295EE28E}.Release|Any CPU.Build.0 = Release|Any CPU
|
{6CCF4B9D-A4CC-4751-A471-19DAA710413B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
@ -137,8 +137,8 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
mailModel = new MailSendInfoBindingModel
|
mailModel = new MailSendInfoBindingModel
|
||||||
{
|
{
|
||||||
MailAddress = clientModel.Email,
|
MailAddress = clientModel.Email,
|
||||||
Subject = $"Order №{orderModel.Id}",
|
Subject = $"Заказ №{orderModel.Id}",
|
||||||
Text = $"Your order №{orderModel.Id} by {orderModel.DateCreate} on {orderModel.Sum} was accepted!"
|
Text = $"Ваш заказ №{orderModel.Id} в {orderModel.DateCreate} на сумму {orderModel.Sum} был принят!"
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -146,8 +146,8 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
mailModel = new MailSendInfoBindingModel
|
mailModel = new MailSendInfoBindingModel
|
||||||
{
|
{
|
||||||
MailAddress = clientModel.Email,
|
MailAddress = clientModel.Email,
|
||||||
Subject = $"Order №{orderModel.Id}",
|
Subject = $"Заказ №{orderModel.Id}",
|
||||||
Text = $"Order №{orderModel.Id} status was changed to {orderModel.Status}"
|
Text = $"Заказ №{orderModel.Id} статус изменен в {orderModel.Status}"
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,31 +20,33 @@ namespace PlumbingRepairDatabaseImplement.Implements
|
|||||||
{
|
{
|
||||||
using var context = new PlumbingRepairDatabase();
|
using var context = new PlumbingRepairDatabase();
|
||||||
return context.Messages
|
return context.Messages
|
||||||
.Where(x => x.ClientId == model.ClientId)
|
.Where(x => x.ClientId.HasValue && x.ClientId == model.ClientId)
|
||||||
.Select(x => x.GetViewModel)
|
.Select(x => x.GetViewModel)
|
||||||
.ToList();
|
.ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
|
public MessageInfoViewModel? GetElement(MessageInfoSearchModel model)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
if (string.IsNullOrEmpty(model.MessageId))
|
||||||
|
return null;
|
||||||
using var context = new PlumbingRepairDatabase();
|
using var context = new PlumbingRepairDatabase();
|
||||||
if (model.MessageId != null)
|
|
||||||
{
|
|
||||||
return context.Messages
|
return context.Messages
|
||||||
.FirstOrDefault(x => x.MessageId == model.MessageId)?.GetViewModel;
|
.FirstOrDefault(x => x.MessageId == model.MessageId)?.GetViewModel;
|
||||||
}
|
}
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public MessageInfoViewModel? Insert(MessageInfoBindingModel model)
|
public MessageInfoViewModel? Insert(MessageInfoBindingModel model)
|
||||||
{
|
{
|
||||||
using var context = new PlumbingRepairDatabase();
|
using var context = new PlumbingRepairDatabase();
|
||||||
|
model.ClientId = context.Clients.FirstOrDefault(x => x.Email.Equals(model.SenderName))?.Id;
|
||||||
var newMessageInfo = MessageInfo.Create(model);
|
var newMessageInfo = MessageInfo.Create(model);
|
||||||
|
|
||||||
if (newMessageInfo == null || context.Messages.Any(x => x.MessageId.Equals(model.MessageId)))
|
if (newMessageInfo == null || context.Messages.Any(x => x.MessageId.Equals(model.MessageId)))
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
context.Messages.Add(newMessageInfo);
|
context.Messages.Add(newMessageInfo);
|
||||||
context.SaveChanges();
|
context.SaveChanges();
|
||||||
return newMessageInfo.GetViewModel;
|
return newMessageInfo.GetViewModel;
|
||||||
|
@ -24,26 +24,75 @@ namespace PlumbingRepairDatabaseImplement.Implements
|
|||||||
|
|
||||||
public OrderViewModel? GetElement(OrderSearchModel model)
|
public OrderViewModel? GetElement(OrderSearchModel model)
|
||||||
{
|
{
|
||||||
if (!model.Id.HasValue && !model.ImplementerId.HasValue && !model.Status.HasValue)
|
if (!model.Id.HasValue)
|
||||||
|
{
|
||||||
return null;
|
return null;
|
||||||
|
}
|
||||||
using var context = new PlumbingRepairDatabase();
|
using var context = new PlumbingRepairDatabase();
|
||||||
|
if (model.Id.HasValue)
|
||||||
return context.Orders
|
return AttachNames(context.Orders
|
||||||
|
.Include(x => x.Work)
|
||||||
|
.Include(x => x.Implementer)
|
||||||
|
.Include(x => x.Client)
|
||||||
|
.FirstOrDefault(x => model.Id.HasValue && x.Id == model.Id)
|
||||||
|
?.GetViewModel);
|
||||||
|
else if (model.ImplementerId.HasValue && model.Status.HasValue)
|
||||||
|
return AttachNames(context.Orders
|
||||||
|
.Include(x => x.Implementer)
|
||||||
.Include(x => x.Work)
|
.Include(x => x.Work)
|
||||||
.Include(x => x.Client)
|
.Include(x => x.Client)
|
||||||
.Include(x => x.Implementer)
|
.FirstOrDefault(x => model.ImplementerId.HasValue && x.ImplementerId == model.ImplementerId)
|
||||||
.FirstOrDefault(x => (model.Id.HasValue && x.Id == model.Id)
|
?.GetViewModel);
|
||||||
|| (model.ImplementerId.HasValue && model.Status.HasValue && x.ImplementerId == model.ImplementerId && x.Status == model.Status))?
|
return null;
|
||||||
.GetViewModel;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<OrderViewModel> GetFilteredList(OrderSearchModel model)
|
public List<OrderViewModel> GetFilteredList(OrderSearchModel model)
|
||||||
{
|
{
|
||||||
using var context = new PlumbingRepairDatabase();
|
using var context = new PlumbingRepairDatabase();
|
||||||
|
|
||||||
if (model.DateFrom.HasValue)
|
if (!model.Id.HasValue && !model.DateFrom.HasValue && !model.ClientId.HasValue && !model.Status.HasValue)
|
||||||
|
{
|
||||||
|
return new();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (model.Id.HasValue)
|
||||||
|
{
|
||||||
|
return context.Orders
|
||||||
|
.Include(x => x.Work)
|
||||||
|
.Include(x => x.Implementer)
|
||||||
|
.Include(x => x.Client)
|
||||||
|
.Where(x => x.Id == model.Id)
|
||||||
|
.Select(x => AttachNames(x.GetViewModel)).ToList();
|
||||||
|
}
|
||||||
|
if (model.Status.HasValue)
|
||||||
|
{
|
||||||
|
return context.Orders
|
||||||
|
.Include(x => x.Work)
|
||||||
|
.Include(x => x.Implementer)
|
||||||
|
.Include(x => x.Client)
|
||||||
|
.Where(x => x.ImplementerId == model.ImplementerId && x.Status == model.Status)
|
||||||
|
.Select(x => AttachNames(x.GetViewModel)).ToList();
|
||||||
|
}
|
||||||
|
if (model.ClientId.HasValue)
|
||||||
|
{
|
||||||
|
return context.Orders
|
||||||
|
.Include(x => x.Client)
|
||||||
|
.Include(x => x.Work)
|
||||||
|
.Include(x => x.Implementer)
|
||||||
|
.Where(x => x.ClientId == model.ClientId)
|
||||||
|
.Select(x => AttachNames(x.GetViewModel)).ToList();
|
||||||
|
}
|
||||||
|
if (model.ImplementerId.HasValue)
|
||||||
|
{
|
||||||
|
return context.Orders
|
||||||
|
.Include(x => x.Work)
|
||||||
|
.Include(x => x.Implementer)
|
||||||
|
.Include(x => x.Client)
|
||||||
|
.Where(x => x.ImplementerId == model.ImplementerId)
|
||||||
|
.Select(x => AttachNames(x.GetViewModel)).ToList();
|
||||||
|
}
|
||||||
|
if (model.DateFrom != null && model.DateTo != null)
|
||||||
{
|
{
|
||||||
return context.Orders
|
return context.Orders
|
||||||
.Include(x => x.Work)
|
.Include(x => x.Work)
|
||||||
@ -53,18 +102,9 @@ namespace PlumbingRepairDatabaseImplement.Implements
|
|||||||
&& (!model.ClientId.HasValue || x.ClientId == model.ClientId))
|
&& (!model.ClientId.HasValue || x.ClientId == model.ClientId))
|
||||||
.Select(x => x.GetViewModel)
|
.Select(x => x.GetViewModel)
|
||||||
.ToList();
|
.ToList();
|
||||||
}
|
|
||||||
|
|
||||||
return context.Orders
|
}
|
||||||
.Include(x => x.Work)
|
return new();
|
||||||
.Include(x => x.Client)
|
|
||||||
.Include(x => x.Implementer)
|
|
||||||
.Where(x => (model.Id.HasValue && x.Id == model.Id)
|
|
||||||
|| (model.ClientId.HasValue && x.ClientId == model.ClientId)
|
|
||||||
|| (model.ImplementerId.HasValue && x.ImplementerId == model.ImplementerId)
|
|
||||||
|| (model.Status.HasValue && x.Status == model.Status))
|
|
||||||
.Select(x => x.GetViewModel)
|
|
||||||
.ToList();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<OrderViewModel> GetFullList()
|
public List<OrderViewModel> GetFullList()
|
||||||
@ -89,7 +129,7 @@ namespace PlumbingRepairDatabaseImplement.Implements
|
|||||||
|
|
||||||
context.Orders.Add(newOrder);
|
context.Orders.Add(newOrder);
|
||||||
context.SaveChanges();
|
context.SaveChanges();
|
||||||
return AttachNames(newOrder.GetViewModel);
|
return AttachNames(context.Orders.Include(x => x.Work).Include(x => x.Implementer).Include(x => x.Client).FirstOrDefault(x => x.Id == newOrder.Id)?.GetViewModel);
|
||||||
}
|
}
|
||||||
|
|
||||||
public OrderViewModel? Update(OrderBindingModel model)
|
public OrderViewModel? Update(OrderBindingModel model)
|
||||||
|
@ -12,7 +12,7 @@ using PlumbingRepairDatabaseImplement;
|
|||||||
namespace PlumbingRepairDatabaseImplement.Migrations
|
namespace PlumbingRepairDatabaseImplement.Migrations
|
||||||
{
|
{
|
||||||
[DbContext(typeof(PlumbingRepairDatabase))]
|
[DbContext(typeof(PlumbingRepairDatabase))]
|
||||||
[Migration("20240503080749_InitCreate")]
|
[Migration("20240503110424_InitCreate")]
|
||||||
partial class InitCreate
|
partial class InitCreate
|
||||||
{
|
{
|
||||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||||
@ -121,8 +121,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
|
|
||||||
b.HasKey("MessageId");
|
b.HasKey("MessageId");
|
||||||
|
|
||||||
b.HasIndex("ClientId");
|
|
||||||
|
|
||||||
b.ToTable("Messages");
|
b.ToTable("Messages");
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -215,15 +213,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
b.ToTable("WorkComponents");
|
b.ToTable("WorkComponents");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.MessageInfo", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
|
||||||
.WithMany("Messages")
|
|
||||||
.HasForeignKey("ClientId");
|
|
||||||
|
|
||||||
b.Navigation("Client");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Order", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Order", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
||||||
@ -270,8 +259,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Client", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Client", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Messages");
|
|
||||||
|
|
||||||
b.Navigation("Orders");
|
b.Navigation("Orders");
|
||||||
});
|
});
|
||||||
|
|
@ -54,20 +54,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
table.PrimaryKey("PK_Implementers", x => x.Id);
|
table.PrimaryKey("PK_Implementers", x => x.Id);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "Works",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
WorkName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Price = table.Column<double>(type: "float", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Works", x => x.Id);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "Messages",
|
name: "Messages",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
@ -82,11 +68,20 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
constraints: table =>
|
constraints: table =>
|
||||||
{
|
{
|
||||||
table.PrimaryKey("PK_Messages", x => x.MessageId);
|
table.PrimaryKey("PK_Messages", x => x.MessageId);
|
||||||
table.ForeignKey(
|
});
|
||||||
name: "FK_Messages_Clients_ClientId",
|
|
||||||
column: x => x.ClientId,
|
migrationBuilder.CreateTable(
|
||||||
principalTable: "Clients",
|
name: "Works",
|
||||||
principalColumn: "Id");
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<int>(type: "int", nullable: false)
|
||||||
|
.Annotation("SqlServer:Identity", "1, 1"),
|
||||||
|
WorkName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||||
|
Price = table.Column<double>(type: "float", nullable: false)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_Works", x => x.Id);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
@ -153,11 +148,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
onDelete: ReferentialAction.Cascade);
|
onDelete: ReferentialAction.Cascade);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Messages_ClientId",
|
|
||||||
table: "Messages",
|
|
||||||
column: "ClientId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
migrationBuilder.CreateIndex(
|
||||||
name: "IX_Orders_ClientId",
|
name: "IX_Orders_ClientId",
|
||||||
table: "Orders",
|
table: "Orders",
|
@ -119,8 +119,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
|
|
||||||
b.HasKey("MessageId");
|
b.HasKey("MessageId");
|
||||||
|
|
||||||
b.HasIndex("ClientId");
|
|
||||||
|
|
||||||
b.ToTable("Messages");
|
b.ToTable("Messages");
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -213,15 +211,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
b.ToTable("WorkComponents");
|
b.ToTable("WorkComponents");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.MessageInfo", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
|
||||||
.WithMany("Messages")
|
|
||||||
.HasForeignKey("ClientId");
|
|
||||||
|
|
||||||
b.Navigation("Client");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Order", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Order", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
||||||
@ -268,8 +257,6 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Client", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Client", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Messages");
|
|
||||||
|
|
||||||
b.Navigation("Orders");
|
b.Navigation("Orders");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -20,8 +20,6 @@ namespace PlumbingRepairDatabaseImplement.Models
|
|||||||
|
|
||||||
[ForeignKey("ClientId")]
|
[ForeignKey("ClientId")]
|
||||||
public virtual List<Order> Orders{ get; set; } = new();
|
public virtual List<Order> Orders{ get; set; } = new();
|
||||||
[ForeignKey("ClientId")]
|
|
||||||
public virtual List<MessageInfo> Messages { get; set; } = new();
|
|
||||||
|
|
||||||
public static Client? Create(ClientBindingModel model)
|
public static Client? Create(ClientBindingModel model)
|
||||||
{
|
{
|
||||||
|
@ -19,7 +19,6 @@ namespace PlumbingRepairDatabaseImplement.Models
|
|||||||
public string Subject { get; set; } = string.Empty;
|
public string Subject { get; set; } = string.Empty;
|
||||||
[Required]
|
[Required]
|
||||||
public string Body { get; set; } = string.Empty;
|
public string Body { get; set; } = string.Empty;
|
||||||
public virtual Client? Client { get; set; }
|
|
||||||
|
|
||||||
public static MessageInfo? Create(MessageInfoBindingModel model)
|
public static MessageInfo? Create(MessageInfoBindingModel model)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user