sysKnowledgePerUserDialog.jsp 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
  2. <%@include file="/commons/include/html_doctype.html"%>
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  6. <%@include file="/commons/include/form.jsp" %>
  7. <title>流程分管授权人员选择</title>
  8. <style type="text/css">
  9. .owner-span{
  10. font-size: 13px;
  11. background-color: #EFF2F7;
  12. border: 1px solid #CCD5E4;
  13. border-radius: 5px 5px 5px 5px;
  14. cursor: default;
  15. float: left;
  16. height: auto !important;
  17. margin: 3px;
  18. overflow: hidden;
  19. padding: 2px 4px;
  20. white-space: nowrap;
  21. }
  22. </style>
  23. <script type="text/javascript" src="${ctx}/js/lg/plugins/htButtons.js"></script>
  24. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/SysDialog.js"></script>
  25. <script type="text/javascript" src="${ctx}/js/hotent/platform/bpm/BpmDefAuthorize.js"></script>
  26. <script type="text/javascript">
  27. /*KILLDIALOG*/
  28. var dialog = frameElement.dialog; //调用页面的dialog对象(ligerui对象)
  29. $(function() {
  30. // $("span.htbtn").htButtons();
  31. //初始化选择全部人员事件(以下要按顺序初始化)
  32. selectAllHandler($("#selectAll"));
  33. //人员查看详情事件
  34. openDetailEvent();
  35. //确定返回选择对象事件
  36. initOwnerOk()
  37. //初始化数据库中的数据
  38. //var conf = window.dialogArguments;
  39. var conf =dialog.get('conf');
  40. if(conf!=undefined && conf!=null && conf!=""){ //模态窗口的接收方法
  41. var myJson = $.parseJSON(conf.jsonStr);
  42. initMyOwnerSpan(myJson);
  43. }
  44. });
  45. //确定返回选择对象事件
  46. function initOwnerOk(){
  47. $("a.ok").click(function() {
  48. var objJson = {};
  49. var checked=$("#selectAll").is(":checked");
  50. if(checked){
  51. objJson = {
  52. all:"Y",
  53. user:"",
  54. org:""
  55. }
  56. }else{
  57. $("textarea[name='ownerName']").each(function(){
  58. var me = $(this),
  59. tr = me.parents("tr"),
  60. myJsonStr = $("textarea[name='ownerName']",tr).val();
  61. rightType = $("input[name='rightType']",tr).val();
  62. if(myJsonStr==undefined || myJsonStr==null || myJsonStr==""){
  63. myJsonStr = '[]';
  64. }
  65. json = $.parseJSON(myJsonStr);
  66. if(rightType=='all'){
  67. if(checked){
  68. objJson.all='Y';
  69. }else{
  70. objJson.all='N';
  71. }
  72. }else if(rightType=='user'){
  73. objJson.user=json;
  74. }else if(rightType=='org'){
  75. objJson.org=json;
  76. }
  77. });
  78. }
  79. var conf ={
  80. objJson:objJson
  81. }
  82. //window.returnValue = jsonStr;
  83. dialog.get('sucCall')(objJson);
  84. dialog.close();
  85. });
  86. };
  87. //初始化数据库中的数据
  88. function initMyOwnerSpan(objJson){
  89. if(objectIsEmptyByRep(objJson,'{}')){
  90. return false;
  91. }
  92. if(objectIsEmptyByRep(objJson,'{}')){
  93. return false;
  94. }
  95. $("textarea[name='ownerName']").each(function(){
  96. var me = $(this),
  97. tr = me.closest("tr"),
  98. owner = $("textarea[name='ownerName']",tr);
  99. rightType = $("input[name='rightType']",tr).val();
  100. if(rightType=='all'){
  101. if(objJson.all=="Y"){
  102. $("#selectAll").attr("checked","checked");
  103. selectAllHandler($("#selectAll"));
  104. }
  105. }else if(rightType=='user'){
  106. if(!objectIsEmptyByRep(objJson.user,'')){
  107. var href = __ctx+"/platform/system/sysUser/get.ht?openType=detail&userId=";
  108. setVal(me,objJson.user,href);
  109. }
  110. }else if(rightType=='org'){
  111. if(!objectIsEmptyByRep(objJson.org,'')){
  112. setVal(me,objJson.org);
  113. }
  114. }
  115. });
  116. }
  117. //所有人的选择事件
  118. function selectAllHandler(obj) {
  119. var _this = $(obj);
  120. if( _this.is(":checked")){
  121. $("a.current").hide();
  122. $("div.owner-div").hide();
  123. $("#chooseAll").trigger("click");
  124. }else{
  125. $("a.current").show();
  126. $("div.owner-div").show();
  127. $("#resetAll").trigger("click");
  128. }
  129. }
  130. </script>
  131. </head>
  132. <body>
  133. <div class="panel">
  134. <div class="panel-top">
  135. <div class="panel-toolbar">
  136. <div class="toolBar">
  137. <div class="group">
  138. <a class="link ok"><span></span>确定</a>
  139. </div>
  140. <div class="l-bar-separator"></div>
  141. <div class="group">
  142. <a class="link del" onclick="dialog.close()" href="javascript:;"><span></span>关闭</a>
  143. </div>
  144. </div>
  145. </div>
  146. </div>
  147. <div class="panel-body">
  148. <form id="bpmDefUserForm" method="post">
  149. <input type="hidden" name="id" value="${id}">
  150. <table id="bpmDefUserTable" class="table-grid table-list" cellpadding="0" cellspacing="0" border="0">
  151. <thead>
  152. <tr>
  153. <th width="150px;" nowrap="nowrap">权限分类</th>
  154. <th style="text-align: center;">授权给</th>
  155. <th width="180px;" nowrap="nowrap" style="text-align: center;">操作</th>
  156. </tr>
  157. </thead>
  158. <tr>
  159. <th colspan="3">
  160. <input id="selectAll" style="float:left" type="checkbox" onclick="selectAllHandler(this)"> <label style="float:left" for="selectAll">允许所有人访问</label>
  161. </th>
  162. </tr>
  163. <tr style="display: none">
  164. <td>所有用户</td>
  165. <td>
  166. <div class="owner-div"></div>
  167. <textarea rightType="0" class="hidden" name="ownerName"></textarea>
  168. <input type="hidden" name="rightType" value="all">
  169. </td>
  170. <td>
  171. <a id="chooseAll" onclick="chooseAllHandler(this);" ></a>
  172. <a id="resetAll" onclick="resetSelect(this);" ></a>
  173. </td>
  174. </tr>
  175. <tr>
  176. <td>用户授权</td>
  177. <td>
  178. <div class="owner-div"></div>
  179. <textarea class="hidden" name="ownerName"></textarea>
  180. <input type="hidden" name="rightType" value="user">
  181. </td>
  182. <td>
  183. <a class="current" onclick="chooseUser(this);" ><span></span>选择...</a>
  184. <a class="current" onclick="resetSelect(this);" ><span></span>重置</a>
  185. </td>
  186. </tr>
  187. <tr>
  188. <td>组织授权</td>
  189. <td>
  190. <div class="owner-div"></div>
  191. <textarea class="hidden" name="ownerName"></textarea>
  192. <input type="hidden" name="rightType" value="org">
  193. </td>
  194. <td>
  195. <a class="current" onclick="chooseOrg(this);" ><span></span>选择...</a>
  196. <a class="current" onclick="resetSelect(this);" ><span></span>重置</a>
  197. </td>
  198. </tr>
  199. </table>
  200. </form>
  201. </div>
  202. </div>
  203. </body>
  204. </html>