报表系统 新增 定时任务
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
package com.lideeyunji.core.framework.config.job;
|
||||
|
||||
import com.lideeyunji.core.framework.mapper.OracleProcedureMapper;
|
||||
import com.lideeyunji.tool.framework.common.constant.lideeYunJiBaseConstant;
|
||||
import com.lideeyunji.tool.framework.quartz.core.handler.JobHandler;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Oracle 存储过程调用定时任务 ,用于更新核心、高频的数据
|
||||
* 用于定时调用 Oracle 存储过程进行数据处理
|
||||
*/
|
||||
@Slf4j
|
||||
@Component("oracleProcedureUpdateCoreJob")
|
||||
public class OracleProcedureUpdateCoreJob implements JobHandler {
|
||||
|
||||
@Resource
|
||||
private OracleProcedureMapper oracleProcedureMapper;
|
||||
|
||||
@Override
|
||||
public String execute(String param) throws Exception {
|
||||
log.info("========== 开始执行 Oracle 存储过程定时任务 ,用于更新核心、高频的数据,参数:{} ==========", param);
|
||||
|
||||
try {
|
||||
callUpdateCore();
|
||||
log.info("========== Oracle 存储过程定时任务,用于更新核心、高频的数据 执行成功 ==========");
|
||||
return "Oracle 存储过程定时任务,用于更新核心、高频的数据 执行成功";
|
||||
} catch (Exception e) {
|
||||
log.error("========== Oracle 存储过程定时任务,用于更新核心、高频的数据 执行失败 ==========", e);
|
||||
throw new RuntimeException("Oracle 存储过程,用于更新核心、高频的数据 调用失败:" + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 调用简单存储过程
|
||||
*/
|
||||
private void callUpdateCore() {
|
||||
log.info("开始调用存储过程...");
|
||||
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("result", new Object()); // 用于接收输出参数
|
||||
|
||||
oracleProcedureMapper.callUpdateCore(lideeYunJiBaseConstant.DS_ORACLE_GRYYBI);
|
||||
|
||||
// 获取输出参数值
|
||||
Object result = params.get("result");
|
||||
log.info("存储过程执行结果:{}", result);
|
||||
}
|
||||
}
|
||||
@@ -24,4 +24,14 @@ public interface OracleProcedureMapper {
|
||||
@DataPermission(enable = false)
|
||||
void callAllProcedure(@Param("dataSourceType") String dataSourceType);
|
||||
|
||||
/**
|
||||
* 调用 Oracle 存储过程 - 示例
|
||||
*
|
||||
* @param dataSourceType 存储过程参数
|
||||
* @return 执行结果
|
||||
*/
|
||||
@DS(value = "#dataSourceType")
|
||||
@DataPermission(enable = false)
|
||||
void callUpdateCore(@Param("dataSourceType") String dataSourceType);
|
||||
|
||||
}
|
||||
|
||||
@@ -7,4 +7,8 @@
|
||||
{call P_ERP_DATA_NEW()}
|
||||
</select>
|
||||
|
||||
<!-- 调用示例存储过程 -->
|
||||
<select id="callUpdateCore" statementType="CALLABLE" >
|
||||
{call P_ERP_DATA_FAST()}
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user