From 5247f5d991b09bef8dce64ca8fac0e9c804f4584 Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期四, 24 四月 2025 09:10:22 +0800 Subject: [PATCH] feat(eims): 优化数据导入功能并添加创建时间排序 --- eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java | 45 +++++++++++++++++++++++++++++++++++++++------ 1 files changed, 39 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 b191443..9ed4e3b 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")); @@ -94,6 +101,7 @@ qw.eq(bo.getCreateBy()!=null, "a.create_by", bo.getCreateBy()); qw.eq(StringUtils.isNotEmpty(bo.getStatus()), "a.status", bo.getStatus()); + qw.orderByDesc("a.create_time"); /** * 鏌ヨ閮ㄩ棬涓嬫墍鏈夊瓙閮ㄩ棬 @@ -159,6 +167,8 @@ lqw.eq(bo.getRepairDept() != null, EimsRepairReq::getRepairDept, bo.getRepairDept()); lqw.eq(bo.getRepairUser() != null, EimsRepairReq::getRepairUser, bo.getRepairUser()); lqw.eq(StringUtils.isNotBlank(bo.getFaultType()), EimsRepairReq::getFaultType, bo.getFaultType()); + // 鎸夊垱寤烘椂闂村�掑簭 + lqw.orderByDesc(EimsRepairReq::getCreateTime); return lqw; } @@ -168,6 +178,7 @@ * @param bo 鏁呴殰鎶ヤ慨 * @return 鏄惁鏂板鎴愬姛 */ + @Transactional(rollbackFor = Exception.class) @Override public Boolean insertByBo(EimsRepairReqBo bo) { EimsRepairReq add = MapstructUtils.convert(bo, EimsRepairReq.class); @@ -175,6 +186,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; } @@ -215,4 +236,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