defence_strong_enemy/target/classes/templates/FuelAction/action_receive.html
2025-07-23 16:29:53 +08:00

306 lines
13 KiB
HTML

<!doctype html>
<!--
* Tabler - Premium and Open Source dashboard template with responsive and high quality UI.
* @version 1.0.0-beta19
* @link https://tabler.io
* Copyright 2018-2023 The Tabler Authors
* Copyright 2018-2023 codecalm.net Paweł Kuna
* Licensed under MIT (https://github.com/tabler/tabler/blob/master/LICENSE)
-->
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
<title></title>
<div th:replace="fragments/include :: head_links"></div>
<style>
.mermaid {
visibility: hidden;
}
body {
font-family: sans-serif;
padding: 20px;
}
input {
margin-bottom: 20px;
padding: 8px;
width: 250px;
font-size: 16px;
}
</style>
</head>
<body>
<div class="page">
<input type="hidden" id="baseUrl" th:value="@{/}"/>
<!-- Sidebar -->
<aside class="navbar navbar-vertical navbar-expand-lg" data-bs-theme="dark">
<div class="container-fluid">
<div class="collapse navbar-collapse" id="sidebar-menu">
<div th:replace="fragments/menu :: menuList(${user.menuList})"></div>
</div>
</div>
</aside>
<!-- Navbar -->
<header class="navbar navbar-expand-md d-none d-lg-flex d-print-none">
<div class="container-xl" th:insert="fragments/header">
</div>
</header>
<div class="page-wrapper">
<div class="page-header d-print-none">
<div class="container-xl">
<div class="container-xl">
<div class="row g-2 align-items-center">
<div class="col">
<h2 class="page-title" th:text="${user.pageTitle}">
</h2>
</div>
</div>
</div>
</div>
</div>
<!-- Page body -->
<div class="page-body">
<div class="container-xl">
<div class="row row-cards">
<div class="col-lg-12">
<div class="card">
<div class="card-header">
<h3 class="card-title">油料接收模型</h3>
<div class="card-actions">
<a href="#" class="btn btn-primary"
onclick="openDialog('dialog_fuel_action_receive')">
<!-- Download SVG icon from http://tabler-icons.io/i/plus -->
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"
viewBox="0 0 24 24" fill="currentColor"
class="icon icon-tabler icons-tabler-filled icon-tabler-location">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<path d="M20.891 2.006l.106 -.006l.13 .008l.09 .016l.123 .035l.107 .046l.1 .057l.09 .067l.082 .075l.052 .059l.082 .116l.052 .096c.047 .1 .077 .206 .09 .316l.005 .106c0 .075 -.008 .149 -.024 .22l-.035 .123l-6.532 18.077a1.55 1.55 0 0 1 -1.409 .903a1.547 1.547 0 0 1 -1.329 -.747l-.065 -.127l-3.352 -6.702l-6.67 -3.336a1.55 1.55 0 0 1 -.898 -1.259l-.006 -.149c0 -.56 .301 -1.072 .841 -1.37l.14 -.07l18.017 -6.506l.106 -.03l.108 -.018z"/>
</svg>
执行
</a>
</div>
</div>
<div class="card-body">
<div class="mermaid">
flowchart TD
A[开始] --> B{接收模式判定}
B --> |战时应急| C[快速质检,直输前线油库]
B --> |平时训练| D[全项目监测分级存储]
C & D --> E[动态容量监测]
E --> F{储油灌余量>油料总需求量 ?}
F --> |Yes| G[启动自动卸油+自动计量]
F --> |No| H[提示不足,申请跨区调拨]
G --> I[更新储设施 更新油量]
I & H --> 结束
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="footer footer-transparent d-print-none">
<div class="container-xl" th:insert="fragments/footer">
</div>
</footer>
</div>
</div>
<div class="modal modal-blur fade" id="dialog_fuel_action_receive" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-full-width modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">油料接收模型</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"
onclick="closeDialog('dialog_fuel_action_receive')"></button>
</div>
<div class="modal-body">
<div class="row g-4">
<div class="col-4 row-cards">
<div class="card">
<div class="card-header">
<div class="card-title">保障部(分)队/基地油科保障力量(接收)</div>
</div>
<div class="card-body">
<!--接收设施信息-->
<div th:replace="fragments/dialog ::receive_facilities_dialog"></div>
</div>
</div>
<div class="card">
<div class="card-header">
<div class="card-title">油料品类/数量(接收)</div>
</div>
<div class="card-body">
<!--接收油品类型信息-->
<div th:replace="fragments/dialog ::fuel_type_List_dialog"></div>
</div>
</div>
</div>
<div class="col-4 row-cards">
<form id="_actionForm">
<div class="card">
<div class="card-header">
<div class="card-title">输入参数信息</div>
<div class="card-actions">
<a href="#" class="btn btn-primary" onclick="goAction()">
提交参数
</a>
</div>
</div>
<div class="card-body">
<input type="hidden" name="action_id" id="action_id" value="1">
<div class="mb-4 ">
<label class="col-6 col-form-label required">战备状态</label>
<div class="col">
<select class="form-select" name="status" id="status" onchange="warStatusChange(this.value)">
<option value="">选择</option>
<option value="training">平时训练</option>
<option value="battle">战时应急</option>
</select>
<div class="invalid-feedback" id="status_error_tip"></div>
</div>
</div>
<div th:replace="fragments/dialog ::fuel_startTime_dialog"></div>
<div class="mb-3 ">
<label class="col-6 col-form-label required">作业线数量</label>
<div class="col">
<input type="text" class="form-control" placeholder="" value="1" name="worker"
id="worker">
<div class="invalid-feedback" id="worker_error_tip"></div>
</div>
</div>
<div class="mb-3 ">
<label class="col-6 col-form-label required">验收时间标准(分钟)</label>
<div class="col">
<input type="text" class="form-control" placeholder="" readonly value="1"
name="inspectTime" id="inspectTime">
<div class="invalid-feedback" id="inspectTime_error_tip"></div>
</div>
</div>
<div class="mb-3 ">
<label class="col-6 col-form-label required">质检时间标准(分钟)</label>
<div class="col">
<input type="text" class="form-control " placeholder="" readonly value="1"
name="qualityTime" id="qualityTime">
<div class="invalid-feedback" id="qualityTime_error_tip"></div>
</div>
</div>
<div class="mb-3 ">
<label class="col-6 col-form-label required">计量时间标准(分钟)</label>
<div class="col">
<input type="text" class="form-control" placeholder="" value="1" readonly
name="measureTime" id="measureTime">
<div class="invalid-feedback" id="measureTime_error_tip"></div>
</div>
</div>
<div class="mb-3 ">
<label class="col-6 col-form-label required">计算间隔时间(小时)</label>
<div class="col">
<input type="text" class="form-control" placeholder="" value="1"
name="intervalTime" id="intervalTime">
<div class="invalid-feedback" id="intervalTime_error_tip"></div>
</div>
</div>
</div>
</div>
</form>
</div>
<div class="col-4 row-cards">
<div th:replace="fragments/dialog ::timelineDialog"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<script th:src="@{/js/tabler.min.js}" defer></script>
<script th:src="@{/js/common/common.js}"></script>
<script th:src="@{/js/mermaid.min.js}"></script>
<script th:src="@{/js/mock.js}"></script>
</body>
</html>
<script th:inline="javascript">
mermaid.initialize({startOnLoad: false});
function renderAndShow() {
const el = document.querySelector('.mermaid');
el.style.visibility = 'hidden'; // 先隐藏
mermaid.run().then(() => {
el.style.visibility = 'visible'; // 渲染完再显示
});
}
window.addEventListener('DOMContentLoaded', renderAndShow);
function goAction() {
let baseUrl = document.getElementById('baseUrl').value;
const form = document.getElementById('_actionForm'); // 替换成你的表单 ID
//获取罐列表
let jarList = getReceiveFacilities();
//获取接收的油列表
let fuelList = getSelectFuelItem();
let dataObj = formToObject(form);
dataObj.jarInfoList = jarList;
dataObj.fuelInfoList = fuelList;
mockPost(baseUrl + "mock/receive", dataObj, 'receive', '_actionForm');
}
</script>