From e273a963deb73e46d5e0daef6d36d1f78892ee2d Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期五, 05 七月 2024 18:09:52 +0800
Subject: [PATCH] 森林防火 供应商管理

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java |  100 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 100 insertions(+), 0 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java
index d3ece1c..15c634d 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java
@@ -1,9 +1,26 @@
 package com.ruoyi.management.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.management.domain.ManagementGoodsMaterials;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.management.domain.SlGoodsMaterials;
+import com.ruoyi.management.domain.SlStoreManagement;
+import com.ruoyi.management.domain.dto.ManagementGoodsMaterialsQuery;
+import com.ruoyi.management.domain.vo.InventoriesSuppliesVO;
+import com.ruoyi.management.domain.vo.ManagementGoodsMaterialsVO;
+import com.ruoyi.management.domain.vo.StoreManagementGoodSmaterialsVO;
 import com.ruoyi.management.mapper.ManagementGoodsMaterialsMapper;
+import com.ruoyi.management.mapper.SlGoodsMaterialsMapper;
+import com.ruoyi.management.mapper.SlStoreManagementMapper;
 import com.ruoyi.management.service.ManagementGoodsMaterialsService;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -16,4 +33,87 @@
 @Service
 public class ManagementGoodsMaterialsServiceImpl extends ServiceImpl<ManagementGoodsMaterialsMapper, ManagementGoodsMaterials> implements ManagementGoodsMaterialsService {
 
+    @Resource
+    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
+    @Resource
+    private SlStoreManagementMapper slStoreManagementMapper;
+
+    @Resource
+    private SlGoodsMaterialsMapper  slGoodsMaterialsMapper;
+
+
+
+    @Override
+    public PageDTO<ManagementGoodsMaterialsVO> getManagementGoodsMaterialsList(ManagementGoodsMaterialsQuery managementGoodsMaterialsQuery) {
+        LambdaQueryWrapper<SlStoreManagement> wrapper= Wrappers.lambdaQuery();
+        if (managementGoodsMaterialsQuery.getStoreManagementName()!=null){
+            wrapper.like(SlStoreManagement::getStoreManagementName,managementGoodsMaterialsQuery.getStoreManagementName());
+        }
+        if (managementGoodsMaterialsQuery.getStoreManagementNo()!=null){
+            wrapper.eq(SlStoreManagement::getStoreManagementNo,managementGoodsMaterialsQuery.getStoreManagementNo());
+        }
+        if (managementGoodsMaterialsQuery.getCityCode()!=null){
+            wrapper.eq(SlStoreManagement::getCityCode,managementGoodsMaterialsQuery.getCityCode());
+        }
+        if (managementGoodsMaterialsQuery.getCountyCode()!=null){
+            wrapper.eq(SlStoreManagement::getCountyCode,managementGoodsMaterialsQuery.getCountyCode());
+        }
+        if (managementGoodsMaterialsQuery.getTownCode()!=null){
+            wrapper.eq(SlStoreManagement::getTownCode,managementGoodsMaterialsQuery.getTownCode());
+        }
+        List<SlStoreManagement> slStoreManagements = slStoreManagementMapper.selectList(wrapper);
+        Set<Long> slVolumeProductionIdList = null;
+        slVolumeProductionIdList = slStoreManagements.stream().map(SlStoreManagement::getId)
+                .collect(Collectors.toSet());
+
+        LambdaQueryWrapper<SlGoodsMaterials> wrapper1= Wrappers.lambdaQuery();
+        if (managementGoodsMaterialsQuery.getGoodsMaterialsName()!=null){
+            wrapper1.like(SlGoodsMaterials::getGoodsMaterialsName,managementGoodsMaterialsQuery.getGoodsMaterialsName());
+        }
+
+        List<SlGoodsMaterials> slGoodsMaterials = slGoodsMaterialsMapper.selectList(wrapper1);
+
+        Set<Long> SlGoodsMaterialsList = null;
+        SlGoodsMaterialsList = slGoodsMaterials.stream().map(SlGoodsMaterials::getId)
+                .collect(Collectors.toSet());
+
+
+        Page<ManagementGoodsMaterials> page = new Page<>(managementGoodsMaterialsQuery.getPageCurr(), managementGoodsMaterialsQuery.getPageSize());
+        LambdaQueryWrapper< ManagementGoodsMaterials> wrapper3= Wrappers.lambdaQuery();
+
+        if (slVolumeProductionIdList.size()>0){
+            wrapper3.in(ManagementGoodsMaterials::getManagementId,slVolumeProductionIdList);
+        }
+        if (SlGoodsMaterialsList.size()>0){
+            wrapper3.in(ManagementGoodsMaterials::getGoodsMaterialsId,SlGoodsMaterialsList);
+        }
+        wrapper3.apply("repertory_zhai<repertory");
+        wrapper3.eq( ManagementGoodsMaterials::getDelFlag,0);
+        wrapper3.orderByDesc(ManagementGoodsMaterials::getCreateTime);
+        Page<ManagementGoodsMaterials> page1 = this.page(page, wrapper3);
+        PageDTO<ManagementGoodsMaterialsVO> storeManagementGoodSmaterialsVOPageDTO = PageDTO.of(page1, ManagementGoodsMaterialsVO.class);
+        List<ManagementGoodsMaterialsVO> list = storeManagementGoodSmaterialsVOPageDTO.getList();
+        for (ManagementGoodsMaterialsVO li:list){
+            SlGoodsMaterials slGoodsMaterials1 = slGoodsMaterialsMapper.selectById(li.getGoodsMaterialsId());
+            li.setGoodsMaterialsName(slGoodsMaterials1.getGoodsMaterialsName());
+            li.setIsConsume(slGoodsMaterials1.getIsConsume());
+            li.setRepertory(slGoodsMaterials1.getRepertory());
+
+            SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(li.getManagementId());
+            li.setProvinceCode(slStoreManagement.getProvinceCode());
+            li.setProvinceName(slStoreManagement.getProvinceName());
+            li.setCityCode(slStoreManagement.getCityCode());
+            li.setCityName(slStoreManagement.getCityName());
+            li.setCountyCode(slStoreManagement.getCountyCode());
+            li.setCountyName(slStoreManagement.getCountyName());
+            li.setTownCode(slStoreManagement.getTownCode());
+            li.setTownName(slStoreManagement.getTownName());
+            li.setStoreManagementNumber(slStoreManagement.getStoreManagementNumber());
+            li.setStoreManagementNo(slStoreManagement.getStoreManagementNo());
+            li.setStoreManagementGrade(slStoreManagement.getStoreManagementGrade());
+
+        }
+
+        return storeManagementGoodSmaterialsVOPageDTO;
+    }
 }

--
Gitblit v1.7.1