feat: 净菜订单/外售功能增强及膳食宝塔样式重构

- prod-clean-order: 新增订单类型列/筛选与食谱快速创建订单弹窗,加工类型重命名
- sup-clean-external: 新增预定配送时间列/表单字段/详情抽屉展示
- eat-nutrition: 膳食宝塔重构(饮水置底+横排样式)+新增食物分类列表
- CHANGELOG: 追加 2026-07-24 后台营养管理变更记录

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
fengpu
2026-07-24 10:45:41 +08:00
co-authored by Claude Opus 4.7
parent 6bbdbabc7b
commit 1e7c5a1f19
4 changed files with 350 additions and 44 deletions
@@ -115,6 +115,34 @@
.t-result.ok { background: rgba(82,196,26,0.15); color: #389e0d; }
.t-result.warn { background: rgba(250,140,22,0.15); color: #d46b08; }
.t-result.over { background: rgba(245,34,45,0.15); color: #cf1322; }
/* 饮水极矮塔层:单行横排 */
.tower-water { padding: 2px 10px !important; flex-direction: row !important; gap: 8px; }
.tower-water .t-row1 { margin-bottom: 0 !important; }
.tower-water .t-icon { font-size: 11px; }
.tower-water .t-name { font-size: 10px; }
.tower-water .t-row2 { font-size: 9px; }
/* 宝塔下方分类列表 */
.tower-list { margin-top: 12px; border-top: 1px solid #e0e0e0; padding-top: 10px; }
.tower-list-table { width: 100%; border-collapse: collapse; }
.tower-list-table th {
font-size: 11px; color: #999; font-weight: 500; text-align: left;
padding: 4px 0 6px; border-bottom: 1px solid #f0f0f0;
}
.tower-list-table th:last-child, .tower-list-table th:nth-child(2) { text-align: right; }
.tower-list-table td {
font-size: 12px; color: #333; padding: 7px 0;
border-bottom: 0.5px solid #fafafa;
}
.tower-list-table td:last-child, .tower-list-table td:nth-child(2) { text-align: right; }
.tower-list-table .tl-status {
display: inline-block; width: 6px; height: 6px; border-radius: 50%; margin-right: 4px;
}
.tl-status.low { background: #1677ff; }
.tl-status.ok { background: #52c41a; }
.tl-status.warn { background: #fa8c16; }
.tl-status.over { background: #f5222d; }
.tower-list-table .tl-val { font-weight: 600; }
.tower-list-table .tl-rec { color: #999; font-size: 11px; }
/* 底部 Tab 栏 */
.tab-bar {
height: 50px; background: #fff; border-top: 0.5px solid #e8e8e8;
@@ -292,31 +320,50 @@
<div class="t-row1"><span class="t-icon">🧂</span><span class="t-name" style="color:#ad6800">烹调油盐</span></div>
<div class="t-row2"><span class="t-rec">&lt;25g 盐&lt;5g</span><span class="t-actual" style="color:#d46b08">偏高</span><span class="t-result warn">注意</span></div>
</div>
<!-- 第2层:饮水 -->
<div class="tower-level" style="width:44%;background:#e6f7ff">
<div class="t-row1"><span class="t-icon">💧</span><span class="t-name" style="color:#0050b3">饮水</span></div>
<div class="t-row2"><span class="t-rec">推荐 1500ml+</span><span class="t-actual" style="color:#d46b08">实际 800ml</span><span class="t-result warn">不足</span></div>
</div>
<!-- 第3层:奶豆坚果 -->
<div class="tower-level" style="width:56%;background:#fff7e6">
<!-- 第2层:奶豆坚果 -->
<div class="tower-level" style="width:44%;background:#fff7e6">
<div class="t-row1"><span class="t-icon">🥛</span><span class="t-name" style="color:#ad6800">奶豆坚果</span></div>
<div class="t-row2"><span class="t-rec">推荐 25~35g</span><span class="t-actual" style="color:#d46b08">实际 20g</span><span class="t-result warn">不足</span></div>
</div>
<!--4层:畜禽鱼蛋 -->
<div class="tower-level" style="width:68%;background:#f0fbe4">
<!--3层:畜禽鱼蛋 -->
<div class="tower-level" style="width:56%;background:#f0fbe4">
<div class="t-row1"><span class="t-icon">🥩</span><span class="t-name" style="color:#135200">畜禽鱼蛋</span></div>
<div class="t-row2"><span class="t-rec">推荐 120~200g</span><span class="t-actual" style="color:#389e0d">实际 168g</span><span class="t-result ok">适量</span></div>
</div>
<!--5层:蔬菜水果 -->
<div class="tower-level" style="width:82%;background:#e8f5d6">
<!--4层:蔬菜水果 -->
<div class="tower-level" style="width:68%;background:#e8f5d6">
<div class="t-row1"><span class="t-icon">🥦</span><span class="t-name" style="color:#135200">蔬菜水果</span></div>
<div class="t-row2"><span class="t-rec">推荐 300~500g</span><span class="t-actual" style="color:#389e0d">实际 280g</span><span class="t-result ok">适量</span></div>
</div>
<!--6层(塔基):谷薯类 -->
<div class="tower-level" style="width:96%;background:#e0f0c8;border-radius:0 0 8px 8px">
<!--5层:谷薯类 -->
<div class="tower-level" style="width:82%;background:#e0f0c8">
<div class="t-row1"><span class="t-icon">🌾</span><span class="t-name" style="color:#135200">谷薯类</span></div>
<div class="t-row2"><span class="t-rec">推荐 250~400g</span><span class="t-actual" style="color:#389e0d">实际 186g</span><span class="t-result ok">适量</span></div>
</div>
<!-- 第6层(塔基):饮水(极矮) -->
<div class="tower-level tower-water" style="width:96%;background:#e6f7ff;border-radius:0 0 8px 8px">
<div class="t-row1"><span class="t-icon">💧</span><span class="t-name" style="color:#0050b3">饮水</span></div>
<div class="t-row2"><span class="t-rec">推荐 1500~1700ml</span><span class="t-actual" style="color:#d46b08">实际 800ml</span><span class="t-result warn">不足</span></div>
</div>
</div>
<!-- 宝塔分类列表 -->
<div class="tower-list">
<table class="tower-list-table">
<thead><tr><th>食物名称</th><th>推荐</th><th>实际</th></tr></thead>
<tbody>
<tr><td><span class="tl-status warn"></span>烹调油</td><td class="tl-rec">&lt;25g</td><td class="tl-val" style="color:#d46b08">28g</td></tr>
<tr><td><span class="tl-status over"></span></td><td class="tl-rec">&lt;5g</td><td class="tl-val" style="color:#cf1322">6g</td></tr>
<tr><td><span class="tl-status warn"></span>奶及奶制品</td><td class="tl-rec">300g</td><td class="tl-val" style="color:#d46b08">200g</td></tr>
<tr><td><span class="tl-status warn"></span>大豆及坚果</td><td class="tl-rec">25~35g</td><td class="tl-val" style="color:#d46b08">20g</td></tr>
<tr><td><span class="tl-status ok"></span>畜禽肉</td><td class="tl-rec">40~75g</td><td class="tl-val" style="color:#389e0d">68g</td></tr>
<tr><td><span class="tl-status ok"></span>鱼虾类</td><td class="tl-rec">40~75g</td><td class="tl-val" style="color:#389e0d">55g</td></tr>
<tr><td><span class="tl-status ok"></span>蛋类</td><td class="tl-rec">40~50g</td><td class="tl-val" style="color:#389e0d">45g</td></tr>
<tr><td><span class="tl-status low"></span>蔬菜类</td><td class="tl-rec">300~500g</td><td class="tl-val" style="color:#1677ff">200g</td></tr>
<tr><td><span class="tl-status low"></span>水果类</td><td class="tl-rec">200~350g</td><td class="tl-val" style="color:#1677ff">80g</td></tr>
<tr><td><span class="tl-status low"></span>谷薯类</td><td class="tl-rec">250~400g</td><td class="tl-val" style="color:#389e0d">186g</td></tr>
<tr><td><span class="tl-status warn"></span>饮水</td><td class="tl-rec">1500~1700ml</td><td class="tl-val" style="color:#d46b08">800ml</td></tr>
</tbody>
</table>
</div>
</div>
</div>