TraceLog.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <!--
  2. 作者:yangzhijie1488@163.com
  3. 时间:2017-12-12
  4. 描述:追踪日志
  5. -->
  6. <template>
  7. <div>
  8. <div class="panel panel-default">
  9. <div class="panel-heading dashboard-header" @click.self="collapse()">
  10. &nbsp;&nbsp;动态信息
  11. <div class="pull-left">
  12. <span
  13. class="glyphicon"
  14. :class="{
  15. 'glyphicon-triangle-bottom': !isCollapse,
  16. 'glyphicon glyphicon-triangle-top': isCollapse,
  17. }"
  18. />
  19. </div>
  20. </div>
  21. <div v-if="isCollapse == true" id="trace-content" class="container-fluid">
  22. <div v-for="item in traceLogs" :key="item.id">
  23. <h5>
  24. {{ item.dateTime }} &nbsp;{{ item.operatorUserName }}
  25. <div v-html="item.content" />
  26. </h5>
  27. </div>
  28. </div>
  29. </div>
  30. </div>
  31. </template>
  32. <script>
  33. var Common = require('../common/Common.js');
  34. export default {
  35. components: {
  36. Common,
  37. },
  38. props: ['traceId'],
  39. data: function () {
  40. return {
  41. traceLogs: [],
  42. isCollapse: false,
  43. };
  44. },
  45. watch: {
  46. traceId: function (curVal, oldVal) {
  47. if (curVal != undefined && this.isCollapse == true) {
  48. this.getTraceLog();
  49. }
  50. },
  51. },
  52. mounted: function () {
  53. if (this.traceId != undefined && this.isCollapse == true) {
  54. this.getTraceLog();
  55. }
  56. },
  57. methods: {
  58. /**
  59. * 控制展开闭合
  60. * @return {void}
  61. */
  62. collapse: function () {
  63. var _self = this;
  64. _self.isCollapse = !_self.isCollapse;
  65. _self.getTraceLog();
  66. },
  67. /**
  68. * 根据追踪单Id获取追踪日志信息
  69. * @author GuoZhiBo 20171201
  70. */
  71. getTraceLog: function () {
  72. var _self = this;
  73. $.ajax({
  74. url: Common.getApiURL('TraceLogResource/listByTraceId'),
  75. type: 'get',
  76. dataType: 'json',
  77. async: false,
  78. data: {
  79. traceId: _self.traceId,
  80. },
  81. beforeSend: function (request) {
  82. Common.addTokenToRequest(request);
  83. },
  84. success: function (data) {
  85. _self.traceLogs = data;
  86. },
  87. error: function (XMLHttpRequest, textStatus, errorThrown) {
  88. Common.processException(XMLHttpRequest, textStatus, errorThrown);
  89. },
  90. });
  91. },
  92. },
  93. };
  94. </script>
  95. <style>
  96. </style>