FixDatabase + UpdateView
Заряжай, заря-заря-жай, заряжай меня Мне не спрятаться от тебя и не убежать
This commit is contained in:
parent
8e9e4dd321
commit
f502a218a7
@ -13,7 +13,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DatabaseImplement", "Databa
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ImplementerApp", "ImplementerApp\ImplementerApp.csproj", "{9CEB1DEF-2254-4745-89C9-832E2F857BF4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GuarantorAPP", "GuarantorAPP\GuarantorAPP.csproj", "{9B5881EA-1F06-422A-85F4-BDD188921374}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GuarantorAPP", "GuarantorAPP\GuarantorAPP.csproj", "{9B5881EA-1F06-422A-85F4-BDD188921374}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestingDatabase", "TestingDatabase\TestingDatabase.csproj", "{022506BE-1362-4426-9B66-168680BD4AA4}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@ -45,6 +47,10 @@ Global
|
||||
{9B5881EA-1F06-422A-85F4-BDD188921374}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9B5881EA-1F06-422A-85F4-BDD188921374}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9B5881EA-1F06-422A-85F4-BDD188921374}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{022506BE-1362-4426-9B66-168680BD4AA4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{022506BE-1362-4426-9B66-168680BD4AA4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{022506BE-1362-4426-9B66-168680BD4AA4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{022506BE-1362-4426-9B66-168680BD4AA4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -27,23 +27,13 @@ namespace DatabaseImplement.Implements
|
||||
|
||||
public List<DetailViewModel> GetFilteredList(DetailSearchModel model)
|
||||
{
|
||||
if (!model.Id.HasValue && string.IsNullOrEmpty(model.Name) && !model.UserId.HasValue)
|
||||
if (!model.UserId.HasValue)
|
||||
{
|
||||
return new();
|
||||
}
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
if (model.Id.HasValue)
|
||||
{
|
||||
return context.Details.Where(x => x.Id == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
else if (model.UserId.HasValue)
|
||||
{
|
||||
return context.Details.Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
return context.Details.Where(x => model.Name == x.Name).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public List<DetailViewModel> GetFullList()
|
||||
|
@ -3,6 +3,7 @@ using Contracts.SearchModels;
|
||||
using Contracts.StoragesContracts;
|
||||
using Contracts.ViewModels;
|
||||
using DatabaseImplement.Models;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace DatabaseImplement.Implements
|
||||
{
|
||||
@ -14,6 +15,7 @@ namespace DatabaseImplement.Implements
|
||||
var newProduct = context.Products.FirstOrDefault(x => x.Id == model.Id);
|
||||
if (newProduct == null)
|
||||
return null;
|
||||
newProduct.UpdateDetails(context, model);
|
||||
context.Products.Remove(newProduct);
|
||||
context.SaveChanges();
|
||||
return newProduct.GetViewModel;
|
||||
@ -22,34 +24,23 @@ namespace DatabaseImplement.Implements
|
||||
public ProductViewModel? GetElement(ProductSearchModel model)
|
||||
{
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
return context.Products.FirstOrDefault(x => (!string.IsNullOrEmpty(model.Name) && x.Name.Contains(model.Name)) || (model.Id.HasValue && x.Id == model.Id))?.GetViewModel;
|
||||
return context.Products.Include(p => p.Details).ThenInclude(p => p.Detail).FirstOrDefault(x => (!string.IsNullOrEmpty(model.Name) && x.Name.Contains(model.Name)) || (model.Id.HasValue && x.Id == model.Id))?.GetViewModel;
|
||||
}
|
||||
|
||||
public List<ProductViewModel> GetFilteredList(ProductSearchModel model)
|
||||
{
|
||||
if (!model.Id.HasValue && string.IsNullOrEmpty(model.Name) && !model.UserId.HasValue)
|
||||
if (!model.UserId.HasValue)
|
||||
{
|
||||
return new();
|
||||
}
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
if (model.Id.HasValue)
|
||||
{
|
||||
return context.Products.Where(x => x.Id == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
else if (model.UserId.HasValue)
|
||||
{
|
||||
return context.Products.Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
return context.Products.Where(x => model.Name == x.Name).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
return context.Products.Include(p => p.Details).ThenInclude(p => p.Detail).Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
|
||||
public List<ProductViewModel> GetFullList()
|
||||
{
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
return context.Products.Select(x => x.GetViewModel).ToList();
|
||||
return context.Products.Include(p => p.Details).ThenInclude(p => p.Detail).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
|
||||
public ProductViewModel? Insert(ProductBindingModel model)
|
||||
@ -70,6 +61,7 @@ namespace DatabaseImplement.Implements
|
||||
if (newProduct == null)
|
||||
return null;
|
||||
newProduct.Update(model);
|
||||
newProduct.UpdateDetails(context, model);
|
||||
context.SaveChanges();
|
||||
return newProduct.GetViewModel;
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ using Contracts.SearchModels;
|
||||
using Contracts.StoragesContracts;
|
||||
using Contracts.ViewModels;
|
||||
using DatabaseImplement.Models;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace DatabaseImplement.Implements
|
||||
{
|
||||
@ -22,34 +23,23 @@ namespace DatabaseImplement.Implements
|
||||
public ProductionViewModel? GetElement(ProductionSearchModel model)
|
||||
{
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
return context.Productions.FirstOrDefault(x => (!string.IsNullOrEmpty(model.Name) && x.Name.Contains(model.Name)) || (model.Id.HasValue && x.Id == model.Id))?.GetViewModel;
|
||||
return context.Productions.Include(x => x.Details).ThenInclude(x => x.Detail).FirstOrDefault(x => (!string.IsNullOrEmpty(model.Name) && x.Name.Contains(model.Name)) || (model.Id.HasValue && x.Id == model.Id))?.GetViewModel;
|
||||
}
|
||||
|
||||
public List<ProductionViewModel> GetFilteredList(ProductionSearchModel model)
|
||||
{
|
||||
if (!model.Id.HasValue && string.IsNullOrEmpty(model.Name) && !model.UserId.HasValue)
|
||||
if (!model.UserId.HasValue)
|
||||
{
|
||||
return new();
|
||||
}
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
if (model.Id.HasValue)
|
||||
{
|
||||
return context.Productions.Where(x => x.Id == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
else if (model.UserId.HasValue)
|
||||
{
|
||||
return context.Productions.Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
return context.Productions.Where(x => model.Name == x.Name).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
return context.Productions.Include(x => x.Details).ThenInclude(x => x.Detail).Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
|
||||
public List<ProductionViewModel> GetFullList()
|
||||
{
|
||||
using var context = new FactoryGoWorkDatabase();
|
||||
return context.Productions.Select(x => x.GetViewModel).ToList();
|
||||
return context.Productions.Include(x => x.Details).ThenInclude(x => x.Detail).Select(x => x.GetViewModel).ToList();
|
||||
}
|
||||
|
||||
public ProductionViewModel? Insert(ProductionBindingModel model)
|
||||
|
@ -12,8 +12,8 @@ using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
namespace DatabaseImplement.Migrations
|
||||
{
|
||||
[DbContext(typeof(FactoryGoWorkDatabase))]
|
||||
[Migration("20240427200038_somestrange")]
|
||||
partial class somestrange
|
||||
[Migration("20240430122917_tryToCheck")]
|
||||
partial class tryToCheck
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
@ -330,7 +330,6 @@ namespace DatabaseImplement.Migrations
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int?>("ProductionId")
|
||||
.IsRequired()
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("Title")
|
||||
@ -489,10 +488,8 @@ namespace DatabaseImplement.Migrations
|
||||
modelBuilder.Entity("DatabaseImplement.Models.Workshop", b =>
|
||||
{
|
||||
b.HasOne("DatabaseImplement.Models.Production", "Production")
|
||||
.WithMany()
|
||||
.HasForeignKey("ProductionId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
.WithMany("Workshops")
|
||||
.HasForeignKey("ProductionId");
|
||||
|
||||
b.HasOne("DatabaseImplement.Models.Guarantor", "Guarantor")
|
||||
.WithMany("Workshops")
|
||||
@ -543,6 +540,8 @@ namespace DatabaseImplement.Migrations
|
||||
modelBuilder.Entity("DatabaseImplement.Models.Production", b =>
|
||||
{
|
||||
b.Navigation("Details");
|
||||
|
||||
b.Navigation("Workshops");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseImplement.Models.Worker", b =>
|
@ -5,7 +5,7 @@ using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace DatabaseImplement.Migrations
|
||||
{
|
||||
public partial class somestrange : Migration
|
||||
public partial class tryToCheck : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
@ -151,7 +151,8 @@ namespace DatabaseImplement.Migrations
|
||||
name: "FK_Products_Machines_MachineId",
|
||||
column: x => x.MachineId,
|
||||
principalTable: "Machines",
|
||||
principalColumn: "Id");
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.SetNull);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@ -171,13 +172,13 @@ namespace DatabaseImplement.Migrations
|
||||
column: x => x.WorkerId,
|
||||
principalTable: "Machines",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
table.ForeignKey(
|
||||
name: "FK_WorkerMachines_Workers_WorkerId",
|
||||
column: x => x.WorkerId,
|
||||
principalTable: "Workers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@ -197,13 +198,13 @@ namespace DatabaseImplement.Migrations
|
||||
column: x => x.DetailId,
|
||||
principalTable: "Details",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_DetailProductions_Productions_ProductionId",
|
||||
column: x => x.ProductionId,
|
||||
principalTable: "Productions",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@ -216,7 +217,7 @@ namespace DatabaseImplement.Migrations
|
||||
Address = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
Director = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
UserId = table.Column<int>(type: "int", nullable: false),
|
||||
ProductionId = table.Column<int>(type: "int", nullable: false)
|
||||
ProductionId = table.Column<int>(type: "int", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
@ -232,7 +233,7 @@ namespace DatabaseImplement.Migrations
|
||||
column: x => x.ProductionId,
|
||||
principalTable: "Productions",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
onDelete: ReferentialAction.SetNull);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@ -253,13 +254,13 @@ namespace DatabaseImplement.Migrations
|
||||
column: x => x.DetailId,
|
||||
principalTable: "Details",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_DetailProducts_Products_ProductId",
|
||||
column: x => x.ProductId,
|
||||
principalTable: "Products",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@ -279,13 +280,13 @@ namespace DatabaseImplement.Migrations
|
||||
column: x => x.WorkerId,
|
||||
principalTable: "Workers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_WorkerWorkshops_Workshops_WorkshopId",
|
||||
column: x => x.WorkshopId,
|
||||
principalTable: "Workshops",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.NoAction);
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
@ -328,7 +328,6 @@ namespace DatabaseImplement.Migrations
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int?>("ProductionId")
|
||||
.IsRequired()
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("Title")
|
||||
@ -487,10 +486,8 @@ namespace DatabaseImplement.Migrations
|
||||
modelBuilder.Entity("DatabaseImplement.Models.Workshop", b =>
|
||||
{
|
||||
b.HasOne("DatabaseImplement.Models.Production", "Production")
|
||||
.WithMany()
|
||||
.HasForeignKey("ProductionId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
.WithMany("Workshops")
|
||||
.HasForeignKey("ProductionId");
|
||||
|
||||
b.HasOne("DatabaseImplement.Models.Guarantor", "Guarantor")
|
||||
.WithMany("Workshops")
|
||||
@ -541,6 +538,8 @@ namespace DatabaseImplement.Migrations
|
||||
modelBuilder.Entity("DatabaseImplement.Models.Production", b =>
|
||||
{
|
||||
b.Navigation("Details");
|
||||
|
||||
b.Navigation("Workshops");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("DatabaseImplement.Models.Worker", b =>
|
||||
|
@ -56,6 +56,7 @@ namespace DatabaseImplement.Models
|
||||
return;
|
||||
Email = model.Email;
|
||||
Name = model.Name;
|
||||
Login = model.Login;
|
||||
Password = model.Password;
|
||||
}
|
||||
public ImplementerViewModel GetViewModel => new()
|
||||
|
@ -91,13 +91,16 @@ namespace DatabaseImplement.Models
|
||||
context.DetailProducts.RemoveRange(productDetails.Where(rec => !model.ProductDetails.ContainsKey(rec.DetailId)));
|
||||
context.SaveChanges();
|
||||
foreach (var upDetail in productDetails)
|
||||
{
|
||||
if (model.ProductDetails.ContainsKey(upDetail.DetailId))
|
||||
{
|
||||
upDetail.Count = model.ProductDetails[upDetail.DetailId].Item2;
|
||||
model.ProductDetails.Remove(upDetail.DetailId);
|
||||
}
|
||||
}
|
||||
context.SaveChanges();
|
||||
}
|
||||
var product = context.Products.First(x => x.Id == model.Id);
|
||||
var product = context.Products.FirstOrDefault(x => x.Id == model.Id);
|
||||
foreach (var dp in model.ProductDetails)
|
||||
{
|
||||
context.DetailProducts.Add(new DetailProduct
|
||||
|
@ -31,8 +31,10 @@ namespace DatabaseImplement.Models
|
||||
}
|
||||
}
|
||||
[ForeignKey("ProductionId")]
|
||||
public List<DetailProduction> Details { get; set; } = new();
|
||||
public virtual List<DetailProduction> Details { get; set; } = new();
|
||||
public virtual Implementer User { get; set; }
|
||||
[ForeignKey("ProductionId")]
|
||||
public virtual List<Workshop> Workshops { get; set; }
|
||||
|
||||
public static Production Create(FactoryGoWorkDatabase context, ProductionBindingModel model)
|
||||
{
|
||||
|
@ -17,7 +17,6 @@ namespace DatabaseImplement.Models
|
||||
public string Director { get; set; } = string.Empty;
|
||||
[Required]
|
||||
public int UserId { get; set; }
|
||||
[Required]
|
||||
public int? ProductionId { get; set; }
|
||||
public virtual Production? Production { get; set; }
|
||||
private Dictionary<int, IWorkerModel>? _workerWorkshops = null;
|
||||
|
@ -60,7 +60,26 @@ namespace ImplementerApp.Controllers
|
||||
|
||||
public IActionResult IndexProduct()
|
||||
{
|
||||
return View(new List<ProductViewModel>());
|
||||
List<ProductViewModel> products = new List<ProductViewModel>
|
||||
{
|
||||
new ProductViewModel
|
||||
{
|
||||
Id = 1,
|
||||
Name = "Изделие 1",
|
||||
Cost = 10.99,
|
||||
UserId = 1,
|
||||
MachineId = 1
|
||||
},
|
||||
new ProductViewModel
|
||||
{
|
||||
Id = 2,
|
||||
Name = "Изделие 2",
|
||||
Cost = 19.99,
|
||||
UserId = 2,
|
||||
MachineId = 2
|
||||
}
|
||||
};
|
||||
return View(products);
|
||||
}
|
||||
public IActionResult CreateProduct()
|
||||
{
|
||||
@ -83,7 +102,24 @@ namespace ImplementerApp.Controllers
|
||||
}
|
||||
public IActionResult IndexProduction()
|
||||
{
|
||||
return View(new List<ProductionViewModel>());
|
||||
List<ProductionViewModel> productionViewModels = new List<ProductionViewModel>
|
||||
{
|
||||
new ProductionViewModel
|
||||
{
|
||||
Id = 1,
|
||||
Name = "Производство А",
|
||||
Cost = 1000.00,
|
||||
UserId = 1
|
||||
},
|
||||
new ProductionViewModel
|
||||
{
|
||||
Id = 2,
|
||||
Name = "Производство Б",
|
||||
Cost = 1500.00,
|
||||
UserId = 2
|
||||
}
|
||||
};
|
||||
return View(productionViewModels);
|
||||
}
|
||||
public IActionResult CreateProduction()
|
||||
{
|
||||
@ -106,15 +142,52 @@ namespace ImplementerApp.Controllers
|
||||
}
|
||||
public IActionResult Privacy()
|
||||
{
|
||||
return View();
|
||||
ImplementerViewModel user = new()
|
||||
{
|
||||
Email = "mail@mail.ru",
|
||||
Login = "Login",
|
||||
Password = "password",
|
||||
Name = "User"
|
||||
|
||||
};
|
||||
|
||||
return View(user);
|
||||
}
|
||||
public IActionResult DetailTimeReport()
|
||||
{
|
||||
return View(new List<DetailTimeReport>());
|
||||
List<DetailTimeReport> detailTimeReports = new List<DetailTimeReport>
|
||||
{
|
||||
new DetailTimeReport
|
||||
{
|
||||
DetailName = "Деталь А",
|
||||
Productions = new List<string> { "Производство 1", "Производство 2" },
|
||||
Machines = new List<string> { "Машина X", "Машина Y" }
|
||||
},
|
||||
new DetailTimeReport
|
||||
{
|
||||
DetailName = "Деталь B",
|
||||
Productions = new List<string> { "Производство 3", "Производство 4" },
|
||||
Machines = new List<string> { "Машина Z", "Машина W" }
|
||||
}
|
||||
};
|
||||
return View(detailTimeReports);
|
||||
}
|
||||
public IActionResult DetailWorkshopReport()
|
||||
{
|
||||
return View(new List<DetailWorkshopReportViewModel>());
|
||||
List<DetailWorkshopReportViewModel> detailWorkshopReports = new List<DetailWorkshopReportViewModel>
|
||||
{
|
||||
new DetailWorkshopReportViewModel
|
||||
{
|
||||
DetailName = "Деталь X",
|
||||
WorkShops = new List<string> { "Цех 1", "Цех 2" }
|
||||
},
|
||||
new DetailWorkshopReportViewModel
|
||||
{
|
||||
DetailName = "Деталь Y",
|
||||
WorkShops = new List<string> { "Цех 3", "Цех 4" }
|
||||
}
|
||||
};
|
||||
return View(detailWorkshopReports);
|
||||
}
|
||||
public IActionResult ReportsMenu()
|
||||
{
|
||||
|
@ -14,13 +14,14 @@
|
||||
<div class="col-8"><input type="text" name="title" id="title" /></div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div>Details</div>
|
||||
<div>Детали</div>
|
||||
<div class="table-responsive-lg">
|
||||
<table id="detailsTable" class="display">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Выбор</th>
|
||||
<th>Название</th>
|
||||
<th>Количество</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -21,7 +21,6 @@
|
||||
<tr>
|
||||
<th>Выбор</th>
|
||||
<th>Название</th>
|
||||
<th>Количество</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -57,7 +57,7 @@
|
||||
<a asp-action="CreateDetail" asp-route-id="@item.Id" class="btn btn-primary">Изменить</a>
|
||||
</td>
|
||||
<td>
|
||||
<a asp-action="Delete" asp-route-id="@item.Id" class="btn btn-danger">Удалить</a>
|
||||
<a asp-action="DeleteDetail" asp-route-id="@item.Id" class="btn btn-danger">Удалить</a>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
|
@ -7,11 +7,10 @@
|
||||
}
|
||||
|
||||
<div class="text-center">
|
||||
<h1 class="display-4">Изедлия</h1>
|
||||
<h1 class="display-4">Изделия</h1>
|
||||
</div>
|
||||
|
||||
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="ProductMachineAdd">Привязать станок к изделию</a>
|
||||
|
||||
ProductMachineAdd
|
||||
<div class="text-center">
|
||||
@{
|
||||
if (Model == null)
|
||||
@ -34,6 +33,9 @@
|
||||
<th>
|
||||
Цена
|
||||
</th>
|
||||
<th>
|
||||
Привязка станка к изделию
|
||||
</th>
|
||||
<th>
|
||||
Изменить изделие
|
||||
</th>
|
||||
@ -55,11 +57,14 @@
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Cost)
|
||||
</td>
|
||||
<td>
|
||||
<a asp-action="ProductMachineAdd" asp-route-id="@item.Id" class="btn btn-primary">Привязать станок</a>
|
||||
</td>
|
||||
<td>
|
||||
<a asp-action="CreateProduct" asp-route-id="@item.Id" class="btn btn-primary">Изменить</a>
|
||||
</td>
|
||||
<td>
|
||||
<a asp-action="Delete" asp-route-id="@item.Id" class="btn btn-danger">Удалить</a>
|
||||
<a asp-action="DeleteProduct" asp-route-id="@item.Id" class="btn btn-danger">Удалить</a>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
|
@ -1,6 +1,28 @@
|
||||
@{
|
||||
ViewData["Title"] = "Privacy Policy";
|
||||
}
|
||||
<h1>@ViewData["Title"]</h1>
|
||||
|
||||
<p>Use this page to detail your site's privacy policy.</p>
|
||||
<div class="text-center">
|
||||
<h2 class="display-4">Личные данные</h2>
|
||||
</div>
|
||||
<form method="post">
|
||||
<div class="row">
|
||||
<div class="col-4">Логин:</div>
|
||||
<div class="col-8"><input type="text" name="login" value="@Model.Login" /></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-4">Почта:</div>
|
||||
<div class="col-8"><input type="email" name="email" value="@Model.Email" /></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-4">Пароль:</div>
|
||||
<div class="col-8"><input type="password" name="password" value="@Model.Password" /></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-4">ФИО:</div>
|
||||
<div class="col-8"><input type="text" name="fio" value="@Model.Name" /></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-8"></div>
|
||||
<div class="col-4"><input type="submit" value="Сохранить" class="btn btn-primary" /></div>
|
||||
</div>
|
||||
</form>
|
@ -12,7 +12,8 @@
|
||||
<header>
|
||||
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">Завод "Иди работать". Исполнитель</a>
|
||||
<img src="~/images/Work-transformed.png" width="150" height="150" alt="Логотип">
|
||||
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">Исполнитель</a>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
|
BIN
Course/ImplementerApp/wwwroot/images/Work-transformed.png
Normal file
BIN
Course/ImplementerApp/wwwroot/images/Work-transformed.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 88 KiB |
17
Course/TestingDatabase/Program.cs
Normal file
17
Course/TestingDatabase/Program.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using DatabaseImplement;
|
||||
using DatabaseImplement.Implements;
|
||||
using Contracts.BindingModels;
|
||||
using Contracts.BusinessLogicsContracts;
|
||||
using Contracts.SearchModels;
|
||||
using Contracts.ViewModels;
|
||||
using Microsoft.EntityFrameworkCore.Query.Internal;
|
||||
using DatabaseImplement.Models;
|
||||
using DataModels.Models;
|
||||
|
||||
DetailStorage detailStorage = new DetailStorage();
|
||||
ImplementerStorage implementationStorage = new ImplementerStorage();
|
||||
ProductionionStorage productionionStorage = new ProductionionStorage();
|
||||
ProductStorage productStorage = new ProductStorage();
|
||||
|
||||
var i = productStorage.GetFullList();
|
||||
Console.WriteLine(i);
|
16
Course/TestingDatabase/TestingDatabase.csproj
Normal file
16
Course/TestingDatabase/TestingDatabase.csproj
Normal file
@ -0,0 +1,16 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\BusinessLogic\BusinessLogic.csproj" />
|
||||
<ProjectReference Include="..\Contracts\Contracts.csproj" />
|
||||
<ProjectReference Include="..\DatabaseImplement\DatabaseImplement.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
Loading…
Reference in New Issue
Block a user