bpmFormQueryEdit.jsp 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. <%--
  2. time:2012-11-27 10:37:13
  3. desc:edit the 通用表单查询
  4. --%>
  5. <%@page language="java" pageEncoding="UTF-8"%>
  6. <%@include file="/commons/include/html_doctype.html"%>
  7. <html>
  8. <head>
  9. <title>编辑 通用表单查询</title>
  10. <%@include file="/commons/include/form.jsp" %>
  11. <script type="text/javascript" src="${ctx}/js/hotent/CustomValid.js"></script>
  12. <script type="text/javascript" src="${ctx}/js/hotent/formdata.js"></script>
  13. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/Share.js"></script>
  14. <script type="text/javascript">
  15. $(function() {
  16. var options={};
  17. if(showResponse){
  18. options.success=showResponse;
  19. }
  20. var frm=$('#bpmFormQueryForm').form();
  21. $("a.save").click(function() {
  22. var alias=$("#alias").val();
  23. if(alias==""){
  24. $.ligerDialog.warn("别名不能为空");
  25. }else if(/.*[\u4e00-\u9fa5]+.*$/.test(alias)){
  26. $.ligerDialog.warn("别名不能为中文");
  27. }else{
  28. frm.setData();
  29. frm.ajaxForm(options);
  30. if(frm.valid()){
  31. form.submit();
  32. }
  33. }
  34. });
  35. $("#btnSearch").click(searchObjectList);
  36. });
  37. function searchObjectList(){
  38. var selList=$("#objname");
  39. var dsName=$("#dataSource").val();
  40. var objectname=$("#objectname").val();
  41. var istable=$("#istable").val();
  42. var url=__ctx +"/platform/form/bpmFormDialog/getByDsObjectName.ht";
  43. $.ligerDialog.waitting('正在查询,请等待...');
  44. $.post(url, { dsName:dsName, objectName: objectname,istable:istable },function(data) {
  45. $.ligerDialog.closeWaitting();
  46. selList.empty();
  47. var success=data.success;
  48. if(success=='false'){
  49. $.ligerDialog.error("出错了!");
  50. return;
  51. }
  52. //表的处理
  53. if(istable=="1"){
  54. var tables=data.tables;
  55. for(key in tables ){
  56. selList.append("<option title='"+tables[key]+"' value='"+ key+"'>"+ key +"("+tables[key] +")" +"</option>" );
  57. }
  58. }
  59. //视图的处理
  60. else{
  61. var aryView=data.views;
  62. for(var i=0;i<aryView.length;i++){
  63. var v=aryView[i];
  64. selList.append("<option value='"+ v+"'>"+v+"</option>" );
  65. }
  66. }
  67. });
  68. }
  69. function selsize(){
  70. var isneedPage=$("input:radio[name='needpage']:checked").val();
  71. if(isneedPage>0){
  72. $("#spanPageSize").show();
  73. }
  74. else{
  75. $("#spanPageSize").hide();
  76. }
  77. }
  78. function showResponse(responseText) {
  79. var obj = new com.hotent.form.ResultMessage(responseText);
  80. if (obj.isSuccess()) {
  81. $.ligerDialog.confirm( obj.getMessage()+",是否继续操作","提示信息", function(rtn) {
  82. if(rtn){
  83. this.close();
  84. }else{
  85. window.location.href = "${ctx}/platform/bpm/bpmFormQuery/list.ht";
  86. }
  87. });
  88. } else {
  89. $.ligerDialog.err("出错信息","编辑通用表单失败",obj.getMessage());
  90. }
  91. }
  92. function dialog(){
  93. $("#selInfo").text("");
  94. var id=$("#id").val();
  95. var istable=$("#istable").val();
  96. var objname=$("#objname").val();
  97. var dataSource=$("#dataSource").val();
  98. if(id==0){
  99. if(objname==null){
  100. $("#selInfo").text("请先选择数据库表");
  101. return ;
  102. }
  103. }
  104. showSettingDialog(dataSource,objname,istable,id);
  105. }
  106. function showSettingDialog(dsName,objectname,istable,id){
  107. var settingobj=$("#settingobj").val(),
  108. fields={};
  109. if(settingobj==objectname){
  110. var conditionField=$("#conditionfield").val(),
  111. resultField=$("#resultfield").val(),
  112. sortField=$("#sortfield").val();
  113. if(conditionField)
  114. fields.conditionField=conditionField;
  115. if(resultField)
  116. fields.resultField=resultField;
  117. if(sortField)
  118. fields.sortField=sortField;
  119. }
  120. var url=__ctx+"/platform/bpm/bpmFormQuery/setting.ht?dsName=" +dsName +"&objectName=" + objectname + "&istable=" + istable +"&id=" + id;
  121. url=url.getNewUrl();
  122. DialogUtil.open({
  123. height:600,
  124. width: 800,
  125. title : '设置列',
  126. url: url,
  127. isResize: true,
  128. //自定义参数
  129. fields: fields,
  130. sucCall:function(rtn){
  131. $("#settingobj").val(objectname);
  132. $("#conditionfield").val(rtn[1]);
  133. $("#resultfield").val(rtn[2]);
  134. $("#sortfield").val(rtn[3]);
  135. $("#name").focus();
  136. }
  137. });
  138. }
  139. function getKeyName(obj){
  140. var value=$(obj).val();
  141. if(!value)return false;
  142. Share.getPingyin({
  143. input:value,
  144. postCallback:function(data){
  145. var inputObj= $("input[name='alias']");
  146. //当alias为空或者为中文时
  147. if(inputObj.val().length<1 || /.*[\u4e00-\u9fa5]+.*$/.test(inputObj.val())){
  148. inputObj.val(data.output);
  149. }
  150. }
  151. });
  152. }
  153. </script>
  154. </head>
  155. <body>
  156. <div class="panel">
  157. <div class="panel-top">
  158. <div class="tbar-title">
  159. <c:choose>
  160. <c:when test="${bpmFormQuery.id !=null}">
  161. <span class="tbar-label">编辑通用表单查询</span>
  162. </c:when>
  163. <c:otherwise>
  164. <span class="tbar-label">添加通用表单查询</span>
  165. </c:otherwise>
  166. </c:choose>
  167. </div>
  168. <c:if test="${canReturn==0}">
  169. <div class="panel-toolbar">
  170. <div class="toolBar">
  171. <div class="group"><a class="link save" id="dataFormSave" href="javascript:;"><span></span>保存</a></div>
  172. <div class="l-bar-separator"></div>
  173. <div class="group"><a class="link back" href="list.ht"><span></span>返回</a></div>
  174. </div>
  175. </div>
  176. </c:if>
  177. </div>
  178. <div class="panel-body">
  179. <form id="bpmFormQueryForm" method="post" action="save.ht">
  180. <table class="table-detail" cellpadding="0" cellspacing="0" border="0">
  181. <tr>
  182. <th width="20%">查询名称: </th>
  183. <td><input type="text" id="name" name="name" value="${bpmFormQuery.name}" class="inputText" onblur="getKeyName(this)"/></td>
  184. <th width="20%">查询别名: </th>
  185. <td><input type="text" id="alias" name="alias" value="${bpmFormQuery.alias}" class="inputText"/><span id="aliasInfo" style="color:red"></span></td>
  186. </tr>
  187. <c:if test="${bpmFormQuery.id==0}">
  188. <tr>
  189. <th width="20%">数据源: </th>
  190. <td>
  191. <select id="dataSource" name="dsalias">
  192. <option value="LOCAL">本地数据源 </option>
  193. <c:forEach items="${dsList}" var="ds">
  194. <option value="${ds.alias}">${ ds.name}</option>
  195. </c:forEach>
  196. </select>
  197. </td>
  198. <th width="20%">查询表(视图): </th>
  199. <td>
  200. <select name="isTable" id="istable">
  201. <option value="1">表</option>
  202. <option value="0">视图</option>
  203. </select>
  204. <input type="text" name="objectname" id="objectname">
  205. <a href="javascript:;" id="btnSearch" class="link search">查询</a>
  206. </td>
  207. </tr>
  208. </c:if>
  209. <tr>
  210. <th width="20%">查询字段设置: </th>
  211. <td colspan="3" valign="top">
  212. <a href="javascript:;" id="btnSetting" class="link setting" onclick="dialog()">设置列</a>
  213. <c:choose>
  214. <c:when test="${bpmFormQuery.id==0}">
  215. <br>
  216. <select id="objname" name="objName" size="10" style="width:350px;">
  217. </select>
  218. <span id="selInfo" name="selInfo" style="color:red"></span>
  219. </c:when>
  220. <c:otherwise >
  221. <input type="hidden" id="objname" name="objName" value="${bpmFormQuery.objName}" />
  222. </c:otherwise>
  223. </c:choose>
  224. </td>
  225. </tr>
  226. </table>
  227. <input type="hidden" id="id" name="id" value="${bpmFormQuery.id}" />
  228. <input type="hidden" id="settingobj" value="${bpmFormQuery.objName}" />
  229. <textarea id="conditionfield" name="conditionfield" style="display: none;">
  230. ${bpmFormQuery.conditionfield}
  231. </textarea>
  232. <textarea id="resultfield" name="resultfield" style="display: none;">
  233. ${bpmFormQuery.resultfield}
  234. </textarea>
  235. <textarea id="sortfield" name="sortfield" style="display: none;">
  236. ${bpmFormQuery.sortfield}
  237. </textarea>
  238. </form>
  239. </div>
  240. </div>
  241. </body>
  242. </html>