Commit 8a5db8c1eb9dad272b3b076699b5e5cb079e7782

Authored by YunaiV
1 parent 18bf098a

mp:前端 message 增加文本、图片、事件等的展示

yudao-ui-admin/src/views/mp/message/index.vue
... ... @@ -44,13 +44,48 @@
44 44 <span>{{ parseTime(scope.row.createTime) }}</span>
45 45 </template>
46 46 </el-table-column>
47   - <el-table-column label="消息类型" align="center" prop="type"/>
48   - <el-table-column label="用户标识" align="center" prop="openid"/>
49   - <el-table-column label="内容" align="center" prop="content">
  47 + <el-table-column label="消息类型" align="center" prop="type" width="80"/>
  48 + <el-table-column label="用户标识" align="center" prop="openid" width="300" />
  49 + <!-- TODO 芋艿:发送/接收 -->
  50 + <el-table-column label="内容" prop="content">
50 51 <template slot-scope="scope">
51   - <div v-if="scope.row.type === 'video'">
  52 + <!-- 【事件】区域 -->
  53 + <div v-if="scope.row.type === 'event' && scope.row.event === 'subscribe'">
  54 + <el-tag type="success" size="mini">关注</el-tag>
  55 + </div>
  56 + <div v-else-if="scope.row.type === 'event' && scope.row.event === 'unsubscribe'">
  57 + <el-tag type="danger" size="mini">取消关注</el-tag>
  58 + </div>
  59 + <div v-else-if="scope.row.type === 'event' && scope.row.event === 'CLICK'">
  60 + <el-tag size="mini">点击菜单</el-tag>【{{ scope.row.eventKey }}】
  61 + </div>
  62 + <div v-else-if="scope.row.type === 'event' && scope.row.event === 'VIEW'">
  63 + <el-tag size="mini">点击菜单链接</el-tag>【{{ scope.row.eventKey }}】
  64 + </div>
  65 + <div v-else-if="scope.row.type === 'event' && scope.row.event === 'scancode_waitmsg'"> <!-- TODO 芋艿:需要测试下 -->
  66 + <el-tag size="mini">扫码结果</el-tag>【{{ scope.row.eventKey }}】
  67 + </div>
  68 + <div v-else-if="scope.row.type === 'event'">
  69 + <el-tag type="danger" size="mini">未知事件类型</el-tag>
  70 + </div>
  71 + <!-- 【消息】区域 -->
  72 + <div v-else-if="scope.row.type === 'text'">{{ scope.row.content }}</div>
  73 + <!-- TODO 语音 -->
  74 + <div v-else-if="scope.row.type === 'image'">
  75 + <a target="_blank" :href="scope.row.mediaUrl">
  76 + <img :src="scope.row.mediaUrl" style="width: 100px">
  77 + </a>
  78 + </div>
  79 + <div v-else-if="scope.row.type === 'video' || scope.row.type === 'shortvideo'">
52 80 <wx-video-player :url="scope.row.mediaUrl" style="margin-top: 10px" />
53 81 </div>
  82 + <div v-else-if="scope.row.type === 'link'">
  83 + <el-tag size="mini">链接</el-tag>:
  84 + <a :href="scope.row.url" target="_blank">{{scope.row.title}}</a>
  85 + </div>
  86 + <div v-else>
  87 + <el-tag type="danger" size="mini">未知消息类型</el-tag>
  88 + </div>
54 89 </template>
55 90 </el-table-column>
56 91 <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
... ...