|  |  |  | 
|---|
|  |  |  | private DocTypeService docTypeService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<Order> selectComplete() { | 
|---|
|  |  |  | return this.baseMapper.selectComplete(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<OrderDetl> selectWorkingDetls(Long orderId) { | 
|---|
|  |  |  | return orderDetlMapper.selectWorkingDetls(orderId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | if (order.getSettle() >= 4L) { | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<OrderDetl> orderDetls = orderDetlMapper.selectList(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId()).eq(OrderDetl::getHostId, hostId)); | 
|---|
|  |  |  | List<OrderDetl> orderDetls = orderDetlMapper.selectDetls(order.getId(),hostId); | 
|---|
|  |  |  | boolean complete = true; | 
|---|
|  |  |  | for (OrderDetl orderDetl : orderDetls) { | 
|---|
|  |  |  | if (orderDetl.getAnfme() > orderDetl.getQty()) { | 
|---|
|  |  |  | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (complete && wrkDetlService.count(new LambdaQueryWrapper<WrkDetl>().eq(WrkDetl::getOrderNo, orderNo).eq(WrkDetl::getHostId, hostId)) == 0) { | 
|---|
|  |  |  | // 出库订单重新整理明细 | 
|---|
|  |  |  | DocType docType = docTypeService.getById(order.getDocType()); | 
|---|
|  |  |  | if (null != docType && docType.getPakout() == 1) { | 
|---|
|  |  |  | if (!orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId()).eq(OrderDetl::getHostId, hostId))) { | 
|---|
|  |  |  | throw new CoolException("重整出库订单【orderNo = " + order.getOrderNo() + "】明细失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo, hostId); | 
|---|
|  |  |  | for (WrkDetl wrkDetl : wrkDetls) { | 
|---|
|  |  |  | OrderDetl orderDetl = new OrderDetl(); | 
|---|
|  |  |  | orderDetl.sync(wrkDetl); | 
|---|
|  |  |  | orderDetl.setQty(orderDetl.getAnfme()); | 
|---|
|  |  |  | orderDetl.setOrderId(order.getId()); | 
|---|
|  |  |  | orderDetl.setOrderNo(orderNo); | 
|---|
|  |  |  | orderDetl.setStatus(1); | 
|---|
|  |  |  | orderDetl.setCreateTime(order.getCreateTime()); | 
|---|
|  |  |  | orderDetl.setCreateBy(order.getCreateBy()); | 
|---|
|  |  |  | orderDetl.setUpdateTime(order.getUpdateTime()); | 
|---|
|  |  |  | orderDetl.setUpdateBy(order.getUpdateBy()); | 
|---|
|  |  |  | if (!orderDetlService.save(orderDetl)) { | 
|---|
|  |  |  | throw new CoolException("重整出库订单【orderNo = " + order.getOrderNo() + "】明细失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (complete) { | 
|---|
|  |  |  | if (!this.updateSettle(order.getId(), 4L, null, hostId)) { | 
|---|
|  |  |  | throw new CoolException("修改订单【orderNo = " + order.getOrderNo() + "】状态为已完成失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<OrderNameListDto> selectAllCombOrderNo(Long hostId) { | 
|---|
|  |  |  | List<Order> list = list(new LambdaQueryWrapper<Order>().eq(Order::getHostId, hostId).orderByDesc(Order::getCreateTime)); | 
|---|
|  |  |  | if (Cools.isEmpty(list)){ | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ArrayList<OrderNameListDto> orderNameListDtos = new ArrayList<>(); | 
|---|
|  |  |  | for (Order order :list){ | 
|---|
|  |  |  | DocType docType = docTypeService.getOne(new LambdaQueryWrapper<DocType>().eq(DocType::getDocId, order.getDocType())); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (order.getSettle() >= 4) { | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (docType.getPakin() == 1){ | 
|---|
|  |  |  | OrderNameListDto orderNameListDto = new OrderNameListDto(); | 
|---|
|  |  |  | orderNameListDto.setOrder_no(order.getOrderNo()); | 
|---|
|  |  |  | orderNameListDtos.add(orderNameListDto); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return orderNameListDtos; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<OrderNameListDto> selectAllorderNo(Long hostId) { | 
|---|
|  |  |  | List<Order> list = list(new LambdaQueryWrapper<Order>().eq(Order::getHostId, hostId)); | 
|---|
|  |  |  | List<Order> list = list(new LambdaQueryWrapper<Order>().eq(Order::getHostId, hostId).orderByDesc(Order::getCreateTime)); | 
|---|
|  |  |  | if (Cools.isEmpty(list)){ | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | List<Order> list = list(new LambdaQueryWrapper<Order>() | 
|---|
|  |  |  | .eq(Order::getHostId, hostId) | 
|---|
|  |  |  | .like(Order::getOrderNo, orderNo) | 
|---|
|  |  |  | .orderByDesc(Order::getCreateTime) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (Cools.isEmpty(orderNo) || orderNo.isEmpty()){ | 
|---|
|  |  |  | list = list(new LambdaQueryWrapper<Order>() | 
|---|
|  |  |  | .eq(Order::getHostId, hostId) | 
|---|
|  |  |  | .orderByDesc(Order::getCreateTime) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(list)){ | 
|---|
|  |  |  | 
|---|
|  |  |  | for (Order order :list){ | 
|---|
|  |  |  | DocType docType = docTypeService.getOne(new LambdaQueryWrapper<DocType>().eq(DocType::getDocId, order.getDocType())); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (order.getSettle() >= 4) { | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (docType.getPakout() == 1){ | 
|---|
|  |  |  | orderNameListDtos.add(order.getOrderNo()); | 
|---|
|  |  |  | } | 
|---|