From 8876b1b9cd27fad076ea9e5f3e04197b84ba02bd Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 01 八月 2024 14:26:56 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java | 256 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 203 insertions(+), 53 deletions(-) diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java index 3dcb1ac..2894d97 100644 --- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java +++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java @@ -6,9 +6,7 @@ import com.ruoyi.common.core.utils.page.PageDTO; import com.ruoyi.management.domain.*; import com.ruoyi.management.domain.dto.*; -import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionRkVO; -import com.ruoyi.management.domain.vo.SlGoodsShelfVO; -import com.ruoyi.management.domain.vo.getVolumeProductionRkgCodeVO; +import com.ruoyi.management.domain.vo.*; import com.ruoyi.management.mapper.*; import com.ruoyi.management.service.SlStoreManagementService; import com.ruoyi.management.service.SlVolumeProductionRkService; @@ -19,9 +17,10 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.Date; -import java.util.List; -import java.util.Set; +import java.math.BigDecimal; +import java.sql.Array; +import java.text.SimpleDateFormat; +import java.util.*; import java.util.stream.Collectors; /** @@ -38,6 +37,8 @@ private SlGoodsMaterialsMapper slGoodsMaterialsMapper; @Resource private SlVolumeProductionRkglMapper slVolumeProductionRkglMapper; + @Resource + private SlVolumeProductionRkMapper slVolumeProductionRkMapper; @Resource private SlGoodsShelfMapper slGoodsShelfMapper; @@ -47,6 +48,9 @@ @Resource private SysUserClient sysUserClient; + + @Resource + private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper; @@ -71,7 +75,16 @@ list.setIsConsume(slGoodsMaterials.getIsConsume()); list.setSupplierName(data.getNickName()); SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId()); - list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + if (slGoodsShelf!=null){ + list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + } + LambdaQueryWrapper<SlGoodsShelf> wrapper5= Wrappers.lambdaQuery(); + wrapper5.eq(SlGoodsShelf::getStoreManagementId,byId.getManagementId()); + wrapper5.eq(SlGoodsShelf::getStoreManagementNumber,list.getStoreManagementNumber()); + wrapper5.eq( SlGoodsShelf::getDelFlag,0); + wrapper5.orderByDesc(SlGoodsShelf::getCreateTime); + List<SlGoodsShelf> page3 = slGoodsShelfMapper.selectList(wrapper5); + list.setSlGoodsShelfs(page3); } } return SlGoodsShelfDTO; @@ -90,52 +103,82 @@ for(ManagementimgVolumeProductionRkVO list:list2) {{ SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId()); + if (slGoodsMaterials!=null){ + list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); + list.setIsConsume(slGoodsMaterials.getIsConsume()); + } SlVolumeProductionRkgl byId = slVolumeProductionRkglMapper.selectById(list.getVolumeProductionRkglId()); - SysUser data = sysUserClient.getSysUser(byId.getSupplierId()).getData(); + if (byId!=null){ + SysUser data = sysUserClient.getSysUser(byId.getSupplierId()).getData(); + list.setSupplierName(data.getNickName()); + } - list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); - list.setIsConsume(slGoodsMaterials.getIsConsume()); - list.setSupplierName(data.getNickName()); + SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId()); - list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + if (slGoodsShelf!=null){ + list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + + } } } return SlGoodsShelfDTO; } @Override - public void addVolumeProductionRkgl(SlVolumeProductionRkListDTO slVolumeProductionRkListDTO) { - List<Long> materialsId = slVolumeProductionRkListDTO.getMaterialsId(); - for (Long m:materialsId){ + public void addVolumeProductionRkgl(List<SlVolumeProductionRkListDTO> slVolumeProductionRkListDTO) { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); + for (SlVolumeProductionRkListDTO m:slVolumeProductionRkListDTO){ SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk(); - slVolumeProductionRk.setVolumeProductionRkglId(slVolumeProductionRkListDTO.getVolumeProductionRkglId()); - slVolumeProductionRk.setMaterialsId(m); - slVolumeProductionRk.setManagementId(slVolumeProductionRkListDTO.getManagementId()); - slVolumeProductionRk.setRkNumber("CD-"+new Date().getTime()); + slVolumeProductionRk.setVolumeProductionRkglId(m.getVolumeProductionRkglId()); + slVolumeProductionRk.setMaterialsId(m.getMaterialsId()); + slVolumeProductionRk.setManagementId(m.getManagementId()); + slVolumeProductionRk.setRkNumber("CD-"+simpleDateFormat.format(new Date())); + slVolumeProductionRk.setNewAddTime(m.getNewAddTime()); + if ( m.getErwmNum()!=null){ + slVolumeProductionRk.setErwmNum( m.getErwmNum()); + }if ( m.getRkPice()!=null){ + slVolumeProductionRk.setRkPice( m.getRkPice()); + }if ( m.getRkNum()!=null){ + slVolumeProductionRk.setRkNum( m.getRkNum()); + }if ( m.getShelfId()!=null){ + slVolumeProductionRk.setShelfId( m.getShelfId()); + }if ( m.getRkModel()!=null){ + slVolumeProductionRk.setRkModel( m.getRkModel()); + }if ( m.getStoreManagementNumber()!=null){ + slVolumeProductionRk.setStoreManagementNumber( m.getStoreManagementNumber()); + }if ( m.getRkNumber()!=null){ + slVolumeProductionRk.setRkNumber( m.getRkNumber()); + } + slVolumeProductionRk.setCreateTime(new Date()); + slVolumeProductionRk.setRepertoryZhai(m.getRkNum()); this.save(slVolumeProductionRk); } } @Override - public void uplSlVolumeProductionRk(SlVolumeProductionRkDTO SlVolumeProductionRkDTO) { - SlVolumeProductionRk byId = this.getById(SlVolumeProductionRkDTO.getId()); - if (SlVolumeProductionRkDTO.getErwmNum()!=null){ - byId.setErwmNum(SlVolumeProductionRkDTO.getErwmNum()); - }if (SlVolumeProductionRkDTO.getRkPice()!=null){ - byId.setRkPice(SlVolumeProductionRkDTO.getRkPice()); - }if (SlVolumeProductionRkDTO.getRkNum()!=null){ - byId.setRkNum(SlVolumeProductionRkDTO.getRkNum()); - }if (SlVolumeProductionRkDTO.getShelfId()!=null){ - byId.setShelfId(SlVolumeProductionRkDTO.getShelfId()); - }if (SlVolumeProductionRkDTO.getRkModel()!=null){ - byId.setRkModel(SlVolumeProductionRkDTO.getRkModel()); - }if (SlVolumeProductionRkDTO.getStoreManagementNumber()!=null){ - byId.setStoreManagementNumber(SlVolumeProductionRkDTO.getStoreManagementNumber()); - }if (SlVolumeProductionRkDTO.getRkNumber()!=null){ - byId.setRkNumber(SlVolumeProductionRkDTO.getRkNumber()); + public void uplSlVolumeProductionRk(List<SlVolumeProductionRkDTO> SlVolumeProductionRkDTO) { + for (SlVolumeProductionRkDTO a:SlVolumeProductionRkDTO){ + SlVolumeProductionRk byId = this.getById(a.getId()); + if (a.getErwmNum()!=null){ + byId.setErwmNum(a.getErwmNum()); + }if (a.getRkPice()!=null){ + byId.setRkPice(a.getRkPice()); + }if (a.getRkNum()!=null){ + byId.setRkNum(a.getRkNum()); + }if (a.getShelfId()!=null){ + byId.setShelfId(a.getShelfId()); + }if (a.getRkModel()!=null){ + byId.setRkModel(a.getRkModel()); + }if (a.getStoreManagementNumber()!=null){ + byId.setStoreManagementNumber(a.getStoreManagementNumber()); + }if (a.getRkNumber()!=null){ + byId.setRkNumber(a.getRkNumber()); + } + byId.setNewAddTime(a.getNewAddTime()); + this.updateById(byId); } - this.updateById(byId); + } @Override @@ -148,37 +191,71 @@ Page<SlVolumeProductionRk> page2 = this.page(page, wrapper1); PageDTO<getVolumeProductionRkgCodeVO> SlGoodsShelfDTO = PageDTO.of(page2, getVolumeProductionRkgCodeVO.class); List<getVolumeProductionRkgCodeVO> list2 = SlGoodsShelfDTO.getList(); - for(getVolumeProductionRkgCodeVO list:list2) {{ + for(getVolumeProductionRkgCodeVO list:list2) { SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId()); list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); list.setIsConsume(slGoodsMaterials.getIsConsume()); - } } return SlGoodsShelfDTO; } @Override - public ManagementimgVolumeProductionRkVO codeInfo(Integer id) { - SlVolumeProductionRk byId = this.getById(id); - ManagementimgVolumeProductionRkVO vo=new ManagementimgVolumeProductionRkVO(); - SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(byId.getMaterialsId()); - vo.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); - vo.setIsConsume(slGoodsMaterials.getIsConsume()); - SlVolumeProductionRkgl byId1 = slVolumeProductionRkglMapper.selectById(byId.getVolumeProductionRkglId()); - SysUser data = sysUserClient.getSysUser(byId1.getSupplierId()).getData(); - vo.setSupplierName(data.getNickName()); - SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId()); - vo.setStoreManagementName(slStoreManagement.getStoreManagementName()); - vo.setRkNum(byId.getRkNum()); - vo.setRkNumber(byId.getRkNumber()); - return vo; + public List<QRCodeVO> codeInfo(Long id) { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); + List<QRCodeVO> res = new ArrayList<>(); + LambdaQueryWrapper< SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery(); + wrapper1.like(SlVolumeProductionRk::getVolumeProductionRkglId,id); + wrapper1.eq( SlVolumeProductionRk::getDelFlag,0); + wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime); + List<SlVolumeProductionRk> list = this.list(wrapper1); + for (SlVolumeProductionRk byId : list) { + // 根据生成二维码数量 复制 + for (int i = 0; i < byId.getErwmNum(); i++) { + QRCodeVO vo=new QRCodeVO(); + String letter = getLetter(i); + vo.setCategory(letter); + SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(byId.getMaterialsId()); + vo.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); + SlVolumeProductionRkgl byId1 = slVolumeProductionRkglMapper.selectById(byId.getVolumeProductionRkglId()); + SysUser data = sysUserClient.getSysUser(byId1.getSupplierId()).getData(); + vo.setSupplierName(data.getNickName()); + vo.setMaterialsNum(byId.getRkNum()); + Long materialsId = byId.getMaterialsId(); + // 查询物资缩写 + vo.setMaterials(byId.getRkNumber()); + SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId()); + vo.setStoreManagementName(slStoreManagement.getStoreManagementName()); + res.add(vo); + } + + } + + + return res; } + // 根据传入数字是几 返回对应的字母 + public static String getLetter(int num) { + String[] str = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"}; + // 如果num大于26 那么往后叠加对应的字母 + if (num > 26) { + int a = num / 26; + int b = num % 26; + if (b == 0) { + a = a - 1; + b = 26; + } + return getLetter(a) + getLetter(b); + } + return str[num - 1]; + } @Override public PageDTO<ManagementimgVolumeProductionRkVO> getroductionRkList(umeProductionRkQuery meProductionRkQuery) { LambdaQueryWrapper< SlGoodsMaterials> wrapper= Wrappers.lambdaQuery(); - wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,meProductionRkQuery.getGoodsMaterialsName()); + if (meProductionRkQuery.getGoodsMaterialsName()!=null&&meProductionRkQuery.getGoodsMaterialsName()!=""){ + wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,meProductionRkQuery.getGoodsMaterialsName()); + } if (meProductionRkQuery.getIsConsume()!=0){ wrapper.eq(SlGoodsMaterials::getIsConsume,meProductionRkQuery.getIsConsume()); } @@ -192,9 +269,15 @@ Page<SlVolumeProductionRk> page = new Page<>(meProductionRkQuery.getPageCurr(), meProductionRkQuery.getPageSize()); LambdaQueryWrapper<SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery(); + if(meProductionRkQuery.getManagementId()!=null&&meProductionRkQuery.getManagementId()!=0){ wrapper1.eq(SlVolumeProductionRk::getManagementId,meProductionRkQuery.getManagementId()); + } if (goodsSkuIdList.size()>0){ wrapper1.in(SlVolumeProductionRk::getMaterialsId,goodsSkuIdList); + }if(meProductionRkQuery.getStoreManagementNumber()!=null&&meProductionRkQuery.getStoreManagementNumber()!=0){ + wrapper1.eq(SlVolumeProductionRk::getStoreManagementNumber,meProductionRkQuery.getStoreManagementNumber()); + }if(meProductionRkQuery.getShelfId()!=null&&meProductionRkQuery.getShelfId()!=0){ + wrapper1.eq(SlVolumeProductionRk::getShelfId,meProductionRkQuery.getShelfId()); } wrapper1.eq( SlVolumeProductionRk::getDelFlag,0); wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime); @@ -216,4 +299,71 @@ return SlGoodsShelfDTO; } + @Override + public PageDTO<gethuojRkVO> gethuojRkList(gethuojRkQuery gethuojRkQuery) { + LambdaQueryWrapper< SlGoodsMaterials> wrapper= Wrappers.lambdaQuery(); + if (gethuojRkQuery.getGoodsMaterialsName()!=null&&gethuojRkQuery.getGoodsMaterialsName()!=""){ + wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,gethuojRkQuery.getGoodsMaterialsName()); + } + + wrapper.eq( SlGoodsMaterials::getDelFlag,0); + List<SlGoodsMaterials> page1 = slGoodsMaterialsMapper.selectList(wrapper); + + Set<Long> goodsSkuIdList = null; + goodsSkuIdList = page1.stream().map(SlGoodsMaterials::getId) + .collect(Collectors.toSet()); + + Page<SlVolumeProductionRk> page = new Page<>(gethuojRkQuery.getPageCurr(), gethuojRkQuery.getPageSize()); + LambdaQueryWrapper<SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery(); + if (gethuojRkQuery.getGoodsMaterialsName()!=null&&gethuojRkQuery.getGoodsMaterialsName()!=""){ + if (goodsSkuIdList.size()>0) { + wrapper1.in(SlVolumeProductionRk::getMaterialsId, goodsSkuIdList); + }else{ + goodsSkuIdList=new HashSet<>(); + goodsSkuIdList.add(0L); + wrapper1.in(SlVolumeProductionRk::getMaterialsId, goodsSkuIdList); + } + } + wrapper1.eq(SlVolumeProductionRk::getShelfId,gethuojRkQuery.getGoodsShelid()); + wrapper1.eq( SlVolumeProductionRk::getDelFlag,0); + wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime); + Page<SlVolumeProductionRk> page2 = this.page(page, wrapper1); + PageDTO<gethuojRkVO> SlGoodsShelfDTO = PageDTO.of(page2, gethuojRkVO.class); + List<gethuojRkVO> list2 = SlGoodsShelfDTO.getList(); + for(gethuojRkVO list:list2) { + + LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery(); + wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId()); + wrapper2.eq(ManagementGoodsMaterials::getManagementId,list.getManagementId()); + wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0); + ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2); + if (managementGoodsMaterials != null){ + list.setRkPiceSum(list.getRkPice().multiply(new BigDecimal(managementGoodsMaterials.getRepertorySum()))); + list.setRepertorySum(managementGoodsMaterials.getRepertorySum()); + }else{ + list.setRkPiceSum(list.getRkPice().multiply(new BigDecimal(1))); + list.setRepertorySum(0L); + } + + SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId()); + SlVolumeProductionRkgl byId = slVolumeProductionRkglMapper.selectById(list.getVolumeProductionRkglId()); + if (byId!=null){ + SysUser data = sysUserClient.getSysUser(byId.getSupplierId()).getData(); + list.setSupplierName(data.getNickName()); + } + + if (slGoodsMaterials!=null){ + list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); + list.setIsConsume(slGoodsMaterials.getIsConsume()); + } + + SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId()); + if (slGoodsShelf!=null){ + list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + + } + } + return SlGoodsShelfDTO; + } + } -- Gitblit v1.7.1