From 72e6bac02526caebc3797a7c2934d12896805708 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期二, 23 九月 2025 00:47:18 +0800
Subject: [PATCH] 修复文件状态读取问题
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/service/MachineService.java | 37 ++++++++++++++++++++++++++++++++-----
1 files changed, 32 insertions(+), 5 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/service/MachineService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/service/MachineService.java
index 5b8ad77..6915e01 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/service/MachineService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/service/MachineService.java
@@ -50,6 +50,9 @@
if(existsByCode(vo.getCode(),null)){
throw new ServiceException("鏈哄簥缂栫爜宸插瓨鍦�:"+vo.getCode());
}
+ if(existsByEquipmentCode(vo.getEquipmentCode(),null)){
+ throw new ServiceException("璁惧缂栧彿宸插瓨鍦�:"+vo.getEquipmentCode());
+ }
Machine machine = new Machine();
BeanUtil.copyProperties(vo, machine);
@@ -64,7 +67,6 @@
Path dir;
if(StringUtils.isNotBlank(machine.getProgSendDir())){
createDirIsNotExists(machine.getProgSendDir());
-
}
if(StringUtils.isNotBlank(machine.getProgReceiveDir())){
@@ -169,6 +171,17 @@
}
/**
+ * 鏍规嵁 璁惧缂栧彿鍒ゆ柇鏈哄簥鏄惁瀛樺湪
+ * @param equipmentCode 璁惧缂栧彿
+ * @param excludeId 鎺掗櫎id
+ * @return 鏄惁瀛樺湪
+ */
+ boolean existsByEquipmentCode(String equipmentCode,Long excludeId){
+ return this.lambdaQuery().eq(Machine::getEquipmentCode, equipmentCode).ne(excludeId!=null,Machine::getId, excludeId).count()>0;
+ }
+
+
+ /**
* 淇敼鏈哄簥淇℃伅
* @param vo
* @return
@@ -179,7 +192,9 @@
if(existsByCode(vo.getCode(),vo.getId())){
throw new ServiceException("鏈哄簥缂栫爜宸插瓨鍦�:"+vo.getCode());
}
-
+ if(existsByEquipmentCode(vo.getEquipmentCode(),vo.getId())){
+ throw new ServiceException("璁惧缂栧彿宸插瓨鍦�:"+vo.getEquipmentCode());
+ }
Machine machine = this.getById(vo.getId());
Machine machineBak = new Machine();
@@ -187,6 +202,7 @@
machine.setMachineSpec(vo.getMachineSpec());
machine.setCode(vo.getCode());
+ machine.setEquipmentCode(vo.getEquipmentCode());
machine.setName(vo.getName());
machine.setMachineGroupCode(vo.getMachineGroupCode());
machine.setManufacturer(vo.getManufacturer());
@@ -339,14 +355,25 @@
if(StringUtils.isBlank(sendPathLine)){
return null;
}
- //鍘绘帀棣栦綅鎷彿锛屾帓闄ゅ彂閭g鏈哄簥娉ㄩ噴
- String sendPath = escapeSqlWildcard(StringUtils.trim(StringUtils.removeEnd(StringUtils.removeStart(sendPathLine,"("),")")));
+ //鍘绘帀鏈熬鎷彿(鍙戦偅绉�) ,鏈熬璺緞鍒嗛殧绗�
+ String tempPath = StringUtils.removeEnd(StringUtils.removeEnd(StringUtils.removeEnd(sendPathLine,")"),"/"),"\\");
+ //鍘绘帀鍓�2浣嶅彲鑳界殑娉ㄩ噴(*-)銆�
+ String sendPath = escapeSqlWildcard(StringUtils.trim(StringUtils.substring(tempPath,2)));
- List<Machine> machines = lambdaQuery().eq(Machine::getStatus,Machine.STATUS_ENABLE).likeLeft(Machine::getProgSendDir,sendPath).list();
+ List<Machine> machines = lambdaQuery().eq(Machine::getStatus,Machine.STATUS_ENABLE).like(Machine::getProgSendDir,sendPath).list();
if(machines.isEmpty()){
return null;
}else{
return machines.get(0);
}
}
+
+ /**
+ * 鏍规嵁璁惧缂栧彿鏌ヨ鏈哄簥
+ * @param equipmentCode 璁惧缂栧彿
+ * @return 鏈哄簥瀵硅薄
+ */
+ public Machine getByEquipmentCode(String equipmentCode) {
+ return this.lambdaQuery().eq(Machine::getEquipmentCode, equipmentCode).one();
+ }
}
--
Gitblit v1.9.3