|  |  | 
 |  |  |  | 
 |  |  |     public Page<DeliveryOrderListDTO> selectDeliveryOrderList(Page page, DeliveryOrderQueryDTO dto) { | 
 |  |  |         Supplier s = getCurrentSupplier(); | 
 |  |  |         dto.setStatusList(splitParam(dto.getStatus())); | 
 |  |  |         if(Constants.DELIVERY_ORDER_STATUS.ARRIVED.name().equals(dto.getStatus())){ | 
 |  |  |             List<String> statusLs = new ArrayList<>(); | 
 |  |  |             statusLs.add(Constants.DELIVERY_ORDER_STATUS.ARRIVED.name()); | 
 |  |  |             statusLs.add(Constants.DELIVERY_ORDER_STATUS.CHECKED.name()); | 
 |  |  |             dto.setStatusList(statusLs); | 
 |  |  |         } else { | 
 |  |  |             dto.setStatusList(splitParam(dto.getStatus())); | 
 |  |  |         } | 
 |  |  |         List<DeliveryOrderListDTO> ls = deliveryOrderMapper.selectDoList(page, s.getId(), dto); | 
 |  |  |         if (ls != null && ls.size() > 0) { | 
 |  |  |             List<String> dIds = new ArrayList<>(); | 
 |  |  | 
 |  |  |         orderItemSettlementService.saveItemSettlementInfo(oi, SecurityUtils.getUserId(), Constants.S_TYPE.CHECK); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private BigDecimal calculateOrderItemDeduct(String id){ | 
 |  |  |     public BigDecimal calculateOrderItemDeduct(String id){ | 
 |  |  |         List<OrderItemCheck> cLs = orderItemCheckMapper.selectList(new QueryWrapper<OrderItemCheck>() | 
 |  |  |                 .eq("order_item_id", id) | 
 |  |  |                 .eq("audit_status", Constants.CHECK_AUDIT_STATUS.AGREED.name()) | 
 |  |  | 
 |  |  |         return dto; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public OrderItemCheckNumDTO getOtherCheck(String itemId, String type){ | 
 |  |  |     public OrderItemCheckNumDTO getOtherCheck(String itemId, String type, boolean isSupplier){ | 
 |  |  |         OrderItemCheck c = orderItemCheckMapper.selectOne(new QueryWrapper<OrderItemCheck>() | 
 |  |  |                 .eq("type", type) | 
 |  |  |                 .eq("order_item_id", itemId) | 
 |  |  | 
 |  |  |             BeanUtils.copyProperties(c, dto); | 
 |  |  |             User user = userMapper.selectById(c.getCreateBy()); | 
 |  |  |             dto.setCreateName(user.getNickName()); | 
 |  |  |  | 
 |  |  |             if(Constants.CHECK_TYPE.lack.name().equals(c.getType()) && isSupplier){ | 
 |  |  |                 OrderItem oi = orderItemMapper.selectById(itemId); | 
 |  |  |                 BigDecimal lackFeeSupplier = oi.getSupplierPrice().multiply(new BigDecimal(c.getNum())); | 
 |  |  |                 dto.setDeductAmount(lackFeeSupplier); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         return dto; | 
 |  |  | 
 |  |  |         OrderItem oi = orderItemMapper.selectById(dto.getOrderItemId()); | 
 |  |  |         if(dto.getNum() > oi.getNum()){ | 
 |  |  |             throw new ValidationException("处理数量不能大于商品数量"); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         Order o = orderMapper.selectById(oi.getOrderId()); | 
 |  |  |         if(StringUtils.isNotEmpty(o.getTransferId())){ | 
 |  |  |             throw new ValidationException("已质检退款,不可提交质检记录"); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         if(!Constants.ORDER_STATUS_BACKEND.COLLECTION.name().equals(o.getStatusBackend()) | 
 |  |  |             && !Constants.ORDER_STATUS_BACKEND.SEND.name().equals(o.getStatusBackend())){ | 
 |  |  |             throw new ValidationException("订单状态异常,不可提交质检记录"); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         List<OrderItemCheck> cLs = orderItemCheckMapper.selectList(new QueryWrapper<OrderItemCheck>() | 
 |  |  | 
 |  |  |             BigDecimal dt = realPrice.multiply(new BigDecimal(dto.getNum())); | 
 |  |  |             if(deduct.doubleValue() > dt.doubleValue() | 
 |  |  |                     || (oi.getRealTotal() != null && deduct.doubleValue() > oi.getRealTotal().doubleValue())){ | 
 |  |  |                 throw new ValidationException("降级金额不能大于商品处理数量金额"); | 
 |  |  |                 throw new ValidationException("降级金额不能大于商品处理数量的支付的金额"); | 
 |  |  |             } | 
 |  |  |             BigDecimal st = oi.getSupplierPrice().multiply(new BigDecimal(dto.getNum())); | 
 |  |  |             if(deduct.doubleValue() > st.doubleValue()){ | 
 |  |  |                 throw new ValidationException("降级金额不能大于商品处理数量的供应商的金额"); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |  |