forwardUser.html 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. <!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml" ng-app="app">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  6. <title>转发</title>
  7. <link href="../../AFrontEnd/css/animate.css" rel="stylesheet" />
  8. <link href="../../AFrontEnd/css/fontawesome/css/font-awesome.css" rel="stylesheet" />
  9. <link href="../../AFrontEnd/css/bootstrap.css" rel="stylesheet" />
  10. <link href="../../AFrontEnd/css/style.css" rel="stylesheet" />
  11. <script>document.write("<link href='../../AFrontEnd/css/special.css?time=" + new Date().getTime() + "' rel='stylesheet'>");</script>
  12. <script>document.write("<link href='../flowchart_app_imgcss/css/formedit.css?time=" + new Date().getTime() + "' rel='stylesheet'>");</script>
  13. <style>
  14. .addDirection {
  15. position: relative;
  16. }
  17. .addDirection > .sp-page-col {
  18. width: 200px;
  19. display: none;
  20. position: absolute;
  21. background-color: #c3c3c3;
  22. color: #000;
  23. top: 30px;
  24. right: 0px;
  25. }
  26. .addDirection:hover > .sp-page-col {
  27. display: block !important;
  28. }
  29. </style>
  30. </head>
  31. <body>
  32. <div ng-controller="forwardCtrl as ctl" id="app" ng-cloak>
  33. <div class="sp-page" style="width:980px;display:none" id="forward">
  34. <div class="sp-layer-body" ng-class="{'sp-height-400': '{{ctl.deviceType}}' =='pad'}">
  35. <div class="sp-text-center" ng-if="ctl.showContent==false">
  36. <p ng-bind="ctl.direction.CODEFUNCTITLE" style="display:inline"></p>
  37. <p style="display: inline" ng-if="ctl.direction.ENDNODETYPE!=1&&ctl.direction.CODEFUNCBUTTON!='sendcopyend'&&ctl.direction.CODEFUNCBUTTON!='sendperusal'&&ctl.direction.CODEFUNCBUTTON !='sendcommit'&&ctl.direction.SENDERRORS.MESSAGE==''">
  38. <button class=" sp-btn-blue" ng-click="ctl.resetup()">重新选择</button>
  39. </p>
  40. </div>
  41. <div class="sp-page" ng-if="ctl.showContent==true" style="line-height: 30px">
  42. <div class="sp-page-tab" ng-init="ctl.type=0">
  43. <span ng-class="{'pageTabActive':ctl.type==$index}" style="width: auto; padding: 0 10px; position: relative" ng-repeat="item in ctl.directionList" ng-click="ctl.changeType($index)">
  44. {{item.CNAME}}
  45. <i class="fa fa-close sp-color-red" style="position:absolute;top:0;right:0;font-size:12px" ng-if="item.jiaqian==true" ng-click="ctl.delDirection($index);$event.stopPropagation()"></i>
  46. </span>
  47. <!--<button class="sp-pull-right sp-btn-gray sp-btn-sm addDirection" ng-if="ctl.directionFlag==true">
  48. 加签
  49. <div class="sp-page-col">
  50. <div class="sp-box" ng-click="ctl.addDirection(item)" ng-repeat="item in ctl.directionList1" ng-bind="item.CNAME"></div>
  51. </div>
  52. </button>-->
  53. </div>
  54. <div class="grouping pointer" style="border-left: 1px solid #c3c3c3" ng-class="{'activeGroup':ctl.activeGroup=='部门'}" ng-click="ctl.activeGroup='部门';ctl.forward1(1)" ng-if="!ctl.activeDirection.jiaqian">
  55. 默认部门
  56. </div>
  57. <div class="grouping pointer" style="border-left: 1px solid #c3c3c3" ng-class="{'activeGroup':ctl.activeGroup=='常用分组'}" ng-if="ctl.activeDirection.jiaqian==true" ng-click="ctl.activeGroup='常用分组';ctl.forward1(1)">
  58. 加签部门
  59. </div>
  60. <div class="grouping pointer" ng-class="{'activeGroup':ctl.activeGroup=='自定义分组'}" ng-click="ctl.activeGroup='自定义分组';ctl.forward1(1)">
  61. 自定义分组
  62. </div>
  63. <table class="sp-grid" style="border:1px solid #c3c3c3">
  64. <tbody>
  65. <tr>
  66. <td width="400">
  67. <div class="sp-page">
  68. <div class="sp-page" style="height:30px;border:1px solid #ddd">
  69. <select class="sp-select" style="width: 55%; border: 0; " ng-model="ctl.searchRole" ng-change="ctl.searchPerson()" ng-if="ctl.activeGroup=='部门'">
  70. <option value="">全部角色</option>
  71. <option ng-repeat="item in ctl.roleList" value="{{item.ZID}}" ng-bind="item.ZUM" ng-selected="ctl.searchRole==item.ZID"></option>
  72. </select>
  73. <select class="sp-select" style="width: 55%; border: 0; " ng-model="ctl.searchRole" ng-change="ctl.searchPerson2()" ng-if="ctl.activeGroup=='常用分组'">
  74. <option ng-repeat="item in ctl.zdyfzList" value="{{item.ZID}}" ng-bind="item.ZUM" ng-selected="ctl.searchRole==item.ZID"></option>
  75. </select>
  76. <select class="sp-select sp-text-center" style="width: 55%; border: 0;" ng-model="ctl.searchRole" ng-change="ctl.searchPerson2()" ng-if="ctl.activeGroup=='自定义分组'">
  77. <option ng-repeat="item in ctl.zdyfzList" value="{{item.ZID}}" ng-selected="item.ZID==ctl.searchRole" ng-bind="item.ZUM"></option>
  78. </select>
  79. <input type="text" class="sp-input" style="width: 45%; outline: none; border: 0; background-image: url(../flowchart_app_imgcss/img/search.png); background-repeat: no-repeat; background-position-x: 98%; background-position-y: 5px; " ng-model="ctl.searchName" placeholder="请输入关键字" ng-change="ctl.searchPerson()" />
  80. </div>
  81. </div>
  82. <div class="sp-page" style="height: 396px; border: 1px solid #ddd; overflow-x: hidden; overflow-y: scroll; ">
  83. <div ng-repeat="item in ctl.activeDirection.people" class="sp-page sp-pt-5" ng-if="ctl.activeGroup=='部门'&&item.show">
  84. <div class="sp-col-100">
  85. <i class="fa fa-plus-square-o" ng-if="item.childshow==false" ng-click="item.childshow=!item.childshow"></i>
  86. <i class="fa fa-minus-square-o" ng-if="item.childshow==true" ng-click="item.childshow=!item.childshow"></i>
  87. <!--<span class="pointer" ng-click="ctl.chekcDP(item,2)">{{item.SECTION}}</span>-->
  88. <span class="pointer" ng-click="item.childshow=!item.childshow">{{item.SECTION}}</span>
  89. </div>
  90. <div class="line sp-ml-10" ng-if="item.childshow==true">
  91. <label style="width:25%;cursor: pointer; width: 100%; display: inline-block; " ng-click="ctl.checkAddUser(item1)" ng-if="item1.show" ng-repeat="item1 in item.USERS">
  92. <span class="sp-col-35 sp-lh-20">
  93. <input type="checkbox" ng-model="item1.checked" />
  94. {{item1.USERNAME}}
  95. </span>
  96. <span class="sp-col-65 sp-lh-20">{{item1.DUTYNAME}}</span>
  97. </label>
  98. </div>
  99. </div>
  100. <div ng-repeat="item in ctl.activeDirection.people" class="sp-page sp-pt-5" ng-if="ctl.activeGroup=='常用分组'&&item.show">
  101. <div class="sp-col-100">
  102. <i class="fa fa-plus-square-o" ng-if="item.childshow==false" ng-click="item.childshow=!item.childshow"></i>
  103. <i class="fa fa-minus-square-o" ng-if="item.childshow==true" ng-click="item.childshow=!item.childshow"></i>
  104. <!--<span class="pointer" ng-click="ctl.chekcDP(item,2)">{{item.SECTION}}</span>-->
  105. <span class="pointer" ng-click="item.childshow=!item.childshow">{{item.SECTION}}</span>
  106. </div>
  107. <div class="line sp-ml-10" ng-if="item.childshow==true">
  108. <label style="width:25%;cursor: pointer; width: 100%; display: inline-block; " ng-click="ctl.checkAddUser(item1)" ng-if="item1.show" ng-repeat="item1 in item.USERS">
  109. <span class="sp-col-35 sp-lh-20">
  110. <input type="checkbox" ng-model="item1.checked" />
  111. {{item1.USERNAME}}
  112. </span>
  113. <span class="sp-col-65 sp-lh-20">{{item1.DUTYNAME}}</span>
  114. </label>
  115. </div>
  116. </div>
  117. <div ng-repeat="item in ctl.activeDirection.people" class="sp-page sp-pt-5" ng-if="ctl.activeGroup=='自定义分组'&&item.show">
  118. <div class="sp-col-100">
  119. <i class="fa fa-plus-square-o" ng-if="item.childshow==false" ng-click="item.childshow=!item.childshow"></i>
  120. <i class="fa fa-minus-square-o" ng-if="item.childshow==true" ng-click="item.childshow=!item.childshow"></i>
  121. <!--<span class="pointer" ng-click="ctl.chekcDP(item,2)">{{item.SECTION}}</span>-->
  122. <span class="pointer" ng-click="item.childshow=!item.childshow">{{item.SECTION}}</span>
  123. </div>
  124. <div class="line sp-ml-10" ng-if="item.childshow==true">
  125. <label style="width:25%;cursor: pointer; width: 100%; display: inline-block; " ng-click="ctl.checkAddUser(item1)" ng-if="item1.show" ng-repeat="item1 in item.USERS">
  126. <span class="sp-col-35 sp-lh-20">
  127. <input type="checkbox" ng-model="item1.checked" />
  128. {{item1.USERNAME}}
  129. </span>
  130. <span class="sp-col-65 sp-lh-20">{{item1.DUTYNAME}}</span>
  131. </label>
  132. </div>
  133. </div>
  134. </div>
  135. <div class="sp-page sp-mt-5" style="padding:2px">
  136. <label ng-if="ctl.activeGroup=='部门'"><input type="checkbox" ng-model="ctl.jiaqian" ng-change="ctl.jiaqianCheck()" />&nbsp;去除推荐部门</label>
  137. <span class="sp-btn-blue-outline sp-btn-sm sp-pull-right" ng-click="ctl.ForwardCheck(3)">反选</span>
  138. <span class="sp-btn-blue-outline sp-btn-sm sp-pull-right" ng-click="ctl.ForwardCheck(2)">全清</span>
  139. <span class="sp-btn-blue-outline sp-btn-sm sp-pull-right" ng-click="ctl.ForwardCheck(1)">全选</span>
  140. </div>
  141. </td>
  142. <td width="75" style="text-align:center">
  143. <button class="sp-btn-gray-outline" ng-click="ctl.adduserAll()">
  144. <i class="fa fa-2x fa-angle-double-right"></i>
  145. </button>
  146. <br />
  147. <button class="sp-btn-gray-outline" ng-click="ctl.adduser()">
  148. <i class="fa fa-2x fa-angle-right"></i>
  149. </button>
  150. <br />
  151. <button class="sp-btn-gray-outline" ng-disabled="ctl.meetUser.length==0" ng-click="ctl.deluser()">
  152. <i class="fa fa-2x fa-angle-left"></i>
  153. </button>
  154. <br />
  155. <button class="sp-btn-gray-outline" ng-disabled="ctl.meetUser.length==0" ng-click="ctl.deluserAll()">
  156. <i class="fa fa-2x fa-angle-double-left"></i>
  157. </button>
  158. </td>
  159. <td>
  160. <div class="sp-page" style="padding:5px;border:1px solid #c6c6c6;">
  161. <div class="sp-page" style="height:32px;line-height:20px">
  162. <span class="sp-btn-blue sp-btn-sm" ng-if="ctl.saveZB==false" ng-click="ctl.saveZB=true">自定义组</span>
  163. <input type="text" class="sp-input" ng-if="ctl.saveZB==true" style="width: 146px" ng-model="ctl.cnameZB" />
  164. <span class="sp-btn-blue sp-btn-sm" ng-if="ctl.saveZB==true" ng-click="ctl.btnSaveZB()">保存</span>
  165. <span class="sp-btn-red sp-btn-sm" ng-if="ctl.saveZB==true" ng-click="ctl.saveZB=false">取消</span>
  166. </div>
  167. <div class="sp-page" style="height: 414px;overflow-y:auto">
  168. <div class="line" ng-repeat="item in ctl.forwardUser[ctl.activeDirection.forwardUser]">
  169. <label style="cursor: pointer; width: 100%; display: inline-block; ">
  170. <input type="checkbox" ng-model="item.checked" ng-click="ctl.checkForwardUser($index)" />&nbsp;
  171. <span ng-bind="item.USERNAME" class="pointer" ng-class="{'activeUser':ctl.activeUser==$index}"></span>
  172. <span class="sp-pull-right" style="width:150px">{{item.DUTYNAME}}</span>
  173. </label>
  174. </div>
  175. </div>
  176. </div>
  177. </td>
  178. </tr>
  179. </tbody>
  180. </table>
  181. <div class="sp-page" style="height:120px;overflow:auto">
  182. <p ng-repeat="item in ctl.directionList">
  183. {{item.CNAME}}:(
  184. <span style=" white-space: nowrap" ng-repeat="item1 in ctl.forwardUser[item.forwardUser]" ng-if="$index!=ctl.forwardUser[item.forwardUser].length-1">{{item1.USERNAME}},</span>
  185. <span style=" white-space: nowrap" ng-repeat="item1 in ctl.forwardUser[item.forwardUser]" ng-if="$index==ctl.forwardUser[item.forwardUser].length-1">{{item1.USERNAME}}</span>
  186. )
  187. </p>
  188. </div>
  189. </div>
  190. <div class="sp-page sp-text-center sp-mt-15">
  191. <button class="sp-btn-blue sp-radius" ng-click="ctl.sendAll()" ng-if="(!ctl.direction.SENDERRORS||ctl.direction.SENDERRORS.MESSAGE=='')&&(ctl.direction.CODEMARK==undefined || ctl.direction.CODEMARK=='true')" ng-disabled="ctl.sendFlag==true">
  192. <i class="fa fa-check sp-mr-5"> </i>确 认
  193. </button>
  194. <button class="sp-btn-blue sp-radius" onclick="window.parent.sp.closeCenter('.sp-layer')"><i class="fa fa-reply-all sp-mr-5"> </i>关 闭</button>
  195. </div>
  196. </div>
  197. </div>
  198. </div>
  199. <script src="../../AFrontEnd/js/jquery/jquery-2.1.4.min.js"></script>
  200. <script src="../../AFrontEnd/js/angularjs/angular.js"></script>
  201. <script src="../../apiurljs.js"></script>
  202. <script src="../../js/sm4.js"></script>
  203. <script>document.write('<scri' + 'pt src="../../AFrontEnd/js/special/special.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  204. <script>document.write('<scri' + 'pt src="js/forwardUser.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  205. </body>
  206. </html>