From 1c4311135628b53daa336821ff452292a9d063e9 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期三, 28 八月 2024 09:14:10 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java | 99 ++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 84 insertions(+), 15 deletions(-) diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java index 144b8b6..4fd7c83 100644 --- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java +++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java @@ -3,7 +3,9 @@ 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.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; +import com.ruoyi.management.domain.ManagementGoodsMaterials; import com.ruoyi.management.domain.SlGoodsMaterials; import com.ruoyi.management.domain.SlStoreManagement; import com.ruoyi.management.domain.SlVolumeProductionRk; @@ -13,14 +15,19 @@ import com.ruoyi.management.domain.vo.SlGoodsMaterialsVO; import com.ruoyi.management.domain.vo.SlGoodsShelfVO; import com.ruoyi.management.domain.vo.StoreManagementGoodSmaterialsVO; +import com.ruoyi.management.mapper.ManagementGoodsMaterialsMapper; import com.ruoyi.management.mapper.SlGoodsMaterialsMapper; import com.ruoyi.management.mapper.SlVolumeProductionRkMapper; +import com.ruoyi.management.service.ManagementGoodsMaterialsService; import com.ruoyi.management.service.SlGoodsMaterialsService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.management.service.SlVolumeProductionRkService; +import io.micrometer.core.instrument.binder.BaseUnits; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -39,6 +46,9 @@ @Resource private SlVolumeProductionRkMapper slVolumeProductionRkMapper; + @Resource + private ManagementGoodsMaterialsService managementGoodsMaterialsService; + @Override public void addSlGoodsShelf(SlGoodsMaterialsDTO slGoodsMaterialsDTO) { @@ -46,7 +56,9 @@ SlGoodsMaterials slGoodsMaterials=new SlGoodsMaterials(); slGoodsMaterials.setGoodsMaterialsName(slGoodsMaterialsDTO.getGoodsMaterialsName()); slGoodsMaterials.setIsConsume(slGoodsMaterialsDTO.getIsConsume()); + slGoodsMaterials.setGoodsMaterialsNo(slGoodsMaterialsDTO.getGoodsMaterialsNo()); slGoodsMaterials.setRepertory(slGoodsMaterialsDTO.getRepertory()); + this.save(slGoodsMaterials); }else{ SlGoodsMaterials byId = this.getById(slGoodsMaterialsDTO.getId()); if (slGoodsMaterialsDTO.getGoodsMaterialsName()!=null){ @@ -54,19 +66,41 @@ } if (slGoodsMaterialsDTO.getRepertory()!=null){ byId.setRepertory(slGoodsMaterialsDTO.getRepertory()); + LambdaQueryWrapper<ManagementGoodsMaterials> wrapper3= Wrappers.lambdaQuery(); + wrapper3.eq(ManagementGoodsMaterials::getGoodsMaterialsId,byId.getId()); + wrapper3.eq( ManagementGoodsMaterials::getDelFlag,0); + wrapper3.orderByDesc(ManagementGoodsMaterials::getCreateTime); + List<ManagementGoodsMaterials> page1 = managementGoodsMaterialsService.list(wrapper3); + for (ManagementGoodsMaterials pg:page1){ + pg.setRepertory(slGoodsMaterialsDTO.getRepertory()); + managementGoodsMaterialsService.updateById(pg); + } + } + byId.setGoodsMaterialsNo(slGoodsMaterialsDTO.getGoodsMaterialsNo()); if (slGoodsMaterialsDTO.getIsConsume()!=null){ byId.setIsConsume(slGoodsMaterialsDTO.getIsConsume()); } - this.updateById(byId); + byId.setId(slGoodsMaterialsDTO.getId()); + byId.setGoodsMaterialsName(slGoodsMaterialsDTO.getGoodsMaterialsName()); + byId.setIsConsume(slGoodsMaterialsDTO.getIsConsume()); + byId.setRepertory(slGoodsMaterialsDTO.getRepertory()); + byId.setGoodsMaterialsNo(slGoodsMaterialsDTO.getGoodsMaterialsNo()); + byId.setUpdateTime(new Date()); + // 手动update + slGoodsMaterialsMapper.update1(byId); } } + @Autowired + private SlGoodsMaterialsMapper slGoodsMaterialsMapper; @Override public PageDTO<SlGoodsMaterialsVO> getGoodSmaterialsList(SlGoodsMaterialsQuery slGoodsMaterialsQuery) { Page<SlGoodsMaterials> page = new Page<>(slGoodsMaterialsQuery.getPageCurr(), slGoodsMaterialsQuery.getPageSize()); LambdaQueryWrapper< SlGoodsMaterials> wrapper= Wrappers.lambdaQuery(); - wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,slGoodsMaterialsQuery.getGoodsMaterialsName()); + if (slGoodsMaterialsQuery.getGoodsMaterialsName()!=null&& !slGoodsMaterialsQuery.getGoodsMaterialsName().isEmpty()){ + wrapper.like(SlGoodsMaterials::getGoodsMaterialsName,slGoodsMaterialsQuery.getGoodsMaterialsName()); + } if (slGoodsMaterialsQuery.getIsConsume()!=0){ wrapper.eq(SlGoodsMaterials::getIsConsume,slGoodsMaterialsQuery.getIsConsume()); } @@ -85,26 +119,61 @@ slVolumeProductionIdList = slVolumeProductionRks.stream().map(SlVolumeProductionRk::getMaterialsId) .collect(Collectors.toSet()); - Page<SlGoodsMaterials> page = new Page<>(storeManagementGoodSmaterialsQuery.getPageCurr(), storeManagementGoodSmaterialsQuery.getPageSize()); - LambdaQueryWrapper< SlGoodsMaterials> wrapper= Wrappers.lambdaQuery(); - wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,storeManagementGoodSmaterialsQuery.getGoodsMaterialsName()); - if (storeManagementGoodSmaterialsQuery.getIsConsume()!=0){ - wrapper.eq(SlGoodsMaterials::getIsConsume,storeManagementGoodSmaterialsQuery.getIsConsume()); + LambdaQueryWrapper< SlGoodsMaterials> wrapper1 =Wrappers.lambdaQuery(); + if (storeManagementGoodSmaterialsQuery.getIsConsume()!=null&&storeManagementGoodSmaterialsQuery.getIsConsume()!=0){ + wrapper1.eq(SlGoodsMaterials::getIsConsume,storeManagementGoodSmaterialsQuery.getIsConsume()); } - if (slVolumeProductionIdList.size()>0){ - wrapper.in(SlGoodsMaterials::getId,slVolumeProductionIdList); + if (storeManagementGoodSmaterialsQuery.getGoodsMaterialsName()!=null){ + wrapper1.like(SlGoodsMaterials::getGoodsMaterialsName,storeManagementGoodSmaterialsQuery.getGoodsMaterialsName()); } - wrapper.eq( SlGoodsMaterials::getDelFlag,0); - wrapper.orderByDesc(SlGoodsMaterials::getCreateTime); - Page<SlGoodsMaterials> page1 = this.page(page, wrapper); + List<SlGoodsMaterials> list1 = this.list(wrapper1); + + Set<Long> SlGoodsMaterialsList = null; + SlGoodsMaterialsList = list1.stream().map(SlGoodsMaterials::getId) + .collect(Collectors.toSet()); + + Page<ManagementGoodsMaterials> page = new Page<>(storeManagementGoodSmaterialsQuery.getPageCurr(), storeManagementGoodSmaterialsQuery.getPageSize()); + LambdaQueryWrapper< ManagementGoodsMaterials> wrapper= Wrappers.lambdaQuery(); + +// if (!slVolumeProductionIdList.isEmpty()){ +// wrapper.in(ManagementGoodsMaterials::getId,slVolumeProductionIdList); +// } + + if (!SlGoodsMaterialsList.isEmpty()){ + wrapper.in(ManagementGoodsMaterials::getGoodsMaterialsId,SlGoodsMaterialsList); + } + wrapper.eq( ManagementGoodsMaterials::getDelFlag,0); + wrapper.eq(ManagementGoodsMaterials::getManagementId,storeManagementGoodSmaterialsQuery.getStoreManagementId()); + wrapper.orderByDesc(ManagementGoodsMaterials::getCreateTime); + Page<ManagementGoodsMaterials> page1 = managementGoodsMaterialsService.page(page, wrapper); PageDTO<StoreManagementGoodSmaterialsVO> storeManagementGoodSmaterialsVOPageDTO = PageDTO.of(page1, StoreManagementGoodSmaterialsVO.class); List<StoreManagementGoodSmaterialsVO> list = storeManagementGoodSmaterialsVOPageDTO.getList(); for (StoreManagementGoodSmaterialsVO li:list){ - Double storeManagementGoodSmaterialsOne = slVolumeProductionRkMapper.getStoreManagementGoodSmaterialsOne(li.getId()); + Double storeManagementGoodSmaterialsOne = slVolumeProductionRkMapper.getStoreManagementGoodSmaterialsOne(li.getGoodsMaterialsId()); + SlGoodsMaterials byId = this.getById(li.getGoodsMaterialsId()); + li.setGoodsMaterialsName(byId.getGoodsMaterialsName()); + li.setIsConsume(byId.getIsConsume()); li.setAveragePrice(storeManagementGoodSmaterialsOne); + } + return storeManagementGoodSmaterialsVOPageDTO; + } + + @Override + public StoreManagementGoodSmaterialsVO getSmaterialsOne(StoreManagementGoodSmaterialsQuery storeManagementGoodSmaterialsQuery) { + LambdaQueryWrapper< ManagementGoodsMaterials> wrapper= Wrappers.lambdaQuery(); + wrapper.eq(ManagementGoodsMaterials::getGoodsMaterialsId,storeManagementGoodSmaterialsQuery.getGoodsMaterialsId()); + wrapper.eq( ManagementGoodsMaterials::getDelFlag,0); + wrapper.eq( ManagementGoodsMaterials::getManagementId,storeManagementGoodSmaterialsQuery.getStoreManagementId()); + wrapper.orderByDesc(ManagementGoodsMaterials::getCreateTime); + ManagementGoodsMaterials page1 = managementGoodsMaterialsService.getOne(wrapper); + StoreManagementGoodSmaterialsVO storeManagementGoodSmaterialsVO = BeanUtils.copyBean(page1, StoreManagementGoodSmaterialsVO.class); + Double storeManagementGoodSmaterialsOne = slVolumeProductionRkMapper.getStoreManagementGoodSmaterialsOne(storeManagementGoodSmaterialsVO.getGoodsMaterialsId()); + SlGoodsMaterials byId = this.getById(storeManagementGoodSmaterialsVO.getGoodsMaterialsId()); + storeManagementGoodSmaterialsVO.setGoodsMaterialsName(byId.getGoodsMaterialsName()); + storeManagementGoodSmaterialsVO.setIsConsume(byId.getIsConsume()); + storeManagementGoodSmaterialsVO.setAveragePrice(storeManagementGoodSmaterialsOne); + return storeManagementGoodSmaterialsVO; } - return storeManagementGoodSmaterialsVOPageDTO; - } } -- Gitblit v1.7.1