Commit a44d796d by zhangmeng

fix:修改

parent 9f517729
No preview for this file type
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel="shortcut icon" href=./static/img/favicon.ico><title>GIC后台</title><link rel=stylesheet type=text/css href=static/css/iconfont.css><link rel=stylesheet type=text/css href=static/css/common.css><link href=/marketing/static/css/main.247a8e0c6a0b4604b763e44ecbe389ac.css rel=stylesheet></head><body><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.5.2/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/elementUI/index.2.5.4.js></script><script src=//web-1251519181.file.myqcloud.com/components/header.2.0.07.js></script><script src=//web-1251519181.file.myqcloud.com/components/footer.2.0.02.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/store.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/member-group.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/confirm-people.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/people.2.0.15.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.02.js></script><script src=//web-1251519181.file.myqcloud.com/components/input.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/delete.2.0.00.js></script><script type=text/javascript src=/marketing/static/js/manifest.0a85049e489e85ac5f0a.js></script><script type=text/javascript src=/marketing/static/js/vendor.15e47b251ca9f81106a4.js></script><script type=text/javascript src=/marketing/static/js/main.7143ee6087d201c23518.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel="shortcut icon" href=./static/img/favicon.ico><title>GIC后台</title><link rel=stylesheet type=text/css href=static/css/iconfont.css><link rel=stylesheet type=text/css href=static/css/common.css><link href=/marketing/static/css/main.dab2952454dc4742e476d242448b0300.css rel=stylesheet></head><body><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.5.2/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/elementUI/index.2.5.4.js></script><script src=//web-1251519181.file.myqcloud.com/components/header.2.0.07.js></script><script src=//web-1251519181.file.myqcloud.com/components/footer.2.0.02.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/store.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/member-group.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/confirm-people.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/people.2.0.15.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.02.js></script><script src=//web-1251519181.file.myqcloud.com/components/input.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/delete.2.0.00.js></script><script type=text/javascript src=/marketing/static/js/manifest.0a85049e489e85ac5f0a.js></script><script type=text/javascript src=/marketing/static/js/vendor.15e47b251ca9f81106a4.js></script><script type=text/javascript src=/marketing/static/js/main.91b99d7f8d8cf4bd2ce2.js></script></body></html>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
File added
<template>
<el-popover class="el-button el-button--text" placement="top" width="160" v-model="visible">
<p style="line-height:1.5;padding:10px 10px 20px;color:#606266;">{{ tips }}</p>
<div style="text-align: right; margin: 0">
<el-button size="mini" type="text" @click="cancel">取消</el-button>
<el-button type="primary" size="mini" @click="confirm">确定</el-button>
</div>
<span slot="reference"><slot></slot></span>
</el-popover>
</template>
<script>
export default {
name: 'dm-delete',
props: {
tips: {
type: String,
default: '是否删除?'
}
},
data() {
return {
visible: false
};
},
methods: {
cancel() {
this.visible = false;
},
confirm() {
this.visible = false;
this.$emit('confirm');
}
}
};
</script>
......@@ -342,5 +342,8 @@ export default {
left: 50%;
transform: translate3d(-50%, -50%, 0);
}
/deep/ .el-input__inner {
padding: 0px 20px;
}
}
</style>
import { elTable } from 'element-ui';
import Vue from 'vue';
const CompVue = Vue.extend(elTable);
export default new CompVue({});
<template>
<div class="stock-input">
<bd-select ref="bd-select" v-model="selectConf.value" :disabled="disabled" size="small" multiple :loading="selectConf.loading" filterable remote :remote-method="remoteMethod" :placeholder="placeholder" @change="selectChange">
<dm-select ref="bd-select" v-model="selectConf.value" :disabled="disabled" size="small" multiple :loading="selectConf.loading" filterable remote :remote-method="remoteMethod" :placeholder="placeholder" @change="selectChange">
<el-option v-for="option in selectConf.options" :key="option.value" :value="option.value" :label="option.label">
<div class="suggest-item">
<!-- <span class="suggest-item__rt">{{option.value}}</span> -->
<span class="suggest-item__lt">{{ option.label }} </span>
</div>
</el-option>
</bd-select>
</dm-select>
</div>
</template>
......@@ -43,10 +43,6 @@ export default {
}),
loading: false
},
// pickerConf: {
// show: false,
// selected: []
// },
timer: null,
cacheIndus: this.value.map(item => item)
};
......@@ -65,7 +61,7 @@ export default {
}
},
components: {
'bd-select': dmSelect
'dm-select': dmSelect
},
methods: {
remoteMethod(val) {
......
import lgPreview from './preview.vue';
export default {
install: function(Vue, options) {
// 添加的内容写在这个函数里面
const LOGIC_EVENT_BUS = new Vue({
data() {
return {
LOGIC_PREVIEW: {
isTitleEnable: true,
isHorizontalNavEnable: true,
show: false,
loading: true,
current: {
title: '',
src: ''
},
list: []
}
};
}
});
window.LOGIC_EVENT_BUS = LOGIC_EVENT_BUS;
Vue.component('lg-preview', lgPreview);
const updateIndex = function(list) {
list.forEach(function(item, index) {
item.index = index + 1;
});
};
function getImage(src, previewItem) {
return new Promise(function(resolve, reject) {
const img = new window.Image();
img.src = src;
img.onload = function() {
previewItem['naturalHeight'] = img.naturalHeight;
previewItem['naturalWidth'] = img.naturalWidth;
setTimeout(function() {
LOGIC_EVENT_BUS.LOGIC_PREVIEW.loading = false;
}, 500);
resolve(img);
};
img.error = function(e) {
reject(e);
};
});
}
Vue.directive('preview', {
bind: function(el) {
var previewItem = {
title: '',
el: el,
index: 0,
src: ''
};
LOGIC_EVENT_BUS.LOGIC_PREVIEW.list.push(previewItem);
updateIndex(LOGIC_EVENT_BUS.LOGIC_PREVIEW.list);
el.addEventListener('click', function(e) {
e.stopPropagation();
LOGIC_EVENT_BUS.LOGIC_PREVIEW.isTitleEnable = el.getAttribute('preview-title-enable') == 'false' ? false : true;
LOGIC_EVENT_BUS.LOGIC_PREVIEW.isHorizontalNavEnable = el.getAttribute('preview-nav-enable') == 'false' ? false : true;
LOGIC_EVENT_BUS.LOGIC_PREVIEW.show = true;
LOGIC_EVENT_BUS.LOGIC_PREVIEW.loading = true;
LOGIC_EVENT_BUS.LOGIC_PREVIEW.current = previewItem;
getImage(previewItem.src, previewItem);
});
},
update: function(el, oldValue) {
var previewItem = LOGIC_EVENT_BUS.LOGIC_PREVIEW.list.find(function(item) {
return item.el === el;
});
if (!previewItem) return;
previewItem.src = oldValue.value;
previewItem.title = el.alt;
},
unbind: function(el) {
if (el) {
LOGIC_EVENT_BUS.LOGIC_PREVIEW.list.forEach(function(item, index) {
if (el === item.el) {
LOGIC_EVENT_BUS.LOGIC_PREVIEW.list.splice(index, 1);
}
});
}
updateIndex(LOGIC_EVENT_BUS.LOGIC_PREVIEW.list);
}
});
}
};
<template>
<transition name="fade">
<div class="lg-preview-wrapper" v-show="preview.show" @click="leave" @touchmove.prevent>
<div class="lg-preview-loading" v-show="preview.loading"><div></div></div>
<img class="lg-preview-img" v-if="preview.current.src" :src="preview.current.src" :alt="preview.current.title" v-show="!preview.loading" />
<div class="lg-preview-title" v-if="preview.isTitleEnable && preview.current.title" v-show="!preview.loading">
{{ preview.current.title }}
</div>
<div class="lg-preview-nav-left" v-if="preview.isHorizontalNavEnable" v-show="!preview.loading">
<span class="lg-preview-nav-arrow" @click="preAction"></span>
</div>
<div class="lg-preview-nav-right" v-if="preview.isHorizontalNavEnable" v-show="!preview.loading">
<span class="lg-preview-nav-arrow" @click="nextAction"></span>
</div>
</div>
</transition>
</template>
<script>
export default {
name: 'Preview',
computed: {
preview() {
console.log(window.LOGIC_EVENT_BUS.LOGIC_PREVIEW);
return window.LOGIC_EVENT_BUS.LOGIC_PREVIEW;
}
},
methods: {
leave(e) {
if (this.preview.show && e.target.className.indexOf('lg-preview-nav-arrow') != 0) {
this.close();
}
},
close() {
this.preview.show = false;
},
preAction() {
this.preview.loading = true;
var index = this.preview.list.indexOf(this.preview.current);
if (index === 0) {
this.preview.loading = false;
return;
}
index--;
this.preview.current = this.preview.list[index];
const img = new window.Image();
img.src = this.preview.current.src;
img.onload = function() {
setTimeout(function() {
LOGIC_EVENT_BUS.LOGIC_PREVIEW.loading = false;
}, 500);
};
},
nextAction() {
this.preview.loading = true;
var index = this.preview.list.indexOf(this.preview.current);
if (index === this.preview.list.length - 1) {
this.preview.loading = false;
return;
}
index++;
this.preview.current = this.preview.list[index];
const img = new window.Image();
img.src = this.preview.current.src;
img.onload = function() {
setTimeout(function() {
LOGIC_EVENT_BUS.LOGIC_PREVIEW.loading = false;
}, 500);
};
}
}
};
</script>
<style scoped>
.fade-enter-active,
.fade-leave-active {
transition: opacity 0.5s;
}
.fade-enter,
.fade-leave-active {
opacity: 0;
}
.lg-preview-wrapper {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
text-align: center;
box-sizing: border-box;
background: rgba(0, 0, 0, 0.9);
z-index: 10000;
}
.lg-preview-loading {
position: absolute;
width: 30px;
height: 35px;
top: 50%;
left: 50%;
margin-top: -17.5px;
margin-left: -15px;
}
.lg-preview-loading > div {
display: inline-block;
height: 25px;
width: 25px;
background: transparent;
border-radius: 100%;
border: 2px solid #fff;
border-bottom-color: transparent;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
-webkit-animation: rotate 0.75s 0s linear infinite;
animation: rotate 0.75s 0s linear infinite;
}
@keyframes rotate {
0% {
-webkit-transform: rotate(0deg) scale(1);
transform: rotate(0deg) scale(1);
}
50% {
-webkit-transform: rotate(180deg) scale(0.6);
transform: rotate(180deg) scale(0.6);
}
100% {
-webkit-transform: rotate(360deg) scale(1);
transform: rotate(360deg) scale(1);
}
}
.lg-preview-img {
max-width: 100%;
max-height: 100%;
display: block;
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
margin: auto;
}
.lg-preview-nav-arrow {
position: absolute;
top: 50%;
margin-top: -15px;
background: rgba(0, 0, 0, 0);
line-height: 40px;
width: 20px;
height: 20px;
border-top: 2px solid #fff;
border-left: 2px solid #fff;
}
.lg-preview-nav-left,
.lg-preview-nav-right {
position: absolute;
height: 100%;
margin: 0 5px;
width: 200px;
top: 0;
color: #fff;
transition: opacity 0.2s;
}
.lg-preview-nav-left {
left: 0;
}
.lg-preview-nav-left .lg-preview-nav-arrow {
left: 0;
margin-left: 40px;
transform: rotate(-45deg);
}
.lg-preview-nav-right {
right: 0;
}
.lg-preview-nav-right .lg-preview-nav-arrow {
right: 0;
margin-right: 40px;
transform: rotate(135deg);
}
.lg-preview-title {
position: absolute;
left: 0;
bottom: 0;
text-align: center;
width: 100%;
color: #fff;
background: rgba(0, 0, 0, 0.5);
box-sizing: border-box;
font-size: 16px;
height: 40px;
line-height: 40px;
}
@media all and (max-width: 768px) {
.lg-preview-nav-left,
.lg-preview-nav-right {
width: 100px;
}
.lg-preview-nav-left .lg-preview-nav-arrow {
margin-left: 20px;
}
.lg-preview-nav-right .lg-preview-nav-arrow {
margin-right: 20px;
}
}
</style>
......@@ -224,7 +224,7 @@ export default {
.then(({ value }) => {
this.addGroupService(value);
})
.catch(() => {
.catch(err => {
// this.$tips({
// type: 'info',
// message: '取消新增'
......
......@@ -6,7 +6,7 @@ import imgTemp from '../../components/libs/imgTemp';
import audioTemp from '../../views/wechat/audio/index.vue';
import videoTemp from '../../views/wechat/video/index.vue';
import videoAddEdit from '../../views/wechat/video/addEdit';
import addRecord from '../../views/wechat/addRecord';
import form from '../../views/wechat/form';
import editor from '../../views/wechat/editor';
export default {
......@@ -27,7 +27,7 @@ export default {
{
path: 'record/add',
name: '新建群发',
component: addRecord,
component: form,
meta: {
type: 'add',
path: '/wechat/record'
......@@ -36,7 +36,7 @@ export default {
{
path: 'record/edit/:id',
name: '编辑群发',
component: addRecord,
component: form,
meta: {
type: 'edit',
path: '/wechat/record'
......@@ -45,7 +45,7 @@ export default {
{
path: 'record/info/:id',
name: '群发详情',
component: addRecord,
component: form,
meta: {
type: 'info',
path: '/wechat/record'
......@@ -54,7 +54,7 @@ export default {
{
path: 'record/add/:id',
name: '使用图文群发',
component: addRecord,
component: form,
meta: {
type: 'imgText',
path: '/wechat/temp/imgtext'
......
......@@ -454,7 +454,7 @@ export default {
// 获取营销场景
async sceneSettingList() {
let res = await sceneSettingList();
this.sceneSettingIdOptions = res.result;
this.sceneSettingIdOptions = res.result || [];
},
// 获取ecm信息
async getEcmInfo(isResetTemplate = false) {
......
......@@ -128,9 +128,6 @@ export default {
z-index: 1000;
}
/*
* login-登录
*/
.home-link {
width: 80px;
......
......@@ -227,7 +227,7 @@ export default {
},
async sceneSettingList() {
let res = await sceneSettingList();
this.sceneSettingIdOptions = res.result;
this.sceneSettingIdOptions = res.result || [];
},
//获取图文
getImgTextData(val) {
......
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