package com.yd.csf.api.service;

import com.yd.common.result.Result;
import com.yd.csf.api.dto.ApiSalarySplitSummaryPageDTO;
import com.yd.csf.feign.request.salarysplit.*;
import com.yd.csf.api.dto.ApiSalarySplitPageListDTO;
import com.yd.csf.feign.response.salarysplit.ApiCalculateToAmountResponse;
import com.yd.csf.feign.response.salarysplit.ApiQueryRemainingResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitExportSummaryListResponse;
import com.yd.csf.feign.response.salarysplit.ApiSalarySplitQueryRateResponse;

public interface ApiSalarySplitService {
    Result<ApiSalarySplitSummaryPageDTO> summaryPage(ApiSalarySplitSummaryPageRequest request);

    Result<ApiSalarySplitPageListDTO> page(ApiSalarySplitPageRequest request);

    Result batchSave(ApiSalarySplitBatchSaveRequest request);

    Result<ApiQueryRemainingResponse> queryRemaining(ApiQueryRemainingRequest request);

    Result<ApiSalarySplitQueryRateResponse> queryRate(ApiSalarySplitQueryRateRequest request);

    Result<ApiCalculateToAmountResponse> calculateToAmount(ApiCalculateToAmountRequest request);

    Result<ApiSalarySplitExportSummaryListResponse> export(ApiSalarySplitExportSummaryListRequest request);
}
