package nckd.jxccl.swc.init.plugin.other;

import kd.bos.context.RequestContext;
import kd.bos.exception.KDException;
import kd.bos.logging.Log;
import kd.bos.logging.LogFactory;
import kd.bos.schedule.executor.AbstractTask;
import kd.sdk.plugin.Plugin;
import nckd.jxccl.swc.init.business.BaseMedicalAllowanceServiceImpl;

import java.util.Map;

/**
 * 后台任务插件  当年度待遇标准计算任务
 * 后台提供定时任务（每年12月31日24点执行一次），当年度待遇根据上年度12月31日的人员状态和记录计算补助待遇，
 * 按照年度生成多行记录，记录历史。当专员手动执行前端更新按钮时（需选中人员），
 * 系统需根据手动的当前时间获取人员状态和记录计算补助待遇，包括对当前记录进行更新，
 * @author: turborao
 * @date: 2025/10/27 13:05
 */
public class BaseMedicalAllowanceTask extends AbstractTask implements Plugin {

    private static final Log logger = LogFactory.getLog(BaseMedicalAllowanceTask.class);
    @Override
    public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {

        BaseMedicalAllowanceServiceImpl baseMedicalAllowanceService = new BaseMedicalAllowanceServiceImpl();
        Map<String, String> result= baseMedicalAllowanceService.calcBaseMedicalAllowanceForAll();

        logger.info("当年度待遇标准计算任务，信息：" + result.get("msg"));
    }
}