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

560 lines
33 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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>
<!-- CSS files -->
<link th:href="@{/css/tabler.min.css}" rel="stylesheet"/>
<link th:href="@{/css/tabler-flags.min.css}" rel="stylesheet"/>
<link th:href="@{/css/tabler-payments.min.css}" rel="stylesheet"/>
<link th:href="@{/css/tabler-vendors.min.css}" rel="stylesheet"/>
<link th:href="@{/css/defence.css}" rel="stylesheet"/>
</head>
<body>
<div class="page">
<!-- 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">
<form name="searchForm" id="searchForm" th:action="@{/fuelArmy/list}">
<div class="card">
<div class="card-header">
<div class="row g-2">
<div class="col"><input type="text" th:value="${data.searchForm.armyName}"
name="armyName"
class="form-control" placeholder="输入名称"></div>
<div class="col-auto">
<a href="javascript:void(0)" class="btn btn-icon" aria-label="Button"
onclick="_resetPageNoSearch();return false;">
<!-- Download SVG icon from http://tabler-icons.io/i/search -->
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24"
height="24" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0"></path>
<path d="M21 21l-6 -6"></path>
</svg>
</a>
</div>
</div>
<input type="hidden" id="_currentPage" name="currentPage"
th:value="${data.searchForm.currentPage}"/>
</div>
.
<div class="card-body border-bottom py-3">
<div class="d-flex">
<div class="text-muted">
显示
<div class="mx-2 d-inline-block">
<input type="text" class="form-control form-control-sm"
th:value="${data.searchForm.pageSize}" size="3"
name="pageSize">
</div>
</div>
<div class="ms-auto text-muted">
<div class="col-md-auto ms-auto d-print-none">
<div class="btn-list">
<a href="#" class="btn btn-ghost-primary active "
onclick="common_add()">
<!-- Download SVG icon from http://tabler-icons.io/i/player-pause -->
添加
</a>
<a href="#" class="btn btn-ghost-danger active"
onclick="common_batchRemove();return false;">
<!-- Download SVG icon from http://tabler-icons.io/i/player-pause -->
批量删除
</a>
</div>
</div>
</div>
</div>
</div>
<div class="table-responsive">
<table class="table card-table table-vcenter datatable">
<thead>
<tr>
<th class="w-1"><input class="form-check-input m-0 align-middle"
type="checkbox" onclick="checkBoxIdChanged(this)"></th>
<th class="w-1">No.
<!-- Download SVG icon from http://tabler-icons.io/i/chevron-up -->
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-sm icon-thick"
width="24" height="24" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<path d="M6 15l6 -6l6 6"/>
</svg>
</th>
<th>名称/番号</th>
<th >编制人员总数</th>
<th>上级指挥部队</th>
<th>展开时间<br>(小时)</th>
<th>撤收时间<br>(小时)</th>
<th>坐标位置<br>(经纬度)</th>
<th>油料物资<br>总库容量<br>(吨)</th>
<th>最高<br>道路机动速度<br>(公里/小时)</th>
<th >单位时间<br>出入库物资<br>上限<br>(吨/小时)</th>
<th>单位时间<br>物资装卸<br>能力上限<br>(吨/小时)</th>
<th ></th>
</tr>
</thead>
<tbody th:if="${data.totalCount>0}">
<tr th:each="item:${data.list}">
<td><input class="form-check-input m-0 align-middle" name="itemId"
th:value="${item.id}" type="checkbox"
aria-label="Select invoice"></td>
<td th:text="${item.seq}"></td>
<td class="text-secondary" th:text="${item.armyName}"></td>
<td th:text="${item.unitAmount}"></td>
<td th:text="${item.parentName}"></td>
<td th:text="${item.expressHour}"></td>
<td th:text="${item.takeBackHour}"></td>
<td th:text="${item.teamLocation}"></td>
<td th:text="${item.storeAmount}"></td>
<td th:text="${item.drivingMaxSpeed}"></td>
<td th:text="${item.storeUpLimit}"></td>
<td th:text="${item.loadUpLimit}"></td>
<td class="text-nowrap text-secondary">
<a href="#" th:onclick="|common_edit(${item.id})|">编辑</a>
<a href="#" th:onclick="|common_delete(${item.id})|">删除</a>
</td>
</tr>
</tbody>
</table>
</div>
<div class="card-footer d-flex align-items-center" th:if="${data.totalCount>0}">
<p class="m-0 text-muted"><span
th:text="${data.totalCount}"></span>
记录</p>
<ul class="pagination m-0 ms-auto">
<li th:class="${data.isHasPrevious()}?'page-item':'page-item disabled'">
<a class="page-link" href="#" tabindex="-1" aria-disabled="true"
onclick="_pre()">
<!-- Download SVG icon from http://tabler-icons.io/i/chevron-left -->
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24"
height="24"
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none"
stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<path d="M15 6l-6 6l6 6"/>
</svg>
上一页
</a>
</li>
<li th:each="page:${#numbers.sequence(data.startDisplayPage,data.endDisplayPage)}"
th:class="${page} == ${data.currentPage}?'page-item active':'page-item'">
<a class="page-link" href="#" th:text="${page}"
th:onclick="|_setPage(${page})|"></a>
</li>
<li th:class="${data.isHasNext()}?'page-item':'page-item disabled'">
<a class="page-link" href="#" onclick="_next()">
下一页
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24"
height="24"
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none"
stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<path d="M9 6l6 6l-6 6"/>
</svg>
</a>
</li>
</ul>
</div>
</div>
</form>
</div>
</div>
</div>
<footer class="footer footer-transparent d-print-none">
<div class="container-xl" th:insert="fragments/footer">
</div>
</footer>
</div>
</div>
<script th:src="@{/js/tabler.min.js}" defer></script>
<script th:src="@{/js/common/common.js}"></script>
</body>
</html>
<div th:replace="fragments/dialog :: confirmationDialog"></div>
<div class="modal modal-blur fade" id="_addDialog" 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('_addDialog')"></button>
</div>
<form name="entityForm" id="entityForm" th:action="@{/fuelArmy/save}" th:list="@{/fuelArmy/list}"
th:delete="@{/fuelArmy/remove}" th:batchDelete="@{/fuelArmy/batchRemove}" th:view="@{/fuelArmy/view}"
th:path="@{/fuelArmy/}">
<input type="hidden" name="id">
<div class="modal-body">
<div class="row g-4">
<div class="col-12">
<div class="card">
<div class="card-header"><h3 class="card-title">保障分队基本信息</h3></div>
<div class="card-body">
<div class="mb-3 row">
<label class="col-3 col-form-label required">
图标</label>
<div class=" col upload-container">
<!-- 隐藏的文件输入框 -->
<input type="file" id="fileInput" name="file">
<!-- 始终显示的圆形图标此处采用相机图标Unicode 表情) -->
<div class="upload-icon" id="uploadIcon">
&#128247;
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
名称/番号</label>
<div class="col">
<input type="text" class="form-control" placeholder="名称/番号" name="armyName">
<div class="invalid-feedback" id="armyName_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
编制人员总数</label>
<div class="col">
<input type="number" class="form-control" placeholder="编制人员总数"
name="unitAmount">
<div class="invalid-feedback" id="unitAmount_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
军官总数</label>
<div class="col">
<input type="number" class="form-control" placeholder="军官总数"
name="officerAmount">
<div class="invalid-feedback" id="officerAmount_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
士兵总数</label>
<div class="col">
<input type="number" class="form-control" placeholder="士兵总数"
name="soldierAmount">
<div class="invalid-feedback" id="soldierAmount_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label">上级部(分)队</label>
<div class="col">
<select class="form-select" name="parentId">
<option value="">请选择</option>
<option th:each="item:${all}" th:value="${item.id}" th:text="${item.getArmyName()}"></option>
</select>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
展开时间(小时)</label>
<div class="col">
<input type="number" class="form-control" placeholder="展开时间"
name="expressHour">
<div class="invalid-feedback" id="expressHour_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
撤收时间(小时)</label>
<div class="col">
<input type="number" class="form-control" placeholder="撤收时间"
name="takeBackHour">
<div class="invalid-feedback" id="takeBackHour_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
坐标位置(经纬度)</label>
<div class="col">
<input type="text" class="form-control" placeholder="坐标位置"
name="teamLocation">
<div class="invalid-feedback" id="teamLocation_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
油料物资总库容量(吨)</label>
<div class="col">
<input type="number" class="form-control" placeholder="油料物资总库容量"
name="storeAmount">
<div class="invalid-feedback" id="storeAmount_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
平均道路速度(公里/小时)</label>
<div class="col">
<input type="number" class="form-control" placeholder="平均道路速度"
name="drivingAvgSpeed">
<div class="invalid-feedback" id="drivingAvgSpeed_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
最高道路机动速度(公里/小时)</label>
<div class="col">
<input type="number" class="form-control" placeholder="最高道路机动速度"
name="drivingMaxSpeed">
<div class="invalid-feedback" id="drivingMaxSpeed_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
单位时间出入库物资上限(吨/小时)</label>
<div class="col">
<input type="number" class="form-control" placeholder="单位时间出入库物资上限"
name="storeUpLimit">
<div class="invalid-feedback" id="storeUpLimit_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label required">
单位时间物资装卸能力上限(吨/小时)</label>
<div class="col">
<input type="number" class="form-control" placeholder="单位时间物资装卸能力上限"
name="loadUpLimit">
<div class="invalid-feedback" id="loadUpLimit_error_tip"></div>
</div>
</div>
<div class="mb-3 row">
<label class="col-3 col-form-label ">备注</label>
<div class="col">
<textarea class="form-control" data-bs-toggle="autosize" name="armyMemo" id="armyMemo"
placeholder=""
style="overflow: hidden; overflow-wrap: break-word; resize: none; text-align: start; height: 56px;"></textarea>
</div>
<div class="invalid-feedback" id="armyMemo_tip"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
<div class="modal-footer">
<a href="#" class="btn btn-link link-secondary" onclick="closeDialog('_addDialog')">
取消
</a>
<a href="#" class="btn btn-primary ms-auto" data-bs-dismiss="modal" onclick="common_save()">
<!-- Download SVG icon from http://tabler-icons.io/i/plus -->
确定
</a>
</div>
</div>
</div>
</div>
<div class="modal modal-blur fade" id="detailDialog" 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('detailDialog')"></button>
</div>
<div class="modal-body">
<div class="row row-cards">
<div class="card">
<div class="card-header">
<h3 class="card-title"></h3>
</div>
<div class="card-body" id="view-body-project">
<div class="datagrid">
<div class="datagrid-item">
<div class="datagrid-title" id="detail_army_name_name">名称/番号</div>
<div class="datagrid-content" id="detail_armyName_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_unit_amount_name">编制人员总数</div>
<div class="datagrid-content" id="detail_unitAmount_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_officer_amount_name">军官总数</div>
<div class="datagrid-content" id="detail_officerAmount_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_soldier_amount_name">士兵总数</div>
<div class="datagrid-content" id="detail_soldierAmount_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_team_equip_id_name">编制装备</div>
<div class="datagrid-content" id="detail_teamEquipId_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_team_store_id_name">编制设施</div>
<div class="datagrid-content" id="detail_teamStoreId_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_parent_id_name">上级指挥部队</div>
<div class="datagrid-content" id="detail_parentId_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_express_hour_name">展开时间(小时)</div>
<div class="datagrid-content" id="detail_expressHour_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_take_back_hour_name">撤收时间(小时)</div>
<div class="datagrid-content" id="detail_takeBackHour_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_team_location_name">坐标位置(经纬度)</div>
<div class="datagrid-content" id="detail_teamLocation_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_store_amount_name">油料物资总库容量(吨)</div>
<div class="datagrid-content" id="detail_storeAmount_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_driving_avg_speed_name">
平均道路速度(公里/小时)
</div>
<div class="datagrid-content" id="detail_drivingAvgSpeed_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_driving_max_speed_name">
最高道路机动速度(公里/小时)
</div>
<div class="datagrid-content" id="detail_drivingMaxSpeed_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_store_up_limit_name">
单位时间出入库物资上限(吨/小时)
</div>
<div class="datagrid-content" id="detail_storeUpLimit_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_load_up_limit_name">
单位时间物资装卸能力上限(吨/小时)
</div>
<div class="datagrid-content" id="detail_loadUpLimit_value"></div>
</div>
<div class="datagrid-item">
<div class="datagrid-title" id="detail_army_memo_name">备注</div>
<div class="datagrid-content" id="detail_armyMemo_value"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
function afterEditShow(data) {
if (data.base64Img) {
if (data.base64Img.length > 0) {
let container = document.getElementById("uploadIcon");
document.getElementById("uploadIcon").innerHTML = "";
var imgElement = document.createElement("img");
// 设置图片的 src 属性,拼接上 data URI 前缀, 这里的 MIME 类型为 image/png
imgElement.src = "data:image/png;base64," + data.base64Img;
// 将 img 元素添加到容器中
container.appendChild(imgElement);
}
}
}
function afterViewShow(data) {
//
if (data.base64Img) {
if (data.base64Img.length > 0) {
let container = document.getElementById("detail_jarImg_value");
document.getElementById("detail_jarImg_value").innerHTML = "";
var imgElement = document.createElement("img");
// 设置图片的 src 属性,拼接上 data URI 前缀, 这里的 MIME 类型为 image/png
imgElement.src = "data:image/png;base64," + data.base64Img;
// 将 img 元素添加到容器中
container.appendChild(imgElement);
}
}
}
</script>