repository = $repository; } /** * 获取城市列表 * * @return mixed */ public function getMovieCity() { [$page, $limit] = $this->getPage(); $initial = $this->request->param('initial', ''); $city_name = $this->request->param('city_name', ''); return app('json')->success($this->repository->getMovieCity($page, $limit, $initial, $city_name)); } /** * 获取城市分区列表 * * @return mixed */ public function getArea() { $city_sign = $this->request->param('city_sign', ''); if (empty($city_sign)) return app('json')->fail('请选择城市'); return app('json')->success($this->repository->getMovieArea($city_sign)); } /** * 获取影院列表 * * @return mixed */ public function getCinema() { [$page, $limit] = $this->getPage(); $city_sign = $this->request->param('city_sign', ''); $area_sign = $this->request->param('area_sign', ''); return app('json')->success($this->repository->getCinema($page, $limit, $city_sign, $area_sign)); } /** * 获取影片列表 * * @return mixed */ public function getFilm() { [$page, $limit] = $this->getPage(); $cinema_sign = $this->request->param('cinema_sign', ''); $film_sign = $this->request->param('film_sign', ''); return app('json')->success($this->repository->getFilm($page, $limit, $cinema_sign, $film_sign)); } /** * 获取影院场次列表 * * @return mixed */ public function getCinemaSched() { $cinema_sign = $this->request->param('cinema_sign', ''); if (empty($cinema_sign)) return app('json')->fail('请选择影院'); $film_sign = $this->request->param('film_sign', ''); if (empty($film_sign)) return app('json')->fail('请选择影片'); return app('json')->success($this->repository->getCinemaSched($film_sign, $cinema_sign)); } /** * 获取场次座位 * * @return mixed */ public function getSchedSeat() { $relation_id = $this->request->param('relation_id', ''); if (empty($cinema_sign)) return app('json')->fail('请选择场次'); $sched_sign = $this->request->param('sched_sign', ''); if (empty($film_sign)) return app('json')->fail('请选择场次'); return app('json')->success($this->repository->getSchedSeat($relation_id, $sched_sign)); } /** * 锁座订单 * * @return mixed */ public function submitOrder() { $params = $this->request->params( ['price', 0.00], ['number', 0], ['channel_type', ''], ['pay_type', ''], ['city_sign', ''], ['city_name', ''], ['area_code', ''], ['area_name', ''], ['cinema_sign', ''], ['cinema_name', ''], ['address', ''], ['longitude', ''], ['latitude', ''], ['hall_sign', ''], ['hall_name', ''], ['relation_id', ''], ['sched_sign', ''], ['film_sign', ''], ['film_name', ''], ['show_date', ''], ['show_time', ''], ['sched_seat', ''] ); if (empty($params['sched_sign'])) return app('json')->fail('请选择场次'); if (empty($params['seat_sign'])) return app('json')->fail('请选择座位'); if (empty($params['channel_type'])) return app('json')->fail('请选择购票类型'); $result = $this->repository->submitOrder($this->request->userInfo(), $params); if ($result['code'] == 200) { return app('json')->success($result); } else { return app('json')->fail($result); } } /** * 确认订单 * * @return mixed */ public function confirmOrder() { $relation_id = $this->request->param(['relation_id']); if (empty($cinema_sign)) return app('json')->fail('请选择场次'); $sched_sign = $this->request->param(['sched_sign']); if (empty($film_sign)) return app('json')->fail('请选择场次'); return app('json')->success($this->repository->confirmOrder($relation_id, $sched_sign)); } /** * 查询订单信息 * * @return mixed */ public function getOrderInfo() { $relation_id = $this->request->param(['relation_id']); if (empty($cinema_sign)) return app('json')->fail('请选择场次'); $sched_sign = $this->request->param(['sched_sign']); if (empty($film_sign)) return app('json')->fail('请选择场次'); return app('json')->success($this->repository->getOrderInfo($relation_id, $sched_sign)); } }