Commit 9f7b646f6c8c61c4238d99e1655c72de3e6bf66f
1 parent
02ccf52d
mp:增加发送【图文】消息
Showing
3 changed files
with
35 additions
and
20 deletions
yudao-ui-admin/src/api/mp/draft.js
0 → 100644
yudao-ui-admin/src/views/mp/components/wx-material-select/main.vue
| ... | ... | @@ -103,7 +103,8 @@ |
| 103 | 103 | import WxVoicePlayer from '@/views/mp/components/wx-voice-play/main.vue'; |
| 104 | 104 | import WxVideoPlayer from '@/views/mp/components/wx-video-play/main.vue'; |
| 105 | 105 | import { getMaterialPage } from "@/api/mp/material"; |
| 106 | - import {getFreePublishPage} from "@/api/mp/freePublish"; | |
| 106 | + import { getFreePublishPage } from "@/api/mp/freePublish"; | |
| 107 | + import {getDraftPage} from "@/api/mp/draft"; | |
| 107 | 108 | |
| 108 | 109 | export default { |
| 109 | 110 | name: "wxMaterialSelect", |
| ... | ... | @@ -136,8 +137,6 @@ |
| 136 | 137 | pageSize: 10, |
| 137 | 138 | accountId: this.objData.accountId, |
| 138 | 139 | }, |
| 139 | - // tableOptionVoice: tableOptionVoice, | |
| 140 | - // tableOptionVideo: tableOptionVideo, | |
| 141 | 140 | } |
| 142 | 141 | }, |
| 143 | 142 | created() { |
| ... | ... | @@ -152,22 +151,7 @@ |
| 152 | 151 | if (this.objData.type === 'news' && this.newsType === '1') { // 【图文】+ 【已发布】 |
| 153 | 152 | this.getFreePublishPage(); |
| 154 | 153 | } else if (this.objData.type === 'news' && this.newsType === '2') { // 【图文】+ 【草稿】 |
| 155 | - getPageNewsDraft(Object.assign({ | |
| 156 | - current: page.currentPage, | |
| 157 | - size: page.pageSize, | |
| 158 | - appId:this.appId, | |
| 159 | - }, params)).then(response => { | |
| 160 | - let tableData = response.data.items | |
| 161 | - tableData.forEach(item => { | |
| 162 | - item.mediaId = item.mediaId | |
| 163 | - item.content.articles = item.content.newsItem | |
| 164 | - }) | |
| 165 | - this.list = tableData | |
| 166 | - this.page.total = response.data.totalCount | |
| 167 | - this.page.currentPage = page.currentPage | |
| 168 | - this.page.pageSize = page.pageSize | |
| 169 | - this.loading = false | |
| 170 | - }) | |
| 154 | + this.getDraftPage(); | |
| 171 | 155 | } else { // 【素材】 |
| 172 | 156 | this.getMaterialPage(); |
| 173 | 157 | } |
| ... | ... | @@ -197,6 +181,21 @@ |
| 197 | 181 | }).finally(() => { |
| 198 | 182 | this.loading = false |
| 199 | 183 | }) |
| 184 | + }, | |
| 185 | + getDraftPage() { | |
| 186 | + getDraftPage((this.queryParams)).then(response => { | |
| 187 | + // 将 thumbUrl 转成 picUrl,保证 wx-news 组件可以预览封面 | |
| 188 | + response.data.list.forEach(item => { | |
| 189 | + const newsItem = item.content.newsItem; | |
| 190 | + newsItem.forEach(article => { | |
| 191 | + article.picUrl = article.thumbUrl; | |
| 192 | + }) | |
| 193 | + }) | |
| 194 | + this.list = response.data.list | |
| 195 | + this.total = response.data.total | |
| 196 | + }).finally(() => { | |
| 197 | + this.loading = false | |
| 198 | + }) | |
| 200 | 199 | } |
| 201 | 200 | } |
| 202 | 201 | }; | ... | ... |
yudao-ui-admin/src/views/mp/message/index.vue
| ... | ... | @@ -93,6 +93,9 @@ |
| 93 | 93 | <wx-music :title="scope.row.title" :description="scope.row.description" :thumb-media-url="scope.row.thumbMediaUrl" |
| 94 | 94 | :music-url="scope.row.musicUrl" :hq-music-url="scope.row.hqMusicUrl" /> |
| 95 | 95 | </div> |
| 96 | + <div v-else-if="scope.row.type === 'news'"> | |
| 97 | + <wx-news :articles="scope.row.articles" /> | |
| 98 | + </div> | |
| 96 | 99 | <div v-else> |
| 97 | 100 | <el-tag type="danger" size="mini">未知消息类型</el-tag> |
| 98 | 101 | </div> |
| ... | ... | @@ -100,6 +103,7 @@ |
| 100 | 103 | </el-table-column> |
| 101 | 104 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 102 | 105 | <template slot-scope="scope"> |
| 106 | + <!-- TODO 芋艿:增加消息按钮 --> | |
| 103 | 107 | <!-- <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"--> |
| 104 | 108 | <!-- v-hasPermi="['mp:message:update']">修改--> |
| 105 | 109 | <!-- </el-button>--> |
| ... | ... | @@ -124,6 +128,7 @@ import WxVoicePlayer from '@/views/mp/components/wx-voice-play/main.vue'; |
| 124 | 128 | import WxMsg from '@/views/mp/components/wx-msg/main.vue'; |
| 125 | 129 | import WxLocation from '@/views/mp/components/wx-location/main.vue'; |
| 126 | 130 | import WxMusic from '@/views/mp/components/wx-music/main.vue'; |
| 131 | +import WxNews from '@/views/mp/components/wx-news/main.vue'; | |
| 127 | 132 | |
| 128 | 133 | export default { |
| 129 | 134 | name: "WxFansMsg", |
| ... | ... | @@ -132,7 +137,8 @@ export default { |
| 132 | 137 | WxVoicePlayer, |
| 133 | 138 | WxMsg, |
| 134 | 139 | WxLocation, |
| 135 | - WxMusic | |
| 140 | + WxMusic, | |
| 141 | + WxNews | |
| 136 | 142 | }, |
| 137 | 143 | data() { |
| 138 | 144 | return { | ... | ... |