Browse Source

语音播报增加核心观点

yujinwen 4 weeks ago
parent
commit
87e3a04bef
3 changed files with 74 additions and 0 deletions
  1. 24 0
      src/views/voice/Detail.vue
  2. 25 0
      src/views/voice/List.vue
  3. 25 0
      src/views/voice/Mine.vue

+ 24 - 0
src/views/voice/Detail.vue

@@ -266,6 +266,10 @@ const handleVoiceRecord=async (item)=>{
     <div class="voice-detail-page" v-if="!noAuth&&info">
         <h2 class="title">{{info.BroadcastName}}</h2>
         <p class="publish-time">发布时间:{{moment(info.PublishTime).format('YYYY-MM-DD HH:mm:ss')}}</p>
+        <div class="argument" v-if="info.CentralArguments">
+            <div class="btn">核心观点</div>
+            <div class="argument_text">{{info.CentralArguments}}</div>
+        </div>
         <div class="flex bot-box">
             <div class="flex audio-box" @click.stop="handlePlay(info)">
                 <div :class="['icon',($store.state.audioData.voiceId==info.BroadcastId)&&!$store.state.audioData.paused?'active':'']"></div>
@@ -422,5 +426,25 @@ const handleVoiceRecord=async (item)=>{
             margin-bottom: 30px;
         }
     }
+    .argument{
+        margin: 10px 0;
+        position: relative;
+        .btn{
+            background: linear-gradient(90deg, #201E1C 0%, #625A4E 100%);
+            color: #F3A52F;
+            font-size: 12px;
+            width: 60px;
+            line-height: 21px;
+            border-radius: 10px;
+            text-align: center;
+            float: left;
+            position: absolute;
+            left: 0;
+            top: 0;
+        }
+        .argument_text{
+            text-indent: 4em;
+        }
+    }
 }
 </style>

+ 25 - 0
src/views/voice/List.vue

@@ -359,6 +359,10 @@ onActivated(()=>{
                 <div class="item" v-for="item in listState.list" :key="item.BroadcastId">
                     <h2 class="title" @click="goDetail(item)">{{item.BroadcastName}}</h2>
                     <div class="time">发布时间:{{moment(item.PublishTime).format('YYYY-MM-DD HH:mm:ss')}}</div>
+                    <div class="argument" v-if="item.CentralArguments">
+                        <div class="btn">核心观点</div>
+                        <div class="multi-ellipsis-l2 argument_text">{{item.CentralArguments}}</div>
+                    </div>
                     <div class="flex audio-box" @click.stop="handlePlay(item)">
                         <div :class="['audio-icon',($store.state.audioData.voiceId==item.BroadcastId)&&!$store.state.audioData.paused?'active':'']"></div>
                         <div class="audio-pic">
@@ -526,6 +530,27 @@ onActivated(()=>{
                     cursor: pointer;
                 }
             }
+            .argument{
+                margin: 10px 0;
+                position: relative;
+                .btn{
+                    background: linear-gradient(90deg, #201E1C 0%, #625A4E 100%);
+                    color: #F3A52F;
+                    font-size: 12px;
+                    width: 60px;
+                    line-height: 21px;
+                    border-radius: 10px;
+                    text-align: center;
+                    float: left;
+                    position: absolute;
+                    left: 0;
+                    top: 0;
+                }
+                .argument_text{
+                    color: #999999;
+                    text-indent: 4em;
+                }
+            }
             
         }
     }

+ 25 - 0
src/views/voice/Mine.vue

@@ -333,6 +333,10 @@ onActivated(()=>{
                 <div class="item" v-for="item in listState.list" :key="item.BroadcastId">
                     <h2 class="title" @click="goDetail(item)">{{item.BroadcastName}}</h2>
                     <div class="time">{{item.PublishState==0?'保存':'发布'}}时间:{{moment(item.PublishState==0?item.ModifyTime:item.PublishTime).format('YYYY-MM-DD HH:mm:ss')}}</div>
+                    <div class="argument" v-if="item.CentralArguments">
+                        <div class="btn">核心观点</div>
+                        <div class="multi-ellipsis-l2 argument_text">{{item.CentralArguments}}</div>
+                    </div>
                     <div class="flex audio-box" @click="handlePlay(item)">
                         <div :class="['icon',($store.state.audioData.voiceId==item.BroadcastId)&&!$store.state.audioData.paused?'active':'']"></div>
                         <div>{{formarVoiceTime(item.VoicePlaySeconds)}}</div>
@@ -491,6 +495,27 @@ onActivated(()=>{
                     width: 23px;
                 }
             }
+            .argument{
+                margin: 10px 0;
+                position: relative;
+                .btn{
+                    background: linear-gradient(90deg, #201E1C 0%, #625A4E 100%);
+                    color: #F3A52F;
+                    font-size: 12px;
+                    width: 60px;
+                    line-height: 21px;
+                    border-radius: 10px;
+                    text-align: center;
+                    float: left;
+                    position: absolute;
+                    left: 0;
+                    top: 0;
+                }
+                .argument_text{
+                    color: #999999;
+                    text-indent: 4em;
+                }
+            }
         }
     }
 }