📄 sjwhcjsjblh.java
字号:
package gov.gdlt.ssgly.taxcore.taxblh.sjwh;
import gov.gdlt.ssgly.taxcore.comm.blh.BaseBizLogicHandler;
import gov.gdlt.ssgly.taxcore.comm.event.RequestEvent;
import gov.gdlt.ssgly.taxcore.comm.event.ResponseEvent;
import gov.gdlt.ssgly.taxcore.comm.exception.TaxBaseBizException;
import gov.gdlt.ssgly.taxcore.comm.exception.TaxBaseSystemException;
import gov.gdlt.ssgly.taxcore.taxevent.sjwh.SJWHcjsjReqEvent;
import gov.gdlt.ssgly.taxcore.taxevent.sjwh.SJWHcjsjResEvent;
import gov.gdlt.ssgly.taxcore.taxevent.sjwh.SJWHcjsjVO;
import gov.gdlt.ssgly.taxcore.taxevent.sjwh.SJWHcjzbVO;
import gov.gdlt.ssgly.taxcore.taxevent.sjwh.SJWHzbzVO;
import gov.gdlt.ssgly.taxcore.taxdao.sjwh.SJWHcjsjDAO;
import gov.gdlt.ssgly.taxcore.taxdao.xxsx.XXSXcxnsrDAO;
import gov.gdlt.ssgly.taxcore.taxevent.flgl.FLGLnsrflxxVO;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import java.util.HashMap;
import java.sql.SQLException;
import gov.gdlt.ssgly.taxcore.comm.log.LogWritter;
import gov.gdlt.ssgly.taxcore.taxevent.xxsx.XXSXnsrxxVO;
import gov.gdlt.ssgly.taxcore.taxdao.zbgl.ZBGLzbsjDAO;
import gov.gdlt.ssgly.taxcore.taxevent.jkyj.JKYJtsxxVO;
/**
* <p>Title: 指标维护BLH</p>
*
* <p>Description: 对指标数据进行查询、增加、更新操作的逻辑类</p>
*
* <p>Copyright: Copyright (c) 2005 广东省地方税务局,广州市地方税务局</p>
*
* <p>Company: 广州地税</p>
*
* @author czz
*
* @version 1.0
*/
public class SJWHcjsjBLH extends BaseBizLogicHandler {
public SJWHcjsjBLH() {
}
/**
*
* @param req RequestEvent
* @throws TaxBaseBizException
* @throws Exception
* @throws TaxBaseSystemException
* @return ResponseEvent
* @todo Implement this gov.gdlt.taxcore.comm.blh.BaseBizLogicHandler
* method
*/
protected ResponseEvent validateData(RequestEvent req) throws
Exception {
return null;
}
protected ResponseEvent performTask(RequestEvent req) throws
TaxBaseBizException, TaxBaseSystemException {
String dealMethod = req.getDealMethod(); //业务处理标志
ResponseEvent resEvn = new ResponseEvent(); //创建ResponseEvent对象resEvn
//强制造型转换
SJWHcjsjReqEvent reqEvent = (SJWHcjsjReqEvent) req;
try {
if ("getLastCjsj".equals(dealMethod)) {
resEvn = this.getLastCjsj(reqEvent);
} else
if ("insertCjsjList".equals(dealMethod)) {
resEvn = this.insertCjsjList(reqEvent);
} else
if ("getCjzb".equals(dealMethod)) {
resEvn = this.getCjzb(reqEvent);
} else
if ("insertOne".equals(dealMethod)) {
resEvn = this.insertOne(reqEvent);
} else
if ("getAllLastCjsj".equals(dealMethod)) {
resEvn = this.getAllLastCjsj(reqEvent);
} else
if ("getNsrxx".equals(dealMethod)) {
resEvn = this.getNsrxx(reqEvent);
} else if ("forceUpdate".equals(dealMethod)) {
resEvn = this.forceUpdate(reqEvent);
} else if ("getAllNsrxx".equals(dealMethod)) {
resEvn = this.getAllNsrxx(reqEvent);
} else if ("getAllZbsj".equals(dealMethod)) {
resEvn = this.getAllZbsj(reqEvent);
} else if ("getTips".equals(dealMethod)) {
// resEvn = this.getTips(reqEvent);
}
} catch (TaxBaseBizException e) {
throw new TaxBaseBizException(e.getMessage());
}
return resEvn;
}
/**
* 插入多条指标数据到数据库,对原来有值的进行更新操作。
* @throws TaxBaseBizException
* @param req SJWHcjsjReqEvent req中的参数包含采集数据vo列表
* @return ResponseEvent 返回插入是否成功标志
*/
private ResponseEvent insertCjsjList(SJWHcjsjReqEvent req) throws
TaxBaseBizException {
SJWHcjsjDAO cjsjdao = new SJWHcjsjDAO();
SJWHcjsjResEvent resEvent = new SJWHcjsjResEvent();
List cjsjList = req.getCjsjList();
List tempList = new ArrayList();
boolean flag = false;
int num = 0;
try {
for (int count = 0; count < cjsjList.size(); count++) {
SJWHcjsjVO cjsj = (SJWHcjsjVO) cjsjList.get(count);
cjsjdao.setLrry_dm(cjsj.getLrry_dm());
cjsjdao.setNsrnbm(cjsj.getNsrnbm());
cjsjdao.setSjly(cjsj.getSjly());
cjsjdao.setZb_dm(cjsj.getZb_dm());
BigDecimal zbsj_xh = cjsj.getZbsj_xh();
cjsjdao.setZbz(cjsj.getZbz());
cjsjdao.setHh(cjsj.getHh());
if (cjsj.getZbsj_xh() == null) {
flag = cjsjdao.saveCjsj();
num++;
} else {
tempList = cjsjdao.existCjsj(cjsj); //判断是否和原值相同
if (tempList.size() == 0) { //对和原值不相同的指标进行更新
cjsjdao.setZbsj_xh(zbsj_xh);
flag = cjsjdao.updateZbz(); //直接更新指标值
num++;
} else {
flag = true;
}
}
if (flag) {
resEvent.setFlag(1);
resEvent.setRepCode("0");
} else {
resEvent.setFlag(0);
String nums = new Integer(num).toString();
resEvent.setMsg(nums);
resEvent.setRepCode("YCSJWH01001");
}
}
} catch (SQLException e) {
resEvent.setFlag(0);
resEvent.setRepCode("-1");
throw new TaxBaseBizException("YCSJWH01001:插入指标数据异常!");
}
String nums = new Integer(num).toString();
resEvent.setMsg(nums);
return resEvent;
}
/**
* 读取指标的历史记录
* @param dao SJWHcjsjDAO
* @param cjsjvo SJWHcjsjVO
* @param zlbMap HashMap
* @return String
* @throws TaxBaseBizException
*/
private String getHistoryRecords(SJWHcjsjDAO dao, SJWHcjsjVO cjsjvo,
HashMap zlbMap) throws TaxBaseBizException {
StringBuffer historyRecords = new StringBuffer();
List historyList = new ArrayList();
List mainHistoryList = new ArrayList();
try {
historyList = dao.getHistorySj(cjsjvo);
String zb_dm_source = cjsjvo.getZb_dm().substring(5);
zb_dm_source = "FHCJ_".concat(zb_dm_source);
cjsjvo.setZb_dm(zb_dm_source);
mainHistoryList = dao.getHistorySj(cjsjvo);
int mainHisSize = mainHistoryList.size();
if (mainHisSize > 0) {
SJWHcjsjVO lastSjvo = (SJWHcjsjVO) mainHistoryList.get(
mainHisSize - 1);
historyRecords.append("<p>核心库的值:</br><br>");
packHistoryVo(lastSjvo, zlbMap);
historyRecords.append(lastSjvo.getZbz());
historyRecords.append(" , ");
historyRecords.append(lastSjvo.getLr_sj());
historyRecords.append(" , ");
historyRecords.append(lastSjvo.getLrry_dm());
historyRecords.append("</br>");
}
if (historyList.size() > 0) {
historyRecords.append("<br>管理员修改的记录:</br>");
for (int i = 0; i < historyList.size(); i++) {
SJWHcjsjVO tempvo = (SJWHcjsjVO) historyList.get(i);
packHistoryVo(tempvo, zlbMap);
historyRecords.append("<br>");
historyRecords.append(tempvo.getZbz());
historyRecords.append(" , ");
historyRecords.append(tempvo.getLr_sj());
historyRecords.append(" , ");
historyRecords.append(tempvo.getLrry_dm());
if (i < (historyList.size() - 1)) {
historyRecords.append("</br>");
}
}
}
// else {
// historyRecords.append("没有历史数据!");
// }
} catch (SQLException e) {
throw new TaxBaseBizException("YCSJWH01005:读取指标历史记录BLH异常");
}
return historyRecords.toString();
}
/**
* pack指标数据,将其转换成页面显示的形式
* @param req SJWHcjsjReqEvent
* @return ResponseEvent
* @throws TaxBaseBizException
*/
private SJWHcjsjVO packHistoryVo(SJWHcjsjVO tempvo, HashMap zlbMap) {
// if ("FLAG".equals(tempvo.getZb_lx())) {
// if ("0".equals(tempvo.getZbz())) {
// tempvo.setZbz("否");
// } else {
// tempvo.setZbz("是");
// }
// } else
// if (zlbMap.get(tempvo.getZb_dm()) != null) {
// String tempZbz = "";
// List templist = (List) zlbMap.get(tempvo.getZb_dm());
// HashMap zbzMap = new HashMap();
// for (int j = 0; j < templist.size(); j++) {
// SJWHzbzVO zbzvo = (SJWHzbzVO) templist.get(j);
// zbzMap.put(zbzvo.getDml_mc(), zbzvo.getMc()); //进行代码表和名称的转换
// }
if ("USER_SYFGFL".equals(tempvo.getZb_dm())) {
if (zlbMap.get("USER_SYFGFL") != null) {
List templist = (List) zlbMap.get("USER_SYFGFL");
HashMap zbzMap = new HashMap();
for (int j = 0; j < templist.size(); j++) {
SJWHzbzVO zbzvo = (SJWHzbzVO) templist.get(j);
zbzMap.put(zbzvo.getDml_mc(), zbzvo.getMc());
}
String[] zbzs = tempvo.getZbz().split(",");
StringBuffer tempZbzs = new StringBuffer();
for (int q = 0; q < zbzs.length; q++) {
tempZbzs.append((String) zbzMap.get(zbzs[q]));
if (q < zbzs.length - 1) {
tempZbzs.append(",");
}
}
tempvo.setZbz(tempZbzs.toString());
}
}
// else {
// tempZbz = (String) zbzMap.get(tempvo.getZbz());
// tempvo.setZbz(tempZbz);
// }
// }
return tempvo;
}
/**
* 一次查询某一纳税人的全部指标数据
* @param req SJWHcjsjReqEvent
* @return ResponseEvent
* @throws TaxBaseBizException
*/
private ResponseEvent getAllZbsj(SJWHcjsjReqEvent req) throws
TaxBaseBizException {
SJWHcjsjDAO cjsjdao = new SJWHcjsjDAO();
List zbList = new ArrayList();
List allList = new ArrayList();
List allZbsj = new ArrayList();
SJWHcjsjResEvent resEvent = new SJWHcjsjResEvent();
try {
zbList = cjsjdao.findZbList("FHCJ"); //获取所有手工采集的指标
HashMap zbMap = new HashMap();
HashMap zlbMap = new HashMap();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -