Răsfoiți Sursa

feat:首页滚动未读消息、头部消息条数等接口联调

zhangsiya 2 ani în urmă
părinte
comite
5806a5f5db

+ 10 - 3
src/web/staticres/css/pc/index.css

@@ -121,11 +121,14 @@
     align-items: center;
 }
 .jy-index .list-msg .l-msg .words {
-    width:50%;
+  width:calc(50% - 16px);
   display: flex;
   flex-direction: initial;
   align-items: center;
 }
+.jy-index .list-msg .l-msg .words:nth-of-type(1){
+    margin-right:32px;
+}
 
 .jy-index .list-msg .l-msg .words .icon_voice {
   margin-right: 4px;
@@ -133,13 +136,11 @@
   height: 24px;
 }
 
-
 .jy-index .list-msg .r-msg {
   width: 20px;
   height: 20px;
   cursor: pointer;
 }
-
 .jy-index .list-msg .l-msg .words i {
   width: 6px;
   height: 6px;
@@ -153,13 +154,19 @@
   font-weight: 400;
   color: #1D1D1D;
   line-height: 24px;
+  white-space: nowrap;
 }
 
 .jy-index .list-msg .l-msg .words span {
+    /*display: inline-block;*/
+    /*max-width:390px;*/
   font-size: 14px;
   color: #1D1D1D;
   line-height: 24px;
   margin: 0 16px;
+  overflow: hidden;
+  text-overflow: ellipsis;
+  white-space: nowrap;
 }
 
 .jy-index .list-msg .l-msg .words span:hover {

+ 16 - 12
src/web/staticres/js/pc-message-new.js

@@ -18,24 +18,28 @@ var vmMesg = new Vue({
   methods: {
     getList: function() {
       var _this = this
-        // /messageCenter/unreadMessages
+      var params =  {
+        isColumn: false,
+        isColumnNewMsg: false,
+        isMsgList: true,
+        msgType: -1,
+        isRead: 0,
+        offset: 1,
+        size: 20
+      }
       $.ajax({
+        url: '/messageCenter/MessageList',
         type: 'POST',
-        url: '/jymessageCenter/messageList',
-        data: {
-          needFilter: 1,
-          msgType: '0',
-          isRead: '-1',
-          offset: 1,
-          pageSize: 20
-        },
+        data: JSON.stringify(params),
+        dataType: 'json',
+        headers: {'Content-Type': 'application/json'},
         success:function (res) {
           if (res.data) {
-            var resList = res.data.list || []
-            _this.totalNum = res.data.total || 0
+            var resList = res.data || []
+            _this.totalNum = res.unread || 0
             resList.forEach(function(v) {
               v.msg_type_text = _this.msgType(v.msg_type)
-              v.createtime = dateMatter(v.createtime)
+              v.createtime = dateTime(v.createtime, 'hh:mm')
             });
             // 封装成二维数组(用于轮播两条为单位)
             var arr = []

+ 44 - 15
src/web/templates/common/pchead.html

@@ -125,20 +125,6 @@
                    class="jy-nav-msg msg-img2" alt=""/>
               <span class="tips" id="tips"></span>
             </a>
-                <!-- 未读消息弹窗-->
-<!--            <div class="jy-list-msg msg-style">-->
-<!--              <div class="msg-par">-->
-<!--                <div class="m-head">-->
-<!--                  <span class="spa">消息中心<i>( <em id="noNum">0</em> 条未读 )</i></span>-->
-<!--                  <img class="imgs"-->
-<!--                       src='{{Msg "seo" "cdn"}}/images/pc/guan.png?v={{Msg "seo" "version"}}'>-->
-<!--                  <img id="imgActive" class="imgs1"-->
-<!--                       src='{{Msg "seo" "cdn"}}/images/pc/guan_active.png?v={{Msg "seo" "version"}}'>-->
-<!--                </div>-->
-<!--                <div class="m-ul"></div>-->
-<!--                <div class="m-foot"><a href="/swordfish/frontPage/messageCenter/sess/index">查看全部</a></div>-->
-<!--              </div>-->
-<!--            </div>-->
           </li>
           <li class="slider"></li>
         </ul>
@@ -163,7 +149,50 @@
 {{include "/common/pc-login-dialog.html"}}
 
 <script src='{{Msg "seo" "cdn"}}/js/dateFunc.js?v={{Msg "seo" "version"}}'></script>
-<script src='{{Msg "seo" "cdn"}}/js/message.js?v={{Msg "seo" "version"}}'></script>
+<!--<script src='{{Msg "seo" "cdn"}}/js/message.js?v={{Msg "seo" "version"}}'></script>-->
+<script>
+  // 消息列表获取未读消息
+  function Message() {
+    // 初始化
+    this.init = function () {
+      if (!loginflag) return
+      $('#noticed').show()
+      this.getMessageList()
+    }
+    // 悬浮窗列表数据请求
+    this.getMessageList = function () {
+
+      var params =  {
+        isColumn: false,
+        isColumnNewMsg: false,
+        isMsgList: false,
+        msgType: -1,
+        isRead: 0,
+        offset: 1,
+        size: 0
+      }
+      $.ajax({
+        url: '/messageCenter/MessageList',
+        type: 'POST',
+        data: JSON.stringify(params),
+        dataType: 'json',
+        headers: {'Content-Type': 'application/json'},
+        success:function (res) {
+          if (res.unread) {
+            var unreadNum = res.unread;
+            $('#tips').show();
+            $('#tips').html(unreadNum > 99 ? '99+' : unreadNum);
+          } else {
+            $('#tips').hide();
+          }
+        },
+        error:function () {}
+      })
+    }
+
+    this.init()
+  }
+</script>
 <script src='{{Msg "seo" "cdn"}}/public-pc/js/header-nav.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Msg "seo" "cdn"}}/common-module/ad/js/index.js?v={{Msg "seo" "version"}}'></script>
 

+ 2 - 3
src/web/templates/pc/index.html

@@ -79,10 +79,9 @@
                 <el-carousel :interval="10000" arrow="never" :autoplay="lists.length > 1" indicator-position="none">
                     <el-carousel-item class="l-msg" v-for="(tempList, index) in lists" :key="'msg_' + index">
                         <div class="words" v-for="item in tempList" :key="item.id">
-<!--                            v-show="item.isRead == 0"-->
                             <img class="icon_voice" src="/images/pc/icon_voice.png"  />
-                            <h3 :class="{isActive: item.isRead == 1}">${item.msg_type_text}</h3>
-                            <span @click="titleGoto(item)">${item.title}</span>
+                            <h3>${item.msg_type_text}</h3>
+                            <span class="title" @click="titleGoto(item)">${item.title}</span>
                             <p>${item.createtime}</p>
                         </div>
                     </el-carousel-item>