refactor(web): split modals into core and feeder unit-modal

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
caoqianming 2026-04-17 08:12:10 +08:00
parent c3037e52cf
commit 56e404555b
2 changed files with 186 additions and 0 deletions

135
web/core/html/modals.html Normal file
View File

@ -0,0 +1,135 @@
<div class="modal hidden" id="equipmentModal">
<div class="modal-content modal-sm">
<div class="modal-head">
<h3>设备配置</h3>
<button class="secondary" id="closeEquipmentModal">X</button>
</div>
<form id="equipmentForm" class="form">
<input type="hidden" id="equipmentId" />
<label>
所属单元
<select id="equipmentUnitId"></select>
</label>
<label>
编码
<input id="equipmentCode" required />
</label>
<label>
名称
<input id="equipmentName" required />
</label>
<label>
类型
<select id="equipmentKind"></select>
</label>
<label>
说明
<input id="equipmentDescription" />
</label>
<div class="form-actions">
<button type="button" class="secondary" id="equipmentReset">清空</button>
<button type="submit" id="equipmentSubmit">保存</button>
</div>
</form>
</div>
</div>
<div class="modal hidden" id="pointModal">
<div class="modal-content">
<div class="modal-head">
<h3>选择节点创建点位</h3>
<button class="secondary" id="closeModal">X</button>
</div>
<div class="toolbar">
<select id="pointSourceSelect"></select>
<div class="muted" id="pointSourceNodeCount">Nodes: 0</div>
<button id="browseNodes">加载节点</button>
<button class="secondary" id="refreshTree">刷新树</button>
</div>
<div class="tree" id="nodeTree"></div>
<div class="modal-foot">
<div class="muted" id="selectedCount">已选中 0 个节点</div>
<button id="createPoints">创建设备点位</button>
</div>
</div>
</div>
<div class="modal hidden" id="sourceModal">
<div class="modal-content modal-sm">
<div class="modal-head">
<h3>Source 配置</h3>
<button class="secondary" id="closeSourceModal">X</button>
</div>
<form id="sourceForm" class="form">
<input type="hidden" id="sourceId" />
<label>
名称
<input id="sourceName" required />
</label>
<label>
Endpoint
<input id="sourceEndpoint" placeholder="opc.tcp://host:port" required />
</label>
<label class="check-row">
<input type="checkbox" id="sourceEnabled" checked />
<span>启用</span>
</label>
<div class="form-actions">
<button type="button" class="secondary" id="sourceReset">清空</button>
<button type="submit" id="sourceSubmit">保存</button>
</div>
</form>
</div>
</div>
<div class="modal hidden" id="pointBindingModal">
<div class="modal-content modal-sm">
<div class="modal-head">
<h3>绑定点位</h3>
<button class="secondary" id="closePointBindingModal">X</button>
</div>
<form id="pointBindingForm" class="form">
<input type="hidden" id="bindingPointId" />
<label>
点位
<input id="bindingPointName" disabled />
</label>
<label>
设备
<select id="bindingEquipmentId"></select>
</label>
<label>
角色模板
<select id="bindingSignalRole"></select>
</label>
<div class="form-actions">
<button type="button" class="secondary" id="clearPointBinding">清空绑定</button>
<button type="submit" id="savePointBinding">保存</button>
</div>
</form>
</div>
</div>
<div class="modal hidden" id="batchBindingModal">
<div class="modal-content modal-sm">
<div class="modal-head">
<h3>批量绑定点位</h3>
<button class="secondary" id="closeBatchBindingModal">X</button>
</div>
<form id="batchBindingForm" class="form">
<div class="muted" id="batchBindingSummary">已选中 0 个点位</div>
<label>
设备
<select id="batchBindingEquipmentId"></select>
</label>
<label>
角色模板
<select id="batchBindingSignalRole"></select>
</label>
<div class="form-actions">
<button type="button" class="secondary" id="clearBatchBinding">清空设备和角色</button>
<button type="submit" id="saveBatchBinding">批量保存</button>
</div>
</form>
</div>
</div>

View File

@ -0,0 +1,51 @@
<div class="modal hidden" id="unitModal">
<div class="modal-content modal-sm">
<div class="modal-head">
<h3>控制单元配置</h3>
<button class="secondary" id="closeUnitModal">X</button>
</div>
<form id="unitForm" class="form">
<input type="hidden" id="unitId" />
<label>
编码
<input id="unitCode" required />
</label>
<label>
名称
<input id="unitName" required />
</label>
<label>
说明
<input id="unitDescription" />
</label>
<label class="check-row">
<input type="checkbox" id="unitEnabled" checked />
<span>启用</span>
</label>
<label>
投煤运行时间(秒)
<input id="unitRunTimeSec" type="number" min="0" value="0" />
</label>
<label>
投煤停止时间(秒)
<input id="unitStopTimeSec" type="number" min="0" value="0" />
</label>
<label>
投煤累计阈值(秒)
<input id="unitAccTimeSec" type="number" min="0" value="0" />
</label>
<label>
布料机运行时间(秒)
<input id="unitBlTimeSec" type="number" min="0" value="0" />
</label>
<label class="check-row">
<input type="checkbox" id="unitManualAck" checked />
<span>故障恢复后需人工确认</span>
</label>
<div class="form-actions">
<button type="button" class="secondary" id="unitReset">清空</button>
<button type="submit" id="unitSubmit">保存</button>
</div>
</form>
</div>
</div>