?? jkyjckyjxxblh.java
字號:
//構造一行的所有預警事件記錄列表(List版本)
// found_flag = false; //reset
while (p_yjsj < jkyjsjList.size()) {
jkyjsjDAO = (JKYJjkyjsjDAO) jkyjsjList.get(p_yjsj);
// LogWritter.sysDebug("p_yjsj=" + p_yjsj + ",jkyjsjDAO.nsrnbm=" + jkyjsjDAO.getNsrnbm() + ",jl_xh=" + jkyjsjDAO.getJl_xh()); //for debug
if (jkyjsjDAO.getNsrnbm().equals(nsrnbm)) {
zb_dm = jkyjsjDAO.getZb_dm();
colIdx = findColIdxByZbdm(zb_dm, headerList);
if (colIdx < 0) { //找不到相應的指標列
p_yjsj++; //指針移到下一個記錄
continue;
}
yjjlVO = (JKYJyjjlVO) yjzbData.get(colIdx); //取出要修改的記錄
yjlbVO.setHasYjjl(true); //標記為有預警記錄
//僅存放第一條記錄的記錄序號、發生時間、任務編號、調用任務管理頁面名
if (yjjlVO.getJl_xh() == null) {
yjjlVO.setJl_xh(jkyjsjDAO.getJl_xh());
yjjlVO.setFs_sj(jkyjsjDAO.getFs_sj());
yjjlVO.setRw_xh(jkyjsjDAO.getRw_xh());
yjjlVO.setOp_jsp(jkyjsjDAO.getOp_jsp());
}
yjjlVO.setZb_dm(zb_dm);
if (yjjlVO.getZtbh() == null) {
yjjlVO.setZtbh(jkyjsjDAO.getZtbh());
} else {
yjjlVO.setZtbh(yjjlVO.getZtbh() + "\n" +
jkyjsjDAO.getZtbh());
}
if (yjjlVO.getZt_mc() == null) {
yjjlVO.setZt_mc(jkyjsjDAO.getZt_mc());
} else {
yjjlVO.setZt_mc(yjjlVO.getZt_mc() + "\n" +
jkyjsjDAO.getZt_mc());
}
//在預警和提示同時存在時,按預警來存放狀態類型、提示顏色、提示圖標名稱
if (yjjlVO.getZt_lx() == null ||
yjjlVO.getZt_lx().equals("02")) {
yjjlVO.setZt_lx(jkyjsjDAO.getZt_lx());
yjjlVO.setTsys(jkyjsjDAO.getTsys());
yjjlVO.setTstb_mc(jkyjsjDAO.getTstb_mc());
}
if (yjjlVO.getZtms() == null) {
yjjlVO.setZtms(jkyjsjDAO.getZtms());
} else {
yjjlVO.setZtms(yjjlVO.getZtms() + "\n" +
jkyjsjDAO.getZtms());
}
if (yjjlVO.getXxms() == null) {
yjjlVO.setXxms(jkyjsjDAO.getXxms());
} else {
yjjlVO.setXxms(yjjlVO.getXxms() + "\n" +
jkyjsjDAO.getXxms());
}
//轉換觸發源代碼為名稱,暫時為硬編碼
if (jkyjsjDAO.getCfy_dm().equals("01")) {
cfy_mc = "代理程序生成";
} else if (jkyjsjDAO.getCfy_dm().equals("02")) {
cfy_mc = "納稅評估生成";
} else if (jkyjsjDAO.getCfy_dm().equals("03")) {
cfy_mc = "管理員平臺生成";
} else {
cfy_mc = "其他";
}
if (yjjlVO.getCfy_mc() == null) {
yjjlVO.setCfy_mc(cfy_mc);
} else {
yjjlVO.setCfy_mc(yjjlVO.getCfy_mc() + "\n" + cfy_mc);
}
if (yjjlVO.getTs_bj() == null) {
yjjlVO.setTs_bj(jkyjsjDAO.getTs_bj());
} else {
yjjlVO.setTs_bj(yjjlVO.getTs_bj() + "; " +
jkyjsjDAO.getTs_bj());
}
yjzbData.set(colIdx, yjjlVO); //把修改后的數據存回去
// found_flag = true; //已找到監控預警數據
} else {
// if (found_flag) break; //已找到需填入的監控預警數據,跳出while循環
break;
}
p_yjsj++; //指針移到下一個記錄
}
yjlbVO.setYjzbData(yjzbData);
//預警指標和異常記錄分別存放版本,適用于一個指標可對應多條預警記錄且預警記錄不合并的做法,暫時屏蔽(zyh modify at 2005.8.15)
// //構造一行的預警指標數據
// yjzbData = new HashMap();
// ////初始化所有指標值為"0"
// for (int j = 0; j < zbxxList.size(); j++) {
// yjzbData.put(new StringBuffer("col").append(j + 1).toString(),
// "0");
// }
// ////把有數據的指標填入相應的列
// while (p_zbsj < zbsjList.size()) {
// zbsjDAO = (ZBGLzbsjDAO) zbsjList.get(p_zbsj);
// if (zbsjDAO.getNsrnbm().equals(nsrnbm)) {
// zb_dm = zbsjDAO.getZb_dm();
// colName = findColNameByZbdm(zb_dm, headerMap);
// if (colName != null) {
// yjzbData.put(colName, zbsjDAO.getZbz());
// }
// } else {
// break; //跳出while循環
// }
// p_zbsj++; //指針移到下一個記錄
// }
// yjlbVO.setYjzbData(yjzbData);
// //構造一行的所有預警事件記錄列表(List版本)
// yjjlList = new ArrayList();
// //LogWritter.sysDebug("start building 預警記錄列表 " + (i + 1) + "......"); //for debug
// while (p_yjsj < jkyjsjList.size()) {
// jkyjsjDAO = (JKYJjkyjsjDAO) jkyjsjList.get(p_yjsj);
// //LogWritter.sysDebug("DAO.nsrnbm=" + jkyjsjDAO.getNsrnbm() + ", nsrnbm=" + nsrnbm);
// if (jkyjsjDAO.getNsrnbm().equals(nsrnbm)) {
// //LogWritter.sysDebug("go into if statement now.....");
// yjjlVO = new JKYJyjjlVO();
// yjjlVO.setJl_xh(jkyjsjDAO.getJl_xh());
// yjjlVO.setZb_dm(jkyjsjDAO.getZb_dm());
// yjjlVO.setColName(findColNameByZbdm(yjjlVO.getZb_dm(),
// headerMap));
// yjjlVO.setZtbh(jkyjsjDAO.getZtbh());
// yjjlVO.setZt_mc(jkyjsjDAO.getZt_mc());
// yjjlVO.setZt_lx(jkyjsjDAO.getZt_lx());
// yjjlVO.setZtms(jkyjsjDAO.getZtms());
// yjjlVO.setTsys(jkyjsjDAO.getTsys());
// yjjlVO.setTstb_mc(jkyjsjDAO.getTstb_mc());
// yjjlVO.setXxms(jkyjsjDAO.getXxms());
// yjjlVO.setFs_sj(jkyjsjDAO.getFs_sj());
// //轉換觸發源代碼為名稱,暫時為硬編碼
// if (jkyjsjDAO.getCfy_dm().equals("01")) {
// yjjlVO.setCfy_mc("代理程序生成");
// } else if (jkyjsjDAO.getCfy_dm().equals("02")) {
// yjjlVO.setCfy_mc("納稅評估生成");
// }
// yjjlVO.setTs_bj(jkyjsjDAO.getTs_bj());
// yjjlVO.setRw_xh(jkyjsjDAO.getRw_xh());
//
// yjjlList.add(yjjlVO);
// } else {
// break; //跳出while循環
// }
// p_yjsj++; //指針移到下一個記錄
// }
//// LogWritter.sysDebug("yjjlList.size=" + yjjlList.size() +
//// ", p_yjsj=" + p_yjsj + ",jkyjsjList.size=" +
//// jkyjsjList.size()); //for debug
// yjlbVO.setYjjlList(yjjlList);
//加一個納稅人的信息
yjlbList.add(yjlbVO);
}
//使用構造器將構造好的數據封裝到ResponseEvent里
JKYJckyjxxResEvent res = new JKYJckyjxxResEvent();
res.setYjlbList(yjlbList);
res.setYjlbHeader(headerList);
res.setRepCode("0");
return res;
}
private ResponseEvent getYjlbByQuers(JKYJckyjxxReqEvent req) {
// String sessionID = req.getSessionID(); //獲取用戶ID
// String channelType = req.getChannelType(); //獲取請求來源
ArrayList jkyjsjList = null;
ArrayList zbsjList = null;
ArrayList zbxxList = null;
ArrayList tsxxList = null;
//LogWritter.sysDebug("test get userID=" + (String)WebUtil.eval("#{user.userID}")); //just for test
BigDecimal fl_xh = req.getFl_xh();
String st_dm = req.getSt_dm();
//與DAO交互,得到監控預警事件的List和指標數據的List
JKYJjkyjsjDAO jkyjsjDAO = new JKYJjkyjsjDAO();
ArrayList nsrflxxList = jkyjsjDAO.findAllNsrByFlxhQuery(fl_xh,req.getCxtj()); //找到某個分類下的納稅人列表
String nsrfl="";
for(int i=0;i<nsrflxxList.size();i++){
if(i==0){
nsrfl=((FLGLnsrflxxVO) nsrflxxList.get(i)).getNsrnbm().toString();
}
else{
nsrfl=nsrfl+","+((FLGLnsrflxxVO) nsrflxxList.get(i)).getNsrnbm().toString();
}
}
if(nsrfl==null || "".equals(nsrfl)){
nsrfl="0";
}
jkyjsjList = jkyjsjDAO.findAllByFlxhStdmQuery(fl_xh, st_dm,nsrfl);
ZBGLzbsjDAO zbsjDAO = new ZBGLzbsjDAO();
zbsjList = zbsjDAO.findAllByFlxhStdmQuery(fl_xh, st_dm,nsrfl);
zbxxList = zbsjDAO.findZbxxByStdm(st_dm);
tsxxList = zbsjDAO.findTsxxByFlxhStdmQuery(fl_xh, st_dm,nsrfl);
JKYJtsxxVO tsxxVO = null;
//轉換監控臺預警指標列頭
ArrayList headerList = new ArrayList();
JKYJzbxxVO zbxxVO = null;
for (int i = 0; i < zbxxList.size(); i++) {
zbxxVO = (JKYJzbxxVO) zbxxList.get(i);
headerList.add(zbxxVO);
}
//轉換監控臺預警指標數據列表
//必須之前已按照納稅人內部碼、指標代碼等對預警事件、指標數據等進行了排序
ArrayList yjlbList = new ArrayList(); //按納稅人來排列的預警列表數據
FLGLnsrflxxVO nsrflxxVO = null;
JKYJyjlbVO yjlbVO = null; //預警列表VO
JKYJyjjlVO yjjlVO = null; //預警記錄VO
ArrayList yjzbData = null; //預警指標數據Map
int p_zbsj = 0; //用于遍歷預警指標數據的指針
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -