msg.html 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. <!DOCTYPE html>
  2. <html class="">
  3. <!--STATUS OK-->
  4. <head>
  5. <meta name="referrer" content="always" />
  6. <meta charset='utf-8' />
  7. <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
  8. <meta http-equiv="x-dns-prefetch-control" content="on">
  9. <meta name="description" content="">
  10. <meta name="format-detection" content="telephone=no" />
  11. <link rel="stylesheet" type="text/css" href="../css/api.css" />
  12. <link rel="stylesheet" type="text/css" href="../css/aui-win.css" />
  13. <link rel="stylesheet" type="text/css" href="../css/aui.css" />
  14. <link rel="stylesheet" type="text/css" href="css/vant-ui.css" />
  15. <link rel="stylesheet" type="text/css" href="css/iconfont.css">
  16. <link rel="stylesheet" type="text/css" href="css/main.css" />
  17. <script type="text/javascript" src="../script/aui-tab.js"></script>
  18. <script src="js/vue.js"></script>
  19. <script src="js/vant-ui.js"></script>
  20. <script src="js/main.js"></script>
  21. <title></title>
  22. </head>
  23. <style>
  24. .aui-bar {
  25. text-align: center;
  26. height: 1.5rem;
  27. }
  28. .aui-searchbar {
  29. background-color: #00a0ea;
  30. }
  31. .tag {
  32. width: 1rem;
  33. height: 1rem;
  34. background-color: #FC3228;
  35. border-radius: 50%;
  36. color: #fff;
  37. display: flex;
  38. align-items: center;
  39. justify-content: center;
  40. font-size: .5rem;
  41. }
  42. </style>
  43. <body>
  44. <div id="app">
  45. <header class="aui-bar aui-bar-nav" id="aui-header">
  46. <!-- <div class="aui-searchbar" id="search">
  47. <div class="aui-searchbar-input aui-border-radius">
  48. <i class="aui-iconfont aui-icon-search"></i>
  49. <input type="search" placeholder="请输入搜索内容" id="search-input">
  50. <div class="aui-searchbar-clear-btn">
  51. <i class="aui-iconfont aui-icon-close"></i>
  52. </div>
  53. </div>
  54. <div class="aui-searchbar-btn" tapmode>取消</div>
  55. </div> -->
  56. <div>
  57. <a class="aui-btn aui-btn-info aui-pull-left" tapmode onclick="closeWin()"></a>
  58. <div class="aui-title" id="aui-title">
  59. 消息中心
  60. </div>
  61. <a class="aui-btn aui-btn-info aui-pull-right" tapmode v-on:click="inSearchPage()">
  62. <!-- <span class="aui-iconfont aui-icon-search"></span> -->
  63. </a>
  64. </div>
  65. </header>
  66. <div class="mescroll-touch-y mescroll" id="mescroll" style="position: relative;">
  67. <div class="aui-card-list">
  68. <div class="aui-card-list-content" >
  69. <ul class="aui-list aui-media-list" v-for="(item,index) in lists" :key="index">
  70. <li class="aui-list-item aui-list-item-middle" v-on:click="openWin(item)" style="border-top:none">
  71. <div class="aui-media-list-item-inner">
  72. <div class="aui-list-item-media" style="width: 3rem;">
  73. <img src="./img/images/imgs.png" class="aui-img-round">
  74. </div>
  75. <div class="aui-list-item-inner">
  76. <div class="aui-list-item-text">
  77. <div class="aui-list-item-title aui-font-size-14">{{item.sendUserName}}</div>
  78. <div class="aui-list-item-right">{{item.gatTime|formatDate}}</div>
  79. </div>
  80. <div class="aui-list-item-text">
  81. <div style="display:flex;">
  82. <p style="overflow: hidden;text-overflow:ellipsis;white-space: nowrap;width:13rem">
  83. 【{{item.msgTitle}}】{{item.msgContent|formatText}}
  84. </p>
  85. </div>
  86. <div class="tag" v-if="item.msgState==0">{{item.unread}}</div>
  87. </div>
  88. </div>
  89. </div>
  90. </li>
  91. </ul>
  92. </div>
  93. </div>
  94. </div>
  95. </div>
  96. </body>
  97. <link rel="stylesheet" href="./mescroll/mescroll.min.css">
  98. <script type="text/javascript" src="./js/qrcode.min.js"></script>
  99. <script type="text/javascript" src="../script/aui-scroll.js"></script>
  100. <script type="text/javascript" src="./mescroll/mescroll.min.js"></script>
  101. <script type="text/javascript" src="../script/api.js"></script>
  102. <script type="text/javascript" src="../script/httpRequest.js"></script>
  103. <script type="text/javascript" src="../script/vue_plugins.js"></script>
  104. <script type="text/javascript">
  105. function closeWin() {
  106. api.closeWin({});
  107. }
  108. apiready = function() {
  109. api.parseTapmode();
  110. var header = $api.byId('aui-header');
  111. $api.fixStatusBar(header);
  112. new Vue({
  113. el: '#app',
  114. data: {
  115. lists: []
  116. },
  117. filters: {
  118. formatDate: function(time) {
  119. var now = new Date()
  120. var year = now.getFullYear();
  121. var month = now.getMonth() + 1;
  122. var day = now.getDate();
  123. if (month < 10) {
  124. month = "0" + month;
  125. }
  126. if (day < 10) {
  127. day = "0" + day;
  128. }
  129. nowDay = year + "-" + month + "-" + day
  130. if (nowDay != time.substring(0, 10)) {
  131. return time.substring(0, 10)
  132. } else {
  133. return time.substring(11, 19)
  134. }
  135. },
  136. formatText: function(text) {
  137. return text.replace(/<[^>]+>/g," ")
  138. }
  139. },
  140. methods: {
  141. init: function() {
  142. this.storeId = $api.getStorage('userid');
  143. this.getMsg();
  144. var _this = this;
  145. this.addEvent("refushMsg", function() {
  146. _this.storeId = $api.getStorage('userid');
  147. _this.getMsg();
  148. })
  149. },
  150. getMsg: function() {
  151. var _this = this,
  152. url = "getMsg",
  153. data = {
  154. "acceptUserId": this.storeId,
  155. "type": 'body',
  156. "url": 'json'
  157. }
  158. this.$post(url, data, function(ret) {
  159. if (ret.code == 0) {
  160. _this.lists = ret.category;
  161. }
  162. });
  163. },
  164. openWin: function(item) {
  165. this.goWin('msgDetails', 'msgDetails.html', {
  166. sendUserId: item.sendUserId
  167. });
  168. }
  169. },
  170. mounted: function() {
  171. this.init();
  172. }
  173. })
  174. }
  175. </script>
  176. </html>