From 8a545b65a8d29961543a8d66bab2dbec58e5f89c Mon Sep 17 00:00:00 2001
From: zhuguifei <312353457@qq.com>
Date: 星期一, 24 二月 2025 14:35:52 +0800
Subject: [PATCH] 故障报修添加工具类型

---
 eims-ui/apps/web-antd/src/views/eims/repair-req/data.tsx                                                                                       |   18 ++++++
 eims/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/FixtureService.java                                          |   11 +++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsRepairReqBo.java                                                       |    5 +
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsFixtureServiceImpl.java                                             |   14 ++++
 eims-ui/apps/web-antd/src/views/eims/repair-req/repair-req-drawer.vue                                                                          |   24 +++++++
 eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/constant/TransConstant.java                            |    7 ++
 eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureNameTranslationImpl.java              |   30 ++++++++++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsRepairReq.java                                                            |    5 +
 eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureTypeNameTranslationImpl.java          |    2 
 eims/ruoyi-common/ruoyi-common-translation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports |    1 
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsRepairReqVo.java                                                       |   11 +++
 11 files changed, 124 insertions(+), 4 deletions(-)

diff --git a/eims-ui/apps/web-antd/src/views/eims/repair-req/data.tsx b/eims-ui/apps/web-antd/src/views/eims/repair-req/data.tsx
index 6f7f556..329226a 100644
--- a/eims-ui/apps/web-antd/src/views/eims/repair-req/data.tsx
+++ b/eims-ui/apps/web-antd/src/views/eims/repair-req/data.tsx
@@ -189,6 +189,24 @@
     }
   },
   {
+    component: 'Input',
+    fieldName: 'fixtureName',
+    label: '宸ュ叿鍚嶇О',
+    dependencies: {
+      show: () => false,
+      triggerFields: ['']
+    }
+  },
+  {
+    component: 'Input',
+    fieldName: 'fixtureId',
+    label: '宸ュ叿id',
+    dependencies: {
+      show: () => false,
+      triggerFields: ['']
+    }
+  },
+  {
     component: 'Select',
     componentProps: {
       getPopupContainer,
diff --git a/eims-ui/apps/web-antd/src/views/eims/repair-req/repair-req-drawer.vue b/eims-ui/apps/web-antd/src/views/eims/repair-req/repair-req-drawer.vue
index 314c0c8..a5ead90 100644
--- a/eims-ui/apps/web-antd/src/views/eims/repair-req/repair-req-drawer.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/repair-req/repair-req-drawer.vue
@@ -1,5 +1,5 @@
 <script setup lang="ts">
-import { computed, onMounted, ref } from 'vue';
+import { computed, ref } from 'vue';
 
 import { useVbenDrawer, useVbenModal } from '@vben/common-ui';
 import { DictEnum } from '@vben/constants';
@@ -60,6 +60,13 @@
                   triggerFields: ['']
                 },
                 fieldName: 'equName'
+              },
+              {
+                dependencies: {
+                  show: () => reqType === '2',
+                  triggerFields: ['']
+                },
+                fieldName: 'fixtureName'
               }
             ]);
           }
@@ -72,6 +79,13 @@
           triggerFields: ['']
         },
         fieldName: 'equName'
+      },
+      {
+        dependencies: {
+          show: () => false,
+          triggerFields: ['']
+        },
+        fieldName: 'fixtureName'
       }
     ]);
     drawerApi.drawerLoading(true);
@@ -96,6 +110,13 @@
             triggerFields: ['']
           },
           fieldName: 'equName'
+        },
+        {
+          dependencies: {
+            show: () => reqType === '2',
+            triggerFields: ['']
+          },
+          fieldName: 'fixtureName'
         }
       ]);
     }
@@ -215,6 +236,7 @@
       return;
     }
     const data = cloneDeep(await formApi.getValues());
+    // todo 鍒犻櫎澶氫綑瀛楁  Reflect.deleteProperty(formValues, 'equId');
     await (isUpdate.value ? updateRepairReq(data) : addRepairReq(data));
     emit('reload');
     await handleCancel();
diff --git a/eims/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/FixtureService.java b/eims/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/FixtureService.java
new file mode 100644
index 0000000..ea815c9
--- /dev/null
+++ b/eims/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/FixtureService.java
@@ -0,0 +1,11 @@
+package org.dromara.common.core.service;
+
+public interface FixtureService {
+    /**
+     * 閫氳繃宸ュ叿ID鏌ヨ宸ュ叿鍚嶇О
+     *
+     * @param fixIds 宸ュ叿ID涓查�楀彿鍒嗛殧
+     * @return 宸ュ叿鍚嶇О涓查�楀彿鍒嗛殧
+     */
+    String selectFixtureNameByIds(String fixIds);
+}
diff --git a/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/constant/TransConstant.java b/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/constant/TransConstant.java
index 60065b7..661dd84 100644
--- a/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/constant/TransConstant.java
+++ b/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/constant/TransConstant.java
@@ -41,8 +41,13 @@
      */
     String EQU_ID_TO_NAME = "equ_id_to_name";
     /**
-     * 宸ュ叿绫诲瀷(娌诲叿)id杞悕绉�
+     * 宸ュ叿(娌诲叿)绫诲瀷id杞悕绉�
      */
     String FIXTURE_TYPE_ID_TO_NAME = "fixture_type_id_to_name";
 
+    /**
+     * 宸ュ叿(娌诲叿)id杞悕绉�
+     */
+    String FIXTURE_ID_TO_NAME = "fixture_id_to_name";
+
 }
diff --git a/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureNameTranslationImpl.java b/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureNameTranslationImpl.java
new file mode 100644
index 0000000..b4bae9e
--- /dev/null
+++ b/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureNameTranslationImpl.java
@@ -0,0 +1,30 @@
+package org.dromara.common.translation.core.impl;
+
+import lombok.AllArgsConstructor;
+import org.dromara.common.core.service.FixtureService;
+import org.dromara.common.core.service.FixtureTypeService;
+import org.dromara.common.translation.annotation.TranslationType;
+import org.dromara.common.translation.constant.TransConstant;
+import org.dromara.common.translation.core.TranslationInterface;
+
+/**
+ * 宸ュ叿鍚嶇О缈昏瘧瀹炵幇
+ *
+ * @author zhuguifei
+ */
+@AllArgsConstructor
+@TranslationType(type = TransConstant.FIXTURE_ID_TO_NAME)
+public class FixtureNameTranslationImpl implements TranslationInterface<String> {
+
+    private final FixtureService fixtureService;
+
+    @Override
+    public String translation(Object key, String other) {
+        if (key instanceof String ids) {
+            return fixtureService.selectFixtureNameByIds(ids);
+        } else if (key instanceof Long id) {
+            return fixtureService.selectFixtureNameByIds(id.toString());
+        }
+        return null;
+    }
+}
diff --git a/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureTypeNameTranslationImpl.java b/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureTypeNameTranslationImpl.java
index f34fc75..1f9f74b 100644
--- a/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureTypeNameTranslationImpl.java
+++ b/eims/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/FixtureTypeNameTranslationImpl.java
@@ -7,7 +7,7 @@
 import org.dromara.common.translation.core.TranslationInterface;
 
 /**
- * 宸ュ叿鍚嶇О缈昏瘧瀹炵幇
+ * 宸ュ叿绫诲瀷鍚嶇О缈昏瘧瀹炵幇
  *
  * @author zhuguifei
  */
diff --git a/eims/ruoyi-common/ruoyi-common-translation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/eims/ruoyi-common/ruoyi-common-translation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index ec49dd6..1dcf5ed 100644
--- a/eims/ruoyi-common/ruoyi-common-translation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/eims/ruoyi-common/ruoyi-common-translation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -7,3 +7,4 @@
 org.dromara.common.translation.core.impl.EquTypeNameTranslationImpl
 org.dromara.common.translation.core.impl.EquNameTranslationImpl
 org.dromara.common.translation.core.impl.FixtureTypeNameTranslationImpl
+org.dromara.common.translation.core.impl.FixtureNameTranslationImpl
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsRepairReq.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsRepairReq.java
index e8d2a0c..f31c01b 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsRepairReq.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsRepairReq.java
@@ -85,6 +85,11 @@
     private Long equId;
 
     /**
+     * 宸ュ叿id
+     */
+    private Long fixtureId;
+
+    /**
      * 缁翠慨鍗昳d
      */
     private Long repairId;
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsRepairReqBo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsRepairReqBo.java
index d6f346e..87684ac 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsRepairReqBo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsRepairReqBo.java
@@ -93,6 +93,11 @@
     private Long equId;
 
     /**
+     * 宸ュ叿id
+     */
+    private Long fixtureId;
+
+    /**
      * 缁翠慨鍗昳d
      */
     private Long repairId;
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsRepairReqVo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsRepairReqVo.java
index f1b6233..b490f21 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsRepairReqVo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsRepairReqVo.java
@@ -113,6 +113,17 @@
     private Long equId;
 
     /**
+     * 宸ュ叿id
+     */
+    private Long fixtureId;
+
+    /**
+     * 宸ュ叿
+     */
+    @Translation(type = TransConstant.FIXTURE_ID_TO_NAME, mapper = "fixtureId")
+    private String fixtureName;
+
+    /**
      * 缁翠慨鍗昳d
      */
     @ExcelProperty(value = "缁翠慨鍗昳d")
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsFixtureServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsFixtureServiceImpl.java
index 41a18a0..efb2fad 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsFixtureServiceImpl.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsFixtureServiceImpl.java
@@ -3,6 +3,7 @@
 import cn.hutool.core.convert.Convert;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.dromara.common.core.service.FixtureService;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.SpringUtils;
 import org.dromara.common.core.utils.StringUtils;
@@ -39,7 +40,7 @@
  */
 @RequiredArgsConstructor
 @Service
-public class EimsFixtureServiceImpl implements IEimsFixtureService {
+public class EimsFixtureServiceImpl implements IEimsFixtureService, FixtureService {
 
     private final EimsFixtureMapper baseMapper;
     private final EimsFixtureTypeMapper fixtureTypeMapper;
@@ -194,4 +195,15 @@
         return baseMapper.deleteByIds(ids) > 0;
     }
 
+    @Override
+    public String selectFixtureNameByIds(String fixIds) {
+        List<String> list = new ArrayList<>();
+        for (Long id : StringUtils.splitTo(fixIds, Convert::toLong)) {
+            EimsFixtureVo vo = SpringUtils.getAopProxy(this).queryById(id);
+            if (ObjectUtil.isNotNull(vo)) {
+                list.add(vo.getFixtureName());
+            }
+        }
+        return String.join(StringUtils.SEPARATOR, list);
+    }
 }

--
Gitblit v1.9.3