package com.junmp.jyzb.service;

import com.junmp.jyzb.api.bean.dto.InventorySumDto;
import com.junmp.jyzb.api.bean.dto.LargeScreenDto.AreaTypeDto;
import com.junmp.jyzb.api.bean.dto.LargeScreenDto.GroupByCountDto;
import com.junmp.jyzb.api.bean.dto.LargeScreenDto.Top5Dto;
import com.junmp.jyzb.api.bean.dto.TjDto.*;
import com.junmp.jyzb.api.bean.query.InventoryReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgCountReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgEqsReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPoliceReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq;
import com.junmp.v2.common.bean.response.ApiRes;
import com.junmp.v2.db.api.page.PageResult;

import java.util.List;

public interface TjService {


    FinalTjOrgEqsDto test(TjOrgEqsReq req);


    //装备统计报表
    PageResult<TjOrgEqsDto> GetTjData(TjOrgEqsReq req);
    List<TjOrgEqsDto> GetTjDataList(TjOrgEqsReq req);

    List<InventorySumDto> TjOrgEqsDetailList(TjOrgEqsReq req);
    //财务统计报表
    PageResult<TjOrgPriceDto> TjOrgPrice(TjOrgPriceReq req);

    List<TjOrgPriceDto> TjOrgPriceDetailList(TjOrgPriceReq req);


    FinalTjOrgPriceDto TjOrgPriceSum(TjOrgPriceReq req);


    List<TjOrgPriceDto> TjOrgPriceDetail(TjOrgPriceReq req);

    PageResult<TjOrgCountDto> TjOrgCount(TjOrgCountReq req);

    FinalTjOrgCountDto TjOrgCountSum(TjOrgCountReq req);

    List<TjOrgCountDto> TjOrgCountDetail(TjOrgCountReq req);

    List<TjOrgCountDto> TjOrgCountDetailList(TjOrgCountReq req);


    List<TjOrgCountDto> TjOrgCountByType(TjOrgCountReq req);

    List<TjOutAndInDto> TjOutAndInCount(TjOrgCountReq req);

    PageResult<TjOrgPoliceDto> TjOrgPolice(TjOrgPoliceReq req);

    FinalTjOrgPoliceDto TjOrgPoliceSum(TjOrgPoliceReq req);



    List<TjOrgPoliceDto> TjOrgPoliceDetailList(TjOrgPoliceReq req);


    List<TjOrgEqsDto> GetTjDataDetail(TjOrgEqsReq req);


    FinalTjOrgEqsDto TjOrgDataSum(TjOrgEqsReq req);


    void TjOrgEqsExport(TjOrgEqsReq req);


    void TjOrgPriceExport(TjOrgPriceReq req);

    void TjOrgCountExport(TjOrgCountReq req);

    void TjOrgPoliceExport(TjOrgPoliceReq req);


    List<Top5Dto> GetTop5(TjOrgCountReq req);

    List<GroupByCountDto> GetGroupByCount(TjOrgCountReq req);

    List<TjOutAndInDto> GetCount(TjOrgCountReq req);

    AreaTypeDto GetAreaType(TjOrgCountReq req);
}
