69 lines
3.5 KiB
HTML
69 lines
3.5 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>规则引擎 - 智能排产系统</title>
|
|
<link rel="stylesheet" href="../css/common.css">
|
|
</head>
|
|
<body>
|
|
<div id="app">
|
|
<header class="header" id="header"></header>
|
|
<div class="body">
|
|
<aside class="sidebar" id="sidebar"></aside>
|
|
<main class="main">
|
|
<h1 class="page-title">规则引擎</h1>
|
|
<p class="page-desc">配置排序规则、分配规则和调度规则,规则引擎用于快速生成初始可行解。</p>
|
|
<div class="row">
|
|
<div class="col-4">
|
|
<div class="card">
|
|
<div class="card-header">排序规则</div>
|
|
<div class="card-body">
|
|
<div class="form-group"><label>默认排序规则</label><select id="sortRule" class="w-full"><option value="EDD">交期优先 (EDD)</option><option value="HPF">优先级优先 (HPF)</option><option value="FIFO">先进先出 (FIFO)</option><option value="SPT">最短加工时间 (SPT)</option><option value="LPT">最长加工时间 (LPT)</option></select></div>
|
|
<div class="form-group"><label>组合排序</label><textarea id="sortCombo" rows="3" class="w-full">priority ASC, deliveryDate ASC</textarea></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-4">
|
|
<div class="card">
|
|
<div class="card-header">分配规则</div>
|
|
<div class="card-body">
|
|
<div class="form-group"><label>默认分配规则</label><select id="allocRule" class="w-full"><option value="PREFERRED">首选产线</option><option value="LOAD_BALANCE">最小负荷</option><option value="EARLIEST">最早可用</option><option value="CHEAPEST">成本最低</option></select></div>
|
|
<div class="form-group"><label>负荷均衡阈值 (%)</label><input id="loadThreshold" type="number" value="85" class="w-full"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-4">
|
|
<div class="card">
|
|
<div class="card-header">调度规则</div>
|
|
<div class="card-body">
|
|
<div class="form-group"><label>默认调度方向</label><select id="schedRule" class="w-full"><option value="FORWARD">前向调度</option><option value="BACKWARD">后向调度</option><option value="BIDIRECTIONAL">双向调度</option><option value="TOC">瓶颈调度</option></select></div>
|
|
<div class="form-group"><label>交期缓冲系数</label><input id="bufferRatio" type="number" step="0.05" value="0.95" class="w-full"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<button class="btn btn-primary" onclick="saveRules()">保存规则配置</button>
|
|
</main>
|
|
</div>
|
|
</div>
|
|
<script src="../js/data.js"></script>
|
|
<script src="../js/common.js"></script>
|
|
<script>
|
|
initPage('rule-engine');
|
|
function saveRules() {
|
|
apsData.scheduleParams.ruleConfig = {
|
|
sortRule: document.getElementById('sortRule').value,
|
|
sortCombo: document.getElementById('sortCombo').value,
|
|
allocRule: document.getElementById('allocRule').value,
|
|
loadThreshold: Number(document.getElementById('loadThreshold').value),
|
|
schedRule: document.getElementById('schedRule').value,
|
|
bufferRatio: Number(document.getElementById('bufferRatio').value)
|
|
};
|
|
apsData.$utils.save(apsData);
|
|
showToast('保存成功', '规则引擎配置已更新');
|
|
}
|
|
</script>
|
|
</body>
|
|
</html>
|