From b33e6f53dd537abaebad066de12474580fcc33b2 Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期四, 21 八月 2025 15:03:14 +0800
Subject: [PATCH] Merge branch 'pim_ywx'

---
 src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java |  116 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 116 insertions(+), 0 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
new file mode 100644
index 0000000..5a7cf30
--- /dev/null
+++ b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java
@@ -0,0 +1,116 @@
+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.pojo.Documentation;
+import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement;
+import com.ruoyi.warehouse.service.DocumentationService;
+import com.ruoyi.warehouse.mapper.DocumentationMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+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
+*/
+@Service
+public class DocumentationServiceImpl extends ServiceImpl<DocumentationMapper, Documentation>
+    implements DocumentationService{
+    @Autowired
+    private DocumentationMapper documentationMapper;
+    @Override
+    public IPage<DocumentationDto> listPage(Page page, Documentation documentation) {
+        return documentationMapper.listPage(page, documentation);
+    }
+
+    @Override
+    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