From dd69bfc1fb8e5e28dde754fab7f23bfb1a18faa5 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 05 六月 2026 16:58:07 +0800
Subject: [PATCH] config(dev): 更新开发环境配置和文件上传功能 - 调整文件上传路径配置 - 修复OA环境文件链接前缀配置 - 在审批实例服务中添加报销相关数据删除逻辑 - 实现申请人姓名自动填充功能 - 添加文件下载预览路由的正则表达式支持 - 为企业新闻VO添加附件列表兼容别名 - 完善员工入职服务的异常处理 - 新增账户附件管理控制器 - 实现文件上传接口并返回完整文件信息
---
src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java | 48 ++++++++++++++++++++++++++++++++++++++----------
1 files changed, 38 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
index e8405b4..b4c5d65 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
@@ -1,8 +1,11 @@
package com.ruoyi.device.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.device.dto.DeviceLedgerDto;
@@ -11,27 +14,28 @@
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.service.IDeviceLedgerService;
import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysUserMapper;
-import lombok.AllArgsConstructor;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
-import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.math.BigDecimal;
+import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@Service
-@AllArgsConstructor
+@RequiredArgsConstructor
@Slf4j
public class DeviceLedgerServiceImpl extends ServiceImpl<DeviceLedgerMapper, DeviceLedger> implements IDeviceLedgerService {
- @Autowired
- private DeviceLedgerMapper deviceLedgerMapper;
- @Autowired
- private SysUserMapper sysUserMapper;
+ private final DeviceLedgerMapper deviceLedgerMapper;
+ private final SysUserMapper sysUserMapper;
@Override
public IPage<DeviceLedgerDto> queryPage(Page page, DeviceLedgerDto deviceLedger) {
@@ -41,6 +45,11 @@
@Override
public AjaxResult saveDeviceLedger(DeviceLedger deviceLedger) {
+ LambdaQueryWrapper<DeviceLedger> deviceLedgerLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ deviceLedgerLambdaQueryWrapper.eq(DeviceLedger::getDeviceName,deviceLedger.getDeviceName());
+ if (this.count(deviceLedgerLambdaQueryWrapper) > 0) {
+ return AjaxResult.error("璁惧鍚嶇О宸插瓨鍦�");
+ }
boolean save = this.save(deviceLedger);
if (save){
return AjaxResult.success();
@@ -91,7 +100,26 @@
}
@Override
- public Boolean importData(MultipartFile file) {
- return null;
+ public Boolean importData(MultipartFile file) throws IOException {
+ ExcelUtil<DeviceLedgerExeclDto> util = new ExcelUtil<DeviceLedgerExeclDto>(DeviceLedgerExeclDto.class);
+ List<DeviceLedgerExeclDto> userList = util.importExcel(file.getInputStream());
+ userList.forEach(c -> {
+ DeviceLedger deviceLedger = new DeviceLedger();
+ SysUser sysUser = sysUserMapper.selectUserByUserName(c.getCreateUser());
+ if (sysUser!=null) {
+ deviceLedger.setCreateUser(sysUser.getUserId().intValue());
+ }else {
+ deviceLedger.setCreateUser(SecurityUtils.getUserId().intValue());
+ }
+ BeanUtils.copyProperties(c,deviceLedger);
+ // 閫氳繃鍚◣鍗曚环銆佹暟閲忋�佺◣鐜囪绠楀惈绋庢�讳环锛屼笉鍚◣鎬讳环
+ deviceLedger.setTaxIncludingPriceTotal(c.getTaxIncludingPriceUnit());
+ deviceLedger.setNumber(BigDecimal.ONE);
+ deviceLedger.setPlanRuntimeTime(DateUtils.toLocalDate(c.getPlanRuntimeTime()));
+ deviceLedger.setUnTaxIncludingPriceTotal(deviceLedger.getTaxIncludingPriceTotal().divide(BigDecimal.ONE.add(c.getTaxRate()),2, RoundingMode.HALF_UP));
+ deviceLedgerMapper.insert(deviceLedger);
+ });
+
+ return true;
}
}
--
Gitblit v1.9.3