| | |
| | | import com.example.erp.service.userInfo.SysErrorService; |
| | | import com.fasterxml.jackson.core.JsonProcessingException; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.transaction.interceptor.TransactionAspectSupport; |
| | |
| | | private final BasicOtherMoneyMapper basicOtherMoneyMapper; |
| | | |
| | | private final OrderProcessDetailMapper orderProcessDetailMapper; |
| | | |
| | | private final OrderFileMapper orderFileMapper; |
| | | 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) { |
| | | 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, OrderFileMapper orderFileMapper) { |
| | | this.orderMapper = orderMapper; |
| | | this.orderDetailMapper = orderDetailMapper; |
| | | this.orderGlassDetailMapper = orderGlassDetailMapper; |
| | |
| | | this.flowCardMapper = flowCardMapper; |
| | | this.basicOtherMoneyMapper = basicOtherMoneyMapper; |
| | | this.deliveryService = deliveryService; |
| | | |
| | | this.orderFileMapper = orderFileMapper; |
| | | } |
| | | |
| | | public boolean saveOrder(Map<String,Object> orderMap) throws Exception { |
| | |
| | | //删除订单工艺表 |
| | | // orderProcessDetailMapper.delete(new LambdaQueryWrapper<OrderProcessDetail>().eq(OrderProcessDetail::getOrderId, order.getOrderId())); |
| | | |
| | | orderDetailMapper.deleteOrderFile(order.getOrderId()); |
| | | orderFileMapper.update(null, |
| | | new LambdaUpdateWrapper<OrderFile>() |
| | | .eq(OrderFile::getOrderId, order.getOrderId()) |
| | | .set(OrderFile::getOrderNumber, null) |
| | | ); |
| | | |
| | | insertOtherDetail(order.getOrderId(),OrderDetails,orderOtherMoneyList, position); |
| | | } |
| | |
| | | Product product = productMapper.selectById(OrderDetails.get(i).getProductId()); |
| | | |
| | | OrderDetails.get(i).setWeight(Double.valueOf(String.format("%.2f",product.getThickness()*OrderDetails.get(i).getWidth()*OrderDetails.get(i).getHeight()/1000000*2.5))); |
| | | /*if(OrderDetails.get(i).getBendRadius()!=null && OrderDetails.get(i).getBendRadius()!=0){ |
| | | //获取弯钢弧度 |
| | | Double bendRadius = OrderDetails.get(i).getBendRadius(); |
| | | //获取宽 |
| | | Double width = OrderDetails.get(i).getWidth(); |
| | | //获取拱高 |
| | | String archRiseS = String.format("%.1f",bendRadius-(bendRadius*Math.cos(width/2/bendRadius))); |
| | | Double archRise = Double.parseDouble(archRiseS); |
| | | OrderDetails.get(i).setArchRise(archRise); |
| | | }*/ |
| | | |
| | | //判断次序号文件是否相同 |
| | | if(OrderDetails.get(i).getFileId()!=null){ |
| | | orderFileMapper.update(null,new LambdaUpdateWrapper<OrderFile>() |
| | | .set(OrderFile::getOrderNumber,OrderDetails.get(i).getOrderNumber()) |
| | | .eq(OrderFile::getId,OrderDetails.get(i).getFileId())); |
| | | } |
| | | |
| | | Map<String,Object> otherColumns = JSON.parseObject(OrderDetails.get(i).getOtherColumns(), new TypeReference<Map<String, Object>>(){}); |
| | | int finalI = i; |
| | |
| | | }else{ |
| | | OrderDetails.get(i).setOtherColumns("{}"); |
| | | } |
| | | if(OrderDetails.get(i).getFileName()!=null&&!OrderDetails.get(i).getFileName().trim().isEmpty()){ |
| | | orderMapper.saveOrderFile(OrderDetails.get(i).getFileName(), OrderDetails.get(i).getFileData(),orderId,OrderDetails.get(i).getOrderNumber(),OrderDetails.get(i).getFileJson()); |
| | | } |
| | | // if(OrderDetails.get(i).getFileName()!=null&&!OrderDetails.get(i).getFileName().trim().isEmpty()){ |
| | | // orderMapper.saveOrderFile( |
| | | // OrderDetails.get(i).getFileName(), |
| | | // OrderDetails.get(i).getFileData(), |
| | | // orderId,OrderDetails.get(i).getOrderNumber(), |
| | | // OrderDetails.get(i).getFileJson()); |
| | | // } |
| | | if(OrderDetails.get(i).getShape()==null){ |
| | | OrderDetails.get(i).setShape("1"); |
| | | } |
| | | |
| | | } |
| | | //删除订单文件没有序号多余的数据 |
| | | orderFileMapper.delete(new LambdaQueryWrapper<OrderFile>() |
| | | .eq(OrderFile::getOrderId, orderId) |
| | | .isNull(OrderFile::getOrderNumber)); |
| | | |
| | | |
| | | //往明细表插数据 |
| | | orderDetailMapper.insertBatch(OrderDetails); |
| | |
| | | .eq(OrderGlassDetail::getOrderId, orderId) |
| | | .eq(OrderGlassDetail::getOrderNumber, orderDetail.getOrderNumber()) |
| | | ); |
| | | |
| | | |
| | | for(OrderGlassDetail orderGlassDetail:orderGlassDetails) { |
| | | //获取当前层数与之前层数的厚度 |
| | |
| | | } |
| | | //删除订单 |
| | | public Integer deleteOrder(String id) { |
| | | orderDetailMapper.deleteOrderFile(id); |
| | | orderFileMapper.delete(new QueryWrapper<OrderFile>().eq("order_id",id)); |
| | | return orderMapper.delete( |
| | | new QueryWrapper<Order>().eq("order_id",id) |
| | | ); |
| | |
| | | //查询订单主表与副表信息 |
| | | public Map<String,Object> getOrderById(String id) { |
| | | Order order = orderMapper.selectOne(new QueryWrapper<Order>().eq("order_id",id)); |
| | | List<OrderDetail> orderDetails = orderDetailMapper.selectList(new QueryWrapper<OrderDetail>().eq("order_id",id)); |
| | | List<OrderDetail> orderDetails = orderDetailMapper.selectListWithFileById(id); |
| | | |
| | | List<OrderOtherMoney> orderOtherMoneyList = orderOtherMoneyMapper.findById(id); |
| | | List<Map<String,String>> orderFileList = orderMapper.selectOrderFileList(id); |
| | | Integer deliveryCount = orderMapper.selectDeliveryStateConut(id); |
| | |
| | | } |
| | | 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) { |
| | |
| | | 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); |