list.html 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308
  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. <style>
  13. span.sp-color-red {
  14. position: relative;
  15. animation: move 0.5s infinite;
  16. }
  17. @keyframes move {
  18. /*开始状态*/
  19. 0% {
  20. top: 0;
  21. }
  22. /*过渡状态*/
  23. 50% {
  24. top: -2px;
  25. }
  26. /*结束状态*/
  27. 100% {
  28. top: 0;
  29. }
  30. }
  31. .lcItem {
  32. background-color: #fff;
  33. height: 100px;
  34. text-align: center;
  35. padding: 5px 0;
  36. margin: 10px 0;
  37. border-radius: 5px;
  38. border: 1px solid #E1E6EB;
  39. box-shadow: 0px 2px 5px #E1E6EB;
  40. position: relative;
  41. cursor: pointer;
  42. }
  43. .cbd {
  44. float: right;
  45. position: absolute;
  46. top: 1px;
  47. right: 1px;
  48. }
  49. .activeLC {
  50. background: #4678ec;
  51. }
  52. </style>
  53. </head>
  54. <body>
  55. <div ng-controller="listCtrl as ctl" ng-cloak>
  56. <div class="loading" ng-if="ctl.loading">
  57. <div class="loading-msg">
  58. <h3>数据加载中,请等待</h3>
  59. <div class="spinner">
  60. <div class="bounce1"></div>
  61. <div class="bounce2"></div>
  62. <div class="bounce3"></div>
  63. </div>
  64. </div>
  65. </div>
  66. <div class="wrapper wrapper-content">
  67. <div class="row">
  68. <div class="col-md-12">
  69. <div class="ibox float-e-margins">
  70. <div class="ibox-content">
  71. <div class="row">
  72. <div class="col-md-12">
  73. <div class="sp-page-tab">
  74. <span ng-class="{'pageTabActive':ctl.type=='todo'}" style="font-weight: 900; " ng-click="ctl.changeType('todo')"><img src="../flowchart_app_imgcss/img/db-black.png" width="20" ng-if="ctl.type!='todo'" style="position:relative;left:-10px" /><img src="../flowchart_app_imgcss/img/db-blue.png" width="20" ng-if="ctl.type=='todo'" style="position:relative;left:-10px" /> 待&nbsp;办</span>
  75. <span ng-class="{'pageTabActive':ctl.type=='done'}" style="font-weight: 900; " ng-click="ctl.changeType('done')"><img src="../flowchart_app_imgcss/img/yb-black.png" width="20" ng-if="ctl.type!='done'" style="position:relative;left:-10px" /><img src="../flowchart_app_imgcss/img/yb-blue.png" width="20" ng-if="ctl.type=='done'" style="position:relative;left:-10px" /> 已&nbsp;办</span>
  76. <span ng-class="{'pageTabActive':ctl.type=='finish'}" style="font-weight: 900; " ng-click="ctl.changeType('finish')"><img src="../flowchart_app_imgcss/img/gd-black.png" width="20" ng-if="ctl.type!='finish'" style="position:relative;left:-10px" /><img src="../flowchart_app_imgcss/img/gd-blue.png" width="20" ng-if="ctl.type=='finish'" style="position:relative;left:-10px" /> 办&nbsp;结</span>
  77. <div class="sp-pull-right">
  78. <a class="sp-pull-right sp-btn-gray sp-btn-radius" ng-click="ctl.refresh()">
  79. <i class="fa fa-refresh sp-mr-5"></i>刷 新
  80. </a>
  81. <a class="sp-pull-right sp-btn-gray sp-btn-radius" onclick="sp.layer('#fjmb')"><i class="fa fa-file sp-mr-5"></i>附件模版</a>
  82. <a class="sp-pull-right sp-btn-gray sp-btn-radius" ng-if="ctl.lcList.length>0" ng-click="ctl.addLC()">
  83. <i class="fa fa-plus sp-mr-5"></i>新 建
  84. </a>
  85. <a class="sp-pull-right sp-btn-gray" ng-click="ctl.openLayer()">
  86. <i class="fa fa-search sp-mr-5"></i>筛 选
  87. </a>
  88. </div>
  89. </div>
  90. <div class="sp-page">
  91. <table class="sp-table sp-mt-10">
  92. <thead>
  93. <tr>
  94. <th style="width: 50px;">
  95. <img src="../flowchart_app_imgcss/img/deng.png" title="控制灯" />
  96. </th>
  97. <th><span class="pointer" ng-click="ctl.sortFiled('XM')">姓名<i class="fa fa-sort"></i></span></th>
  98. <th><span class="pointer" ng-click="ctl.sortFiled('ZW')">职务<i class="fa fa-sort"></i></span></th>
  99. <th><span class="pointer" ng-click="ctl.sortFiled('GJDQ')">前往的国家、地区<i class="fa fa-sort"></i></span></th>
  100. <th><span class="pointer" ng-click="ctl.sortFiled('CGJSX')">出国境事项<i class="fa fa-sort"></i></span></th>
  101. <th><span class="pointer" ng-click="ctl.sortFiled('JHTLTS')">计划停留天数<i class="fa fa-sort"></i></span></th>
  102. <th><span class="pointer" ng-click="ctl.sortFiled('USERNAME')">承办人<i class="fa fa-sort"></i></span></th>
  103. <th><span class="pointer" ng-click="ctl.sortFiled('CJRBN')">承办部门<i class="fa fa-sort"></i></span></th>
  104. <th class="sp-text-center" style="width: 180px;">操 作</th>
  105. </tr>
  106. </thead>
  107. <tbody>
  108. <tr dir-paginate="item in ctl.list|itemsPerPage:ctl.itemsPerPage" total-items="ctl.total_count">
  109. <td>
  110. <img src="../flowchart_app_imgcss/img/purple.png" ng-if="item.DENG=='BLACK'" />
  111. <img src="../flowchart_app_imgcss/img/red.png" ng-if="item.DENG=='RED'" />
  112. <img src="../flowchart_app_imgcss/img/yellow.png" ng-if="item.DENG=='YELLOW'" />
  113. <img src="../flowchart_app_imgcss/img/green.png" ng-if="item.DENG=='GREEN'" />
  114. </td>
  115. <td ng-bind="item.XM"></td>
  116. <td ng-bind="item.ZW"></td>
  117. <td ng-bind="item.GJDQ"></td>
  118. <td>
  119. <a ng-click="ctl.goUrl(item)" title="{{item.CGJSX}}"
  120. ng-bind="item.CGJSX" class="sp-color-blue"></a>
  121. <span class="sp-color-red" ng-if="item.STATUS==1">未读</span>
  122. </td>
  123. <td ng-bind="item.JHTLTS"></td>
  124. <td ng-bind="item.USERNAME"></td>
  125. <td ng-bind="item.CJRBN"></td>
  126. <td class="sp-text-center">
  127. <button class="sp-btn-blue sp-btn-sm sp-radius" ng-click="ctl.goUrl(item)" ng-if="ctl.type=='todo'">办&nbsp;理</button>
  128. <button class="sp-btn-blue sp-btn-sm sp-radius" ng-click="ctl.goUrl(item)" ng-if="ctl.type!='todo'">查&nbsp;看</button>
  129. <button class="sp-btn-red sp-btn-sm sp-radius" ng-click="ctl.btnDel(item)" ng-if="item.STATUS=='0'">删&nbsp;除</button>
  130. <button class="sp-btn-red sp-btn-sm sp-radius" ng-click="ctl.btnRecall(item.USERS[0].ROUTEID,'0')" ng-if="(item.DMANS>0&&item.DMANSHADDONE==0)&&ctl.type=='done'">撤&nbsp;回</button>
  131. <button class="sp-btn-red sp-btn-sm sp-radius" ng-click="ctl.btnRecall(item.ROUTEID,'1')" ng-if="(item.DMANS==0&&item.STATUS=='4')&&ctl.type=='done'">撤回已阅</button>
  132. </td>
  133. </tr>
  134. </tbody>
  135. </table>
  136. <div class="sp-table-tip ng-hide" ng-show="ctl.noDataTip == 0">
  137. <i class="fa fa-exclamation-circle sp-mr-10"></i>您好,暂未查询到相关信息!
  138. </div>
  139. <div class="sp-page" ng-show="ctl.noDataTip != 0">
  140. <div class="sp-page-col sp-pull-right">
  141. <div class="sp-lh-34">
  142. 每页 <select ng-model="ctl.itemsPerPage" ng-options="x for x in ctl.pageOptions"
  143. ng-init="ctl.itemsPerPage=ctl.pageOptions[0]"></select> 条
  144. </div>
  145. </div>
  146. <div class="sp-page-col sp-pull-right">
  147. <dir-pagination-controls max-size="8" direction-links="true" boundary-links="true"
  148. on-page-change="ctl.getData(newPageNumber)">
  149. </dir-pagination-controls>
  150. </div>
  151. </div>
  152. </div>
  153. </div>
  154. </div>
  155. </div>
  156. </div>
  157. </div>
  158. </div>
  159. </div>
  160. <div class="sp-layer" id="fjmb" style="width:450px">
  161. <div class="sp-layer-head" style="background:#2176d6">
  162. <div class="sp-page sp-text-center sp-font16">
  163. 附件模版
  164. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  165. ×
  166. </div>
  167. </div>
  168. </div>
  169. <div class="sp-layer-body">
  170. <center class="sp-box">
  171. <a href="chuguoshenpi.docx" download="因私出国(境)纪律要求">模板:因私出国(境)纪律要求<i class="fa fa-download sp-ml-5"></i></a>
  172. </center>
  173. <center class="sp-box">
  174. <a href="lingdao_chuguoshenpi.doc" download="领导干部因私出国(境)审批表【处级及以上填写】">模板:领导干部因私出国(境)审批表【处级及以上填写】<i class="fa fa-download sp-ml-5"></i></a>
  175. </center>
  176. </div>
  177. </div>
  178. <div class="sp-layer" id="addLC" style="width: 1020px;">
  179. <div class="sp-layer-head" style="background:#2176d6">
  180. <div class="sp-page sp-text-center sp-font16">
  181. 新建流程
  182. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  183. ×
  184. </div>
  185. </div>
  186. </div>
  187. <div class="sp-layer-body">
  188. <div class="sp-page" style="max-height:500px;overflow:auto">
  189. <div ng-repeat="item in ctl.lcList" class="sp-col-25" ng-class="{'activeLC':ctl.activeLC.FLOWID==item.FLOWID}" ng-click="ctl.activeLC=item">
  190. <div class="lcItem">
  191. <div class="sp-page" style="width:30%;padding:5px">
  192. <img src="../flowchart_app_imgcss/img/addLC.png" width="45" />
  193. <div class="sp-page sp-mt-10">
  194. <span class="sp-btn-blue-outline" style="padding:2px 5px;margin:0" ng-click="ctl.seeLCT(item,$event)">流程图</span>
  195. </div>
  196. </div>
  197. <div class="sp-page" style="width:70%">
  198. <img class="cbd" src="../flowchart_app_imgcss/img/cbd.png" />
  199. <div class="sp-box" style="width:90%">
  200. {{item.FLOWNAME}}
  201. </div>
  202. <div class="sp-line-gray"></div>
  203. <div class="sp-page sp-color-gray sp-fs-12" style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis" title="{{item.FLOWNAME}}">
  204. 介绍:{{item.FLOWNAME}}
  205. </div>
  206. </div>
  207. </div>
  208. </div>
  209. </div>
  210. <div class="sp-page sp-text-center sp-mt-20">
  211. <a class="sp-btn-blue sp-radius" ng-click="ctl.goAddUrl()"><i class="fa fa-check sp-mr-5"></i>确 定</a>
  212. <a class="sp-btn-blue sp-radius" onclick="sp.layerhide()"><i class="fa fa-close sp-mr-5"></i>取 消</a>
  213. </div>
  214. </div>
  215. </div>
  216. <div class="sp-layer" id="Search" style="width: 550px;">
  217. <div class="sp-layer-head" style="background:#2176d6">
  218. <div class="sp-page sp-text-center sp-font16">
  219. 筛选
  220. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  221. ×
  222. </div>
  223. </div>
  224. </div>
  225. <div class="sp-layer-body">
  226. <table class="sp-grid-job">
  227. <tbody>
  228. <tr>
  229. <td style="width:120px;">姓名</td>
  230. <td colspan="2">
  231. <input type="text" class="sp-input" placeholder="请输入姓名" ng-model="ctl.search.XM" />
  232. </td>
  233. </tr>
  234. <tr>
  235. <td style="width:120px;">职务</td>
  236. <td colspan="2">
  237. <input type="text" class="sp-input" placeholder="请输入职务" ng-model="ctl.search.ZW" />
  238. </td>
  239. </tr>
  240. <tr>
  241. <td style="width:120px;">前往的国家、地区</td>
  242. <td colspan="2">
  243. <input type="text" class="sp-input" placeholder="请输入国家、地区" ng-model="ctl.search.GJDQ" />
  244. </td>
  245. </tr>
  246. </tbody>
  247. </table>
  248. <div class="sp-page sp-text-center sp-mt-20">
  249. <a class="sp-btn-blue sp-radius" ng-click="ctl.doSearch()"><i class="fa fa-check sp-mr-5"></i>确 定</a>
  250. <a class="sp-btn-blue sp-radius" ng-click="ctl.cancal()"><i class="fa fa-refresh sp-mr-5"></i>重 置</a>
  251. </div>
  252. </div>
  253. </div>
  254. <div class="sp-layer" id="todolist" style="width: 750px;">
  255. <div class="sp-layer-head" style="background:#2176d6">
  256. <div class="sp-page sp-text-center sp-font16">
  257. {{ctl.todoTitle}}
  258. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  259. ×
  260. </div>
  261. </div>
  262. </div>
  263. <div class="sp-layer-body">
  264. <div class="sp-box" style="max-height:500px;overflow:auto">
  265. <table class="sp-table">
  266. <thead>
  267. <tr>
  268. <th>来自节点</th>
  269. <th>我的位置</th>
  270. <th>最近时间</th>
  271. <th>操作</th>
  272. </tr>
  273. </thead>
  274. <tbody>
  275. <tr ng-repeat="item in ctl.todoList">
  276. <td>{{item.STARTNODENAME}}<br />{{item.USERNAMEFROM}}</td>
  277. <td ng-bind="item.ENDNODENAME"></td>
  278. <td ng-bind="item.RECEIVEDATE"></td>
  279. <td>
  280. <button class="sp-btn-blue sp-btn-sm sp-radius" ng-click="ctl.goUrl(item)">办&nbsp;理</button>
  281. </td>
  282. </tr>
  283. </tbody>
  284. </table>
  285. </div>
  286. <div class="sp-page sp-text-center sp-mt-20">
  287. <a class="sp-btn-blue sp-radius" onclick="sp.layerhide()"><i class="fa fa-close sp-mr-5"></i>关 闭</a>
  288. </div>
  289. </div>
  290. </div>
  291. </div>
  292. <script src="../../AFrontEnd/js/jquery/jquery-2.1.4.min.js"></script>
  293. <script src="../../AFrontEnd/js/laydate/laydate.js"></script>
  294. <script src="../../AFrontEnd/js/angularjs/angular.js"></script>
  295. <script src="../../AFrontEnd/js/angularjs/dirPagination.js"></script>
  296. <script src="../../apiurljs.js"></script>
  297. <script src="../../js/sm4.js"></script>
  298. <script>document.write('<scri' + 'pt src="../../AFrontEnd/js/special/special.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  299. <script>document.write('<scri' + 'pt src="js/list.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  300. <script src="../../AFrontEnd/js/special/spng.js"></script>
  301. <script src="../../AFrontEnd/js/special/spngvld.js"></script>
  302. </body>
  303. </html>