修改维保功能模块
parent
0bbf2338a5
commit
e82b3c9d37
@ -1,225 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
|
|
||||||
<head>
|
|
||||||
<th:block th:include="include :: header('补胎工单详情')" />
|
|
||||||
<style>
|
|
||||||
.image-gallery {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
gap: 15px;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
.image-item {
|
|
||||||
width: 150px;
|
|
||||||
border: 1px solid #ddd;
|
|
||||||
border-radius: 4px;
|
|
||||||
overflow: hidden;
|
|
||||||
padding: 5px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
}
|
|
||||||
.image-item img {
|
|
||||||
width: 100%;
|
|
||||||
height: 120px;
|
|
||||||
object-fit: cover;
|
|
||||||
border-radius: 3px;
|
|
||||||
}
|
|
||||||
.image-info {
|
|
||||||
font-size: 12px;
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 5px;
|
|
||||||
color: #666;
|
|
||||||
word-break: break-all;
|
|
||||||
}
|
|
||||||
.field-label {
|
|
||||||
font-weight: bold;
|
|
||||||
color: #555;
|
|
||||||
}
|
|
||||||
.readonly-field {
|
|
||||||
background-color: #f8f9fa;
|
|
||||||
border-color: #dee2e6;
|
|
||||||
color: #495057;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body class="white-bg">
|
|
||||||
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
|
||||||
<!-- 基本信息 -->
|
|
||||||
<div class="panel panel-default">
|
|
||||||
<div class="panel-heading">
|
|
||||||
<h3 class="panel-title">基本信息</h3>
|
|
||||||
</div>
|
|
||||||
<div class="panel-body">
|
|
||||||
<form class="form-horizontal m">
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">工单编号:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.orderNo}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">车牌号:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.plateNumber}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">维保类型:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.typeCode}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">仪表盘录入里程:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.inputMileage}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">上次维保里程:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.lastMileage}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">保养日期:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${#dates.format(bizMaintenanceOrder.maintainDate, 'yyyy-MM-dd')}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">维修站点:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.factoryName}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">提交人:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.createBy}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">提交日期:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${#dates.format(bizMaintenanceOrder.createTime, 'yyyy-MM-dd HH:mm:ss')}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">状态:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.status}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">补充说明:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<textarea class="form-control readonly-field" th:text="${bizMaintenanceOrder.description}" readonly rows="3"></textarea>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">修补人:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${bizMaintenanceOrder.maintainer}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="col-sm-3 control-label field-label">修补日期:</label>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<input class="form-control readonly-field" th:value="${#dates.format(bizMaintenanceOrder.maintainerDate, 'yyyy-MM-dd')}" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- 图片 -->
|
|
||||||
<!-- <div class="panel panel-default">-->
|
|
||||||
<!-- <div class="panel-heading">-->
|
|
||||||
<!-- <h3 class="panel-title">图片</h3>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- <div class="panel-body">-->
|
|
||||||
<!-- <div th:if="${attachments != null and not attachments.empty}">-->
|
|
||||||
<!-- <div class="image-gallery">-->
|
|
||||||
<!-- <div th:each="attachment : ${attachments}" class="image-item preview-item" style="cursor: pointer;" th:data-src="@{${attachment.filePath}}" th:data-name="${attachment.fileName}">-->
|
|
||||||
<!-- <img th:src="@{${attachment.filePath}}" th:alt="${attachment.fileName}" >-->
|
|
||||||
<!-- <div class="image-info">-->
|
|
||||||
<!-- <div th:text="${attachment.fileName}" style="font-weight: bold; font-size: 11px;"></div>-->
|
|
||||||
<!-- <div th:text="${#dates.format(attachment.uploadTime, 'yyyy-MM-dd HH:mm')}" style="font-size: 10px; color: #888;"></div>-->
|
|
||||||
<!-- <div th:text="${attachment.uploadBy}" style="font-size: 10px; color: #666;"></div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- <div th:if="${attachments == null or attachments.empty}" class="text-center text-muted">-->
|
|
||||||
<!-- <p>暂无上传图片</p>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
|
|
||||||
<!-- 轮胎信息 -->
|
|
||||||
<div class="panel panel-default">
|
|
||||||
<div class="panel-heading">
|
|
||||||
<h3 class="panel-title">轮胎信息</h3>
|
|
||||||
</div>
|
|
||||||
<div class="panel-body">
|
|
||||||
<div th:if="${tireDetails != null and not tireDetails.empty}">
|
|
||||||
<table class="table table-bordered table-striped">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th style="width: 60px;">序号</th>
|
|
||||||
<th>轮胎编号</th>
|
|
||||||
<th>轮胎位置</th>
|
|
||||||
<th>品牌</th>
|
|
||||||
<th>型号</th>
|
|
||||||
<th>花纹深度(mm)</th>
|
|
||||||
<th>状态描述</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr th:each="tire, iterStat : ${tireDetails}">
|
|
||||||
<td th:text="${iterStat.count}"></td>
|
|
||||||
<td th:text="${tire.tireCode}"></td>
|
|
||||||
<td th:text="${tire.positionDesc}"></td>
|
|
||||||
<td th:text="${tire.tyreBrand}"></td>
|
|
||||||
<td th:text="${tire.tyreModel}"></td>
|
|
||||||
<td th:text="${tire.treadDepth}"></td>
|
|
||||||
<td th:text="${tire.tireStatus}"></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div th:if="${tireDetails == null or tireDetails.empty}" class="text-center text-muted">
|
|
||||||
<p>暂无轮胎信息</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<th:block th:include="include :: footer" />
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
$(function() {
|
|
||||||
// 图片点击预览
|
|
||||||
$(document).on('click', '.preview-item', function() {
|
|
||||||
var imgSrc = $(this).data('src');
|
|
||||||
var imgTitle = $(this).data('name') || '工单图片';
|
|
||||||
previewImage(imgSrc, imgTitle);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// 图片点击预览
|
|
||||||
function previewImage(imgSrc, imgTitle) {
|
|
||||||
layer.open({
|
|
||||||
type: 1,
|
|
||||||
title: imgTitle || '工单图片',
|
|
||||||
shadeClose: true,
|
|
||||||
shade: 0.8,
|
|
||||||
area: ['90%', '90%'],
|
|
||||||
content: '<div style="text-align:center; padding: 20px;"><img src="' + imgSrc + '" style="max-width:100%;max-height:100%;" /></div>'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,123 +1,63 @@
|
|||||||
package com.ruoyi.system.service;
|
package com.ruoyi.system.service;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.ruoyi.common.annotation.DataScope;
|
|
||||||
import com.ruoyi.system.domain.BizMaintenanceOrder;
|
import com.ruoyi.system.domain.BizMaintenanceOrder;
|
||||||
import com.ruoyi.system.domain.BizOrderTireDetail;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 维保工单主表Service接口
|
* 维保工单Service接口
|
||||||
*
|
*
|
||||||
* @author yangwanli
|
* @author yangwl
|
||||||
* @date 2026-04-15
|
* @date 2026-04-16
|
||||||
*/
|
*/
|
||||||
public interface IBizMaintenanceOrderService
|
public interface IBizMaintenanceOrderService
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* 查询维保工单主表
|
* 查询维保工单
|
||||||
*
|
*
|
||||||
* @param orderId 维保工单主表主键
|
* @param orderId 维保工单主键
|
||||||
* @return 维保工单主表
|
* @return 维保工单
|
||||||
*/
|
*/
|
||||||
public BizMaintenanceOrder selectBizMaintenanceOrderById(Long orderId);
|
public BizMaintenanceOrder selectBizMaintenanceOrderByOrderId(Long orderId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询维保工单主表列表
|
* 查询维保工单列表
|
||||||
*
|
*
|
||||||
* @param bizMaintenanceOrder 维保工单主表
|
* @param bizMaintenanceOrder 维保工单
|
||||||
* @return 维保工单主表集合
|
* @return 维保工单集合
|
||||||
*/
|
*/
|
||||||
public List<BizMaintenanceOrder> selectBizMaintenanceOrderList(BizMaintenanceOrder bizMaintenanceOrder);
|
public List<BizMaintenanceOrder> selectBizMaintenanceOrderList(BizMaintenanceOrder bizMaintenanceOrder);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增维保工单主表
|
* 新增维保工单
|
||||||
*
|
*
|
||||||
* @param bizMaintenanceOrder 维保工单主表
|
* @param bizMaintenanceOrder 维保工单
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int insertBizMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder);
|
public int insertBizMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改维保工单主表
|
* 修改维保工单
|
||||||
*
|
*
|
||||||
* @param bizMaintenanceOrder 维保工单主表
|
* @param bizMaintenanceOrder 维保工单
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int updateBizMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder);
|
public int updateBizMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量删除维保工单主表
|
* 批量删除维保工单
|
||||||
*
|
*
|
||||||
* @param orderIds 需要删除的维保工单主表主键集合
|
* @param orderIds 需要删除的维保工单主键集合
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteBizMaintenanceOrderByIds(String orderIds);
|
public int deleteBizMaintenanceOrderByOrderIds(String orderIds);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除维保工单主表信息
|
* 删除维保工单信息
|
||||||
*
|
*
|
||||||
* @param orderId 维保工单主表主键
|
* @param orderId 维保工单主键
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteBizMaintenanceOrderById(Long orderId);
|
public int deleteBizMaintenanceOrderByOrderId(Long orderId);
|
||||||
|
|
||||||
/**
|
List<BizMaintenanceOrder> selectBizMaintenanceOrderListTwo(BizMaintenanceOrder bizMaintenanceOrder);
|
||||||
* 根据车牌号查询工单列表
|
|
||||||
*
|
|
||||||
* @param plateNumber 车牌号
|
|
||||||
* @return 工单列表
|
|
||||||
*/
|
|
||||||
public List<BizMaintenanceOrder> selectOrderByPlateNumber(String plateNumber);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 根据轮胎编号查询工单
|
|
||||||
*
|
|
||||||
* @param tireCode 轮胎编号
|
|
||||||
* @return 工单列表
|
|
||||||
*/
|
|
||||||
public List<BizMaintenanceOrder> selectOrderByTireCode(String tireCode);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 更新工单状态
|
|
||||||
*
|
|
||||||
* @param orderId 工单ID
|
|
||||||
* @param status 状态
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public int updateOrderStatus(Long orderId, String status);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询工单数量
|
|
||||||
*
|
|
||||||
* @param status 状态
|
|
||||||
* @return 数量
|
|
||||||
*/
|
|
||||||
public int selectOrderCountByStatus(String status);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 保存工单及轮胎明细
|
|
||||||
*
|
|
||||||
* @param bizMaintenanceOrder 工单信息
|
|
||||||
* @param tireDetails 轮胎明细列表
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public int saveOrderWithDetails(BizMaintenanceOrder bizMaintenanceOrder, List<BizOrderTireDetail> tireDetails);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询修补工单主表列表
|
|
||||||
*
|
|
||||||
* @param bizMaintenanceOrder 维保工单主表
|
|
||||||
* @return 维保工单主表
|
|
||||||
*/
|
|
||||||
public List<BizMaintenanceOrder> selectBizRepairOrderList(BizMaintenanceOrder bizMaintenanceOrder);
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询报废工单主表列表
|
|
||||||
*
|
|
||||||
* @param bizMaintenanceOrder 维保工单主表
|
|
||||||
* @return 维保工单主表
|
|
||||||
*/
|
|
||||||
public List<BizMaintenanceOrder> selectBizScrapOrderList(BizMaintenanceOrder bizMaintenanceOrder);
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue