sysQueryViewEdit.jsp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@include file="/commons/include/html_doctype.html" %>
  3. <html ng-app="sysQueryViewApp">
  4. <head>
  5. <title>查询数据模板设置</title>
  6. <%@include file="/commons/include/form.jsp" %>
  7. <script type="text/javascript" src="${ctx}/js/lang/view/platform/form/zh_CN.js"></script>
  8. <link href="${ctx}/styles/default/css/jquery.qtip.css" rel="stylesheet" />
  9. <link rel="stylesheet" type="text/css" href="${ctx}/js/codemirror/lib/codemirror.css" >
  10. <script type="text/javascript" src="${ctx}/js/javacode/codemirror.js"></script>
  11. <script type="text/javascript" src="${ctx}/js/codemirror/lib/codemirror.js"></script>
  12. <script type="text/javascript" src="${ctx}/js/codemirror/mode/sql/sql.js"></script>
  13. <script type="text/javascript" src="${ctx}/js/util/easyTemplate.js" ></script>
  14. <link href="${ctx}/styles/default/css/hotent/dataRights.css" rel="stylesheet" />
  15. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jquery.fix.clone.js"></script>
  16. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jquery.linkdiv.js"></script>
  17. <script type="text/javascript" src="${ctx}/js/hotent/CustomValid.js"></script>
  18. <script type="text/javascript" src="${ctx}/js/hotent/platform/form/FormDate.js"></script>
  19. <script type="text/javascript" src="${ctx}/js/hotent/platform/form/FormUtil.js"></script>
  20. <script type="text/javascript" src="${ctx}/js/hotent/platform/form/SelectorInit.js"></script>
  21. <script type="text/javascript" src="${ctx}/js/hotent/formdata.js"></script>
  22. <script type="text/javascript" src="${ctx}/js/util/easyTemplate.js" ></script>
  23. <script type="text/javascript" src="${ctx}/js/codemirror/lib/util/matchbrackets.js"></script>
  24. <script type="text/javascript" src="${ctx}/js/codemirror/mode/groovy/groovy.js"></script>
  25. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jquery.qtip.js" ></script>
  26. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/ScriptDialog.js"></script>
  27. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/SysDialog.js"></script>
  28. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/AddResourceDialog.js"></script>
  29. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/BpmDefinitionDialog.js"></script>
  30. <script type="text/javascript" src="${ctx}/js/angular/angular.min.js"></script>
  31. <script type="text/javascript" src="${ctx}/js/angular/service/baseServices.js"></script>
  32. <script type="text/javascript" src="${ctx}/js/angular/service/sysQueryViewFilterSetting.js"></script>
  33. <script type="text/javascript" src="${ctx}/js/angular/module/DataRightsApp.js"></script>
  34. <script type="text/javascript" src="${ctx}/js/angular/controller/sysQueryViewController.js"></script>
  35. <script type="text/javascript">
  36. var DataRightsJson=${sysQueryViewJson};
  37. var bpmFormTableJSON=${sysQueryMetaFields};
  38. var displayFields=${displayFields}||"";
  39. var commonVars=${commonVars};
  40. var sqlId=${sqlId};
  41. </script>
  42. </head>
  43. <body ng-controller="sysQueryViewCtrl" >
  44. <div class="panel" ng-show="hasInitTab">
  45. <div class="hide-panel">
  46. <div class="panel-top">
  47. <div class="panel-top">
  48. <div class="tbar-title">
  49. <span class="tbar-label">数据模板设置</span>
  50. </div>
  51. <div class="panel-toolbar">
  52. <div class="toolBar">
  53. <div class="group">
  54. <a class="link save" href="javascript:;" ng-click="save()">
  55. <span></span>
  56. 保存
  57. </a>
  58. </div>
  59. <c:if test="${!empty sysQueryView.id}">
  60. <div class="l-bar-separator"></div>
  61. <div class="group">
  62. <a class="link preview" href="javascript:;" ng-click="preview()">
  63. <span></span>
  64. 预览
  65. </a>
  66. </div>
  67. <div class="l-bar-separator"></div>
  68. <div class="group">
  69. <a class="link edit" href="javascript:;" ng-click="editTemplate()">
  70. <span></span>
  71. 编辑模板
  72. </a>
  73. </div>
  74. <div class="l-bar-separator"></div>
  75. <div class="group">
  76. <a class="link collapse" href="javascript:;" ng-click="addToResource()">
  77. <span></span>
  78. 添加为菜单
  79. </a>
  80. </div>
  81. </c:if>
  82. <div class="l-bar-separator"></div>
  83. <div class="group"><a class="link back" onclick="history.back(-1);" id="back"><span></span>返回</a></div>
  84. </div>
  85. </div>
  86. </div>
  87. </div>
  88. </div>
  89. <div class="panel-body">
  90. <form id="dataRightsForm" >
  91. <div id="tab">
  92. <!-- 基本信息 start-->
  93. <div tabid="baseSetting" title="基本信息">
  94. <div >
  95. <div class="tbar-title">
  96. <span class="tbar-label">基本信息<input type="text" class="hidden" id="sqlId" ng-model="dataRightsJson.id"/></span>
  97. </div>
  98. <table class="table-detail" cellpadding="0" cellspacing="0" border="0" type="main" style="border-width: 0!important;">
  99. <tr>
  100. <th width="10%">名称:</th>
  101. <td>
  102. <input type="text" class="hidden" id="sn" ng-model="dataRightsJson.sn"/>
  103. <input type="text" ng-model="dataRightsJson.name" class="ht-input" validate="{required:true}" style="width:210px;margin-right:2px;"
  104. ng-blur="service.setPingyin(this,'dataRightsJson.name','dataRightsJson.alias')" />
  105. </td>
  106. </tr>
  107. <tr>
  108. <th width="10%">别名:</th>
  109. <td>
  110. <input type="text" ng-model="dataRightsJson.alias" class="ht-input" validate="{required:true}" style="width:210px;margin-right:2px;" />
  111. </td>
  112. </tr>
  113. <tr>
  114. <th >是否分页:</th>
  115. <td>
  116. <input ng-model="dataRightsJson.needPage" type="checkbox" ng-true-value=1 ng-false-value=0 ng-checked="dataRightsJson.needPage == 1" />
  117. <span style="color:red;" ng-if="dataRightsJson.needPage==1" >
  118. 分页大小:
  119. <select ng-model="dataRightsJson.pageSize" class="ht-input" style="width:50px;">
  120. <option value="5" >5</option>
  121. <option value="10" >10</option>
  122. <option value="15" >15</option>
  123. <option value="20" >20</option>
  124. <option value="50" >50</option>
  125. </select>
  126. </span>
  127. </td>
  128. </tr>
  129. <tr>
  130. <th>是否初始查询:</th>
  131. <td>
  132. <input ng-model="dataRightsJson.initQuery" type="checkbox" ng-true-value=1 ng-false-value=0 ng-checked="dataRightsJson.initQuery == 1" />
  133. </td>
  134. </tr>
  135. <tr>
  136. <th>是否显示行号:</th>
  137. <td>
  138. <input ng-model="dataRightsJson.showRowsNum" type="checkbox" ng-true-value=1 ng-false-value=0 ng-checked="dataRightsJson.showRowsNum == 1" />
  139. </td>
  140. </tr>
  141. <tr>
  142. <th>数据模板:</th>
  143. <td>
  144. <select ng-model="dataRightsJson.templateAlias" validate="{required:true}" class="ht-input" >
  145. <option value="">--请选择数据模板--</option>
  146. <c:forEach items="${templates}" var="template">
  147. <option value="${template.alias}">${template.templateName}</option>
  148. </c:forEach>
  149. </select>
  150. <div class="tipbox">
  151. <a href="javascript:;" class="tipinfo">
  152. <span>添加更多数据模板,请到自定义表单模板中添加类型为"业务数据模板"的模板</span>
  153. </a>
  154. </div>
  155. </td>
  156. </tr>
  157. </table>
  158. </div>
  159. </div>
  160. <div tabid="fieldSetting" title="显示列字段">
  161. <field-setting ></field-setting>
  162. </div>
  163. <div tabid="conditionSetting" title="查询条件字段">
  164. <condition-setting></condition-setting>
  165. </div>
  166. <div tabid="filterSetting" title="过滤条件">
  167. <filter-include-setting></filter-include-setting>
  168. </div>
  169. <div tabid="manageSetting" title="功能按钮">
  170. <manage-setting-view ></manage-setting-view>
  171. </div>
  172. <div tabid="groupSetting" title="分组设置">
  173. <div >
  174. <table style="margin: auto;width:100%;margin-top: 1px;;margin: auto;width:100%;margin-top: 1px;" class="table-detail fieldSetting" cellpadding="0" cellspacing="0" border="0">
  175. <thead>
  176. <tr style="height: 50px;">
  177. <th width="10%">启用分组:</th>
  178. <td colspan="4" style="text-align: left; width: 100%;">
  179. <div style="float: left;">
  180. <input ng-model="dataRightsJson.supportGroup" ng-checked="dataRightsJson.supportGroup==1" type="checkbox" ng-true-value=1 ng-false-value=0 />
  181. </div>
  182. </td>
  183. </tr>
  184. </thead>
  185. <tbody ng-if="dataRightsJson.supportGroup!=0">
  186. <tr>
  187. <td colspan="4">
  188. <fieldset style="margin: 5px 0px 5px 0px; border: 2px dotted rgb(235, 235, 235);">
  189. <legend class="legend" onclick="$(this).next().toggle()">
  190. <span>分组条件设置</span>
  191. </legend>
  192. <div>
  193. <table class="table-grid">
  194. <thead>
  195. <tr>
  196. <th width="5%">字段列表</th>
  197. <td style="text-align: left;">
  198. <div style="margin:5px 0 0 0;display:inline-block;" class="checkbox_button_div">
  199. <div class="pull-left" ng-repeat="field in displayFields" >
  200. <input type="checkbox" id="e_{{field.name}}" ng-model="field.gchecked" checked="checked" ng-change="selectFieldToGroup(field)">
  201. <label for="e_{{field.name}}" class="btn label-sm">{{field.name}}</label>
  202. </div>
  203. </div>
  204. </td>
  205. </tr>
  206. </thead>
  207. </table>
  208. <table class="table-grid" ng-if="groupingView.length>0">
  209. <thead>
  210. <tr>
  211. <th width="1%">序号</th>
  212. <th width="5%">名称</th>
  213. <th width="2%">合计</th>
  214. <th width="2%">是否显示</th>
  215. <th width="2%">排序规则</th>
  216. <th width="30%">分组表头模版
  217. <div class="tipbox">
  218. <a href="javascript:;" class="tipinfo">
  219. <span>这个显示分组表头模版。示例:<b> 国家: {0} {1} </b></span>
  220. </a>
  221. </div>
  222. </th>
  223. <th width="10%">管理</th>
  224. </tr>
  225. </thead>
  226. <tbody>
  227. <tr ng-repeat="f in groupingView track by $index">
  228. <td >{{$index+1}}</td>
  229. <td >{{f.groupField}}</td>
  230. <td >
  231. <input ng-model="f.groupSummary" type="checkbox" ng-true-value=1 ng-false-value=0 ng-checked="f.groupSummary==1"/>
  232. </td>
  233. <td >
  234. <input ng-model="f.groupColumnShow" type="checkbox" ng-true-value=1 ng-false-value=0 ng-checked="f.groupColumnShow==1"/>
  235. </td>
  236. <td >
  237. <select ng-model="f.groupOrder" class="ht-input" >
  238. <option value="asc" >升序</option>
  239. <option value="desc" >降序</option>
  240. </select>
  241. </td>
  242. <td >
  243. <textarea rows="5" ng-model="f.groupText" ng-blur="f.txtChange = true" style="padding: 15px 0 0 0px;resize: none" class="w100 border-none margin-none "></textarea>
  244. </td>
  245. <td>
  246. <tool-buttons list="groupingView" index="{{$index}}" type="4"></tool-buttons>
  247. </td>
  248. </tr>
  249. </tbody>
  250. </table>
  251. </div>
  252. </fieldset>
  253. </td>
  254. </tr>
  255. </tbody>
  256. </table>
  257. </div>
  258. </div>
  259. </div>
  260. </form>
  261. </div>
  262. <!-- end of panel-body -->
  263. <filter-hidden></filter-hidden>
  264. </div>
  265. </body>
  266. </html>