Files
smart_venue/service/src/main/java/com/sv/mapper/VenueLessonTicketMapper.java
2021-05-28 21:42:24 +08:00

131 lines
3.3 KiB
Java

package com.sv.mapper;
import com.sv.annotation.NoPlatform;
import com.sv.annotation.PlatformKey;
import com.sv.entity.MemberLessonTicket;
import com.sv.entity.VenueLessonTicket;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Mapper - 课程票据
*
* @author zhaoziyu
* @since 2018-08-06
*/
public interface VenueLessonTicketMapper {
/**
* 新建课程票据
*
* @param venueLessonTicket 课程票据
*/
void insert(VenueLessonTicket venueLessonTicket);
/**
* 更新课程票据
*
* @param venueLessonTicket 课程票据
*/
void update(VenueLessonTicket venueLessonTicket);
/**
* 删除课程票据
*
* @param id 编号
* @return 删除数量
*/
int delete(Integer id);
/**
* 删除课程票据
*
* @param ids 编号数组
* @return 删除数量
*/
int deleteByIds(Integer[] ids);
/**
* 查询课程票据
*
* @param id 编号
* @return 课程票据
*/
VenueLessonTicket findById(Integer id);
/**
* 查询课程票据
*
* @return 课程票据集合
*/
List<VenueLessonTicket> findAll();
/**
* 更新状态
*
* @param ids 编号
* @param status 状态
* @return 更新数量
*/
int updateStatus(@Param("ids") Integer[] ids, @Param("status") Byte status);
void insertTickets(@Param("tickets") List<String> tickets,@Param("venueId") Integer venueId,@Param("venueType") Integer venueType,@Param("lessonId") Integer lessonId);
Integer countByTicketAndLesson(@Param("ticket") String ticket,@Param("venueId") Integer venueId,@Param("venueType") Integer venueType,@Param("lessonId") Integer lessonId);
/**
* 获取未使用的票
* @param lessonId
* @return
*/
List<VenueLessonTicket> findNoUsedTicket(@Param("lessonId") Integer lessonId);
void deletedTickets(@Param("tickets") List<VenueLessonTicket> tickets,@Param("lessonId") Integer lessonId);
/**
* api 预约课程,查询场馆课程票号总条数
*/
Integer findCount(Integer lessonId);
/**
* api 修改场馆课程票号状态
*/
Integer updateLessonTicketStatus(@Param("tickets") List<VenueLessonTicket> tickets,@Param("status")Integer status);
/**
* api 取票
*/
List<VenueLessonTicket> findRandom(@Param("lessonId")Integer lessonId,@Param("limitSum") Integer limitSum);
/**
* api 取消预约课程,修改票状态
*/
void updateTicketStatus(@Param("memberLessonTickets") List<MemberLessonTicket> memberLessonTickets,@Param("status")Integer status);
/**
* api
*/
@PlatformKey
Integer findNum(Integer venueId);
/**
* 检验是否满足公益课当天预约限制
* @param memberId
* @param venueId
* @param checkDate
*/
@NoPlatform
Integer countFreeDayLimit(@Param("memberId") Integer memberId, @Param("venueId") Integer venueId, @Param("checkDate") String checkDate);
/**
* 检验是否满足公益课当周预约限制
* @param memberId
* @param venueId
* @param checkDate
*/
@NoPlatform
Integer countFreeWeekLimit(@Param("memberId") Integer memberId, @Param("venueId") Integer venueId, @Param("checkDate") String checkDate);
}