package com.unis.purchaseAndSalesSupervision.modular.yjbj.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.unis.purchaseAndSalesSupervision.modular.yjbj.param.*;
import com.unis.purchaseAndSalesSupervision.modular.yjbj.entity.StorageJkqWarning;
import com.unis.purchaseAndSalesSupervision.modular.yjbj.entity.StorageRotationWarning;
import com.unis.purchaseAndSalesSupervision.modular.yjbj.entity.ZqlTable;

import java.util.List;
import java.util.Map;

/**
 * 转圈粮、以陈顶新数据Service接口
 *
 * @author fxw
 * @date  2024/06/13 17:00
 **/
public interface YjbjService {

    /**
     * 转圈粮、以陈顶新数据列表查询
     * @param zqlPageParam 参数
     * @return
     */
    Page<ZqlTable> selectZqlListPage(ZqlPageParam zqlPageParam);

    /**
     * 查询一条转圈粮、以陈顶新数
     * @param zqlIdParam 参数
     * @return
     */
    ZqlTable queryZqlById(ZqlIdParam zqlIdParam);

    /**
     * 查询应轮未轮、临近轮换期数据列表
     * @param storageRotationWarningPageParam 参数
     * @return
     */
    Page<StorageRotationWarning> selectLhList(StorageRotationWarningPageParam storageRotationWarningPageParam);

    /**
     * 查询一条应轮未轮、临近轮换期的数据
     * @param storageRotationWarningIdParam
     * @return
     */
    StorageRotationWarning queryLhById(StorageRotationWarningIdParam storageRotationWarningIdParam);

    /**
     * 查询超架空期预警列表
     * @param storageJkqWarningPageParam 参数
     * @return
     */
    Page<StorageJkqWarning> selectCjkqList(StorageJkqWarningPageParam storageJkqWarningPageParam);

    /**
     * 查询一条超架空期预警数据
     * @param storageJkqWarningIdParam
     * @return
     */
    StorageJkqWarning queryCjkqById(StorageJkqWarningIdParam storageJkqWarningIdParam);

    IPage<List<Map<String,Object>>> getXwcjfxList(XwcjfxPageParam xwcjfxPageParam);

    IPage<List<Map<String,Object>>> getCkjhzxjgList(XwcjfxPageParam xwcjfxPageParam);
}
