| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325 |
- @page "/setting/enginesetting"
- @using EasyTemplate.Service
- @using EasyTemplate.Tool.Entity.App
- @inject NozzleService nozzleService
- @inject NavigationManager navigationManager
- @inject IJSRuntime JSRuntime
- <h3>油机管理</h3>
- <div class="row mb-3">
- <div class="col">
- <button class="btn btn-primary" @onclick="ShowCreateModal">添加油机</button>
- </div>
- </div>
- <table class="table table-striped">
- <thead>
- <tr>
- <th>ID</th>
- <th>工厂ID</th>
- <th>工厂ID 2</th>
- <th>主板数量</th>
- <th>操作</th>
- </tr>
- </thead>
- <tbody>
- @if (engines != null)
- {
- @foreach (var engine in engines)
- {
- <tr>
- <td>@engine.EngineId</td>
- <td>@engine.factory_id</td>
- <td>@engine.factory_id_2</td>
- <td>@(engine.boards?.Count ?? 0)</td>
- <td>
- <button class="btn btn-sm btn-info me-1" @onclick="() => ShowEditModal(engine)">编辑</button>
- <button class="btn btn-sm btn-danger me-1" @onclick="() => DeleteEngine(engine.EngineId)">删除</button>
- <a class="btn btn-sm btn-secondary" href="/setting/boardsetting?engineId=@engine.EngineId">管理主板</a>
- </td>
- </tr>
- }
- }
- </tbody>
- </table>
- <!-- 创建/编辑模态框 -->
- <div class="modal @(showModal ? "show" : "")" tabindex="-1" style="display: @(showModal ? "block" : "none"); background-color: rgba(0,0,0,0.5);">
- <div class="modal-dialog">
- <div class="modal-content">
- <div class="modal-header">
- <h5 class="modal-title">@modalTitle</h5>
- <button type="button" class="btn-close" @onclick="CloseModal"></button>
- </div>
- <div class="modal-body">
- <div class="mb-3">
- <label class="form-label">油机ID</label>
- <input class="form-control" @bind="currentEngine.EngineId" />
- </div>
- <div class="mb-3">
- <label class="form-label">工厂ID</label>
- <input class="form-control" @bind="currentEngine.factory_id" />
- </div>
- <div class="mb-3">
- <label class="form-label">工厂ID 2</label>
- <input class="form-control" @bind="currentEngine.factory_id_2" />
- </div>
- </div>
- <div class="modal-footer">
- <button type="button" class="btn btn-secondary" @onclick="CloseModal">取消</button>
- <button type="button" class="btn btn-primary" @onclick="SaveEngine">保存</button>
- </div>
- </div>
- </div>
- </div>
- @code {
- private List<TEngine> engines = new();
- private TEngine currentEngine = new();
- private string modalTitle = "";
- private bool isEditMode = false;
- private bool showModal = false;
- protected override async Task OnInitializedAsync()
- {
- await LoadEngines();
- }
- private async Task LoadEngines()
- {
- engines = await nozzleService.GetEnginesWithDetailsAsync();
- StateHasChanged();
- }
- private void ShowCreateModal()
- {
- currentEngine = new TEngine();
- modalTitle = "添加油机";
- isEditMode = false;
- showModal = true;
- StateHasChanged();
- }
- private void ShowEditModal(TEngine engine)
- {
- currentEngine = new TEngine
- {
- EngineId = engine.EngineId,
- factory_id = engine.factory_id,
- factory_id_2 = engine.factory_id_2
- };
- modalTitle = "编辑油机";
- isEditMode = true;
- showModal = true;
- StateHasChanged();
- }
- private void CloseModal()
- {
- showModal = false;
- StateHasChanged();
- }
- private async Task SaveEngine()
- {
- try
- {
- if (isEditMode)
- {
- await nozzleService.UpdateEngineAsync(currentEngine);
- }
- else
- {
- await nozzleService.CreateEngineAsync(currentEngine);
- }
- CloseModal();
- await LoadEngines();
- }
- catch (Exception ex)
- {
- await JSRuntime.InvokeVoidAsync("alert", $"操作失败: {ex.Message}");
- }
- }
- private async Task DeleteEngine(int id)
- {
- var confirmed = await JSRuntime.InvokeAsync<bool>("confirm", "确定要删除这个油机吗?");
- if (confirmed)
- {
- try
- {
- await nozzleService.DeleteEngineAsync(id);
- await LoadEngines();
- }
- catch (Exception ex)
- {
- await JSRuntime.InvokeVoidAsync("alert", $"删除失败: {ex.Message}");
- }
- }
- }
- }
- @* <h3>油机管理</h3>
- <div class="row mb-3">
- <div class="col">
- <button class="btn btn-primary" @onclick="ShowCreateModal">添加油机</button>
- </div>
- </div>
- <table class="table table-striped">
- <thead>
- <tr>
- <th>ID</th>
- <th>工厂ID</th>
- <th>工厂ID 2</th>
- <th>主板数量</th>
- <th>操作</th>
- </tr>
- </thead>
- <tbody>
- @if (engines != null)
- {
- @foreach (var engine in engines)
- {
- <tr>
- <td>@engine.EngineId</td>
- <td>@engine.factory_id</td>
- <td>@engine.factory_id_2</td>
- <td>@(engine.boards?.Count ?? 0)</td>
- <td>
- <button class="btn btn-sm btn-info me-1" @onclick="() => ShowEditModal(engine)">编辑</button>
- <button class="btn btn-sm btn-danger me-1" @onclick="() => DeleteEngine(engine.EngineId)">删除</button>
- <button class="btn btn-sm btn-secondary" @onclick="() => ShowBoards(engine.EngineId)">管理主板</button>
- </td>
- </tr>
- }
- }
- </tbody>
- </table>
- <!-- 创建/编辑模态框 - 使用Blazor控制显示 -->
- <div class="modal @(showModal ? "show" : "")" tabindex="-1" style="display: @(showModal ? "block" : "none"); background-color: rgba(0,0,0,0.5);">
- <div class="modal-dialog">
- <div class="modal-content">
- <div class="modal-header">
- <h5 class="modal-title">@modalTitle</h5>
- <button type="button" class="btn-close" @onclick="CloseModal"></button>
- </div>
- <div class="modal-body">
- <div class="mb-3">
- <label class="form-label">工厂ID</label>
- <input class="form-control" @bind="currentEngine.factory_id" />
- </div>
- <div class="mb-3">
- <label class="form-label">工厂ID 2</label>
- <input class="form-control" @bind="currentEngine.factory_id_2" />
- </div>
- </div>
- <div class="modal-footer">
- <button type="button" class="btn btn-secondary" @onclick="CloseModal">取消</button>
- <button type="button" class="btn btn-primary" @onclick="SaveEngine">保存</button>
- </div>
- </div>
- </div>
- </div>
- @code {
- private List<TEngine> engines = new();
- private TEngine currentEngine = new();
- private string modalTitle = "";
- private bool isEditMode = false;
- private bool showModal = false;
- protected override async Task OnInitializedAsync()
- {
- await LoadEngines();
- }
- private async Task LoadEngines()
- {
- engines = await nozzleService.GetEnginesWithDetailsAsync();
- StateHasChanged();
- }
- private void ShowCreateModal()
- {
- currentEngine = new TEngine();
- modalTitle = "添加油机";
- isEditMode = false;
- showModal = true;
- StateHasChanged();
- }
- private void ShowEditModal(TEngine engine)
- {
- currentEngine = new TEngine
- {
- EngineId = engine.EngineId,
- factory_id = engine.factory_id,
- factory_id_2 = engine.factory_id_2
- };
- modalTitle = "编辑油机";
- isEditMode = true;
- showModal = true;
- StateHasChanged();
- }
- private void CloseModal()
- {
- showModal = false;
- StateHasChanged();
- }
- private async Task SaveEngine()
- {
- try
- {
- if (isEditMode)
- {
- await nozzleService.UpdateEngineAsync(currentEngine);
- }
- else
- {
- await nozzleService.CreateEngineAsync(currentEngine);
- }
-
- CloseModal();
- await LoadEngines();
- }
- catch (Exception ex)
- {
- await JSRuntime.InvokeVoidAsync("alert", $"操作失败: {ex.Message}");
- }
- }
- private async Task DeleteEngine(int id)
- {
- var confirmed = await JSRuntime.InvokeAsync<bool>("confirm", "确定要删除这个油机吗?");
- if (confirmed)
- {
- try
- {
- await nozzleService.DeleteEngineAsync(id);
- await LoadEngines();
- }
- catch (Exception ex)
- {
- await JSRuntime.InvokeVoidAsync("alert", $"删除失败: {ex.Message}");
- }
- }
- }
- private void ShowBoards(int engineId)
- {
- navigationManager.NavigateTo($"/setting/boardsetting/{engineId}");
- }
- } *@
|