提交 1d45dc84 authored 作者: lhh's avatar lhh
...@@ -123,7 +123,8 @@ function handleView(row: Group) { ...@@ -123,7 +123,8 @@ function handleView(row: Group) {
<AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange"> <AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange">
<template #header-buttons> <template #header-buttons>
<el-space> <el-space>
<el-dropdown v-permission="['experiment_group_create_dynamic_group', 'experiment_group_create_static_group']"> <!-- v-permission="['experiment_group_create_dynamic_group', 'experiment_group_create_static_group']" -->
<el-dropdown>
<el-button type="primary" :icon="Plus" v-if="!userStore.status.group_status">新建</el-button> <el-button type="primary" :icon="Plus" v-if="!userStore.status.group_status">新建</el-button>
<template #dropdown> <template #dropdown>
<el-dropdown-menu> <el-dropdown-menu>
......
...@@ -4,6 +4,9 @@ import { Edit, Delete } from '@element-plus/icons-vue' ...@@ -4,6 +4,9 @@ import { Edit, Delete } from '@element-plus/icons-vue'
import { ElMessageBox, ElMessage } from 'element-plus' import { ElMessageBox, ElMessage } from 'element-plus'
import { deleteLabelType } from '../api' import { deleteLabelType } from '../api'
import { useLabelType } from '../composables/useLabelType' import { useLabelType } from '../composables/useLabelType'
import { useUserStore } from '@/stores/user'
const userStore = useUserStore()
defineProps<{ activeId: string }>() defineProps<{ activeId: string }>()
...@@ -40,33 +43,58 @@ function handleRemove(row: LabelType) { ...@@ -40,33 +43,58 @@ function handleRemove(row: LabelType) {
</script> </script>
<template> <template>
<el-button type="primary" style="width: 100%" @click="handleAdd" v-permission="'experiment_tag_type_create'">添加标签目录</el-button> <el-button type="primary" style="width: 100%" @click="handleAdd" v-if="!userStore.status.tag_status"
>添加标签目录</el-button
>
<div class="label-type-total" @click="$emit('select', '')"> <div class="label-type-total" @click="$emit('select', '')">
<h4>全部标签</h4> <h4>全部标签</h4>
<p>{{ labelCount }}</p> <p>{{ labelCount }}</p>
</div> </div>
<ul> <ul>
<li class="label-type-item" :class="{ 'is-active': item.id === activeId }" v-for="item in typeList" :key="item.id" @click="$emit('select', item.id)"> <li
class="label-type-item"
:class="{ 'is-active': item.id === activeId }"
v-for="item in typeList"
:key="item.id"
@click="$emit('select', item.id)"
>
<svg <svg
xmlns="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
:fill="item.url" :fill="item.url"
width="16.67333984375" width="16.67333984375"
height="16.669540405273438" height="16.669540405273438"
viewBox="0 0 16.67333984375 16.669540405273438"> viewBox="0 0 16.67333984375 16.669540405273438"
>
<g> <g>
<path <path
d="M16.6733,8.79462Q16.6733,7.76343,15.9463,7.03212L15.9442,7.03002L9.20711,0.292893C9.01957,0.105357,8.76522,0,8.5,0L1,0C0.447715,0,0,0.447715,0,1L0,8.5C0,8.76541,0.10551,9.01993,0.293287,9.2075L7.02965,15.9364Q7.76207,16.6695,8.79838,16.6695Q9.83479,16.6695,10.5667,15.9367L15.9463,10.5571Q16.6733,9.82582,16.6733,8.79462ZM6.41683,5.37499C6.41683,5.95029,5.95045,6.41666,5.37516,6.41666C4.79987,6.41666,4.3335,5.95029,4.3335,5.37499C4.3335,4.7997,4.79987,4.33333,5.37516,4.33333C5.95045,4.33333,6.41683,4.7997,6.41683,5.37499Z" /> d="M16.6733,8.79462Q16.6733,7.76343,15.9463,7.03212L15.9442,7.03002L9.20711,0.292893C9.01957,0.105357,8.76522,0,8.5,0L1,0C0.447715,0,0,0.447715,0,1L0,8.5C0,8.76541,0.10551,9.01993,0.293287,9.2075L7.02965,15.9364Q7.76207,16.6695,8.79838,16.6695Q9.83479,16.6695,10.5667,15.9367L15.9463,10.5571Q16.6733,9.82582,16.6733,8.79462ZM6.41683,5.37499C6.41683,5.95029,5.95045,6.41666,5.37516,6.41666C4.79987,6.41666,4.3335,5.95029,4.3335,5.37499C4.3335,4.7997,4.79987,4.33333,5.37516,4.33333C5.95045,4.33333,6.41683,4.7997,6.41683,5.37499Z"
/>
</g> </g>
</svg> </svg>
<p>{{ item.name }}</p> <p>{{ item.name }}</p>
<div class="label-type-actions" v-if="!item.is_default"> <div class="label-type-actions" v-if="!item.is_default">
<el-icon class="label-type-item__edit" @click.stop="handleUpdate(item)" v-permission="'experiment_tag_type_update'"><Edit /></el-icon> <el-icon
<el-icon class="label-type-item__remove" @click.stop="handleRemove(item)" v-permission="'experiment_tag_type_delete'"><Delete /></el-icon> class="label-type-item__edit"
@click.stop="handleUpdate(item)"
v-permission="'experiment_tag_type_update'"
><Edit
/></el-icon>
<el-icon
class="label-type-item__remove"
@click.stop="handleRemove(item)"
v-permission="'experiment_tag_type_delete'"
><Delete
/></el-icon>
</div> </div>
</li> </li>
</ul> </ul>
<LabelTypeFormDialog v-model="formVisible" :data="currentRow" @update="fetchTypeList" v-if="formVisible"></LabelTypeFormDialog> <LabelTypeFormDialog
v-model="formVisible"
:data="currentRow"
@update="fetchTypeList"
v-if="formVisible"
></LabelTypeFormDialog>
</template> </template>
<style lang="scss"> <style lang="scss">
......
...@@ -152,7 +152,7 @@ const userStore = useUserStore() --> ...@@ -152,7 +152,7 @@ const userStore = useUserStore() -->
<div class="label-left"><LabelType :active-id="listParams.type_id" @select="handleSelect"></LabelType></div> <div class="label-left"><LabelType :active-id="listParams.type_id" @select="handleSelect"></LabelType></div>
<AppList v-bind="listOptions" ref="appList" class="label-right"> <AppList v-bind="listOptions" ref="appList" class="label-right">
<template #header-buttons> <template #header-buttons>
<el-button type="primary" :icon="Plus" @click="handleAdd" v-permission="'experiment_tag_create'" v-if="!userStore.status.tag_status">新建</el-button> <el-button type="primary" :icon="Plus" @click="handleAdd" v-if="!userStore.status.tag_status">新建</el-button>
</template> </template>
<template #filter-user> <template #filter-user>
<SelectUser v-model="listParams.updated_operator" placeholder="更新人" @change="handleRefresh"></SelectUser> <SelectUser v-model="listParams.updated_operator" placeholder="更新人" @change="handleRefresh"></SelectUser>
...@@ -161,14 +161,23 @@ const userStore = useUserStore() --> ...@@ -161,14 +161,23 @@ const userStore = useUserStore() -->
<template #table-x="{ row }"> <template #table-x="{ row }">
<el-button type="primary" plain @click="handleRule(row)">规则</el-button> <el-button type="primary" plain @click="handleRule(row)">规则</el-button>
<el-button type="primary" plain @click="handleView(row)">查看</el-button> <el-button type="primary" plain @click="handleView(row)">查看</el-button>
<el-button type="primary" plain @click="handleUpdate(row)" v-permission="'experiment_tag_update'">编辑</el-button> <el-button type="primary" plain @click="handleUpdate(row)" v-permission="'experiment_tag_update'"
<el-button type="primary" plain @click="handleRemove(row)" v-permission="'experiment_tag_delete'">删除</el-button> >编辑</el-button
>
<el-button type="primary" plain @click="handleRemove(row)" v-permission="'experiment_tag_delete'"
>删除</el-button
>
</template> </template>
</AppList> </AppList>
</div> </div>
</AppCard> </AppCard>
<!-- 新建/修改标签 --> <!-- 新建/修改标签 -->
<LabelFormDialog v-model="formVisible" :data="currentRow" @update="handleRefresh" v-if="formVisible"></LabelFormDialog> <LabelFormDialog
v-model="formVisible"
:data="currentRow"
@update="handleRefresh"
v-if="formVisible"
></LabelFormDialog>
<!-- 查看标签 --> <!-- 查看标签 -->
<LabelViewDialog v-model="viewVisible" :data="currentRow" v-if="viewVisible && currentRow"></LabelViewDialog> <LabelViewDialog v-model="viewVisible" :data="currentRow" v-if="viewVisible && currentRow"></LabelViewDialog>
<!-- 规则 --> <!-- 规则 -->
......
...@@ -155,6 +155,7 @@ const deleteMembers = function (ids: string) { ...@@ -155,6 +155,7 @@ const deleteMembers = function (ids: string) {
:data="currentRow" :data="currentRow"
@update="handleRefresh()" @update="handleRefresh()"
v-if="updateVisible" v-if="updateVisible"
v-model="updateVisible"></UpdateMaterialDialog> v-model="updateVisible"
></UpdateMaterialDialog>
</AppCard> </AppCard>
</template> </template>
...@@ -118,13 +118,13 @@ const deleteMembers = function (ids: string) { ...@@ -118,13 +118,13 @@ const deleteMembers = function (ids: string) {
<AppCard> <AppCard>
<AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange"> <AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange">
<template #header-buttons> <template #header-buttons>
<el-space> <el-space v-if="!userStore.status.material_status">
<!-- v-permission="'v1-experiment-marketing-material-create'" -->
<el-button <el-button
v-if="!userStore.status.material_status" v-if="!userStore.status.material_status"
type="primary" type="primary"
:icon="Plus" :icon="Plus"
@click="handleAdd" @click="handleAdd"
v-permission="'v1-experiment-marketing-material-create'"
>新建</el-button >新建</el-button
> >
<!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()" <!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()"
......
...@@ -118,13 +118,13 @@ const deleteMembers = function (ids: string) { ...@@ -118,13 +118,13 @@ const deleteMembers = function (ids: string) {
<AppCard> <AppCard>
<AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange"> <AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange">
<template #header-buttons> <template #header-buttons>
<el-space> <el-space v-if="!userStore.status.material_status">
<!-- v-permission="'v1-experiment-marketing-material-create'" -->
<el-button <el-button
v-if="!userStore.status.material_status" v-if="!userStore.status.material_status"
type="primary" type="primary"
:icon="Plus" :icon="Plus"
@click="handleAdd" @click="handleAdd"
v-permission="'v1-experiment-marketing-material-create'"
>新建</el-button >新建</el-button
> >
<!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()" <!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()"
......
...@@ -118,13 +118,13 @@ const deleteMembers = function (ids: string) { ...@@ -118,13 +118,13 @@ const deleteMembers = function (ids: string) {
<AppCard> <AppCard>
<AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange"> <AppList v-bind="listOptions" ref="appList" @selection-change="handleSelectionChange">
<template #header-buttons> <template #header-buttons>
<el-space> <el-space v-if="!userStore.status.material_status">
<!-- v-permission="'v1-experiment-marketing-material-create'" -->
<el-button <el-button
v-if="!userStore.status.material_status" v-if="!userStore.status.material_status"
type="primary" type="primary"
:icon="Plus" :icon="Plus"
@click="handleAdd" @click="handleAdd"
v-permission="'v1-experiment-marketing-material-create'"
>新建</el-button >新建</el-button
> >
<!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()" <!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()"
...@@ -155,6 +155,7 @@ const deleteMembers = function (ids: string) { ...@@ -155,6 +155,7 @@ const deleteMembers = function (ids: string) {
:data="currentRow" :data="currentRow"
@update="handleRefresh()" @update="handleRefresh()"
v-if="updateVisible" v-if="updateVisible"
v-model="updateVisible"></UpdateMaterialDialog> v-model="updateVisible"
></UpdateMaterialDialog>
</AppCard> </AppCard>
</template> </template>
...@@ -155,6 +155,7 @@ const deleteMembers = function (ids: string) { ...@@ -155,6 +155,7 @@ const deleteMembers = function (ids: string) {
:data="currentRow" :data="currentRow"
@update="handleRefresh()" @update="handleRefresh()"
v-if="updateVisible" v-if="updateVisible"
v-model="updateVisible"></UpdateMaterialDialog> v-model="updateVisible"
></UpdateMaterialDialog>
</AppCard> </AppCard>
</template> </template>
...@@ -229,7 +229,8 @@ const downloadMember = function (isAll?: boolean) { ...@@ -229,7 +229,8 @@ const downloadMember = function (isAll?: boolean) {
</el-dropdown-menu> </el-dropdown-menu>
</template> </template>
</el-dropdown> </el-dropdown>
<el-dropdown v-permission="['v1-experiment-member-member-upload', 'v1-experiment-member-event-upload']"> <!-- v-permission="['v1-experiment-member-member-upload', 'v1-experiment-member-event-upload']" -->
<el-dropdown>
<el-button type="primary" :icon="Upload">导入</el-button> <el-button type="primary" :icon="Upload">导入</el-button>
<template #dropdown> <template #dropdown>
<el-dropdown-menu> <el-dropdown-menu>
...@@ -242,7 +243,8 @@ const downloadMember = function (isAll?: boolean) { ...@@ -242,7 +243,8 @@ const downloadMember = function (isAll?: boolean) {
>数据导入进度</el-button >数据导入进度</el-button
> >
<!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()" v-permission="'v1-experiment-member-delete'">删除</el-button> --> <!-- <el-button type="danger" plain :icon="Delete" :disabled="!multipleSelection.length" @click="handleRemoves()" v-permission="'v1-experiment-member-delete'">删除</el-button> -->
<el-dropdown v-permission="'v1-experiment-member-delete'"> <!-- v-permission="'v1-experiment-member-delete'" -->
<el-dropdown>
<el-button type="danger" :icon="Delete">删除</el-button> <el-button type="danger" :icon="Delete">删除</el-button>
<template #dropdown> <template #dropdown>
<el-dropdown-menu> <el-dropdown-menu>
......
...@@ -72,44 +72,51 @@ const studentMenus: IMenuItem[] = [ ...@@ -72,44 +72,51 @@ const studentMenus: IMenuItem[] = [
name: '文本资料管理', name: '文本资料管理',
path: '/material?type=1', path: '/material?type=1',
icon: markRaw(IconText), icon: markRaw(IconText),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
}, },
{ {
name: '图片资料管理', name: '图片资料管理',
path: '/material?type=2', path: '/material?type=2',
icon: markRaw(IconImage), icon: markRaw(IconImage),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
}, },
{ {
name: '卡券资料管理', name: '卡券资料管理',
path: '/material?type=8', path: '/material?type=8',
icon: markRaw(IconCard), icon: markRaw(IconCard),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
}, },
{ {
name: '语音资料管理', name: '语音资料管理',
path: '/material?type=3', path: '/material?type=3',
icon: markRaw(IconAudio), icon: markRaw(IconAudio),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
}, },
{ {
name: '视频资料管理', name: '视频资料管理',
path: '/material?type=4', path: '/material?type=4',
icon: markRaw(IconVideo), icon: markRaw(IconVideo),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
}, },
{ name: 'H5资料管理', path: '/material?type=5', icon: markRaw(IconH5), tag: 'v1-experiment-marketing-material-list' }, { name: 'H5资料管理', path: '/material?type=5', icon: markRaw(IconH5), tag: 'v1-experiment-marketing-material-list' },
{ {
name: '二维码资料管理', name: '二维码资料管理',
path: '/material?type=6', path: '/material?type=6',
icon: markRaw(IconQrcode), icon: markRaw(IconQrcode),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
}, },
{ {
name: '小程序资料管理', name: '小程序资料管理',
path: '/material?type=7', path: '/material?type=7',
icon: markRaw(IconMiniProgram), icon: markRaw(IconMiniProgram),
tag: 'v1-experiment-marketing-material-list' // tag: 'v1-experiment-marketing-material-list'
tag: ''
} }
] ]
}, },
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论