From d40d81aa421c7cdb959556fedffef71fc62cde80 Mon Sep 17 00:00:00 2001
From: zhuguifei <zhuguifei@zhuguifeideiMac.local>
Date: 星期三, 16 四月 2025 10:07:22 +0800
Subject: [PATCH] 完成备件模块

---
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsSpareInoutdtServiceImpl.java |  138 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 138 insertions(+), 0 deletions(-)

diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsSpareInoutdtServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsSpareInoutdtServiceImpl.java
new file mode 100644
index 0000000..a9f1a04
--- /dev/null
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsSpareInoutdtServiceImpl.java
@@ -0,0 +1,138 @@
+package org.dromara.eims.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.dromara.common.core.utils.MapstructUtils;
+import org.dromara.common.core.utils.StringUtils;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import lombok.RequiredArgsConstructor;
+import org.dromara.eims.domain.vo.EimsMaintStVo;
+import org.springframework.stereotype.Service;
+import org.dromara.eims.domain.bo.EimsSpareInoutdtBo;
+import org.dromara.eims.domain.vo.EimsSpareInoutdtVo;
+import org.dromara.eims.domain.EimsSpareInoutdt;
+import org.dromara.eims.mapper.EimsSpareInoutdtMapper;
+import org.dromara.eims.service.IEimsSpareInoutdtService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 澶囦欢鍑哄叆搴撴槑缁哠ervice涓氬姟灞傚鐞�
+ *
+ * @author zhuguifei
+ * @date 2025-04-11
+ */
+@RequiredArgsConstructor
+@Service
+public class EimsSpareInoutdtServiceImpl implements IEimsSpareInoutdtService {
+
+    private final EimsSpareInoutdtMapper baseMapper;
+
+    /**
+     * 鏌ヨ澶囦欢鍑哄叆搴撴槑缁�
+     *
+     * @param id 涓婚敭
+     * @return 澶囦欢鍑哄叆搴撴槑缁�
+     */
+    @Override
+    public EimsSpareInoutdtVo queryById(Long id){
+        return baseMapper.selectVoById(id);
+    }
+
+    /**
+     * 鍒嗛〉鏌ヨ澶囦欢鍑哄叆搴撴槑缁嗗垪琛�
+     *
+     * @param bo        鏌ヨ鏉′欢
+     * @param pageQuery 鍒嗛〉鍙傛暟
+     * @return 澶囦欢鍑哄叆搴撴槑缁嗗垎椤靛垪琛�
+     */
+    @Override
+    public TableDataInfo<EimsSpareInoutdtVo> queryPageList(EimsSpareInoutdtBo bo, PageQuery pageQuery) {
+        Page<EimsSpareInoutdtVo> result = baseMapper.selectSpareInoutdtList(pageQuery.build(), buildWrapper(bo));
+        return TableDataInfo.build(result);
+    }
+
+    /**
+     * 鏌ヨ绗﹀悎鏉′欢鐨勫浠跺嚭鍏ュ簱鏄庣粏鍒楄〃
+     *
+     * @param bo 鏌ヨ鏉′欢
+     * @return 澶囦欢鍑哄叆搴撴槑缁嗗垪琛�
+     */
+    @Override
+    public List<EimsSpareInoutdtVo> queryList(EimsSpareInoutdtBo bo) {
+        LambdaQueryWrapper<EimsSpareInoutdt> lqw = buildQueryWrapper(bo);
+        return baseMapper.selectVoList(lqw);
+    }
+
+    private LambdaQueryWrapper<EimsSpareInoutdt> buildQueryWrapper(EimsSpareInoutdtBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<EimsSpareInoutdt> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getInoutId() != null, EimsSpareInoutdt::getInoutId, bo.getInoutId());
+        lqw.eq(bo.getSpareId() != null, EimsSpareInoutdt::getSpareId, bo.getSpareId());
+        return lqw;
+    }
+
+    private QueryWrapper<EimsSpareInoutdt> buildWrapper(EimsSpareInoutdtBo bo) {
+        Map<String, Object> params = bo.getParams();
+        QueryWrapper<EimsSpareInoutdt> qw = Wrappers.query();
+        qw.eq("io.id",bo.getInoutId());
+        return qw;
+    }
+
+    /**
+     * 鏂板澶囦欢鍑哄叆搴撴槑缁�
+     *
+     * @param bo 澶囦欢鍑哄叆搴撴槑缁�
+     * @return 鏄惁鏂板鎴愬姛
+     */
+    @Override
+    public Boolean insertByBo(EimsSpareInoutdtBo bo) {
+        EimsSpareInoutdt add = MapstructUtils.convert(bo, EimsSpareInoutdt.class);
+        validEntityBeforeSave(add);
+        boolean flag = baseMapper.insert(add) > 0;
+        if (flag) {
+            bo.setId(add.getId());
+        }
+        return flag;
+    }
+
+    /**
+     * 淇敼澶囦欢鍑哄叆搴撴槑缁�
+     *
+     * @param bo 澶囦欢鍑哄叆搴撴槑缁�
+     * @return 鏄惁淇敼鎴愬姛
+     */
+    @Override
+    public Boolean updateByBo(EimsSpareInoutdtBo bo) {
+        EimsSpareInoutdt update = MapstructUtils.convert(bo, EimsSpareInoutdt.class);
+        validEntityBeforeSave(update);
+        return baseMapper.updateById(update) > 0;
+    }
+
+    /**
+     * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙
+     */
+    private void validEntityBeforeSave(EimsSpareInoutdt entity){
+        //TODO 鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫
+    }
+
+    /**
+     * 鏍¢獙骞舵壒閲忓垹闄ゅ浠跺嚭鍏ュ簱鏄庣粏淇℃伅
+     *
+     * @param ids     寰呭垹闄ょ殑涓婚敭闆嗗悎
+     * @param isValid 鏄惁杩涜鏈夋晥鎬ф牎楠�
+     * @return 鏄惁鍒犻櫎鎴愬姛
+     */
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠�
+        }
+        return baseMapper.deleteByIds(ids) > 0;
+    }
+}

--
Gitblit v1.9.3