Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
marketing
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
marketing-web
marketing
Commits
03eaab05
Commit
03eaab05
authored
Apr 15, 2021
by
黑潮
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
updtae: 企微任务判断
parent
bc3038e2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
80 additions
and
20 deletions
+80
-20
form.vue
src/views/ecm/form.vue
+1
-1
index.vue
src/views/ecm/marketing-event/index.vue
+79
-19
No files found.
src/views/ecm/form.vue
View file @
03eaab05
...
...
@@ -275,7 +275,7 @@
<section
class=
"dm-form__wrap"
>
<h3
class=
"dm-title__label"
>
营销事件
</h3>
<!-- 只有实时才是单图文 -->
<marketing-event
:readOnly=
"isInfo"
show-out-coupon-icon
ref=
"marketingEvent"
@
has-card=
"hasCard"
v-if=
"ecmPlanId"
:singleFlag=
"form.effectType === 0"
:integralMultiple=
"form.effectAction === 'consume'"
:ecmPlanId=
"ecmPlanId"
:isSupportVar=
"form.effectType === 0"
:code=
"code"
:enabledMessageState=
"enabledMessageState"
:cardLimitType=
"-1"
:use-stored=
"useStoredFlag && ['consume', 'stored'].includes(form.effectAction)"
></marketing-event>
<marketing-event
:readOnly=
"isInfo"
show-out-coupon-icon
ref=
"marketingEvent"
@
has-card=
"hasCard"
v-if=
"ecmPlanId"
:singleFlag=
"form.effectType === 0"
:integralMultiple=
"form.effectAction === 'consume'"
:ecmPlanId=
"ecmPlanId"
:isSupportVar=
"form.effectType === 0"
:code=
"code"
:enabledMessageState=
"enabledMessageState"
:cardLimitType=
"-1"
:use-stored=
"useStoredFlag && ['consume', 'stored'].includes(form.effectAction)"
:use-qywx=
"[1, 2].includes(form.effectType)"
></marketing-event>
<!-- 只有非实时&&选择卡券了展示提示 -->
<div
v-if=
"currentCard.comName && form.effectType != 0 && couponAutoGetFlag"
class=
"fz13 regular-font-color line-height2"
style=
"margin-left:120px;margin-top:30px;"
>
* 用户在领取卡券后需要
<b
class=
"bold"
>
同步至ERP
</b>
,如果关闭用户
<b
class=
"bold"
>
手动领取
</b>
,卡券在
<b
class=
"bold"
>
批量投放
</b>
时会需要将卡券信息批量同步至ERP。
<br
/>
...
...
src/views/ecm/marketing-event/index.vue
View file @
03eaab05
...
...
@@ -5,7 +5,7 @@
<span
class=
"dm-marketing__opt--label"
>
添加内容
</span>
<i
class=
"el-icon-plus dm-marketing__opt--icon"
@
click=
"optTopShow = !optTopShow"
></i>
<transition
name=
"fade"
>
<opt
@
addItem=
"addItem"
:options=
"
options
"
v-if=
"optTopShow"
></opt>
<opt
@
addItem=
"addItem"
:options=
"
showOptionList
"
v-if=
"optTopShow"
></opt>
</transition>
</div>
<!-- item组件区 -->
...
...
@@ -28,7 +28,7 @@
<div
v-if=
"!readOnly"
class=
"dm-marketing__opt--wrap"
@
mouseleave=
"optShow = false"
>
<i
class=
"el-icon-plus dm-marketing__opt--icon--bottom"
v-if=
"list.length && list.length < maxEventCount"
@
mouseover=
"optShow = true"
></i>
<transition
name=
"fade"
>
<opt
@
addItem=
"addItem"
:options=
"
options
"
v-if=
"list.length && list.length < maxEventCount && optShow"
style=
"margin:0px 0 0 15px;position:relative;top:10px;"
></opt>
<opt
@
addItem=
"addItem"
:options=
"
showOptionList
"
v-if=
"list.length && list.length < maxEventCount && optShow"
style=
"margin:0px 0 0 15px;position:relative;top:10px;"
></opt>
</transition>
</div>
<!-- 弹窗组件 -->
...
...
@@ -67,7 +67,7 @@ import libQywx from './components/lib-qywx';
// 全部的操作项
// eslint-disable-next-line
let
allOptions
=
[{
name
:
'图文'
,
value
:
'teletext'
,
key
:
1
,
img
:
require
(
'./assets/img/teletext.svg'
)
},
{
name
:
'文本'
,
value
:
'text'
,
key
:
2
,
img
:
require
(
'./assets/img/text.svg'
)
},
{
name
:
'小程序'
,
value
:
'wxa'
,
key
:
3
,
img
:
require
(
'./assets/img/wxa.svg'
)
},
{
name
:
'图片'
,
value
:
'image'
,
key
:
4
,
img
:
require
(
'./assets/img/image.svg'
)
},
{
name
:
'卡券'
,
value
:
'card'
,
key
:
5
,
img
:
require
(
'./assets/img/card.svg'
)
},
{
name
:
'短信'
,
value
:
'message'
,
key
:
6
,
img
:
require
(
'./assets/img/message.svg'
)
},
{
name
:
'话务'
,
value
:
'teltask'
,
key
:
7
,
img
:
require
(
'./assets/img/teltask.svg'
)},
{
name
:
'积分'
,
value
:
'integral'
,
key
:
8
,
img
:
require
(
'./assets/img/integral.svg'
)
},
{
name
:
'企微任务'
,
value
:
'qywx'
,
key
:
10
,
img
:
require
(
'./assets/img/integral.svg'
)
}];
let
allOptions
=
[{
name
:
'图文'
,
value
:
'teletext'
,
key
:
1
,
img
:
require
(
'./assets/img/teletext.svg'
)
,
show
:
true
},
{
name
:
'文本'
,
value
:
'text'
,
key
:
2
,
img
:
require
(
'./assets/img/text.svg'
),
show
:
true
},
{
name
:
'小程序'
,
value
:
'wxa'
,
key
:
3
,
img
:
require
(
'./assets/img/wxa.svg'
),
show
:
true
},
{
name
:
'图片'
,
value
:
'image'
,
key
:
4
,
img
:
require
(
'./assets/img/image.svg'
),
show
:
true
},
{
name
:
'卡券'
,
value
:
'card'
,
key
:
5
,
img
:
require
(
'./assets/img/card.svg'
),
show
:
true
},
{
name
:
'短信'
,
value
:
'message'
,
key
:
6
,
img
:
require
(
'./assets/img/message.svg'
),
show
:
true
},
{
name
:
'话务'
,
value
:
'teltask'
,
key
:
7
,
img
:
require
(
'./assets/img/teltask.svg'
),
show
:
true
},
{
name
:
'积分'
,
value
:
'integral'
,
key
:
8
,
img
:
require
(
'./assets/img/integral.svg'
),
show
:
true
},{
name
:
'会员卡升级'
,
value
:
'grade'
,
key
:
9
,
img
:
require
(
'./assets/img/grade.svg'
),
show
:
false
,
disabled
:
false
},
{
name
:
'企微任务'
,
value
:
'qywx'
,
key
:
10
,
img
:
require
(
'./assets/img/integral.svg'
),
show
:
true
}];
export
default
{
name
:
'vue-gic-marketing-event'
,
components
:
{
...
...
@@ -140,8 +140,10 @@ export default {
default
:
false
},
useStored
:
{
type
:
Number
,
default
:
0
type
:
Boolean
},
useQywx
:
{
type
:
Boolean
}
},
data
()
{
...
...
@@ -158,21 +160,81 @@ export default {
},
created
()
{
this
.
allOptions
=
[...
allOptions
];
if
(
this
.
useStored
)
{
this
.
allOptions
.
push
({
name
:
'会员卡升级'
,
value
:
'grade'
,
key
:
9
,
img
:
require
(
'./assets/img/grade.svg'
)
});
//eslint-disable-line
}
//
if (this.useStored) {
//
this.allOptions.push({ name: '会员卡升级', value: 'grade', key: 9, img: require('./assets/img/grade.svg') }); //eslint-disable-line
//
}
this
.
init
();
},
watch
:
{
useStored
:
{
handler
()
{
if
(
this
.
useStored
)
{
this
.
options
=
[
...
this
.
options
,
{
name
:
'会员卡升级'
,
value
:
'grade'
,
key
:
9
,
img
:
require
(
'./assets/img/grade.svg'
),
disabled
:
false
}];
//eslint-disable-line
}
else
{
this
.
options
=
this
.
options
.
filter
(
item
=>
item
.
value
!==
'grade'
);
}
computed
:
{
showOptionList
()
{
if
(
this
.
useStored
)
{
this
.
options
.
forEach
(
item
=>
{
if
(
item
.
value
==
'grade'
)
{
item
.
show
=
true
;
}
});
}
else
{
this
.
options
.
forEach
(
item
=>
{
if
(
item
.
value
==
'grade'
)
{
item
.
show
=
false
;
}
});
}
},
if
(
this
.
useQywx
)
{
this
.
options
.
forEach
(
item
=>
{
if
(
item
.
value
==
'qywx'
)
{
item
.
show
=
true
;
}
});
}
else
{
this
.
options
.
forEach
(
item
=>
{
if
(
item
.
value
==
'qywx'
)
{
item
.
show
=
false
;
}
});
}
return
this
.
options
.
filter
(
item
=>
item
.
show
==
true
);
}
},
watch
:
{
// useStored: {
// handler() {
// console.log('useStored');
// if (this.useStored) {
// // this.options = [ ...this.options, { name: '会员卡升级', value: 'grade', key: 9, img: require('./assets/img/grade.svg'), disabled: false }]; //eslint-disable-line
// this.options.forEach(item => {
// if (item.value == 'grade') {
// item.show = false;
// }
// });
// } else {
// // this.options = this.options.filter(item => item.value !== 'grade');
// this.options.forEach(item => {
// if (item.value == 'grade') {
// item.show = true;
// }
// });
// }
// }
// },
// useQywx: {
// handler() {
// console.log('qywx');
// if (this.useQywx) {
// this.options.forEach(item => {
// if (item.value == 'qywx') {
// item.show = false;
// }
// });
// } else {
// this.options.forEach(item => {
// if (item.value == 'qywx') {
// item.show = true;
// }
// });
// }
// },
// },
list
()
{
if
(
this
.
list
.
some
(
item
=>
item
.
comName
===
'item-grade'
))
{
this
.
options
.
forEach
(
item
=>
{
...
...
@@ -345,7 +407,6 @@ export default {
params
.
relationId
=
val
.
relationId
;
}
if
(
val
.
comName
===
'qywx'
)
{
console
.
log
(
val
);
params
=
{
...
params
,
...
val
};
delete
params
.
comName
;
}
...
...
@@ -451,7 +512,6 @@ export default {
this
.
$emit
(
'has-card'
,
item
);
},
showEdit
(
item
)
{
console
.
log
(
item
);
this
.
options
.
find
(
i
=>
{
return
'item-'
+
i
.
value
==
item
.
comName
;
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment