From 20791bfadab91e8ca99e6409f9a405e23d0a6505 Mon Sep 17 00:00:00 2001
From: cuijian <cuijian@xalxzn.com>
Date: 星期一, 12 五月 2025 15:31:57 +0800
Subject: [PATCH] 工具信息参数
---
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 103 insertions(+), 17 deletions(-)
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
index 8a2c3d3..6d30e4b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
@@ -28,6 +28,7 @@
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
@@ -48,8 +49,8 @@
@Override
public IPage<EamMaintenanceStandard> queryPageList(Page<EamMaintenanceStandard> page, EamMaintenanceStandard eamMaintenanceStandard) {
- LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
+ QueryWrapper<EamMaintenanceStandard> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("ems.del_flag", CommonConstant.DEL_FLAG_0);
//鐢ㄦ埛鏁版嵁鏉冮檺
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (sysUser == null) {
@@ -58,41 +59,41 @@
if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
//閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧
List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().split(","));
- StringBuilder sqlSb = new StringBuilder("select 1 from eam_equipment t where t.id = equipment_id and t.equipment_code in (");
- equipArr.forEach(equipmentCode -> {
- sqlSb.append("'").append(equipmentCode).append("',");
- });
- sqlSb.append(")");
- String sql = sqlSb.toString().replaceAll(",\\)", ")");
- queryWrapper.exists(sql);
+ queryWrapper.in("e.equipment_code", equipArr);
} else {
//娌℃湁閫夋嫨璁惧锛屾牴鎹溅闂磋繃婊よ澶�
- queryWrapper.exists("select 1 from eam_equipment e where exists (select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id) and e.id = equipment_id", sysUser.getId());
+ queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id ", sysUser.getId());
}
if(eamMaintenanceStandard != null) {
//缂栫爜 妯$硦鏌ヨ
if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardCode())) {
- queryWrapper.like(EamMaintenanceStandard::getStandardCode, eamMaintenanceStandard.getStandardCode());
+ queryWrapper.like("ems.standard_code", eamMaintenanceStandard.getStandardCode());
}
//鍚嶇О 妯$硦鏌ヨ
if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardName())) {
- queryWrapper.like(EamMaintenanceStandard::getStandardName, eamMaintenanceStandard.getStandardName());
+ queryWrapper.like("ems.standard_name", eamMaintenanceStandard.getStandardCode());
}
//璁惧
if(StringUtils.isNotBlank(eamMaintenanceStandard.getEquipmentId())) {
- queryWrapper.eq(EamMaintenanceStandard::getEquipmentId, eamMaintenanceStandard.getEquipmentId());
+ queryWrapper.eq("ems.equipment_id", eamMaintenanceStandard.getEquipmentId());
}
//淇濆吇鍒嗙被
if(StringUtils.isNotBlank(eamMaintenanceStandard.getMaintenanceCategory())) {
- queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, eamMaintenanceStandard.getMaintenanceCategory());
+ queryWrapper.eq("ems.maintenance_category", eamMaintenanceStandard.getMaintenanceCategory());
}
//淇濆吇鍒嗙被
if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardStatus())) {
- queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, eamMaintenanceStandard.getStandardStatus());
+ queryWrapper.eq("ems.standard_status", eamMaintenanceStandard.getStandardStatus());
+ }
+ //璁惧缂栫爜
+ if(StringUtils.isNotBlank(eamMaintenanceStandard.getKeyword())) {
+ queryWrapper.and(wrapper -> wrapper.like("e.equipment_name", eamMaintenanceStandard.getKeyword())
+ .or()
+ .like("e.equipment_code", eamMaintenanceStandard.getKeyword()));
}
}
- queryWrapper.orderByDesc(EamMaintenanceStandard::getCreateTime);
- return eamMaintenanceStandardMapper.selectPage(page, queryWrapper);
+ queryWrapper.orderByDesc("ems.create_time");
+ return eamMaintenanceStandardMapper.queryPageList(page, queryWrapper);
}
@Override
@@ -190,6 +191,64 @@
}
@Override
+ @Transactional(rollbackFor = Exception.class)
+ public boolean upgradeMaintenanceStandard(EamMaintenanceStandardRequest standardRequest) {
+ EamMaintenanceStandard entity = eamMaintenanceStandardMapper.selectById(standardRequest.getId());
+ if(entity == null){
+ throw new JeecgBootException("缂栬緫鐨勬暟鎹凡鍒犻櫎锛岃鍒锋柊閲嶈瘯锛�");
+ }
+ entity.setStandardStatus(MaintenanceStandardStatusEnum.ABOLISH.name());
+ //鍘熸潵鐨勪綔搴�
+ eamMaintenanceStandardMapper.updateById(entity);
+
+ //鏂板涓�涓増鏈�
+ EamMaintenanceStandard newEntity = new EamMaintenanceStandard();
+ newEntity.setStandardCode(standardRequest.getStandardCode());
+ newEntity.setStandardName(standardRequest.getStandardName());
+ newEntity.setMaintenanceCategory(standardRequest.getMaintenanceCategory());
+ newEntity.setMaintenancePeriod(standardRequest.getMaintenancePeriod());
+ newEntity.setInitialDate(standardRequest.getInitialDate());
+ newEntity.setFileCode(standardRequest.getFileCode());
+ newEntity.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name());
+ //鐗堟湰閫掑
+ newEntity.setStandardVersion(entity.getStandardVersion() + 1);
+ //璁惧澶勭悊
+ newEntity.setEquipmentId(standardRequest.getEquipmentId());
+ //鍒犻櫎鏍囪
+ newEntity.setDelFlag(CommonConstant.DEL_FLAG_0);
+ //閲嶅鎬ф牎楠�
+ EamMaintenanceStandard exist = checkDuplicate(newEntity.getEquipmentId(), newEntity.getMaintenanceCategory());
+ if(exist != null){
+ throw new JeecgBootException("璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�");
+ }
+ //澶勭悊闄勪欢
+ if(CollectionUtil.isNotEmpty(standardRequest.getFileList())) {
+ FileUploadResult fileUploadResult = standardRequest.getFileList().get(0);
+ ObjectMapper mapper = new ObjectMapper();
+ try {
+ String referenceFile = mapper.writeValueAsString(fileUploadResult);
+ newEntity.setReferenceFile(referenceFile);
+ } catch (JsonProcessingException e) {
+ log.error("JSON杞崲澶辫触锛�" + e.getMessage(), e);
+ }
+ }
+ eamMaintenanceStandardMapper.insert(newEntity);
+ //澶勭悊鏄庣粏鏁版嵁
+ if(CollectionUtil.isNotEmpty(standardRequest.getTableDetailList())) {
+ standardRequest.getTableDetailList().forEach(tableDetail -> {
+ tableDetail.setId(null);
+ tableDetail.setCreateBy(null);
+ tableDetail.setUpdateBy(null);
+ tableDetail.setCreateTime(null);
+ tableDetail.setUpdateTime(null);
+ tableDetail.setStandardId(newEntity.getId());
+ });
+ eamMaintenanceStandardDetailService.saveBatch(standardRequest.getTableDetailList());
+ }
+ return true;
+ }
+
+ @Override
public EamMaintenanceStandard checkDuplicate(String equipmentId, String maintenanceCategory) {
LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(EamMaintenanceStandard::getEquipmentId, equipmentId);
@@ -204,4 +263,31 @@
}
return list.get(0);
}
+
+ /**
+ * 鏌ヨ鏍囧噯鍒楄〃-鍓嶇灞曠ず璇ョ敤鎴锋嫢鏈夌殑鏍囧噯
+ * @param keyword 璁惧缂栧彿
+ * @param maintenanceCategory 淇濆吇绫诲瀷
+ * @return
+ */
+ @Override
+ public List<EamMaintenanceStandard> queryListByKeywordAndCategory(String keyword, String equipmentId, Integer pageSize, String maintenanceCategory){
+ Page<EamMaintenanceStandard> page = new Page<EamMaintenanceStandard>(1, pageSize);
+ EamMaintenanceStandard query = new EamMaintenanceStandard();
+ query.setEquipmentId(equipmentId);
+ query.setKeyword(keyword);
+ query.setMaintenanceCategory(maintenanceCategory);
+ query.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name());
+ IPage<EamMaintenanceStandard> pageData = this.queryPageList(page, query);
+ return pageData.getRecords();
+ }
+
+ @Override
+ public List<EamMaintenanceStandard> queryListByCategory(String maintenanceCategory) {
+ LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
+ queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, maintenanceCategory);
+ queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.NORMAL.name());
+ return eamMaintenanceStandardMapper.selectList(queryWrapper);
+ }
}
--
Gitblit v1.9.3