无关风月
2024-09-03 56dfe0d4bf81262622a1919cceb2b039fd356209
ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyServiceImpl.java
@@ -1,24 +1,29 @@
package com.ruoyi.management.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.management.domain.*;
import com.ruoyi.management.domain.dto.*;
import com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO;
import com.ruoyi.management.domain.vo.*;
import com.ruoyi.management.mapper.*;
import com.ruoyi.management.service.SlVolumeProductionZyService;
import com.ruoyi.management.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.management.util.UUIDUtil;
import com.ruoyi.system.api.domain.SysUser;
import com.ruoyi.system.api.domain.getVolumeProductionRkQuery;
import com.ruoyi.system.api.feignClient.SysUserClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Set;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -35,12 +40,16 @@
    @Resource
    private SlVolumeProductionRkMapper slVolumeProductionRkMapper;
    @Resource
    private SlVolumeProductionRkglMapper slVolumeProductionRkglMapper;
    @Resource
    private SlGoodsMaterialsMapper slGoodsMaterialsMapper;
    @Resource
    private SlVolumeProductionZyglMapper slVolumeProductionZyglMapper;
    @Resource
    private SlGoodsShelfMapper slGoodsShelfMapper;
    @Autowired
    private SlStoreManagementService service;
    @Override
    public PageDTO<getVolumeProductionzyCodeVO> getVolumeProductionzyCode(VolumeProductionZygCodeQuery volumeProductionZygCodeQuery) {
@@ -80,21 +89,400 @@
    }
    @Override
    public void addSlVolumeProductionZy(AddaddSlVolumeProductionZyDTO addaddSlVolumeProductionZyDTO) {
        List<Long> rkId = addaddSlVolumeProductionZyDTO.getRkId();
        for (Long m:rkId){
            SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m);
            SlVolumeProductionZy slVolumeProductionZy=new SlVolumeProductionZy();
            slVolumeProductionZy.setRkId(m);
            slVolumeProductionZy.setZyglId(addaddSlVolumeProductionZyDTO.getZygl_id());
            slVolumeProductionZy.setState(1);
            slVolumeProductionZy.setMaterialsId(slVolumeProductionRk.getMaterialsId());
            slVolumeProductionZy.setZyglId(addaddSlVolumeProductionZyDTO.getZygl_id());
            this.save(slVolumeProductionZy);
        }
    }
    @Resource
    private SlAuditService slAuditService;
    @Resource
    private SlAuditRecordService slAuditRecordService;
    @Resource
    private SlVolumeProductionZyMapper slVolumeProductionZyMapper;
    @Resource
    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
    @Resource
    private SlGoodsShelfService slGoodsShelfService;
    @Resource
    private SlStoreManagementMapper slStoreManagementMapper;
    @Override
    public R addSlVolumeProductionZy(ADDZYDTO addaddSlVolumeProductionZyDTO) {
        SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(addaddSlVolumeProductionZyDTO.getManagementId());
        String directorId = slStoreManagement.getDirectorId();
        String competentId = slStoreManagement.getCompetentId();
        String administratorId = slStoreManagement.getAdministratorId();
        List<String> list1 = Arrays.asList(administratorId.split(","));
        List<String> list2 = Arrays.asList(competentId.split(","));
        List<String> list3 = Arrays.asList(directorId.split(","));
        List<AddZYIdsDTO> rkId = addaddSlVolumeProductionZyDTO.getAddZYIdsDTOS();
        for (AddZYIdsDTO addZYIdsDTO : rkId) {
            Long shelfId = addZYIdsDTO.getShelfId();
            SlGoodsShelf byId = slGoodsShelfService.getById(shelfId);
            if (byId!=null){
                if (byId.getImgId() == null){
                    return R.fail("货架名称:"+byId.getGoodsShelfName()+"未配置货架");
                }
            }else{
                return R.fail("货架不存在");
            }
        }
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
        Long userid = SecurityUtils.getUserId();
        if (addaddSlVolumeProductionZyDTO.getId()==null){
                // 新增转移管理
                SlVolumeProductionZygl slVolumeProductionZygl=new SlVolumeProductionZygl();
                slVolumeProductionZygl.setAttachmentUrl(addaddSlVolumeProductionZyDTO.getAttachmentUrl());
                slVolumeProductionZygl.setAuthorizationUrl(addaddSlVolumeProductionZyDTO.getAuthorization());
                slVolumeProductionZygl.setSource(addaddSlVolumeProductionZyDTO.getSource());
                slVolumeProductionZygl.setManagementId(addaddSlVolumeProductionZyDTO.getManagementId());
                slVolumeProductionZygl.setBmanagementId(addaddSlVolumeProductionZyDTO.getBmanagementId());
                slVolumeProductionZygl.setSysId(userid);
                slVolumeProductionZygl.setStartiTime(new Date());
            // 如果发起人是主任 主管 或 管理员
            if (list1.contains(userid.toString())){
                slVolumeProductionZygl.setAuditStatus(1);
                slVolumeProductionZygl.setPresentState(2);
            }
            if (list2.contains(userid.toString())){
                slVolumeProductionZygl.setAuditStatus(1);
                slVolumeProductionZygl.setPresentState(3);
            }
            if (list3.contains(userid.toString())){
                slVolumeProductionZygl.setAuditStatus(3);
                slVolumeProductionZygl.setPresentState(4);
            }else{
                slVolumeProductionZygl.setAuditStatus(1);
                slVolumeProductionZygl.setPresentState(1);
            }
            slVolumeProductionZyglMapper.insert(slVolumeProductionZygl);
            addaddSlVolumeProductionZyDTO.setId(slVolumeProductionZygl.getId());
            // 新增
            for (AddZYIdsDTO m:rkId){
                SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m.getRkId());
            Long volumeProductionRkglId = slVolumeProductionRk.getVolumeProductionRkglId();
            SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(volumeProductionRkglId);
                SlVolumeProductionZy slVolumeProductionZy=new SlVolumeProductionZy();
                slVolumeProductionZy.setRkId(m.getRkId());
                slVolumeProductionZy.setZyglId(slVolumeProductionZygl.getId());
                slVolumeProductionZy.setState(1);
                slVolumeProductionZy.setMaterialsId(slVolumeProductionRk.getMaterialsId());
                slVolumeProductionZy.setZyNum(m.getZyNum());
                slVolumeProductionZy.setCreateTime(new Date());
                slVolumeProductionZy.setStoreManagementNumber(m.getStoreManagementNumber());
                slVolumeProductionZy.setShelfId(m.getShelfId());
                slVolumeProductionZy.setSysId(userid);
                if (slVolumeProductionRkgl!=null){
                    if (slVolumeProductionRkgl.getSupplierId()!=null){
                        slVolumeProductionZy.setSupplierId(Integer.valueOf(slVolumeProductionRkgl.getSupplierId().toString()));
                    }
                }
                this.save(slVolumeProductionZy);
            }
            LambdaQueryWrapper<SlVolumeProductionZy> wrapper1 = Wrappers.lambdaQuery();
            wrapper1.eq(SlVolumeProductionZy::getZyglId, slVolumeProductionZygl.getId());
            wrapper1.eq(SlVolumeProductionZy::getDelFlag, 0);
            wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime);
            List<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectList(wrapper1);
            for (SlVolumeProductionZy zy:page2){
                SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk();
                SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(zy.getMaterialsId());
                if (slGoodsMaterials!=null){
                    slVolumeProductionRk.setRkNumber(slGoodsMaterials.getGoodsMaterialsNo()+"-"+simpleDateFormat.format(new Date())+ UUIDUtil.getNumberRandom(2));
                }
                SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(zy.getRkId());
                SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(slVolumeProductionRk1.getVolumeProductionRkglId());
                slVolumeProductionRk.setSupplierId(slVolumeProductionRkgl.getSupplierId());
                slVolumeProductionRk.setMaterialsId(zy.getMaterialsId());
                slVolumeProductionRk.setStoreManagementNumber(zy.getStoreManagementNumber());
                slVolumeProductionRk.setManagementId(slVolumeProductionZygl.getBmanagementId());
                slVolumeProductionRk.setRkNum(Long.valueOf(zy.getZyNum()));
                SlVolumeProductionRk slVolumeProductionRk2 = slVolumeProductionRkMapper.selectById(zy.getRkId());
                if (slVolumeProductionRk2!=null){
                    slVolumeProductionRk.setRkModel(slVolumeProductionRk2.getRkModel());
                    slVolumeProductionRk.setRkPice(slVolumeProductionRk2.getRkPice());
                }
                slVolumeProductionRk.setShelfId(zy.getShelfId().toString());
                slVolumeProductionRk.setRepertoryZhai(Long.valueOf(zy.getZyNum()));
                slVolumeProductionRk.setCreateTime(new Date());
                slVolumeProductionRkMapper.insert(slVolumeProductionRk);
                zy.setScrkId(slVolumeProductionRk.getId());
                slVolumeProductionZyMapper.updateById(zy);
            }
        }else{
            // 修改
            SlVolumeProductionZygl byId = slVolumeProductionZyglMapper.selectById(addaddSlVolumeProductionZyDTO.getId());
            if (addaddSlVolumeProductionZyDTO.getSource()!=null){
                byId.setSource(addaddSlVolumeProductionZyDTO.getSource());
            }
            if (addaddSlVolumeProductionZyDTO.getAttachmentUrl()!=null){
                byId.setAttachmentUrl(addaddSlVolumeProductionZyDTO.getAttachmentUrl());
            }
            if (addaddSlVolumeProductionZyDTO.getAuthorization()!=null){
                byId.setAuthorizationUrl(addaddSlVolumeProductionZyDTO.getAuthorization());
            }
            // 如果发起人是主任 主管 或 管理员
            if (list1.contains(userid.toString())){
                byId.setAuditStatus(1);
                byId.setPresentState(2);
            }
            if (list2.contains(userid.toString())){
                byId.setAuditStatus(1);
                byId.setPresentState(3);
            }
            if (list3.contains(userid.toString())){
                byId.setAuditStatus(3);
                byId.setPresentState(4);
            }else{
                byId.setAuditStatus(1);
                byId.setPresentState(1);
            }
            slVolumeProductionZyglMapper.updateById(byId);
            QueryWrapper<SlVolumeProductionZy> slVolumeProductionZyQueryWrapper = new QueryWrapper<>();
            slVolumeProductionZyQueryWrapper.eq("zygl_id",addaddSlVolumeProductionZyDTO.getId());
            this.remove(slVolumeProductionZyQueryWrapper);
            for (AddZYIdsDTO m:addaddSlVolumeProductionZyDTO.getAddZYIdsDTOS()){
                SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m.getRkId());
                slVolumeProductionRk.setRkPice(slVolumeProductionRk.getRkPice());
                // todo 目前还不知道转移管理存不存供应商id
                Long volumeProductionRkglId = slVolumeProductionRk.getVolumeProductionRkglId();
                SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(volumeProductionRkglId);
                SlVolumeProductionZy slVolumeProductionZy=new SlVolumeProductionZy();
                slVolumeProductionZy.setRkId(m.getRkId());
                slVolumeProductionZy.setZyglId(addaddSlVolumeProductionZyDTO.getId());
                slVolumeProductionZy.setState(1);
                slVolumeProductionZy.setMaterialsId(slVolumeProductionRk.getMaterialsId());
                slVolumeProductionZy.setZyNum(m.getZyNum());
                slVolumeProductionZy.setCreateTime(new Date());
                slVolumeProductionZy.setStoreManagementNumber(m.getStoreManagementNumber());
                slVolumeProductionZy.setShelfId(m.getShelfId());
                slVolumeProductionZy.setSysId(userid);
                slVolumeProductionZy.setRkId(m.getRkId());
                SlVolumeProductionRk slVolumeProductionRk1=new SlVolumeProductionRk();
                SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId());
                if (slGoodsMaterials!=null){
                    slVolumeProductionRk1.setRkNumber(slGoodsMaterials.getGoodsMaterialsNo()+"-"+simpleDateFormat.format(new Date())+ UUIDUtil.getNumberRandom(2));
                }
                slVolumeProductionRk1.setMaterialsId(slVolumeProductionRk.getMaterialsId());
                slVolumeProductionRk1.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber());
                slVolumeProductionRk1.setManagementId(byId.getBmanagementId());
                slVolumeProductionRk1.setRkNum(Long.valueOf(m.getZyNum()));
                SlVolumeProductionRk slVolumeProductionRk2 = slVolumeProductionRkMapper.selectById(m.getRkId());
                if (slVolumeProductionRk2!=null){
                    slVolumeProductionRk1.setRkModel(slVolumeProductionRk2.getRkModel());
                    slVolumeProductionRk1.setRkPice(slVolumeProductionRk2.getRkPice());
                }
                slVolumeProductionRk1.setShelfId(slVolumeProductionRk.getShelfId());
                slVolumeProductionRk1.setRepertoryZhai(Long.valueOf(m.getZyNum()));
                slVolumeProductionRk1.setCreateTime(new Date());
                slVolumeProductionRkMapper.insert(slVolumeProductionRk1);
                slVolumeProductionZy.setScrkId(slVolumeProductionRk1.getId());
                slVolumeProductionZyMapper.updateById(slVolumeProductionZy);
                if (slVolumeProductionRkgl!=null){
                    if (slVolumeProductionRkgl.getSupplierId()!=null){
                        slVolumeProductionZy.setSupplierId(Integer.valueOf(slVolumeProductionRkgl.getSupplierId().toString()));
                    }
                }
                this.save(slVolumeProductionZy);
//                slVolumeProductionZyQueryWrapper.eq("rk_id",z.getRkId());
//                slVolumeProductionZyQueryWrapper.eq("del_flag","0");
//                slVolumeProductionZyQueryWrapper.eq("shelf_id",z.getShelfId());
//                slVolumeProductionZyQueryWrapper.eq("store_management_number",z.getStoreManagementNumber());
//                SlVolumeProductionZy one = this.getOne(slVolumeProductionZyQueryWrapper);
//                if (one!=null){
//                    one.setZyNum(z.getZyNum());
//
//                }
//                this.updateById(one);
            }
        }
        // 添加/修改审核记录
        LambdaQueryWrapper< SlAudit> wrapper= Wrappers.lambdaQuery();
        if (addaddSlVolumeProductionZyDTO.getId()!=null){
            wrapper.eq(SlAudit::getRkId,addaddSlVolumeProductionZyDTO.getId());
        }
        wrapper.eq(SlAudit::getType,3);
        wrapper.eq( SlAudit::getDelFlag,0);
        wrapper.orderByDesc(SlAudit::getCreateTime);
        SlAudit page1 = slAuditService.getOne(wrapper);
        if (page1!=null){
            LambdaQueryWrapper<SlAuditRecord> wrapper1= Wrappers.lambdaQuery();
            wrapper1.eq(SlAuditRecord::getAuditId,page1.getId());
            List<SlAuditRecord> slAuditRecords = slAuditRecordService.list(wrapper1);
            for (SlAuditRecord lAuditRecord:slAuditRecords){
                slAuditRecordService.removeById(lAuditRecord.getId());
            }
            slAuditService.removeById(page1);
        }
        SlAudit slAudit=new SlAudit();
        slAudit.setType(3);
        slAudit.setState(1);
        slAudit.setCreateTime(new Date());
        slAudit.setRkId(addaddSlVolumeProductionZyDTO.getId());
        if (slAudit.getType()==3){
            SlVolumeProductionZygl slVolumeProductionZygl = slVolumeProductionZyglMapper.selectById(addaddSlVolumeProductionZyDTO.getId());
            slAudit.setSysId(slVolumeProductionZygl.getSysId());
            slAudit.setManagementId(slVolumeProductionZygl.getManagementId());
            slAudit.setZymanagementId(slVolumeProductionZygl.getBmanagementId());
            slVolumeProductionZygl.setPresentState(1);
            slVolumeProductionZygl.setAuditStatus(1);
            slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
            SlStoreManagement byId = slStoreManagementService.getById(slVolumeProductionZygl.getManagementId());
            slAudit.setShenhId(byId.getAdministratorId());
            slAuditService.save(slAudit);
            if (list3.contains(userid.toString())){
                slAudit.setState(4);
                slAuditService.saveOrUpdate(slAudit);
                slVolumeProductionZygl.setAuditStatus(4);
                slVolumeProductionZygl.setPresentState(3);
                slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
                // 主任发起 主管和管理员默认审核通过
                SlAuditRecord slAuditRecord4=new SlAuditRecord();
                slAuditRecord4.setAuditId(slAudit.getId());
                slAuditRecord4.setShenhId(byId.getDirectorId());
                slAuditRecord4.setType(3);
                slAuditRecord4.setState(2);
                slAuditRecord4.setShenhTime(new Date());
                slAuditRecord4.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord4);
                SlAuditRecord slAuditRecord3=new SlAuditRecord();
                slAuditRecord3.setAuditId(slAudit.getId());
                slAuditRecord3.setShenhId(byId.getCompetentId());
                slAuditRecord3.setType(2);
                slAuditRecord3.setState(2);
                slAuditRecord3.setShenhTime(new Date());
                slAuditRecord3.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord3);
                SlAuditRecord slAuditRecord2=new SlAuditRecord();
                slAuditRecord2.setAuditId(slAudit.getId());
                slAuditRecord2.setShenhId(byId.getAdministratorId());
                slAuditRecord2.setType(1);
                slAuditRecord2.setState(2);
                slAuditRecord2.setShenhTime(new Date());
                slAuditRecord2.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord2);
            }else if (list2.contains(userid.toString())){
                slAudit.setState(3);
                slAuditService.saveOrUpdate(slAudit);
                slVolumeProductionZygl.setAuditStatus(3);
                slVolumeProductionZygl.setPresentState(1);
                slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
                // 如果是主管
                SlAuditRecord slAuditRecord3=new SlAuditRecord();
                slAuditRecord3.setAuditId(slAudit.getId());
                slAuditRecord3.setShenhId(byId.getCompetentId());
                slAuditRecord3.setType(2);
                slAuditRecord3.setState(2);
                slAuditRecord3.setShenhTime(new Date());
                slAuditRecord3.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord3);
                SlAuditRecord slAuditRecord2=new SlAuditRecord();
                slAuditRecord2.setAuditId(slAudit.getId());
                slAuditRecord2.setShenhId(byId.getAdministratorId());
                slAuditRecord2.setType(1);
                slAuditRecord2.setState(2);
                slAuditRecord2.setShenhTime(new Date());
                slAuditRecord2.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord2);
                SlAuditRecord slAuditRecord4=new SlAuditRecord();
                slAuditRecord4.setAuditId(slAudit.getId());
                slAuditRecord4.setShenhId(byId.getDirectorId());
                slAuditRecord4.setType(3);
                slAuditRecord4.setState(1);
                slAuditRecord4.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord4);
            }else if (list1.contains(userid.toString())){
                // 如果是管理员
                slAudit.setState(2);
                slAuditService.saveOrUpdate(slAudit);
                slVolumeProductionZygl.setAuditStatus(2);
                slVolumeProductionZygl.setPresentState(1);
                slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
                // 如果是主管
                SlAuditRecord slAuditRecord3=new SlAuditRecord();
                slAuditRecord3.setAuditId(slAudit.getId());
                slAuditRecord3.setShenhId(byId.getCompetentId());
                slAuditRecord3.setType(2);
                slAuditRecord3.setState(1);
                slAuditRecord3.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord3);
                SlAuditRecord slAuditRecord2=new SlAuditRecord();
                slAuditRecord2.setAuditId(slAudit.getId());
                slAuditRecord2.setShenhId(byId.getAdministratorId());
                slAuditRecord2.setType(1);
                slAuditRecord2.setState(2);
                slAuditRecord2.setShenhTime(new Date());
                slAuditRecord2.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord2);
                SlAuditRecord slAuditRecord4=new SlAuditRecord();
                slAuditRecord4.setAuditId(slAudit.getId());
                slAuditRecord4.setShenhId(byId.getDirectorId());
                slAuditRecord4.setType(3);
                slAuditRecord4.setState(1);
                slAuditRecord4.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord4);
            }else{
                slAuditService.saveOrUpdate(slAudit);
                slVolumeProductionZygl.setAuditStatus(1);
                slVolumeProductionZygl.setPresentState(1);
                slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
                // 如果是主管
                SlAuditRecord slAuditRecord3=new SlAuditRecord();
                slAuditRecord3.setAuditId(slAudit.getId());
                slAuditRecord3.setShenhId(byId.getCompetentId());
                slAuditRecord3.setType(2);
                slAuditRecord3.setState(1);
                slAuditRecord3.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord3);
                SlAuditRecord slAuditRecord2=new SlAuditRecord();
                slAuditRecord2.setAuditId(slAudit.getId());
                slAuditRecord2.setShenhId(byId.getAdministratorId());
                slAuditRecord2.setType(1);
                slAuditRecord2.setState(1);
                slAuditRecord2.setShenhTime(new Date());
                slAuditRecord2.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord2);
                SlAuditRecord slAuditRecord4=new SlAuditRecord();
                slAuditRecord4.setAuditId(slAudit.getId());
                slAuditRecord4.setShenhId(byId.getDirectorId());
                slAuditRecord4.setType(3);
                slAuditRecord4.setState(1);
                slAuditRecord4.setCreateTime(new Date());
                slAuditRecordService.save(slAuditRecord4);
            }
        }
        return R.ok();
    }
    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 那么往后叠加对应的字母 比如27 那么就是AA
        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];
    }
    @Resource
    private SlStoreManagementService slStoreManagementService;
    @Override
    public void updSlVolumeProductionZy(List<UpdaddSlVolumeProductionZyDTO> updaddSlVolumeProductionZyDTO) {
        for (UpdaddSlVolumeProductionZyDTO z:updaddSlVolumeProductionZyDTO){
@@ -107,9 +495,7 @@
    @Override
    public PageDTO<ManagementimgVolumeProductionZyVO> getSlVolumeProductionZyList(ManagementimgVolumeProductionZyQuery managementimgVolumeProductionZyQuery) {
        SlVolumeProductionZygl slVolumeProductionZygl = slVolumeProductionZyglMapper.selectById(managementimgVolumeProductionZyQuery.getVolumeProductionzyglId());
        LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery();
        wrapper2.eq(SlVolumeProductionRk::getManagementId,slVolumeProductionZygl.getBmanagementId());
        wrapper2.eq(SlVolumeProductionRk::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber());
@@ -152,4 +538,35 @@
        }
        return SlGoodsShelfDTO;
    }
    @Override
    public NumberAndShelfVO getNumberAndShelfByManagementId(QueryDTO dto) {
        NumberAndShelfVO numberAndShelfVO = new NumberAndShelfVO();
        SlStoreManagement byId = service.getById(dto.getManagementId());
        List<String> number = new ArrayList<>();
        for (Integer i = 1; i <= byId.getStoreManagementNumber(); i++) {
            switch (i){
                case 1:
                    number.add("一层");
                    break;
                case 2:
                    number.add("二层");
                    break;
                case 3:
                    number.add("三层");
                    break;
            }
        }
        numberAndShelfVO.setNumber(number);
        if (dto.getManagementNumber() == null){
            dto.setManagementNumber(1);
        }
        QueryWrapper<SlGoodsShelf> eq = new QueryWrapper<SlGoodsShelf>()
                .eq("del_flag", "0")
                .eq("store_management_id", dto.getManagementId())
                .eq("store_management_number",dto.getManagementNumber());
        List<SlGoodsShelf> slGoodsShelves = slGoodsShelfMapper.selectList(eq);
        numberAndShelfVO.setGoodsShelfList(slGoodsShelves);
        return numberAndShelfVO;
    }
}