{{ header_eyebrow }}
+Asset Summary
+{{ asset.asset_type }} · {{ asset.program or 'No program assigned' }}
+历史记录
+| Time | +Entry | +Labels | +Action | +
|---|---|---|---|
|
+ {{ entry.timestamp }}
+ {% if entry.end_timestamp %}
+ → {{ entry.end_timestamp }}
+ {% endif %}
+ {{ entry.location }}
+ |
+
+ {{ entry.title }}
+ {{ entry.mode_label }} · {{ entry.status_label }}
+ {{ entry.summary }}
+ |
+
+ {% if entry.state_labels or entry.mission_labels %}
+
+ {% for label in entry.state_labels %}{{ label }}{% endfor %}
+ {% for label in entry.mission_labels %}{{ label }}{% endfor %}
+
+ {% else %}
+ -
+ {% endif %}
+ |
+
+
+ 编辑条目
+
+ |
+
调整起止时间,或者重置筛选后重试。
+ {% else %} +先为这个资产新增一个 Event Point 或 State Interval。
+ {% endif %} +资产日志
+删除后不可恢复,请谨慎操作。
+ +Actions
+| Asset | +Type | +Program | +Current Event | +Next Event | +Entries | +Action | +
|---|---|---|---|---|---|---|
| + {{ row.asset.name }} + | +{{ row.asset.asset_type }} | +{{ row.asset.program or '-' }} | +{{ row.current_event }} | +{{ row.next_event }} | +{{ row.entry_count }} | ++ + | +
调整筛选条件或重置后重试。
+Communication
+支持分页、筛选、排序和快速编辑。
+Actions
+| Part | +Display | +Type | +Range (km) | +Mass (t) | +Idle (W) | +Source | +Flags | +Action | +
|---|---|---|---|---|---|---|---|---|
| {{ row.part_name }} | +{{ row.display_name or '-' }} | +{{ row.antenna_type or '-' }} | +{{ row.range_km if row.range_km is not none else '-' }} | +{{ row.mass_t if row.mass_t is not none else '-' }} | +{{ row.idle_power_watt if row.idle_power_watt is not none else '-' }} | +{{ row.source or '-' }} | ++ {% if row.is_active %}Active{% else %}-{% endif %} + {% if row.is_deployable %} / Deployable{% endif %} + {% if row.is_feeder %} / Feeder{% endif %} + | +
+
+ 编辑
+
+
+ |
+
调整筛选条件或重置后重试。
+项目起步版本
++ 这个骨架现在已经提供 Flask 应用、规范化数据库模型、Docker 运行基线、Excel 巡检脚本, + 以及第一块可直接使用的 Fuel Chart 页面工具。 +
+关键风险
+{{ duplicate_conflicts }}
+组 Engine + Config Name 在原始工作簿中存在重复,不能作为数据库硬唯一键。
+即便补上 Fuel Type,仍然还有 {{ duplicate_conflicts_with_fuel }} 组冲突。
+建模决策
+只放经 Excel 校验后稳定的字段:Engine、Name、Cycle、Size、entry Cost。
+放所有配置级字段:Fuel Type、Work Env、ISP、推力、TVC、价格、点火次数、Tech、备注。
+所有核心表使用 UUID 主键,导入时保留原始自然键,并单独输出重复告警。
+不先入库,先作为常量配置和 API 小工具,后面再看是否要抽成字典表。
+模块状态
+{{ module.description }}
+ {% if module.endpoint %} + 立即打开 + {% else %} + 下一阶段实现 + {% endif %} +Engine Create
+创建一个新的引擎家族,并同时录入第一条配置项。
+Engine Detail
+查看家族级字段,以及该引擎下全部配置项的关键性能参数。
+Family
+Variants
+| Config | +Fuel | +Env | +SL Thrust | +Vac Thrust | +SL ISP | +Vac ISP | +Mass | +TWR | +Price | +Ignitions | +Mod | +Tech | +
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
+ {{ variant.config_name or "Default" }}
+ {% if variant.config_note %}
+ {{ variant.config_note }}
+ {% endif %}
+ |
+ {{ variant.fuel_type }} | +{{ variant.work_env or "-" }} | +{{ row.sl_thrust_kn|fmt_decimal }} | +{{ row.vac_thrust_kn|fmt_decimal }} | +{{ variant.sl_isp|fmt_decimal }} | +{{ variant.vac_isp|fmt_decimal }} | +{{ variant.mass_t|fmt_decimal }} | +{{ variant.twr|fmt_decimal }} | +{{ variant.price_kd if variant.price_kd is not none else "-" }} | ++ {% if variant.has_unlimited_ignitions %} + Unlimited + {% else %} + {{ variant.ignitions if variant.ignitions is not none else "-" }} + {% endif %} + | +{{ variant.mod_source or "-" }} | +{{ variant.tech_required or "-" }} | +
Engine Edit
+支持家族字段编辑、配置项新增、配置项删除,以及整机删除。
+Add Variant
+Engine Catalog
+宽屏高密度视图,支持分页、燃料/循环/Mod 筛选,并按推力或比冲排序。
+Results
+每页 30 条,单行压缩并补充海平面/真空核心参数。
+| + + | +Cycle | +Fuel | +Mod | +Configs | ++ + | ++ + | ++ + | ++ + | ++ + | +TWR | +Action | +
|---|---|---|---|---|---|---|---|---|---|---|---|
|
+ {{ row.family.engine_name }}
+ {{ row.family.part_name or "No part name" }}
+ |
+ {{ row.family.cycle or "-" }} | +{{ row.fuel_types|join(', ') if row.fuel_types else "-" }} | +{{ row.mod_sources|join(', ') if row.mod_sources else "-" }} | +{{ row.config_count }} | +{{ row.mass_t|fmt_decimal }} | +{{ row.sl_thrust_kn|fmt_decimal }} | +{{ row.vac_thrust_kn|fmt_decimal }} | +{{ row.sl_isp|fmt_decimal }} | +{{ row.vac_isp|fmt_decimal }} | +{{ row.twr|fmt_decimal }} | ++ + | +
调整筛选条件,或者重置后重新查看全部引擎。
+Fuel Chart 工具化
++ 系数直接来自工作簿第二行。输入升数可换算吨位,输入吨位可反推不同燃料对应的体积。 +
+换算输入
+换算结果
+当前系数
+{{ factor.tonnes_per_liter }} t / L
+Asset Summary
+{{ asset.asset_type }} · {{ asset.program }}
+History
++ {{ entry.timestamp }} + {% if entry.end_timestamp %} + → {{ entry.end_timestamp }} + {% endif %} + · {{ entry.location }} +
+ +{{ entry.summary }}
+Mission Label
+{{ group.status_label }} · {{ group.asset_count }} 个 Asset · {{ group.entry_count }} 条日志
+| Time | +Asset | +Entry | +Location | +Action | +
|---|---|---|---|---|
|
+ {{ entry.timestamp }}
+ {% if entry.end_timestamp %}
+ → {{ entry.end_timestamp }}
+ {% endif %}
+ {{ entry.status_label }}
+ |
+
+ {{ entry.asset_name }}
+ {{ entry.asset_type }}
+ |
+
+ {{ entry.title }}
+ {{ entry.mode_label }}
+ {{ entry.summary }}
+ {% if entry.state_labels or entry.mission_labels %}
+
+ {% for label in entry.state_labels %}{{ label }}{% endfor %}
+ {% for label in entry.mission_labels %}{{ label }}{% endfor %}
+
+ {% endif %}
+ |
+ {{ entry.location }} | ++ + | +
调整 Asset、时间、Mission Label、地点筛选,或者清空 Mission Label 搜索后重试。
+地点分组
+{{ group.subtitle }}
+{{ item.asset_type }}
+状态分组
+{{ item.asset_type }}
+{{ item.summary }}
+ +Current Status: {{ row.current_state }}
+ + +{{ eyebrow }}
+删除后不可恢复,请谨慎操作。
+ +Tank
+支持分页、筛选、排序和快速编辑。
+Actions
+| Tank | +Fuel | +Vehicle | +Volume (L) | +Dry (t) | +Fuel (t) | +Wet (t) | +Ratio | +Source | +Action | +
|---|---|---|---|---|---|---|---|---|---|
| {{ row.tank_name }} | +{{ row.fuel_type or '-' }} | +{{ row.vehicle_name or '-' }} | +{{ row.tank_volume_l if row.tank_volume_l is not none else '-' }} | +{{ row.dry_mass_t if row.dry_mass_t is not none else '-' }} | +{{ row.fuel_mass_t if row.fuel_mass_t is not none else '-' }} | +{{ row.wet_mass_t if row.wet_mass_t is not none else '-' }} | +{{ row.mass_ratio if row.mass_ratio is not none else '-' }} | +{{ row.source or '-' }} | +
+
+ 编辑
+
+
+ |
+
调整筛选条件或重置后重试。
+Vehicle
+支持分页、来源筛选、成本排序与编辑。
+Actions
+| Vehicle | +Launch Price | +Source | +Action | +
|---|---|---|---|
| {{ row.vehicle_name }} | +{{ row.launch_price if row.launch_price is not none else '-' }} | +{{ row.source or '-' }} | +
+
+ 编辑
+
+
+ |
+
调整筛选条件或重置后重试。
+Single Asset Detail
+这页不是普通日志表,而是当前状态、未来计划、历史记录和录入入口的组合页。这里用 XH-02 Taibai 作为样例对象。
+2060-03-12 09:00
+Current state block and highlighted entry are both interpreted against this clock.
+Asset Summary
+Exploration Mothership · Mars Expedition Program
+Current Derived State
+History
+Event Point 和 State Interval 混排,但视觉上明确区分。
+Core transfer spine and habitat ring unloaded for final assembly at Star Port.
+Flight certification signed. Taibai was cleared for Mars transport duties.
+Departure from Earth with full crew and descent stack attached. This is the kind of interval that should drive board state during the whole travel window.
+Insertion burn nominal. Crew descent staging began next day.
+Received Mars Expedition 1 return crew after descent vehicle separation.
+Carrying structural truss and greenhouse kit; 105 km/s, 31-day transition. This interval is the one currently lighting up Status Board.
+Planned capture burn and cargo handoff to surface fleet.
+Standalone Review Build
+这是一套独立静态原型,不依赖 Flask 模板渲染。你现在双击这些 HTML 文件,浏览器里看到的就是页面设计本身,而不是 Jinja 源码。
+2060-03-12 09:00
+原型里所有当前状态、未来事件和时间线高亮,都围绕这个手动设置的 Simulation Time 进行解释。
+Mission Center
+首页主区域不再是页面目录,而是更像值班台,优先告诉你当前系统里什么任务正在跑。
+Preparing mission center feed
+This list will update relative to the selected clock.
+Attention Queue
+这一栏更接近任务队列,不是简单的未来事件列表。它应该告诉你“值班时下一步要盯什么”。
+Preparing next actions
+This queue will show near-term actions relative to the selected clock.
+Operational Shortcuts
+四个详细页面仍然保留,但在首页里它们应该是任务中心的工作入口,而不是首页主内容本身。
+Location-first Board
+这张板子和 Status Board 是并列关系,不是一个页面里的切换模式。它更适合回答“Earth System 现在有什么、Mars System 现在有什么”。
+2060-03-12 09:00
+Grouping is based on current location hierarchy. Status still appears on each card so the operational meaning remains visible.
+Location Group
+Ports, orbital stations, and near-Earth transfer lanes.
+Station
+Low Kerbin Orbit. Continuous habitation and logistics hub.
+Shuttle
+Star Port. Refit phase for Jupiter relay deployment mission.
+Shuttle
+LKO transfer corridor. Planned crew rotation for Lingxiao Station.
+Location Group
+Orbital operations and deployed surface infrastructure around Mars.
+Surface Outpost
+Primary surface site. Habitat expansion, ISRU staging, and logistics intake point.
+Exploration Mothership
+Mars transfer lane. Support mission inbound for Mars One Campus surface expansion.
+Location Group
+Reserved for future hierarchy like Jupiter System, relay chains, and transit corridors.
+Change the simulation time to inspect a different period.
+${event.scope}
+No State Interval covers the selected clock
+${item.assetType}
+${item.note}
+Nothing falls into the current operational window
+${item.asset}
+${item.summary}
+${asset.type}
+${asset.note}
+Try another search or filter combination
+${asset.type}
+Add assets from the search results to build the current timeline focus set.
+Current State Board
+这个页面只回答一件事:在当前 Simulation Time 下,每个 Asset 正处于哪个状态、在哪里、在做什么,以及下一个关键事件是什么。
+2060-03-12 09:00
+Current status is derived from active State Interval. Planned events remain visible on the board.
+State Group
+Assets currently travelling between systems or operational nodes.
+Exploration Mothership
+31-day transition carrying structural truss, greenhouse kit, and support consumables for Mars One Campus Alpha.
+Shuttle
+Planned departure with 10-crew manifest for Lingxiao Station rotation and medical cargo transfer.
+State Group
+Stationary orbital assets and docked support craft.
+Station
+Expedition 15 currently onboard. Crew handover prep and life-support reserve balancing underway.
+Cargo Shuttle
+Food, EVA packs, filter cartridges, and station spares are already unloaded. Return trash loading remains.
+State Group
+Idle, refit, maintenance, and deployed surface infrastructure.
+Shuttle
+Main engine refurbishment at bay 4. Payload integration queued after avionics test completion.
+Surface Outpost
+Surface crew awaiting structural truss shipment, greenhouse package, and two new power skids.
+Multi-Asset Range View
+这里是甘特式原型。State Interval 用长条表示,Event Point 用节点表示,当前生效中的状态段会高亮。
+2060-03-12 09:00
+Current active state segment is highlighted relative to 2060-03-12 09:00.
+Asset Selection
+如果以后 Asset 很多,就不能把所有对象直接平铺出来。所以这里改成一个更接近“选择工作区”的原型。
+Search Results
+Preparing searchable asset catalog
+Selected Assets
+Exploration Mothership
+Station
+Surface Outpost
+Shuttle
+Shuttle
+Cargo Shuttle
+