|
@@ -62,6 +62,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.math.BigInteger;
|
|
|
import java.util.*;
|
|
|
import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -125,8 +126,8 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
|
|
|
wrapper.like(ObjectUtil.isNotNull(dto.getOrderId()),"jo.order_id",dto.getOrderId());
|
|
|
|
|
|
List<Long> jdOrderIdList = new ArrayList<>();
|
|
|
- if(ObjectUtil.isNotNull(dto.getWareId())){
|
|
|
- List<JdOrderDetails> list = jdOrderDetailsService.lambdaQuery().like(JdOrderDetails::getWareId, dto.getWareId()).list();
|
|
|
+ if(ObjectUtil.isNotNull(dto.getKeyword())){
|
|
|
+ List<JdOrderDetails> list = jdOrderDetailsService.lambdaQuery().like(JdOrderDetails::getWareId, dto.getKeyword()).list();
|
|
|
if(CollectionUtil.isNotEmpty(list)){
|
|
|
jdOrderIdList = list.stream().map(JdOrderDetails::getJdOrderId).distinct().collect(Collectors.toList());
|
|
|
}
|
|
@@ -676,10 +677,38 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ @DSTransactional
|
|
|
public void confirmBusinessStatus(JdOrderDto jdOrderDto) {
|
|
|
lambdaUpdate()
|
|
|
.set(JdOrder::getBusinessStatus, jdOrderDto.getBusinessStatus())
|
|
|
.eq(JdOrder::getId,jdOrderDto.getId()).update();
|
|
|
+ //插入到库存调整记录
|
|
|
+ DynamicDataSourceContextHolder.push(SourceConstant.WMS);
|
|
|
+ StockWait stockWait = new StockWait();
|
|
|
+ stockWait.setType(2);//待出库
|
|
|
+ stockWait.setBusinessType(StockWaitType.JD_ORDER_OUT.getDetailType());
|
|
|
+ stockWait.setBusinessId(jdOrderDto.getId());
|
|
|
+ stockWait.setBusinessCode(StrUtil.toString(jdOrderDto.getOrderId()));
|
|
|
+ stockWait.setStatus(0);
|
|
|
+ stockWaitService.save(stockWait);
|
|
|
+
|
|
|
+ List<StockWaitDetails> stockWaitDetailsList = new ArrayList<>();
|
|
|
+ List<JdOrderDetailsVo> jdOrderDetailsList = jdOrderDetailsService.findListByJdOrderId(jdOrderDto.getId());
|
|
|
+
|
|
|
+ for (JdOrderDetailsVo jdOrderDetailsVo : jdOrderDetailsList) {
|
|
|
+ //创建待出库明细
|
|
|
+ StockWaitDetails stockWaitDetails = new StockWaitDetails();
|
|
|
+ stockWaitDetails.setStockWaitId(stockWait.getId());
|
|
|
+ stockWaitDetails.setBusinessDetailsId(jdOrderDetailsVo.getId());
|
|
|
+ stockWaitDetails.setProductId(jdOrderDetailsVo.getProductId());
|
|
|
+ stockWaitDetails.setQuantity(new BigDecimal(jdOrderDetailsVo.getConfirmNum()));
|
|
|
+ stockWaitDetails.setReceiptQuantity(new BigDecimal(BigInteger.ZERO));
|
|
|
+ stockWaitDetailsList.add(stockWaitDetails);
|
|
|
+ }
|
|
|
+ stockWaitDetailsService.saveBatch(stockWaitDetailsList);
|
|
|
+
|
|
|
+ DynamicDataSourceContextHolder.poll();
|
|
|
+
|
|
|
}
|
|
|
|
|
|
@Override
|