From ec4d16c8a630960a4671a60f4d1957fd3de9def3 Mon Sep 17 00:00:00 2001
From: zhuguifei <zhuguifei@zhuguifeideiMac.local>
Date: 星期四, 27 二月 2025 16:53:59 +0800
Subject: [PATCH] 完成维修工单查看维修记录子表

---
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java |   42 ++++++++++++++++++++++++++++++++++++------
 1 files changed, 36 insertions(+), 6 deletions(-)

diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java
index 55d1561..437c0e7 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java
@@ -1,7 +1,12 @@
 package org.dromara.eims.service.impl;
 
+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.constant.DictConstants;
+import org.dromara.common.core.service.RepairReqService;
 import org.dromara.common.core.utils.MapstructUtils;
+import org.dromara.common.core.utils.SpringUtils;
 import org.dromara.common.core.utils.StringUtils;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.common.mybatis.core.page.PageQuery;
@@ -11,7 +16,10 @@
 import lombok.RequiredArgsConstructor;
 import org.dromara.eims.domain.EimsEqu;
 import org.dromara.eims.domain.EimsFixtureBorrow;
+import org.dromara.eims.domain.EimsRepairRecord;
+import org.dromara.eims.domain.vo.EimsFixtureVo;
 import org.dromara.eims.domain.vo.EimsInventoryDetailVo;
+import org.dromara.eims.mapper.EimsRepairRecordMapper;
 import org.dromara.eims.utils.DataFilterUtil;
 import org.dromara.system.domain.SysDept;
 import org.dromara.system.domain.vo.SysDeptVo;
@@ -22,11 +30,9 @@
 import org.dromara.eims.domain.EimsRepairReq;
 import org.dromara.eims.mapper.EimsRepairReqMapper;
 import org.dromara.eims.service.IEimsRepairReqService;
+import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Collection;
+import java.util.*;
 
 /**
  * 鏁呴殰鎶ヤ慨Service涓氬姟灞傚鐞�
@@ -36,9 +42,10 @@
  */
 @RequiredArgsConstructor
 @Service
-public class EimsRepairReqServiceImpl implements IEimsRepairReqService {
+public class EimsRepairReqServiceImpl implements IEimsRepairReqService, RepairReqService {
 
     private final EimsRepairReqMapper baseMapper;
+    private final EimsRepairRecordMapper recordMapper;
     private final SysDeptMapper sysDeptMapper;
 
     /**
@@ -86,7 +93,7 @@
         qw.eq(bo.getRepairDept() != null, "a.repair_dept", bo.getRepairDept());
         qw.eq(bo.getRepairUser() != null, "a.repair_user", bo.getRepairUser());
         qw.eq(StringUtils.isNotBlank(bo.getFaultType()), "a,fault_type", bo.getFaultType());
-        qw.eq(params.containsKey("createBy"), "a.create_by", params.get("createBy"));
+        qw.in(params.containsKey("createBy"), "a.create_by",  (List<Long>) params.get("createBy"));
         qw.eq(params.containsKey("status"), "a.status", params.get("status"));
         qw.between(params.get("beginReqTime") != null && params.get("endReqTime") != null,
             "a.req_time", params.get("beginReqTime"), params.get("endReqTime"));
@@ -169,6 +176,7 @@
      * @param bo 鏁呴殰鎶ヤ慨
      * @return 鏄惁鏂板鎴愬姛
      */
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public Boolean insertByBo(EimsRepairReqBo bo) {
         EimsRepairReq add = MapstructUtils.convert(bo, EimsRepairReq.class);
@@ -176,6 +184,16 @@
         boolean flag = baseMapper.insert(add) > 0;
         if (flag) {
             bo.setId(add.getId());
+            //鏂板鎶ヤ慨鍗曟椂鐢熸垚缁翠慨璁板綍
+            EimsRepairRecord record = new EimsRepairRecord();
+            record.setReqId(add.getId());
+            record.setHandleTime(new Date());
+            //鏂板鐘舵��
+            record.setOpera(DictConstants.REPAIR_RECORD_HANDLE_DETAIL.XINZENG);
+            record.setOperaUser(add.getCreateBy());
+            record.setOperaResult("鏂板锛岀敓鎴愭姤淇崟");
+            //鏂板鏃剁敓鎴愯褰�
+            recordMapper.insert(record);
         }
         return flag;
     }
@@ -216,4 +234,16 @@
     }
 
 
+    @Override
+    public String selectRepairReqCodeByIds(String reqIds) {
+        List<String> list = new ArrayList<>();
+        for (Long id : StringUtils.splitTo(reqIds, Convert::toLong)) {
+            EimsRepairReqVo vo = SpringUtils.getAopProxy(this).queryById(id);
+            if (ObjectUtil.isNotNull(vo)) {
+                list.add(vo.getCode());
+            }
+        }
+        return String.join(StringUtils.SEPARATOR, list);
+    }
+
 }

--
Gitblit v1.9.3