Commit e092dc76 authored by zhengke's avatar zhengke

Merge branch 'master' into 1.4.0

parents 825dd19c ccd06b45
......@@ -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{
......
<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
<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
......@@ -2,13 +2,13 @@
<div class="CloudDisk-form row">
<div class="CloudDisk-L">
<div class="row CloudDisk-L-inquire">
<el-input 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':'']">
......@@ -42,9 +42,15 @@
</div>
<div class="CloudDisk-R grow">
<div class="row CloudDisk-R-inquire">
<el-input v-model="queryObj.FileName"
placeholder="请输入图片名称搜索" @keyup.enter="Search"
<!-- <el-input v-model="queryObj.FileName"
placeholder="请输入图片名称搜索" clearable @keyup.enter="Search"
@input="SearchImg" @change="SearchImg">
</el-input> -->
<el-input v-model="queryObj.FileName" placeholder="请输入图片名称搜索" clearable @keyup.enter="Search"
@input="SearchImg">
<template #append>
<el-button type="primary" style="color: white;" @click="Search">搜索</el-button>
</template>
</el-input>
</div>
<div ref="imgDiskRef" style="height: 420px;padding-top: 20px;">
......@@ -96,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"
......@@ -106,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";
......@@ -137,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 dialogTitle = ref('')
const dialogType = ref(0)
const queryObj = reactive({
pageIndex: 1,
pageSize: 11,
......@@ -161,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
......@@ -174,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, () => {
......@@ -288,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) =>{
......@@ -317,11 +296,11 @@ const EditGroup = (item:any) =>{
addEditMsg.GName = data.GName
addEditMsg.SortNum = data.SortNum
dialogFormVisible.value = true
dialogTitle.value ='编辑分组名称'
dialogType.value = 2
}
// 删除
const deleteGroup = (item:any) => {
const deleteGroup = async (item:any) => {
ElMessageBox.confirm(
`此操作将删除该分组,是否确定?`,
'提示',
......@@ -331,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(() => {})
......@@ -347,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) {
......@@ -357,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()
......@@ -374,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 =[]
......@@ -423,6 +407,11 @@ onMounted(()=>{
})
</script>
<style lang="scss" scoped>
.CloudDisk-R-inquire::v-deep(.el-button){
border-top-left-radius: 0;
border-bottom-left-radius: 0;
/* height: 36px; */
}
.CloudDisk-L{
border-right: 1px solid #E9E9E9;
padding: 0 20px 22px 0;
......@@ -432,10 +421,10 @@ onMounted(()=>{
}
.CloudDisk-L-inquire .el-input{
width: 112px;
height: 36px;
/* height: 36px; */
}
.CloudDisk-L-inquire .el-button{
height: 36px;
/* height: 36px; */
margin-left: 20px;
}
.CloudDisk-L-Title:first-child{
......@@ -483,7 +472,7 @@ onMounted(()=>{
}
.CloudDisk-R-inquire .el-input{
width: 100%;
height: 36px;
/* height: 36px; */
}
.CloudDisk-R-Center{
flex-wrap: wrap;
......
......@@ -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, managerTemplateLink } from '@/utils/common'
import { noDataImg, 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";
......@@ -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 {
......@@ -160,7 +158,7 @@ const CloseDetails = () => {
const ToggleImg = (text: String) => {
if(text=='left'){
props.TemCurrent
scrollContainer.value.scrollTop = 0
emit('previous')
// if(datas.currentImg>0) {
// datas.currentImg--
......@@ -168,6 +166,7 @@ const ToggleImg = (text: String) => {
// }
}
if(text=='right'){
scrollContainer.value.scrollTop = 0
emit('next')
// if(datas.currentImg<imgList.value.length-1) {
// datas.currentImg++
......@@ -227,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
......
......@@ -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>{
......
......@@ -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()">
......@@ -19,14 +19,19 @@
/>
</el-select>
</el-col>
<el-col :span="18">
<el-input v-model="datas.queryMsg.Name" placeholder="输入关键字快速查找" clearable class="input-with-select q-pl-lg" @change="SearchHandler()"></el-input>
<el-col :span="18" class="spiderRes">
<el-input class="input-with-select q-pl-lg" v-model="datas.queryMsg.Name" placeholder="输入关键字快速查找" clearable @keyup.enter="SearchHandler">
<template #append>
<el-button type="primary" style="color: white;" @click="SearchHandler">搜索</el-button>
</template>
</el-input>
<!-- <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="rounded" @click="getImgs(item,index)"/>
<img :src="item.Path" class="" @click="getImgs(item,index)"/>
<div class="UploadPicture-Hover" v-if="item.show">
<div>
<el-icon :size="20"><CircleCheckFilled/></el-icon>
......@@ -37,9 +42,9 @@
</div>
<div class="q-mt-md" style="display: flex;justify-content: center;">
<el-pagination
v-model:current-page="currentPage"
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"
......@@ -117,7 +122,6 @@ const imgOnline = ref('')
const imgPath = ref('')
const imgUrl = ref('')
const spiderImgUrl = ref('')
const currentPage = ref(1)
const upload = ref<UploadInstance>()
const { userInfo } =storeToRefs(useUserStore())
......@@ -139,7 +143,6 @@ const datas = reactive({
queryMsg:{
pageSize: 16,
pageIndex: 1,
currentPage: 1,
total: 0,
Type: 0, //1-酒店,2-餐厅,3-景点,4-票务,5-车辆,6-领队,7-购物店
Name: "", //资源图片名称
......@@ -340,6 +343,10 @@ const getImgList = async () =>{
getImgList()
</script>
<style lang="scss" scoped>
.spiderRes::v-deep(.el-button){
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.UploadPicture-from{
position: fixed;
left: 0;
......@@ -370,20 +377,23 @@ 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%;
height: 100%;
border-radius: 5px;
position: absolute;
object-fit: cover;
cursor: pointer;
......
......@@ -5,7 +5,7 @@
<Popover v-if="SalesEditor>0" trigger="click" placement="bottom-start" v-model:value="mainBackVisible">
<template #content>
<div class="menu-item" @click="goBack(1)">重选 {{searchData.TemplateType==2?'广告':'模版'}}</div>
<div class="menu-item" @click="goBack(0)">返回首页</div>
<div class="menu-item" @click="goBack(0)">返回工作台</div>
</template>
<div class="menu-item">
<el-icon color="#564bec"><ArrowLeftBold /></el-icon>
......@@ -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,15 +240,23 @@ 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&&searchData.value.currentMenu>=0){
if(type==1) path = `/market/create`
else {
}else if(model.value==2){
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
}
}else path = `/space`
router.push({path})
}
else window.history.back()
......@@ -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
......
......@@ -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()
......
......@@ -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";
......@@ -430,9 +430,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!='') {
......
This diff is collapsed.
......@@ -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';
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment