无关风月
2024-09-03 56dfe0d4bf81262622a1919cceb2b039fd356209
ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
@@ -57,35 +57,41 @@
    @Override
    public PageDTO<ManagementimgSlVolumeProductionCkVO> getManagementimgSlVolumeProductionCkList(SlGoodsMaterialsSlVolumeProductionRkQuery slGoodsMaterialsSlVolumeProductionRkQuery) {
        QueryWrapper<SlVolumeProductionRk> notNull = new QueryWrapper<SlVolumeProductionRk>()
                .eq("del_flag", "0")
                .isNotNull("new_add_time");
        if (slGoodsMaterialsSlVolumeProductionRkQuery.getId()!=null){
            notNull.eq("management_id", slGoodsMaterialsSlVolumeProductionRkQuery.getId());
        }
            QueryWrapper<SlVolumeProductionRk> notNull = new QueryWrapper<SlVolumeProductionRk>()
        // 查询该仓库的入库记录
        List<Long> collect = slVolumeProductionRkMapper.selectList(notNull
        ).stream().map(SlVolumeProductionRk::getId).collect(Collectors.toList());
        Page<SlVolumeProductionCk> page = new Page<>(slGoodsMaterialsSlVolumeProductionRkQuery.getPageCurr(), slGoodsMaterialsSlVolumeProductionRkQuery.getPageSize());
        LambdaQueryWrapper< SlVolumeProductionCk> wrapper1= Wrappers.lambdaQuery();
        wrapper1.eq(SlVolumeProductionCk::getMaterialsId,slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid());
        wrapper1.eq(SlVolumeProductionCk::getDelFlag,0);
        wrapper1.orderByDesc(SlVolumeProductionCk::getCreateTime);
        if (!collect.isEmpty()){
            wrapper1.in(SlVolumeProductionCk::getRkId,collect);
        }
        Page<SlVolumeProductionCk> page2 = this.page(page, wrapper1);
        PageDTO<ManagementimgSlVolumeProductionCkVO> SlGoodsShelfDTO = PageDTO.of(page2, ManagementimgSlVolumeProductionCkVO.class);
        List<ManagementimgSlVolumeProductionCkVO> list2 = SlGoodsShelfDTO.getList();
        for(ManagementimgSlVolumeProductionCkVO list:list2) {{
            SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
            list.setRkNumber(slVolumeProductionRk.getRkNumber());
                    .eq("del_flag", "0")
                    .isNotNull("new_add_time");
            if (slGoodsMaterialsSlVolumeProductionRkQuery.getId()!=null){
                notNull.eq("management_id", slGoodsMaterialsSlVolumeProductionRkQuery.getId());
            }
        }
        return SlGoodsShelfDTO;
            if (slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid()!=null){
                notNull.eq("materials_id", slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid());
            }
            if (slGoodsMaterialsSlVolumeProductionRkQuery.getStoreManagementNumber()!=null){
                notNull.eq("store_management_number", slGoodsMaterialsSlVolumeProductionRkQuery.getStoreManagementNumber());
            }
            // 查询该仓库的入库记录
            List<Long> collect = slVolumeProductionRkMapper.selectList(notNull
            ).stream().map(SlVolumeProductionRk::getId).collect(Collectors.toList());
            Page<SlVolumeProductionCk> page1 = new Page<>(slGoodsMaterialsSlVolumeProductionRkQuery.getPageCurr(), slGoodsMaterialsSlVolumeProductionRkQuery.getPageSize());
            LambdaQueryWrapper< SlVolumeProductionCk> wrapper2= Wrappers.lambdaQuery();
            wrapper2.like(SlVolumeProductionCk::getMaterialsId,slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid());
            wrapper2.eq(SlVolumeProductionCk::getDelFlag,0);
            wrapper2.isNotNull(SlVolumeProductionCk::getCkTime);
            wrapper2.orderByDesc(SlVolumeProductionCk::getCreateTime);
            if (!collect.isEmpty()){
                wrapper2.in(SlVolumeProductionCk::getRkId,collect);
            }
            Page<SlVolumeProductionCk> page3 = this.page(page1, wrapper2);
            PageDTO<ManagementimgSlVolumeProductionCkVO> SlGoodsShelfDTO1 = PageDTO.of(page3, ManagementimgSlVolumeProductionCkVO.class);
            List<ManagementimgSlVolumeProductionCkVO> list3 = SlGoodsShelfDTO1.getList();
            for(ManagementimgSlVolumeProductionCkVO list:list3) {{
                SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
                list.setRkNumber(slVolumeProductionRk.getRkNumber());
            }
            }
            return SlGoodsShelfDTO1;
    }
    @Override
@@ -117,6 +123,11 @@
    @Override
    public void addSlVolumeProductionCk(List<AddSlVolumeProductionCkDTO> addSlVolumeProductionCkDTO) {
        List<SlVolumeProductionCk> list = this.lambdaQuery().eq(SlVolumeProductionCk::getCkglId, addSlVolumeProductionCkDTO.get(0).getCkgl_id())
                .eq(SlVolumeProductionCk::getDelFlag, "0").list();
        if (!list.isEmpty()){
            this.removeBatchByIds(list.stream().map(SlVolumeProductionCk::getId).collect(Collectors.toList()));
        }
        for (AddSlVolumeProductionCkDTO m:addSlVolumeProductionCkDTO){
            SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m.getRkId());
            SlVolumeProductionCk slVolumeProductionCk=new SlVolumeProductionCk();
@@ -222,6 +233,14 @@
        PageDTO<InventoriesSuppliesInfoVO> slGoodsMaterialsVO = PageDTO.of(page2, InventoriesSuppliesInfoVO.class);
        for (SlVolumeProductionRk slVolumeProductionRk : list) {
            SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId());
            StringBuilder stringBuilder = new StringBuilder();
            for (String s : slVolumeProductionRk.getShelfId().split(",")) {
                SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(s);
                if (slGoodsShelf!=null){
                    stringBuilder.append(slGoodsShelf.getGoodsShelfName()).append(",");
                }
            }
            SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(slVolumeProductionRk.getShelfId());
            if (slGoodsMaterials == null || slGoodsShelf == null){
                continue;
@@ -234,8 +253,11 @@
            inventoriesSuppliesInfoVO.setRkModel(slVolumeProductionRk.getRkModel());
            inventoriesSuppliesInfoVO.setRkId(slVolumeProductionRk.getId());
            inventoriesSuppliesInfoVO.setZkNum(slVolumeProductionRk.getRepertoryZhai());
            inventoriesSuppliesInfoVO.setGoodsShelfName(slGoodsShelf.getGoodsShelfName());
            inventoriesSuppliesInfoVO.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber());
            // 去除最后一位字符
            if (StringUtils.hasLength(stringBuilder.toString())){
                inventoriesSuppliesInfoVO.setGoodsShelfName(stringBuilder.substring(0, stringBuilder.length() - 1));
            }
            res.add(inventoriesSuppliesInfoVO);
        }
        slGoodsMaterialsVO.setList(res);