⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sjwhcjsjblh.java

📁 以前做的一个j2ee的项目
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
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 + -