Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
8e0cf39c
Commit
8e0cf39c
authored
Nov 08, 2019
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
8fd31b04
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1245 additions
and
1170 deletions
+1245
-1170
ShareMeDocuments.vue
src/components/administrative/ShareMeDocuments.vue
+1245
-1170
No files found.
src/components/administrative/ShareMeDocuments.vue
View file @
8e0cf39c
<
template
>
<
template
>
<div
class=
"flexOne"
>
<div
class=
"flexOne"
>
<div
class=
"myDocumentsNav"
>
<div
class=
"myDocumentsNav"
>
<el-button-group
v-if=
'!isChildFiles'
>
<el-button-group
v-if=
'!isChildFiles'
>
<el-button
v-if=
'notFileList.length==1&&fileList.length
<1
'
type=
"danger"
icon=
"el-icon-download"
@
click=
'dowloadSingle()'
>
下载
</el-button>
<el-button
v-if=
'notFileList.length==1&&fileList.length
<1
'
type=
"danger"
icon=
"el-icon-download"
<el-button
v-if=
'fileList.length>0||notFileList.length>0'
type=
"danger"
icon=
"el-icon-download"
@
click=
'yzmVisible=true,createCode()'
>
压缩下载
</el-button>
@
click=
'dowloadSingle()'
>
下载
</el-button>
<el-button
v-if=
'fileList.length>0||notFileList.length>0'
type=
"danger"
@
click=
'moveFiles'
>
移动到
</el-button>
<el-button
v-if=
'fileList.length>0||notFileList.length>0'
type=
"danger"
icon=
"el-icon-download"
</el-button-group>
@
click=
'yzmVisible=true,createCode()'
>
压缩下载
</el-button>
<el-button-group
v-if=
'isChildFiles'
>
<el-button
v-if=
'fileList.length>0||notFileList.length>0'
type=
"danger"
@
click=
'moveFiles'
>
移动到
</el-button>
<el-button
v-if=
'notFileListInside.length==1&&fileListInside.length
<1
'
type=
"danger"
icon=
"el-icon-download"
@
click=
'dowloadSingleInside()'
>
下载里
</el-button>
</el-button-group>
<el-button
v-if=
'fileListInside.length>0||notFileListInside.length>0'
type=
"danger"
icon=
"el-icon-download"
@
click=
'yzmVisible=true,createCode()'
>
压缩下载
</el-button>
<el-button-group
v-if=
'isChildFiles'
>
<el-button
v-if=
'fileListInside.length>0||notFileListInside.length>0'
type=
"danger"
@
click=
'moveFiles'
>
移动到里
</el-button>
<el-button
v-if=
'notFileListInside.length==1&&fileListInside.length
<1
'
type=
"danger"
icon=
"el-icon-download"
</el-button-group>
@
click=
'dowloadSingleInside()'
>
下载里
</el-button>
<div
class=
"fr"
v-if=
'!isChildFiles'
>
<el-button
v-if=
'fileListInside.length>0||notFileListInside.length>0'
type=
"danger"
icon=
"el-icon-download"
<el-input
class=
'w200'
:placeholder=
"$t('pub.pleaseImport')"
v-model=
"msg.ShareName"
prefix-icon=
"el-icon-search"
></el-input>
@
click=
'yzmVisible=true,createCode()'
>
压缩下载
</el-button>
<input
type=
"button"
class=
"hollowFixedBtn"
@
click=
'getList()'
:value=
"$t('pub.searchBtn')"
/>
<el-button
v-if=
'fileListInside.length>0||notFileListInside.length>0'
type=
"danger"
@
click=
'moveFiles'
>
移动到里
</div>
</el-button>
</div>
</el-button-group>
<div
class=
"myDocumentsLink"
>
<div
class=
"fr"
v-if=
'!isChildFiles'
>
<span
@
click=
"resGetList"
>
分享给我的
</span>
<el-input
class=
'w200'
:placeholder=
"$t('pub.pleaseImport')"
v-model=
"msg.ShareName"
<span
v-for=
"(item,index) in NavList"
@
click=
"getNavTree(item,index)"
>
{{
item
.
name
}}
</span>
prefix-icon=
"el-icon-search"
></el-input>
</div>
<input
type=
"button"
class=
"hollowFixedBtn"
@
click=
'getList()'
:value=
"$t('pub.searchBtn')"
/>
</div>
</div>
<div
class=
"myDocumentsLink"
>
<span
@
click=
"resGetList"
>
分享给我的
</span>
<span
v-for=
"(item,index) in NavList"
@
click=
"getNavTree(item,index)"
>
{{
item
.
name
}}
</span>
</div>
<table
class=
"singeRowTable myDocumentsTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<table
class=
"singeRowTable myDocumentsTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tbody
v-if=
'!isChildFiles'
>
<tbody
v-if=
'!isChildFiles'
>
<tr>
<tr>
<th
width=
"400"
><input
v-model=
"isCkedAll"
type=
"checkbox"
@
click=
'checkedAll()'
/>
文件名
</th>
<th
width=
"400"
><input
v-model=
"isCkedAll"
type=
"checkbox"
@
click=
'checkedAll()'
/>
文件名
</th>
<th
width=
"200"
>
</th>
<th
width=
"200"
>
</th>
<th>
大小
</th>
<th>
大小
</th>
<th
width=
"200"
>
分享人
</th>
<th
width=
"200"
>
分享人
</th>
<th
width=
"200"
>
接收时间
</th>
<th
width=
"200"
>
接收时间
</th>
</tr>
</tr>
<tr
v-for=
"(item,index) in list"
@
mouseover=
"enterTr(index)"
@
mouseleave=
"leaveTr"
>
<tr
v-for=
"(item,index) in list"
@
mouseover=
"enterTr(index)"
@
mouseleave=
"leaveTr"
>
<td
v-if=
"item.shareFileType==1"
>
<td
v-if=
"item.shareFileType==1"
>
<input
type=
"checkbox"
:value=
"item.shareId"
v-model=
"fileList"
@
change=
"ckeckedOne"
>
<input
type=
"checkbox"
:value=
"item.shareId"
v-model=
"fileList"
@
change=
"ckeckedOne"
>
<div
@
click=
"getNextLevel(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
@
click=
"getNextLevel(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
:class=
"['fileIcon', item.icons]"
></div>
<div
:class=
"['fileIcon', item.icons]"
></div>
{{
item
.
fileName
}}
{{
item
.
fileName
}}
</div>
</div>
</td>
</td>
<td
v-if=
"item.shareFileType==2"
>
<td
v-if=
"item.shareFileType==2"
>
<input
type=
"checkbox"
:value=
"item.shareId"
v-model=
"notFileList"
@
change=
"ckeckedOne"
>
<input
type=
"checkbox"
:value=
"item.shareId"
v-model=
"notFileList"
@
change=
"ckeckedOne"
>
<div
@
click=
"analyzeItem(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
@
click=
"analyzeItem(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
:class=
"['fileIcon', item.icons]"
></div>
<div
:class=
"['fileIcon', item.icons]"
></div>
{{
item
.
fileName
}}
{{
item
.
fileName
}}
</div>
</div>
</td>
</td>
<td>
<td>
<el-row
v-if=
'curIndex==index'
>
<el-row
v-if=
'curIndex==index'
>
<el-button
type=
"primary"
icon=
"el-icon-download"
circle
@
click=
'downloadOne(item)'
></el-button>
<el-button
type=
"primary"
icon=
"el-icon-download"
circle
@
click=
'downloadOne(item)'
></el-button>
<el-button
type=
"primary"
icon=
"iconfont icon-move"
style=
'font-size: 14px;'
circle
@
click=
'moveOneFile(item)'
></el-button>
<el-button
type=
"primary"
icon=
"iconfont icon-move"
style=
'font-size: 14px;'
circle
</el-row>
@
click=
'moveOneFile(item)'
></el-button>
</td>
</el-row>
<td>
{{
item
.
fileSize
|
FileSizeFormat
(
item
.
fileSize
)
}}
</td>
</td>
<td>
<td>
{{
item
.
fileSize
|
FileSizeFormat
(
item
.
fileSize
)
}}
</td>
<img
style=
"vertical-align: sub; width: 14px; height: 14px; border-radius: 7px;"
v-if=
"!item.shareUserPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
<td>
<img
style=
"vertical-align: sub; width: 14px; height: 14px; border-radius: 7px;"
v-else
:src=
"item.shareUserPhoto"
alt=
""
:onerror=
"defaultImg"
>
<img
style=
"vertical-align: sub; width: 14px; height: 14px; border-radius: 7px;"
{{
item
.
shareUserName
}}
v-if=
"!item.shareUserPhoto"
src=
"../../assets/img/litheader.png"
alt=
""
>
</td>
<img
style=
"vertical-align: sub; width: 14px; height: 14px; border-radius: 7px;"
v-else
<td>
{{
item
.
createTime
}}
</td>
:src=
"item.shareUserPhoto"
alt=
""
:onerror=
"defaultImg"
>
</tr>
{{
item
.
shareUserName
}}
</tbody>
</td>
<td>
{{
item
.
createTime
}}
</td>
<tbody
v-if=
'isChildFiles'
>
</tr>
<tr>
</tbody>
<th
width=
"400"
><input
v-model=
"isCkedAllInside"
type=
"checkbox"
@
click=
'checkedAllInside()'
/>
文件名
</th>
<th
width=
"400"
>
</th>
<th
width=
"400"
>
大小
</th>
</tr>
<tr
v-for=
"(item,index) in nextList"
@
mouseover=
"enterTrInside(index)"
@
mouseleave=
"leaveTrInside"
>
<td
v-if=
"item.DataType==0"
>
<input
type=
"checkbox"
:value=
"item.Id"
v-model=
"fileListInside"
@
change=
"ckeckedOneInside"
>
<div
@
click=
"getNextLevelTree(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
:class=
"['fileIcon', item.icons]"
></div>
{{
item
.
FolderName
}}
</div>
</td>
<td
v-if=
"item.DataType==2"
>
<input
type=
"checkbox"
:value=
"item.Id"
v-model=
"notFileListInside"
@
change=
"ckeckedOneInside"
>
<div
@
click=
"analyzeItemInside(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
:class=
"['fileIcon', item.icons]"
></div>
{{
item
.
FolderName
}}
</div>
</td>
<td>
<el-row
v-if=
'insideCurIndex==index'
>
<el-button
type=
"primary"
icon=
"el-icon-download"
circle
@
click=
'downloadOneInside(item)'
></el-button>
<el-button
type=
"primary"
icon=
"iconfont icon-move"
style=
'font-size: 14px;'
circle
@
click=
'moveOneFileInside(item)'
></el-button>
</el-row>
</td>
<td>
{{
item
.
FileSize
|
FileSizeFormat
(
item
.
FileSize
)
}}
</td>
</tr>
</tbody>
</table>
<el-dialog
custom-class=
'w400'
:title=
"dialogTitle2"
:visible
.
sync=
"outerVisible2"
@
close=
"moveCancel"
center
>
<el-tree
:data=
"fileTreeList"
:props=
"defaultProps"
:check-strictly=
'true'
@
check-change=
"handleNodeChange"
node-key=
"Id"
show-checkbox
accordion
ref=
"tree"
>
</el-tree>
<div
slot=
"footer"
class=
"dialog-footer"
>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.cancelBtn')"
@
click=
"moveCancel"
/>
<input
type=
"button"
v-if=
'!isChildFiles'
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
@
click=
"saveMoveFiles"
/>
<input
type=
"button"
v-if=
'isChildFiles'
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
@
click=
"saveMoveFilesInside"
/>
</div>
</el-dialog>
<el-dialog
custom-class=
'w800'
:title=
"dialogTitle4"
:visible
.
sync=
"outerVisible4"
center
>
<video
:src=
"moviePath"
controls=
"controls"
style=
"width: 100%;"
>
your browser does not support the video tag
</video>
<div
slot=
"footer"
class=
"dialog-footer"
>
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.closeSel')"
@
click=
"outerVisible4=false"
/>
</div>
</el-dialog
>
<div
v-if=
'audioIsShow'
style=
"position: fixed; bottom: 100px; right: 20px; z-index: 999; border:1px solid #ccc; padding: 10px; background: #eee;"
>
<i
class=
"el-icon-circle-close-outline"
style=
"float: right; cursor: pointer;"
@
click=
"audioIsShow=false,audioPath=''"
></i>
<p
style=
"font-size: 12px; margin: 0 0 10px 0;"
>
{{
audioName
}}
</p>
<audio
:src=
"audioPath"
controls=
"controls"
>
Your browser does not support the audio tag.
</audio>
</div>
<div
v-if=
'picIsShow'
class=
"viewBigPicLayer"
>
<i
class=
"el-icon-circle-close-outline clolseViewBigPicLayer"
@
click=
"picIsShow=false,picObj=[]"
></i>
<el-carousel
height=
"600px"
:initial-index=
'initialIndex'
:interval=
"5000"
trigger=
"click"
>
<el-carousel-item
v-for=
"(item,index) in picObj"
:key=
"index"
>
<div
class=
"inlineDiv ownScrollbarStyle"
><img
:src=
"item"
/></div>
</el-carousel-item>
</el-carousel>
</div>
<el-dialog
custom-class=
'w400'
title=
"压缩下载"
:visible
.
sync=
"yzmVisible"
center
>
<tbody
v-if=
'isChildFiles'
>
<p>
<tr>
<span>
验证码 :
</span>
<th
width=
"400"
><input
v-model=
"isCkedAllInside"
type=
"checkbox"
@
click=
'checkedAllInside()'
/>
文件名
</th>
<el-input
class=
'w150'
type=
"text"
placeholder=
"请输入验证码"
v-model=
"picLyanzhengma"
></el-input>
<th
width=
"400"
>
</th>
<input
type=
"button"
@
click=
"createCode"
class=
"DocumentLoadVerification"
v-model=
"checkCode"
/>
<th
width=
"400"
>
大小
</th>
</p>
</tr>
<div
slot=
"footer"
class=
"dialog-footer"
>
<tr
v-for=
"(item,index) in nextList"
@
mouseover=
"enterTrInside(index)"
@
mouseleave=
"leaveTrInside"
>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.cancelBtn')"
@
click=
"yzmVisible=false"
/>
<td
v-if=
"item.DataType==0"
>
<input
v-if=
'!isChildFiles'
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
@
click=
"downloadTotal()"
/>
<input
type=
"checkbox"
:value=
"item.Id"
v-model=
"fileListInside"
@
change=
"ckeckedOneInside"
>
<input
v-if=
'isChildFiles'
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
@
click=
"downloadTotalInside()"
/>
<div
@
click=
"getNextLevelTree(item)"
style=
"cursor: pointer; display: inline-block;"
>
</div>
<div
:class=
"['fileIcon', item.icons]"
></div>
</el-dialog
>
{{
item
.
FolderName
}}
</div>
</div>
</td>
</
template
>
<td
v-if=
"item.DataType==2"
>
<input
type=
"checkbox"
:value=
"item.Id"
v-model=
"notFileListInside"
@
change=
"ckeckedOneInside"
>
<div
@
click=
"analyzeItemInside(item)"
style=
"cursor: pointer; display: inline-block;"
>
<div
:class=
"['fileIcon', item.icons]"
></div>
{{
item
.
FolderName
}}
</div>
</td>
<td>
<el-row
v-if=
'insideCurIndex==index'
>
<el-button
type=
"primary"
icon=
"el-icon-download"
circle
@
click=
'downloadOneInside(item)'
></el-button>
<el-button
type=
"primary"
icon=
"iconfont icon-move"
style=
'font-size: 14px;'
circle
@
click=
'moveOneFileInside(item)'
></el-button>
</el-row>
</td>
<td>
{{
item
.
FileSize
|
FileSizeFormat
(
item
.
FileSize
)
}}
</td>
</tr>
</tbody>
</table>
<
script
>
<el-dialog
custom-class=
'w400'
:title=
"dialogTitle2"
:visible
.
sync=
"outerVisible2"
@
close=
"moveCancel"
center
>
// let browserMD5File = require('browser-md5-file');
<el-tree
:data=
"fileTreeList"
:props=
"defaultProps"
:check-strictly=
'true'
@
check-change=
"handleNodeChange"
export
default
{
node-key=
"Id"
show-checkbox
accordion
ref=
"tree"
>
data
()
{
</el-tree>
return
{
<div
slot=
"footer"
class=
"dialog-footer"
>
code
:
''
,
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.cancelBtn')"
@
click=
"moveCancel"
/>
picLyanzhengma
:
''
,
<input
type=
"button"
v-if=
'!isChildFiles'
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
checkCode
:
''
,
@
click=
"saveMoveFiles"
/>
yzmVisible
:
false
,
<input
type=
"button"
v-if=
'isChildFiles'
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
@
click=
"saveMoveFilesInside"
/>
initialIndex
:
0
,
</div>
picObj
:[],
</el-dialog>
picIsShow
:
false
,
<el-dialog
custom-class=
'w800'
:title=
"dialogTitle4"
:visible
.
sync=
"outerVisible4"
center
>
audioIsShow
:
false
,
<video
:src=
"moviePath"
controls=
"controls"
style=
"width: 100%;"
>
outerVisible4
:
false
,
your browser does not support the video tag
dialogTitle4
:
''
,
</video>
moviePath
:
''
,
<div
slot=
"footer"
class=
"dialog-footer"
>
audioPath
:
''
,
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.closeSel')"
@
click=
"outerVisible4=false"
/>
picPath
:
''
,
</div>
audioName
:
''
,
</el-dialog>
headers
:
{
<div
v-if=
'audioIsShow'
'Content-Type'
:
'application/octet-stream'
style=
"position: fixed; bottom: 100px; right: 20px; z-index: 999; border:1px solid #ccc; padding: 10px; background: #eee;"
>
},
<i
class=
"el-icon-circle-close-outline"
style=
"float: right; cursor: pointer;"
defaultProps
:
{
@
click=
"audioIsShow=false,audioPath=''"
></i>
children
:
'ChildFolderList'
,
<p
style=
"font-size: 12px; margin: 0 0 10px 0;"
>
{{
audioName
}}
</p>
label
:
'FolderName'
,
<audio
:src=
"audioPath"
controls=
"controls"
>
},
Your browser does not support the audio tag.
defaultProps1
:
{
</audio>
children
:
'ChildList'
,
</div>
label
:
'DepartmentName'
,
disabled
:
"Disabled"
},
defaultProps2
:
{
children
:
'ChildList'
,
label
:
'DepartmentName'
,
disabled
:
"Disabled"
},
defaultProps3
:
{
children
:
'ChildList'
,
label
:
'DepartmentName'
,
disabled
:
"Disabled"
},
outerVisible
:
false
,
dialogTitle
:
''
,
outerVisible1
:
false
,
dialogTitle1
:
''
,
outerVisible2
:
false
,
dialogTitle2
:
''
,
outerVisible3
:
false
,
dialogTitle3
:
''
,
isCkedAll
:
false
,
isCkedAllInside
:
false
,
//请求数据
fileList
:
[],
//文件夹
notFileList
:
[],
//文件
fileListInside
:
[],
//文件夹
notFileListInside
:
[],
//文件
saveMsg
:
[],
msg
:
{
pageIndex
:
'1'
,
pageSize
:
'9999'
,
ShareName
:
''
},
nextMsg
:{
ParentId
:
'0'
,
FolderName
:
''
,
EmployeeId
:
'0'
},
addFileMsg
:
{
FolderName
:
''
,
ParentId
:
'0'
,
FolderId
:
''
,
},
updateFileMsg
:
{
FileId
:
'0'
,
FileName
:
'0'
},
MoveMsg
:
{
foldId
:
'0'
,
folderIds
:[],
fileIds
:[]
},
shareMsg
:
{
shareType
:
'1'
,
fileIds
:
[],
targetIds
:
''
,
folderIds
:
[]
},
downloadMsg
:{
FolderIdStr
:[],
FileIdStr
:[]
},
downloadMsgInside
:{
FolderIdStr
:[],
FileIdStr
:[]
},
defaultImg
:
'this.src="'
+
require
(
'../../assets/img/litheader.png'
)
+
'"'
,
//返回数据
NavList
:[],
nextList
:[],
isChildFiles
:
false
,
curIndex
:
-
1
,
insideCurIndex
:
-
1
,
list
:[],
fileTreeList
:
[],
NavigationList
:
[],
WjId
:
[],
WjjId
:
[],
WjIdInside
:
[],
WjjIdInside
:
[],
arr
:
[],
departmentList
:[],
ckdDepartmentList
:[],
ckdDepartmentListId
:[],
roleList
:[],
ckdRoleList
:[],
ckdRoleListId
:[],
menberList
:[],
ckdMenberList
:[],
ckdMenberListId
:[],
allLength
:
0
,
allLengthInside
:
0
,
rules
:
{
//表单验证
FolderName
:
[{
required
:
true
,
message
:
'请输入文件夹名称'
,
trigger
:
'blur'
}]
},
rules1
:
{
//表单验证
FileName
:
[{
required
:
true
,
message
:
'请输入文件名称'
,
trigger
:
'blur'
}]
},
srearchKey
:
""
}
},
<div
v-if=
'picIsShow'
class=
"viewBigPicLayer"
>
filters
:
{
<i
class=
"el-icon-circle-close-outline clolseViewBigPicLayer"
@
click=
"picIsShow=false,picObj=[]"
></i>
FileSizeFormat
(
value
)
{
<el-carousel
height=
"600px"
:initial-index=
'initialIndex'
:interval=
"5000"
trigger=
"click"
>
if
(
value
==
null
||
value
==
0
)
{
<el-carousel-item
v-for=
"(item,index) in picObj"
:key=
"index"
>
return
'-'
<div
class=
"inlineDiv ownScrollbarStyle"
><img
:src=
"item"
/></div>
}
</el-carousel-item>
if
(
value
!=
null
)
{
</el-carousel>
if
(
value
/
1024
<
1
)
{
//kb
</div>
return
value
+
'KB'
}
if
(
value
/
1024
>
1
&&
value
/
(
1024
*
1024
)
<
1
)
{
//mb
return
(
value
/
1024
).
toFixed
(
2
)
+
'M'
}
if
(
value
/
(
1024
*
1024
)
>
1
)
{
//G
return
(
value
/
(
1024
*
1024
)).
toFixed
(
2
)
+
'G'
}
}
}
<el-dialog
custom-class=
'w400'
title=
"压缩下载"
:visible
.
sync=
"yzmVisible"
center
>
},
<p>
methods
:
{
<span>
验证码 :
</span>
// 图片验证码
<el-input
class=
'w150'
type=
"text"
placeholder=
"请输入验证码"
v-model=
"picLyanzhengma"
></el-input>
createCode
(){
<input
type=
"button"
@
click=
"createCode"
class=
"DocumentLoadVerification"
v-model=
"checkCode"
/>
//先清空验证码的输入
</p>
this
.
code
=
""
;
<div
slot=
"footer"
class=
"dialog-footer"
>
this
.
checkCode
=
""
;
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.cancelBtn')"
@
click=
"yzmVisible=false"
/>
this
.
picLyanzhengma
=
""
;
<input
v-if=
'!isChildFiles'
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
//验证码的长度
@
click=
"downloadTotal()"
/>
var
codeLength
=
4
;
<input
v-if=
'isChildFiles'
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.sureBtn')"
//随机数
@
click=
"downloadTotalInside()"
/>
var
random
=
new
Array
(
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
'A'
,
'B'
,
'C'
,
'D'
,
'E'
,
'F'
,
'G'
,
'H'
,
'I'
,
'J'
,
'K'
,
'L'
,
'M'
,
'N'
,
'O'
,
'P'
,
'Q'
,
'R'
,
'S'
,
'T'
,
'U'
,
'V'
,
'W'
,
'X'
,
'Y'
,
'Z'
);
</div>
for
(
var
i
=
0
;
i
<
codeLength
;
i
++
)
{
</el-dialog>
//取得随机数的索引(0~35)
var
index
=
Math
.
floor
(
Math
.
random
()
*
36
);
//根据索引取得随机数加到code上
this
.
code
+=
random
[
index
];
}
//把code值赋给验证码
this
.
checkCode
=
this
.
code
;
},
analyzeItem
(
obj
){
let
typeArr
=
[
{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
type
:
1
},
{
stringArr
:
'MP3|OGG|AU|AIFF|VQF'
,
type
:
2
},
{
stringArr
:
'AVI|WMV|MPEG|MP4|MOV|MKV|FLV|F4V|M4V|RMVB|RM|3GP|DAT|TS|MTS|VOB'
,
type
:
3
},
{
stringArr
:
'DOCX|DOC|XLSX|XLS|PPT|PPTX'
,
type
:
4
},
{
stringArr
:
'PDF'
,
type
:
5
},
]
let
fileTypeNumber
;
// 判断文件预览类型; 1 图片,2音频,3视频,4,office,, 5 PDF , 6 txt default其他
let
fileType
=
obj
.
fileUrl
.
substring
(
obj
.
fileUrl
.
lastIndexOf
(
'.'
)
+
1
,
obj
.
fileUrl
.
length
).
toUpperCase
()
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
fileType
)
!=
'-1'
)
{
fileTypeNumber
=
x
.
type
}
})
switch
(
fileTypeNumber
){
case
1
:
this
.
list
.
forEach
(
item
=>
{
if
(
item
.
shareFileType
==
2
){
let
fileType
=
item
.
fileName
.
substring
(
item
.
fileName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
fileName
.
length
).
toUpperCase
()
if
(
'GIF|JPG|JPEG|PNG|BMP'
.
indexOf
(
fileType
)
!=-
1
){
this
.
picObj
.
push
(
item
.
fileUrl
)
}
}
})
this
.
picObj
.
forEach
((
x
,
i
)
=>
{
if
(
x
==
obj
.
fileUrl
){
this
.
initialIndex
=
i
return
false
}
})
this
.
picIsShow
=
true
//this.picPath=obj.FilePath
break
;
case
2
:
this
.
audioIsShow
=
true
this
.
audioName
=
obj
.
fileName
this
.
audioPath
=
obj
.
fileUrl
break
;
case
3
:
this
.
outerVisible4
=
true
this
.
dialogTitle4
=
obj
.
fileName
this
.
moviePath
=
obj
.
fileUrl
break
;
case
4
:
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
obj
.
fileUrl
)
break
;
case
5
:
this
.
previewPDF
(
obj
.
fileUrl
)
default
:
this
.
$message
.
warning
(
'该文件格式暂不支持预览,请下载用相关软件预览!'
)
break
;
}
},
analyzeItemInside
(
obj
){
let
typeArr
=
[
{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
type
:
1
},
{
stringArr
:
'MP3|OGG|AU|AIFF|VQF'
,
type
:
2
},
{
stringArr
:
'AVI|WMV|MPEG|MP4|MOV|MKV|FLV|F4V|M4V|RMVB|RM|3GP|DAT|TS|MTS|VOB'
,
type
:
3
},
{
stringArr
:
'DOCX|DOC|XLSX|XLS|PPT|PPTX'
,
type
:
4
},
{
stringArr
:
'PDF'
,
type
:
5
},
]
let
fileTypeNumber
;
// 判断文件预览类型; 1 图片,2音频,3视频,4,office,, 5 PDF , 6 txt default其他
let
fileType
=
obj
.
FilePath
.
substring
(
obj
.
FilePath
.
lastIndexOf
(
'.'
)
+
1
,
obj
.
FilePath
.
length
).
toUpperCase
()
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
fileType
)
!=
'-1'
)
{
fileTypeNumber
=
x
.
type
}
})
switch
(
fileTypeNumber
){
case
1
:
this
.
nextList
.
forEach
(
item
=>
{
if
(
item
.
DataType
==
2
){
let
fileType
=
item
.
FolderName
.
substring
(
item
.
FolderName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
FolderName
.
length
).
toUpperCase
()
if
(
'GIF|JPG|JPEG|PNG|BMP'
.
indexOf
(
fileType
)
!=-
1
){
this
.
picObj
.
push
(
item
.
FilePath
)
}
}
})
this
.
picObj
.
forEach
((
x
,
i
)
=>
{
if
(
x
==
obj
.
FilePath
){
this
.
initialIndex
=
i
return
false
}
})
this
.
picIsShow
=
true
//this.picPath=obj.FilePath
break
;
case
2
:
this
.
audioIsShow
=
true
this
.
audioName
=
obj
.
FolderName
this
.
audioPath
=
obj
.
FilePath
break
;
case
3
:
this
.
outerVisible4
=
true
this
.
dialogTitle4
=
obj
.
FolderName
this
.
moviePath
=
obj
.
FilePath
break
;
case
4
:
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
obj
.
FilePath
)
break
;
case
5
:
this
.
previewPDF
(
obj
.
FilePath
)
break
default
:
this
.
$message
.
warning
(
'该文件格式暂不支持预览,请下载用相关软件预览!'
)
break
;
}
},
resGetList
(){
this
.
msg
.
ShareName
=
''
this
.
isChildFiles
=
false
;
this
.
isCkedAllInside
=
false
this
.
NavList
=
[]
this
.
fileListInside
=
[],
//文件夹
this
.
notFileListInside
=
[],
//文件
this
.
getList
()
},
handleExceed
(
file
,
fileList
)
{
this
.
$message
.
warning
(
'一次最多选择5个文件!'
)
return
},
</div>
uploadFileBtn
(
file
)
{
//上传
</
template
>
let
that
=
this
let
newArr
=
[];
newArr
.
push
(
file
.
file
)
let
path
=
"/Upload/Temporary/"
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
<
script
>
this
.
saveMsg
=
[]
// let browserMD5File = require('browser-md5-file');
this
.
saveMsg
.
push
({
export
default
{
Path
:
x
.
data
.
FilePath
,
data
()
{
FileName
:
file
.
file
.
name
,
return
{
MD5Sign
:
file
.
file
.
uid
,
code
:
''
,
FileSize
:
(
file
.
file
.
size
/
1024
).
toFixed
(
0
),
picLyanzhengma
:
''
,
FolderId
:
this
.
msg
.
ParentId
checkCode
:
''
,
})
yzmVisible
:
false
,
that
.
apipost
(
'user_cloud_SaveFile'
,
this
.
saveMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
$refs
.
upload
.
clearFiles
();
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
$refs
.
upload
.
clearFiles
();
}
},
err
=>
{})
});
},
dowloadSingle
()
{
this
.
list
.
forEach
(
item
=>
{
if
(
item
.
shareFileType
==
2
)
{
for
(
let
i
=
0
;
i
<
this
.
notFileList
.
length
;
i
++
)
{
if
(
this
.
notFileList
[
i
]
==
item
.
shareId
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
item
.
fileUrl
.
replace
(
reg
,
''
),
item
.
fileName
);
}
}
}
})
},
dowloadSingleInside
()
{
this
.
nextList
.
forEach
(
item
=>
{
if
(
item
.
DataType
==
2
)
{
for
(
let
i
=
0
;
i
<
this
.
notFileListInside
.
length
;
i
++
)
{
if
(
this
.
notFileListInside
[
i
]
==
item
.
Id
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
item
.
FilePath
.
replace
(
reg
,
''
),
item
.
FolderName
);
}
}
}
})
},
downloadOne
(
obj
){
if
(
obj
.
shareFileType
==
1
){
this
.
yzmVisible
=
true
this
.
createCode
()
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
fileList
.
push
(
obj
.
shareId
)
}
if
(
obj
.
shareFileType
==
2
){
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
obj
.
fileUrl
.
replace
(
reg
,
''
),
obj
.
fileName
);
}
},
downloadTotal
()
{
if
(
this
.
picLyanzhengma
.
toLocaleUpperCase
()
==
this
.
checkCode
){
this
.
yzmVisible
=
false
this
.
$message
.
info
(
'文件压缩中,请等待..'
)
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
fileList
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
fileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
1
&&
x
.
shareId
==
this
.
fileList
[
i
]){
this
.
downloadMsg
.
FolderIdStr
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
downloadMsg
.
folderIds
=
[]
}
})
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
notFileList
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
notFileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
2
&&
x
.
shareId
==
this
.
notFileList
[
i
]){
this
.
downloadMsg
.
FileIdStr
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
downloadMsg
.
fileIds
=
[]
}
})
this
.
apipost
(
'user_cloud_GetPackageFile'
,
this
.
downloadMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
link
=
document
.
createElement
(
'a'
);
let
_loadUrl
=
this
.
domainManager
().
DomainUrl
;
link
.
href
=
_loadUrl
+
res
.
data
.
data
;
document
.
body
.
appendChild
(
link
);
link
.
click
();
this
.
apipost
(
'user_cloud_DelPackageFile'
,{
Path
:
link
.
href
},
res
=>
{
},
err
=>
{})
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}
else
{
this
.
$message
.
error
(
'验证码错误!'
)
}
},
downloadOneInside
(
obj
){
if
(
obj
.
DataType
==
0
){
this
.
yzmVisible
=
true
this
.
createCode
()
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
this
.
fileListInside
.
push
(
obj
.
Id
)
}
if
(
obj
.
DataType
==
2
){
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
obj
.
FilePath
.
replace
(
reg
,
''
),
obj
.
FolderName
);
}
},
downloadTotalInside
()
{
if
(
this
.
picLyanzhengma
.
toLocaleUpperCase
()
==
this
.
checkCode
){
this
.
yzmVisible
=
false
this
.
$message
.
info
(
'文件压缩中,请等待..'
)
this
.
downloadMsgInside
.
FolderIdStr
=
this
.
fileListInside
this
.
downloadMsgInside
.
FileIdStr
=
this
.
notFileListInside
this
.
apipost
(
'user_cloud_GetPackageFile'
,
this
.
downloadMsgInside
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
link
=
document
.
createElement
(
'a'
);
let
_loadUrl
=
this
.
domainManager
().
DomainUrl
;
link
.
href
=
_loadUrl
+
res
.
data
.
data
;
document
.
body
.
appendChild
(
link
);
link
.
click
();
this
.
apipost
(
'user_cloud_DelPackageFile'
,{
Path
:
link
.
href
},
res
=>
{
},
err
=>
{})
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}
else
{
this
.
$message
.
error
(
'验证码错误!'
)
}
},
enterTr
(
index
)
{
this
.
curIndex
=
index
},
leaveTr
()
{
this
.
curIndex
=
-
1
;
},
enterTrInside
(
index
)
{
this
.
insideCurIndex
=
index
},
leaveTrInside
()
{
this
.
insideCurIndex
=
-
1
;
},
checkedAll
()
{
if
(
this
.
isCkedAll
==
true
)
{
this
.
fileList
=
[]
this
.
notFileList
=
[]
}
else
{
this
.
WjjId
.
forEach
(
item
=>
{
this
.
fileList
.
push
(
item
)
})
this
.
WjId
.
forEach
(
item
=>
{
this
.
notFileList
.
push
(
item
)
})
}
},
checkedAllInside
()
{
if
(
this
.
isCkedAllInside
==
true
)
{
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
}
else
{
this
.
WjjIdInside
.
forEach
(
item
=>
{
this
.
fileListInside
.
push
(
item
)
})
this
.
WjIdInside
.
forEach
(
item
=>
{
this
.
notFileListInside
.
push
(
item
)
})
}
},
ckeckedOneInside
()
{
if
(
this
.
fileListInside
.
length
+
this
.
notFileListInside
.
length
<
this
.
allLengthInside
)
{
this
.
isCkedAllInside
=
false
}
else
{
this
.
isCkedAllInside
=
true
}
},
ckeckedOne
()
{
if
(
this
.
fileList
.
length
+
this
.
notFileList
.
length
<
this
.
allLength
)
{
this
.
isCkedAll
=
false
}
else
{
this
.
isCkedAll
=
true
}
},
openAddFilesDialog
()
{
this
.
dialogTitle
=
'新建文件夹'
this
.
outerVisible
=
true
},
addFiles
()
{
this
.
apipost
(
'user_cloud_AddFolder'
,
this
.
addFileMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
()
this
.
outerVisible
=
false
this
.
addFileMsg
.
FolderName
=
''
}
else
{
initialIndex
:
0
,
this
.
$message
.
error
(
res
.
data
.
message
)
picObj
:
[],
}
picIsShow
:
false
,
},
err
=>
{})
audioIsShow
:
false
,
},
outerVisible4
:
false
,
deleteFiles
()
{
dialogTitle4
:
''
,
this
.
$confirm
(
'删除文件后,分享和子文件将被删除,是否删除?'
,
'提示'
,
{
moviePath
:
''
,
confirmButtonText
:
'确定'
,
audioPath
:
''
,
cancelButtonText
:
'取消'
,
picPath
:
''
,
type
:
'warning'
audioName
:
''
,
}).
then
(()
=>
{
headers
:
{
this
.
apipost
(
'user_cloud_DelFolder'
,
{
'Content-Type'
:
'application/octet-stream'
FolderIdStr
:
this
.
fileList
,
},
FileIdStr
:
this
.
notFileList
defaultProps
:
{
},
res
=>
{
children
:
'ChildFolderList'
,
if
(
res
.
data
.
resultCode
==
1
)
{
label
:
'FolderName'
,
this
.
$message
.
success
(
res
.
data
.
message
);
},
this
.
getList
()
defaultProps1
:
{
}
else
{
children
:
'ChildList'
,
this
.
$message
.
error
(
res
.
data
.
message
)
label
:
'DepartmentName'
,
}
disabled
:
"Disabled"
},
err
=>
{})
},
}).
catch
(()
=>
{
defaultProps2
:
{
this
.
$message
.
info
(
'取消删除'
);
children
:
'ChildList'
,
});
label
:
'DepartmentName'
,
},
disabled
:
"Disabled"
deleteOne
(
obj
)
{
},
let
fileList
=
[]
defaultProps3
:
{
let
notFileList
=
[]
children
:
'ChildList'
,
let
confirmMsg
=
''
label
:
'DepartmentName'
,
if
(
obj
.
DataType
==
0
)
{
//文件夹
disabled
:
"Disabled"
fileList
.
push
(
obj
.
Id
)
},
confirmMsg
=
'删除文件夹后,分享和子文件将被删除,是否删除?'
outerVisible
:
false
,
dialogTitle
:
''
,
outerVisible1
:
false
,
dialogTitle1
:
''
,
outerVisible2
:
false
,
dialogTitle2
:
''
,
outerVisible3
:
false
,
dialogTitle3
:
''
,
isCkedAll
:
false
,
isCkedAllInside
:
false
,
//请求数据
fileList
:
[],
//文件夹
notFileList
:
[],
//文件
fileListInside
:
[],
//文件夹
notFileListInside
:
[],
//文件
saveMsg
:
[],
msg
:
{
pageIndex
:
'1'
,
pageSize
:
'9999'
,
ShareName
:
''
},
nextMsg
:
{
ParentId
:
'0'
,
FolderName
:
''
,
EmployeeId
:
'0'
},
addFileMsg
:
{
FolderName
:
''
,
ParentId
:
'0'
,
FolderId
:
''
,
},
updateFileMsg
:
{
FileId
:
'0'
,
FileName
:
'0'
},
MoveMsg
:
{
foldId
:
'0'
,
folderIds
:
[],
fileIds
:
[]
},
shareMsg
:
{
shareType
:
'1'
,
fileIds
:
[],
targetIds
:
''
,
folderIds
:
[]
},
downloadMsg
:
{
FolderIdStr
:
[],
FileIdStr
:
[]
},
downloadMsgInside
:
{
FolderIdStr
:
[],
FileIdStr
:
[]
},
defaultImg
:
'this.src="'
+
require
(
'../../assets/img/litheader.png'
)
+
'"'
,
//返回数据
NavList
:
[],
nextList
:
[],
isChildFiles
:
false
,
curIndex
:
-
1
,
insideCurIndex
:
-
1
,
list
:
[],
fileTreeList
:
[],
NavigationList
:
[],
WjId
:
[],
WjjId
:
[],
WjIdInside
:
[],
WjjIdInside
:
[],
arr
:
[],
departmentList
:
[],
ckdDepartmentList
:
[],
ckdDepartmentListId
:
[],
roleList
:
[],
ckdRoleList
:
[],
ckdRoleListId
:
[],
menberList
:
[],
ckdMenberList
:
[],
ckdMenberListId
:
[],
allLength
:
0
,
allLengthInside
:
0
,
rules
:
{
//表单验证
FolderName
:
[{
required
:
true
,
message
:
'请输入文件夹名称'
,
trigger
:
'blur'
}]
},
rules1
:
{
//表单验证
FileName
:
[{
required
:
true
,
message
:
'请输入文件名称'
,
trigger
:
'blur'
}]
},
srearchKey
:
""
}
}
},
if
(
obj
.
DataType
==
2
)
{
//文件
filters
:
{
notFileList
.
push
(
obj
.
Id
)
FileSizeFormat
(
value
)
{
confirmMsg
=
'删除文件后,分享文件将被删除,是否删除?'
if
(
value
==
null
||
value
==
0
)
{
}
return
'-'
this
.
$confirm
(
confirmMsg
,
'提示'
,
{
}
confirmButtonText
:
'确定'
,
if
(
value
!=
null
)
{
cancelButtonText
:
'取消'
,
if
(
value
/
1024
<
1
)
{
//kb
type
:
'warning'
return
value
+
'KB'
}).
then
(()
=>
{
}
this
.
apipost
(
'user_cloud_DelFolder'
,
{
if
(
value
/
1024
>
1
&&
value
/
(
1024
*
1024
)
<
1
)
{
//mb
FolderIdStr
:
fileList
,
return
(
value
/
1024
).
toFixed
(
2
)
+
'M'
FileIdStr
:
notFileList
}
},
res
=>
{
if
(
value
/
(
1024
*
1024
)
>
1
)
{
//G
if
(
res
.
data
.
resultCode
==
1
)
{
return
(
value
/
(
1024
*
1024
)).
toFixed
(
2
)
+
'G'
this
.
$message
.
success
(
res
.
data
.
message
);
}
this
.
getList
()
}
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
.
info
(
'取消删除'
);
});
},
moveFiles
()
{
this
.
getTreeList
()
this
.
dialogTitle2
=
'移动文件'
this
.
outerVisible2
=
true
},
moveOneFile
(
obj
){
this
.
fileList
=
[]
this
.
notFileList
=
[]
if
(
obj
.
shareFileType
==
1
){
this
.
fileList
.
push
(
obj
.
shareId
)
}
if
(
obj
.
shareFileType
==
2
){
this
.
notFileList
.
push
(
obj
.
shareId
)
}
this
.
getTreeList
()
this
.
dialogTitle2
=
'移动文件'
this
.
outerVisible2
=
true
},
moveOneFileInside
(
obj
){
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
if
(
obj
.
DataType
==
0
){
this
.
fileListInside
.
push
(
obj
.
Id
)
}
if
(
obj
.
DataType
==
2
){
this
.
notFileListInside
.
push
(
obj
.
Id
)
}
this
.
getTreeList
()
this
.
dialogTitle2
=
'移动文件'
this
.
outerVisible2
=
true
},
handleNodeChange
(
data
,
checked
)
{
if
(
checked
)
{
this
.
arr
.
push
(
data
.
Id
)
this
.
$refs
.
tree
.
setCheckedKeys
([
data
.
Id
]);
this
.
MoveMsg
.
foldId
=
data
.
Id
;
}
else
{
if
(
this
.
arr
.
length
==
1
)
{
this
.
arr
=
[]
this
.
MoveMsg
.
foldId
=
'0'
}
else
{
this
.
arr
=
this
.
arr
.
slice
(
this
.
arr
.
length
-
1
)
this
.
MoveMsg
.
foldId
=
this
.
arr
[
this
.
arr
.
length
-
1
]
}
}
},
saveMoveFiles
()
{
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
fileList
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
fileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
1
&&
x
.
shareId
==
this
.
fileList
[
i
]){
this
.
MoveMsg
.
folderIds
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
MoveMsg
.
folderIds
=
[]
}
})
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
notFileList
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
notFileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
2
&&
x
.
shareId
==
this
.
notFileList
[
i
]){
this
.
MoveMsg
.
fileIds
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
MoveMsg
.
fileIds
=
[]
}
})
this
.
apipost
(
'user_cloud_share_file_move'
,
this
.
MoveMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
outerVisible2
=
false
;
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
saveMoveFilesInside
()
{
this
.
MoveMsg
.
folderIds
=
this
.
fileListInside
this
.
MoveMsg
.
fileIds
=
this
.
notFileListInside
this
.
apipost
(
'user_cloud_share_file_move'
,
this
.
MoveMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
outerVisible2
=
false
;
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
openShareOneDialog
(
obj
)
{
if
(
obj
.
DataType
==
0
){
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
fileList
.
push
(
obj
.
Id
)
}
if
(
obj
.
DataType
==
2
){
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
notFileList
.
push
(
obj
.
Id
)
}
this
.
outerVisible3
=
true
this
.
dialogTitle3
=
'分享文件/文件夹'
this
.
getDepartment
()
this
.
getRole
()
this
.
getMenber
()
},
openShareDialog
()
{
this
.
outerVisible3
=
true
this
.
dialogTitle3
=
'分享文件/文件夹'
this
.
getDepartment
()
this
.
getRole
()
this
.
getMenber
()
},
shareDeparment
(){
this
.
shareMsg
.
shareType
=
1
this
.
ckdRoleList
=
[]
this
.
ckdRoleListId
=
[]
this
.
ckdMenberList
=
[]
this
.
ckdMenberListId
=
[]
},
shareRole
(){
this
.
shareMsg
.
shareType
=
2
this
.
ckdDepartmentList
=
[]
this
.
ckdDepartmentListId
=
[]
this
.
ckdMenberList
=
[]
this
.
ckdMenberListId
=
[]
},
shareMenber
(){
this
.
shareMsg
.
shareType
=
3
this
.
ckdDepartmentList
=
[]
this
.
ckdDepartmentListId
=
[]
this
.
ckdRoleList
=
[]
this
.
ckdRoleListId
=
[]
},
getDepartment
()
{
//部门
this
.
apipost
(
'app_get_GetDepartmentListTree'
,
{},
res
=>
{
this
.
departmentList
=
res
.
data
.
data
},
err
=>
{})
},
DepartmentListNodeChange
(
data
,
checked
){
if
(
checked
){
this
.
ckdDepartmentList
.
push
({
name
:
data
.
DepartmentName
,
id
:
data
.
DepartmentID
})
this
.
ckdDepartmentListId
.
push
(
data
.
DepartmentID
)
}
if
(
!
checked
){
if
(
this
.
ckdDepartmentList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentID
)
!=-
1
){
this
.
ckdDepartmentList
.
splice
(
this
.
ckdDepartmentList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentID
),
1
)
}
if
(
this
.
ckdDepartmentListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentID
)
!=-
1
){
this
.
ckdDepartmentListId
.
splice
(
this
.
ckdDepartmentListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentID
),
1
)
}
}
},
deleteDepartment
(
id
){
this
.
ckdDepartmentList
.
splice
(
this
.
ckdDepartmentList
.
findIndex
(
item
=>
item
.
id
===
id
),
1
)
this
.
ckdDepartmentListId
.
splice
(
this
.
ckdDepartmentListId
.
findIndex
(
item
=>
item
===
id
),
1
)
//删除相同id
this
.
$refs
.
treeDepartmentList
.
setCheckedKeys
(
this
.
ckdDepartmentListId
);
},
getRole
()
{
//岗位
this
.
apipost
(
'WorkFlow_get_GetDepartMentPost'
,
{},
res
=>
{
this
.
roleList
=
res
.
data
.
data
},
err
=>
{})
},
roleListNodeChange
(
data
,
checked
){
if
(
data
.
Type
==
2
&&
checked
){
this
.
ckdRoleList
.
push
({
name
:
data
.
DepartmentName
,
id
:
data
.
DepartmentId
})
this
.
ckdRoleListId
.
push
(
data
.
DepartmentId
)
}
if
(
data
.
Type
==
2
&&!
checked
){
if
(
this
.
ckdRoleList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
)
!=-
1
){
this
.
ckdRoleList
.
splice
(
this
.
ckdRoleList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
),
1
)
}
if
(
this
.
ckdRoleListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
)
!=-
1
){
this
.
ckdRoleListId
.
splice
(
this
.
ckdRoleListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
),
1
)
//删除相同id
}
}
},
deleteRole
(
id
){
this
.
ckdRoleList
.
splice
(
this
.
ckdRoleList
.
findIndex
(
item
=>
item
.
id
===
id
),
1
)
this
.
ckdRoleListId
.
splice
(
this
.
ckdRoleListId
.
findIndex
(
item
=>
item
===
id
),
1
)
//删除相同id
this
.
$refs
.
treeRole
.
setCheckedKeys
(
this
.
ckdRoleListId
);
},
getMenber
()
{
//员工
this
.
apipost
(
'WorkFlow_get_GetDepartMentEmployee'
,
{},
res
=>
{
this
.
menberList
=
res
.
data
.
data
},
err
=>
{})
},
MenberListNodeChange
(
data
,
checked
){
if
(
data
.
Type
==
2
&&
checked
){
this
.
ckdMenberList
.
push
({
name
:
data
.
DepartmentName
,
id
:
data
.
DepartmentId
})
this
.
ckdMenberListId
.
push
(
data
.
DepartmentId
)
}
if
(
data
.
Type
==
2
&&!
checked
){
if
(
this
.
ckdMenberList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
)
!=-
1
){
this
.
ckdMenberList
.
splice
(
this
.
ckdMenberList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
),
1
)
}
if
(
this
.
ckdMenberListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
)
!=-
1
){
this
.
ckdMenberListId
.
splice
(
this
.
ckdMenberListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
),
1
)
//删除相同id
}
}
},
deleteMenber
(
id
){
this
.
ckdMenberList
.
splice
(
this
.
ckdMenberList
.
findIndex
(
item
=>
item
.
id
===
id
),
1
)
this
.
ckdMenberListId
.
splice
(
this
.
ckdMenberListId
.
findIndex
(
item
=>
item
===
id
),
1
)
//删除相同id
this
.
$refs
.
treeMenber
.
setCheckedKeys
(
this
.
ckdMenberListId
);
},
saveShareDocument
(){
if
(
this
.
shareMsg
.
shareType
==
1
){
this
.
shareMsg
.
targetIds
=
this
.
ckdDepartmentListId
.
join
(
','
)
}
else
if
(
this
.
shareMsg
.
shareType
==
2
){
this
.
shareMsg
.
targetIds
=
this
.
ckdRoleListId
.
join
(
','
)
}
else
{
this
.
shareMsg
.
targetIds
=
this
.
ckdMenberListId
.
join
(
','
)
}
this
.
shareMsg
.
fileIds
=
this
.
notFileList
this
.
shareMsg
.
folderIds
=
this
.
fileList
this
.
apipost
(
'user_cloud_file_share'
,
this
.
shareMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
outerVisible3
=
false
this
.
$message
.
success
(
res
.
data
.
message
)
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
updateFiles
(
obj
)
{
this
.
outerVisible
=
true
;
this
.
dialogTitle
=
'修改文件夹'
this
.
addFileMsg
.
FolderName
=
obj
.
FolderName
;
this
.
addFileMsg
.
FolderId
=
obj
.
FolderId
;
},
updateOneFile
(
obj
)
{
this
.
outerVisible1
=
true
;
this
.
dialogTitle1
=
'修改文件'
let
index
=
obj
.
FolderName
.
lastIndexOf
(
'.'
)
if
(
obj
.
FolderName
&&
obj
.
FolderName
!=
""
)
{
this
.
updateFileMsg
.
FileName
=
obj
.
FolderName
.
substring
(
0
,
index
)
}
this
.
updateFileMsg
.
FileId
=
obj
.
Id
},
saveUpdateFile
()
{
this
.
apipost
(
'user_cloud_UpdateFile'
,
this
.
updateFileMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
outerVisible
=
false
;
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
getList
()
{
this
.
apipost
(
'user_cloud_get_share_tomy'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
list
=
res
.
data
.
data
.
pageData
this
.
isCkedAll
=
false
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
allLength
=
res
.
data
.
data
.
pageData
.
length
this
.
WjjId
=
[]
this
.
WjId
=
[]
res
.
data
.
data
.
pageData
.
forEach
(
item
=>
{
if
(
item
.
shareFileType
==
1
)
{
this
.
WjjId
.
push
(
item
.
shareId
)
item
.
icons
=
this
.
loadFileICON
(
''
)
}
if
(
item
.
shareFileType
==
2
)
{
this
.
WjId
.
push
(
item
.
shareId
)
let
fileType
=
item
.
fileName
.
substring
(
item
.
fileName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
fileName
.
length
).
toLowerCase
()
item
.
icons
=
this
.
loadFileICON
(
fileType
)
}
})
}
},
err
=>
{})
},
getNextLevel
(
obj
)
{
this
.
addFileMsg
.
ParentId
=
obj
.
fileId
this
.
nextMsg
.
ParentId
=
obj
.
fileId
this
.
nextMsg
.
EmployeeId
=
obj
.
ShareEmployeeId
this
.
isChildFiles
=
true
this
.
getNextLevelList
()
this
.
isCkedAll
=
false
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
NavList
.
push
({
name
:
obj
.
fileName
,
id
:
obj
.
fileId
})
},
getNextLevelTree
(
obj
)
{
this
.
nextMsg
.
ParentId
=
obj
.
Id
this
.
getNextLevelList
()
this
.
NavList
.
push
({
name
:
obj
.
FolderName
,
id
:
obj
.
Id
})
this
.
isChildFiles
=
true
this
.
isCkedAllInside
=
false
},
getNavTree
(
obj
,
index
){
this
.
nextMsg
.
ParentId
=
obj
.
id
this
.
isCkedAllInside
=
false
this
.
getNextLevelList
()
this
.
NavList
=
this
.
NavList
.
slice
(
0
,
index
+
1
)
},
getNextLevelList
(){
this
.
apipost
(
'user_cloud_GetFolderList'
,
this
.
nextMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
nextList
=
res
.
data
.
data
.
data
this
.
allLengthInside
=
res
.
data
.
data
.
data
.
length
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
this
.
WjjIdInside
=
[]
this
.
WjIdInside
=
[]
res
.
data
.
data
.
data
.
forEach
(
item
=>
{
if
(
item
.
DataType
==
0
)
{
this
.
WjjIdInside
.
push
(
item
.
Id
)
item
.
icons
=
this
.
loadFileICON
(
''
)
}
if
(
item
.
DataType
==
2
)
{
this
.
WjIdInside
.
push
(
item
.
Id
)
let
fileType
=
item
.
FolderName
.
substring
(
item
.
FolderName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
FolderName
.
length
).
toLowerCase
()
item
.
icons
=
this
.
loadFileICON
(
fileType
)
}
})
}
},
err
=>
{})
},
getTreeList
()
{
this
.
apipost
(
'user_cloud_GetFolderTreeList'
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
fileTreeList
=
res
.
data
.
data
}
else
{}
},
err
=>
{})
},
submitForm
(
addMsg
)
{
//提交创建、修改表单
this
.
$refs
[
addMsg
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
addFiles
()
}
else
{
return
false
;
}
});
},
closeChangeMachie
(
done
)
{
//弹出框关闭初始化弹框内表单
done
();
this
.
addFileMsg
.
FolderName
=
''
},
doSearch
()
{
this
.
getList
();
},
moveCancel
()
{
this
.
$refs
.
tree
.
setCheckedKeys
([]);
this
.
outerVisible2
=
false
;
}
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
getList
()
},
created
(){
this
.
createCode
()
}
}
</
script
>
<
style
>
}
.myDocumentsNav
{
},
margin
:
25px
0
;
methods
:
{
}
// 图片验证码
createCode
()
{
.myDocumentsTable
td
,
//先清空验证码的输入
.myDocumentsTable
th
{
this
.
code
=
""
;
text-align
:
left
!important
;
this
.
checkCode
=
""
;
padding-left
:
15px
;
this
.
picLyanzhengma
=
""
;
}
//验证码的长度
var
codeLength
=
4
;
.myDocumentsLink
{
//随机数
margin
:
25px
0
;
var
random
=
new
Array
(
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
'A'
,
'B'
,
'C'
,
'D'
,
'E'
,
'F'
,
'G'
,
'H'
,
'I'
,
'J'
,
'K'
,
}
'L'
,
'M'
,
'N'
,
'O'
,
'P'
,
'Q'
,
'R'
,
'S'
,
'T'
,
'U'
,
'V'
,
'W'
,
'X'
,
'Y'
,
'Z'
);
for
(
var
i
=
0
;
i
<
codeLength
;
i
++
)
{
.myDocumentsLink
>
span
{
//取得随机数的索引(0~35)
font-size
:
12px
;
var
index
=
Math
.
floor
(
Math
.
random
()
*
36
);
cursor
:
pointer
;
//根据索引取得随机数加到code上
color
:
#E95252
;
this
.
code
+=
random
[
index
];
}
}
//把code值赋给验证码
.myDocumentsLink
>
span
:not
(
:last-of-type
)
:hover
{
this
.
checkCode
=
this
.
code
;
text-decoration
:
underline
;
},
}
analyzeItem
(
obj
)
{
let
typeArr
=
[{
.myDocumentsLink
>
span
:not
(
:last-of-type
)
:after
{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
content
:
'>'
;
type
:
1
margin
:
0
3px
;
},
color
:
#E95252
;
{
pointer-events
:
none
;
stringArr
:
'MP3|OGG|AU|AIFF|VQF'
,
}
type
:
2
},
.myDocumentsLink
>
span
:last-child
{
{
color
:
#666
;
stringArr
:
'AVI|WMV|MPEG|MP4|MOV|MKV|FLV|F4V|M4V|RMVB|RM|3GP|DAT|TS|MTS|VOB'
,
cursor
:
default
;
type
:
3
}
},
{
.myDocumentUploadBtn
{
stringArr
:
'DOCX|DOC|XLSX|XLS|PPT|PPTX'
,
float
:
left
;
type
:
4
margin-right
:
10px
;
},
}
{
stringArr
:
'PDF'
,
.shareDocumentDialog
.el-dialog__body
{
type
:
5
padding
:
0
!important
;
},
}
]
let
fileTypeNumber
;
// 判断文件预览类型; 1 图片,2音频,3视频,4,office,, 5 PDF , 6 txt default其他
.documentDialogNav
{
let
fileType
=
obj
.
fileUrl
.
substring
(
obj
.
fileUrl
.
lastIndexOf
(
'.'
)
+
1
,
obj
.
fileUrl
.
length
).
toUpperCase
()
background
:
#E95252
;
typeArr
.
forEach
(
x
=>
{
height
:
45px
;
if
(
x
.
stringArr
.
indexOf
(
fileType
)
!=
'-1'
)
{
}
fileTypeNumber
=
x
.
type
}
.documentDialogNav
>
div
{
})
display
:
inline-block
;
switch
(
fileTypeNumber
)
{
color
:
#fff
;
case
1
:
width
:
90px
;
this
.
list
.
forEach
(
item
=>
{
height
:
26px
;
if
(
item
.
shareFileType
==
2
)
{
margin-left
:
20px
;
if
(
item
.
fileName
&&
item
.
fileName
!=
""
)
{
position
:
relative
;
let
sfileType
=
item
.
fileName
.
substring
(
item
.
fileName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
fileName
.
length
)
border-radius
:
13px
;
.
toUpperCase
()
background
:
rgba
(
0
,
0
,
0
,
.2
);
if
(
'GIF|JPG|JPEG|PNG|BMP'
.
indexOf
(
sfileType
)
!=
-
1
)
{
text-align
:
center
;
this
.
picObj
.
push
(
item
.
fileUrl
)
cursor
:
pointer
;
}
}
}
}
.documentDialogNav
>
div
.checkIcon
{
})
width
:
0
;
this
.
picObj
.
forEach
((
x
,
i
)
=>
{
height
:
0
;
if
(
x
==
obj
.
fileUrl
)
{
border-width
:
0
5px
5px
;
this
.
initialIndex
=
i
position
:
absolute
;
return
false
left
:
40px
;
}
top
:
40px
;
border-style
:
solid
;
})
border-color
:
transparent
transparent
#fff
;
this
.
picIsShow
=
true
/*透明 透明 灰*/
//this.picPath=obj.FilePath
}
break
;
.DocumentLoadVerification
{
case
2
:
width
:
120px
;
height
:
30px
;
this
.
audioIsShow
=
true
border-radius
:
4px
;
this
.
audioName
=
obj
.
fileName
letter-spacing
:
5px
;
this
.
audioPath
=
obj
.
fileUrl
border
:
none
;
background
:
#f56c6c
;
break
;
color
:
#eee
;
case
3
:
cursor
:
pointer
;
this
.
outerVisible4
=
true
}
this
.
dialogTitle4
=
obj
.
fileName
</
style
>
this
.
moviePath
=
obj
.
fileUrl
\ No newline at end of file
break
;
case
4
:
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
obj
.
fileUrl
)
break
;
case
5
:
this
.
previewPDF
(
obj
.
fileUrl
)
default
:
this
.
$message
.
warning
(
'该文件格式暂不支持预览,请下载用相关软件预览!'
)
break
;
}
},
analyzeItemInside
(
obj
)
{
let
typeArr
=
[{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
type
:
1
},
{
stringArr
:
'MP3|OGG|AU|AIFF|VQF'
,
type
:
2
},
{
stringArr
:
'AVI|WMV|MPEG|MP4|MOV|MKV|FLV|F4V|M4V|RMVB|RM|3GP|DAT|TS|MTS|VOB'
,
type
:
3
},
{
stringArr
:
'DOCX|DOC|XLSX|XLS|PPT|PPTX'
,
type
:
4
},
{
stringArr
:
'PDF'
,
type
:
5
},
]
let
fileTypeNumber
;
// 判断文件预览类型; 1 图片,2音频,3视频,4,office,, 5 PDF , 6 txt default其他
let
fileType
=
obj
.
FilePath
.
substring
(
obj
.
FilePath
.
lastIndexOf
(
'.'
)
+
1
,
obj
.
FilePath
.
length
).
toUpperCase
()
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
fileType
)
!=
'-1'
)
{
fileTypeNumber
=
x
.
type
}
})
switch
(
fileTypeNumber
)
{
case
1
:
this
.
nextList
.
forEach
(
item
=>
{
if
(
item
.
DataType
==
2
)
{
let
fileType
=
item
.
FolderName
.
substring
(
item
.
FolderName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
FolderName
.
length
).
toUpperCase
()
if
(
'GIF|JPG|JPEG|PNG|BMP'
.
indexOf
(
fileType
)
!=
-
1
)
{
this
.
picObj
.
push
(
item
.
FilePath
)
}
}
})
this
.
picObj
.
forEach
((
x
,
i
)
=>
{
if
(
x
==
obj
.
FilePath
)
{
this
.
initialIndex
=
i
return
false
}
})
this
.
picIsShow
=
true
//this.picPath=obj.FilePath
break
;
case
2
:
this
.
audioIsShow
=
true
this
.
audioName
=
obj
.
FolderName
this
.
audioPath
=
obj
.
FilePath
break
;
case
3
:
this
.
outerVisible4
=
true
this
.
dialogTitle4
=
obj
.
FolderName
this
.
moviePath
=
obj
.
FilePath
break
;
case
4
:
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
obj
.
FilePath
)
break
;
case
5
:
this
.
previewPDF
(
obj
.
FilePath
)
break
default
:
this
.
$message
.
warning
(
'该文件格式暂不支持预览,请下载用相关软件预览!'
)
break
;
}
},
resGetList
()
{
this
.
msg
.
ShareName
=
''
this
.
isChildFiles
=
false
;
this
.
isCkedAllInside
=
false
this
.
NavList
=
[]
this
.
fileListInside
=
[],
//文件夹
this
.
notFileListInside
=
[],
//文件
this
.
getList
()
},
handleExceed
(
file
,
fileList
)
{
this
.
$message
.
warning
(
'一次最多选择5个文件!'
)
return
},
uploadFileBtn
(
file
)
{
//上传
let
that
=
this
let
newArr
=
[];
newArr
.
push
(
file
.
file
)
let
path
=
"/Upload/Temporary/"
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
this
.
saveMsg
=
[]
this
.
saveMsg
.
push
({
Path
:
x
.
data
.
FilePath
,
FileName
:
file
.
file
.
name
,
MD5Sign
:
file
.
file
.
uid
,
FileSize
:
(
file
.
file
.
size
/
1024
).
toFixed
(
0
),
FolderId
:
this
.
msg
.
ParentId
})
that
.
apipost
(
'user_cloud_SaveFile'
,
this
.
saveMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
$refs
.
upload
.
clearFiles
();
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
$refs
.
upload
.
clearFiles
();
}
},
err
=>
{})
});
},
dowloadSingle
()
{
this
.
list
.
forEach
(
item
=>
{
if
(
item
.
shareFileType
==
2
)
{
for
(
let
i
=
0
;
i
<
this
.
notFileList
.
length
;
i
++
)
{
if
(
this
.
notFileList
[
i
]
==
item
.
shareId
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
item
.
fileUrl
.
replace
(
reg
,
''
),
item
.
fileName
);
}
}
}
})
},
dowloadSingleInside
()
{
this
.
nextList
.
forEach
(
item
=>
{
if
(
item
.
DataType
==
2
)
{
for
(
let
i
=
0
;
i
<
this
.
notFileListInside
.
length
;
i
++
)
{
if
(
this
.
notFileListInside
[
i
]
==
item
.
Id
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
item
.
FilePath
.
replace
(
reg
,
''
),
item
.
FolderName
);
}
}
}
})
},
downloadOne
(
obj
)
{
if
(
obj
.
shareFileType
==
1
)
{
this
.
yzmVisible
=
true
this
.
createCode
()
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
fileList
.
push
(
obj
.
shareId
)
}
if
(
obj
.
shareFileType
==
2
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
obj
.
fileUrl
.
replace
(
reg
,
''
),
obj
.
fileName
);
}
},
downloadTotal
()
{
if
(
this
.
picLyanzhengma
.
toLocaleUpperCase
()
==
this
.
checkCode
)
{
this
.
yzmVisible
=
false
this
.
$message
.
info
(
'文件压缩中,请等待..'
)
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
fileList
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
fileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
1
&&
x
.
shareId
==
this
.
fileList
[
i
])
{
this
.
downloadMsg
.
FolderIdStr
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
downloadMsg
.
folderIds
=
[]
}
})
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
notFileList
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
notFileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
2
&&
x
.
shareId
==
this
.
notFileList
[
i
])
{
this
.
downloadMsg
.
FileIdStr
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
downloadMsg
.
fileIds
=
[]
}
})
this
.
apipost
(
'user_cloud_GetPackageFile'
,
this
.
downloadMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
link
=
document
.
createElement
(
'a'
);
let
_loadUrl
=
this
.
domainManager
().
DomainUrl
;
link
.
href
=
_loadUrl
+
res
.
data
.
data
;
document
.
body
.
appendChild
(
link
);
link
.
click
();
this
.
apipost
(
'user_cloud_DelPackageFile'
,
{
Path
:
link
.
href
},
res
=>
{},
err
=>
{})
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}
else
{
this
.
$message
.
error
(
'验证码错误!'
)
}
},
downloadOneInside
(
obj
)
{
if
(
obj
.
DataType
==
0
)
{
this
.
yzmVisible
=
true
this
.
createCode
()
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
this
.
fileListInside
.
push
(
obj
.
Id
)
}
if
(
obj
.
DataType
==
2
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
obj
.
FilePath
.
replace
(
reg
,
''
),
obj
.
FolderName
);
}
},
downloadTotalInside
()
{
if
(
this
.
picLyanzhengma
.
toLocaleUpperCase
()
==
this
.
checkCode
)
{
this
.
yzmVisible
=
false
this
.
$message
.
info
(
'文件压缩中,请等待..'
)
this
.
downloadMsgInside
.
FolderIdStr
=
this
.
fileListInside
this
.
downloadMsgInside
.
FileIdStr
=
this
.
notFileListInside
this
.
apipost
(
'user_cloud_GetPackageFile'
,
this
.
downloadMsgInside
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
link
=
document
.
createElement
(
'a'
);
let
_loadUrl
=
this
.
domainManager
().
DomainUrl
;
link
.
href
=
_loadUrl
+
res
.
data
.
data
;
document
.
body
.
appendChild
(
link
);
link
.
click
();
this
.
apipost
(
'user_cloud_DelPackageFile'
,
{
Path
:
link
.
href
},
res
=>
{},
err
=>
{})
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}
else
{
this
.
$message
.
error
(
'验证码错误!'
)
}
},
enterTr
(
index
)
{
this
.
curIndex
=
index
},
leaveTr
()
{
this
.
curIndex
=
-
1
;
},
enterTrInside
(
index
)
{
this
.
insideCurIndex
=
index
},
leaveTrInside
()
{
this
.
insideCurIndex
=
-
1
;
},
checkedAll
()
{
if
(
this
.
isCkedAll
==
true
)
{
this
.
fileList
=
[]
this
.
notFileList
=
[]
}
else
{
this
.
WjjId
.
forEach
(
item
=>
{
this
.
fileList
.
push
(
item
)
})
this
.
WjId
.
forEach
(
item
=>
{
this
.
notFileList
.
push
(
item
)
})
}
},
checkedAllInside
()
{
if
(
this
.
isCkedAllInside
==
true
)
{
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
}
else
{
this
.
WjjIdInside
.
forEach
(
item
=>
{
this
.
fileListInside
.
push
(
item
)
})
this
.
WjIdInside
.
forEach
(
item
=>
{
this
.
notFileListInside
.
push
(
item
)
})
}
},
ckeckedOneInside
()
{
if
(
this
.
fileListInside
.
length
+
this
.
notFileListInside
.
length
<
this
.
allLengthInside
)
{
this
.
isCkedAllInside
=
false
}
else
{
this
.
isCkedAllInside
=
true
}
},
ckeckedOne
()
{
if
(
this
.
fileList
.
length
+
this
.
notFileList
.
length
<
this
.
allLength
)
{
this
.
isCkedAll
=
false
}
else
{
this
.
isCkedAll
=
true
}
},
openAddFilesDialog
()
{
this
.
dialogTitle
=
'新建文件夹'
this
.
outerVisible
=
true
},
addFiles
()
{
this
.
apipost
(
'user_cloud_AddFolder'
,
this
.
addFileMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
()
this
.
outerVisible
=
false
this
.
addFileMsg
.
FolderName
=
''
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
deleteFiles
()
{
this
.
$confirm
(
'删除文件后,分享和子文件将被删除,是否删除?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'user_cloud_DelFolder'
,
{
FolderIdStr
:
this
.
fileList
,
FileIdStr
:
this
.
notFileList
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
.
info
(
'取消删除'
);
});
},
deleteOne
(
obj
)
{
let
fileList
=
[]
let
notFileList
=
[]
let
confirmMsg
=
''
if
(
obj
.
DataType
==
0
)
{
//文件夹
fileList
.
push
(
obj
.
Id
)
confirmMsg
=
'删除文件夹后,分享和子文件将被删除,是否删除?'
}
if
(
obj
.
DataType
==
2
)
{
//文件
notFileList
.
push
(
obj
.
Id
)
confirmMsg
=
'删除文件后,分享文件将被删除,是否删除?'
}
this
.
$confirm
(
confirmMsg
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'user_cloud_DelFolder'
,
{
FolderIdStr
:
fileList
,
FileIdStr
:
notFileList
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
.
info
(
'取消删除'
);
});
},
moveFiles
()
{
this
.
getTreeList
()
this
.
dialogTitle2
=
'移动文件'
this
.
outerVisible2
=
true
},
moveOneFile
(
obj
)
{
this
.
fileList
=
[]
this
.
notFileList
=
[]
if
(
obj
.
shareFileType
==
1
)
{
this
.
fileList
.
push
(
obj
.
shareId
)
}
if
(
obj
.
shareFileType
==
2
)
{
this
.
notFileList
.
push
(
obj
.
shareId
)
}
this
.
getTreeList
()
this
.
dialogTitle2
=
'移动文件'
this
.
outerVisible2
=
true
},
moveOneFileInside
(
obj
)
{
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
if
(
obj
.
DataType
==
0
)
{
this
.
fileListInside
.
push
(
obj
.
Id
)
}
if
(
obj
.
DataType
==
2
)
{
this
.
notFileListInside
.
push
(
obj
.
Id
)
}
this
.
getTreeList
()
this
.
dialogTitle2
=
'移动文件'
this
.
outerVisible2
=
true
},
handleNodeChange
(
data
,
checked
)
{
if
(
checked
)
{
this
.
arr
.
push
(
data
.
Id
)
this
.
$refs
.
tree
.
setCheckedKeys
([
data
.
Id
]);
this
.
MoveMsg
.
foldId
=
data
.
Id
;
}
else
{
if
(
this
.
arr
.
length
==
1
)
{
this
.
arr
=
[]
this
.
MoveMsg
.
foldId
=
'0'
}
else
{
this
.
arr
=
this
.
arr
.
slice
(
this
.
arr
.
length
-
1
)
this
.
MoveMsg
.
foldId
=
this
.
arr
[
this
.
arr
.
length
-
1
]
}
}
},
saveMoveFiles
()
{
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
fileList
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
fileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
1
&&
x
.
shareId
==
this
.
fileList
[
i
])
{
this
.
MoveMsg
.
folderIds
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
MoveMsg
.
folderIds
=
[]
}
})
this
.
list
.
forEach
(
x
=>
{
if
(
this
.
notFileList
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
notFileList
.
length
;
i
++
)
{
if
(
x
.
shareFileType
==
2
&&
x
.
shareId
==
this
.
notFileList
[
i
])
{
this
.
MoveMsg
.
fileIds
.
push
(
x
.
fileId
)
}
}
}
else
{
this
.
MoveMsg
.
fileIds
=
[]
}
})
this
.
apipost
(
'user_cloud_share_file_move'
,
this
.
MoveMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
outerVisible2
=
false
;
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
saveMoveFilesInside
()
{
this
.
MoveMsg
.
folderIds
=
this
.
fileListInside
this
.
MoveMsg
.
fileIds
=
this
.
notFileListInside
this
.
apipost
(
'user_cloud_share_file_move'
,
this
.
MoveMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
outerVisible2
=
false
;
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
openShareOneDialog
(
obj
)
{
if
(
obj
.
DataType
==
0
)
{
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
fileList
.
push
(
obj
.
Id
)
}
if
(
obj
.
DataType
==
2
)
{
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
notFileList
.
push
(
obj
.
Id
)
}
this
.
outerVisible3
=
true
this
.
dialogTitle3
=
'分享文件/文件夹'
this
.
getDepartment
()
this
.
getRole
()
this
.
getMenber
()
},
openShareDialog
()
{
this
.
outerVisible3
=
true
this
.
dialogTitle3
=
'分享文件/文件夹'
this
.
getDepartment
()
this
.
getRole
()
this
.
getMenber
()
},
shareDeparment
()
{
this
.
shareMsg
.
shareType
=
1
this
.
ckdRoleList
=
[]
this
.
ckdRoleListId
=
[]
this
.
ckdMenberList
=
[]
this
.
ckdMenberListId
=
[]
},
shareRole
()
{
this
.
shareMsg
.
shareType
=
2
this
.
ckdDepartmentList
=
[]
this
.
ckdDepartmentListId
=
[]
this
.
ckdMenberList
=
[]
this
.
ckdMenberListId
=
[]
},
shareMenber
()
{
this
.
shareMsg
.
shareType
=
3
this
.
ckdDepartmentList
=
[]
this
.
ckdDepartmentListId
=
[]
this
.
ckdRoleList
=
[]
this
.
ckdRoleListId
=
[]
},
getDepartment
()
{
//部门
this
.
apipost
(
'app_get_GetDepartmentListTree'
,
{},
res
=>
{
this
.
departmentList
=
res
.
data
.
data
},
err
=>
{})
},
DepartmentListNodeChange
(
data
,
checked
)
{
if
(
checked
)
{
this
.
ckdDepartmentList
.
push
({
name
:
data
.
DepartmentName
,
id
:
data
.
DepartmentID
})
this
.
ckdDepartmentListId
.
push
(
data
.
DepartmentID
)
}
if
(
!
checked
)
{
if
(
this
.
ckdDepartmentList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentID
)
!=
-
1
)
{
this
.
ckdDepartmentList
.
splice
(
this
.
ckdDepartmentList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentID
),
1
)
}
if
(
this
.
ckdDepartmentListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentID
)
!=
-
1
)
{
this
.
ckdDepartmentListId
.
splice
(
this
.
ckdDepartmentListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentID
),
1
)
}
}
},
deleteDepartment
(
id
)
{
this
.
ckdDepartmentList
.
splice
(
this
.
ckdDepartmentList
.
findIndex
(
item
=>
item
.
id
===
id
),
1
)
this
.
ckdDepartmentListId
.
splice
(
this
.
ckdDepartmentListId
.
findIndex
(
item
=>
item
===
id
),
1
)
//删除相同id
this
.
$refs
.
treeDepartmentList
.
setCheckedKeys
(
this
.
ckdDepartmentListId
);
},
getRole
()
{
//岗位
this
.
apipost
(
'WorkFlow_get_GetDepartMentPost'
,
{},
res
=>
{
this
.
roleList
=
res
.
data
.
data
},
err
=>
{})
},
roleListNodeChange
(
data
,
checked
)
{
if
(
data
.
Type
==
2
&&
checked
)
{
this
.
ckdRoleList
.
push
({
name
:
data
.
DepartmentName
,
id
:
data
.
DepartmentId
})
this
.
ckdRoleListId
.
push
(
data
.
DepartmentId
)
}
if
(
data
.
Type
==
2
&&
!
checked
)
{
if
(
this
.
ckdRoleList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
)
!=
-
1
)
{
this
.
ckdRoleList
.
splice
(
this
.
ckdRoleList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
),
1
)
}
if
(
this
.
ckdRoleListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
)
!=
-
1
)
{
this
.
ckdRoleListId
.
splice
(
this
.
ckdRoleListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
),
1
)
//删除相同id
}
}
},
deleteRole
(
id
)
{
this
.
ckdRoleList
.
splice
(
this
.
ckdRoleList
.
findIndex
(
item
=>
item
.
id
===
id
),
1
)
this
.
ckdRoleListId
.
splice
(
this
.
ckdRoleListId
.
findIndex
(
item
=>
item
===
id
),
1
)
//删除相同id
this
.
$refs
.
treeRole
.
setCheckedKeys
(
this
.
ckdRoleListId
);
},
getMenber
()
{
//员工
this
.
apipost
(
'WorkFlow_get_GetDepartMentEmployee'
,
{},
res
=>
{
this
.
menberList
=
res
.
data
.
data
},
err
=>
{})
},
MenberListNodeChange
(
data
,
checked
)
{
if
(
data
.
Type
==
2
&&
checked
)
{
this
.
ckdMenberList
.
push
({
name
:
data
.
DepartmentName
,
id
:
data
.
DepartmentId
})
this
.
ckdMenberListId
.
push
(
data
.
DepartmentId
)
}
if
(
data
.
Type
==
2
&&
!
checked
)
{
if
(
this
.
ckdMenberList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
)
!=
-
1
)
{
this
.
ckdMenberList
.
splice
(
this
.
ckdMenberList
.
findIndex
(
item
=>
item
.
id
===
data
.
DepartmentId
),
1
)
}
if
(
this
.
ckdMenberListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
)
!=
-
1
)
{
this
.
ckdMenberListId
.
splice
(
this
.
ckdMenberListId
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
),
1
)
//删除相同id
}
}
},
deleteMenber
(
id
)
{
this
.
ckdMenberList
.
splice
(
this
.
ckdMenberList
.
findIndex
(
item
=>
item
.
id
===
id
),
1
)
this
.
ckdMenberListId
.
splice
(
this
.
ckdMenberListId
.
findIndex
(
item
=>
item
===
id
),
1
)
//删除相同id
this
.
$refs
.
treeMenber
.
setCheckedKeys
(
this
.
ckdMenberListId
);
},
saveShareDocument
()
{
if
(
this
.
shareMsg
.
shareType
==
1
)
{
this
.
shareMsg
.
targetIds
=
this
.
ckdDepartmentListId
.
join
(
','
)
}
else
if
(
this
.
shareMsg
.
shareType
==
2
)
{
this
.
shareMsg
.
targetIds
=
this
.
ckdRoleListId
.
join
(
','
)
}
else
{
this
.
shareMsg
.
targetIds
=
this
.
ckdMenberListId
.
join
(
','
)
}
this
.
shareMsg
.
fileIds
=
this
.
notFileList
this
.
shareMsg
.
folderIds
=
this
.
fileList
this
.
apipost
(
'user_cloud_file_share'
,
this
.
shareMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
outerVisible3
=
false
this
.
$message
.
success
(
res
.
data
.
message
)
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
updateFiles
(
obj
)
{
this
.
outerVisible
=
true
;
this
.
dialogTitle
=
'修改文件夹'
this
.
addFileMsg
.
FolderName
=
obj
.
FolderName
;
this
.
addFileMsg
.
FolderId
=
obj
.
FolderId
;
},
updateOneFile
(
obj
)
{
this
.
outerVisible1
=
true
;
this
.
dialogTitle1
=
'修改文件'
let
index
=
obj
.
FolderName
.
lastIndexOf
(
'.'
)
if
(
obj
.
FolderName
&&
obj
.
FolderName
!=
""
)
{
this
.
updateFileMsg
.
FileName
=
obj
.
FolderName
.
substring
(
0
,
index
)
}
this
.
updateFileMsg
.
FileId
=
obj
.
Id
},
saveUpdateFile
()
{
this
.
apipost
(
'user_cloud_UpdateFile'
,
this
.
updateFileMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
outerVisible
=
false
;
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
getList
()
{
this
.
apipost
(
'user_cloud_get_share_tomy'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
list
=
res
.
data
.
data
.
pageData
this
.
isCkedAll
=
false
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
allLength
=
res
.
data
.
data
.
pageData
.
length
this
.
WjjId
=
[]
this
.
WjId
=
[]
res
.
data
.
data
.
pageData
.
forEach
(
item
=>
{
if
(
item
.
shareFileType
==
1
)
{
this
.
WjjId
.
push
(
item
.
shareId
)
item
.
icons
=
this
.
loadFileICON
(
''
)
}
if
(
item
.
shareFileType
==
2
)
{
this
.
WjId
.
push
(
item
.
shareId
)
if
(
item
.
fileName
&&
item
.
fileName
!=
""
)
{
let
fileType
=
item
.
fileName
.
substring
(
item
.
fileName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
fileName
.
length
).
toLowerCase
()
item
.
icons
=
this
.
loadFileICON
(
fileType
)
}
}
})
}
},
err
=>
{})
},
getNextLevel
(
obj
)
{
this
.
addFileMsg
.
ParentId
=
obj
.
fileId
this
.
nextMsg
.
ParentId
=
obj
.
fileId
this
.
nextMsg
.
EmployeeId
=
obj
.
ShareEmployeeId
this
.
isChildFiles
=
true
this
.
getNextLevelList
()
this
.
isCkedAll
=
false
this
.
fileList
=
[]
this
.
notFileList
=
[]
this
.
NavList
.
push
({
name
:
obj
.
fileName
,
id
:
obj
.
fileId
})
},
getNextLevelTree
(
obj
)
{
this
.
nextMsg
.
ParentId
=
obj
.
Id
this
.
getNextLevelList
()
this
.
NavList
.
push
({
name
:
obj
.
FolderName
,
id
:
obj
.
Id
})
this
.
isChildFiles
=
true
this
.
isCkedAllInside
=
false
},
getNavTree
(
obj
,
index
)
{
this
.
nextMsg
.
ParentId
=
obj
.
id
this
.
isCkedAllInside
=
false
this
.
getNextLevelList
()
this
.
NavList
=
this
.
NavList
.
slice
(
0
,
index
+
1
)
},
getNextLevelList
()
{
this
.
apipost
(
'user_cloud_GetFolderList'
,
this
.
nextMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
nextList
=
res
.
data
.
data
.
data
this
.
allLengthInside
=
res
.
data
.
data
.
data
.
length
this
.
fileListInside
=
[]
this
.
notFileListInside
=
[]
this
.
WjjIdInside
=
[]
this
.
WjIdInside
=
[]
res
.
data
.
data
.
data
.
forEach
(
item
=>
{
if
(
item
.
DataType
==
0
)
{
this
.
WjjIdInside
.
push
(
item
.
Id
)
item
.
icons
=
this
.
loadFileICON
(
''
)
}
if
(
item
.
DataType
==
2
)
{
this
.
WjIdInside
.
push
(
item
.
Id
);
if
(
item
.
FolderName
&&
item
.
FolderName
!=
""
)
{
let
fileType
=
item
.
FolderName
.
substring
(
item
.
FolderName
.
lastIndexOf
(
'.'
)
+
1
,
item
.
FolderName
.
length
).
toLowerCase
()
item
.
icons
=
this
.
loadFileICON
(
fileType
)
}
}
})
}
},
err
=>
{})
},
getTreeList
()
{
this
.
apipost
(
'user_cloud_GetFolderTreeList'
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
fileTreeList
=
res
.
data
.
data
}
else
{}
},
err
=>
{})
},
submitForm
(
addMsg
)
{
//提交创建、修改表单
this
.
$refs
[
addMsg
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
addFiles
()
}
else
{
return
false
;
}
});
},
closeChangeMachie
(
done
)
{
//弹出框关闭初始化弹框内表单
done
();
this
.
addFileMsg
.
FolderName
=
''
},
doSearch
()
{
this
.
getList
();
},
moveCancel
()
{
this
.
$refs
.
tree
.
setCheckedKeys
([]);
this
.
outerVisible2
=
false
;
}
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
getList
()
},
created
()
{
this
.
createCode
()
}
}
</
script
>
<
style
>
.myDocumentsNav
{
margin
:
25px
0
;
}
.myDocumentsTable
td
,
.myDocumentsTable
th
{
text-align
:
left
!important
;
padding-left
:
15px
;
}
.myDocumentsLink
{
margin
:
25px
0
;
}
.myDocumentsLink
>
span
{
font-size
:
12px
;
cursor
:
pointer
;
color
:
#E95252
;
}
.myDocumentsLink
>
span
:not
(
:last-of-type
)
:hover
{
text-decoration
:
underline
;
}
.myDocumentsLink
>
span
:not
(
:last-of-type
)
:after
{
content
:
'>'
;
margin
:
0
3px
;
color
:
#E95252
;
pointer-events
:
none
;
}
.myDocumentsLink
>
span
:last-child
{
color
:
#666
;
cursor
:
default
;
}
.myDocumentUploadBtn
{
float
:
left
;
margin-right
:
10px
;
}
.shareDocumentDialog
.el-dialog__body
{
padding
:
0
!important
;
}
.documentDialogNav
{
background
:
#E95252
;
height
:
45px
;
}
.documentDialogNav
>
div
{
display
:
inline-block
;
color
:
#fff
;
width
:
90px
;
height
:
26px
;
margin-left
:
20px
;
position
:
relative
;
border-radius
:
13px
;
background
:
rgba
(
0
,
0
,
0
,
.2
);
text-align
:
center
;
cursor
:
pointer
;
}
.documentDialogNav
>
div
.checkIcon
{
width
:
0
;
height
:
0
;
border-width
:
0
5px
5px
;
position
:
absolute
;
left
:
40px
;
top
:
40px
;
border-style
:
solid
;
border-color
:
transparent
transparent
#fff
;
/*透明 透明 灰*/
}
.DocumentLoadVerification
{
width
:
120px
;
height
:
30px
;
border-radius
:
4px
;
letter-spacing
:
5px
;
border
:
none
;
background
:
#f56c6c
;
color
:
#eee
;
cursor
:
pointer
;
}
</
style
>
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