Commit fd9f2066 authored by wangwei's avatar wangwei

Merge remote-tracking branch 'origin/development' into development

parents 832ed167 5a8a6516
......@@ -69,7 +69,16 @@
this.exitTeacherList = this.dialogObj.teacherList.length > 0 ? this.dialogObj.teacherList : [];
getTeacherListApi().then(res=>{
if (this.exitTeacherList.length > 0) {
this.teacherList = this.findDifferentArray(res.list, this.exitTeacherList)
this.teacherList = this.findDifferentArray(res.list, this.exitTeacherList);
if (this.form.teacher_id){
let _index = this.teacherList.findIndex((ts)=>{
return ts.id == this.form.teacher_id
})
if (_index === -1) {
let obj = res.list.find((item)=>{ return item.id == this.form.teacher_id})
this.teacherList.push(obj)
}
}
} else {
this.teacherList = res.list
}
......@@ -90,7 +99,6 @@
},
initPage(){
this.periods = this.dialogObj.periods
this.getTeacher();
switch (this.dialogObj.type) {
case 0:
if(!this.dialogObj.periodsId){
......@@ -100,13 +108,15 @@
teacher_id:'',
max_join_num:''
};
this.getTeacher();
break;
case 1:
getClassDetailApi(this.dialogObj.id).then(res=>{
this.form = {
teacher_id:res.teacher_id,
teacher_id: parseInt(res.teacher_id),
max_join_num:res.max_join_num
};
this.getTeacher();
})
}
},
......
......@@ -259,6 +259,7 @@
});
},
onAdd(){
console.log('onAdd', this.periods)
this.dialogObj = {
show:true,
title:'添加班级',
......
......@@ -254,6 +254,8 @@
}
},
onOptionChange(id){
console.log('onOptionChange', id)
this.form.goods_id = id;
let index = this.goodList.findIndex((val)=>{ return val.id = id});
if(index >-1){
this.getLessonDetail(this.goodList[index].course_id);
......
......@@ -22,14 +22,14 @@
<el-table
:data="list"
style="width: 100%">
<el-table-column
prop="out_trade_no"
label="订单号">
</el-table-column>
<el-table-column
prop="refund_no"
label="退款编号">
</el-table-column>
<el-table-column
prop="out_trade_no"
label="订单号">
</el-table-column>
<el-table-column
label="用户信息"
min-width="140"
......@@ -56,11 +56,7 @@
</el-table-column>
<el-table-column
prop="desc"
label="退款原因">
</el-table-column>
<el-table-column
prop="callback"
label="微信回调">
label="备注">
</el-table-column>
<el-table-column
label="退款状态">
......
......@@ -546,7 +546,7 @@
let json = {
type: type,
page: this.nowPage,
limit: type === 'news' ? 2 : this.limit
limit: this.limit
};
this.loading = true;
this.showMedia = true;
......
......@@ -230,9 +230,6 @@
<div class="tool_bar">
<el-button @click="close">取 消</el-button>
<el-button class="weui-desktop-btn weui-desktop-btn_primary" @click="save">保存</el-button>
<!--<div class="weui-desktop-popover__wrp">-->
<!--<span class="weui-desktop-popover__target"><button class="weui-desktop-btn weui-desktop-btn_default">删除回复</button></span>-->
<!--</div>-->
</div>
</div>
</div>
......
......@@ -112,14 +112,16 @@
<div class="frm_controls frm_vertical_pt">
<template v-if="selectedChildIndex === -1">
<el-radio-group v-model="buttonList[selectedIndex].type" @change="onTypeChange">
<el-radio label="click">发送消息</el-radio>
<el-radio label="media_id">发送消息</el-radio>
<el-radio label="view">跳转网页</el-radio>
<el-radio label="click">关键字</el-radio>
</el-radio-group>
</template>
<template v-else>
<el-radio-group v-model="buttonList[selectedIndex].sub_button[selectedChildIndex].type" @change="onTypeChange">
<el-radio label="click">发送消息</el-radio>
<el-radio label="media_id">发送消息</el-radio>
<el-radio label="view">跳转网页</el-radio>
<el-radio label="click">关键字</el-radio>
</el-radio-group>
</template>
</div>
......@@ -137,6 +139,128 @@
</div>
</div>
</div>
<div v-else-if="buttonList[selectedIndex].type === 'media_id'" style="display: block;">
<div class="inner" v-loading="loading">
<ul class="weui-desktop-msg-sender__tabs">
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_appmsg" :class="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'news' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSendMsg('news')">图文</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_text" :class="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'text' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSendMsg('text')">文字</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_img" :class="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'image' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSendMsg('image')">图片</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_audio" :class="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'voice' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSendMsg('voice')">语音</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_video" :class="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'video' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSendMsg('video')">视频</li>
</ul>
<div class="inner-bottom">
<div class="img-action" v-if="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'image'">
<template v-if="selectedIndex > -1 && buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.url">
<img style="max-width: 30%" :src="buttonList[selectedIndex].media_info.url"/>
<i class="el-icon-delete" @click="deleteMedia()" style="display: inline-block"></i>
</template>
<div class="display-b" v-else>
<div class="img-create-access" v-if="!showMedia">
<a href="javascript:;" class="img-create-access__link" @click="getMediaList('image')">从素材库中选择</a>
</div>
</div>
<div v-if="showMedia && mediaList.length > 0">
<el-table
:data="mediaList"
@row-click="onChooseMedia"
style="width: 100%">
<el-table-column
prop="name"
label="名称">
</el-table-column>
<el-table-column
prop="media_id"
label="mediaId">
</el-table-column>
<el-table-column
label="URL">
<template slot-scope="scope">
<a :href="scope.row.url" target="_blank">
<img style="width: 60px;" :src="scope.row.url"/>
</a>
</template>
</el-table-column>
</el-table>
</div>
</div>
<div class="img-action" v-if="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.type === 'news'">
<template v-if="buttonList[selectedIndex].media_info && buttonList[selectedIndex].media_info.news_item">
<div class="news-media">
<div v-for="(child, childIndex) in buttonList[selectedIndex].media_info.news_item" style="position: relative">
<div v-if="buttonList[selectedIndex].media_info.news_item.length === 1" class="single-cover">
<div class="title">{{child.title}}</div>
<img :src="child.thumb_url" style="width: 100%;margin-top: 20px;"/>
<div class="digest">{{child.digest}}</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
<div v-else-if="buttonList[selectedIndex].media_info.news_item.length > 1" class="clear-both bottomCover" style="position: relative">
<div v-if="childIndex === 0" class="muti-cover">
<img style="width: 100%;margin-top: 20px;" :src="child.thumb_url"/>
<div class="bottom-title">{{child.title}}</div>
</div>
<div class="next-cover clear-both" v-else>
<span class="next-title">{{child.title}}</span>
<img class="next-img" :src="child.thumb_url"/>
</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
</div>
</div>
</template>
<div class="display-b">
<div class="img-create-access" v-if="!showMedia">
<a href="javascript:;" class="img-create-access__link" @click="getMediaList('news')">从素材库中选择</a>
</div>
</div>
<div v-if="showMedia && mediaList.length > 0">
<el-table
:data="mediaList"
@row-click="onChooseMedia"
style="width: 100%">
<el-table-column
prop="media_id"
label="mediaId">
</el-table-column>
<el-table-column
label="图文"
className="news-media">
<template slot-scope="scope">
<div v-for="(child, childIndex) in scope.row.content.news_item" style="position: relative">
<div v-if="scope.row.content.news_item.length === 1" class="single-cover">
<div class="title">{{child.title}}</div>
<img :src="child.thumb_url" style="width: 100%;margin-top: 20px;"/>
<div class="digest">{{child.digest}}</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
<div v-else-if="scope.row.content.news_item.length > 1" class="clear-both bottomCover" style="position: relative">
<div v-if="childIndex === 0" class="muti-cover">
<img style="width: 100%;margin-top: 20px;" :src="child.thumb_url"/>
<div class="bottom-title">{{child.title}}</div>
</div>
<div class="next-cover clear-both" v-else>
<span class="next-title">{{child.title}}</span>
<img class="next-img" :src="child.thumb_url"/>
</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
</div>
</template>
</el-table-column>
</el-table>
</div>
</div>
<page :total="total" v-model="nowPage" :limit="limit" @pageChange="onPageChange" v-if="showMedia && mediaList.length > 0"/>
</div>
</div>
</div>
<div v-else class="menu_content url jsMain" style="display: block;">
<p class="menu_content_tips tips_global">click</p>
<div class="frm_control_group">
......@@ -161,6 +285,128 @@
</div>
</div>
</div>
<div v-else-if="buttonList[selectedIndex].sub_button[selectedChildIndex].type === 'media_id'" style="display: block;">
<div class="inner" v-loading="loading">
<ul class="weui-desktop-msg-sender__tabs">
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_appmsg" :class="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'news' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSubSendMsg('news')">图文</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_text" :class="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'text' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSubSendMsg('text')">文字</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_img" :class="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'image' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSubSendMsg('image')">图片</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_audio" :class="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'voice' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSubSendMsg('voice')">语音</li>
<li class="weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_video" :class="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'video' ? 'weui-desktop-msg-sender__tab_selected' : ''" @click="onClickSubSendMsg('video')">视频</li>
</ul>
<div class="inner-bottom">
<div class="img-action" v-if="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'image'">
<template v-if="selectedIndex && selectedChildIndex > -1 && buttonList[selectedIndex].sub_button[selectedChildIndex] && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.url">
<img style="max-width: 30%" :src="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.url" v-if="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.url"/>
<i class="el-icon-delete" @click="deleteSubMedia()" style="display: inline-block"></i>
</template>
<div class="display-b" v-else>
<div class="img-create-access" v-if="!showMedia">
<a href="javascript:;" class="img-create-access__link" @click="getMediaList('image')">从素材库中选择</a>
</div>
</div>
<div v-if="showMedia && mediaList.length > 0">
<el-table
:data="mediaList"
@row-click="onChooseSubMedia"
style="width: 100%">
<el-table-column
prop="name"
label="名称">
</el-table-column>
<el-table-column
prop="media_id"
label="mediaId">
</el-table-column>
<el-table-column
label="URL">
<template slot-scope="scope">
<a :href="scope.row.url" target="_blank">
<img style="width: 60px;" :src="scope.row.url"/>
</a>
</template>
</el-table-column>
</el-table>
</div>
</div>
<div class="img-action" v-if="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'news'">
<template v-if="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info && buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.news_item">
<div class="news-media">
<div v-for="(child, childIndex) in buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.news_item" style="position: relative">
<div v-if="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.news_item.length === 1" class="single-cover">
<div class="title">{{child.title}}</div>
<img :src="child.thumb_url" style="width: 100%;margin-top: 20px;"/>
<div class="digest">{{child.digest}}</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
<div v-else-if="buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.news_item.length > 1" class="clear-both bottomCover" style="position: relative">
<div v-if="childIndex === 0" class="muti-cover">
<img style="width: 100%;margin-top: 20px;" :src="child.thumb_url"/>
<div class="bottom-title">{{child.title}}</div>
</div>
<div class="next-cover clear-both" v-else>
<span class="next-title">{{child.title}}</span>
<img class="next-img" :src="child.thumb_url"/>
</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
</div>
</div>
</template>
<div class="display-b">
<div class="img-create-access" v-if="!showMedia">
<a href="javascript:;" class="img-create-access__link" @click="getMediaList('news')">从素材库中选择</a>
</div>
</div>
<div v-if="showMedia && mediaList.length > 0">
<el-table
:data="mediaList"
@row-click="onChooseSubMedia"
style="width: 100%">
<el-table-column
prop="media_id"
label="mediaId">
</el-table-column>
<el-table-column
label="图文"
className="news-media">
<template slot-scope="scope">
<div v-for="(child, childIndex) in scope.row.content.news_item" style="position: relative">
<div v-if="scope.row.content.news_item.length === 1" class="single-cover">
<div class="title">{{child.title}}</div>
<img :src="child.thumb_url" style="width: 100%;margin-top: 20px;"/>
<div class="digest">{{child.digest}}</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
<div v-else-if="scope.row.content.news_item.length > 1" class="clear-both bottomCover" style="position: relative">
<div v-if="childIndex === 0" class="muti-cover">
<img style="width: 100%;margin-top: 20px;" :src="child.thumb_url"/>
<div class="bottom-title">{{child.title}}</div>
</div>
<div class="next-cover clear-both" v-else>
<span class="next-title">{{child.title}}</span>
<img class="next-img" :src="child.thumb_url"/>
</div>
<a class="preview" :href="child.url" target="_blank">
预览文章
</a>
</div>
</div>
</template>
</el-table-column>
</el-table>
</div>
</div>
<page2 :total="total" v-model="nowPage" :limit="limit" @pageChange="onSubPageChange" v-if="showMedia && mediaList.length > 0"/>
</div>
</div>
</div>
<div v-else class="menu_content url jsMain" style="display: block;">
<p class="menu_content_tips tips_global">click</p>
<div class="frm_control_group">
......@@ -199,13 +445,17 @@
</template>
<script>
import {getPublicMenuApi, savePublicMenuApi} from "../../service/api";
import {getPublicMenuApi, savePublicMenuApi,getMediaListApi,getMediaApi} from "../../service/api";
import draggable from 'vuedraggable'
import { MessageBox } from 'element-ui';
import page from '../framework/page'
import page2 from '../framework/page'
export default {
name: "index",
components: {
draggable,
page,
page2
},
data(){
return {
......@@ -218,7 +468,13 @@
selectedIndex: 0,
selectedChildIndex: -1,
showErrorTips: false,
showOrder: false
showOrder: false,
loading: false,
total:0,
nowPage:1,
limit: 3,
showMedia: false,
mediaList: []
}
},
mounted(){
......@@ -239,9 +495,44 @@
this.selectedIndex = 0
this.selectedChildIndex = -1
this.showOrder = false;
this.searchMenu();
}
})
},
searchMenu(){
let list = this.buttonList;
for (let i = 0 ; i< list.length ; i ++) {
if (list[i].media_id){
this.getMediaApi(i,-1,list[i].media_id);
} else if (list[i].sub_button && list[i].sub_button.length > 0){
this.searchSubMenu(i);
}
}
},
searchSubMenu(i){
let list = this.buttonList[i].sub_button;
for (let j = 0; j< list.length; j++) {
if (list[j].media_id){
this.getMediaApi(i,j,list[j].media_id);
}
}
},
getMediaApi(index1,index2,id){
getMediaApi(id).then((res)=>{
if(res && res.news_item && res.news_item.length > 0) {
let media_info = {};
media_info.news_item = res.news_item
media_info.type = 'news'
if (index2 > -1) {
this.buttonList[index1].sub_button[index2].media_info = media_info
} else {
this.buttonList[index1].media_info = media_info
}
}
})
},
clickMenu(index, item){
this.selectedIndex = index
this.selectedChildIndex = -1
......@@ -332,6 +623,93 @@
})
}
})
},
onPageChange(val){
this.nowPage = val
this.getMediaList(this.buttonList[this.selectedIndex].media_info.type)
},
onSubPageChange(val){
this.nowPage = val
this.getMediaList(this.buttonList[this.selectedIndex].sub_button[this.selectedChildIndex].media_info.type)
},
getMediaList(type){
let json = {
type: type,
page: this.nowPage,
limit: this.limit
};
this.loading = true;
getMediaListApi(json).then(res=>{
this.loading = false;
this.total = res.total_count;
if (res.item.length === 0 ) {
this.$message({
showClose: true,
message: '暂无数据'
});
this.showMedia = false;
} else {
this.showMedia = true;
this.mediaList = res.item;
}
}).catch(() => {
this.loading = false;
this.showMedia = false;
})
},
onChooseMedia(val){
let selectedIndex = this.selectedIndex;
if(this.buttonList[selectedIndex].media_info.type === 'image') {
this.buttonList[selectedIndex].media_id = val.media_id;
this.buttonList[selectedIndex].media_info.url = val.url;
this.buttonList[selectedIndex].key = 'image'
}else if (this.buttonList[selectedIndex].media_info.type === 'news'){
this.buttonList[selectedIndex].media_id = val.media_id;
this.buttonList[selectedIndex].media_info = val.content;
this.buttonList[selectedIndex].media_info.type = 'news';
}
this.showMedia = false;
this.$forceUpdate();
},
onChooseSubMedia(val){
let selectedIndex = this.selectedIndex;
let selectedChildIndex = this.selectedChildIndex;
if(this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'image') {
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_id = val.media_id;
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.url = val.url;
}else if (this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type === 'news'){
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_id = val.media_id;
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info = val.content;
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.type = 'news';
}
this.showMedia = false;
this.$forceUpdate();
},
onClickSendMsg(type){
this.buttonList[this.selectedIndex].media_info = {
type: type
}
this.$forceUpdate();
},
onClickSubSendMsg(type){
let selectedIndex = this.selectedIndex;
let selectedChildIndex = this.selectedChildIndex;
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info = {
type: type
}
this.$forceUpdate();
},
deleteMedia(){
this.buttonList[this.selectedIndex].media_id = '';
this.buttonList[this.selectedIndex].media_info.url = '';
this.$forceUpdate();
},
deleteSubMedia(){
let selectedIndex = this.selectedIndex;
let selectedChildIndex = this.selectedChildIndex;
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_id = '';
this.buttonList[selectedIndex].sub_button[selectedChildIndex].media_info.url = '';
this.$forceUpdate();
}
}
......@@ -2478,5 +2856,168 @@
width: 100%;
color: #8d8d8d
}
.weui-desktop-msg-sender__tabs {
line-height: 38px;
background-color: #FFFFFF;
}
.sender__tab_selected {
color: #44B549;
}
.weui-desktop-msg-sender__tab:hover, .weui-desktop-msg-sender__tab_selected {
color: #44B549;
}
.weui-desktop-msg-sender__tab {
display: inline-block;
padding: 0 20px;
cursor: pointer;
}
.weui-desktop-msg-sender__tab:hover.weui-desktop-msg-sender__tab_text:before, .weui-desktop-msg-sender__tab_selected.weui-desktop-msg-sender__tab_text:before {
background-image: url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_text_current.svg);
}
.weui-desktop-msg-sender__tab_img:before {
background: transparent url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_img.svg) no-repeat 0 0;
}
.weui-desktop-msg-sender__tab:hover.weui-desktop-msg-sender__tab_img:before, .weui-desktop-msg-sender__tab_selected.weui-desktop-msg-sender__tab_img:before {
background-image: url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_img_current.svg);
}
.weui-desktop-msg-sender__tab_video:before {
background: transparent url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_video.svg) no-repeat 0 0;
}
.weui-desktop-msg-sender__tab:hover.weui-desktop-msg-sender__tab_video:before, .weui-desktop-msg-sender__tab_selected.weui-desktop-msg-sender__tab_video:before {
background-image: url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_video_current.svg);
}
.weui-desktop-msg-sender__tab_audio:before {
background: transparent url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_audio.svg) no-repeat 0 0;
}
.weui-desktop-msg-sender__tab:hover.weui-desktop-msg-sender__tab_audio:before, .weui-desktop-msg-sender__tab_selected.weui-desktop-msg-sender__tab_audio:before {
background-image: url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/svg/default/sender_audio_current.svg);
}
.weui-desktop-msg-sender__tab_appmsg:before {
background: transparent url(https://res.wx.qq.com/mpres/zh_CN/htmledition/pages/modules/msg_sender/svg/default/sender_appmsg3c96b5.svg) no-repeat 0 0;
}
.weui-desktop-msg-sender__tab:hover.weui-desktop-msg-sender__tab_appmsg:before, .weui-desktop-msg-sender__tab_selected.weui-desktop-msg-sender__tab_appmsg:before {
background-image: url(https://res.wx.qq.com/mpres/zh_CN/htmledition/pages/modules/msg_sender/svg/default/sender_appmsg_current3c96b5.svg);
}
.weui-desktop-msg-sender__tab:before {
content: " ";
display: inline-block;
width: 22px;
height: 20px;
vertical-align: middle;
margin: -0.2em 5px 0 0;
}
.inner {
position: relative;
border: 1px solid #E4E8EB;
background-color: #FFFFFF;
}
.inner-bottom {
border-top: 1px solid #E4E8EB;
}
.img-action {
padding: 17px 20px;
min-height: 215px;
text-align: center;
}
.img-create-access {
position: relative;
border: 2px dotted #E4E8EB;
width: 48.6%;
height: 211px;
text-align: center;
}
/*.img-create-access:first-child {*/
/*float: left;*/
/*}*/
.img-create-access__link {
display: inline-block;
vertical-align: middle;
color: #9A9A9A;
margin: 0 10px;
margin-top: 68px;
text-decoration: none;
}
.img-create-access__link:before {
content: " ";
display: block;
width: 36px;
height: 36px;
margin: 0 auto 5px;
background: transparent url(https://res.wx.qq.com/mpres/en_US/htmledition/pages/modules/msg_sender/images/icon36_add_gray.png) no-repeat 0 0;
}
.news-media {
padding: 10px;
width: 300px;
}
.news-media img{
width: 100%;
}
.s-news img {
width: 50px;
float: right;
}
.title {
font-size: 16px;
font-weight: 400;
display: block;
line-height: 1.2;
color: #353535;
}
.digest {
padding-top: 12px;
color: #9A9A9A;
font-size: 14px;
}
.single-cover {
/*padding: 20px 15px 15px;*/
}
.muti-cover {
position: relative;
padding: 20px 15px 0 15px;
}
.bottom-title {
color: #FFFFFF;
background-color: rgba(0, 0, 0, 0.55);
position: absolute;
left: 15px;
right: 15px;
bottom: 0;
padding: 8px 12px;
}
.next-cover {
padding: 12px 15px;
position: relative;
}
.next-img {
float: right;
margin-left: 12px;
width: 60px !important;
height: 60px !important;
}
.next-title {
overflow: hidden;
font-weight: 400;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
color: #353535;
}
.single-cover:hover .preview,.bottomCover:hover .preview{
display: flex;
justify-content: center;
align-items: center;
color: #fff;
}
.preview {
display: none;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.5);
text-decoration: none;
}
</style>
......@@ -509,3 +509,8 @@ const copyShopUrl = `/api/admin/goods/copy/`;
export const copyShopApi = function (id) {
return Vue.prototype.$post(`${copyShopUrl}${id}`)
}
// 获取media详情
const getMediaUrl = `/api/admin/open/media/info`
export const getMediaApi = function (id) {
return Vue.prototype.$fetch(`${getMediaUrl}?media_id=${id}`)
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment