guoyuji
2024-04-22 0df7d2cc1ef75c9aa1b3483dc7067a728af7ceb3
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -1,7 +1,9 @@
package com.example.erp.service.sd;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -112,14 +114,23 @@
            OrderDetails.get(i).setOrderId(orderId);
            OrderDetails.get(i).setPerimeter(OrderDetails.get(i).getWidth()*OrderDetails.get(i).getHeight()*2/1000);
            OrderDetails.get(i).setWeight(1.0);
            Map<String,Double> otherColumns = JSON.parseObject(OrderDetails.get(i).getOtherColumns(), new TypeReference<Map<String, Double>>(){});
            int finalI = i;
            otherColumns.forEach((key, value) ->{
                orderOtherMoneyList.forEach(orderOtherMoney ->{
                    if(orderOtherMoney.getColumn().equals(key)){
                        orderOtherMoney.setQuantity (orderOtherMoney.getQuantity()==null?0:orderOtherMoney.getQuantity());
                        orderOtherMoney.setQuantity(((value==null?0:value)*OrderDetails.get(finalI).getQuantity()));
                    }
                });
            });
        }
        //往明细表插数据
        orderDetailMapper.insertBatch(OrderDetails);
        //修改订单主表面积与周长以及重量
        orderMapper.updateOrderParameter(orderId);
        //往小片表传入产品数据
        orderGlassDetailMapper.insertOrderGlassDetail(orderId);
        //往订单其他金额副表传入数据
@@ -131,6 +142,8 @@
            }
            orderOtherMoneyMapper.insert(orderOtherMoney);
        });
        //修改订单主表面积与周长以及重量
        orderMapper.updateOrderParameter(orderId);
        //查询订单小片表获取工艺传入小片工艺表
        //List<OrderGlassDetail> orderGlassDetails = orderGlassDetailMapper.selectOrderGlassDetail(orderId);