| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.mail.MessagingException; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.File; |
| | | import java.io.PrintWriter; |
| | | import java.io.Serializable; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.lang.reflect.InvocationTargetException; |
| | | import java.net.InetAddress; |
| | | import java.net.NetworkInterface; |
| | |
| | | import java.time.LocalDate; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.*; |
| | | import java.util.concurrent.LinkedBlockingQueue; |
| | | import java.util.concurrent.ThreadPoolExecutor; |
| | | import java.util.concurrent.TimeUnit; |
| | | |
| | | /** |
| | | * 订单控制器(综合) |
| | |
| | | // 根据订单类型和ID查询订单 |
| | | orderList = queryOrdersByTypeAndIds(uid, tripSheet.getOrderType(), tripSheet.getOrderIdList()); |
| | | } |
| | | List<TripOrderVo> tripOrderVos = processTripOrderVos(orderList); |
| | | ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); |
| | | List<TripOrderVo> finalOrderList = orderList; |
| | | poolExecutor.execute(()->{ |
| | | try { |
| | | List<TripOrderVo> tripOrderVos = processTripOrderVos(finalOrderList); |
| | | String filePath = tripSheetGenerator.generatePdf(tripOrderVos); |
| | | File attachment = new File(filePath); |
| | | String displayFileName = "贵人家园出行-行程单.pdf"; |
| | | emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "贵人家园出行-行程单", "请查收您的行程单", attachment, displayFileName); |
| | | attachment.delete(); // 发送成功后删除临时文件 |
| | | attachment.delete(); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | }); |
| | | Map<String, Object> result = new HashMap<>(); |
| | | result.put("orderNum", orderList.size()); |
| | | return ResultUtil.success(result); |