无关风月
2025-02-28 2f8e70ad2884d2b6b7443dfae0af11ae9cfc8b99
manage/src/main/java/com/jilongda/manage/service/impl/TWarehousingServiceImpl.java
@@ -4,22 +4,26 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.jilongda.common.basic.PageInfo;
import com.jilongda.manage.mapper.TFrameWarehousingDetailMapper;
import com.jilongda.manage.mapper.TLensWarehousingDetailMapper;
import com.jilongda.manage.mapper.TStoreMapper;
import com.jilongda.manage.model.TFrameWarehousingDetail;
import com.jilongda.manage.model.TLensWarehousingDetail;
import com.jilongda.manage.model.TStore;
import com.jilongda.manage.model.TWarehousing;
import com.jilongda.manage.mapper.TWarehousingMapper;
import com.jilongda.manage.query.TWarehousingDetailLensQuery;
import com.jilongda.manage.query.TWarehousingDetailQuery;
import com.jilongda.manage.service.TLensWarehousingDetailService;
import com.jilongda.manage.service.TWarehousingService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jilongda.manage.vo.TBrandVO;
import com.jilongda.manage.vo.TFrameWarehousingDetailVO;
import com.jilongda.manage.vo.TWarehousingVO;
import com.jilongda.manage.vo.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
 * <p>
@@ -36,15 +40,50 @@
    private TStoreMapper storeMapper;
    @Autowired
    private TFrameWarehousingDetailMapper frameWarehousingDetailMapper;
    @Autowired
    private TLensWarehousingDetailMapper lensWarehousingDetailMapper;
    @Override
    public PageInfo<TFrameWarehousingDetailVO> detailList(TWarehousingDetailQuery query) {
        PageInfo<TFrameWarehousingDetailVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TFrameWarehousingDetailVO> list = frameWarehousingDetailMapper.pageList(query,pageInfo);
        List<Integer> storeIds = list.stream().map(TFrameWarehousingDetailVO::getStoreId).collect(Collectors.toList());
        List<TStore> stores = new ArrayList<>();
        if(CollectionUtils.isNotEmpty(storeIds)){
            stores = storeMapper.selectList(Wrappers.lambdaQuery(TStore.class)
                    .in(TStore::getId,storeIds));
        }
        for (TFrameWarehousingDetailVO tFrameWarehousingDetailVO : list) {
            TStore tStore = storeMapper.selectById(tFrameWarehousingDetailVO.getStoreId());
            if(Objects.nonNull(tStore)){
                tFrameWarehousingDetailVO.setStoreName(tStore.getName());
            if (tFrameWarehousingDetailVO.getOrderId()!=null){
                tFrameWarehousingDetailVO.setStatus(5);
            }
            if(CollectionUtils.isNotEmpty(stores)){
                TStore store = stores.stream().filter(tStore -> tStore.getId().equals(tFrameWarehousingDetailVO.getStoreId())).findFirst().orElse(null);
                if(Objects.nonNull(store)){
                    tFrameWarehousingDetailVO.setStoreName(store.getName());
                }
            }
//            tFrameWarehousingDetailVO.setStatus();
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
    @Override
    public PageInfo<TLensWarehousingDetailVO> detailListLens(TWarehousingDetailLensQuery query) {
        PageInfo<TLensWarehousingDetailVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TLensWarehousingDetailVO> list = lensWarehousingDetailMapper.pageLensList(query,pageInfo);
        List<Integer> storeIds = list.stream().map(TLensWarehousingDetailVO::getStoreId).collect(Collectors.toList());
        List<TStore> stores = new ArrayList<>();
        if(CollectionUtils.isNotEmpty(storeIds)){
            stores = storeMapper.selectList(Wrappers.lambdaQuery(TStore.class)
                    .in(TStore::getId,storeIds));
        }
        for (TLensWarehousingDetailVO tLensWarehousingDetailVO : list) {
            if(CollectionUtils.isNotEmpty(stores)){
                TStore store = stores.stream().filter(tStore -> tStore.getId().equals(tLensWarehousingDetailVO.getStoreId())).findFirst().orElse(null);
                if(Objects.nonNull(store)){
                    tLensWarehousingDetailVO.setStoreName(store.getName());
                }
            }
        }
        pageInfo.setRecords(list);
@@ -55,14 +94,36 @@
    public PageInfo<TWarehousingVO> inventoryReceiptList(TWarehousingDetailQuery query) {
        PageInfo<TWarehousingVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TWarehousingVO> list = this.baseMapper.inventoryReceiptList(query,pageInfo);
        List<TStore> stores = storeMapper.selectList(Wrappers.lambdaQuery(TStore.class)
                .in(TStore::getId, list.stream().map(TWarehousingVO::getStoreId).collect(Collectors.toList())));
        for (TWarehousingVO tWarehousingVO : list) {
            List<TFrameWarehousingDetail> tFrameWarehousingDetails = frameWarehousingDetailMapper.selectList(Wrappers.lambdaQuery(TFrameWarehousingDetail.class)
                    .eq(TFrameWarehousingDetail::getWarehousingId, tWarehousingVO.getId()));
            if(CollectionUtils.isNotEmpty(tFrameWarehousingDetails)){
                tWarehousingVO.setTotalNum(tFrameWarehousingDetails.stream().mapToInt(TFrameWarehousingDetail::getTotal).sum());
            }
            stores.stream().filter(tStore -> tStore.getId().equals(tWarehousingVO.getStoreId())).findFirst().ifPresent(tStore -> {
                tWarehousingVO.setStoreName(tStore.getName());
            });
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
    @Override
    public PageInfo<TWarehousingLensVO> inventoryReceiptLensList(TWarehousingDetailLensQuery query) {
        PageInfo<TWarehousingLensVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TWarehousingLensVO> list = this.baseMapper.inventoryReceiptLensList(query,pageInfo);
        for (TWarehousingLensVO tWarehousingVO : list) {
            List<TLensWarehousingDetail> lensWarehousingDetails = lensWarehousingDetailMapper.selectList(Wrappers.lambdaQuery(TLensWarehousingDetail.class)
                    .eq(TLensWarehousingDetail::getWarehousingId, tWarehousingVO.getId()));
            if(CollectionUtils.isNotEmpty(lensWarehousingDetails)){
                tWarehousingVO.setTotalNum(lensWarehousingDetails.stream().mapToInt(TLensWarehousingDetail::getTotal).sum());
            }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
}