SalaryRpc.java 1.86 KB
package cn.fw.dalaran.rpc.morax;

import cn.fw.dalaran.common.utils.PublicUtil;
import cn.fw.data.base.domain.common.Message;
import cn.fw.morax.sdk.api.IKpiReportService;
import cn.fw.morax.sdk.api.ISalaryReportService;
import cn.fw.morax.sdk.dto.CustomList;
import cn.fw.morax.sdk.dto.kpi.KpiGroupUserQuery;
import cn.fw.morax.sdk.dto.kpi.KpiGroupUserResult;
import cn.fw.morax.sdk.dto.kpi.UserIndicatorReq;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.util.Collections;
import java.util.List;


/**
 * @author wmy3969
 * @version 1.0
 * @date 2022/10/9 14:05
 * @Description 绩效薪酬rpc
 */
@Slf4j
@Component
@RequiredArgsConstructor
public class SalaryRpc {

    private final IKpiReportService kpiApi;// 绩效api
    private final ISalaryReportService salaryApi;// 薪酬api

    /**
     * 查询绩效组人员
     */
    public List<KpiGroupUserResult> queryGroupUsers(KpiGroupUserQuery kpiGroupUserQuery) {
        try {
            Message<List<KpiGroupUserResult>> groupUser = kpiApi.queryKpiGroupUser(kpiGroupUserQuery);
            PublicUtil.assertTrue(groupUser.isSuccess(), "查询绩效组人员失败!");
            return groupUser.getData();
        } catch (Exception e) {
            log.error("查询绩效组人员发生错误, 错误信息为: {}", e.getMessage());
            return Collections.emptyList();
        }
    }

    /**
     * 上报人员绩效数据
     */
    public void reportKpi(CustomList<UserIndicatorReq> userIndicatorList) {
        try {
            Message<Void> msg = kpiApi.indicatorReport(userIndicatorList);
            PublicUtil.assertTrue(msg.isSuccess(), "上报人员绩效数据失败!");
        } catch (Exception e) {
            log.error("上报人员绩效数据发生错误, 错误信息为: {}", e.getMessage());
        }
    }

}