package com.ssm.manage.dao;

import com.github.pagehelper.PageInfo;
import com.ssm.manage.entity.CourseList;
import com.ssm.manage.extendEntity.StoreDaily;
import com.ssm.manage.query.CourseListRequest;
import com.ssm.manage.query.StoreDailyRequest;
import com.ssm.manage.response.CourseDayVo;

import java.util.List;

public interface SsmCourseDao extends BaseDao<CourseList> {
    void createTable(String date);
    PageInfo<CourseList> selectPage(CourseListRequest courseListRequest);
    PageInfo<CourseList> selectPageNew(CourseListRequest courseListRequest);
    PageInfo<CourseList> memberPage(CourseListRequest courseListRequest);
    List<CourseList> selectPages(CourseListRequest courseListRequest);
    List<CourseList> selectMemberInitPages(CourseListRequest courseListRequest);
    List<CourseList> getDocNum(CourseListRequest courseListRequest);
    int addCourse(CourseList courseList);
    int cancel(CourseList courseList);
    int memberInitCancel(CourseList courseList);
    int updateStaff(CourseList courseList);
    int updateMemberInitStaff(CourseList courseList);

    StoreDaily selectDayRecord(StoreDailyRequest storeDailyRequest);
    //加价转疗程
    StoreDaily selectOutcourse(StoreDailyRequest storeDailyRequest);
    StoreDaily NegativeKazin(StoreDailyRequest storeDailyRequest);

    List<CourseList> selectListSalem(CourseList courseList);
    List<CourseList> selectByCourseListMemberInit(CourseList courseList);
    CourseList selectOneS(CourseList courseList);
    int updateOne(CourseList courseList);
    List<CourseList> selectList(CourseList courseList);
    List<CourseList> selectMemberInitList(CourseList courseList);
    List<CourseList> selectList2(CourseList courseList);

    StoreDaily selectDocId(StoreDailyRequest storeDailyRequest);

    List<CourseList> selectCourseOne(CourseListRequest courseListRequest);
    List<CourseList> selectCourseMemberInit(CourseListRequest courseListRequest);

    List<CourseDayVo> selectByDay(StoreDailyRequest storeDailyRequest);

    List<CourseDayVo> selectCourseCoopation(StoreDailyRequest storeDailyRequest);

    List<CourseList> selectCourseByProjectAndDocId(CourseList courseList);

    List<StoreDaily> selectByDayGroupByDateAndStoreId(StoreDailyRequest storeDailyRequest);
}
