修改维保功能模块
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;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.ruoyi.common.annotation.DataScope;
|
||||
import com.ruoyi.system.domain.BizMaintenanceOrder;
|
||||
import com.ruoyi.system.domain.BizOrderTireDetail;
|
||||
|
||||
/**
|
||||
* 维保工单主表Service接口
|
||||
* 维保工单Service接口
|
||||
*
|
||||
* @author yangwanli
|
||||
* @date 2026-04-15
|
||||
* @author yangwl
|
||||
* @date 2026-04-16
|
||||
*/
|
||||
public interface IBizMaintenanceOrderService
|
||||
{
|
||||
/**
|
||||
* 查询维保工单主表
|
||||
* 查询维保工单
|
||||
*
|
||||
* @param orderId 维保工单主表主键
|
||||
* @return 维保工单主表
|
||||
* @param orderId 维保工单主键
|
||||
* @return 维保工单
|
||||
*/
|
||||
public BizMaintenanceOrder selectBizMaintenanceOrderById(Long orderId);
|
||||
public BizMaintenanceOrder selectBizMaintenanceOrderByOrderId(Long orderId);
|
||||
|
||||
/**
|
||||
* 查询维保工单主表列表
|
||||
* 查询维保工单列表
|
||||
*
|
||||
* @param bizMaintenanceOrder 维保工单主表
|
||||
* @return 维保工单主表集合
|
||||
* @param bizMaintenanceOrder 维保工单
|
||||
* @return 维保工单集合
|
||||
*/
|
||||
public List<BizMaintenanceOrder> selectBizMaintenanceOrderList(BizMaintenanceOrder bizMaintenanceOrder);
|
||||
|
||||
/**
|
||||
* 新增维保工单主表
|
||||
* 新增维保工单
|
||||
*
|
||||
* @param bizMaintenanceOrder 维保工单主表
|
||||
* @param bizMaintenanceOrder 维保工单
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertBizMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder);
|
||||
|
||||
/**
|
||||
* 修改维保工单主表
|
||||
* 修改维保工单
|
||||
*
|
||||
* @param bizMaintenanceOrder 维保工单主表
|
||||
* @param bizMaintenanceOrder 维保工单
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateBizMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder);
|
||||
|
||||
/**
|
||||
* 批量删除维保工单主表
|
||||
* 批量删除维保工单
|
||||
*
|
||||
* @param orderIds 需要删除的维保工单主表主键集合
|
||||
* @param orderIds 需要删除的维保工单主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteBizMaintenanceOrderByIds(String orderIds);
|
||||
public int deleteBizMaintenanceOrderByOrderIds(String orderIds);
|
||||
|
||||
/**
|
||||
* 删除维保工单主表信息
|
||||
* 删除维保工单信息
|
||||
*
|
||||
* @param orderId 维保工单主表主键
|
||||
* @param orderId 维保工单主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteBizMaintenanceOrderById(Long orderId);
|
||||
public int deleteBizMaintenanceOrderByOrderId(Long orderId);
|
||||
|
||||
/**
|
||||
* 根据车牌号查询工单列表
|
||||
*
|
||||
* @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);
|
||||
}
|
||||
List<BizMaintenanceOrder> selectBizMaintenanceOrderListTwo(BizMaintenanceOrder bizMaintenanceOrder);
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue