package com.dsh.account.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.account.dto.*;
import com.dsh.account.entity.GiftSearchDto;
import com.dsh.account.entity.TStudent;
import com.dsh.account.feignclient.competition.model.PurchaseRecordVo;
import com.dsh.account.feignclient.course.model.RecordAppoint;
import com.dsh.account.feignclient.other.model.StoreDetailList;
import com.dsh.account.feignclient.other.model.StoreInfo;
import com.dsh.account.feignclient.other.model.SysNotice;
import com.dsh.account.model.vo.classDetails.ClasspaymentRequest;
import com.dsh.account.model.vo.classDetails.StuEditInfoReq;
import com.dsh.account.model.vo.classDetails.classInsVo.ClassDetailsInsVo;
import com.dsh.account.model.vo.classDetails.classInsVo.StuDetailsReq;
import com.dsh.account.model.vo.classDetails.classInsVo.StuListVo;
import com.dsh.account.model.vo.exploreDetail.LonLatRequest;
import com.dsh.account.model.vo.exploreDetail.QuestionIns;
import com.dsh.account.model.vo.exploreDetail.StoreDetailsVo;
import com.dsh.account.model.vo.sourceDetail.CouponStuAvailableVo;
import com.dsh.account.model.vo.sourceDetail.CourseDetailsOfContinuationResp;
import com.dsh.account.model.vo.sourceDetail.RecordTimeRequest;
import com.dsh.account.util.ResultUtil;
import java.util.List;
import java.util.Map;
/**
*
* 学员信息 服务类
*
*
* @author administrator
* @since 2023-06-14
*/
public interface TStudentService extends IService {
ResultUtil addStuOfAppUser(StuDetailsReq stu, Integer appUserId) throws Exception;
ClassDetailsInsVo querySessionDetailsDt(Integer userIdFormRedis, Integer lessonId, Integer stuId);
List queryDeduRecordDetails(RecordTimeRequest timeRequest, Integer appUserId);
List queryStuOfConponDetails(Integer appUserId);
CourseDetailsOfContinuationResp queryStuOfCourseDetails(Integer lessonId, Integer stuId, Integer appUserId);
/**
* 查询探索-公告列表
*/
List querySystemNoticeDetails();
/**
* 查询公告详情
*/
SysNotice queryNoticeData(Integer noId);
/**
* 查询常见问题列表
*/
List queryQuestionData();
/**
* 查询常见问题详情
*/
QuestionIns queryQuestionDataInfo(Integer quesId);
/**
* 查询客服列表
*/
List queryCustomerDetails();
/**
* 查询探索页面首页
*/
List queryIndexOfExplores(LonLatRequest llrequest);
/**
* 切换学员
*/
List switchStudentActions(Integer appUserId, Integer stuId);
ResultUtil renewClassPayment(Integer userIdFormRedis, ClasspaymentRequest request);
ResultUtil insertVipPaymentCallback(String outTradeNo, String transactionId);
/**
* 查询学院的上课记录
*
* @param stuId
* @param appUserId
* @return
*/
List getAppointmentRecords(Integer stuId, Integer appUserId, Integer appointStatus, Integer timeType, String search, Integer pageNum);
ResultUtil cancelReservationOfCourse(Integer courseStuRecordId);
/**
* @param space 距离
* @param cityCode 城市code
* @return
*/
List queryStoreList(Integer space, String cityCode, String latitude, String longitude, String search);
StoreDetailsVo getStoreDetail(Integer storeId);
ResultUtil commitEditStudentInfo(StuEditInfoReq stu, Integer userIdFormRedis);
List listAll(StudentSearch search);
TStudentDto listOne(Integer id);
void createHistory(CreateHistoryDto createHistoryDto);
List getHistory();
Integer getGiftSelect(GiftSearchDto giftSearchDto);
List