forward.html 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  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&&ctl.opinionYY==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-text-center" ng-if="ctl.opinionYY==true">
  42. <p style="display:inline">已阅后本件转入已办件(自动创建已阅意见)</p>
  43. </div>
  44. <div class="sp-page" ng-if="ctl.showContent==true" style="line-height: 30px">
  45. <div class="sp-page-tab" ng-init="ctl.type=0">
  46. <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)">
  47. {{item.CNAME}}
  48. <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>
  49. </span>
  50. <button class="sp-pull-right sp-btn-gray sp-btn-sm addDirection" ng-if="ctl.directionFlag==true">
  51. 加签
  52. <div class="sp-page-col">
  53. <div class="sp-box" ng-click="ctl.addDirection(item)" ng-repeat="item in ctl.directionList1" ng-bind="item.CNAME"></div>
  54. </div>
  55. </button>
  56. </div>
  57. <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">
  58. 默认部门
  59. </div>
  60. <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)">
  61. 加签部门
  62. </div>
  63. <div class="grouping pointer" ng-class="{'activeGroup':ctl.activeGroup=='自定义分组'}" style="width:125px" ng-click="ctl.activeGroup='自定义分组';ctl.forward1(1)">
  64. 自定义分组<i class="fa fa-cog fa-1g sp-ml-5" ng-click="ctl.setZDY=true"></i>
  65. </div>
  66. <div class="sp-box" style="height:597px;border:1px solid #c3c3c3" ng-if="ctl.setZDY">
  67. <div class="sp-page-col sp-text-center" style="width: 20%; padding: 5px 10px; " ng-repeat="item in ctl.zdyfzList">
  68. <div class="sp-page" style="border: 1px solid #c3c3c3; border-radius: 5px; padding: 5px 10px; ">
  69. {{item.ZUM}}<i style="line-height:30px" class="sp-pull-right fa fa-trash-o pointer" ng-click="ctl.delZB(item)"></i>
  70. </div>
  71. </div>
  72. </div>
  73. <table class="sp-grid" style="border:1px solid #c3c3c3" ng-if="!ctl.setZDY">
  74. <tbody>
  75. <tr>
  76. <td width="400">
  77. <div class="sp-page">
  78. <div class="sp-page" style="height:30px;border:1px solid #ddd">
  79. <select class="sp-select" style="width: 55%; border: 0; " ng-model="ctl.searchRole" ng-change="ctl.searchPerson()" ng-if="ctl.activeGroup=='部门'">
  80. <option value="">全部角色</option>
  81. <option ng-repeat="item in ctl.roleList" value="{{item.ZID}}" ng-bind="item.ZUM" ng-selected="ctl.searchRole==item.ZID"></option>
  82. </select>
  83. <select class="sp-select" style="width: 55%; border: 0; " ng-model="ctl.searchRole" ng-change="ctl.searchPerson2()" ng-if="ctl.activeGroup=='常用分组'">
  84. <option ng-repeat="item in ctl.zdyfzList" value="{{item.ZID}}" ng-bind="item.ZUM" ng-selected="ctl.searchRole==item.ZID"></option>
  85. </select>
  86. <select class="sp-select sp-text-center" style="width: 55%; border: 0;" ng-model="ctl.searchRole" ng-change="ctl.searchPerson2()" ng-if="ctl.activeGroup=='自定义分组'">
  87. <option ng-repeat="item in ctl.zdyfzList" value="{{item.ZID}}" ng-selected="item.ZID==ctl.searchRole" ng-bind="item.ZUM"></option>
  88. </select>
  89. <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()" />
  90. </div>
  91. </div>
  92. <div class="sp-page" style="height: 396px; border: 1px solid #ddd; overflow-x: hidden; overflow-y: scroll; ">
  93. <div ng-repeat="item in ctl.activeDirection.people" class="sp-page sp-pt-5" ng-if="ctl.activeGroup=='部门'&&item.show">
  94. <div class="sp-col-100">
  95. <i class="fa fa-plus-square-o" ng-if="item.childshow==false" ng-click="item.childshow=!item.childshow"></i>
  96. <i class="fa fa-minus-square-o" ng-if="item.childshow==true" ng-click="item.childshow=!item.childshow"></i>
  97. <!--<span class="pointer" ng-click="ctl.chekcDP(item,2)">{{item.SECTION}}</span>-->
  98. <span class="pointer" ng-click="item.childshow=!item.childshow">{{item.SECTION}}</span>
  99. </div>
  100. <div class="line sp-ml-10" ng-if="item.childshow==true">
  101. <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">
  102. <span class="sp-col-35 sp-lh-20">
  103. <input type="checkbox" ng-model="item1.checked" />
  104. {{item1.USERNAME}}
  105. </span>
  106. <span class="sp-col-65 sp-lh-20">{{item1.DUTYNAME}}</span>
  107. </label>
  108. </div>
  109. </div>
  110. <div ng-repeat="item in ctl.activeDirection.people" class="sp-page sp-pt-5" ng-if="ctl.activeGroup=='常用分组'&&item.show">
  111. <div class="sp-col-100">
  112. <i class="fa fa-plus-square-o" ng-if="item.childshow==false" ng-click="item.childshow=!item.childshow"></i>
  113. <i class="fa fa-minus-square-o" ng-if="item.childshow==true" ng-click="item.childshow=!item.childshow"></i>
  114. <!--<span class="pointer" ng-click="ctl.chekcDP(item,2)">{{item.SECTION}}</span>-->
  115. <span class="pointer" ng-click="item.childshow=!item.childshow">{{item.SECTION}}</span>
  116. </div>
  117. <div class="line sp-ml-10" ng-if="item.childshow==true">
  118. <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">
  119. <span class="sp-col-35 sp-lh-20">
  120. <input type="checkbox" ng-model="item1.checked" />
  121. {{item1.USERNAME}}
  122. </span>
  123. <span class="sp-col-65 sp-lh-20">{{item1.DUTYNAME}}</span>
  124. </label>
  125. </div>
  126. </div>
  127. <div ng-repeat="item in ctl.activeDirection.people" class="sp-page sp-pt-5" ng-if="ctl.activeGroup=='自定义分组'&&item.show">
  128. <div class="sp-col-100">
  129. <i class="fa fa-plus-square-o" ng-if="item.childshow==false" ng-click="item.childshow=!item.childshow"></i>
  130. <i class="fa fa-minus-square-o" ng-if="item.childshow==true" ng-click="item.childshow=!item.childshow"></i>
  131. <!--<span class="pointer" ng-click="ctl.chekcDP(item,2)">{{item.SECTION}}</span>-->
  132. <span class="pointer" ng-click="item.childshow=!item.childshow">{{item.SECTION}}</span>
  133. </div>
  134. <div class="line sp-ml-10" ng-if="item.childshow==true">
  135. <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">
  136. <span class="sp-col-35 sp-lh-20">
  137. <input type="checkbox" ng-model="item1.checked" />
  138. {{item1.USERNAME}}
  139. </span>
  140. <span class="sp-col-65 sp-lh-20">{{item1.DUTYNAME}}</span>
  141. </label>
  142. </div>
  143. </div>
  144. </div>
  145. <div class="sp-page sp-mt-5" style="padding:2px">
  146. <label ng-if="ctl.activeGroup=='部门'"><input type="checkbox" ng-model="ctl.jiaqian" ng-change="ctl.jiaqianCheck()" />&nbsp;去除推荐部门</label>
  147. <span class="sp-btn-blue-outline sp-btn-sm sp-pull-right" ng-click="ctl.ForwardCheck(3)">反选</span>
  148. <span class="sp-btn-blue-outline sp-btn-sm sp-pull-right" ng-click="ctl.ForwardCheck(2)">全清</span>
  149. <span class="sp-btn-blue-outline sp-btn-sm sp-pull-right" ng-click="ctl.ForwardCheck(1)">全选</span>
  150. </div>
  151. </td>
  152. <td width="75" style="text-align:center">
  153. <button class="sp-btn-gray-outline" ng-click="ctl.adduserAll()">
  154. <i class="fa fa-2x fa-angle-double-right"></i>
  155. </button>
  156. <br />
  157. <button class="sp-btn-gray-outline" ng-click="ctl.adduser()">
  158. <i class="fa fa-2x fa-angle-right"></i>
  159. </button>
  160. <br />
  161. <button class="sp-btn-gray-outline" ng-disabled="ctl.meetUser.length==0" ng-click="ctl.deluser()">
  162. <i class="fa fa-2x fa-angle-left"></i>
  163. </button>
  164. <br />
  165. <button class="sp-btn-gray-outline" ng-disabled="ctl.meetUser.length==0" ng-click="ctl.deluserAll()">
  166. <i class="fa fa-2x fa-angle-double-left"></i>
  167. </button>
  168. </td>
  169. <td>
  170. <div class="sp-page" style="padding:5px;border:1px solid #c6c6c6;">
  171. <div class="sp-page" style="height:32px;line-height:20px">
  172. <span class="sp-btn-blue sp-btn-sm" ng-if="ctl.saveZB==false" ng-click="ctl.saveZB=true">自定义组</span>
  173. <input type="text" class="sp-input" ng-if="ctl.saveZB==true" style="width: 146px" ng-model="ctl.cnameZB" />
  174. <span class="sp-btn-blue sp-btn-sm" ng-if="ctl.saveZB==true" ng-click="ctl.btnSaveZB()">保存</span>
  175. <span class="sp-btn-red sp-btn-sm" ng-if="ctl.saveZB==true" ng-click="ctl.saveZB=false">取消</span>
  176. </div>
  177. <div class="sp-page" style="height: 414px;overflow-y:auto">
  178. <div class="line" ng-repeat="item in ctl.forwardUser[ctl.activeDirection.forwardUser]">
  179. <label style="cursor: pointer; width: 100%; display: inline-block; ">
  180. <input type="checkbox" ng-model="item.checked" ng-click="ctl.checkForwardUser($index)" />&nbsp;
  181. <span ng-bind="item.USERNAME" class="pointer" ng-class="{'activeUser':ctl.activeUser==$index}"></span>
  182. <select class="sp-select sp-pull-right sp-mr-10" style="width:70px" ng-model="item.type">
  183. <option value="1">转办</option>
  184. <option value="2">阅办</option>
  185. </select>
  186. <span class="sp-pull-right" style="width:150px">{{item.DUTYNAME}}</span>
  187. </label>
  188. </div>
  189. </div>
  190. </div>
  191. </td>
  192. </tr>
  193. </tbody>
  194. </table>
  195. <div class="sp-page" style="height:120px;overflow:auto" ng-if="!ctl.setZDY">
  196. <p ng-repeat="item in ctl.directionList">
  197. {{item.CNAME}}:(
  198. <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>
  199. <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>
  200. )
  201. </p>
  202. </div>
  203. </div>
  204. <div class="sp-page sp-text-center sp-mt-15" ng-if="!ctl.setZDY">
  205. <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')&&ctl.opinionYY==false" ng-disabled="ctl.sendFlag==true">
  206. <i class="fa fa-check sp-mr-5"> </i>确 认
  207. </button>
  208. <button class="sp-btn-blue sp-radius" ng-click="ctl.submitYJ()" ng-if="ctl.opinionYY==true">
  209. <i class="fa fa-check sp-mr-5"> </i>确 认
  210. </button>
  211. <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>
  212. </div>
  213. <div class="sp-page sp-text-center sp-mt-15" ng-if="ctl.setZDY">
  214. <button class="sp-btn-blue sp-radius" ng-click="ctl.setZDY=false"><i class="fa fa-reply-all sp-mr-5"> </i>关 闭</button>
  215. </div>
  216. </div>
  217. </div>
  218. </div>
  219. <script src="../../AFrontEnd/js/jquery/jquery-2.1.4.min.js"></script>
  220. <script src="../../AFrontEnd/js/angularjs/angular.js"></script>
  221. <script src="../../apiurljs.js"></script>
  222. <script src="../../js/sm4.js"></script>
  223. <script>document.write('<scri' + 'pt src="../../AFrontEnd/js/special/special.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  224. <script>document.write('<scri' + 'pt src="js/forward.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  225. </body>
  226. </html>