Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
pptist
Project
Project
Details
Activity
Releases
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
viitto
pptist
Commits
38394a72
Commit
38394a72
authored
Jun 12, 2024
by
黄奎
Browse files
Options
Browse Files
Download
Plain Diff
111
parents
4b906066
ccd06b45
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
948 additions
and
80 deletions
+948
-80
common.css
src/assets/styles/common.css
+2
-4
NewEdit.vue
src/components/CloudDisk/NewEdit.vue
+69
-0
copyMove.vue
src/components/CloudDisk/copyMove.vue
+129
-0
index.vue
src/components/CloudDisk/index.vue
+26
-48
temDetails.vue
src/components/home/temDetails.vue
+9
-4
CloudDiskService.ts
src/services/CloudDiskService.ts
+23
-2
UploadPicture.vue
src/views/Editor/CanvasTool/UploadPicture.vue
+8
-6
index.vue
src/views/Editor/EditorHeader/index.vue
+10
-11
index.vue
src/views/Editor/Thumbnails/index.vue
+2
-2
Index.vue
src/views/Market/Index.vue
+10
-3
CloudDiskList.vue
src/views/SellTemplate/CloudDiskList.vue
+653
-0
Workspace.vue
src/views/SellTemplate/Workspace.vue
+7
-0
No files found.
src/assets/styles/common.css
View file @
38394a72
...
...
@@ -514,9 +514,6 @@ page {
.q-mt-lg
{
margin-top
:
20px
}
.q-mb-md
{
margin-bottom
:
10px
}
.q-mb-lg
{
margin-bottom
:
20px
}
...
...
@@ -738,7 +735,8 @@ page {
border
:
none
!important
;
}
.el-button
:not
(
.is-link
)
.none-border
,
.el-menu-item.none-border
,
.el-button
:not
(
.is-link
)
.none-border
:hover
,
.el-menu-item.none-border
:hover
{
.el-button
:not
(
.is-link
)
.none-border
:hover
,
.el-menu-item.none-border
:hover
,
.el-dropdown.none-border
:hover
,
.el-dropdown-menu.none-border
:hover
{
border
:
0
;
}
.el-avatar--square
{
...
...
src/components/CloudDisk/NewEdit.vue
0 → 100644
View file @
38394a72
<
template
>
<el-dialog
v-model=
"dialogFormVisible"
:show-close=
"false"
:title=
"dialogTitle"
width=
"340"
:close-on-press-escape=
"false"
:close-on-click-modal=
"false"
>
<div>
<el-input
v-model=
"addEditMsg.GName"
placeholder=
"请输入分组名称"
>
</el-input>
<el-input
class=
"q-pt-lg"
type=
"Number"
v-model=
"addEditMsg.SortNum"
placeholder=
"排序"
>
</el-input>
</div>
<template
#
footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"close"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"setGroup"
:loading=
"setLoading"
>
确认
</el-button>
</div>
</
template
>
</el-dialog>
</template>
<
script
lang=
"ts"
setup
>
import
{
reactive
,
ref
,
onMounted
,
watch
}
from
"vue"
;
import
{
ElLoading
,
ElMessage
,
ElMessageBox
}
from
"element-plus"
;
import
CloudDiskService
from
'@/services/CloudDiskService'
import
{
ApiResult
}
from
"@/configs/axios"
;
const
dialogFormVisible
=
ref
(
true
)
const
dialogTitle
=
ref
(
''
)
const
setLoading
=
ref
(
false
)
// const addEditMsg = reactive({
// Id: '',
// GName: '',
// SortNum: null,
// })
const
props
=
defineProps
({
dialogType
:
{
type
:
Number
,
required
:
true
,
},
addEditMsg
:
{
type
:
Object
,
required
:
''
,
},
})
const
emit
=
defineEmits
<
{
(
event
:
'close'
):
void
,
(
event
:
'success'
):
void
,
}
>
()
dialogTitle
.
value
=
props
.
dialogType
==
1
?
'新增分组名称'
:
'编辑分组名称'
const
close
=
()
=>
{
dialogFormVisible
.
value
=
false
emit
(
'close'
)
}
const
setGroup
=
async
()
=>
{
if
(
!
props
.
addEditMsg
.
GName
)
return
ElMessage
.
warning
({
showClose
:
true
,
message
:
`请输入分组名称`
,
})
setLoading
.
value
=
true
let
pageRes
=
await
CloudDiskService
.
SetPPTCloudGroup
(
props
.
addEditMsg
);
if
(
pageRes
.
data
.
resultCode
==
ApiResult
.
SUCCESS
)
{
dialogFormVisible
.
value
=
false
emit
(
'success'
)
}
setLoading
.
value
=
false
}
</
script
>
\ No newline at end of file
src/components/CloudDisk/copyMove.vue
0 → 100644
View file @
38394a72
<
template
>
<el-dialog
v-model=
"dialogFormVisible"
:show-close=
"false"
:title=
"dialogTitle"
width=
"340"
:close-on-press-escape=
"false"
:close-on-click-modal=
"false"
>
<div
v-loading=
"loadingGroup"
>
<el-select
v-model=
"params.GId"
placeholder=
"Select"
style=
"width: 100%;"
@
change=
"getGName"
>
<el-option
v-for=
"item in GroupList"
:key=
"item.Id"
:label=
"item.GName"
:value=
"item.Id"
>
</el-option>
</el-select>
</div>
<template
#
footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"close"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"submit"
:loading=
"setLoading"
>
确认
{{
dialogType
==
1
?
'复制'
:
'移动'
}}
</el-button>
</div>
</
template
>
</el-dialog>
</template>
<
script
lang=
"ts"
setup
>
import
{
reactive
,
ref
,
onMounted
,
watch
}
from
"vue"
;
import
{
ElLoading
,
ElMessage
,
ElMessageBox
}
from
"element-plus"
;
import
CloudDiskService
from
'@/services/CloudDiskService'
import
{
ApiResult
}
from
"@/configs/axios"
;
const
dialogFormVisible
=
ref
(
true
)
const
dialogTitle
=
ref
(
''
)
const
setLoading
=
ref
(
false
)
const
loadingGroup
=
ref
(
false
)
// const GroupList = ref([] as any)
const
currentGroup
=
ref
(
''
as
any
)
const
props
=
defineProps
({
dialogType
:
{
type
:
Number
,
required
:
true
,
},
DetailsId
:
{
type
:
String
,
required
:
''
,
},
GroupId
:
{
type
:
String
,
required
:
''
,
},
GroupList
:{
type
:
Array
,
required
:
[],
}
})
const
params
=
reactive
({
Id
:
''
as
String
,
GId
:
''
as
String
,
})
params
.
GId
=
props
.
GroupId
const
emit
=
defineEmits
<
{
(
event
:
'close'
):
void
,
(
event
:
'success'
):
void
,
}
>
()
dialogTitle
.
value
=
props
.
dialogType
==
1
?
'复制文件'
:
'移动文件'
const
getGName
=
()
=>
{
let
GroupArr
=
GroupList
.
value
.
filter
(
x
=>
x
.
Id
==
params
.
GId
)
currentGroup
.
value
=
GroupArr
[
0
].
GName
}
const
close
=
()
=>
{
dialogFormVisible
.
value
=
false
emit
(
'close'
)
}
const
submit
=
()
=>
{
params
.
Id
=
props
.
DetailsId
let
text
=
''
if
(
props
.
dialogType
==
1
)
text
=
`复制到
${
currentGroup
.
value
}
分组下`
else
text
=
`移动至
${
currentGroup
.
value
}
分组下`
ElMessageBox
.
confirm
(
`
${
text
}
`
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
,
}
).
then
(()
=>
{
setCopy
()
}).
catch
(()
=>
{})
}
const
setCopy
=
async
()
=>
{
setLoading
.
value
=
true
let
pageRes
;
if
(
props
.
dialogType
==
1
)
pageRes
=
await
CloudDiskService
.
CloudFileCopy
(
params
);
else
pageRes
=
await
CloudDiskService
.
CloudFileMove
(
params
);
if
(
pageRes
.
data
.
resultCode
==
ApiResult
.
SUCCESS
)
{
dialogFormVisible
.
value
=
false
emit
(
'success'
)
}
setLoading
.
value
=
false
}
const
querySearchGroup
=
async
()
=>
{
if
(
loadingGroup
.
value
)
return
loadingGroup
.
value
=
true
try
{
// let datasRes = await CloudDiskService.GetPPTCloudLists('');
// if (datasRes.data.resultCode==ApiResult.SUCCESS) {
// GroupList.value = datasRes.data.data.list
// GroupList.value.unshift({
// Id: '',
// GName: '全部',
// RecordNum: datasRes.data.data.TotalNum
// })
// let GroupArr = GroupList.value.filter(x=>x.Id==params.GId)
// if(GroupArr.length==0) params.GId = ''
// }
loadingGroup
.
value
=
false
}
catch
(
error
)
{
loadingGroup
.
value
=
false
}
}
querySearchGroup
()
let
GroupArr
=
props
.
GroupList
.
filter
(
x
=>
x
.
Id
==
params
.
GId
)
if
(
GroupArr
.
length
==
0
)
params
.
GId
=
''
</
script
>
\ No newline at end of file
src/components/CloudDisk/index.vue
View file @
38394a72
...
...
@@ -2,13 +2,13 @@
<div
class=
"CloudDisk-form row"
>
<div
class=
"CloudDisk-L"
>
<div
class=
"row CloudDisk-L-inquire"
>
<el-input
class=
"grow
"
v-model=
"GName"
placeholder=
"搜索分组名称"
@
keyup
.
enter=
"querySearchGroup"
<el-input
style=
"width: 123px;
"
v-model=
"GName"
placeholder=
"搜索分组名称"
clearable
@
keyup
.
enter=
"querySearchGroup"
@
input=
"SearchGroup"
>
</el-input>
<el-button
type=
"primary"
@
click=
"addEditGroup"
>
添加
</el-button>
</div>
<div
class=
"CloudDisk-L-Center fz14"
v-loading=
"
deleteLoading
"
>
<div
class=
"CloudDisk-L-Center fz14"
v-loading=
"
loadingGroup
"
>
<div
class=
"CloudDisk-L-Title row flex-between cusor-pointer"
v-for=
"(item,index) in GroupList"
:key=
"index"
@
click
.
stop=
"Search(item)"
:class=
"[queryObj.CloudGroupId==item.Id?'active':'']"
>
...
...
@@ -102,7 +102,6 @@
v-model:current-page=
"queryObj.pageIndex"
:page-size=
"queryObj.pageSize"
small-padding
small=
"small"
layout=
"prev, pager, next"
:total=
"total"
@
size-change=
"handleSizeChange"
...
...
@@ -112,25 +111,12 @@
</div>
</div>
<el-dialog
v-model=
"dialogFormVisible"
:title=
"dialogTitle"
width=
"340"
@
close=
"close"
>
<div>
<el-input
v-model=
"addEditMsg.GName"
placeholder=
"请输入分组名称"
>
</el-input>
<el-input
class=
"q-pt-lg"
type=
"Number"
v-model=
"addEditMsg.SortNum"
placeholder=
"排序"
>
</el-input>
</div>
<
template
#
footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"dialogFormVisible = false"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"setGroup"
:loading=
"setLoading"
>
确认
</el-button>
</div>
</
template
>
</el-dialog>
<NewEditCloudDisk
v-if=
"dialogFormVisible"
:dialogType=
"dialogType"
:addEditMsg=
"addEditMsg"
@
close=
"close"
@
success=
"dialogFormVisible=false,querySearchGroup()"
></NewEditCloudDisk>
</template>
<
script
lang=
"ts"
setup
>
import
{
Plus
,
Top
,
Bottom
,
Delete
,
Edit
}
from
"@element-plus/icons-vue"
;
...
...
@@ -143,11 +129,12 @@ import AliyunUpload from '@/utils/upload/aliyun'
import
{
useUserStore
}
from
"@/store"
;
import
{
storeToRefs
}
from
'pinia'
import
{
ApiResult
}
from
"@/configs/axios"
;
import
NewEditCloudDisk
from
'./NewEdit'
const
{
token
,
userInfo
}
=
storeToRefs
(
useUserStore
())
const
dialogFormVisible
=
ref
(
false
)
const
dialogT
itle
=
ref
(
''
)
const
dialogT
ype
=
ref
(
0
)
const
queryObj
=
reactive
({
pageIndex
:
1
,
pageSize
:
11
,
...
...
@@ -167,11 +154,9 @@ const GroupId = ref(''|Number)
const
imgDiskRef
=
ref
<
any
>
()
const
dataList
=
ref
([]
as
any
)
const
loading
=
ref
(
false
)
const
loadingGroup
=
ref
(
false
)
const
GroupList
=
ref
([]
as
any
)
const
setLoading
=
ref
(
false
)
const
deleteLoading
=
ref
(
false
)
const
deleteImgLoading
=
ref
<
any
>
(
null
)
const
props
=
defineProps
({
active
:
''
as
any
,
show
:
false
as
Boolean
...
...
@@ -180,7 +165,8 @@ const props = defineProps({
const
GroupObj
=
ref
({}
as
any
)
const
emit
=
defineEmits
<
{
(
event
:
'setImg'
):
void
(
event
:
'setImg'
):
void
,
(
event
:
'getImg'
):
void
,
}
>
()
watch
(()
=>
props
.
active
,
()
=>
{
...
...
@@ -294,27 +280,14 @@ const deleteImg = (item:any) => {
const
addEditGroup
=
()
=>
{
dialogFormVisible
.
value
=
true
dialogTitle
.
value
=
'添加分组名称'
}
const
setGroup
=
async
()
=>
{
if
(
!
addEditMsg
.
GName
)
return
ElMessage
.
warning
({
showClose
:
true
,
message
:
`请输入分组名称`
,
})
setLoading
.
value
=
true
let
pageRes
=
await
CloudDiskService
.
SetPPTCloudGroup
(
addEditMsg
);
if
(
pageRes
.
data
.
resultCode
==
ApiResult
.
SUCCESS
)
{
dialogFormVisible
.
value
=
false
querySearchGroup
()
}
setLoading
.
value
=
false
dialogType
.
value
=
1
}
const
close
=
()
=>
{
addEditMsg
.
Id
=
''
addEditMsg
.
GName
=
''
addEditMsg
.
SortNum
=
null
dialogFormVisible
.
value
=
false
}
const
EditGroup
=
(
item
:
any
)
=>
{
...
...
@@ -323,11 +296,11 @@ const EditGroup = (item:any) =>{
addEditMsg
.
GName
=
data
.
GName
addEditMsg
.
SortNum
=
data
.
SortNum
dialogFormVisible
.
value
=
true
dialogT
itle
.
value
=
'编辑分组名称'
dialogT
ype
.
value
=
2
}
// 删除
const
deleteGroup
=
(
item
:
any
)
=>
{
const
deleteGroup
=
async
(
item
:
any
)
=>
{
ElMessageBox
.
confirm
(
`此操作将删除该分组,是否确定?`
,
'提示'
,
...
...
@@ -337,13 +310,13 @@ const deleteGroup = (item:any) => {
type
:
'warning'
,
}
).
then
(
async
()
=>
{
loadingGroup
.
value
=
true
try
{
deleteLoading
.
value
=
true
let
dataRes
=
await
CloudDiskService
.
RemovePPTCloudGroup
(
item
.
Id
)
loadingGroup
.
value
=
false
if
(
dataRes
.
data
.
resultCode
==
1
)
{
querySearchGroup
()
}
deleteLoading
.
value
=
false
}
catch
(
error
)
{}
}).
catch
(()
=>
{})
...
...
@@ -353,6 +326,8 @@ const SearchGroup = () => {
if
(
GName
.
value
==
''
)
querySearchGroup
()
}
const
querySearchGroup
=
async
()
=>
{
if
(
loadingGroup
.
value
)
return
loadingGroup
.
value
=
true
try
{
let
datasRes
=
await
CloudDiskService
.
GetPPTCloudList
(
GName
.
value
);
if
(
datasRes
.
data
.
resultCode
==
ApiResult
.
SUCCESS
)
{
...
...
@@ -363,9 +338,11 @@ const querySearchGroup = async () =>{
RecordNum
:
datasRes
.
data
.
data
.
TotalNum
})
}
loadingGroup
.
value
=
false
}
catch
(
error
)
{
loadingGroup
.
value
=
false
}
}
const
SearchImg
=
()
=>
{
if
(
queryObj
.
FileName
==
''
)
Search
()
...
...
@@ -380,6 +357,7 @@ const Search = (item:any=null) =>{
}
const
querySearchHandler
=
async
()
=>
{
if
(
loading
.
value
)
return
loading
.
value
=
true
try
{
// if(queryObj.pageIndex == 1) dataList.value =[]
...
...
src/components/home/temDetails.vue
View file @
38394a72
...
...
@@ -84,7 +84,7 @@ import { useSellTemplateStore,useSlidesStore } from '@/store'
import
{
useScreenStore
}
from
"@/store/screen"
;
import
{
storeToRefs
}
from
"pinia"
;
import
{
injectKeyTemplate
}
from
'@/types/injectKey'
import
{
createOpEditorLink
,
createSaleCreateLink
,
managerTemplate
Link
}
from
'@/utils/common'
import
{
noDataImg
,
createOpEditorLink
,
createSaleCreateLink
,
managerTemplateLink
,
createSaleEditor
Link
}
from
'@/utils/common'
import
{
ElLoading
,
ElMessage
,
ElMessageBox
}
from
"element-plus"
;
import
{
useRouter
}
from
"vue-router"
;
import
UserCard
from
"@/components/User/UserCard.vue"
;
...
...
@@ -92,8 +92,6 @@ import { Delete,View } from '@element-plus/icons-vue';
import
{
VIEWPORT_SIZE
,
VIEWPORT_VER_SIZE
}
from
'@/configs/canvas'
import
foote
from
'@/components/footer/index.vue'
;
import
{
noDataImg
}
from
"@/utils/common"
;
const
slidesStore
=
useSlidesStore
()
const
{
...
...
@@ -228,9 +226,16 @@ const getTemplate = async (item:any) => {
* 页面跳转
*/
const
goToTemplate
=
(
item
:
any
)
=>
{
if
((
searchData
.
value
.
TempId2
&&
searchData
.
value
.
TempId2
!=
item
.
TempId
)
||!
searchData
.
value
.
TempId2
)
slidesStore
.
ClearSlides
()
searchData
.
value
.
TempId
=
item
.
TempId
if
((
searchData
.
value
.
TempId2
&&
searchData
.
value
.
TempId2
!=
item
.
TempId
)
||!
searchData
.
value
.
TempId2
)
{
slidesStore
.
ClearSlides
()
}
let
url
=
''
if
(
model
.
value
==
2
)
url
=
createSaleCreateLink
(
item
.
TempId
,
item
.
TemplateType
)
else
if
(
model
.
value
==
2
&&
searchData
.
value
.
TempId2
)
{
let
Editor
=
searchData
.
value
.
SalesEditor
url
=
createSaleEditorLink
(
Editor
.
id
,
item
.
TempId
,
Editor
.
type
,
Editor
.
pid
,
Editor
.
e
,
Editor
.
c
)
}
else
if
(
model
.
value
==
0
&&
router
.
currentRoute
.
value
.
params
.
configId
)
url
=
createOpEditorLink
(
parseInt
(
router
.
currentRoute
.
value
.
params
.
configId
.
toString
()),
item
.
TempType
,
item
.
TempId
)
else
if
(
model
.
value
==
1
)
{
searchData
.
value
.
currentMenu
=
null
...
...
src/services/CloudDiskService.ts
View file @
38394a72
...
...
@@ -3,6 +3,27 @@ import Api,{ HttpResponse, Result } from './../utils/request';
class
CloudDiskService
{
static
async
CloudFileCopy
(
params
:
any
):
Promise
<
HttpResponse
>
{
return
Api
.
Post
(
"ppt_CloudFileCopy"
,
params
)
}
static
async
CloudFileMove
(
params
:
any
):
Promise
<
HttpResponse
>
{
return
Api
.
Post
(
"ppt_CloudFileMove"
,
params
)
}
static
async
UpdateCloudInfoName
(
params
:
any
):
Promise
<
HttpResponse
>
{
return
Api
.
Post
(
"ppt_UpdateCloudInfoName"
,
params
)
}
static
async
GetPPTCloudLists
(
GName
:
String
):
Promise
<
HttpResponse
>
{
let
msg
=
{
GName
}
return
Api
.
Post
(
"ppt_GetPPTCloudList"
,
msg
)
}
static
async
GetPPTCloudInfoPages
(
params
:
any
):
Promise
<
HttpResponse
>
{
return
Api
.
Post
(
"ppt_GetPPTCloudInfoPage"
,
params
)
}
static
async
CheckCloudInfo
(
parms
:
any
):
Promise
<
HttpResponse
>
{
let
msg
=
parms
return
Api
.
Post
(
"ppt_CheckCloudInfo"
,
msg
)
...
...
@@ -15,11 +36,11 @@ class CloudDiskService{
static
async
GetPPTCloudList
(
GName
:
String
):
Promise
<
HttpResponse
>
{
let
msg
=
{
GName
}
return
Api
.
Post
(
"ppt_GetMyCloudList"
,
msg
)
//ppt_GetPPTCloudList
return
Api
.
Post
(
"ppt_GetMyCloudList"
,
msg
)
}
static
async
GetPPTCloudInfoPage
(
params
:
any
):
Promise
<
HttpResponse
>
{
return
Api
.
Post
(
"ppt_GetMyPPTCloudInfoPage"
,
params
)
//ppt_GetPPTCloudInfoPage
return
Api
.
Post
(
"ppt_GetMyPPTCloudInfoPage"
,
params
)
}
static
async
RemovePPTCloudGroup
(
Id
:
Number
):
Promise
<
HttpResponse
>
{
...
...
src/views/Editor/CanvasTool/UploadPicture.vue
View file @
38394a72
...
...
@@ -7,7 +7,7 @@
<el-tabs
v-model=
"activeName"
class=
"demo-tabs"
@
tab-click=
"handleClick"
>
<el-tab-pane
label=
"平台资料库"
name=
"1"
>
<template
v-if=
"userInfo.iv||userInfo.it"
>
<el-row
class=
"q-mb-md"
>
<el-row>
<el-col
:span=
"6"
>
<el-select
v-model=
"datas.queryMsg.Type"
class=
"m-2"
@
change=
"SearchHandler()"
>
...
...
@@ -28,7 +28,7 @@
<!-- <el-input v-model="datas.queryMsg.Name" placeholder="输入关键字快速查找" clearable class="input-with-select q-pl-lg" @change="SearchHandler()"></el-input> -->
</el-col>
</el-row>
<div
class=
"row UploadPicture-box"
v-loading=
"datas.loading"
>
<div
class=
"row UploadPicture-box
q-pt-lg
"
v-loading=
"datas.loading"
>
<div
v-for=
"(item,index) in datas.imgList"
class=
"UploadPicture-list"
:key=
"item.ID"
>
<div
class=
"UploadPicture-listBox"
>
<img
:src=
"item.Path"
class=
""
@
click=
"getImgs(item,index)"
/>
...
...
@@ -44,7 +44,7 @@
<el-pagination
v-model:current-page=
"datas.queryMsg.pageIndex"
:page-size=
"datas.queryMsg.pageSize"
small
=
"small"
small
-padding
layout=
"prev, pager, next"
:total=
"datas.queryMsg.total"
@
size-change=
"handleSizeChange"
...
...
@@ -377,16 +377,18 @@ getImgList()
}
.UploadPicture-box
{
flex-wrap
:
wrap
;
margin-left
:
-10px
;
}
.UploadPicture-list
{
width
:
150px
;
margin
:
5px
;
width
:
calc
(
25%
-
10px
)
!
important
;
margin-bottom
:
10px
;
margin-left
:
10px
;
}
.UploadPicture-listBox
{
width
:
150px
;
height
:
0
;
position
:
relative
;
padding-bottom
:
56
.25
%
;
padding-bottom
:
64
.96
%
;
}
.UploadPicture-list
img
{
width
:
100%
;
...
...
src/views/Editor/EditorHeader/index.vue
View file @
38394a72
...
...
@@ -224,7 +224,6 @@ const journeyAdsDetails = ref<Object>()
const
psdVisibleStatus
=
ref
(
false
)
const
{
market
,
model
,
ConfigId
,
CoverImg
,
dataLoading
,
TempId
,
TempType
,
SourceLoading
}
=
storeToRefs
(
useScreenStore
())
const
routers
=
useRouter
();
// 返回到首页 type 1 模版列表页 0 销售在线模版页
const
goBack
=
(
type
:
any
)
=>
{
mainBackVisible
.
value
=
false
...
...
@@ -241,11 +240,19 @@ const goBack = (type:any) =>{
mainStore
.
setToolbarState
(
ToolbarStates
.
SLIDE_DESIGN
)
let
path
=
'/'
const
t
=
useSlidesStore
().
viewportRatio
<
0
?
1
:
2
searchData
.
value
.
SalesEditor
=
null
if
(
model
.
value
==
0
)
{
path
=
`/market/op/
${
ConfigId
.
value
}
/
${
TempType
.
value
}
`
router
.
push
({
path
})
}
else
if
(
model
.
value
==
2
){
if
(
type
==
1
)
path
=
`/market/create`
if
(
type
==
1
)
{
searchData
.
value
.
SalesEditor
=
router
.
currentRoute
.
value
.
params
searchData
.
value
.
TempId2
=
queryObj
.
value
.
TempId
marketStore
.
setMarket
(
true
)
SalesBackStore
.
setSalesBack
(
1
)
searchData
.
value
.
TempId
=
0
path
=
`/market/create/
${
queryObj
.
value
.
TemplateType
==
1
?
'trip'
:
'ad'
}${
searchData
.
value
.
currentMenu
>=
0
?
'/'
+
searchData
.
value
.
currentMenu
:
''
}
`
}
else
if
(
searchData
.
value
.
currentMenu
>=
0
)
{
path
=
`/space/
${
searchData
.
value
.
currentMenu
}
`
searchData
.
value
.
currentMenu
=
null
...
...
@@ -258,13 +265,7 @@ const goBack = (type:any) =>{
}
// 返回是否清空数据
const
setNewDatas
=
(
type
,
i
)
=>
{
if
(
type
)
{
marketStore
.
setMarket
(
true
)
if
(
model
.
value
==
2
)
{
if
(
searchData
.
value
.
TempId
)
searchData
.
value
.
TempId2
=
searchData
.
value
.
TempId
SalesBackStore
.
setSalesBack
(
1
)
}
}
else
{
if
(
!
type
)
{
searchData
.
value
.
TempId2
=
0
searchData
.
value
.
sellId
=
0
searchData
.
value
.
sellTempId
=
0
...
...
@@ -272,8 +273,6 @@ const setNewDatas = (type,i) => {
SalesBackStore
.
setSalesBack
(
0
)
SalesEditorStore
.
setSalesEditor
(
0
)
}
searchData
.
value
.
TempId
=
0
// i 1模版权限 0无模版权限
CoverImgStore
.
setCoverImg
(
null
)
}
// 导入PSD
...
...
src/views/Editor/Thumbnails/index.vue
View file @
38394a72
...
...
@@ -522,7 +522,8 @@ const GetTripTemplate = async () =>{
queryObj
.
value
.
TempType
=
dataRes
.
data
.
data
.
TempType
queryObj
.
value
.
TemplateType
=
dataRes
.
data
.
data
.
TemplateType
queryObj
.
value
.
AuthType
=
dataRes
.
data
.
data
.
AuthType
queryObj
.
value
.
Title
=
dataRes
.
data
.
data
.
Title
if
(
queryObj
.
value
.
Width
){
VIEWPORT_SIZE
.
Value
=
queryObj
.
value
.
Height
VIEWPORT_VER_SIZE
.
Value
=
queryObj
.
value
.
Width
...
...
@@ -943,7 +944,6 @@ const contextmenusThumbnailItem = (): ContextmenuItem[] => {
},
]
}
if
(
searchData
.
value
.
sellId
&&!
searchData
.
value
.
TempId
)
sellGetTripTemplate
()
if
(
!
viewSlideShow
)
{
GetTripTemplate
()
...
...
src/views/Market/Index.vue
View file @
38394a72
...
...
@@ -237,7 +237,7 @@ import { useSellTemplateStore, useSlidesStore } from '@/store'
import
{
useScreenStore
}
from
"@/store/screen"
;
import
{
storeToRefs
}
from
"pinia"
;
import
{
injectKeyTemplate
}
from
'@/types/injectKey'
import
{
createOpEditorLink
,
createSaleCreateLink
,
managerTemplateLink
}
from
'@/utils/common'
import
{
createOpEditorLink
,
createSaleCreateLink
,
managerTemplateLink
,
createSaleEditorLink
}
from
'@/utils/common'
import
{
ElLoading
,
ElMessage
,
ElMessageBox
}
from
"element-plus"
;
import
{
useRouter
}
from
"vue-router"
;
import
UserCard
from
"@/components/User/UserCard.vue"
;
...
...
@@ -428,9 +428,16 @@ const getTemplate = (item:any,index:Number) => {
* 页面跳转
*/
const
goToTemplate
=
(
item
:
any
)
=>
{
if
((
searchData
.
value
.
TempId2
&&
searchData
.
value
.
TempId2
!=
item
.
TempId
)
||!
searchData
.
value
.
TempId2
)
slidesStore
.
ClearSlides
()
searchData
.
value
.
TempId
=
item
.
TempId
if
((
searchData
.
value
.
TempId2
&&
searchData
.
value
.
TempId2
!=
item
.
TempId
)
||!
searchData
.
value
.
TempId2
)
{
slidesStore
.
ClearSlides
()
}
let
url
=
''
if
(
model
.
value
==
2
)
url
=
createSaleCreateLink
(
item
.
TempId
,
item
.
TemplateType
)
if
(
model
.
value
==
2
&&!
searchData
.
value
.
TempId2
)
url
=
createSaleCreateLink
(
item
.
TempId
,
item
.
TemplateType
)
else
if
(
model
.
value
==
2
&&
searchData
.
value
.
TempId2
)
{
let
Editor
=
searchData
.
value
.
SalesEditor
url
=
createSaleEditorLink
(
Editor
.
id
,
item
.
TempId
,
Editor
.
type
,
Editor
.
pid
,
Editor
.
e
,
Editor
.
c
)
}
else
if
(
model
.
value
==
0
&&
router
.
currentRoute
.
value
.
params
.
configId
)
url
=
createOpEditorLink
(
parseInt
(
router
.
currentRoute
.
value
.
params
.
configId
.
toString
()),
item
.
TempType
,
item
.
TempId
)
else
if
(
model
.
value
==
1
)
url
=
managerTemplateLink
(
item
.
TempId
,
item
.
TemplateType
)
if
(
url
!=
''
)
{
...
...
src/views/SellTemplate/CloudDiskList.vue
0 → 100644
View file @
38394a72
This diff is collapsed.
Click to expand it.
src/views/SellTemplate/Workspace.vue
View file @
38394a72
...
...
@@ -30,6 +30,11 @@
<div
class=
"tabs-items"
>
<div
class=
"item"
:class=
"{'active':currentMenu==-1}"
@
click=
"setCurrentMenuHandler(-1)"
v-if=
"userInfo.iv||userInfo.it"
><el-icon
color=
"#564bec"
class=
"q-mr-md"
size=
"16"
><Delete
/></el-icon>
回收站
</div>
</div>
<div
class=
"tabs-items"
v-if=
"userInfo.iv||userInfo.it"
>
<div
class=
"q-mb-md q-ml-lg text-small"
>
我的云盘
</div>
<div
class=
"item"
:class=
"{'active':currentMenu==5}"
@
click=
"setCurrentMenuHandler(5)"
><el-icon
color=
"#564bec"
class=
"q-mr-md"
size=
"16"
><MostlyCloudy
/></el-icon>
云盘空间
</div>
</div>
</div>
<div
class=
"col"
>
<BrowsingHistory
:current-menu=
"currentMenu"
v-if=
"currentMenu==0"
></BrowsingHistory>
...
...
@@ -37,6 +42,7 @@
<journeyAds
:position=
"position"
:current-menu=
"currentMenu"
v-if=
"currentMenu==3||currentMenu==4"
@
destroy-position=
"()=>position=null"
></journeyAds>
<RecycleBin
:current-menu=
"currentMenu"
v-if=
"currentMenu==-1"
></RecycleBin>
<ShareList
:position=
"position"
v-if=
"currentMenu==2"
@
destroy-position=
"()=>position=null"
></ShareList>
<CloudDiskList
v-if=
"currentMenu==5"
></CloudDiskList>
</div>
</template>
<
script
setup
lang=
"ts"
>
...
...
@@ -48,6 +54,7 @@ import StarTarget from './StarTarget.vue'
import
ShareList
from
'./Share.vue'
;
import
journeyAds
from
'./journeyAds.vue'
import
RecycleBin
from
'./RecycleBin.vue'
import
CloudDiskList
from
'./CloudDiskList.vue'
import
{
Plus
,
ArrowDown
,
Clock
,
Star
,
Share
,
Picture
,
Management
,
Delete
,
Setting
}
from
'@element-plus/icons-vue'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
openNewBlank
}
from
'@/utils/common'
;
...
...
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