📄 htdlglblh.java
字号:
// HTDLzxlogDAO zxlogDAO = new HTDLzxlogDAO();
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
return resEvent;
}
//返回所有的能够以调度方式定时运行的任务列表,即数据库中定时任务代码表中的内容
private ResponseEvent getDsrwlb(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
/*
与DAO交互,得到任务列表
*/
HTDLdsrwlbDAO dsrwlbDAO = new HTDLdsrwlbDAO();
// LogWritter.sysDebug("HTDL,------" + sessionID +
// "开始获取任务代码表中的所有内容.....------");
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
try {
ArrayList dsrwlbVOList = (ArrayList) dsrwlbDAO.selectAllRwdm(null);
resEvent.setDsrwlbVOList(dsrwlbVOList);
resEvent.setRepCode("0"); //表示成功
} catch (TaxBaseSystemException ex) {
resEvent.setRepCode("-1");
LogWritter.sysError(ex.getMessage());
throw ex;
}
// LogWritter.sysDebug("HTDL,------完成任务代码表的获取,共" + dsrwlbVOList.size() +
// "条记录------");
return resEvent;
}
//修改任务状态
//如果当前状态HTDL_RWZT_SCHEDULING,则修改为HTDL_RWZT_PAUSE
//如果当前状态HTDL_RWZT_PAUSE,则修改为HTDL_RWZT_SCHEDULING
private ResponseEvent modRwzt(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
// LogWritter.sysDebug("HTDL,-------开始批量更新任务的状态......------");
ArrayList listRwxh = reqEvent.getListRwxh();
StringBuffer rwxh = new StringBuffer();
for (int i = 0; i < listRwxh.size(); i++) {
rwxh.append("'");
rwxh.append(listRwxh.get(i));
rwxh.append("'");
if (i != listRwxh.size() - 1) {
rwxh.append(",");
}
}
// LogWritter.sysDebug("HTDL,----要修改的任务序号列表:" + listRwxh);
HTDLybsdsrwDAO ybsdsrwDAO = new HTDLybsdsrwDAO();
int account = ybsdsrwDAO.updateZtBatch(new String(rwxh));
// int account = ybsdsrwDAO.updateZtBatch2(listRwxh);
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
if (account != listRwxh.size()) {
if (account == ApplicationContext.RET_FAIL) {
resEvent.setRepCode("更新出错"); //需要统一编码 mod
} else {
resEvent.setRepCode(account + "条记录更新成功!"); //需要统一编码 mod
}
} else { //全部更新成功
resEvent.setRepCode("0");
}
// LogWritter.sysDebug("HTDL,------" + sessionID + "完成批量更新任务状态,操作结果: " +
// resEvent.getRepCode());
return resEvent;
}
//提供一次获得所有的任务代码和已部署任务列表,减少连接后台的次数
public ResponseEvent getRwlbandYbsrw(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
/*获取任务代码的列表*/
HTDLdsrwlbDAO dsrwlbDAO = new HTDLdsrwlbDAO();
ArrayList dsrwlbVOList = (ArrayList) dsrwlbDAO.selectAllRwdm(null);
/*获取已部署任务列表*/
HTDLybsdsrwDAO ybsdsrwDAO = new HTDLybsdsrwDAO();
ArrayList ybsrwlbVOList = (ArrayList) ybsdsrwDAO.selectAllYbsrw(
reqEvent.getBlh());
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setDsrwlbVOList(dsrwlbVOList);
resEvent.setYbsrwlbVOList(ybsrwlbVOList);
resEvent.setRepCode("0"); //表示成功
return resEvent;
}
//模糊查询执行情况日志表
public ResponseEvent getZxlogFuzzy(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLzxlogDAO zxlogDAO = new HTDLzxlogDAO();
// LogWritter.sysDebug("HTDL,------" +
// "开始模糊查询任务执行情况日志.....------");
ArrayList zxlogVOList = (ArrayList) zxlogDAO.selectZxlogFuzzy(reqEvent.
getHtdlCxzxqkVO());
// LogWritter.sysDebug("HTDL,------完成模糊查询任务执行情况日志,共有记录" + zxlogVOList.size() +
// "条。------");
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setZxqkVOList(zxlogVOList);
resEvent.setRepCode("0");
resEvent.setRetMsg("成功完成");
return resEvent;
}
//得到当天任务列表中的所有任务
public ResponseEvent getAllDtrw(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLdtrwlbDAO dtrwDAO = new HTDLdtrwlbDAO();
ArrayList dtrwVOList = (ArrayList) dtrwDAO.selectAllDtrw();
// LogWritter.sysDebug("HTDL,------完成查询当天任务列表,共有记录" + dtrwVOList.size() +
// "条。------");
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setDtrwVOList(dtrwVOList);
resEvent.setRepCode("0");
resEvent.setRetMsg("成功完成");
return resEvent;
}
public ResponseEvent createDtrw(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLdtrwlbDAO dtrwDAO = new HTDLdtrwlbDAO();
HTDLreturnVO retVO = new HTDLreturnVO();
dtrwDAO.createDtrw(retVO);
// LogWritter.sysDebug("HTDL,------生成当天任务列表的情况" + retVO.getDetail());
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setRepCode("0");
resEvent.setRetMsg("成功完成");
return resEvent;
}
public ResponseEvent executeDtrw(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLexecDtrwMultiThread execMutiThread = new HTDLexecDtrwMultiThread();
// HTDLexecDtrw execSingleThread = new HTDLexecDtrw();
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
try {
execMutiThread.executeDtrwMutiThread(false); //false: 直接执行当天任务列表中的内容,不需要先生成当天任务列表
// execSingleThread.run();
LogWritter.sysDebug("HTDL,------完成执行----------");
resEvent = new HTDLglddrwResEvent();
resEvent.setRepCode("0");
resEvent.setRetMsg("成功完成");
} catch (Exception e) {
resEvent.setRepCode("-1");
resEvent.setRetMsg("执行出现异常");
}
return resEvent;
}
// countDtrwbyZt
public ResponseEvent countDtrwbyZt(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
HTDLdtrwlbDAO dtrwDAO = new HTDLdtrwlbDAO();
try {
int result = dtrwDAO.countDtrwbyZt("1", reqEvent.getListRwxh()); //"1"表示执行中
ArrayList tmpList = new ArrayList();
tmpList.add(new Integer(result));
resEvent.setDtrwVOList(tmpList);
} catch (TaxBaseSystemException e) {
resEvent.setRepCode("-1");
resEvent.setRetMsg("执行出现异常");
LogWritter.sysError("执行出错!in countDtrwbyZt");
throw e;
}
return resEvent;
}
public static ResponseEvent startSchedule(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
if (Scheduler.singleton().isRunning()) {
resEvent.setRepCode("0"); //需重新编码
resEvent.setRetMsg("调度启动失败:定时调度功能已经在运行中.....");
LogWritter.sysInfo("调度启动失败:定时调度功能已经在运行中.....");
} else {
Scheduler.singleton().startScheduler();
resEvent.setRepCode("0");
resEvent.setRetMsg("实现代理自动调度功能的定时器已经启动,首次执行时间定于:" +
Scheduler.singleton().getFirst() +
"执行间隔:" +
ApplicationContext.HTDL_SCHEDULER_PERIOD /
3600000 +
"小时");
LogWritter.sysInfo("实现代理自动调度功能的定时器已经启动,首次执行时间定于:" +
Scheduler.singleton().getFirst() +
"执行间隔:" +
ApplicationContext.HTDL_SCHEDULER_PERIOD /
3600000 +
"小时");
}
return resEvent;
}
public ResponseEvent stopSchedule(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
if (!Scheduler.singleton().isRunning()) {
resEvent.setRepCode("0"); //需重新编码
resEvent.setRetMsg("调度停止操作失败:定时调度功能之前已经停止运行.....");
LogWritter.sysInfo("调度停止操作失败:定时调度功能之前已经停止运行.....");
} else {
Scheduler.singleton().stopScheduler();
resEvent.setRepCode("0");
resEvent.setRetMsg("停止成功!");
LogWritter.sysInfo("停止成功!");
}
return resEvent;
}
//修改指定任务的参数
private ResponseEvent modRwCs(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLybsdsrwDAO ybsrwDAO = new HTDLybsdsrwDAO();
ybsrwDAO.updateYbsrwCs(reqEvent.getRw_xh(), reqEvent.getCsl());
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setRepCode("0");
return resEvent;
}
//执行指定的任务
public ResponseEvent executeRw(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
System.out.println("in executeRW!---------------------- " +
reqEvent.getStart_time() + "-------");
HTDLybsdsrwVO ybsdsrwVO = reqEvent.getHtdlYbsdsrwVO();
String rw_xh = ybsdsrwVO.getRw_xh(); //任务序号
String csl = ybsdsrwVO.getCsl(); //使用的参数列表
HTDLexecRw execRw = new HTDLexecRw(rw_xh, csl);
Timer timer = new Timer();
// timer.schedule(execRw,0); //立刻执行,执行一次
timer.schedule(execRw, reqEvent.getStart_time());
// execRw.start();
//先更新任务的状态,以便即时反映在界面中
HTDLybsdsrwDAO ybsdsrwDAO = new HTDLybsdsrwDAO();
ybsdsrwDAO.updateRwzt(rw_xh, "3");
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setRepCode("0");
return resEvent;
}
public ResponseEvent resetRwZt(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLybsdsrwDAO ybsdsrwDAO = new HTDLybsdsrwDAO();
String rw_xh = reqEvent.getRw_xh();
ybsdsrwDAO.updateRwzt(rw_xh, "0"); //“0:空闲中”
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setRepCode("0");
return resEvent;
}
//editDdrw
public ResponseEvent editDdrw(HTDLglddrwReqEvent reqEvent) throws
TaxBaseSystemException {
HTDLybsdsrwVO ybsdsrwVO = reqEvent.getHtdlYbsdsrwVO();
//to add code here
HTDLybsdsrwDAO ybsrwDAO = new HTDLybsdsrwDAO();
ybsrwDAO.updateYbsrwByXh(ybsdsrwVO);
HTDLglddrwResEvent resEvent = new HTDLglddrwResEvent();
resEvent.setRepCode("0");
return resEvent;
}
public static void main(String[] args) throws
TaxBaseSystemException {
HTDLglddrwReqEvent req = new HTDLglddrwReqEvent();
HTDLybsdsrwVO ybsdsrwVO = new HTDLybsdsrwVO();
ybsdsrwVO.setRw_xh("201");
ybsdsrwVO.setRw_mc("人工调度");
ybsdsrwVO.setCsl("key1==value;;key2==value;;");
ybsdsrwVO.setBlh_mc("testCall");
ybsdsrwVO.setLrry_dm("24401050209");
req.setHtdlYbsdsrwVO(ybsdsrwVO);
// req.setSessionID("24401002102");
HTDLglBLH htdlBLH = new HTDLglBLH();
HTDLglddrwResEvent res = new HTDLglddrwResEvent();
// res = (HTDLglddrwResEvent) htdlBLH.getAllDtrw(req);
res = (HTDLglddrwResEvent) htdlBLH.executeRw(req);
// LogWritter.sysDebug("dtrw" + res.getDtrwVOList().size());
// ArrayList tempList = res.getDsrwlbVOList();
// System.out.println(tempList.size());
// LogWritter.sysDebug(res.getReturnVO().getStatus());
// LogWritter.sysDebug(res.getReturnVO().getDetail());
/* System.out.println(res.getReturnVO().getProcName());
System.out.println(res.getReturnVO().getStatus());
System.out.println(res.getReturnVO().getDetail()); */
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -