Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
admin
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
d16ff6ff
authored
Apr 09, 2023
by
YunaiV
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
REVIEW 公众号素材管理
parent
ee35fd67
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
49 additions
and
60 deletions
+49
-60
src/components/bpmnProcessDesigner/package/penal/signal-message/SignalAndMessage.vue
+5
-5
src/types/auto-components.d.ts
+2
-0
src/views/mp/draft/index.vue
+0
-2
src/views/mp/material/index.vue
+41
-51
src/views/mp/menu/index.vue
+1
-2
No files found.
src/components/bpmnProcessDesigner/package/penal/signal-message/SignalAndMessage.vue
View file @
d16ff6ff
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
</el-table>
</el-table>
<el-dialog
<el-dialog
v-model=
"
model
Visible"
v-model=
"
dialog
Visible"
:title=
"modelConfig.title"
:title=
"modelConfig.title"
:close-on-click-modal=
"false"
:close-on-click-modal=
"false"
width=
"400px"
width=
"400px"
...
@@ -39,7 +39,7 @@
...
@@ -39,7 +39,7 @@
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<template
#
footer
>
<template
#
footer
>
<el-button
@
click=
"
model
Visible = false"
>
取 消
</el-button>
<el-button
@
click=
"
dialog
Visible = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"addNewObject"
>
保 存
</el-button>
<el-button
type=
"primary"
@
click=
"addNewObject"
>
保 存
</el-button>
</
template
>
</
template
>
</el-dialog>
</el-dialog>
...
@@ -49,7 +49,7 @@
...
@@ -49,7 +49,7 @@
const
message
=
useMessage
()
const
message
=
useMessage
()
const
signalList
=
ref
<
any
[]
>
([])
const
signalList
=
ref
<
any
[]
>
([])
const
messageList
=
ref
<
any
[]
>
([])
const
messageList
=
ref
<
any
[]
>
([])
const
model
Visible
=
ref
(
false
)
const
dialog
Visible
=
ref
(
false
)
const
modelType
=
ref
(
''
)
const
modelType
=
ref
(
''
)
const
modelObjectForm
=
ref
<
any
>
({})
const
modelObjectForm
=
ref
<
any
>
({})
const
rootElements
=
ref
()
const
rootElements
=
ref
()
...
@@ -85,7 +85,7 @@ const initDataList = () => {
...
@@ -85,7 +85,7 @@ const initDataList = () => {
const
openModel
=
(
type
)
=>
{
const
openModel
=
(
type
)
=>
{
modelType
.
value
=
type
modelType
.
value
=
type
modelObjectForm
.
value
=
{}
modelObjectForm
.
value
=
{}
model
Visible
.
value
=
true
dialog
Visible
.
value
=
true
}
}
const
addNewObject
=
()
=>
{
const
addNewObject
=
()
=>
{
if
(
modelType
.
value
===
'message'
)
{
if
(
modelType
.
value
===
'message'
)
{
...
@@ -101,7 +101,7 @@ const addNewObject = () => {
...
@@ -101,7 +101,7 @@ const addNewObject = () => {
const
signalRef
=
bpmnInstances
().
moddle
.
create
(
'bpmn:Signal'
,
modelObjectForm
.
value
)
const
signalRef
=
bpmnInstances
().
moddle
.
create
(
'bpmn:Signal'
,
modelObjectForm
.
value
)
rootElements
.
value
.
push
(
signalRef
)
rootElements
.
value
.
push
(
signalRef
)
}
}
model
Visible
.
value
=
false
dialog
Visible
.
value
=
false
initDataList
()
initDataList
()
}
}
...
...
src/types/auto-components.d.ts
View file @
d16ff6ff
...
@@ -24,6 +24,7 @@ declare module '@vue/runtime-core' {
...
@@ -24,6 +24,7 @@ declare module '@vue/runtime-core' {
DocAlert
:
typeof
import
(
'./../components/DocAlert/index.vue'
)[
'default'
]
DocAlert
:
typeof
import
(
'./../components/DocAlert/index.vue'
)[
'default'
]
Echart
:
typeof
import
(
'./../components/Echart/src/Echart.vue'
)[
'default'
]
Echart
:
typeof
import
(
'./../components/Echart/src/Echart.vue'
)[
'default'
]
Editor
:
typeof
import
(
'./../components/Editor/src/Editor.vue'
)[
'default'
]
Editor
:
typeof
import
(
'./../components/Editor/src/Editor.vue'
)[
'default'
]
ElAlert
:
typeof
import
(
'element-plus/es'
)[
'ElAlert'
]
ElBadge
:
typeof
import
(
'element-plus/es'
)[
'ElBadge'
]
ElBadge
:
typeof
import
(
'element-plus/es'
)[
'ElBadge'
]
ElButton
:
typeof
import
(
'element-plus/es'
)[
'ElButton'
]
ElButton
:
typeof
import
(
'element-plus/es'
)[
'ElButton'
]
ElButtonGroup
:
typeof
import
(
'element-plus/es'
)[
'ElButtonGroup'
]
ElButtonGroup
:
typeof
import
(
'element-plus/es'
)[
'ElButtonGroup'
]
...
@@ -74,6 +75,7 @@ declare module '@vue/runtime-core' {
...
@@ -74,6 +75,7 @@ declare module '@vue/runtime-core' {
ElTableColumn
:
typeof
import
(
'element-plus/es'
)[
'ElTableColumn'
]
ElTableColumn
:
typeof
import
(
'element-plus/es'
)[
'ElTableColumn'
]
ElTabPane
:
typeof
import
(
'element-plus/es'
)[
'ElTabPane'
]
ElTabPane
:
typeof
import
(
'element-plus/es'
)[
'ElTabPane'
]
ElTabs
:
typeof
import
(
'element-plus/es'
)[
'ElTabs'
]
ElTabs
:
typeof
import
(
'element-plus/es'
)[
'ElTabs'
]
ElTag
:
typeof
import
(
'element-plus/es'
)[
'ElTag'
]
ElTooltip
:
typeof
import
(
'element-plus/es'
)[
'ElTooltip'
]
ElTooltip
:
typeof
import
(
'element-plus/es'
)[
'ElTooltip'
]
ElTree
:
typeof
import
(
'element-plus/es'
)[
'ElTree'
]
ElTree
:
typeof
import
(
'element-plus/es'
)[
'ElTree'
]
ElUpload
:
typeof
import
(
'element-plus/es'
)[
'ElUpload'
]
ElUpload
:
typeof
import
(
'element-plus/es'
)[
'ElUpload'
]
...
...
src/views/mp/draft/index.vue
View file @
d16ff6ff
...
@@ -247,10 +247,8 @@
...
@@ -247,10 +247,8 @@
</el-row>
</el-row>
</div>
</div>
<
template
#
footer
>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"dialogNewsVisible = false"
>
取 消
</el-button>
<el-button
@
click=
"dialogNewsVisible = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
>
提 交
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
>
提 交
</el-button>
</div>
</
template
>
</
template
>
</el-dialog>
</el-dialog>
</Teleport>
</Teleport>
...
...
src/views/mp/material/index.vue
View file @
d16ff6ff
<
template
>
<
template
>
<div
class=
"app-container"
>
<doc-alert
title=
"公众号素材"
url=
"https://doc.iocoder.cn/mp/material/"
/>
<doc-alert
title=
"公众号素材"
url=
"https://doc.iocoder.cn/mp/material/"
/>
<!-- 搜索工作栏 -->
<!-- 搜索工作栏 -->
<ContentWrap>
<el-form
<el-form
class=
"-mb-15px"
:model=
"queryParams"
:model=
"queryParams"
ref=
"queryFormRef"
ref=
"queryFormRef"
size=
"small"
:inline=
"true"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
label-width=
"68px"
>
>
<el-form-item
label=
"公众号"
prop=
"accountId"
>
<el-form-item
label=
"公众号"
prop=
"accountId"
>
<el-select
v-model=
"queryParams.accountId"
placeholder=
"请选择公众号"
>
<el-select
v-model=
"queryParams.accountId"
placeholder=
"请选择公众号"
class=
"!w-240px"
>
<el-option
<el-option
v-for=
"item in account
s
"
v-for=
"item in account
List
"
:key=
"
parseInt(item.id)
"
:key=
"
item.id
"
:label=
"item.name"
:label=
"item.name"
:value=
"
parseInt(item.id)
"
:value=
"
item.id
"
/>
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"handleQuery"
><Icon
icon=
"ep:search"
/>
搜索
</el-button>
<el-button
@
click=
"handleQuery"
><Icon
icon=
"ep:search"
/>
搜索
</el-button>
<el-button
@
click=
"resetQuery"
><Icon
icon=
"ep:refresh"
/>
重置
</el-button>
<el-button
@
click=
"resetQuery"
><Icon
icon=
"ep:refresh"
/>
重置
</el-button>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
</ContentWrap>
<ContentWrap>
<el-tabs
v-model=
"type"
@
tab-change=
"handleTabChange"
>
<el-tabs
v-model=
"type"
@
tab-change=
"handleTabChange"
>
<!-- tab 1:图片 -->
<!-- tab 1:图片 -->
<el-tab-pane
name=
"image"
>
<el-tab-pane
name=
"image"
>
...
@@ -44,11 +44,11 @@
...
@@ -44,11 +44,11 @@
:before-upload=
"beforeImageUpload"
:before-upload=
"beforeImageUpload"
:on-success=
"handleUploadSuccess"
:on-success=
"handleUploadSuccess"
>
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
<el-button
type=
"primary"
plain
>
点击上传
</el-button>
<
template
#
tip
>
<
template
#
tip
>
<span
class=
"el-upload__tip"
style=
"margin-left: 5px"
<span
class=
"el-upload__tip"
style=
"margin-left: 5px"
>
>
支持 bmp/png/jpeg/jpg/gif 格式,大小不超过 2M
</span
支持 bmp/png/jpeg/jpg/gif 格式,大小不超过 2M
>
</span
>
</
template
>
</
template
>
</el-upload>
</el-upload>
</div>
</div>
...
@@ -64,14 +64,14 @@
...
@@ -64,14 +64,14 @@
circle
circle
@
click=
"handleDelete(item)"
@
click=
"handleDelete(item)"
v-hasPermi=
"['mp:material:delete']"
v-hasPermi=
"['mp:material:delete']"
><Icon
icon=
"ep:delete"
>
/></el-button>
<Icon
icon=
"ep:delete"
/>
</el-button>
</el-row>
</el-row>
</div>
</div>
</div>
</div>
<!-- 分页组件 -->
<!-- 分页组件 -->
<pagination
<Pagination
v-show=
"total > 0"
:total=
"total"
:total=
"total"
v-model:page=
"queryParams.pageNo"
v-model:page=
"queryParams.pageNo"
v-model:limit=
"queryParams.pageSize"
v-model:limit=
"queryParams.pageSize"
...
@@ -95,11 +95,11 @@
...
@@ -95,11 +95,11 @@
:on-success=
"handleUploadSuccess"
:on-success=
"handleUploadSuccess"
:before-upload=
"beforeVoiceUpload"
:before-upload=
"beforeVoiceUpload"
>
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
<el-button
type=
"primary"
plain
>
点击上传
</el-button>
<
template
#
tip
>
<
template
#
tip
>
<span
class=
"el-upload__tip"
style=
"margin-left: 5px"
<span
class=
"el-upload__tip"
style=
"margin-left: 5px"
>
>
格式支持 mp3/wma/wav/amr,文件大小不超过 2M,播放长度不超过 60s
</span
格式支持 mp3/wma/wav/amr,文件大小不超过 2M,播放长度不超过 60s
>
</span
>
</
template
>
</
template
>
</el-upload>
</el-upload>
</div>
</div>
...
@@ -118,24 +118,23 @@
...
@@ -118,24 +118,23 @@
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
#
default=
"scope"
>
<
template
#
default=
"scope"
>
<el-button
type=
"primary"
link
size=
"small"
plain
@
click=
"handleDownload(scope.row)"
<el-button
type=
"primary"
link
plain
@
click=
"handleDownload(scope.row)"
>
><Icon
icon=
"ep:download"
/>
下载
</el-button
<Icon
icon=
"ep:download"
/>
下载
>
</el-button
>
<el-button
<el-button
type=
"primary"
type=
"primary"
link
link
size=
"small"
plain
plain
@
click=
"handleDelete(scope.row)"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['mp:material:delete']"
v-hasPermi=
"['mp:material:delete']"
><Icon
icon=
"ep:delete"
/>
删除
</el-button
>
>
<Icon
icon=
"ep:delete"
/>
删除
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
<!-- 分页组件 -->
<!-- 分页组件 -->
<pagination
<Pagination
v-show=
"total > 0"
:total=
"total"
:total=
"total"
v-model:page=
"queryParams.pageNo"
v-model:page=
"queryParams.pageNo"
v-model:limit=
"queryParams.pageSize"
v-model:limit=
"queryParams.pageSize"
...
@@ -149,7 +148,7 @@
...
@@ -149,7 +148,7 @@
<span><Icon
icon=
"ep:video-play"
/>
视频
</span>
<span><Icon
icon=
"ep:video-play"
/>
视频
</span>
</
template
>
</
template
>
<div
class=
"add_but"
v-hasPermi=
"['mp:material:upload-permanent']"
>
<div
class=
"add_but"
v-hasPermi=
"['mp:material:upload-permanent']"
>
<el-button
size=
"small"
type=
"primary"
@
click=
"handleAddVideo"
>
新建视频
</el-button>
<el-button
type=
"primary"
plain
@
click=
"handleAddVideo"
>
新建视频
</el-button>
</div>
</div>
<!-- 新建视频的弹窗 -->
<!-- 新建视频的弹窗 -->
<el-dialog
<el-dialog
...
@@ -220,14 +219,9 @@
...
@@ -220,14 +219,9 @@
<span>
{{
formatDate
(
scope
.
row
.
createTime
)
}}
</span>
<span>
{{
formatDate
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
label=
"操作"
align=
"center"
fixed=
"right"
>
label=
"操作"
align=
"center"
fixed=
"right"
class-name=
"small-padding fixed-width"
>
<
template
#
default=
"scope"
>
<
template
#
default=
"scope"
>
<el-button
type=
"primary"
link
size=
"small"
plain
@
click=
"handleDownload(scope.row)"
<el-button
type=
"primary"
link
plain
@
click=
"handleDownload(scope.row)"
><Icon
icon=
"ep:download"
/>
下载
</el-button
><Icon
icon=
"ep:download"
/>
下载
</el-button
>
>
<el-button
<el-button
...
@@ -237,14 +231,14 @@
...
@@ -237,14 +231,14 @@
plain
plain
@
click=
"handleDelete(scope.row)"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['mp:material:delete']"
v-hasPermi=
"['mp:material:delete']"
><Icon
icon=
"ep:delete"
/>
删除
</el-button
>
>
<Icon
icon=
"ep:delete"
/>
删除
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
<!-- 分页组件 -->
<!-- 分页组件 -->
<pagination
<Pagination
v-show=
"total > 0"
:total=
"total"
:total=
"total"
v-model:page=
"queryParams.pageNo"
v-model:page=
"queryParams.pageNo"
v-model:limit=
"queryParams.pageSize"
v-model:limit=
"queryParams.pageSize"
...
@@ -252,11 +246,9 @@
...
@@ -252,11 +246,9 @@
/>
/>
</el-tab-pane>
</el-tab-pane>
</el-tabs>
</el-tabs>
</
div
>
</
ContentWrap
>
</template>
</template>
<
script
setup
name=
"MpMaterial"
>
<
script
setup
>
import
{
ref
}
from
'vue'
import
WxVoicePlayer
from
'@/views/mp/components/wx-voice-play/main.vue'
import
WxVoicePlayer
from
'@/views/mp/components/wx-voice-play/main.vue'
import
WxVideoPlayer
from
'@/views/mp/components/wx-video-play/main.vue'
import
WxVideoPlayer
from
'@/views/mp/components/wx-video-play/main.vue'
import
{
getSimpleAccountList
}
from
'@/api/mp/account'
import
{
getSimpleAccountList
}
from
'@/api/mp/account'
...
@@ -275,8 +267,6 @@ const uploadVideoRef = ref()
...
@@ -275,8 +267,6 @@ const uploadVideoRef = ref()
const
type
=
ref
(
'image'
)
const
type
=
ref
(
'image'
)
// 遮罩层
// 遮罩层
const
loading
=
ref
(
false
)
const
loading
=
ref
(
false
)
// 显示搜索条件
const
showSearch
=
ref
(
true
)
// 总条数
// 总条数
const
total
=
ref
(
0
)
const
total
=
ref
(
0
)
// 数据列表
// 数据列表
...
@@ -308,14 +298,14 @@ const uploadRules = reactive({
...
@@ -308,14 +298,14 @@ const uploadRules = reactive({
})
})
// 公众号账号列表
// 公众号账号列表
const
account
s
=
ref
([])
const
account
List
=
ref
([])
onMounted
(()
=>
{
onMounted
(()
=>
{
getSimpleAccountList
().
then
((
data
)
=>
{
getSimpleAccountList
().
then
((
data
)
=>
{
account
s
.
value
=
data
account
List
.
value
=
data
// 默认选中第一个
// 默认选中第一个
if
(
account
s
.
value
.
length
>
0
)
{
if
(
account
List
.
value
.
length
>
0
)
{
setAccountId
(
account
s
.
value
[
0
].
id
)
setAccountId
(
account
List
.
value
[
0
].
id
)
}
}
// 加载数据
// 加载数据
getList
()
getList
()
...
@@ -365,8 +355,8 @@ const handleQuery = () => {
...
@@ -365,8 +355,8 @@ const handleQuery = () => {
const
resetQuery
=
()
=>
{
const
resetQuery
=
()
=>
{
queryFormRef
.
value
?.
resetFields
()
queryFormRef
.
value
?.
resetFields
()
// 默认选中第一个
// 默认选中第一个
if
(
account
s
.
value
.
length
>
0
)
{
if
(
account
List
.
value
.
length
>
0
)
{
setAccountId
(
account
s
.
value
[
0
].
id
)
setAccountId
(
account
List
.
value
[
0
].
id
)
}
}
handleQuery
()
handleQuery
()
}
}
...
...
src/views/mp/menu/index.vue
View file @
d16ff6ff
...
@@ -4,13 +4,12 @@
...
@@ -4,13 +4,12 @@
<ContentWrap>
<ContentWrap>
<el-form
<el-form
class=
"-mb-15px"
class=
"-mb-15px"
:model=
"queryParams"
ref=
"queryFormRef"
ref=
"queryFormRef"
:inline=
"true"
:inline=
"true"
label-width=
"68px"
label-width=
"68px"
>
>
<el-form-item
label=
"公众号"
prop=
"accountId"
>
<el-form-item
label=
"公众号"
prop=
"accountId"
>
<el-select
v-model=
"accountId"
placeholder=
"请选择公众号"
>
<el-select
v-model=
"accountId"
placeholder=
"请选择公众号"
class=
"!w-240px"
>
<el-option
<el-option
v-for=
"item in accountList"
v-for=
"item in accountList"
:key=
"item.id"
:key=
"item.id"
...
...
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