xinyb
2024-03-27 f87909326c2ff2c58da027163f64d9d8f9424b17
提交 | 用户 | age
a6a76f 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
F 2     pageEncoding="UTF-8"%>
3 <%@page import="com.yc.factory.FactoryBean"%>
4 <%@page import="com.yc.service.commons.GfieldIfc"%>
5 <%@page import="java.util.List"%>
6 <%@page import="java.util.Map"%>
7 <%@page import="com.google.gson.Gson"%>
8 <%@page import="com.google.gson.reflect.TypeToken"%>  
9 <%@page import="com.yc.service.build.top.BuildTopIfc"%>
10 <%@page import="org.springframework.web.context.WebApplicationContext"%>
11 <%@page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
12 <% 
13 //跟据功能号查询,查询DIV页面须要的字段
14 GfieldIfc gfieldIfc = (GfieldIfc)FactoryBean.getBean("GfieldImpl");
15 StringBuilder sb = new StringBuilder();
16 List<Map<String,Object>> list =null;
17 try{
18     com.yc.multiData.SpObserver.setDBtoInstance("_"+session.getAttribute(SessionKey.DATA_BASE_ID));
19 list=gfieldIfc.getAllowQueryFields(formId);
20 }catch(Exception e){
21     throw e;
22     //out.println("<script>alert('"+e.getMessage().replace("'","\\'")+"')</script>");
23 //return;
24  }finally{
25      com.yc.multiData.SpObserver.setDBtoInstance();
26  }    
27 Gson gson = new Gson();
28 String t = gson.toJson(list,new TypeToken<List<Map<String,Object>>>(){}.getType());
29 sb.append(t);
30 sb.insert(0,"{rows:");
31 sb.append("}");
32
33 StringBuilder printLink = new StringBuilder();//打印下来按钮
34 StringBuilder printButton = new StringBuilder();//打印button按钮
35 StringBuilder funcLink = new StringBuilder();//链接下拉按钮
36 StringBuilder funcLinkButton = new StringBuilder();//链接button按钮
37 String _1 = "1".intern(); //标识1
38 boolean printHasExpression = [?printHasExpression];//是否有表达式
39 //boolean linkHasExpression = [?linkHasExpression];//是否有表达式
40 if(printHasExpression){//有表达式拼装sql
41     String reportSql = "[?getReportSQL]";
42     reportSql = com.yc.utils.RequestParameterUtils.replaceRequestExpression(reportSql,request,session);
43         List<Map<String,Object>> reportInfo =null;
44       try{
45           com.yc.multiData.SpObserver.setDBtoInstance("_"+session.getAttribute(SessionKey.DATA_BASE_ID));
46         reportInfo=sqlQueryIfc.queryForList(reportSql,null);//打印链接信息
47         com.yc.service.build.top.PrintLinkSpellUtils.spellPrintLink(reportInfo,formId,formType,printLink,printButton);
48        }catch(Exception e){
49           throw new Exception(e.getMessage().replace("'","\\'")+"-打印设置表达式有错误!");
50           //out.println("<script>$.messager.alert('操作提示','"+e.getMessage().replace("'","\\'")+"-打印设置表达式有错误!','warning')</script>");
51        // return;
52          }finally{
53              com.yc.multiData.SpObserver.setDBtoInstance();
54          }
55       }
56
57 String notExpressionFuncLink="[?notExpressionFuncLink]";
58 String notExpressionFuncLinkButton="[?notExpressionFuncLinkButton]";
59 WebApplicationContext wac = WebApplicationContextUtils.getWebApplicationContext(getServletContext());
60 BuildTopIfc buildTopIfc = (BuildTopIfc)wac.getBean("BuildTopImpl");
61 Map<String,Object> map =null;
62 try{
63         com.yc.multiData.SpObserver.setDBtoInstance("_"+session.getAttribute(SessionKey.DATA_BASE_ID));
64 map=buildTopIfc.buildFuncLinkExpression(formId,formType,doccode,request,session,notExpressionFuncLink,notExpressionFuncLinkButton);
65
66 }catch(Exception e){
67     throw new Exception(e.getMessage().replace("'","\\'")+"-功能链接设置表达式有错误!");
68     // out.println("<script>alert('"+e.getMessage().replace("'","\\'")+"-功能链接设置表达式有错误!')</script>");
69     // return;
70  }finally{
71      com.yc.multiData.SpObserver.setDBtoInstance();
72  }
73
74 %>
75 <script type="text/javascript">
76 var data = <%=sb.toString() %>;
77 var reportprompts="[?reportprompts]";
78 </script>
79 <style type="text/css">
80 .queryField{width:150px;overflow: hidden;height: 20px;float: left;}
81 </style>
82 <div id="func" style="width:170px;">
83     <%if(map.size()>0){ %>
84     <%=map.get("funcLink").toString() %>
85     <%} %>
86 </div>
87 <div id="print" style="width:170px;">
88     <%if(printHasExpression){ %>
89         <%=printLink %>
90       <%}else{ %>
91         [?printLink]
92     <%}if(_1==isSuperUser){%>
93     <div id="otherFormats">其他格式</div>
94     <%} %>
95 </div>
96 [?TopBigTitle]
97 <div id="tool">
98         <%if((profile&FormOpUtil.openQuery)>0){%>
99         <a id="selectinfo" onmousedown="showselectDiv();" class="easyui-linkbutton"
100     plain="true" iconCls="icon-search">搜索</a>
101         <%}%>
102             <img height="29px" src="/images/space.jpg" align="top"/>
103         <% if((profile&FormOpUtil.saveRecord)>0){%>
104         <a href="#" class="easyui-linkbutton" plain="true" iconCls="icon-save" onclick="save();">保存</a>
105         <%}%>
106
107             <img height="29px" src="/images/space.jpg" align="top"/>
108         
109         <a id="tpselect"  class="easyui-linkbutton"  plain="true" iconCls="icon-select">选择</a>
110             <img height="29px" src="/images/space.jpg" align="top"/>
111
112             <a class="easyui-linkbutton" id="showRestmenuDiv"  onclick="showrestmenu();"  iconCls="icon-down" onblur="restmenuclose();" 
113     plain="true">更多</a>
114     
115     <a id="bhelp" href="javascript:openHelpPage('[?title]');"  class="easyui-linkbutton"  plain="true" iconCls="icon-help">帮助</a>
116     
117         <%
118         ////打印链接
119         if(printHasExpression){ %>
120             <%=printButton %>
121           <%}else{ %>
122             [?printButton]
123         <%}
124         ////////功能链接
125         %>
126             
127
128           <%if(map.get("funcLinkButton").toString().length()>0){ %>
129           <%=map.get("funcLinkButton") %>
130           <%} %>
131             <div id="tpUpDownDoc">
f87909 132                 <a href="javascript:editCustomControl();" class="easyui-linkbutton first" plain="true" title='自定义控件布局' iconCls="icon-scok">布局</a>
34fadb 133          <a href="javascript:void(0);" onclick="refresh();" class="easyui-linkbutton" plain="true" title='刷新(Alt+R)' iconCls="icon-reload">刷新</a>
a6a76f 134          </div>
F 135 </div>
136 <div id="selectDiv" class="selectDiv">
137     <div class="easyui-tabs" border="true" style="width:497px;height:365px;">
138         <div id="generalQuery" title="简单查询" fit="true" border="true" style="padding:0px;">
139         <div style="margin-left:20px;width: 450px;height: 150px;float: left;">
140                         <div>&nbsp;</div>
141                         输入查询内容:<input id="queryValue" type="text" style="border: 1px solid #cccccc;width: 300px;"/><br><br><br><br>
142                         <div align="center"><a iconCls="icon-ok" class="easyui-linkbutton" onclick="tw.simpConfirm();">确 定</a>&nbsp;
143                         <a iconCls="icon-cancel" class="easyui-linkbutton" onclick="winClose();">关 闭</a></div>
144                     </div>
145                     <div style="margin-left:20px;margin-top:10px;width:450px;font-weight: bold;color: #666666;float: left;">
146                         可查询字段:<br></br>
147                         <%
148                         Map<String,Object> temp = null;
149                         for(int i=0;i<list.size();i++){ 
150                             temp = list.get(i);
151                         %>
152                             <div class="queryField" field="<%=temp.get("fieldid") %>"><%=temp.get("fieldname") %></div>
153                         <%} %>
154                     </div>                    
155         </div>
156         <div id="advancedQuery" title="高级查询" style="padding:0px;">
157              <div id="query">
158                 <table id="tt" style="width:495px;height:290px;border-bottom: 1px solid;" border="false" singleSelect="true" >
159                     <thead>
160                         <tr>
161                             <th field="fieldid" width="80" hidde="true">ID</th>
162                             <th field="cont" width="60" formatter="contFormatter" align=center editor="{type:'combobox',options:{valueField:'contid',textField:'text',data:cont,editable:false}}" >连接符</th>
163                             <th field="fieldname" width="100" >字段名</th>
164                             <th field="opt" formatter="opttFormatter"  editor="{type:'combobox',options:{valueField:'opid',textField:'text',data:opts,editable:false,onChange:optSelect}}" width="80" >比较符</th>
165                             <th field="opt2" formatter="opt2Formatter" width="10" align="center" ></th>
166                             <th field="fieldvalue1"  width="95" editor="{type:'text'}">字段值</th>
167                             <th field="fieldvalue2" width="95" editor="{type:'text'}">字段值2</th>
168                         </tr>
169                    </thead>
170                </table>
171                <div    style="100%;margin-left:20px;">
172                        <br /><label for="more">更多选项</label><span style="position:fixed;margin-top:3px;"><input id="more" type="checkbox" /></span>
173                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a iconCls="icon-ok" class="easyui-linkbutton" onclick="tw.confirm2();">确 定</a>&nbsp;
174                     <a iconCls="icon-cancel" class="easyui-linkbutton" onclick="winClose();">关 闭</a>
175                </div>
176             </div>
177         </div>
178     </div>
179 </div>
180 <div class="restmenuDiv" id="restmenuDiv"
181     onmouseover="showrestmenu();" onmouseout="restmenuclose();">
182 <table width="520px">
183 <%if(map.get("funcLink").toString().length()>0){  %>
184 <tr >
185     <td width="80px;"><strong>功能链接:</strong></td>
186     <td>
187     <%=map.get("funcLink") %>
188     </td>
189     
190 </tr>
191 <%} %>
192
193 <% if(((profile&FormOpUtil.printButton)>0&&[?printLinkLength]>0)||printLink.length()>0||_1==isSuperUser){%>
194 <tr>
195     <td width="80px"><strong>打印格式:</strong></td>
196     <td>
197         <%if(printHasExpression){ %>
198                 <%=printLink %>
199           <%}else{ %>
200             [?printLink]
201         <%}if(_1==isSuperUser){%>
202             <div style="width:80px;display:inline;cursor:pointer" id="otherFormat">其他格式</div>
203         <%} %>
204     </td>
205 </tr>
206 <%} %>
207
208 <%
209         List<Map<String, Object>> exportList =null;
210         StringBuilder sb1 = new StringBuilder();
211 try{
212         com.yc.multiData.SpObserver.setDBtoInstance("_"+session.getAttribute(SessionKey.DATA_BASE_ID));
213         exportList=gfieldIfc.getExportInfo(formId);        
214         com.yc.service.build.top.ExportSpellUtils.spellLink(exportList, sb1,profile);
215 }catch(Exception e){
216     throw e;
217     //out.println("<script>alert('"+e.getMessage().replace("'","\\'")+"')</script>");
218  }finally{
219      com.yc.multiData.SpObserver.setDBtoInstance();
220  }        
221 if(sb1.length()>0){ %>
222 <tr>
223     <td width="80px"><strong>导入导出:<strong></td>
224     <td><%out.print(sb1.toString());%></td>
225 </tr>
226 <%} %>
227 </table>
228 </div>
229 <%_1 = null;printLink=null;printButton=null;funcLink=null;funcLinkButton=null;%>
230