package com.njcn.product.diagram.LedgerScale.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.product.advance.responsility.pojo.dto.CustomerResponsibility;
import com.njcn.product.diagram.LedgerScale.pojo.dto.EventSourceDTO;
import com.njcn.product.diagram.LedgerScale.pojo.dto.LedgerScaleDTO;
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventDetailVO;
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventLedgerVO;
import com.njcn.product.terminal.mysqlTerminal.pojo.po.PqStation;
import com.njcn.product.terminal.mysqlTerminal.pojo.vo.TerminalShowVO;
import com.njcn.product.terminal.mysqlTerminal.pojo.param.LargeScreenCountParam;

import java.util.List;

/**
 * @Author: cdf
 * @CreateTime: 2025-09-01
 * @Description:
 */
public interface LedgerScaleService {

    LedgerScaleDTO ledgerScaleStatistic(LargeScreenCountParam param);

    EventSourceDTO eventSource(LargeScreenCountParam param);

    EventSourceDTO eventAggregation(LargeScreenCountParam param);

    List<EventLedgerVO> hasEventList(LargeScreenCountParam param);

    List<EventLedgerVO> hasUpEventList(LargeScreenCountParam param);


    EventLedgerVO clickImage(LargeScreenCountParam param);
    Page<EventDetailVO> eventList(LargeScreenCountParam param);

    Page<EventDetailVO> eventListByLineId(LargeScreenCountParam param);

    Page<TerminalShowVO> stationPage(LargeScreenCountParam param);

    Page<TerminalShowVO> devPage(LargeScreenCountParam param);

    Page<TerminalShowVO> linePage(LargeScreenCountParam param);


    List<CustomerResponsibility> harmOneImage(String id, Integer time);

    List<PqStation> stationMap(LargeScreenCountParam param);
}
