4 changed files with 142 additions and 42 deletions
@ -0,0 +1,93 @@
|
||||
|
||||
package com.logpm.distribution.receiver; |
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
import com.logpm.distribution.entity.DistributionParcelListEntity; |
||||
import com.logpm.distribution.entity.DistributionStockArticleEntity; |
||||
import com.logpm.distribution.mapper.DistributionParcelListMapper; |
||||
import com.logpm.distribution.mapper.DistributionStockArticleMapper; |
||||
import com.rabbitmq.client.Channel; |
||||
import lombok.extern.slf4j.Slf4j; |
||||
import org.springblade.common.constant.RabbitConstant; |
||||
import org.springframework.amqp.core.Message; |
||||
import org.springframework.amqp.rabbit.annotation.RabbitHandler; |
||||
import org.springframework.amqp.rabbit.annotation.RabbitListener; |
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.stereotype.Component; |
||||
|
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
@Slf4j |
||||
@RabbitListener(queues = RabbitConstant.ORDER_PACKAGE_STATUS_INFO_QUEUE) |
||||
@Component |
||||
public class OrderPackageStatusDataHandler { |
||||
|
||||
@Autowired |
||||
private DistributionParcelListMapper baseMapper; |
||||
|
||||
@Autowired |
||||
private DistributionStockArticleMapper distributionStockArticleMapper; |
||||
|
||||
@RabbitHandler |
||||
public void orderPackageStatusChange(Map map, Message message, Channel channel){ |
||||
|
||||
|
||||
Object orderPackageCode1 = map.get("orderPackageCode"); |
||||
String orderPackageCode= (String) orderPackageCode1; |
||||
String groundingStatus=(String)map.get("groundingStatus"); |
||||
Long warehouseId = (Long)map.get("warehouseId"); |
||||
|
||||
// 处理包件状态
|
||||
QueryWrapper<DistributionParcelListEntity> queryWrapper = new QueryWrapper<>(); |
||||
queryWrapper.eq("order_package_code",orderPackageCode) |
||||
.eq("warehouse_id",warehouseId) |
||||
.eq("is_deleted",0); |
||||
DistributionParcelListEntity parcelListEntity = baseMapper.selectOne(queryWrapper); |
||||
parcelListEntity.setOrderPackageGroundingStatus(groundingStatus); |
||||
// int i = baseMapper.updateById(parcelListEntity);
|
||||
|
||||
try{ |
||||
// 更新状态
|
||||
baseMapper.updateOrderPackageCodeById(parcelListEntity.getId(),groundingStatus); |
||||
|
||||
// log.info(">>>> 更新包间状态 >> 包件ID {} 状态 {}",parcelListEntity.getId(),groundingStatus);
|
||||
|
||||
|
||||
String orderCode = parcelListEntity.getOrderCode(); |
||||
|
||||
QueryWrapper<DistributionStockArticleEntity> stockArticleEntityQueryWrapper = new QueryWrapper<>(); |
||||
stockArticleEntityQueryWrapper.eq("order_code",orderCode) |
||||
.eq("is_deleted",0); |
||||
DistributionStockArticleEntity one = distributionStockArticleMapper.selectOne(stockArticleEntityQueryWrapper); |
||||
Integer totalNumber = one.getTotalNumber(); |
||||
|
||||
QueryWrapper<DistributionParcelListEntity> queryWrapperList = new QueryWrapper<>(); |
||||
queryWrapperList.eq("order_code",orderCode) |
||||
.eq("order_package_grounding_status","20") |
||||
.eq("warehouse_id",warehouseId) |
||||
.eq("is_deleted",0); |
||||
List<DistributionParcelListEntity> listEntityList = baseMapper.selectList(queryWrapperList); |
||||
int size = listEntityList.size(); |
||||
if(size == 0){ |
||||
//更新订单上架状态
|
||||
baseMapper.updateOrderGroundingStatus(orderCode,"10",warehouseId); |
||||
}else if(size >= totalNumber){ |
||||
//更新订单上架状态
|
||||
baseMapper.updateOrderGroundingStatus(orderCode,"30",warehouseId); |
||||
}else{ |
||||
//更新订单上架状态
|
||||
baseMapper.updateOrderGroundingStatus(orderCode,"20",warehouseId); |
||||
} |
||||
|
||||
}catch (Exception e){ |
||||
|
||||
// 更新状态报错
|
||||
log.error(">>>>>> updateGroundingStatus 异常信息",e); |
||||
} |
||||
|
||||
|
||||
|
||||
} |
||||
} |
Loading…
Reference in new issue