package com.yonyou.hrcloud.attentrpt.service;

import com.yonyou.cloud.middleware.rpc.RemoteCall;
import com.yonyou.hrcloud.attentrpt.model.AttendRptCalResult;
import com.yonyou.hrcloud.attentrpt.model.AttendRptParams;
import com.yonyou.hrcloud.tcommon.model.MQParamsDTO;
import com.yonyou.hrcloud.tcommon.model.NCCAsyncParam;

/***
 * 日月报计算服务入口
 */
@RemoteCall("attend-report@c87e2267-1001-4c70-bb2a-ab41f3b81aa3")
public interface ITsAttendRptCalService {

    /***
     * MQ的日月报计算任务
     * @param mqParamsDTO
     */
    void calculateRptForMQ(MQParamsDTO mqParamsDTO);

    /**
     * NCC的日月报计算任务
     *
     * @param mqParamsDTO
     */
    void calculateRptForNCC(MQParamsDTO mqParamsDTO);
    /***
     *
     * @param params
     * @return
     */
    AttendRptCalResult calculateRpt(AttendRptParams params);

    /***
     *
     * @param mqParamsDTO
     * @param nccAsyncParam
     * @return
     */
    void generateTodayRpt(MQParamsDTO mqParamsDTO, NCCAsyncParam nccAsyncParam);
}
