廖井涛
2 天以前 ddea16dd62aec74f58d71ecd18c14124c36f19f4
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -54,7 +54,9 @@
    private final BasicOtherMoneyMapper basicOtherMoneyMapper;
    private final OrderProcessDetailMapper orderProcessDetailMapper;
    public OrderService(OrderMapper orderMapper, OrderDetailMapper orderDetailMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, SysErrorService sysErrorService, OrderOtherMoneyMapper orderOtherMoneyMapper, ProductMapper productMapper, LogService logService, WorkOrderMapper workOrderMapper, FlowCardMapper flowCardMapper, BasicOtherMoneyMapper basicOtherMoneyMapper) {
    private final DeliveryService deliveryService;
    public OrderService(OrderMapper orderMapper, OrderDetailMapper orderDetailMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, SysErrorService sysErrorService, OrderOtherMoneyMapper orderOtherMoneyMapper, ProductMapper productMapper, LogService logService, WorkOrderMapper workOrderMapper, FlowCardMapper flowCardMapper, BasicOtherMoneyMapper basicOtherMoneyMapper,DeliveryService deliveryService) {
        this.orderMapper = orderMapper;
        this.orderDetailMapper = orderDetailMapper;
        this.orderGlassDetailMapper = orderGlassDetailMapper;
@@ -66,6 +68,7 @@
        this.workOrderMapper = workOrderMapper;
        this.flowCardMapper = flowCardMapper;
        this.basicOtherMoneyMapper = basicOtherMoneyMapper;
        this.deliveryService = deliveryService;
    }
    public boolean saveOrder(Map<String,Object> orderMap) throws Exception {
@@ -434,11 +437,13 @@
        List<OrderDetail> orderDetails = orderDetailMapper.selectList(new QueryWrapper<OrderDetail>().eq("order_id",id));
        List<OrderOtherMoney> orderOtherMoneyList = orderOtherMoneyMapper.findById(id);
        List<Map<String,String>> orderFileList = orderMapper.selectOrderFileList(id);
        Integer deliveryCount = orderMapper.selectDeliveryStateConut(id);
        Map<String,Object> map = new HashMap<>();
        map.put("order",order);
        map.put("orderDetails",orderDetails);
        map.put("orderOtherMoneyList",orderOtherMoneyList);
        map.put("orderFile",orderFileList);
        map.put("deliveryCount",deliveryCount);
        return map;
    }
    //订单审核
@@ -493,6 +498,7 @@
    public boolean updateOrderMoney(Map<String, Object> map) {
        JSONObject jsonObject = new JSONObject(map);
        int type = Integer.parseInt(jsonObject.get("type").toString());
        Order order = JSONObject.parseObject(JSONObject.toJSONString(jsonObject.get("order")), Order.class);
        List<OrderDetail> OrderDetails = JSONArray.parseArray(JSONObject.toJSONString(jsonObject.get("detail")), OrderDetail.class);
        List<OrderOtherMoney> orderOtherMoneyList = JSONArray.parseArray(JSONObject.toJSONString(jsonObject.get("otherMoney")), OrderOtherMoney.class);
@@ -512,12 +518,16 @@
        log.setContent(jsonObject.toString());
        log.setFunction("updateOrderMoney金额重置:"+order.getOrderId());
        //删除其他金额明细表
        orderOtherMoneyMapper.delete(new LambdaQueryWrapper<OrderOtherMoney>().eq(OrderOtherMoney::getOrderId, order.getOrderId()));
        List<OrderOtherMoney> orderOtherMoneyLists=orderOtherMoneyList;
        double money = 0;
        for (OrderDetail orderDetail : OrderDetails) {
            if(type==1){
                deliveryService.updateDeliveryMoney(orderDetail,order);
            }
            orderDetail =  updateOrderMoneyComputed(orderDetail,order.getCalculateType());
            BigDecimal getGrossAmount= BigDecimal.valueOf(orderDetail.getGrossAmount());
            money+=getGrossAmount.doubleValue();
@@ -611,6 +621,7 @@
        }
        List<OrderDetail> orderDetailList = orderDetailMapper.getOrderReport(offset, pageSize, startDate, endDate, orderDetail,model,scope);
        List<BasicOtherMoney> basicOtherMoneyList=basicOtherMoneyMapper.selectList(new QueryWrapper<BasicOtherMoney>());
        ObjectMapper objectMapper = new ObjectMapper();
        for (OrderDetail detail : orderDetailList) {
@@ -632,6 +643,10 @@
        map.put("data",orderDetailList);
        map.put("title",basicOtherMoneyList);
        map.put("total",orderDetailMapper.getOrderReportTotal(offset, pageSize, startDate, endDate, orderDetail,"order"));
        map.put("orderOtherMoney",
                Collections.singletonList(
                        basicOtherMoneyMapper.selectList(new QueryWrapper<BasicOtherMoney>().eq("state",1))
                ));
        List<String> list = new ArrayList<>();
        list.add(startDate);
        list.add(endDate);