| | |
| | | log.setContent(orderMap.toString()); |
| | | |
| | | if(order.getOrderId() == null || order.getOrderId().isEmpty()){ |
| | | insertOrder(order,OrderDetails,orderOtherMoneyList,orderIdType); |
| | | insertOrder(order,OrderDetails,orderOtherMoneyList,orderIdType, (Map<String, String>) orderMap.get("position")); |
| | | log.setFunction("saveOrder创建:"+order.getOrderId()); |
| | | }else { |
| | | updateOrder(order,OrderDetails,orderOtherMoneyList); |
| | | updateOrder(order,OrderDetails,orderOtherMoneyList,(Map<String, String>) orderMap.get("position")); |
| | | log.setFunction("saveOrder修改:"+order.getOrderId()); |
| | | } |
| | | |
| | |
| | | return map; |
| | | } |
| | | //生成订单数据 |
| | | public void insertOrder(Order order, List<OrderDetail> OrderDetails, List<OrderOtherMoney> orderOtherMoneyList, String orderIdType) { |
| | | public void insertOrder(Order order, List<OrderDetail> OrderDetails, List<OrderOtherMoney> orderOtherMoneyList, String orderIdType, Map<String,String> position) { |
| | | //根据传入的当前月份或者当天生成订单id |
| | | String orderId = getOrderId(orderIdType); |
| | | //往主表插数据 |
| | |
| | | order.setCreateOrder(2); |
| | | orderMapper.insert(order); |
| | | |
| | | insertOtherDetail(orderId,OrderDetails,orderOtherMoneyList); |
| | | insertOtherDetail(orderId,OrderDetails,orderOtherMoneyList,position); |
| | | } |
| | | |
| | | private String getOrderId(String dateType){ |
| | |
| | | |
| | | |
| | | //修改订单数据,并且重新生成多个副表数据 |
| | | public void updateOrder(Order order,List<OrderDetail> OrderDetails,List<OrderOtherMoney> orderOtherMoneyList) throws Exception { |
| | | public void updateOrder(Order order, List<OrderDetail> OrderDetails, List<OrderOtherMoney> orderOtherMoneyList, Map<String, String> position) throws Exception { |
| | | Order oldOrder = orderMapper.selectOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderId,order.getOrderId())); |
| | | if(oldOrder.getProcessReview()==2){ |
| | | throw new ServiceException(Constants.Code_600,"该订单已经审核,无法修改"); |
| | |
| | | |
| | | orderDetailMapper.deleteOrderFile(order.getOrderId()); |
| | | |
| | | insertOtherDetail(order.getOrderId(),OrderDetails,orderOtherMoneyList); |
| | | insertOtherDetail(order.getOrderId(),OrderDetails,orderOtherMoneyList, position); |
| | | } |
| | | |
| | | |
| | | |
| | | //插入其他副表数据,被其他方法引用 |
| | | public void insertOtherDetail(String orderId,List<OrderDetail> OrderDetails,List<OrderOtherMoney> orderOtherMoneyList) { |
| | | public void insertOtherDetail(String orderId, List<OrderDetail> OrderDetails, List<OrderOtherMoney> orderOtherMoneyList, Map<String, String> position) { |
| | | //先把其他金额副表的金额与数量置0 |
| | | if(orderOtherMoneyList!=null){ |
| | | orderOtherMoneyList.forEach(orderOtherMoney -> { |
| | |
| | | //往明细表插数据 |
| | | orderDetailMapper.insertBatch(OrderDetails); |
| | | //往小片表传入产品数据 |
| | | orderGlassDetailMapper.insertOrderGlassDetail(orderId); |
| | | orderGlassDetailMapper.insertOrderGlassDetail(orderId,position.get("outside"),position.get("inside")); |
| | | |
| | | //修改成品拱高 |
| | | List<OrderDetail> orderDetails = orderDetailMapper |