From f32de021e7af1627b6d18e681b46dbc0a5b108f8 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 21 四月 2026 13:33:04 +0800
Subject: [PATCH] feat: 设备台账与工序进行绑定
---
src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java | 42 ++++++++++++++++++++++++++++++------------
1 files changed, 30 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
index 31c2f0e..f9ed796 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
@@ -2,7 +2,6 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.SecurityUtils;
@@ -13,6 +12,8 @@
import com.ruoyi.device.mapper.DeviceLedgerMapper;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.service.IDeviceLedgerService;
+import com.ruoyi.production.mapper.ProductProcessMapper;
+import com.ruoyi.production.pojo.ProductProcess;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysUserMapper;
@@ -24,7 +25,6 @@
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
-import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -38,19 +38,25 @@
private DeviceLedgerMapper deviceLedgerMapper;
@Autowired
private SysUserMapper sysUserMapper;
+ @Autowired
+ private ProductProcessMapper productProcessMapper;
@Override
- public IPage<DeviceLedgerDto> queryPage(Page page, DeviceLedgerDto deviceLedger) {
+ public IPage<DeviceLedgerDto> queryPage(Page<?> page, DeviceLedgerDto deviceLedger) {
return deviceLedgerMapper.queryPage(page, deviceLedger);
}
@Override
public AjaxResult saveDeviceLedger(DeviceLedger deviceLedger) {
+ AjaxResult processCheckResult = validateProductProcess(deviceLedger.getProductProcessId());
+ if (processCheckResult != null) {
+ return processCheckResult;
+ }
LambdaQueryWrapper<DeviceLedger> deviceLedgerLambdaQueryWrapper = new LambdaQueryWrapper<>();
- deviceLedgerLambdaQueryWrapper.eq(DeviceLedger::getDeviceModel,deviceLedger.getDeviceModel());
+ deviceLedgerLambdaQueryWrapper.eq(DeviceLedger::getDeviceName,deviceLedger.getDeviceName());
if (this.count(deviceLedgerLambdaQueryWrapper) > 0) {
- return AjaxResult.error("璁惧鍨嬪彿宸插瓨鍦�");
+ return AjaxResult.error("璁惧鍚嶇О宸插瓨鍦�");
}
boolean save = this.save(deviceLedger);
if (save){
@@ -61,13 +67,9 @@
@Override
public AjaxResult updateDeviceLedger(DeviceLedger deviceLedger) {
- if (ObjectUtils.isNotNull(deviceLedger.getStartRuntimeTime()) && ObjectUtils.isNotNull(deviceLedger.getEndRuntimeTime())){
- //璁$畻杩愯鏃堕暱
- long start = deviceLedger.getStartRuntimeTime().toEpochSecond(ZoneOffset.UTC) * 1000;
- long end = deviceLedger.getEndRuntimeTime().toEpochSecond(ZoneOffset.UTC) * 1000;
- long diffMillis = Math.abs(end - start);
- double time = diffMillis / (1000.0 * 60 * 60);// 姣 -> 绉� -> 鍒嗛挓 -> 灏忔椂
- deviceLedger.setRuntimeDuration(time+"h");
+ AjaxResult processCheckResult = validateProductProcess(deviceLedger.getProductProcessId());
+ if (processCheckResult != null) {
+ return processCheckResult;
}
if (this.updateById(deviceLedger)) {
return AjaxResult.success();
@@ -76,6 +78,22 @@
}
@Override
+ public DeviceLedger getDetailById(Long id) {
+ return deviceLedgerMapper.selectById1(id);
+ }
+
+ private AjaxResult validateProductProcess(Long productProcessId) {
+ if (productProcessId == null) {
+ return null;
+ }
+ ProductProcess productProcess = productProcessMapper.selectById(productProcessId);
+ if (productProcess == null) {
+ return AjaxResult.error("宸ュ簭涓嶅瓨鍦紝璇烽噸鏂伴�夋嫨");
+ }
+ return null;
+ }
+
+ @Override
public void export(HttpServletResponse response, Long[] ids) {
if (ids == null || ids.length == 0) {
--
Gitblit v1.9.3