|
|
|
@ -18,6 +18,7 @@ package com.logpm.distribution.service.impl;
|
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
@ -39,16 +40,23 @@ import com.logpm.distribution.service.IDistributionStockListService;
|
|
|
|
|
import com.logpm.distribution.service.IDistributionUnpackingDetailsService; |
|
|
|
|
import com.logpm.distribution.vo.*; |
|
|
|
|
import com.logpm.distribution.vo.app.StockMallVO; |
|
|
|
|
import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity; |
|
|
|
|
import com.logpm.warehouse.feign.IWarehouseTrayGoodsClient; |
|
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
|
import org.springblade.common.constant.DictBizConstant; |
|
|
|
|
import org.springblade.common.constant.DistributionTypeConstant; |
|
|
|
|
import org.springblade.core.log.exception.ServiceException; |
|
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
|
import org.springblade.core.mp.support.Condition; |
|
|
|
|
import org.springblade.core.secure.utils.AuthUtil; |
|
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
|
import org.springblade.core.tool.constant.BladeConstant; |
|
|
|
|
import org.springblade.core.tool.utils.BeanUtil; |
|
|
|
|
import org.springblade.core.tool.utils.Func; |
|
|
|
|
import org.springblade.core.tool.utils.ObjectUtil; |
|
|
|
|
import org.springblade.system.cache.DictBizCache; |
|
|
|
|
import org.springblade.system.cache.DictCache; |
|
|
|
|
import org.springframework.beans.BeanUtils; |
|
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
@ -80,6 +88,7 @@ public class DistributionStockListServiceImpl extends BaseServiceImpl<Distributi
|
|
|
|
|
// private final IBasicdataWarehouseClient basicdataWarehouseClient;
|
|
|
|
|
|
|
|
|
|
private final IDistributionReservationStocklistService reservationStocklistService; |
|
|
|
|
private final IWarehouseTrayGoodsClient warehouseTrayGoodsClient; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -105,12 +114,52 @@ public class DistributionStockListServiceImpl extends BaseServiceImpl<Distributi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public List<DistributionStockListExcel> exportDistributionStockList(Wrapper<DistributionStockListEntity> queryWrapper) { |
|
|
|
|
List<DistributionStockListExcel> distributionStockListList = baseMapper.exportDistributionStockList(queryWrapper); |
|
|
|
|
//distributionStockListList.forEach(distributionStockList -> {
|
|
|
|
|
// distributionStockList.setTypeName(DictCache.getValue(DictEnum.YES_NO, DistributionStockList.getType()));
|
|
|
|
|
//});
|
|
|
|
|
return distributionStockListList; |
|
|
|
|
public List<DistributionStockListExcel> exportDistributionStockList(Map<String, Object> distributionStockList) { |
|
|
|
|
Object o = distributionStockList.get("row"); |
|
|
|
|
Object ids = distributionStockList.get("ids"); |
|
|
|
|
if(ObjectUtils.isNotNull(ids)){ |
|
|
|
|
distributionStockList.remove("ids"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); |
|
|
|
|
if(ObjectUtils.isNotNull(myCurrentWarehouse)){ |
|
|
|
|
distributionStockList.put("warehouseId",myCurrentWarehouse.getId()); |
|
|
|
|
}else{ |
|
|
|
|
throw new ServiceException("请选择仓库,在进行导出数据!!!"); |
|
|
|
|
} |
|
|
|
|
QueryWrapper<DistributionStockListEntity> queryWrapper = Condition.getQueryWrapper(distributionStockList, DistributionStockListEntity.class); |
|
|
|
|
queryWrapper.lambda().eq(DistributionStockListEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); |
|
|
|
|
if(ObjectUtils.isNotNull(ids)){ |
|
|
|
|
queryWrapper.in(ObjectUtils.isNotNull(ids),"id",String.valueOf(ids).split(",")); |
|
|
|
|
} |
|
|
|
|
List<DistributionStockListEntity> distributionStockListEntities = baseMapper.exportDistributionStockList(queryWrapper); |
|
|
|
|
List<DistributionStockListExcel> excelList = new ArrayList<>(); |
|
|
|
|
distributionStockListEntities.forEach(stockList -> { |
|
|
|
|
// stockList.setServiceType(DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, stockList.getServiceType()));
|
|
|
|
|
DistributionStockListExcel distributionStockListExcel = new DistributionStockListExcel(); |
|
|
|
|
BeanUtil.copyProperties(stockList,distributionStockListExcel); |
|
|
|
|
String value = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, stockList.getServiceType()); |
|
|
|
|
distributionStockListExcel.setServiceTypeName(value); |
|
|
|
|
distributionStockListExcel.setUnpack(stockList.getUnpack() ? "是":"否"); |
|
|
|
|
//查询包装数量
|
|
|
|
|
BasicMaterialEntity materialOwnId = basicMaterialClient.getMaterialOwnId(stockList.getMaterialId()); |
|
|
|
|
if(ObjectUtils.isNotNull(materialOwnId)){ |
|
|
|
|
distributionStockListExcel.setPackNum(materialOwnId.getPackageNum()); |
|
|
|
|
} |
|
|
|
|
//查询托盘信息
|
|
|
|
|
WarehouseTrayGoodsEntity warehouseTrayGoodsEntity = new WarehouseTrayGoodsEntity(); |
|
|
|
|
warehouseTrayGoodsEntity.setMarketId(stockList.getMarketId()); |
|
|
|
|
warehouseTrayGoodsEntity.setWarehouseId(myCurrentWarehouse.getId()); |
|
|
|
|
warehouseTrayGoodsEntity.setIncomingBatch(stockList.getIncomingBatch()); |
|
|
|
|
warehouseTrayGoodsEntity.setAssociationId(stockList.getMaterialId()); |
|
|
|
|
warehouseTrayGoodsEntity.setAssociationType("4"); |
|
|
|
|
List<WarehouseTrayGoodsEntity> trayList = warehouseTrayGoodsClient.getTrayList(warehouseTrayGoodsEntity); |
|
|
|
|
if(!trayList.isEmpty()){ |
|
|
|
|
distributionStockListExcel.setTrayCode(trayList.stream().map(WarehouseTrayGoodsEntity::getTrayCode).collect(Collectors.joining(","))); |
|
|
|
|
} |
|
|
|
|
excelList.add(distributionStockListExcel); |
|
|
|
|
}); |
|
|
|
|
return excelList; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|