fix:保养里程验证

master
wanghao 1 month ago
parent 1940761386
commit 42dba2e626

@ -1,45 +1,42 @@
package com.ruoyi.web.controller.tyre;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.file.FileUploadUtils;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.domain.*;
import com.ruoyi.system.service.*;
import com.sun.jna.platform.win32.OaIdl;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.*;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import static com.ruoyi.common.utils.file.FileUploadUtils.extractFilename;
/**
* Controller
*
*
* @author yangwl
* @date 2026-04-16
*/
@Controller
@RequestMapping("/tyre/order")
public class BizMaintenanceOrderController extends BaseController
{
public class BizMaintenanceOrderController extends BaseController {
private String prefix = "tyre/order";
@Autowired
@ -56,11 +53,12 @@ public class BizMaintenanceOrderController extends BaseController
@Autowired
private ISysAttachmentService iSysAttachmentService;
@Autowired
private IRecordTyreMileageService recordTyreMileageService;
@RequiresPermissions("system:order:view")
@GetMapping()
public String order()
{
public String order() {
return prefix + "/order";
}
@ -70,8 +68,7 @@ public class BizMaintenanceOrderController extends BaseController
@RequiresPermissions("system:order:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(BizMaintenanceOrder bizMaintenanceOrder)
{
public TableDataInfo list(BizMaintenanceOrder bizMaintenanceOrder) {
startPage();
List<BizMaintenanceOrder> list = bizMaintenanceOrderService.selectBizMaintenanceOrderList(bizMaintenanceOrder);
return getDataTable(list);
@ -83,13 +80,16 @@ public class BizMaintenanceOrderController extends BaseController
@RequiresPermissions("system:order:list")
@PostMapping("/listMaintenanceOrder")
@ResponseBody
public TableDataInfo listMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder)
{
public TableDataInfo listMaintenanceOrder(BizMaintenanceOrder bizMaintenanceOrder) {
startPage();
List<BizMaintenanceOrder> list = bizMaintenanceOrderService.selectBizMaintenanceOrderListTwo(bizMaintenanceOrder);
return getDataTable(list);
}
/**
*
*/
/**
*
*/
@ -97,16 +97,12 @@ public class BizMaintenanceOrderController extends BaseController
@Log(title = "维保工单", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(BizMaintenanceOrder bizMaintenanceOrder)
{
public AjaxResult export(BizMaintenanceOrder bizMaintenanceOrder) {
List<BizMaintenanceOrder> list = bizMaintenanceOrderService.selectBizMaintenanceOrderList(bizMaintenanceOrder);
ExcelUtil<BizMaintenanceOrder> util = new ExcelUtil<BizMaintenanceOrder>(BizMaintenanceOrder.class);
return util.exportExcel(list, "维保工单数据");
}
/**
*
*/
/**
*
*/
@ -127,8 +123,7 @@ public class BizMaintenanceOrderController extends BaseController
@Log(title = "维保工单", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(BizMaintenanceOrder bizMaintenanceOrder)
{
public AjaxResult addSave(BizMaintenanceOrder bizMaintenanceOrder) {
return toAjax(bizMaintenanceOrderService.insertBizMaintenanceOrder(bizMaintenanceOrder));
}
@ -137,15 +132,14 @@ public class BizMaintenanceOrderController extends BaseController
*/
@RequiresPermissions("system:order:edit")
@GetMapping("/edit/{orderId}")
public String edit(@PathVariable("orderId") Long orderId, ModelMap mmap)
{
public String edit(@PathVariable("orderId") Long orderId, ModelMap mmap) {
BizMaintenanceOrder bizMaintenanceOrder = bizMaintenanceOrderService.selectBizMaintenanceOrderByOrderId(orderId);
mmap.put("bizMaintenanceOrder", bizMaintenanceOrder);
// 查询同车牌上一张已完成维保工单;“维保前”按业务口径取上一单的维保后结果,不能再混入当前车辆实时装胎状态。
BizMaintenanceOrder bizMaintenanceOrderBefore = bizMaintenanceOrderService.selectBizMaintenanceOrderByOrderIdBefore(bizMaintenanceOrder);
BizOrderTireDetail bizOrderTireDetail = new BizOrderTireDetail();
List<Map> bizOrderTireDetailsBefore = new ArrayList<>();
if (bizMaintenanceOrderBefore != null){
if (bizMaintenanceOrderBefore != null) {
bizOrderTireDetail.setOrderId(bizMaintenanceOrderBefore.getOrderId());
bizOrderTireDetailsBefore = bizOrderTireDetailService.selectBizOrderTireDetail(bizOrderTireDetail);
}
@ -164,8 +158,7 @@ public class BizMaintenanceOrderController extends BaseController
@Log(title = "维保工单", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(BizMaintenanceOrder bizMaintenanceOrder)
{
public AjaxResult editSave(BizMaintenanceOrder bizMaintenanceOrder) {
return toAjax(bizMaintenanceOrderService.updateBizMaintenanceOrder(bizMaintenanceOrder));
}
@ -174,37 +167,36 @@ public class BizMaintenanceOrderController extends BaseController
*/
@RequiresPermissions("system:order:remove")
@Log(title = "维保工单", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@PostMapping("/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
public AjaxResult remove(String ids) {
return toAjax(bizMaintenanceOrderService.deleteBizMaintenanceOrderByOrderIds(ids));
}
@PostMapping("/PDAGetMaintenanceOrder")
@ResponseBody
public AjaxResult PDAGetMaintenanceOrder(@RequestBody BizMaintenanceOrder bizMaintenanceOrder)
{
public AjaxResult PDAGetMaintenanceOrder(@RequestBody BizMaintenanceOrder bizMaintenanceOrder) {
List<BizMaintenanceOrder> list = bizMaintenanceOrderService.selectBizMaintenanceOrderList(bizMaintenanceOrder);
return AjaxResult.success(list);
}
/**
* PDA
*
* @param bizMaintenanceOrder
* @return
*/
@PostMapping("/PDAAddMaintenanceOrder")
@ResponseBody
public AjaxResult PDAAddMaintenanceOrder(@RequestBody BizMaintenanceOrder bizMaintenanceOrder)
{
String orderNo=orderNoCreate();
public AjaxResult PDAAddMaintenanceOrder(@RequestBody BizMaintenanceOrder bizMaintenanceOrder) {
String orderNo = orderNoCreate();
bizMaintenanceOrder.setOrderNo(orderNo);
return toAjax(bizMaintenanceOrderService.insertBizMaintenanceOrder(bizMaintenanceOrder));
}
@Autowired
private IRecordTyreMileageService recordTyreMileageService;
/**
* PDA
* PDA
*
* @param json
* @param files
* @return
@ -212,15 +204,20 @@ public class BizMaintenanceOrderController extends BaseController
@PostMapping("/PDASaveMaintenanceOrder")
@ResponseBody
@Transactional(rollbackFor = Exception.class)
public AjaxResult PDASaveMaintenanceOrder(String json, List<MultipartFile> files)
{
MaintenanceOrderDTO bizMaintenanceOrder= JSONObject.parseObject(json, MaintenanceOrderDTO.class);
public AjaxResult PDASaveMaintenanceOrder(String json, List<MultipartFile> files) {
MaintenanceOrderDTO bizMaintenanceOrder = JSONObject.parseObject(json, MaintenanceOrderDTO.class);
// 2. 校验参数
if (bizMaintenanceOrder == null || bizMaintenanceOrder.getOrder() == null) {
return error("参数不能为空");
}
BizMaintenanceOrder order = bizMaintenanceOrder.getOrder();
BigDecimal inputMileage = order.getInputMileage();
if (inputMileage == null|| inputMileage.compareTo(BigDecimal.ZERO) == 0) {
return error("请输入里程");
}
Long orderId = order.getOrderId();
// 3. 执行更新操作
@ -229,8 +226,8 @@ public class BizMaintenanceOrderController extends BaseController
// 4. 核心逻辑:只有更新成功(影响行数 > 0才继续执行
if (n > 0) {
// 保存详细表
if (bizMaintenanceOrder.getTireDetails() != null && bizMaintenanceOrder.getTireDetails().size() > 0){
for (BizOrderTireDetail bizOrderTireDetail : bizMaintenanceOrder.getTireDetails()){
if (bizMaintenanceOrder.getTireDetails() != null && bizMaintenanceOrder.getTireDetails().size() > 0) {
for (BizOrderTireDetail bizOrderTireDetail : bizMaintenanceOrder.getTireDetails()) {
bizOrderTireDetail.setCreateTime(DateUtils.getNowDate());
bizOrderTireDetail.setOrderId(orderId);
@ -248,15 +245,15 @@ public class BizMaintenanceOrderController extends BaseController
bizOrderTireDetailService.insertBizOrderTireDetail(bizOrderTireDetail);
}
}
if (files!=null && files.size()>0){
if (files != null && files.size() > 0) {
//保存图片
for (int i = 0; i < files.size(); i++) {
try {
String filePath= FileUploadUtils.upload(RuoYiConfig.getUploadPath(), files.get(i));
String filePath = FileUploadUtils.upload(RuoYiConfig.getUploadPath(), files.get(i));
//设置图片名称
String fileName = extractFilename(files.get(i));
//保存图片表
SysAttachment sysAttachment =new SysAttachment();
SysAttachment sysAttachment = new SysAttachment();
sysAttachment.setFileName(fileName);
sysAttachment.setFilePath(filePath);
sysAttachment.setFileSize(files.get(i).getSize());
@ -277,7 +274,7 @@ public class BizMaintenanceOrderController extends BaseController
}
public AjaxResult submitBindingRecord(String json, List<MultipartFile> files) {
MaintenanceOrderDTO maintenanceOrderDTO= JSONObject.parseObject(json, MaintenanceOrderDTO.class);
MaintenanceOrderDTO maintenanceOrderDTO = JSONObject.parseObject(json, MaintenanceOrderDTO.class);
List<BizOrderTireDetail> tireDetails = maintenanceOrderDTO.getTireDetails();
for (int i = 0; i < files.size(); i++) {
String fileName = null;
@ -291,7 +288,7 @@ public class BizMaintenanceOrderController extends BaseController
return AjaxResult.error();
}
private String orderNoCreate(){
private String orderNoCreate() {
// 查询当天的工单号(返回的是当天最新的一条记录)
BizMaintenanceOrder bizMaintenanceOrder = bizMaintenanceOrderService.selectBizMaintenanceOrderTD();

Loading…
Cancel
Save