zwl
2025-09-03 469d41fe09ceec3dc5259d01a4060aac1448e09f
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
@@ -65,8 +65,6 @@
        List<OrderDetl> orderDetl1 = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderNo, orderNo));
        List<OrderDetl> orderDetls= new ArrayList<OrderDetl>();
        for (OrderDetl o: orderDetl1) {
            BigDecimal c1 = new BigDecimal(o.getEnableQty()).setScale(2,BigDecimal.ROUND_HALF_UP);
            o.setAnfme(c1.doubleValue());
            if (o.getAnfme().equals(0.0)){
                continue;
            }
@@ -500,4 +498,49 @@
        return R.ok("订单修改成功");
    }
    @RequestMapping(value = "/order/export/auth")
    @ManagerAuth(memo = "订单明细导出")
    public synchronized R export(@RequestBody JSONObject param){
        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
        QueryWrapper<OrderDetl> wrapper = new QueryWrapper<>();
        JSONArray orderNo = param.getJSONArray("orderNo");
        List<String> orderNoList = new ArrayList<>();
        for (int i = 0; i < orderNo.size(); i++) {
            Object o = orderNo.get(i);
            orderNoList.add(o.toString());
        }
        List<OrderDetl> list = orderDetlService.list(new  QueryWrapper<OrderDetl>().in("order_no", orderNoList));
        return R.ok(exportSupport(list, fields));
    }
    private <T> void convert(Map<String, Object> map, QueryWrapper<T> wrapper){
        for (Map.Entry<String, Object> entry : map.entrySet()){
            if(Cools.eq(entry.getKey(),"curr")
                    || Cools.eq(entry.getKey(),"limit")
                    || Cools.eq(entry.getKey(),"unreason")
                    || Cools.eq(entry.getKey(),"orderByField")
                    || Cools.eq(entry.getKey(),"orderByType")
                    || Cools.eq(entry.getKey(),"row")
                    || Cools.eq(entry.getKey(),"condition")){
                continue;
            }
            if(Cools.isEmpty(entry.getValue())){
                continue;
            }
            String val = String.valueOf(entry.getValue());
            if (val.contains(RANGE_TIME_LINK)){
                String[] dates = val.split(RANGE_TIME_LINK);
                wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
                wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
            } else {
                if (entry.getKey().equals("locNo")) {
                    wrapper.eq("loc_no", String.valueOf(entry.getValue()));
                } else {
                    wrapper.like(entry.getKey(), String.valueOf(entry.getValue()));
                }
            }
        }
    }
}