提交 bc3ca8b5 authored 作者: lihuihui's avatar lihuihui

update

上级 49699088
<template>
<div class="four-box">
<div class="card" v-for="(item, index) in data.one" :key="index">
<div class="title">{{ item.cardTitle }}</div>
<div class="ul-list">
<div class="li" v-for="(cItem, cIndex) in item.form.personAttribute" :key="cIndex + 'c'">
<div class="icon"></div>
<div class="text">
{{ getPersonalMap(cItem).label }}&nbsp;&nbsp;{{
cItem.equalMap.find(i => i.value === cItem.equal).label
}}&nbsp;&nbsp;{{ getPersonalMap(cItem).children.find(i => i.value === cItem.range).label }}
</div>
</div>
</div>
</div>
<div class="card">
<div class="title">个人属性</div>
<div class="title">展示内容</div>
<div class="content">
<div class="bg"></div>
<div class="card-dom">
<div class="title" :style="`${getPosition(data.three.titleParams.position)}${data.three.titleParams.style}`">{{ data.three.titleParams.textValue }}</div>
<div class="describe" :style="`${getPosition(data.three.describeParams.position)}${data.three.describeParams.style}`">{{ data.three.describeParams.textValue }}</div>
<div class="btn" :style="`${getPosition(data.three.btnParams.position)}${data.three.btnParams.style}`">{{ data.three.btnParams.textValue }}</div>
<!-- {{ data.three.imgParams.position }} -->
<div class="img" :style="`background: url(${data.three.imgParams.url});background-size:cover;${getPosition(data.three.imgParams.position)}`"></div>
</div>
</div>
</div>
<!-- <div class="card">
<div class="title">营销方案</div>
<div class="ul-list">
<div class="li">
<div class="icon"></div>
<div class="text">年龄 等于 20-30</div>
<div class="text">计划类型:单次触发</div>
</div>
<div class="li">
<div class="icon"></div>
<div class="text">触发时间:2022-2-11 10:00:00</div>
</div>
<div class="li">
<div class="icon"></div>
<div class="text">计划类型:条件触发</div>
</div>
<div class="li">
<div class="icon"></div>
<div class="text">条件1</div>
</div>
<div class="li">
<div class="icon"></div>
<div class="text">条件2</div>
</div>
</div>
</div>
<div class="card">
<div class="title">营销方案</div>
<div class="ul-list">
<div class="li">
<div class="icon"></div>
<div class="text">计划类型:条件触发</div>
</div>
<div class="li">
<div class="icon"></div>
<div class="text">条件1</div>
</div>
<div class="li">
<div class="icon"></div>
<div class="text">条件2</div>
</div>
</div>
</div> -->
</div>
</template>
<script>
export default {}
export default {
props: {
data: { type: Object }
},
mounted() {
console.log(this.data, 'data')
},
methods: {
getPersonalMap(item) {
return item.personalMap.find(i => i.value === item.personal)
},
// 获取位置值
getPosition(item) {
if (item.left && item.top) {
return `left: ${item.left}px;top: ${item.top}px;`
} else {
return item.left ? `left: ${item.left}px;` : item.top ? `top: ${item.top}px;` : ''
}
}
}
}
</script>
<style lang="scss" scoped>
.four-box{
.card{
.four-box {
.card {
background: rgba(250, 250, 250, 0.39);
border: 1px solid #E8E8E8;
border: 1px solid #e8e8e8;
border-radius: 16px;
margin-bottom: 20px;
padding: 20px;
.title{
.content {
height: 500px;
position: relative;
.bg {
position: absolute;
top: 38px;
left: 50%;
transform: translateX(-50%);
width: 966.4px;
height: 453.88px;
background: url(https://webapp-pub.ezijing.com/x-training-new/dn-bg.png);
background-size: 100% 100%;
}
.card-dom {
width: 431px;
height: 238px;
margin: 0 auto;
background: rgba(255, 255, 255, 0.39);
box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.12);
position: absolute;
top: 195px;
left: 180px;
z-index: 2;
.title {
width: 140px;
position: absolute;
top: 50px;
left: 30px;
font-size: 20px;
font-weight: bold;
color: #232325;
cursor: pointer;
}
.describe {
width: 140px;
position: absolute;
top: 80px;
left: 30px;
font-size: 14px;
color: #999999;
cursor: pointer;
}
.btn {
position: absolute;
top: 170px;
left: 30px;
padding: 5px 20px;
font-size: 12px;
background: rgba(73, 187, 162, 1);
border-radius: 13px;
color: #fff;
cursor: pointer;
}
.img {
width: 220px;
height: 190px;
position: absolute;
top: 30px;
left: 200px;
}
}
}
.title {
font-size: 18px;
font-weight: bold;
line-height: 100%;
color: #333333;
}
.ul-list{
.ul-list {
padding-top: 20px;
.li{
.li {
display: flex;
align-items: center;
margin-bottom: 15px;
.icon{
.icon {
width: 6px;
height: 6px;
background: rgba(73, 187, 162, 0.39);
border-radius: 50%;
}
.text{
.text {
font-size: 16px;
line-height: 100%;
color: #666666;
......
......@@ -168,7 +168,7 @@ export default {
message: '请编辑主题',
type: 'warning'
})
return {}
return false
}
}
return params
......
......@@ -10,7 +10,11 @@
<textarea placeholder="请输入"></textarea>
</div>
</div>
<div class="content-right"></div>
<div class="content-right">
<div class="right-box">
</div>
</div>
</div>
</template>
......@@ -55,8 +59,15 @@ export default {}
}
.content-right {
width: 588px;
padding-top: 95px;
padding: 55px 0;
box-sizing: border-box;
.right-box{
margin: 0 auto;
width: 236px;
height: 474px;
background: url(https://webapp-pub.ezijing.com/x-training-new/phone-sms.png);
background-size: 100% 100%;
}
}
}
</style>
......@@ -20,7 +20,7 @@
ref="mailStepTwo"
/>
<MailStepThree :data="stepThreeData" ref="mailStepThree" v-if="activeStep === 2" />
<MailStepFour class="step-four" v-if="activeStep === 3"></MailStepFour>
<MailStepFour :data="{ one: stepOneList, two: stepTwoList, three: stepThreeData, time: { t1: time, t2: time2 } }" class="step-four" v-if="activeStep === 3"></MailStepFour>
<div class="main_content_btn">
<div class="step_prev step_btn" @click="handlePrev" v-if="activeStep > 0">上一步</div>
<div class="step_next step_btn" @click="handleNext" v-if="activeStep >= 0 && activeStep < 2">下一步</div>
......@@ -109,8 +109,11 @@ export default {
},
// 预览
handlePreview() {
this.stepThreeData = this.$refs.mailStepThree.makePreview()
this.handleStep(2)
const isData = this.$refs.mailStepThree.makePreview()
if (isData !== false) {
this.stepThreeData = this.$refs.mailStepThree.makePreview()
this.handleStep(2)
}
},
handlePlan() {},
// 获取步骤信息回显
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论