From 56dfe0d4bf81262622a1919cceb2b039fd356209 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 03 九月 2024 16:52:49 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 114 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..a734fee 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,27 @@ 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.HashSet; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * <p> @@ -16,4 +34,100 @@ @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) { + if (managementGoodsMaterialsQuery.getStoreManagementGrade() == 0){ + managementGoodsMaterialsQuery.setStoreManagementGrade(null); + } + LambdaQueryWrapper<SlStoreManagement> wrapper= Wrappers.lambdaQuery(); + if (managementGoodsMaterialsQuery.getStoreManagementName()!=null&&managementGoodsMaterialsQuery.getStoreManagementName()!=""){ + wrapper.like(SlStoreManagement::getStoreManagementName,managementGoodsMaterialsQuery.getStoreManagementName()); + } + if (managementGoodsMaterialsQuery.getStoreManagementGrade()!=null){ + wrapper.eq(SlStoreManagement::getStoreManagementGrade,managementGoodsMaterialsQuery.getStoreManagementGrade()); + } + if (managementGoodsMaterialsQuery.getStoreManagementNo()!=null&&managementGoodsMaterialsQuery.getStoreManagementNo()!=""){ + wrapper.eq(SlStoreManagement::getStoreManagementNo,managementGoodsMaterialsQuery.getStoreManagementNo()); + } + if (managementGoodsMaterialsQuery.getCityCode()!=null&&managementGoodsMaterialsQuery.getCityCode()!=""){ + wrapper.eq(SlStoreManagement::getCityCode,managementGoodsMaterialsQuery.getCityCode()); + } + if (managementGoodsMaterialsQuery.getCountyCode()!=null&&managementGoodsMaterialsQuery.getCountyCode()!=""){ + wrapper.eq(SlStoreManagement::getCountyCode,managementGoodsMaterialsQuery.getCountyCode()); + } + if (managementGoodsMaterialsQuery.getTownCode()!=null&&managementGoodsMaterialsQuery.getTownCode()!=""){ + 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&&managementGoodsMaterialsQuery.getGoodsMaterialsName()!=""){ + 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); + }else{ + slVolumeProductionIdList=new HashSet<>(); + slVolumeProductionIdList.add(0L); + wrapper3.in(ManagementGoodsMaterials::getManagementId,slVolumeProductionIdList); + } + if (SlGoodsMaterialsList.size()>0){ + wrapper3.in(ManagementGoodsMaterials::getGoodsMaterialsId,SlGoodsMaterialsList); + }else{ + SlGoodsMaterialsList=new HashSet<>(); + SlGoodsMaterialsList.add(0L); + wrapper3.in(ManagementGoodsMaterials::getGoodsMaterialsId,SlGoodsMaterialsList); + } + wrapper3.apply("repertory_zhai < repertory"); + wrapper3.ne(ManagementGoodsMaterials::getRepertory,0); + 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()); + SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(li.getManagementId()); + li.setProvinceCode(slStoreManagement.getProvinceCode()); + li.setStoreManagementName(slStoreManagement.getStoreManagementName()); + 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