From e5b06241af0b53cf48d032ee1f94ab47eca24815 Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期五, 09 一月 2026 16:35:33 +0800
Subject: [PATCH] 1.取消生产报工记录添加上生产时间字段
---
src/main/java/com/ruoyi/device/controller/DeviceRepairController.java | 66 +++++++++++++++++++++++++++++++--
1 files changed, 62 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java b/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
index 55e8189..130e5df 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
@@ -1,21 +1,33 @@
package com.ruoyi.device.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.approve.pojo.ApproveProcess;
+import com.ruoyi.approve.service.IApproveProcessService;
+import com.ruoyi.approve.vo.ApproveProcessVO;
+import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.device.dto.DeviceRepairDto;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.device.service.IDeviceLedgerService;
import com.ruoyi.device.service.IDeviceRepairService;
+import com.ruoyi.framework.security.LoginUser;
import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.system.domain.SysDept;
+import com.ruoyi.project.system.domain.SysUser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.Arrays;
+import java.util.List;
@Api(tags = "璁惧鎶ヤ慨绠$悊")
@RequestMapping("/device/repair")
@@ -25,6 +37,11 @@
@Autowired
private IDeviceRepairService deviceRepairService;
+ @Autowired
+ private IDeviceLedgerService deviceLedgerService;
+ @Autowired
+ private IApproveProcessService approveProcessService;
+
@ApiModelProperty("璁惧鎶ヤ慨鍒楄〃")
@GetMapping("/page")
public AjaxResult page(Page page , DeviceRepairDto deviceRepairDto) {
@@ -32,9 +49,40 @@
}
@PostMapping()
+ @Transactional(rollbackFor = Exception.class)
@ApiModelProperty("娣诲姞璁惧鎶ヤ慨")
- public AjaxResult add( @RequestBody DeviceRepair deviceRepair) {
- return deviceRepairService.saveDeviceRepair(deviceRepair);
+ public AjaxResult add( @RequestBody DeviceRepair deviceRepair) throws Exception {
+ deviceRepairService.saveDeviceRepair(deviceRepair);
+ ApproveProcessVO approveProcessVO = new ApproveProcessVO();
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+ SysUser user = loginUser.getUser();
+ // 鑾峰彇褰撳墠鐧诲綍鍏徃
+ Long tenantId = loginUser.getTenantId();
+ if(null != tenantId){
+ LambdaQueryWrapper<DeviceRepair> QueryWrapper = new LambdaQueryWrapper<>();
+ QueryWrapper.eq(DeviceRepair::getDeviceLedgerId,deviceRepair.getDeviceLedgerId())
+ .eq(DeviceRepair::getRemark,deviceRepair.getRemark())
+ .eq(DeviceRepair::getDeviceName,deviceRepair.getDeviceName())
+ .eq(DeviceRepair::getApproverId,deviceRepair.getApproverId())
+ .eq(DeviceRepair::getRepairTime,deviceRepair.getRepairTime());
+ DeviceRepair one = deviceRepairService.getOne(QueryWrapper);
+ if(ObjectUtils.isEmpty(one)){
+ return AjaxResult.error("璁惧鎶ヤ慨涓嶅瓨鍦�");
+ }
+ //鑾峰彇褰撳墠鐧诲綍閮ㄩ棬id
+ approveProcessVO.setApproveDeptId(tenantId);
+ //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛id
+ approveProcessVO.setApproveUser(loginUser.getUserId());
+ //鑾峰彇褰撳墠鏃堕棿
+ approveProcessVO.setApproveTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ approveProcessVO.setApproveType(4);
+ approveProcessVO.setApproveUserIds(deviceRepair.getApproverId().toString());
+ approveProcessVO.setApproveReason(deviceRepair.getRemark());
+ approveProcessVO.setDeviceRepairId(one.getId());
+ approveProcessVO.setMaintenancePrice(deviceRepair.getMaintenancePrice());
+ approveProcessService.addApprove(approveProcessVO);
+ }
+ return AjaxResult.success();
}
@ApiModelProperty("鏍规嵁id鏌ヨ璁惧鎶ヤ慨")
@@ -53,13 +101,23 @@
@PostMapping ("repair")
@ApiModelProperty("璁惧缁翠慨")
public AjaxResult repair( @RequestBody DeviceRepair deviceRepair) {
- deviceRepair.setStatus(1);
return deviceRepairService.updateDeviceRepair(deviceRepair);
}
@DeleteMapping("/{ids}")
@ApiModelProperty("鍒犻櫎璁惧鎶ヤ慨")
public AjaxResult delete(@PathVariable("ids") Long[] ids) {
+ LambdaQueryWrapper<ApproveProcess> QueryWrapper = new LambdaQueryWrapper<>();
+ QueryWrapper.in(ApproveProcess::getDeviceRepairId,ids);
+ List<ApproveProcess> approveProcessList = approveProcessService.list(QueryWrapper);
+ if(!approveProcessList.isEmpty()){
+ approveProcessList.forEach(approveProcess -> {
+ if (approveProcess.getApproveStatus() != 0){
+ //鎶涘嚭寮傚父
+ throw new RuntimeException("鏈夋鍦ㄥ鐞嗕腑鐨勫鎵规祦绋嬶紝涓嶈兘鍒犻櫎");
+ }
+ });
+ }
boolean b = deviceRepairService.removeBatchByIds(Arrays.asList(ids));
if (!b) {
return AjaxResult.error("鍒犻櫎澶辫触");
--
Gitblit v1.9.3