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

📄 pagebuildutil.java

📁 一套完整的工商12315的源程序jsp部分在12315里,后台JAVA部分在gs12315src里,没有打包数据库.
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
        String result = "";
        StringBuffer String1 = new StringBuffer(""); //过程累加字符串变量
        String tempStr = ""; //临时串
        String style = ""; //边线样式UNIVERSAL_PAGEELEMENT_DEFINE
        String tempResultNum = "";
        ReportPageDataModel reportPageDataModel = null;
        BuildGoupColModel buildGoupColModel = new BuildGoupColModel(); //列model

        try{
            conn = Common.getConnection();
            stmt = conn.createStatement();
            stmt2 = conn.createStatement();

            Debug.println("[AddSqlResult]getAddResult------>>>>start:组逻辑输出!");

            //取得该组所有列值
            sql = "select * from "
                + TableNameUtil.UNIVERSAL_PAGEELEMENT_DEFINE
                + " where page_code='"
                + pageCode
                + "' and (  unit_code>='10000000' and unit_code<'80000000') and logic_mark='"
                + logic_mark
                + "' order by unit_code";

            Debug.println(
                "[AddSqlResult]getAddResult------>>>>setp1:取得该组所有列值>>>>sql:" +
                sql);
            rs = stmt.executeQuery(sql);

            //取得该组所有列值
            while(rs.next()){

                lineLogicSQL = PubFunc.decodeGB(rs.getString("typelogic")); //得到行逻辑
                buildGoupColModel = new BuildGoupColModel();

                buildGoupColModel.setCode("" + (++colNum));

                tempStr = PubFunc.decodeGB(rs.getString("input_value"));

                //变量替换
                for(m = 0;m < strParment.size();m++){
                    ArrayList tempArray = new ArrayList();
                    tempArray = (ArrayList) strParment.get((Object) (new
                        Integer(m)));
                    //Debug.println("tempArray:["+m+"]"+tempArray.get(0)+"  ,"+tempArray.get(1));
                    tempStr = PubFunc.replace(tempStr,
                                              ":" + tempArray.get(0) + "",
                                              tempArray.get(1) + ""); //content 变量初始化
                    lineLogicSQL = PubFunc.replace(lineLogicSQL,
                        ":" + tempArray.get(0) + "",tempArray.get(1) + ""); //lineLogicSQL变量初始化
                }

                Debug.println("setContent:" + tempStr);

                buildGoupColModel.setContent(tempStr);
                buildGoupColModel.setResult("0");
                //得到样式
                styleTemp = new ArrayList();
                styleTemp.add(PubFunc.decodeGB(rs.getString("code"))); //0
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_type"))); //1
                styleTemp.add(PubFunc.decodeGB(rs.getString("input_value"))); //2
                styleTemp.add(PubFunc.decodeGB(rs.getString("output_value"))); //3
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_style"))); //4
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_width"))); //5
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_height"))); //6
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_class"))); //7
                styleTemp.add(PubFunc.decodeGB(rs.getString("font_color"))); //8
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_position"))); //9
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_rowspan"))); //10
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_colspan"))); //11
                styleTemp.add(PubFunc.decodeGB(rs.getString("unit_rowcolendpoint"))); //12
                styleTemp.add(PubFunc.decodeGB(rs.getString("left_haveno_sign"))); //13
                styleTemp.add(PubFunc.decodeGB(rs.getString("right_haveno_sign"))); //14
                styleTemp.add(PubFunc.decodeGB(rs.getString("top_haveno_sign"))); //15
                styleTemp.add(PubFunc.decodeGB(rs.getString("bottom_haveno_sign"))); //16
                styleTemp.add(PubFunc.decodeGB(rs.getString("logic_mark"))); //17
                styleTemp.add(""); //18
                styleTemp.add(PubFunc.decodeGB(rs.getString("positionlock"))); //19
                styleTemp.add(PubFunc.decodeGB(rs.getString("typelogic"))); //20
                styleTemp.add(PubFunc.decodeGB(rs.getString("positionLeft"))); //21
                styleTemp.add(PubFunc.decodeGB(rs.getString("positiontop"))); //22
                styleTemp.add(PubFunc.decodeGB(rs.getString("data_type"))); //23
                styleTemp.add(PubFunc.decodeGB(rs.getString("data_format"))); //24
                styleTemp.add(PubFunc.decodeGB(rs.getString("font_type"))); //25
                styleTemp.add(PubFunc.decodeGB(rs.getString("font_size"))); //26
                styleTemp.add(PubFunc.decodeGB(rs.getString("font_style"))); //27
                styleTemp.add(PubFunc.decodeGB(rs.getString("edit_item"))); //28

                tempStr = PageBuildUtil.getPageStyle(styleTemp);
                styleTemp = null;

                buildGoupColModel.setStyle(tempStr);
                buildGoupColModel.setUnitStyle(PubFunc.nullToStr(rs.getString("unit_style")));
                buildGoupColModel.setType(PubFunc.nullToStr(rs.getString("unit_type")));
                buildGoupColModel.setUpload(PubFunc.nullToStr(rs.getString(
                    "edit_item")));
                buildGoupColModel.setRowColEndPoint(PubFunc.nullToStr(rs.
                    getString("unit_rowcolendpoint")));
                buildGoupColModel.setDataType(PubFunc.decodeGB(rs.getString("data_type")));
                buildGoupColModel.setDataFormat(PubFunc.decodeGB(rs.getString("data_format")));
                buildGoupColModel.setOutputValue(PubFunc.decodeGB(rs.getString("output_value")));

                Debug.println("rowcolendpoint:" +
                              PubFunc.nullToStr(rs.getString("unit_rowcolendpoint")));

                colList.add(buildGoupColModel);
            }
            rs.close();

            //异常处理
            if(lineLogicSQL.equals("")){
                outStr = ""; //返回空串
                Debug.println(
                    "[AddSqlResult]getAddResult------>>>>no group logic!");

                //初始化返回值
                tempResult.add("" + uploadrowNum);
                tempResult.add("" + uploadcolNum);
                tempResult.add(outStr);
                tempResult.add(reportList);

                return tempResult;
            }

            Debug.println(
                "[AddSqlResult]getAddResult------>>>>setp2,colList 'size:" +
                colList.size() + " lineLogicSQL:" + lineLogicSQL);

            //lineLogicSQL 行逻辑所有记录
            rs = stmt.executeQuery(lineLogicSQL);

            Debug.println("[AddSqlResult]getAddResult------>>>>uploadrowNum:" + uploadrowNum + " uploadcolNum:" + uploadcolNum);
            m = 0; //自动编号
            while(rs.next()){
                sub = new ArrayList();
                Debug.println(
                    "[AddSqlResult]getAddResult------>>>>setp2.0,fieldTemp:" +
                    fieldTemp);
                fieldTemp = PubFunc.nullToStr(rs.getString(1)); //行列交叉关键字?
                Debug.println(
                    "[AddSqlResult]getAddResult------>>>>setp2.1,fieldTemp:" +
                    fieldTemp);
                //初始化列值
                for(i = 0;i < colList.size();i++){
                    buildGoupColModel = (BuildGoupColModel) colList.get(i);
                    tempStr = buildGoupColModel.getType();
                    if("1".equals(tempStr)){ //单列输出
                        tempResultNum = buildGoupColModel.getContent();
                        if(tempResultNum == null || "".equals(tempResultNum)){
                            Debug.println("列号为空!");
                            sub.add("&nbsp;");
                        } else{
                            if(rs.getString(Integer.parseInt(tempResultNum)) == null || "".equals((rs.getString(Integer.parseInt(tempResultNum))).trim())){
                                sub.add("&nbsp;");
                            } else{
                                sub.add(PubFunc.decodeGB(rs.getString(Integer.parseInt(tempResultNum))));
                            }
                        }
                    } else
                    if("2".equals(tempStr)){ //行列交叉逻辑
                        tempStr = buildGoupColModel.getContent();
                        tempStr = PubFunc.replace(tempStr,"?",
                                                  "" + fieldTemp + "");
                        Debug.println(
                            "[AddSqlResult]getAddResult------>>>>setp3,type==2,sql转换:" +
                            tempStr);
                        resu = stmt2.executeQuery(tempStr);
                        if(resu.next()){
                            tempStr = resu.getString(1);
                            if(tempStr == null || "".equals(tempStr)){
                                tempStr = "0";
                            }
                        } else{
                            tempStr = "0";
                        }
                        sub.add(tempStr);
                        resu.close();
                    } else
                    if("3".equals(tempStr)){ //计算输出
                        sub.add("0");
                    } else
                    if("4".equals(tempStr)){ //机器编码
                        tempStr = buildGoupColModel.getContent();
                        sub.add("" + (Integer.parseInt(tempStr) + m));
                    } else
                    if("5".equals(tempStr)){ //标签输出
                        tempStr = buildGoupColModel.getContent();
                        sub.add(tempStr);
                    }

                }
                al.put((Object) (integer = new Integer(m++)),sub); //存储行
            } //while end
            rs.close();

            Debug.println(
                "[AddSqlResult]getAddResult------>>>>setp4 line size:" +
                al.size());

            //计算逻辑,得到返回值串,得到报出数据
            //如果不为替换输出,则以套用表格输出
            if(!"*".equals(outPutType)){
                String1.append(
                    "<table border=1 cellpadding=0 cellspacing=0  bordercolorlight=#000000 bordercolordark=#FFFFFF style=\"border-style: solid; border-color: #ffffff\">");
            }
            for(m = 0;m < al.size();m++){
                //换行
                uploadcolNum = 0;
                uploadrowNum += 1;
                log = 0;

                sub = (ArrayList) al.get((Object) (new Integer(m))); //每一行
                //初始化列值
                String1.append("<tr>");
                for(i = 0;i < colList.size();i++){
                    buildGoupColModel = (BuildGoupColModel) colList.get(i);
                    style = buildGoupColModel.getStyle();
                    tempStr = buildGoupColModel.getType();
                    if("3".equals(tempStr)){ //计算输出
                        //1+2+2+2+5
                        tempStr = buildGoupColModel.getContent();
                        StringTokenizer subTokenizer = new StringTokenizer(
                            tempStr,"+");
                        sum = 0;
                        while(subTokenizer.hasMoreTokens()){
                            j = Integer.parseInt((String) (subTokenizer.
                                nextToken()));
                            tempResultNum = (String) (sub.get(j));
                            if(tempResultNum == null || "".equals(tempResultNum)){
                                tempResultNum = "0";
                            }
                            Debug.println("tempResultNum:" + tempResultNum);
                            try{
                                sum += Integer.parseInt(tempResultNum);
                            } catch(Exception ex){
                                sum = 0;
                            }
                        }
                        tempStr = "" + sum;
                    } else{
                        tempStr = (String) (sub.get(i));
                    }

                    //输出格式转换
                    String tempStrResult = tempStr; //原始值
                    tempStr = dataTypeConversion(tempStr,buildGoupColModel.getDataType(),buildGoupColModel.getDataFormat());

                    //是否已经换行
                    if(log == 1){
                        log = 0;
                        uploadrowNum++;
                        uploadcolNum = 0;
                        String1.append("</tr><tr>");
                    }

                    //行结束
                    Debug.println("是否行结束:" +
                                  buildGoupColModel.getRowColEndPoint());
                    if("1".equals(buildGoupColModel.getRowColEndPoint())){
                        log = 1;
                    } else{
                        log = 0;
                    }

                    //得到上报数据
                    if(("1").equals(buildGoupColModel.getUpload())){
                        reportPageDataModel = new ReportPageDataModel();
                        if(log == 1){
                            reportPageDataModel.setRowColEndPoint("1");

                        } else{
                            reportPageDataModel.setRowColEndPoint("0");
                        }

                        reportPageDataModel.setCode("0");
                        reportPageDataModel.setPageCode(pageCode);
                        reportPageDataModel.setContent(tempStr);
                        reportPageDataModel.setTableRow("" + uploadrowNum);
                        reportPageDataModel.setTableCol("" + uploadcolNum);

                        reportList.add(reportPageDataModel);
                        Debug.println("得到上报数据: uploadrowNum:" + uploadrowNum +
                                      " uploadcolNum:" + uploadcolNum +
                                      "  reportList'size:" + reportList.size());
                        //输出串
                        String1.append("<td " + style + "><div id=x" + uploadcolNum + "y" + uploadrowNum + "$>" + tempStr + "</div></td>");

                        uploadcolNum++; //换下一列
                    } else{

                        //输出串
                        //判断输出格式
                        //text
                        if("1".equals(buildGoupColModel.getUnitStyle())){
                            String1.append("<td " + style + " " + buildGoupColModel.getOutputValue() + " >" + tempStr + "</td>");
                        } else{
                            if(tempStr == null || "&nbsp;".equals(tempStr)){
                                tempStr = "";
                            }
                            //input text
                            if("2".equals(buildGoupColModel.getUnitStyle())){
                                String1.append("<td " + style + ">&nbsp;<input type=text style=\"WIDTH: 90%;\" value='" + (tempStr).trim() + "' " +
                                               buildGoupColModel.getOutputValue() + "></td>");
                            } else

                            //查询条件输入页面的下拉框输出
                            if("3".equals(buildGoupColModel.getUnitStyle())){

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -