package com.sv.mapper; import com.sv.annotation.PlatformKey; import com.sv.dto.api.VenueLessonDTO; import com.sv.dto.app.VenueLessonStatus; import com.sv.dto.oms.VenueLessonOmsDTO; import com.sv.entity.MemberLessonTicket; import com.sv.entity.VenueLesson; import org.apache.ibatis.annotations.Param; import java.util.Date; import java.util.List; /** * Mapper - 场馆课程 * * @author zhaoziyu * @since 2018-08-06 */ public interface VenueLessonMapper { /** * 新建场馆课程 * * @param venueLesson 场馆课程 */ void insert(VenueLesson venueLesson); /** * 更新场馆课程 * * @param venueLesson 场馆课程 */ void update(VenueLesson venueLesson); /** * 删除场馆课程 * * @param id 编号 * @return 删除数量 */ int delete(Integer id); /** * 删除场馆课程 * * @param ids 编号数组 * @return 删除数量 */ int deleteByIds(Integer[] ids); /** * api * 查询场馆课程 * * @param id 编号 * @return 场馆课程 */ VenueLesson findById(Integer id); /** * 查询场馆课程 * * @return 场馆课程集合 */ List findAll(); List findAllForOms(@Param("leftTime") String leftTime,@Param("rightTime") String rightTime); VenueLessonOmsDTO findByIdForOms(@Param("id") Integer id); void deleteImagesById(@Param("id") Integer id); void insertImages(@Param("urls") List urls,@Param("lessonId") Integer lessonId); Integer countByTime(@Param("startTime") String startTime,@Param("endTime") String endTime,@Param("venueId") Integer venueId,@Param("venueType") Integer venueType,@Param("lessonId") Integer excludeLessonId,@Param("date") String date); Integer countByTimeAndCoach(@Param("startTime") String startTime,@Param("endTime") String endTime,@Param("lessonId") Integer excludeLessonId,@Param("date") String date,@Param("coachId") Integer coachId); /** * api 查询对应场馆课程的上周,这周下2周数据,从周一开始,周日结束 */ List findShow(@Param("starTime") String starTime,@Param("endTime") String endTime, @Param("venueId") Integer venueId,@Param("type") Integer type); /** * api 查询预约课程上课时间对应的课程信息 */ List lessonShow(@Param("date")String date,@Param("venueId") Integer venueId,@Param("type")Integer type); /** * api 查询课程详情 */ @PlatformKey("le.platform_id") VenueLessonDTO findByLessonId(Integer lessonId); /** * api 显示预约订单 */ @PlatformKey("vl.platform_id") VenueLessonDTO findByLessonAndMemberCard(@Param("venueId") Integer venueId,@Param("venueType")Integer venueType,@Param("lessonId")Integer lessonId); /** * api 查找用户预约对应的课程信息 */ VenueLesson findMemberBillById(Integer id); /** * api 修改课程销售数量 */ void updateSaleNumById(@Param("lessonId") Integer lessonId,@Param("num") Integer num); /** * api 签到查询对应的课程 */ VenueLesson findLessonByTime(@Param("coachId") Integer coachId,@Param("nowDate")String nowDate,@Param("nowTime")String nowTime); Integer countByCoachId(@Param("coachId") Integer coachId); /** * api 查询当前日期,是否可预约 */ List findBook(@Param("venueId") Integer venueId, @Param("type")Integer type, @Param("date")String date); /** * 查询是否有课 * @param venueId * @param type * @param date * @return */ Integer findBooks(@Param("venueId") Integer venueId, @Param("type")Integer type, @Param("date")String date); /** * api 修改库存 */ void updateSaleNumBy(@Param("num")Integer num,@Param("lessonId") Integer lessonId); /** * APP获取当前预订时间列 * @param venueId * @return */ List getLessonTypes(@Param("venueId") Integer venueId); /** * APP获取当前预订情况 * @param venueId * and b.date = #{searchDate} and b.venue_id = #{venueId} * @return */ List getLessonStatus(@Param("venueId") Integer venueId); /** * 查询课程当天所有的信息 * @param venueId * @return */ List getCopyLesson(@Param("venueId") Integer venueId,@Param("date") Date date); void copyImg(@Param("id") Integer id,@Param("nId") Integer nId); List findAllForCopy(@Param("leftTime") String leftTime, @Param("rightTime") String rightTime); }