package com.ssm.manage.dao;

import com.github.pagehelper.PageInfo;
import com.ssm.manage.entity.CashList;
import com.ssm.manage.extendEntity.StaffProgress;
import com.ssm.manage.extendEntity.StoreDaily;
import com.ssm.manage.query.AccountTradeRecordRequest;
import com.ssm.manage.query.CashListRequest;
import com.ssm.manage.query.StoreDailyRequest;
import com.ssm.manage.response.CashDayVo;

import java.util.Date;
import java.util.List;

public interface SsmCashDao extends BaseDao<CashList> {
    void createTable(String date);
    PageInfo<CashList> selectPage(CashListRequest cashListRequest);
    List<CashList> selectPage2(CashListRequest cashListRequest);
    List<CashList> selectPage3(CashListRequest cashListRequest);
    PageInfo<CashList> selectCashList(CashListRequest cashListRequest);
    PageInfo<CashList> selectCashListGroup(CashListRequest cashListRequest);
    PageInfo<CashList> selectCashListGroupNew(CashListRequest cashListRequest);
    PageInfo<CashList> selectCashListGroups(CashListRequest cashListRequest);
    List<CashList> selectByNum(CashListRequest cashListRequest);
    List<CashList> getDocNum(CashListRequest cashListRequest);
    int addCash(CashList cashList);
    int cancel(CashList cashList);
    int doCash(CashList cashList);
    CashList one(CashListRequest cashListRequest);
    int updateStaff(CashList cashList);

    int updateFeedback(CashList cashList);
    PageInfo<CashList> selectProgress(CashListRequest cashListRequest);

    PageInfo<StaffProgress> selectStaffProgress(StaffProgress staffProgress);

    List<CashList> selectListSalem(CashList cashList);
    int updatechia(CashList cashList);


    List<StoreDaily> selectDayRecord(StoreDailyRequest storeDailyRequest);
    List<StoreDaily> selectDayRecordManAndWoman(StoreDailyRequest storeDailyRequest);
    List<StoreDaily> selectDayRecordRec(StoreDailyRequest storeDailyRequest);
    List<StoreDaily> selectDayRecordCou(StoreDailyRequest storeDailyRequest);

    PageInfo<CashList> selectByRecharge(AccountTradeRecordRequest accountTradeRecordRequest);
    List<CashList> selectDownloadRecord(CashListRequest cashListRequest);

    List<CashList> getAllCashList(CashListRequest cashListRequest);

    List<CashDayVo> selectByDay(StoreDailyRequest storeDailyRequest);

    List<CashList> selectAbnormalOrder(CashListRequest cashListRequest);

    List<StoreDaily> selectByDayGroupByDateAndStoreId(StoreDailyRequest storeDailyRequest);
}
