event_form.html 48 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112
  1. <section id="page-title">
  2. <div class="row">
  3. <div class="col-sm-8">
  4. <h1 class="mainTitle">事件报表
  5. <i tooltip='请点击对应报表名称,查看相关数据。' tooltip-placement="right"
  6. class="fa ti-help-alt margin-left-10 fontcolor-five pointfont"></i>
  7. </h1>
  8. </div>
  9. </div>
  10. </section>
  11. <div class="col-md-12 col-sm-12">
  12. <div class="row deck_body" ng-controller="event_formCtrl">
  13. <div class="deck_head">
  14. <div class="deck_head_L" ng-class="{ac:tap=='SJZS'}" ng-click="active('SJZS')">
  15. <span>事件总数</span>
  16. </div>
  17. <div class="deck_head_L" ng-class="{ac:tap=='SJLX'}" ng-click="active('SJLX')">
  18. <span>事件类型</span>
  19. </div>
  20. <div class="deck_head_L" ng-class="{ac:tap=='CLRZ'}" ng-click="active('CLRZ')">
  21. <span>处理人/组</span>
  22. </div>
  23. <div class="deck_head_L" ng-class="{ac:tap=='QYDD'}" ng-click="active('QYDD')">
  24. <span>区域地点</span>
  25. </div>
  26. <div class="deck_head_L" ng-class="{ac:tap=='SJLY'}" ng-click="active('SJLY')">
  27. <span>事件来源</span>
  28. </div>
  29. </div>
  30. <div class="deck_cont">
  31. <!-- 筛选条件 -->
  32. <div class="deck_cont_head">
  33. <form class="col-xs-12 col-sm-12 form-inline P-0 clearfix">
  34. <!-- 按日/月/年统计 -->
  35. <div class="count fl" ng-if="tap=='SJZS'">
  36. <div class="dateItem dayBy" ng-click="dateItemClick('day')"
  37. ng-class="{active:dateItem == 'day'}">按日统计</div>
  38. <div class="dateItem monthBy" ng-click="dateItemClick('month')"
  39. ng-class="{active:dateItem == 'month'}">按月统计</div>
  40. <div class="dateItem yearBy" ng-click="dateItemClick('year')"
  41. ng-class="{active:dateItem == 'year'}">按年统计</div>
  42. </div>
  43. <!-- 选择日期 -->
  44. <div class="selectDate P-0 fl">
  45. <div class="selectDate-hd clearfix">
  46. <p class="fl">选择日期:</p>
  47. <div class="lastDate fr">
  48. <span ng-class="{active:searchstate=='year3'}" ng-click="chooseDate('year3')"
  49. ng-if="dateItem == 'year'">近三年</span>
  50. <strong ng-if="dateItem == 'year'">|</strong>
  51. <span ng-class="{active:searchstate=='year5'}" ng-click="chooseDate('year5')"
  52. ng-if="dateItem == 'year'">近五年</span>
  53. <span ng-class="{active:searchstate=='month3'}" ng-click="chooseDate('month3')"
  54. ng-if="dateItem == 'month'">近三月</span>
  55. <strong ng-if="dateItem == 'month'">|</strong>
  56. <span ng-class="{active:searchstate=='month6'}" ng-click="chooseDate('month6')"
  57. ng-if="dateItem == 'month'">近六月</span>
  58. <span ng-class="{active:searchstate=='week1'}" ng-click="chooseDate('week1')"
  59. ng-if="dateItem == 'day'">上一周</span>
  60. <strong ng-if="dateItem == 'day'">|</strong>
  61. <span ng-class="{active:searchstate=='month1'}" ng-click="chooseDate('month1')"
  62. ng-if="dateItem == 'day'">上一月</span>
  63. <strong ng-if="tap=='SJLY'">|</strong>
  64. <span ng-class="{active:searchstate=='year1'}" ng-click="chooseDate('year1')"
  65. ng-if="tap=='SJLY'">上一年</span>
  66. </div>
  67. </div>
  68. <div class="clearfix">
  69. <div class="form-group fl">
  70. <input type="text" ng-readonly="true" ng-change="timesChange(datepickerOptionsStart.datepickerMode)" ng-required="true" class="form-control smallline" uib-datepicker-popup="{{datepickerPopuptime}}" ng-model="starttimesModel" is-open="startOpened" ng-init="startOpened = false" ng-click="startOpen($event)" datepicker-options="datepickerOptionsStart" show-button-bar="false" />
  71. <i class="iconfont icon-yuqixinxiu form-dataIcon"></i>
  72. </div>
  73. <span class="form-line fl">一</span>
  74. <div class="form-group fl">
  75. <input type="text" ng-readonly="true" ng-change="timesChange(datepickerOptionsEnd.datepickerMode)" ng-required="true" class="form-control smallline" uib-datepicker-popup="{{datepickerPopuptime}}" ng-model="endtimesModel" is-open="endOpened" ng-init="endOpened = false" ng-click="endOpen($event)" datepicker-options="datepickerOptionsEnd" show-button-bar="false" />
  76. <i class="iconfont icon-yuqixinxiu form-dataIcon"></i>
  77. </div>
  78. </div>
  79. </div>
  80. <!-- 事件分类级别 -->
  81. <div class="selectSj P-0 fl" ng-if="tap=='SJLX'">
  82. <div class="selectSj-hd">
  83. <p>事件分类级别:</p>
  84. </div>
  85. <ui-select class="sj-select" ng-model="sjSelectedOne.value" theme="bootstrap">
  86. <ui-select-match placeholder="一级分类">
  87. {{$select.selected.name}}
  88. </ui-select-match>
  89. <ui-select-choices repeat="item in sjSelected">
  90. <div ng-bind-html="item.name"></div>
  91. </ui-select-choices>
  92. </ui-select>
  93. </div>
  94. <!-- 选择处理人/组 -->
  95. <div class="selectSj P-0 fl" ng-if="tap=='CLRZ'">
  96. <div class="selectSj-hd">
  97. <p>选择处理人/组:</p>
  98. </div>
  99. <ui-select class="sj-select" ng-model="groupSelectedOne.value" theme="bootstrap">
  100. <ui-select-match placeholder="全部">
  101. {{$select.selected.groupName}}
  102. </ui-select-match>
  103. <ui-select-choices repeat="item in groupSelected">
  104. <div ng-bind-html="item.groupName"></div>
  105. </ui-select-choices>
  106. </ui-select>
  107. </div>
  108. <!-- 区域地点 -->
  109. <div class="selectSj P-0 fl" ng-if="tap=='QYDD'">
  110. <div class="selectSj-hd">
  111. <p>区域/地点:</p>
  112. </div>
  113. <ui-select class="sj-select" ng-model="areaSelectedOne.value" theme="bootstrap">
  114. <ui-select-match placeholder="区域">
  115. {{$select.selected.name}}
  116. </ui-select-match>
  117. <ui-select-choices repeat="item in areaSelected">
  118. <div ng-bind-html="item.name"></div>
  119. </ui-select-choices>
  120. </ui-select>
  121. </div>
  122. <!-- 搜索重置 -->
  123. <div class="col-xs-3 col-sm-3 pull-right P-0 searchBtnBox">
  124. <div class="btn btn_search fl" ng-click="mdxquery()">搜索</div>
  125. <div class="btn btn_reset fl" ng-click="reload()" ng-disabled="disabledParentGroup">重置</div>
  126. <!-- <div class="btn btn_export fl" ng-click="export()" id="exportToExcel"
  127. ng-disabled="disabledParentGroup">导出</div> -->
  128. </div>
  129. </form>
  130. </div>
  131. <!-- 事件总数 -->
  132. <div class="deck_cont_body" ng-if="tap=='SJZS'">
  133. <div class="deck_cont_body_TB1" ng-if="isArrays(sjzs_list)&&sjzs_list.length>0">
  134. <div class="TB">
  135. <div class="TB_head">
  136. <div class="TB_head_L">
  137. <div class="TB_LDZH fl">
  138. <p>事件总数</p>
  139. <span>{{sjzs_num}}</span>
  140. </div>
  141. <div class="TB_ITEMS fl">
  142. <div class="TB_ITEM">
  143. <p>平均响应时间</p>
  144. <span>{{sjzs_responseTime}}</span>
  145. </div>
  146. <div class="TB_ITEM">
  147. <p>平均解决时间</p>
  148. <span>{{sjzs_resolvedTime}}</span>
  149. </div>
  150. <div class="TB_ITEM">
  151. <p>满意度</p>
  152. <span>{{sjzs_satisfactionRatio}}%</span>
  153. </div>
  154. </div>
  155. </div>
  156. </div>
  157. <div class="TB_cont">
  158. <table class="jry_table jry_table_head" cellspacing="0" cellpadding="16"
  159. style="font-weight:normal !important;table-layout:fixed">
  160. <thead>
  161. <tr>
  162. <th style="width:6%">
  163. 序号
  164. </th>
  165. <th style="width:10%" ng-click="tableSort('accdate')">
  166. <strong>
  167. 时间
  168. <em class="sort-wrap">
  169. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'accdatetop'}"></i>
  170. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'accdatebottom'}"></i>
  171. </em>
  172. </strong>
  173. </th>
  174. <th style="width:8%" ng-click="tableSort('sum')">
  175. <strong>
  176. 事件数量
  177. <em class="sort-wrap">
  178. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'sumtop'}"></i>
  179. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'sumbottom'}"></i>
  180. </em>
  181. </strong>
  182. </th>
  183. <th style="width:18%" ng-click="tableSort('responseTime')">
  184. <strong>
  185. 平均响应时间
  186. <em class="sort-wrap">
  187. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'responseTimetop'}"></i>
  188. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'responseTimebottom'}"></i>
  189. </em>
  190. </strong>
  191. </th>
  192. <th style="width:18%" ng-click="tableSort('resolvedTime')">
  193. <strong>
  194. 平均解决时间
  195. <em class="sort-wrap">
  196. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'resolvedTimetop'}"></i>
  197. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'resolvedTimebottom'}"></i>
  198. </em>
  199. </strong>
  200. </th>
  201. <th style="width:10%">
  202. 完全解决
  203. </th>
  204. <th style="width:10%">
  205. 部分解决
  206. </th>
  207. <th style="width:6%">
  208. 其他
  209. </th>
  210. <th style="width:14%" ng-click="tableSort('satisfactionRatio')">
  211. <strong>
  212. 满意度(%)
  213. <em class="sort-wrap">
  214. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'satisfactionRatiotop'}"></i>
  215. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'satisfactionRatiobottom'}"></i>
  216. </em>
  217. </strong>
  218. </th>
  219. </tr>
  220. </thead>
  221. </table>
  222. <div class="jry_table_wrap" ng-nicescroll nice-scroll-end="topEndComplete()">
  223. <table class="jry_table jry_table_body" cellspacing="0" cellpadding="16"
  224. style="font-weight:normal !important;margin-bottom: 16px;table-layout:fixed">
  225. <tbody class="tbody-hover">
  226. <tr ng-repeat="rowData in sjzs_list">
  227. <td style="width:6%">
  228. {{$index+1}}
  229. </td>
  230. <td style="width:10%">
  231. {{rowData.accdate}}
  232. </td>
  233. <td style="width:8%">
  234. {{rowData.sum}}
  235. </td>
  236. <td style="width:18%">
  237. {{rowData.responseTime}}
  238. </td>
  239. <td style="width:18%">
  240. {{rowData.resolvedTime}}
  241. </td>
  242. <td style="width:10%">
  243. {{rowData.allresult}}
  244. </td>
  245. <td style="width:10%">
  246. {{rowData.partresult}}
  247. </td>
  248. <td style="width:6%">
  249. {{rowData.otherresult}}
  250. </td>
  251. <td style="width:14%">
  252. {{rowData.satisfactionRatio}}%
  253. </td>
  254. </tr>
  255. </tbody>
  256. </table>
  257. </div>
  258. </div>
  259. </div>
  260. </div>
  261. <div class="noData" ng-if="isArrays(sjzs_list)&&sjzs_list.length==0">查询无记录</div>
  262. <div class="noData" ng-if="!isArrays(sjzs_list)"><img src="/assets/images/loading.gif" alt=""></div>
  263. </div>
  264. <!-- 事件类型 -->
  265. <div class="deck_cont_body" ng-if="tap=='SJLX'">
  266. <div class="deck_cont_body_TB1" ng-if="isArrays(sjlx_list)&&sjlx_list.length>0">
  267. <div class="TB">
  268. <div class="TB_head">
  269. <div class="TB_head_L">
  270. <div class="TB_LDZH fl">
  271. <p>事件总数</p>
  272. <span>{{sjlx_num}}</span>
  273. </div>
  274. </div>
  275. </div>
  276. <div class="TB_cont">
  277. <table class="jry_table jry_table_head" cellspacing="0" cellpadding="16"
  278. style="font-weight:normal !important;table-layout:fixed">
  279. <thead>
  280. <tr>
  281. <th style="width:6%">
  282. 序号
  283. </th>
  284. <th style="width:22%">
  285. 事件类型
  286. </th>
  287. <th style="width:10%" ng-click="tableSort('sum')">
  288. <strong>
  289. 类型数量
  290. <em class="sort-wrap">
  291. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'sumtop'}"></i>
  292. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'sumbottom'}"></i>
  293. </em>
  294. </strong>
  295. </th>
  296. <th style="width:10%">
  297. 类型占比
  298. </th>
  299. <th style="width:14%" ng-click="tableSort('responseTime')">
  300. <strong>
  301. 平均响应时间
  302. <em class="sort-wrap">
  303. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'responseTimetop'}"></i>
  304. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'responseTimebottom'}"></i>
  305. </em>
  306. </strong>
  307. </th>
  308. <th style="width:14%" ng-click="tableSort('resolvedTime')">
  309. <strong>
  310. 平均解决时间
  311. <em class="sort-wrap">
  312. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'resolvedTimetop'}"></i>
  313. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'resolvedTimebottom'}"></i>
  314. </em>
  315. </strong>
  316. </th>
  317. <th style="width:8%">
  318. 完全解决
  319. </th>
  320. <th style="width:8%">
  321. 部分解决
  322. </th>
  323. <th style="width:8%">
  324. 其他
  325. </th>
  326. </tr>
  327. </thead>
  328. </table>
  329. <div class="jry_table_wrap" ng-nicescroll>
  330. <table class="jry_table jry_table_body" cellspacing="0" cellpadding="16"
  331. style="font-weight:normal !important;margin-bottom: 16px;table-layout:fixed">
  332. <tbody class="tbody-hover">
  333. <tr
  334. ng-repeat="rowData in sjlx_list">
  335. <td style="width:6%">
  336. {{$index+1}}
  337. </td>
  338. <td style="width:22%">
  339. {{rowData.category}}
  340. </td>
  341. <td style="width:10%">
  342. {{rowData.sum}}
  343. </td>
  344. <td style="width:10%">
  345. {{rowData.proportion}}
  346. </td>
  347. <td style="width:14%">
  348. {{rowData.responseTime}}
  349. </td>
  350. <td style="width:14%">
  351. {{rowData.resolvedTime}}
  352. </td>
  353. <td style="width:8%">
  354. {{rowData.allresult}}
  355. </td>
  356. <td style="width:8%">
  357. {{rowData.partresult}}
  358. </td>
  359. <td style="width:8%">
  360. {{rowData.otherresult}}
  361. </td>
  362. </tr>
  363. </tbody>
  364. </table>
  365. </div>
  366. </div>
  367. </div>
  368. </div>
  369. <div class="noData" ng-if="isArrays(sjlx_list)&&sjlx_list.length==0">查询无记录</div>
  370. <div class="noData" ng-if="!isArrays(sjlx_list)"><img src="/assets/images/loading.gif" alt=""></div>
  371. </div>
  372. <!-- 处理人/组 -->
  373. <div class="deck_cont_body" ng-if="tap=='CLRZ'">
  374. <div class="deck_cont_body_TB1" ng-if="isArrays(clrz_list)&&clrz_list.length>0">
  375. <div class="TB">
  376. <div class="TB_head">
  377. <div class="TB_head_L">
  378. <div class="TB_LDZH fl">
  379. <p>事件总数</p>
  380. <span>{{clrz_num}}</span>
  381. </div>
  382. <div class="TB_ITEMS fl">
  383. <div class="TB_ITEM">
  384. <p>平均响应时间</p>
  385. <span>{{clrz_responseTime}}</span>
  386. </div>
  387. <div class="TB_ITEM">
  388. <p>平均解决时间</p>
  389. <span>{{clrz_resolvedTime}}</span>
  390. </div>
  391. <div class="TB_ITEM">
  392. <p>满意度</p>
  393. <span>{{clrz_satisfactionRatio}}%</span>
  394. </div>
  395. </div>
  396. </div>
  397. </div>
  398. <div class="TB_cont">
  399. <table class="jry_table jry_table_head" cellspacing="0" cellpadding="16"
  400. style="font-weight:normal !important;table-layout:fixed">
  401. <thead>
  402. <tr>
  403. <th style="width:6%" rowspan="2">
  404. 序号
  405. </th>
  406. <th style="width:7%" rowspan="2">
  407. 处理{{tableGroupSelectedOne == 1?'组':'人'}}
  408. </th>
  409. <th style="width:7%" rowspan="2" ng-click="tableSort('sum')">
  410. <strong>
  411. 事件数量
  412. <em class="sort-wrap">
  413. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'sumtop'}"></i>
  414. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'sumbottom'}"></i>
  415. </em>
  416. </strong>
  417. </th>
  418. <th style="width:7%" rowspan="2">
  419. 事件占比
  420. </th>
  421. <th style="width:32%" colspan="4">
  422. 按时响应
  423. </th>
  424. <th style="width:32%" colspan="4">
  425. 按时解决
  426. </th>
  427. <th style="width:7%" rowspan="2">
  428. 满意度(%)
  429. </th>
  430. </tr>
  431. <tr>
  432. <th style="width:8%">
  433. 按时响应
  434. </th>
  435. <th style="width:8%">
  436. 超时响应
  437. </th>
  438. <th style="width:8%">
  439. 平均响应时间
  440. </th>
  441. <th style="width:8%">
  442. 超时响应占比
  443. </th>
  444. <th style="width:8%">
  445. 按时解决
  446. </th>
  447. <th style="width:8%">
  448. 超时解决
  449. </th>
  450. <th style="width:8%">
  451. 平均解决时间
  452. </th>
  453. <th style="width:8%">
  454. 超时解决占比
  455. </th>
  456. </tr>
  457. </thead>
  458. </table>
  459. <div class="jry_table_wrap jry_table_wrap2" ng-nicescroll>
  460. <table class="jry_table jry_table_body" cellspacing="0" cellpadding="16"
  461. style="font-weight:normal !important;margin-bottom: 16px;table-layout:fixed">
  462. <tbody class="tbody-hover">
  463. <tr
  464. ng-repeat="rowData in clrz_list">
  465. <td style="width:6%">
  466. {{$index+1}}
  467. </td>
  468. <td style="width:7%">
  469. {{rowData.name}}
  470. </td>
  471. <td style="width:7%">
  472. {{rowData.sum}}
  473. </td>
  474. <td style="width:7%">
  475. {{rowData.proportion}}
  476. </td>
  477. <td style="width:8%">
  478. {{rowData.responseOnTime}}
  479. </td>
  480. <td style="width:8%">
  481. {{rowData.responseOverTime}}
  482. </td>
  483. <td style="width:8%">
  484. {{rowData.responseTime}}
  485. </td>
  486. <td style="width:8%">
  487. {{rowData.overTimeProportion}}%
  488. </td>
  489. <td style="width:8%">
  490. {{rowData.resolvedOnTime}}
  491. </td>
  492. <td style="width:8%">
  493. {{rowData.resolvedOverTime}}
  494. </td>
  495. <td style="width:8%">
  496. {{rowData.resolvedTime}}
  497. </td>
  498. <td style="width:8%">
  499. {{rowData.resolvedTimeProportion}}%
  500. </td>
  501. <td style="width:7%">
  502. {{rowData.satisfactionRatio}}%
  503. </td>
  504. </tr>
  505. </tbody>
  506. </table>
  507. </div>
  508. </div>
  509. </div>
  510. </div>
  511. <div class="noData" ng-if="isArrays(clrz_list)&&clrz_list.length==0">查询无记录</div>
  512. <div class="noData" ng-if="!isArrays(clrz_list)"><img src="/assets/images/loading.gif" alt=""></div>
  513. </div>
  514. <!-- 区域地点 -->
  515. <div class="deck_cont_body" ng-if="tap=='QYDD'">
  516. <div class="deck_cont_body_TB1" ng-if="isArrays(qydd_list)&&qydd_list.length>0">
  517. <div class="TB">
  518. <div class="TB_head">
  519. <div class="TB_head_L">
  520. <div class="TB_LDZH fl">
  521. <p>事件总数</p>
  522. <span>{{qydd_num}}</span>
  523. </div>
  524. </div>
  525. </div>
  526. <div class="TB_cont">
  527. <table class="jry_table jry_table_head" cellspacing="0" cellpadding="16"
  528. style="font-weight:normal !important;table-layout:fixed">
  529. <thead>
  530. <tr>
  531. <th style="width:10%">
  532. 序号
  533. </th>
  534. <th style="width:30%">
  535. 区域/地点
  536. </th>
  537. <th style="width:30%" ng-click="tableSort('sum')">
  538. <strong>
  539. 事件数量
  540. <em class="sort-wrap">
  541. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'sumtop'}"></i>
  542. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'sumbottom'}"></i>
  543. </em>
  544. </strong>
  545. </th>
  546. <th style="width:30%">
  547. 事件占比
  548. </th>
  549. </tr>
  550. </thead>
  551. </table>
  552. <div class="jry_table_wrap" ng-nicescroll>
  553. <table class="jry_table jry_table_body" cellspacing="0" cellpadding="16"
  554. style="font-weight:normal !important;margin-bottom: 16px;table-layout:fixed">
  555. <tbody class="tbody-hover">
  556. <tr
  557. ng-repeat="rowData in qydd_list">
  558. <td style="width:10%">
  559. {{$index+1}}
  560. </td>
  561. <td style="width:30%">
  562. {{rowData.name}}
  563. </td>
  564. <td style="width:30%">
  565. {{rowData.sum}}
  566. </td>
  567. <td style="width:30%">
  568. {{rowData.proportion}}
  569. </td>
  570. </tr>
  571. </tbody>
  572. </table>
  573. </div>
  574. </div>
  575. </div>
  576. </div>
  577. <div class="noData" ng-if="isArrays(qydd_list)&&qydd_list.length==0">查询无记录</div>
  578. <div class="noData" ng-if="!isArrays(qydd_list)"><img src="/assets/images/loading.gif" alt=""></div>
  579. </div>
  580. <!-- 事件来源 -->
  581. <div class="deck_cont_body" ng-if="tap=='SJLY'">
  582. <div class="deck_cont_body_TB1" ng-if="isArrays(sjly_list)&&sjly_list.length>0">
  583. <div class="TB">
  584. <div class="TB_head">
  585. <div class="TB_head_L">
  586. <div class="TB_LDZH fl">
  587. <p>事件总数</p>
  588. <span>{{sjly_num}}</span>
  589. </div>
  590. </div>
  591. </div>
  592. <div class="TB_cont">
  593. <table class="jry_table jry_table_head" cellspacing="0" cellpadding="16"
  594. style="font-weight:normal !important;table-layout:fixed">
  595. <thead>
  596. <tr>
  597. <th style="width:10%">
  598. 序号
  599. </th>
  600. <th style="width:30%">
  601. 事件来源
  602. </th>
  603. <th style="width:30%" ng-click="tableSort('sum')">
  604. <strong>
  605. 事件数量
  606. <em class="sort-wrap">
  607. <i class="sortItem iconfont icon-xiangshang" ng-class="{active:sortActive == 'sumtop'}"></i>
  608. <i class="sortItem iconfont icon-xiangxia" ng-class="{active:sortActive == 'sumbottom'}"></i>
  609. </em>
  610. </strong>
  611. </th>
  612. <th style="width:30%">
  613. 事件来源占比
  614. </th>
  615. </tr>
  616. </thead>
  617. </table>
  618. <div class="jry_table_wrap" ng-nicescroll>
  619. <table class="jry_table jry_table_body" cellspacing="0" cellpadding="16"
  620. style="font-weight:normal !important;margin-bottom: 16px;table-layout:fixed">
  621. <tbody class="tbody-hover">
  622. <tr
  623. ng-repeat="rowData in sjly_list">
  624. <td style="width:10%">
  625. {{$index+1}}
  626. </td>
  627. <td style="width:30%">
  628. {{rowData.name}}
  629. </td>
  630. <td style="width:30%">
  631. {{rowData.sum}}
  632. </td>
  633. <td style="width:30%">
  634. {{rowData.proportion}}
  635. </td>
  636. </tr>
  637. </tbody>
  638. </table>
  639. </div>
  640. </div>
  641. </div>
  642. </div>
  643. <div class="noData" ng-if="isArrays(sjly_list)&&sjly_list.length==0">查询无记录</div>
  644. <div class="noData" ng-if="!isArrays(sjly_list)"><img src="/assets/images/loading.gif" alt=""></div>
  645. </div>
  646. </div>
  647. </div>
  648. </div>
  649. </div>
  650. <style>
  651. p {
  652. margin-bottom: 0;
  653. }
  654. em,
  655. i,
  656. strong {
  657. font-style: normal;
  658. font-weight: normal;
  659. }
  660. .searchBtnBox {
  661. padding-top: 30px;
  662. }
  663. .deck_body {
  664. height: 100%;
  665. background: #f9f9f9;
  666. padding: 16px;
  667. }
  668. .deck_head {
  669. height: 50px;
  670. width: 100%
  671. }
  672. .deck_head .deck_head_L {
  673. float: left;
  674. width: 20%;
  675. height: 100%;
  676. text-align: center;
  677. border-top: 5px solid #EAEAEA;
  678. color: #717171;
  679. font-size: 14px;
  680. line-height: 45px;
  681. cursor: pointer;
  682. }
  683. .deck_head .deck_head_R {
  684. float: left;
  685. width: 50%;
  686. height: 100%;
  687. text-align: center;
  688. border-top: 5px solid #EAEAEA;
  689. color: #717171;
  690. font-size: 14px;
  691. line-height: 45px;
  692. cursor: pointer;
  693. }
  694. .ac {
  695. background: #E6EEF4;
  696. color: #353535 !important;
  697. border-top: 5px solid #79A3C4 !important;
  698. }
  699. .deck_cont {
  700. width: 100%;
  701. height: 100%;
  702. padding: 16px;
  703. background: #fff;
  704. border-width: 0px 1px 1px 1px;
  705. border-width: 0px 1px 1px 1px;
  706. border-color: #EAEAEA;
  707. border-style: solid;
  708. }
  709. .deck_cont_head {
  710. border-bottom: 1px solid #EAEAEA;
  711. padding: 16px 10px 16px 10px;
  712. zoom: 1;
  713. }
  714. .deck_cont_head::after {
  715. content: "";
  716. display: block;
  717. height: 0;
  718. clear: both;
  719. visibility: hidden;
  720. }
  721. .P-0 {
  722. padding-left: 0px;
  723. padding-right: 0px;
  724. }
  725. .P-T-15 {
  726. padding-top: 16px;
  727. }
  728. .form-control.smallline {
  729. width: 120px;
  730. height: 34px;
  731. padding-left: 8px;
  732. padding-right: 8px;
  733. color: #999;
  734. font-size: 12px;
  735. }
  736. .deck_cont_body_TB1 {
  737. padding-top: 16px;
  738. }
  739. .deck_cont_body_TB2 {
  740. padding-top: 16px;
  741. }
  742. .TB_head {
  743. width: 100%;
  744. height: 54px
  745. }
  746. .TB_head_L {
  747. float: left;
  748. height: 100%;
  749. border-left: 8px solid #005395;
  750. padding: 0px 16px;
  751. }
  752. .TB_head_R {
  753. float: left;
  754. height: 100%;
  755. border-left: 8px solid #49A9EE;
  756. padding: 0px 16px;
  757. }
  758. .TB_ITEM {
  759. float: left;
  760. margin-right: 16px;
  761. }
  762. .MR_15 {
  763. margin-right: 16px;
  764. }
  765. .TB_ITEM p {
  766. font-size: 12px;
  767. color: #666
  768. }
  769. .TB_ITEM span {
  770. font-size: 24px;
  771. color: #333;
  772. line-height: 1.2;
  773. }
  774. .TB_LDZH p {
  775. font-size: 14px;
  776. color: #666
  777. }
  778. .TB_LDZH span {
  779. font-size: 32px;
  780. color: #333;
  781. line-height: 1.2;
  782. }
  783. .TB_ZHL {
  784. height: 100%;
  785. padding-top: 22px;
  786. }
  787. .TB_ZHL p {
  788. font-size: 12px;
  789. color: #7B7B7B
  790. }
  791. .TB_ZHL span {
  792. font-weight: 600;
  793. font-size: 22px;
  794. }
  795. .TB_cont {
  796. height: 350px;
  797. width: 100%;
  798. /* overflow-x: hidden; */
  799. /* overflow-y: auto; */
  800. }
  801. .TB_cont #ldzh {
  802. height: 100%;
  803. }
  804. .TB_cont #sjfx {
  805. height: 100%;
  806. }
  807. .TB_cont #sjqs {
  808. height: 100%;
  809. }
  810. .TB_cont #sjpd {
  811. height: 100%;
  812. }
  813. .TB_head_R1 {
  814. border-color: #005395;
  815. }
  816. .TB_LB {
  817. height: 100%;
  818. width: 100%;
  819. border: 1px solid #EAEAEA;
  820. }
  821. .TB_LB_head {
  822. height: 50px;
  823. background: #FAFAFA;
  824. border-bottom: 1px solid #EAEAEA;
  825. color: #333;
  826. font-size: 14px;
  827. }
  828. .TB_LB_body {
  829. height: 40px;
  830. border-bottom: 1px solid #EAEAEA;
  831. color: #7B7B7B;
  832. }
  833. .TB_LB_item {
  834. height: 100%;
  835. float: left;
  836. text-align: center;
  837. line-height: 40px;
  838. border-right: 1px solid #EAEAEA;
  839. }
  840. .TB_LB_head .TB_LB_item {
  841. line-height: 50px;
  842. font-weight: 600;
  843. }
  844. .btn-default {
  845. height: 30px;
  846. }
  847. .form-line {
  848. height: 34px;
  849. line-height: 34px;
  850. padding-left: 8px;
  851. padding-right: 8px;
  852. color: #979797;
  853. }
  854. .form-dataIcon {
  855. color: #ddd;
  856. font-size: 16px;
  857. position: absolute;
  858. right: 8px;
  859. top: 50%;
  860. transform: translateY(-50%);
  861. }
  862. .selectDate {
  863. width: 270px;
  864. }
  865. .selectDate .selectDate-hd {
  866. margin-bottom: 8px;
  867. }
  868. .selectDate .lastDate {
  869. color: #ddd;
  870. }
  871. .selectDate .lastDate span {
  872. margin-left: 4px;
  873. margin-right: 4px;
  874. color: #005395;
  875. font-size: 12px;
  876. cursor: pointer;
  877. }
  878. .selectDate .lastDate span.active {
  879. border-bottom: 1px solid #005395;
  880. }
  881. .selectDate .lastDate span:last-child {
  882. margin-right: 0;
  883. }
  884. .searchBtnBox .btn {
  885. width: 60px;
  886. height: 34px;
  887. line-height: 26px;
  888. margin: 0 0 0 8px;
  889. }
  890. .btn_search {
  891. background-color: #005395;
  892. }
  893. .btn_reset {
  894. background-color: #fff;
  895. border: 1px solid #ddd;
  896. }
  897. .btn_reset:hover {
  898. border: 1px solid #999;
  899. color: #666;
  900. }
  901. .btn_export {
  902. padding: 3px 16px;
  903. background-color: #e6eef4;
  904. border: 1px #005395 solid;
  905. color: #005395;
  906. }
  907. .btn_export:hover {
  908. color: #79a3c4;
  909. border-color: #79a3c4;
  910. }
  911. .TB_ITEMS {
  912. margin-left: 24px;
  913. margin-top: 10px;
  914. }
  915. /* table */
  916. .jry_table_wrap {
  917. margin-top: -1px;
  918. height: 311px;
  919. overflow-x: hidden;
  920. overflow-y: auto;
  921. }
  922. .jry_table_wrap2 {
  923. height: 280px;
  924. }
  925. .jry_table {
  926. border: 1px solid #ddd;
  927. text-align: center;
  928. width: 100%;
  929. position: relative;
  930. font-size: 13px;
  931. }
  932. .jry_table_head {
  933. margin-top: 16px;
  934. background-color: #f9f9f9;
  935. }
  936. .jry_table_head th {
  937. cursor: pointer;
  938. }
  939. .jry_table_head * {
  940. font-weight: bold;
  941. }
  942. .jry_table_body .tbody-hover {
  943. width: 100%;
  944. }
  945. .jry_table th,
  946. .jry_table td {
  947. word-wrap: break-word;
  948. padding: 6px 2px;
  949. border: 1px solid #ddd;
  950. }
  951. .jry_table th {
  952. text-align: center;
  953. }
  954. .jry_table strong {
  955. position: relative;
  956. }
  957. .sort-wrap {
  958. position: absolute;
  959. right: -12px;
  960. top: 50%;
  961. transform: translateY(-50%);
  962. width: 12px;
  963. display: flex;
  964. flex-direction: column;
  965. justify-content: center;
  966. line-height: normal;
  967. }
  968. .sortItem {
  969. font-size: 12px;
  970. color: #ddd;
  971. height: 12px;
  972. cursor: pointer;
  973. position: absolute;
  974. }
  975. .sortItem.active {
  976. color: #999;
  977. }
  978. .sortItem.icon-xiangshang {
  979. bottom: -2px;
  980. }
  981. .sortItem.icon-xiangxia {
  982. top: -2px;
  983. }
  984. /* 按年月日统计 */
  985. .count {
  986. margin-top: 28px;
  987. margin-right: 16px;
  988. }
  989. .count .dateItem {
  990. width: 80px;
  991. height: 34px;
  992. text-align: center;
  993. line-height: 34px;
  994. border: 1px solid #ddd;
  995. float: left;
  996. cursor: pointer;
  997. }
  998. .count .dateItem:hover {
  999. border-color: #e6eef4;
  1000. background-color: #e6eef4;
  1001. }
  1002. .count .dateItem.active {
  1003. border-color: #005395;
  1004. background-color: #e6eef4;
  1005. color: #005395;
  1006. }
  1007. /* 事件分类级别 */
  1008. .selectSj {
  1009. width: 258px;
  1010. margin-left: 16px;
  1011. }
  1012. .selectSj .selectSj-hd {
  1013. margin-bottom: 8px;
  1014. }
  1015. .selectSj .sj-select {
  1016. width: 100%;
  1017. }
  1018. .selectSj .sj-select .ui-select-match-text {
  1019. color: #999;
  1020. }
  1021. /* 查询无记录 */
  1022. .noData{
  1023. font-size: 16px;
  1024. text-align: center;
  1025. font-weight: bold;
  1026. margin-top: 16px;
  1027. width: 100%;
  1028. min-height: 420px;
  1029. }
  1030. .form-control.smallline{
  1031. background-color: #fff;
  1032. }
  1033. </style>