From b5ef65d0103a71dc7af2b9be6d2ac43aca5bb726 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 27 八月 2024 08:59:57 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java | 149 ++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 114 insertions(+), 35 deletions(-) diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java index b01513e..9da41b0 100644 --- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java +++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java @@ -18,7 +18,9 @@ import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.domain.getVolumeProductionRkQuery; import com.ruoyi.system.api.feignClient.SysUserClient; +import com.sun.org.apache.bcel.internal.generic.NEW; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.util.*; @@ -68,7 +70,6 @@ Set<Long> goodsSkuIdList = null; goodsSkuIdList = data1.stream().map(SysUser::getUserId) .collect(Collectors.toSet()); - LambdaQueryWrapper< SlVolumeProductionZygl> wrapper1= Wrappers.lambdaQuery(); if (slVolumeProductionZyQuery.getPresentState()!=null){ wrapper1.eq(SlVolumeProductionZygl::getPresentState,slVolumeProductionZyQuery.getPresentState()); @@ -81,7 +82,8 @@ wrapper1.in(SlVolumeProductionZygl::getSysId,goodsSkuIdList); } wrapper1.eq( SlVolumeProductionZygl::getDelFlag,0); - wrapper1.orderByDesc(SlVolumeProductionZygl::getCreateTime); +// wrapper1.ne(SlVolumeProductionZygl::getAuditStatus,7); + wrapper1.orderByDesc(SlVolumeProductionZygl::getStartiTime); Page<SlVolumeProductionZygl> page2 = this.page(page, wrapper1); PageDTO<VolumeProductionzZyglVO> SlGoodsShelfDTO = PageDTO.of(page2, VolumeProductionzZyglVO .class); @@ -136,6 +138,10 @@ public VolumeProductionZyglInfoVO getVolumeProductionzZyglnfo(ManagementimgVolumeProductionZyQuery managementimgVolumeProductionZyQuery) { SlVolumeProductionZygl byId = this.getById(managementimgVolumeProductionZyQuery.getVolumeProductionzyglId()); VolumeProductionZyglInfoVO v= BeanUtils.copyBean(byId, VolumeProductionZyglInfoVO.class); + SlStoreManagement slStoreManagement2 = slStoreManagementMapper.selectById(byId.getManagementId()); + v.setZhuren(slStoreManagement2.getDirectorId()); + v.setZhuguan(slStoreManagement2.getCompetentId()); + v.setGuanliyuan(slStoreManagement2.getAdministratorId()); SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId()); v.setStoreManagementName(slStoreManagement.getStoreManagementName()); SlStoreManagement bslStoreManagement = slStoreManagementMapper.selectById(byId.getBmanagementId()); @@ -144,7 +150,7 @@ v.setSysName(data1.getNickName()); v.setSysPhone(data1.getPhonenumber()); // 查询楼层数据 - SlStoreManagement slStoreManagement1 = slStoreManagementMapper.selectById(byId.getManagementId()); + SlStoreManagement slStoreManagement1 = slStoreManagementMapper.selectById(byId.getBmanagementId()); List<String> number = new ArrayList<>(); for (Integer i = 1; i <= slStoreManagement1.getStoreManagementNumber(); i++) { switch (i){ @@ -160,23 +166,49 @@ } } v.setNumber(number); - + if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){ + managementimgVolumeProductionZyQuery.setStoreManagementNumber(1); + } QueryWrapper<SlGoodsShelf> eq = new QueryWrapper<SlGoodsShelf>() .eq("del_flag", "0") - .eq("store_management_id", byId.getManagementId()) + .eq("store_management_id", byId.getBmanagementId()) .eq("store_management_number",managementimgVolumeProductionZyQuery.getStoreManagementNumber()); List<SlGoodsShelf> slGoodsShelves = slGoodsShelfMapper.selectList(eq); v.setGoodsShelfList(slGoodsShelves); - // 查询物资列表 - LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery(); - wrapper2.eq(SlVolumeProductionRk::getManagementId,byId.getBmanagementId()); - if (managementimgVolumeProductionZyQuery.getShelfId() == null){ - managementimgVolumeProductionZyQuery.setShelfId(slGoodsShelves.get(0).getId()); + // 根据转移id 查询转移数据 收集入库ids + LambdaQueryWrapper<SlVolumeProductionZy> wrapper = Wrappers.lambdaQuery(); + wrapper.eq(SlVolumeProductionZy::getZyglId, byId.getId()); + wrapper.eq(SlVolumeProductionZy::getDelFlag, 0); + if (managementimgVolumeProductionZyQuery.getShelfId()==null){ + if (!slGoodsShelves.isEmpty()){ + wrapper.eq(SlVolumeProductionZy::getShelfId,slGoodsShelves.get(0).getId()); + } + }else{ + wrapper.eq(SlVolumeProductionZy::getShelfId,managementimgVolumeProductionZyQuery.getShelfId()); } if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){ - wrapper2.eq(SlVolumeProductionRk::getStoreManagementNumber,1); + wrapper.eq(SlVolumeProductionZy::getStoreManagementNumber,1); + }else{ + wrapper.eq(SlVolumeProductionZy::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber()); } - wrapper2.eq(SlVolumeProductionRk::getShelfId,managementimgVolumeProductionZyQuery.getShelfId()); + List<Long> collect = new ArrayList<>(); + + if (StringUtils.hasLength(byId.getAuthorizationUrl())){ + collect = slVolumeProductionZyMapper.selectList(wrapper) + .stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList()); + }else{ + collect = slVolumeProductionZyMapper.selectList(wrapper) + .stream().map(SlVolumeProductionZy::getRkId).collect(Collectors.toList()); + } + // 入库ids + + if (collect.isEmpty()){ + // 如果为空 那么插入-1 不查询数据 + collect.add(-1L); + } + // 查询物资列表 + LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery(); + wrapper2.in(SlVolumeProductionRk::getId,collect); wrapper2.eq( SlVolumeProductionRk::getDelFlag,0); wrapper2.orderByDesc(SlVolumeProductionRk::getCreateTime); List<SlVolumeProductionRk> page1 = slVolumeProductionRkMapper.selectList(wrapper2); @@ -186,15 +218,39 @@ .collect(Collectors.toSet()); Page<SlVolumeProductionZy> page = new Page<>(managementimgVolumeProductionZyQuery.getPageCurr(), managementimgVolumeProductionZyQuery.getPageSize()); LambdaQueryWrapper< SlVolumeProductionZy> wrapper1= Wrappers.lambdaQuery(); + wrapper1.eq(SlVolumeProductionZy::getDelFlag,0); wrapper1.eq(SlVolumeProductionZy::getZyglId,managementimgVolumeProductionZyQuery.getVolumeProductionzyglId()); - if (goodsSkuIdList.size()>0&&goodsSkuIdList!=null){ - wrapper1.in(SlVolumeProductionZy::getScrkId,goodsSkuIdList); + if (managementimgVolumeProductionZyQuery.getShelfId()==null){ + if (!slGoodsShelves.isEmpty()) { + wrapper1.eq(SlVolumeProductionZy::getShelfId, slGoodsShelves.get(0).getId()); + } + }else{ + wrapper1.eq(SlVolumeProductionZy::getShelfId,managementimgVolumeProductionZyQuery.getShelfId()); } + if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){ + wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,1); + }else{ + wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber()); + } + + if (goodsSkuIdList.isEmpty()){ + goodsSkuIdList.add(-1L); + } + // 已经确认了转移 + if (StringUtils.hasLength(byId.getAuthorizationUrl())){ + wrapper1.in(SlVolumeProductionZy::getScrkId,goodsSkuIdList); + + }else{ + wrapper1.in(SlVolumeProductionZy::getRkId,goodsSkuIdList); + + } + + wrapper1.eq( SlVolumeProductionZy::getDelFlag,0); wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime); Page<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectPage(page, wrapper1); - PageDTO<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> SlGoodsShelfDTO = PageDTO.of(page2, com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO.class); - List<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> list2 = SlGoodsShelfDTO.getList(); + PageDTO<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> sl = PageDTO.of(page2, com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO.class); + List<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> list2 = sl.getList(); for(com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO list:list2) { SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId()); list.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber()); @@ -203,24 +259,28 @@ SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId()); list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); list.setIsConsume(slGoodsMaterials.getIsConsume()); - SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(slVolumeProductionRk.getShelfId()); + SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId()); list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + list.setShelfId(slGoodsShelf.getId()); if(list.getScrkId()!=null){ SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(list.getScrkId()); list.setStoreManagementNumber(slVolumeProductionRk1.getStoreManagementNumber()); - list.setRkNumber(slVolumeProductionRk1.getRkNumber()); + list.setZyNumber(slVolumeProductionRk1.getRkNumber()); } + list.setZkNum(list.getRepertoryZhai()); } - v.setList(SlGoodsShelfDTO); + v.setList(sl); return v; } @Override - public VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory(Integer id) { + public VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory(String id) { SlVolumeProductionZygl byId = this.getById(id); VolumeProductionZyglInventoryVO vo = new VolumeProductionZyglInventoryVO(); - SysUser data = sysUserClient.getSysUser(byId.getId()).getData(); + + + SysUser data = sysUserClient.getSysUser(byId.getSysId()).getData(); vo.setSysPhone(data.getPhonenumber()); vo.setSysName(data.getNickName()); vo.setStartiTime(byId.getStartiTime()); @@ -289,26 +349,26 @@ } @Override - public void zy(Integer id) { + public void zy(Long id,String authorizationUrl) { SlVolumeProductionZygl byId = this.getById(id); + byId.setAuthorizationUrl(authorizationUrl); + byId.setAuditStatus(6); + byId.setPresentState(4); + byId.setEndTime(new Date()); + this.updateById(byId); LambdaQueryWrapper<SlVolumeProductionZy> wrapper1 = Wrappers.lambdaQuery(); wrapper1.eq(SlVolumeProductionZy::getZyglId, id); wrapper1.eq(SlVolumeProductionZy::getDelFlag, 0); wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime); List<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectList(wrapper1); - for (SlVolumeProductionZy zy:page2){ - SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk(); - slVolumeProductionRk.setMaterialsId(zy.getMaterialsId()); - slVolumeProductionRk.setStoreManagementNumber(zy.getStoreManagementNumber()); - slVolumeProductionRk.setManagementId(byId.getBmanagementId()); - slVolumeProductionRk.setRkNumber("CD-"+new Date().getTime()); - slVolumeProductionRk.setRkNum(Long.valueOf(zy.getZyNum())); - slVolumeProductionRk.setShelfId(zy.getShelfId()); - slVolumeProductionRk.setRepertoryZhai(Long.valueOf(zy.getZyNum())); - slVolumeProductionRk.setCreateTime(new Date()); - slVolumeProductionRkMapper.insert(slVolumeProductionRk); - zy.setScrkId(slVolumeProductionRk.getId()); - slVolumeProductionZyMapper.updateById(zy); + // 新入库ids + List<Long> collect = page2.stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList()); + for (SlVolumeProductionZy zy : page2) { + // 确认转移之后扣库存 + SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(zy.getRkId()); + slVolumeProductionRk1.setRepertoryZhai(slVolumeProductionRk1.getRepertoryZhai()-Long.valueOf(zy.getZyNum())); + slVolumeProductionRkMapper.updateById(slVolumeProductionRk1); + // 给被转移入仓库加库存数量 LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery(); wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId()); wrapper2.eq(ManagementGoodsMaterials::getManagementId,byId.getBmanagementId()); @@ -321,6 +381,7 @@ Long re1=repertoryZhai+Long.valueOf(zy.getZyNum()); managementGoodsMaterials.setRepertorySum(re); managementGoodsMaterials.setRepertoryZhai(re1); + managementGoodsMaterials.setRepertoryChu(0); managementGoodsMaterialsMapper.updateById(managementGoodsMaterials); }else{ ManagementGoodsMaterials managementGoodsMaterials1=new ManagementGoodsMaterials(); @@ -328,9 +389,27 @@ managementGoodsMaterials1.setGoodsMaterialsId(zy.getMaterialsId()); managementGoodsMaterials1.setRepertoryZhai(Long.valueOf(zy.getZyNum())); managementGoodsMaterials1.setRepertorySum(Long.valueOf(zy.getZyNum())); + managementGoodsMaterials1.setRepertoryChu(0); managementGoodsMaterials1.setCreateTime(new Date()); managementGoodsMaterialsMapper.insert(managementGoodsMaterials1); } + // 给转移仓库减去库存数量 + LambdaQueryWrapper<ManagementGoodsMaterials> wrapper3 = Wrappers.lambdaQuery(); + wrapper3.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId()); + wrapper3.eq(ManagementGoodsMaterials::getManagementId,byId.getManagementId()); + wrapper3.eq(ManagementGoodsMaterials::getDelFlag, 0); + ManagementGoodsMaterials managementGoodsMaterials1 = managementGoodsMaterialsMapper.selectOne(wrapper3); + if (managementGoodsMaterials1!=null){ + Long repertorySum = managementGoodsMaterials1.getRepertorySum(); + Long repertoryZhai = managementGoodsMaterials1.getRepertoryZhai(); + Long re=repertorySum-Long.valueOf(zy.getZyNum()); + Long re1=repertoryZhai-Long.valueOf(zy.getZyNum()); +// managementGoodsMaterials1.setRepertorySum(re); + managementGoodsMaterials1.setRepertoryZhai(re1); + managementGoodsMaterials1.setRepertoryChu(managementGoodsMaterials1.getRepertoryChu()+zy.getZyNum()); + managementGoodsMaterialsMapper.updateById(managementGoodsMaterials1); + } } + } } -- Gitblit v1.7.1