package com.hzs.bonus.achieve.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.member.achieve.CuMemberTree;

import java.util.List;

/**
 * 会员网体历史记录 服务类
 */
public interface ICuMemberTreeService extends IService<CuMemberTree> {

    /**
     * 创建会员网体记录表，每天凌晨12点初始化昨天数据
     *
     * @param date 结算日期，初始化哪天的值 格式是 yyyyMM
     */
    void createCuMemberTree(String date);

    /**
     * 判断是否存在临时表
     *
     * @param tableName 表名
     */
    Integer queryExistOracleTable(String tableName);

    /**
     * 创建会员网体推荐人索引
     *
     * @param tableName 日期
     */
    void createCuMemberTableUniqueIndex(String tableName);

    /**
     * 创建表的序列
     *
     * @param tableName    表名
     * @param tableNameSeq 序列名
     */
    void createCuMemberTableSequence(String tableName, String tableNameSeq);

    /**
     * 删除日表数据
     *
     * @param tableName 表名
     */
    void truncateCuMemberTreeTable(String tableName);

    /**
     * 创建会员网体推荐人索引
     *
     * @param tableName 日期
     */
    void createCuMemberTreeDayOnlyIndex(String tableName);

    /**
     * 创建会员网体推荐人索引
     *
     * @param tableName 日期
     */
    void createCuMemberTreeParentIndex(String tableName);

    /**
     * 创建会员网体安置人索引
     *
     * @param tableName 日期
     */
    void createCuMemberTreePlaceIndex(String tableName);

}
