ソースを参照

协空间样式修改 检查更新有回馈 头部状态栏

dev-version-manage
kim131 4年前
コミット
70f5c39696
10個のファイルの変更332行の追加294行の削除
  1. +13
    -13
      public/static/css/main.css
  2. +5
    -1
      src/App.vue
  3. +13
    -4
      src/components/app-header/app-header.vue
  4. +15
    -10
      src/services/system.js
  5. +3
    -3
      src/views/components_web/project/newProj.vue
  6. +13
    -1
      src/views/main_web/index/index.vue
  7. +37
    -23
      src/views/main_web/proj-item.vue
  8. +4
    -1
      src/views/main_web/time.vue
  9. +2
    -3
      src/views/main_web/workspace/components/workLine.vue
  10. +227
    -235
      src/views/main_web/workspace/workspace.new.vue

+ 13
- 13
public/static/css/main.css ファイルの表示

@@ -460,9 +460,10 @@ ul {
height: calc(100vh - 136px);
}
.yiyun_section_warp{
position: relative;
display: block;
width: calc(100vw - 120px);
margin: 0 auto;
/* width: calc(100vw - 128px); */
margin: 0 64px;
padding: 0 0 10px 0;
overflow: hidden;
}
@@ -4380,10 +4381,10 @@ button:focus {
/* 协作文件超出部分滚动条 */
.fifleBox{
min-height: 204px;
max-height: 204px;
/* max-height: 204px; */
/* min-height: 215px;
max-height: 215px; */
/* max-height: 255px; */
max-height: 255px;
/* max-height: 275px; */
overflow-y: scroll;
}
@@ -4392,8 +4393,8 @@ button:focus {
background-color: #adadad;
}
.neibianju1 .fifleBox{
height: calc(100% - 40px);
max-height: calc(100% - 40px);
height: calc(100% - 70px);
max-height: calc(100% - 70px);
overflow-y: auto;
}
.yiyun_title_label{
@@ -7543,7 +7544,7 @@ h3.curactive{
-o-transform:rotate(180deg); /* Opera */
}
.closepageH{
height: 54px;
height: 0px;
transition: ease all 0.5s;
}
.myselfupload .el-upload-dragger {
@@ -7673,7 +7674,7 @@ li.secondMenu ul li:hover {
max-height: 300px;
border-radius: 16px 16px 0 0;
box-shadow: 0 -3px 11px 1px rgba(0,0,0,0.06);
overflow-y: auto;
overflow-y: hidden;
position: fixed;
bottom: 0;
width: 100%;
@@ -7813,14 +7814,13 @@ li.secondMenu ul li:hover {
margin: 0 8px;
} */
.worklink{
width: 100%;
/* width: 100%; */
width: calc(100vw - 64px);
height: calc(100vh - 114px);
display: flex;
display: flex;
align-items: center;
/* width: 100vw; */
height: calc(100vh - 114px);
overflow-y: auto;
flex-direction: row;
}
.linkstart{
justify-content: start;


+ 5
- 1
src/App.vue ファイルの表示

@@ -58,6 +58,7 @@ export default {
isShowOutWorkSpace: false,
outWorkSpace: false,
isClient: system.isClient,
onlineStatus: false,//网关状态
};
},
created: function () {
@@ -72,7 +73,10 @@ export default {
this.header_show = false;
}
if(this.isClient) {
system.keepLiveTest();
system.keepLiveTest((status)=> {
this.onlineStatus = status;
sessionStorage.setItem('isOnLine', String(status && navigator.onLine));
});
}
},
computed: {


+ 13
- 4
src/components/app-header/app-header.vue ファイルの表示

@@ -5,9 +5,9 @@
'black-bg-color': isWindowScrollIng && theme === 'black' }"
>
<div class="app-header-top" v-if="isClient">
<div class="top-left" :class="{'hide-state': true}">
<div class="dot"></div>
<div class="state" :class="{'white-color': theme === 'white', black: theme === 'black'}">在线</div>
<div class="top-left" :title="isOnLine ? '':'请检查本地网关连接'">
<div class="dot" :class="{'online': isOnLine, 'offline': !isOnLine}"></div>
<div class="state" :class="{'white-color': theme === 'white', black: theme === 'black'}">{{`${isOnLine ? '在线': '离线'}`}}</div>
</div>
<div class="top-center"></div>
<div class="top-right">
@@ -95,6 +95,7 @@ export default {
isClient: system.isClient,
isMaxWindowNow: false,
isCloseHover: false,
isOnLine: sessionStorage.getItem('isOnLine') === "true",
};
},
computed: {
@@ -212,13 +213,21 @@ export default {
width: 8px;
height: 8px;
border-radius:50%;
background-color: green;
}
// 在线状态
.online {
background-color: #4AE2A6;
}
// 离线状态
.offline {
background-color: rgb(214, 36, 58);
}
.top-left .state {
color: rgba(0, 0, 0, 0.56);
font-size: 11px;
font-family: PingFangSC-Regular;
margin: 0 0 0 11px;
cursor: default;
}

.top-right .min, .top-right .my-max, .top-right .close {


+ 15
- 10
src/services/system.js ファイルの表示

@@ -50,7 +50,7 @@ const system = {
console.log('客户端 electron API 检测:', global.electron);
}),
// /keeplive
keepLiveTest: safeCall((errorHandler) => {
keepLiveTest: safeCall((callback, errorHandler = identity) => {
const test = io('keeplive');
const testInfo = 1;
let timer = null;
@@ -59,11 +59,16 @@ const system = {
}
test.on('open',() => {
timer = setInterval(sendMessage, 1000);
callback(true);
})
test.on('close', ()=> {
clearInterval(timer);
callback(false);
});
test.on('error', ()=> {
errorHandler();
callback(false);
});
test.on('error', errorHandler);
}),
// 缩小 放大 关闭操作
shrinkBrowserWindow: safeCall(async () => {
@@ -113,14 +118,14 @@ const system = {
updates.send(flag);
})
updates.on('message', (e) => {
// if(e.data === '-1') {
// Vue.prototype.$notify({
// message:`检查更新出现错误, 请稍后重试。`,
// type:['error'],
// })
// errorHandler(e);
// return;
// }
if(e.data === '-1') {
Vue.prototype.$notify({
message:`已是最新版本。`,
type:['success'],
})
errorHandler(e);
return;
}
})
}),
// 客户端文件打开方式


+ 3
- 3
src/views/components_web/project/newProj.vue ファイルの表示

@@ -33,7 +33,7 @@
</div>
</div>
<div>
<input type="text" class="input_projname" v-model="newProjData.projectData.projName" placeholder="点击输入"/>
<input type="text" class="input_projname" v-model="newProjData.projectData.projName" placeholder="点击输入 请输入32个字之内的字符"/>
</div>
</div>
</div>
@@ -188,9 +188,9 @@ export default {
});
return;
}
if(this.newProjData.projectData.projName.length > 35){
if(this.newProjData.projectData.projName.length > 32){
this.$notify({
message: "项目名称不得超出35个字符。",
message: "项目名称不得超出32个字符。",
type: "warning",
});
return;


+ 13
- 1
src/views/main_web/index/index.vue ファイルの表示

@@ -17,12 +17,15 @@
</style>
<template>
<div id="app" v-cloak>
<app-header :title="showCenterTitle"
<app-header
:showUserCenter="true" id="proj-list-page"
>
<template #left>
{{currentPlatform.orgName}}
</template>
<template #center>
<div class="main-title">{{showCenterTitle}}</div>
</template>
<template #right>
<search-bar
class="proj-search-bar"
@@ -738,6 +741,15 @@ export default {
.icon-icon_huishouzhan {
line-height: inherit;
}

.main-title {
text-align: center;
color: rgba(50, 50, 60, 100);
font-size: 18px;
text-shadow: 0 0 1px #32323c;
text-align: center;
font-family: PingFangSC-Semibold;
}
</style>

<style lang="scss">


+ 37
- 23
src/views/main_web/proj-item.vue ファイルの表示

@@ -1,11 +1,11 @@
<template>
<div class="prjitem" ref="item">
<div class="prjitem_content"
<div class="prjitem">
<div class="prjitem_content" ref="projitem"
@mouseenter="showSetIcon(projItem.Id), isMouseHover = true"
@mouseleave="hiddenSetIcon, isMouseHover = false"
@click.stop="goFilePage(projItem)"
>
<img class="prjitem_img" ref="projimg"
<img class="prjitem_img" ref="projimg" :class="{'height-full': isHeightFull && !isWidthFull, 'width-full': isWidthFull && !isHeightFull}"
:src="projItem.ShowImgUrl | resolveImg" alt=""
/>
<div class="newprj_icon" v-if="projItem.newProjStatus == 1">新项目</div>
@@ -29,6 +29,9 @@ export default {
isEmpty:false,
isMouseHover: false,//鼠标是否悬浮
projImgEl: null,
projItemEl: null,
isWidthFull: false,
isHeightFull: false,
}
},
props:{
@@ -40,20 +43,32 @@ export default {
},
},
watch:{
projItem() {
this.projImgEl = this.$refs.projimg;

},
beforeDestroy() {
this.projImgEl && this.projImgEl.removeEventListener('load', this.operateProjImg);
},
mounted() {
this.$nextTick(()=> {
this.projImgEl = this.$refs.projimg;
this.projItemEl = this.$refs.projitem;
if(this.projImgEl) {
this.isWidthFull = this.projImgEl.clientHeight > this.projImgEl.clientWidth;
this.isHeightFull = this.projImgEl.clientHeight < this.projImgEl.clientWidth;
this.projImgEl.addEventListener('load', this.operateProjImg)
}
}
},
computed: {
projPageListLength() {
return this.projPageList ? this.projPageList.length : 0;
}
})
},
methods:{
showBackground(src) {
return {
background: `url(${src}) center/100%`,
}
},
// 处理图片
operateProjImg() {
console.log(this.projImgEl.clientWidth, this.projImgEl.clientHeight)
this.isWidthFull = (this.projImgEl.clientWidth <= this.projItemEl.clientWidth) || (this.projImgEl.clientHeight >= this.projImgEl.clientWidth);
this.isHeightFull = this.projImgEl.clientHeight < this.projImgEl.clientWidth ;
},
// 点击了项目管理按钮
lookProjDetailClick() {
this.$emit('lookProjDetailClick');
@@ -116,16 +131,12 @@ export default {
</script>

<style lang="scss" scoped>
.prjitemList {
padding: 0 32px;
}

.prjitem{
display: inline-block;
width: 100%;
border-radius:16px ;
margin: 30px 0px;
transition: width .3s linear;
width: 100%;
overflow: hidden;
}
.prjitem:hover{
@@ -142,19 +153,20 @@ export default {
width: 100%;
height: 245px;
background-color: #fff;
overflow:hidden;
overflow: hidden;
border-top-left-radius: 16px;
border-top-right-radius: 16px;
// height:0;
// padding-bottom:61%;
}
.prjitem_img{
max-width: 100%;
max-height: 100%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
min-height: 245px;
min-width: 100%;
// height: 100%;
width: 100%;
cursor: pointer;
margin: 0 auto;
}
@@ -229,10 +241,12 @@ export default {
}
.height-full {
height: 100% !important;
min-height: 100%;
max-height: 100%;
}
.width-full {
width: 100% !important;
min-width: 100%;
max-width: 100%;
}


+ 4
- 1
src/views/main_web/time.vue ファイルの表示

@@ -1,6 +1,6 @@
<template>
<!-- 系统时间 -->
<div class="section_item fl section_item_aside_fl" v-if="cnName">
<div v-if="cnName">
<div class="big-time">{{ nowTime }}</div>
<div class="now-time">
<span class="nowshijian">{{ nowDate.substr(5) }} {{ welcome }}{{cnName}}</span>
@@ -65,6 +65,9 @@ export default {
<style scoped>
.now-time {
margin: 12px 0 0 0;
color: rgba(0, 0, 0, 1);
font-size: 20px;
font-family: PingFangSC-Regular;
}
.big-time {
height: 41px;


+ 2
- 3
src/views/main_web/workspace/components/workLine.vue ファイルの表示

@@ -90,12 +90,11 @@
<!-- 我的文件title -->
<div class="yiyun_file_box">
<div class="yiyun_Headtitle_center" style="overflow: hidden">
<div class="yiyun-col-12 worktitlebox overflowinit adjust-btn-pos">
<!-- <div class="yiyun-col-12 worktitlebox overflowinit adjust-btn-pos">
<button type="button" class="yiyuntitle myFolderName">
<!-- <button type="button" class="yiyuntitle myFolderName" @click="hideWorklinkPage()"> -->
我的工作链
</button>
</div>
</div> -->
<div
class="worklink"
>


+ 227
- 235
src/views/main_web/workspace/workspace.new.vue ファイルの表示

@@ -123,206 +123,206 @@
@hideWorklinkPage="hideWorklinkPage"
@finishGetExchangeNodes="finishGetExchangeNodes"
/>
<div class="layout_content2" v-show="!showWorkline" v-loading="loading">
<section v-show="isShowpageIcon"
id="workspace"
:class="`${closepageH} layerout_H2`"
@contextmenu.prevent="rightShowMenu($event, '新建文件夹', 4)"
>
<section class="yiyun_section_warp">
<div class="yinyong_warpBox hidescollbar">
<div class="titlebar_head" id="bignav">
<!-- 面包屑导航 -->
<div
class="section_item section_item_aside_fl"
>
<span
class="yiyun_text-title-workspace ml-4"
<div class="layout_content2" v-show="!showWorkline" v-loading="loading">
<section
id="workspace"
:class="`${closepageH} layerout_H2`"
@contextmenu.prevent="rightShowMenu($event, '新建文件夹', 4)"
>
<section class="yiyun_section_warp">
<div class="yinyong_warpBox hidescollbar">
<div class="titlebar_head" id="bignav">
<!-- 面包屑导航 -->
<div
class="section_item section_item_aside_fl"
>
<el-breadcrumb class="folder_breadcrumb" separator-class="el-icon-arrow-right">
<el-breadcrumb-item @click.native="clickBreadcrumb(-1, 0)">工作文件</el-breadcrumb-item>
<el-breadcrumb-item
v-for="(breadFolder, breadIdx) in breadcrumbFolderList"
:key="breadFolder.id"
@click.native="clickBreadcrumb(breadIdx, 0)"
>{{breadFolder.folderName}}</el-breadcrumb-item>
</el-breadcrumb>
</span>
</div>
<!-- 工作列表主体 -->
<div
class="yiyun_row scollbarBox nobianju py-x-22"
>
<AddFileButton
v-if="isClient"
@fileTempClick="fileTempClick"
:listTempFiles="listTempFiles"
:selectSystemFiles="selectSystemFiles"
:selectSystemFolders="selectSystemFolders"
/>
<!-- 文件上传队列 -->
<div class="list-group">
<FileItem
class="lisy-group-item"
v-for="file in filterFiles(uploadFileList)"
:key="file.id"
:file="file"
:clientDownLoad="clientDownLoad"
:showFileMilestone="showFileMilestone"
:nodeFolder="currentNodeFolder"
:currentFolder="currentFolder"
:localFileHashMap="localFileHashMap"
:loadingState="localFileLoadStateMap[file.id]"
/>
<span
class="yiyun_text-title-workspace"
>
<el-breadcrumb class="folder_breadcrumb" separator-class="el-icon-arrow-right">
<el-breadcrumb-item @click.native="clickBreadcrumb(-1, 0)">工作文件</el-breadcrumb-item>
<el-breadcrumb-item
v-for="(breadFolder, breadIdx) in breadcrumbFolderList"
:key="breadFolder.id"
@click.native="clickBreadcrumb(breadIdx, 0)"
>{{breadFolder.folderName}}</el-breadcrumb-item>
</el-breadcrumb>
</span>
</div>
<div class="list-group">
<FileItem
class="lisy-group-item"
v-for="file in filterFiles(workFileList)"
:key="file.id"
:file="file"
:clientDownLoad="clientDownLoad"
:showFileMilestone="showFileMilestone"
:nodeFolder="currentNodeFolder"
:currentFolder="currentFolder"
@commitFile="commitFile(file)"
@dblclickFile="fileClick(file)"
@filePreview="filePreview"
@openFileWith="openFileWith(file)"
@openfileBtnClick="fileClick(file)"
@copyFileBtnClick="copyWorkFileBtnClick(file)"
@oneFileRightBtnClick="oneFileRightBtnClick"
@deleteFileClick="deleteFileClick"
:tempRightFileId="tempRightFileId"
:localFileHashMap="localFileHashMap"
:loadingState="localFileLoadStateMap[file.id]"
@dragstart.native="onfileDragStart(file, $event)"
draggable
<!-- 工作列表主体 -->
<div
class="yiyun_row scollbarBox nobianju py-x-22"
>
<AddFileButton
v-if="isClient"
@fileTempClick="fileTempClick"
:listTempFiles="listTempFiles"
:selectSystemFiles="selectSystemFiles"
:selectSystemFolders="selectSystemFolders"
/>
</div>
<!--显示文件夹组 -->
<div class="list-group">
<FolderItem
v-for="folder in filterFolders(subFolderList)"
:key="folder.id"
:folder="folder"
:isLoading="localFolderLoadStateMap[folder.folderPath]"
@onRightMenuActive="oneFileRightBtnClick"
@onDownloadAll="downloadFolder"
:activeRightMenuId="tempRightFileId"
@dblclick.native="intoSubFolder(folder, 0)"
@commitFolder="commitFolder"
<!-- 文件上传队列 -->
<div class="list-group">
<FileItem
class="lisy-group-item"
v-for="file in filterFiles(uploadFileList)"
:key="file.id"
:file="file"
:clientDownLoad="clientDownLoad"
:showFileMilestone="showFileMilestone"
:nodeFolder="currentNodeFolder"
:currentFolder="currentFolder"
:localFileHashMap="localFileHashMap"
:loadingState="localFileLoadStateMap[file.id]"
/>
</div>
<div class="list-group">
<FileItem
class="lisy-group-item"
v-for="file in filterFiles(workFileList)"
:key="file.id"
:file="file"
:clientDownLoad="clientDownLoad"
:showFileMilestone="showFileMilestone"
:nodeFolder="currentNodeFolder"
:currentFolder="currentFolder"
@commitFile="commitFile(file)"
@dblclickFile="fileClick(file)"
@filePreview="filePreview"
@openFileWith="openFileWith(file)"
@openfileBtnClick="fileClick(file)"
@copyFileBtnClick="copyWorkFileBtnClick(file)"
@oneFileRightBtnClick="oneFileRightBtnClick"
@deleteFileClick="deleteFileClick"
:tempRightFileId="tempRightFileId"
:localFileHashMap="localFileHashMap"
:loadingState="localFileLoadStateMap[file.id]"
@dragstart.native="onfileDragStart(file, $event)"
draggable
/>
</div>
<!--显示文件夹组 -->
<div class="list-group">
<FolderItem
v-for="folder in filterFolders(subFolderList)"
:key="folder.id"
:folder="folder"
:isLoading="localFolderLoadStateMap[folder.folderPath]"
@onRightMenuActive="oneFileRightBtnClick"
@onDownloadAll="downloadFolder"
:activeRightMenuId="tempRightFileId"
@dblclick.native="intoSubFolder(folder, 0)"
@commitFolder="commitFolder"

/>
/>
</div>
</div>
</div>
</div>
</div>
</section>
</section>
</section>

<div :class="neibianju" id="bottomBox">
<div class="titleBox">
<span class="yiyun_zhediebtn DevtopIcon">
<i
class="Cicon text_gray icon font_family icon-icon_zhankai"
title="展开面板"
v-show="isShowpageIcon"
@click="openCopage"
></i>
<i
class="Cicon text_gray icon font_family icon-icon_shouqi"
title="折叠面板"
v-show="!isShowpageIcon"
@click="closeCopage"
></i>
</span>
<div class="title_warp">
<div class="yiyun_section_top orginoverflow" id="bignav">
<div :class="[`${neibianju}`, {'coopBox-max-height': isShowShadow && isCollapse}]" id="bottomBox">
<div class="titleBox">
<span class="yiyun_zhediebtn DevtopIcon">
<i
class="Cicon text_gray icon font_family icon-icon_zhankai"
title="展开面板"
v-show="isCollapse"
@click="openCopage"
></i>
<i
class="Cicon text_gray icon font_family icon-icon_shouqi"
title="折叠面板"
v-show="!isCollapse"
@click="closeCopage"
></i>
</span>
<div class="title_warp">
<div class=" " id="bignav">

<div class="section_item fl section_item_aside_fl xiangdui">
<!-- <span class="yiyun_zhediebtn DevtopIcon">
<i
class="Cicon text_gray icon font_family icon-icon_zhankai"
title="展开面板"
v-show="isShowpageIcon"
@click="openCopage"
></i>
<i
class="Cicon text_gray icon font_family icon-icon_shouqi"
title="折叠面板"
v-show="!isShowpageIcon"
@click="closeCopage"
></i>
</span> -->
<div class="tabtltlebox">
<!-- <h3 class="defualth3" >
协作文件
</h3> -->
<div
class="section_item section_item_aside_fl"
>
<span
class="yiyun_text-title-workspace mr-20 ml-8"
<div class="section_item fl section_item_aside_fl xiangdui">
<div class="tabtltlebox">
<div
class="section_item section_item_aside_fl"
>
<el-breadcrumb class="folder_breadcrumb" separator-class="el-icon-arrow-right">
<el-breadcrumb-item @click.native="clickBreadcrumb(-1, 1)">协作文件</el-breadcrumb-item>
<el-breadcrumb-item
v-for="(breadFolder, breadIdx) in breadcrumbFolderListInCoop"
:key="breadFolder.id"
@click.native="clickBreadcrumb(breadIdx, 1)"
>{{breadFolder.folderName}}</el-breadcrumb-item>
</el-breadcrumb>
</span>
<span
class="yiyun_text-title-workspace mr-20 ml-8"
>
<el-breadcrumb class="folder_breadcrumb" separator-class="el-icon-arrow-right">
<el-breadcrumb-item @click.native="clickBreadcrumb(-1, 1)">协作文件</el-breadcrumb-item>
<el-breadcrumb-item
v-for="(breadFolder, breadIdx) in breadcrumbFolderListInCoop"
:key="breadFolder.id"
@click.native="clickBreadcrumb(breadIdx, 1)"
>{{breadFolder.folderName}}</el-breadcrumb-item>
</el-breadcrumb>
</span>
</div>
</div>
</div>
</div>
<div class="section_item fr section_item_aside_fr">
<div class="fr ml-10">
<span class="bj_label">协作文件均只读</span>
<div class="section_item fr section_item_aside_fr">
<div class="fr ml-10">
<span class="bj_label">协作文件均只读</span>
</div>
<div class="fifle_search fr"></div>
</div>
<div class="fifle_search fr"></div>
</div>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
</div>

<div class="fifleBox" id="coopFileContainer">
<div class="yiyun_section_warp layerout_H3" id="coopFileBox">
<!-- 文件大box -->
<div class="yinyong_warpBox">
<!-- 协作文件 -->
<div v-if="!isShowStartNodeFolders">
<div
class="py-x-22 mt-12"
>
<FileItem
v-for="file in filterFilesInCoop(cooperationFileList)"
:key="file.id"
:file="file"
:tempRightFileId="tempRightFileId"
:clientDownLoad="clientDownLoad"
:showFileMilestone="showFileMilestone"
:nodeFolder="currentNodeFolder"
:currentFolder="currentFolder"
@dblclickFile="fileClick(file)"
@filePreview="filePreview"
@openFileWith="openFileWith(file)"
@openfileBtnClick="fileClick(file)"
@oneFileRightBtnClick="oneFileRightBtnClick"
:localFileHashMap="localFileHashMap"
:loadingState="localFileLoadStateMap[file.id]"
@dragstart.native="onfileDragStart(file, $event)"
draggable
/>
<div class="fifleBox" id="coopFileContainer">
<div class="yiyun_section_warp layerout_H3" id="coopFileBox">
<!-- 文件大box -->
<div class="yinyong_warpBox">
<!-- 协作文件 -->
<div v-if="!isShowStartNodeFolders">
<div
class="py-x-22 mt-12"
>
<FileItem
v-for="file in filterFilesInCoop(cooperationFileList)"
:key="file.id"
:file="file"
:tempRightFileId="tempRightFileId"
:clientDownLoad="clientDownLoad"
:showFileMilestone="showFileMilestone"
:nodeFolder="currentNodeFolder"
:currentFolder="currentFolder"
@dblclickFile="fileClick(file)"
@filePreview="filePreview"
@openFileWith="openFileWith(file)"
@openfileBtnClick="fileClick(file)"
@oneFileRightBtnClick="oneFileRightBtnClick"
:localFileHashMap="localFileHashMap"
:loadingState="localFileLoadStateMap[file.id]"
@dragstart.native="onfileDragStart(file, $event)"
draggable
/>
</div>
<!-- 协作文件以文件夹的形式展示 -->
<div class="list-group">
<FolderItem
v-for="folder in filterFoldersInCoop(coopSubFolderList)"
:key="folder.id"
:folder="folder"
:isWorkFolder=false
:isLoading="localFolderLoadStateMap[folder.folderPath]"
@onRightMenuActive="oneFileRightBtnClick"
@onDownloadAll="downloadFolder"
:activeRightMenuId="tempRightFileId"
@dblclick.native="intoSubFolder(folder, 1)"
@commitFolder="commitFolder"
/>
</div>
</div>
<!-- 协作文件以文件夹的形式展示 -->
<div class="list-group">
<FolderItem
v-for="folder in filterFoldersInCoop(coopSubFolderList)"
<div v-else>
<div class="list-group">
<FolderItem
v-for="folder in exchangeNodeListsInCoop"
:key="folder.id"
:folder="folder"
:isWorkFolder=false
@@ -330,58 +330,44 @@
@onRightMenuActive="oneFileRightBtnClick"
@onDownloadAll="downloadFolder"
:activeRightMenuId="tempRightFileId"
@dblclick.native="intoSubFolder(folder, 1)"
@dblclick.native="intoSubFolder(folder, 1), isShowStartNodeFolders = !isShowStartNodeFolders, topFolderInCoop = folder"
@commitFolder="commitFolder"
/>
</div>
</div>
<div v-else>
<div class="list-group">
<FolderItem
v-for="folder in exchangeNodeListsInCoop"
:key="folder.id"
:folder="folder"
:isWorkFolder=false
:isLoading="localFolderLoadStateMap[folder.folderPath]"
@onRightMenuActive="oneFileRightBtnClick"
@onDownloadAll="downloadFolder"
:activeRightMenuId="tempRightFileId"
@dblclick.native="intoSubFolder(folder, 1), isShowStartNodeFolders = !isShowStartNodeFolders, topFolderInCoop = folder"
@commitFolder="commitFolder"
/>
</div>
</div>
</div>
</div>
</div>
</div>

<div class="showdowfix" id="bottomoShodow" v-show="showadow"></div>
</div>
<div class="showdowfix" id="bottomoShadow" v-show="isShowShadow"></div>

<!-- 右键菜单 -->
<div
v-show="rightMenuvisible"
:style="{ left: rightMenuleft + 'px', top: rightMenuTop + 'px' }"
class="contextmenu"
>
<!--新建文件分组-->
<ul
class="rightMenu"
</div>

<!-- 右键菜单 -->
<div
v-show="rightMenuvisible"
:style="{ left: rightMenuleft + 'px', top: rightMenuTop + 'px' }"
class="contextmenu"
>
<li
@click="newCreateFolderGroup"
>
新建文件夹
</li>
<li
@click="openNativeCurrentFolder"
v-if="isClient && this.localWorkspacePrefix"
<!--新建文件分组-->
<ul
class="rightMenu"
>
打开本地工作目录
</li>
</ul>
<li
@click="newCreateFolderGroup"
>
新建文件夹
</li>
<li
@click="openNativeCurrentFolder"
v-if="isClient && this.localWorkspacePrefix"
>
打开本地工作目录
</li>
</ul>
</div>
</div>
</div>
</div>
</div>

@@ -574,6 +560,7 @@ export default {
projectId: sessionStorage.projId, // 当前项目id
projectName: sessionStorage.projName, // 当前项目名称
isShowpageIcon: true, // 协作空间折叠按钮状态
isCollapse: true,//协作空间底部协作文件一开始是属于折叠状态
closepageH: '', // 底部协作文件展开高度 默认为空,展开后高度为closepageH
showWorkline: false, // 工作链显示开关 原为isShowworklink
nodeFolders: [], // 节点文件夹
@@ -610,7 +597,7 @@ export default {
cooperationFileList: [], // 协作文件队列

neibianju: "neibianju", // 协作文件槽样式
showadow: false,
isShowShadow: false,
localFileHashMap: null, // { `${节点名称}\\${文件名称}.${文件扩展名}`: `${ipfsCid}` }
/**
* 文件本地加载状态表
@@ -656,7 +643,10 @@ export default {
mounted: function () {
this.hackWorkLine = this.$refs.hackworkline;
window.addEventListener("scroll", this.onscroll, true);
this.coopFileBox = document.getElementById('coopFileBox');

this.$nextTick(()=> {
this.listenBottomHeight();
})


// window.addEventListener("resize", this.listenBottomHeight, true);
@@ -1149,16 +1139,12 @@ export default {
},
listenBottomHeight() {
let oDivH = document.getElementById('coopFileBox') ? document.getElementById("coopFileBox").offsetHeight: 0;
// let oShodow = document.getElementById("bottomoShodow");
const target = document.getElementById('coopFileBox')

if (oDivH > 259) {
this.showadow = true;
this.isShowShadow = true;
} else {
this.showadow = false;
this.isShowShadow = false;
}
console.log(oDivH, this.showadow);
},
onSocketFileChangeDetected({ data }){
try {
@@ -1276,6 +1262,9 @@ export default {
// this.listenBottomHeight();
this.currentFolderInCoop = folder;
this.breadcrumbFolderListInCoop.push(folder);
this.$nextTick(()=> {
this.listenBottomHeight();
})
}

// this.clearCurrentFolderFiles();
@@ -1754,6 +1743,7 @@ export default {
*/
openCopage: function () {
this.isShowpageIcon = false;
this.isCollapse = false;
this.neibianju = "neibianju1";
this.closepageH = "closepageH";
},
@@ -1762,6 +1752,7 @@ export default {
*/
closeCopage: function () {
this.isShowpageIcon = true;
this.isCollapse = true;
this.neibianju = "neibianju";
this.closepageH = "";
@@ -1834,9 +1825,6 @@ export default {
}
},
watch: {
coopBoxRealHeight(val) {
this.showadow = val> 259;
},
isShowSearchBar(val) {
if(!val) {
if(this.currentBtnIndex == 0) {
@@ -2097,7 +2085,11 @@ export default {
height: calc(100vh - 64px);
}
// 调整协作文件显示区域的高度
.set-coop-file-box-height {
.coopBox-max-height {
height: 300px;
}
</style>
</style>

<style scoped>

</style>

読み込み中…
キャンセル
保存