archive_query_conditionvalue.jsp
上传用户:jhtang88
上传日期:2014-01-27
资源大小:28528k
文件大小:11k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html; charset=utf-8"%>
  2. <%@ page import = "java.net.URLEncoder"%>
  3. <%@ page import = "java.util.*"%>
  4. <%@ page import = "cn.js.fan.util.*"%>
  5. <%@ page import = "cn.js.fan.web.*"%>
  6. <%@ page import = "com.redmoon.oa.archive.*"%>
  7. <%@ page import = "com.redmoon.oa.BasicDataMgr"%>
  8. <html xmlns="http://www.w3.org/1999/xhtml">
  9. <head>
  10. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  11. <title>用户档案查询</title>
  12. <%@ include file="../inc/nocache.jsp"%>
  13. <link href="../common.css" rel="stylesheet" type="text/css">
  14. <script language="javascript" type="text/javascript">
  15. function selDate(name,condition){ 
  16.    if(name.all.item(condition).value == "1"){
  17.       name.all.item("SEGMENT_DATE_TD").style.display = "none";
  18.       name.all.item("POINT_DATE_TD").style.display = "";
  19.   name.all.item("VAGUE_SEGMENT_YEAR_TD").style.display = "none";
  20.   name.all.item("VAGUE_POINT_YEAR_TD").style.display = "none";  
  21.    }else{
  22.       if(name.all.item(condition).value == "2"){
  23.   name.all.item("SEGMENT_DATE_TD").style.display = "none";
  24.   name.all.item("POINT_DATE_TD").style.display = "none";
  25.   name.all.item("VAGUE_SEGMENT_YEAR_TD").style.display = "";
  26.   name.all.item("VAGUE_POINT_YEAR_TD").style.display = "none";
  27.   }else{
  28.   if(name.all.item(condition).value == "3"){
  29.   name.all.item("SEGMENT_DATE_TD").style.display = "none";
  30.   name.all.item("POINT_DATE_TD").style.display = "none";
  31.   name.all.item("VAGUE_SEGMENT_YEAR_TD").style.display = "none";
  32.   name.all.item("VAGUE_POINT_YEAR_TD").style.display = "";
  33.   }else{
  34.   name.all.item("SEGMENT_DATE_TD").style.display = "";
  35.   name.all.item("POINT_DATE_TD").style.display = "none";
  36.   name.all.item("VAGUE_SEGMENT_YEAR_TD").style.display = "none";
  37.   name.all.item("VAGUE_POINT_YEAR_TD").style.display = "none";
  38.   }
  39.   }
  40.    }
  41. }
  42. function addORConditionSel(btnObj,name){ 
  43.     var text = "&nbsp;或者&nbsp;<select name='" + name + "'>" + maintable.all.item(name + "_OPTION").value + "</select>";
  44. btnObj.insertAdjacentHTML("BeforeBegin", text);
  45. }
  46. function findObj(theObj, theDoc)
  47. {
  48.   var p, i, foundObj;
  49.   
  50.   if(!theDoc) theDoc = document;
  51.   if( (p = theObj.indexOf("?")) > 0 && parent.frames.length)
  52.   {
  53.     theDoc = parent.frames[theObj.substring(p+1)].document;
  54.     theObj = theObj.substring(0,p);
  55.   }
  56.   if(!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj];
  57.   for (i=0; !foundObj && i < theDoc.forms.length; i++) 
  58.     foundObj = theDoc.forms[i][theObj];
  59.   for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++) 
  60.     foundObj = findObj(theObj,theDoc.layers[i].document);
  61.   if(!foundObj && document.getElementById) foundObj = document.getElementById(theObj);
  62.   
  63.   return foundObj;
  64. }
  65. var GetDate=""; 
  66. function SelectDate(ObjName,FormatDate){
  67. var PostAtt = new Array;
  68. PostAtt[0]= FormatDate;
  69. PostAtt[1]= findObj(ObjName);
  70. GetDate = showModalDialog("../util/calendar/calendar.htm", PostAtt ,"dialogWidth:286px;dialogHeight:221px;status:no;help:no;");
  71. }
  72. function SetDate()
  73. findObj(ObjName).value = GetDate; 
  74. }
  75. </script>
  76. </head>
  77. <body>
  78. <jsp:useBean id="privilege" scope="page" class="com.redmoon.oa.pvg.Privilege"/>
  79. <%
  80. if (!privilege.isUserPrivValid(request, "archive.query")) {
  81. out.print(StrUtil.Alert_Back(SkinUtil.LoadString(request, "pvg_invalid")));
  82. return;
  83. }
  84. %>
  85.   <table width="95%" border="0">
  86.   <form name="form1" method="post" action="archive_query_ordercode.jsp">
  87.     <tr>
  88.       <td>
  89. <%
  90. String deptCodeStr = ParamUtil.get(request,"deptCodeStr");
  91. if(deptCodeStr.equals("")){
  92.    out.print(StrUtil.Alert_Back("请选择查询部门!"));
  93.    return;
  94. }
  95. String tableCodeStr = ParamUtil.get(request,"tableCodeStr");
  96.     if(tableCodeStr.equals("")){
  97.    out.print(StrUtil.Alert_Back("请选择查询范围!"));
  98.    return;
  99. }
  100. String tableFullCodeStr = ParamUtil.get(request,"tableFullCodeStr");
  101. String showFieldCodeStr = ParamUtil.get(request,"showFieldCodeStr");
  102. String[] fieldFullCodeArr = ParamUtil.getParameters(request,"fieldFullCode");
  103.     if(fieldFullCodeArr == null){
  104.    out.print(StrUtil.Alert_Back("请选择查询条件!"));
  105.    return;
  106. }
  107. String[] FieldCodeArr = null;
  108. String options = "",conditionFieldCodeStr = "",sql = "",fieldCode = "",tableShortCode = "";   
  109. //获得条件字段
  110. int i = 0 ;
  111. while(i < fieldFullCodeArr.length){
  112. conditionFieldCodeStr += fieldFullCodeArr[i];
  113. if(i < fieldFullCodeArr.length - 1){
  114.    conditionFieldCodeStr += ",";
  115. }
  116. i++;
  117. }
  118. %>
  119.       <table class="tableframe" cellSpacing="0" cellPadding="2" width="95%" align="center" border="0" bgcolor="#FFFFFF" id="maintable">
  120.         <tbody>
  121.           <tr>
  122.             <td colspan="3" class="right-title">&nbsp;设置查询条件</td>
  123.           </tr>
  124. <%   
  125. int j = 0;
  126. BasicDataMgr bdm = new BasicDataMgr("archive");
  127. TableFieldInfoDb tfid = new TableFieldInfoDb(); 
  128. while(j < fieldFullCodeArr.length){
  129.    FieldCodeArr = fieldFullCodeArr[j].split("\."); 
  130.    tableShortCode = FieldCodeArr[0];
  131.    fieldCode = FieldCodeArr[1]; 
  132.    sql = ArchiveSQLBuilder.getArchiveTableField(tableShortCode,fieldCode);       
  133.    Vector vt = tfid.list(sql);
  134.    Iterator ir = null;
  135.    ir = vt.iterator();
  136.    if (ir!=null && ir.hasNext()) {
  137.    tfid = (TableFieldInfoDb)ir.next();
  138.            
  139.            //处理文本字段
  140.            if(Integer.parseInt(tfid.getFieldType()) == tfid.INPUT){
  141. %>
  142.           <tr>
  143.             <td width="16%" noWrap><%=tfid.getFieldName()%>:</td>         
  144. <td width="84%" noWrap>
  145.               <table width="100%">
  146.     <tr>
  147.   <td>
  148. <select name="<%=tableShortCode%>_<%=fieldCode%>_SIGN">
  149.   <option value="=">等于</option>
  150.   <option value="like" selected>包含</option>
  151. </select>
  152. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="<%=tableShortCode%>_<%=fieldCode%>" size="20"/>
  153.   </td>
  154.  </tr>
  155.    </table>
  156.  </td>
  157.           </tr>
  158. <%    
  159.    }
  160.    
  161.    //处理列表字段
  162.    if(Integer.parseInt(tfid.getFieldType()) == tfid.SELECTED){
  163.   options = bdm.getOptionsStr(fieldCode);
  164. %>
  165.           <tr>
  166.             <td width="16%" noWrap><%=tfid.getFieldName()%>:</td>         
  167. <td width="84%" noWrap>
  168.               <table width="100%">
  169.    <tr>
  170.     <td>   
  171.   <input type="hidden" value="<%=options%>" name="<%=tableShortCode%>_<%=fieldCode%>_OPTION">
  172.   <select name="<%=tableShortCode%>_<%=fieldCode%>">
  173.  <%=options%>
  174.   </select>   
  175.   <input type="button" onClick='addORConditionSel(this,"<%=tableShortCode%>_<%=fieldCode%>")' value="添加或条件">
  176.     </td>
  177.    </tr>
  178.   </table>
  179.  </td>
  180.           </tr>
  181. <%    
  182.    }    
  183.    //处理日期字段
  184.    if(Integer.parseInt(tfid.getFieldType()) == tfid.SELEDATE){
  185. %>
  186.           <tr>
  187.             <td width="16%" noWrap><%=tfid.getFieldName()%>:</td>         
  188. <td width="84%" noWrap>
  189.  <table id="<%=tableShortCode%>_<%=fieldCode%>_TABLE" width="100%">
  190.    <tr>
  191. <td width="14%">
  192. <select name="<%=tableShortCode%>_<%=fieldCode%>_COND" onChange="selDate(<%=tableShortCode%>_<%=fieldCode%>_TABLE,'<%=tableShortCode%>_<%=fieldCode%>_COND')">
  193. <option value="0" selected>精确段时间</option>
  194. <option value="1">精确点时间</option>
  195. <option value="2">模糊段时间</option>
  196. <option value="3">模糊点时间</option>
  197. </select>
  198. </td>
  199. <td width="70%" align="left" id="SEGMENT_DATE_TD">
  200. 从 
  201.   <input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_FROMDATE" readonly><img style="CURSOR: hand" onClick="SelectDate('<%=tableShortCode%>_<%=fieldCode%>_FROMDATE', 'yyyy-MM-dd')" src="../images/form/calendar.gif" align="absMiddle" border="0" width="26" height="26">
  202. 至 <input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_TODATE" readonly><img style="CURSOR: hand" onClick="SelectDate('<%=tableShortCode%>_<%=fieldCode%>_TODATE', 'yyyy-MM-dd')" src="../images/form/calendar.gif" align="absMiddle" border="0" width="26" height="26">
  203. </td>
  204. <td width="70%" align="left" id="POINT_DATE_TD" style="display:none">
  205. <select name="<%=tableShortCode%>_<%=fieldCode%>_SIGN">
  206. <option value="=" selected>等于</option>
  207. <option value=">">大于</option>
  208. <option value="<">小于</option>
  209. <option value="<=">小于等于</option>
  210. <option value=">=">大于等于</option>
  211. </select>
  212. &nbsp;&nbsp;<input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_DATE" readonly><img style="CURSOR: hand" onClick="SelectDate('<%=tableShortCode%>_<%=fieldCode%>', 'yyyy-MM-dd')" src="../images/form/calendar.gif" align="absMiddle" border="0" width="26" height="26">
  213. </td>
  214.     <td width="70%" align="left" id="VAGUE_SEGMENT_YEAR_TD" style="display:none">截止至
  215.       <input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_REFERENCE_SEGMENT_YEAR" readonly><img style="CURSOR: hand" onClick="SelectDate('<%=tableShortCode%>_<%=fieldCode%>_REFERENCE_SEGMENT_YEAR', 'yyyy')" src="../images/form/calendar.gif" align="absMiddle" border="0" width="26" height="26">
  216. 从 <input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_FROMYEAR">
  217. 至 <input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_TOYEAR">(周岁或年)
  218. </td>
  219. <td width="70%" align="left" id="VAGUE_POINT_YEAR_TD" style="display:none">截止至
  220.   <input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_REFERENCE_POINT_YEAR" readonly><img style="CURSOR: hand" onClick="SelectDate('<%=tableShortCode%>_<%=fieldCode%>_REFERENCE_POINT_YEAR', 'yyyy')" src="../images/form/calendar.gif" align="absMiddle" border="0" width="26" height="26">
  221.   <select name="<%=tableShortCode%>_<%=fieldCode%>_VAGUE_SIGN">
  222.     <option value="=" selected>等于</option>
  223.     <option value=">">大于</option>
  224.     <option value="<">小于</option>
  225.     <option value="<=">小于等于</option>
  226.     <option value=">=">大于等于</option>
  227.     </select>
  228.   &nbsp;&nbsp;<input size="10" name="<%=tableShortCode%>_<%=fieldCode%>_YEAR">
  229.   (周岁或年)   </td>
  230.    </tr>
  231.  </table>
  232. </td>
  233.           </tr>   
  234. <%    
  235.    }
  236.        }
  237.    j++;
  238. }   
  239. %>
  240.         </tbody>
  241.       </table>
  242.       </td>
  243.     </tr>  
  244.     <tr>
  245.       <td align="center"><input value="下一步 &#8594; 选择查询结果中用来排序的字段" type="submit">
  246.         <input type="hidden" name="tableFullCodeStr" value="<%=tableFullCodeStr%>">
  247.         <input type="hidden" name="tableCodeStr" value="<%=tableCodeStr%>"> 
  248.         <input type="hidden" name="showFieldCodeStr" value="<%=showFieldCodeStr%>"> 
  249. <input type="hidden" name="conditionFieldCodeStr" value="<%=conditionFieldCodeStr%>"> 
  250. <input type="hidden" name="deptCodeStr" value="<%=deptCodeStr%>">
  251. &nbsp;&nbsp;    </td>
  252.     </tr>
  253. </form>
  254.   </table>
  255. </body>
  256. </html>