From d640da3dac5b5f811284ab9a7c386da1e7ab6739 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 30 四月 2026 17:30:57 +0800
Subject: [PATCH] feat(ai): 增强AI文件提取和审批待办功能
---
src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 104 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java
index 195bfce..cf3b910 100644
--- a/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java
+++ b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java
@@ -1,38 +1,126 @@
package com.ruoyi.warehouse.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.poi.ExcelUtil;
+import com.ruoyi.warehouse.dto.DocumentationDto;
+import com.ruoyi.warehouse.mapper.DocumentationMapper;
import com.ruoyi.warehouse.pojo.Documentation;
import com.ruoyi.warehouse.service.DocumentationService;
-import com.ruoyi.warehouse.mapper.DocumentationMapper;
-import org.springframework.beans.factory.annotation.Autowired;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
-import javax.servlet.http.HttpServletResponse;
import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/**
-* @author 86151
-* @description 閽堝琛ㄣ�恉ocumentation(鏂囨。淇℃伅琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
-* @createDate 2025-08-14 14:05:49
-*/
+ * @author 86151
+ * @description 閽堝琛ㄣ�恉ocumentation(鏂囨。淇℃伅琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
+ * @createDate 2025-08-14 14:05:49
+ */
@Service
-public class DocumentationServiceImpl extends ServiceImpl<DocumentationMapper, Documentation>
- implements DocumentationService{
- @Autowired
- private DocumentationMapper documentationMapper;
+@RequiredArgsConstructor
+public class DocumentationServiceImpl extends ServiceImpl<DocumentationMapper, Documentation> implements DocumentationService {
+ private final DocumentationMapper documentationMapper;
+
@Override
- public IPage<Documentation> listPage(Page page, Documentation documentation) {
+ public IPage<DocumentationDto> listPage(Page page, Documentation documentation) {
return documentationMapper.listPage(page, documentation);
}
@Override
- public void export(HttpServletResponse response) {
- List<Documentation> list =documentationMapper.list();
- ExcelUtil<Documentation> util = new ExcelUtil<>(Documentation.class);
- util.exportExcel(response, list, "鏂囨。淇℃伅琛�");
+ public void export(HttpServletResponse response, Documentation documentation) {
+ IPage<DocumentationDto> list = documentationMapper.listPage(null, documentation);
+ ExcelUtil<DocumentationDto> util = new ExcelUtil<>(DocumentationDto.class);
+ util.exportExcel(response, list.getRecords(), "鏂囨。淇℃伅琛�");
+ }
+
+ @Override
+ public boolean deleteByIds(List<Long> ids) {
+ List<Documentation> documentationList = documentationMapper.selectList(new LambdaQueryWrapper<Documentation>().in(Documentation::getId, ids));
+ for (Documentation documentation : documentationList) {
+ //濡傛灉鏂囨。鐘舵�佹槸宸插�熷嚭锛屼笉鑳藉垹闄�
+ if ("鍊熷嚭".equals(documentation.getDocStatus()) || "浣滃簾".equals(documentation.getDocStatus())) {
+ throw new RuntimeException("褰撳墠鏂囨。鐘舵�佷负 " + documentation.getDocStatus() + "锛屼笉鏀寔鍒犻櫎");
+ }
+ documentationMapper.deleteById(documentation.getId());
+ }
+ return true;
+ }
+
+ /**
+ * 鍒楄〃鎵�鏈夋枃妗�
+ *
+ * @return
+ */
+ @Override
+ public List<DocumentationDto> listAll() {
+ List<DocumentationDto> list = documentationMapper.list().stream().filter(documentationDto -> "姝e父".equals(documentationDto.getDocStatus())).collect(Collectors.toList());
+ return list;
+ }
+
+ /**
+ * 鑾峰彇鏂囨。鎬绘暟
+ *
+ * @return
+ */
+ @Override
+ public Integer getTotalDocsCount() {
+ return documentationMapper.countTotalDocs();
+ }
+
+ /**
+ * 鑾峰彇鏂囨。鍒嗙被鎬绘暟
+ *
+ * @return
+ */
+ @Override
+ public Integer getCategoryNumCount() {
+ return documentationMapper.countCategoryNum();
+ }
+
+ /**
+ * 鑾峰彇宸插�熷嚭鏂囨。鎬绘暟
+ *
+ * @return
+ */
+ @Override
+ public Integer getBorrowedDocsCount() {
+ return documentationMapper.countBorrowedDocs();
+ }
+
+ /**
+ * 鑾峰彇姣忔湀鏂板鏂囨。鎬绘暟
+ *
+ * @return
+ */
+ @Override
+ public Integer getMonthlyAddedDocsCount() {
+ return documentationMapper.countMonthlyAddedDocs();
+ }
+
+ /**
+ * 鑾峰彇鏂囨。鍒嗙被鍒嗗竷
+ *
+ * @return
+ */
+ @Override
+ public List<Map<String, Object>> getCategoryDistribution() {
+ return documentationMapper.countCategoryDistribution();
+ }
+
+ /**
+ * 鑾峰彇鏂囨。鐘舵�佸垎甯�
+ *
+ * @return
+ */
+ @Override
+ public List<Map<String, Object>> getStatusDistribution() {
+ return documentationMapper.countStatusDistribution();
}
}
--
Gitblit v1.9.3