TicketServiceImpl.java 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.example.cinema.blImpl.sales;
  2. import com.example.cinema.bl.sales.TicketService;
  3. import com.example.cinema.blImpl.management.hall.HallServiceForBl;
  4. import com.example.cinema.blImpl.management.schedule.ScheduleServiceForBl;
  5. import com.example.cinema.data.sales.TicketMapper;
  6. import com.example.cinema.po.Hall;
  7. import com.example.cinema.po.ScheduleItem;
  8. import com.example.cinema.po.Ticket;
  9. import com.example.cinema.vo.*;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Service;
  12. import org.springframework.transaction.annotation.Transactional;
  13. import java.util.List;
  14. /**
  15. * Created by liying on 2019/4/16.
  16. */
  17. @Service
  18. public class TicketServiceImpl implements TicketService {
  19. @Autowired
  20. TicketMapper ticketMapper;
  21. @Autowired
  22. ScheduleServiceForBl scheduleService;
  23. @Autowired
  24. HallServiceForBl hallService;
  25. @Override
  26. @Transactional
  27. public ResponseVO addTicket(TicketForm ticketForm) {
  28. return null;
  29. }
  30. @Override
  31. @Transactional
  32. public ResponseVO completeTicket(List<Integer> id, int couponId) {
  33. return null;
  34. }
  35. @Override
  36. public ResponseVO getBySchedule(int scheduleId) {
  37. try {
  38. List<Ticket> tickets = ticketMapper.selectTicketsBySchedule(scheduleId);
  39. ScheduleItem schedule=scheduleService.getScheduleItemById(scheduleId);
  40. Hall hall=hallService.getHallById(schedule.getHallId());
  41. int[][] seats=new int[hall.getRow()][hall.getColumn()];
  42. tickets.stream().forEach(ticket -> {
  43. seats[ticket.getRowIndex()][ticket.getColumnIndex()]=1;
  44. });
  45. ScheduleWithSeatVO scheduleWithSeatVO=new ScheduleWithSeatVO();
  46. scheduleWithSeatVO.setScheduleItem(schedule);
  47. scheduleWithSeatVO.setSeats(seats);
  48. return ResponseVO.buildSuccess(scheduleWithSeatVO);
  49. } catch (Exception e) {
  50. e.printStackTrace();
  51. return ResponseVO.buildFailure("失败");
  52. }
  53. }
  54. @Override
  55. public ResponseVO getTicketByUser(int userId) {
  56. return null;
  57. }
  58. @Override
  59. @Transactional
  60. public ResponseVO completeByVIPCard(List<Integer> id, int couponId) {
  61. return null;
  62. }
  63. @Override
  64. public ResponseVO cancelTicket(List<Integer> id) {
  65. return null;
  66. }
  67. }