Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
E
exhibition_backstage
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
龙菲
exhibition_backstage
Commits
af2ff993
提交
af2ff993
authored
7月 05, 2022
作者:
龙菲
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat:博物馆新增、修改
上级
144c8427
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
301 行增加
和
143 行删除
+301
-143
dept.js
src/api/dept.js
+6
-3
org.js
src/api/org.js
+9
-0
index.js
src/components/Dict/index.js
+2
-0
AutoUploader.vue
src/components/Uploader/AutoUploader.vue
+62
-50
org.js
src/store/modules/org.js
+32
-4
InfoEditDialog.vue
src/views/culturalRelic/components/InfoEditDialog.vue
+2
-2
InfoEditDialog.vue
src/views/museum/components/InfoEditDialog.vue
+95
-22
index-old.vue
src/views/museum/index-old.vue
+1
-1
index.vue
src/views/museum/index.vue
+92
-61
没有找到文件。
src/api/dept.js
浏览文件 @
af2ff993
import
request
from
'@/utils/request'
import
request
from
'@/utils/request'
// 根据id查询博物馆详情
export
function
getDeptDetailById
(
id
)
{
export
function
getDeptDetailById
(
id
)
{
return
request
({
return
request
({
url
:
'/sys/dept/'
+
id
,
url
:
'/sys/dept/'
+
id
,
method
:
'get'
,
method
:
'get'
,
})
})
}
}
// 获取博物馆列表
export
function
getDepList
()
{
export
function
getDepList
()
{
return
request
({
return
request
({
url
:
'/sys/depts'
,
url
:
'/sys/depts'
,
method
:
'get'
,
method
:
'get'
,
})
})
}
}
\ No newline at end of file
\ No newline at end of file
src/api/
museum
.js
→
src/api/
org
.js
浏览文件 @
af2ff993
...
@@ -55,3 +55,12 @@ export function deleteMuseum(id) {
...
@@ -55,3 +55,12 @@ export function deleteMuseum(id) {
data
data
})
})
}
}
// 查询行政区划树
export
function
getSysRegionTree
(
params
)
{
return
request
({
url
:
`/sysRegion/tree`
,
method
:
'get'
,
params
})
}
src/components/Dict/index.js
浏览文件 @
af2ff993
...
@@ -22,7 +22,9 @@ class Dict {
...
@@ -22,7 +22,9 @@ class Dict {
nonExistentNames
.
push
(
name
)
//存入list中,单独进行处理调用
nonExistentNames
.
push
(
name
)
//存入list中,单独进行处理调用
}
}
});
});
var
index
=
nonExistentNames
.
indexOf
(
'literature'
)
var
index
=
nonExistentNames
.
indexOf
(
'literature'
)
if
(
index
!=
-
1
)
{
if
(
index
!=
-
1
)
{
// debugger
// debugger
Vue
.
set
(
this
.
dict
,
'literature'
,
[]);
Vue
.
set
(
this
.
dict
,
'literature'
,
[]);
...
...
src/components/Uploader/
index
.vue
→
src/components/Uploader/
AutoUploader
.vue
浏览文件 @
af2ff993
...
@@ -15,6 +15,8 @@
...
@@ -15,6 +15,8 @@
:list-type=
"listType"
:list-type=
"listType"
name=
"files"
name=
"files"
:accept=
"fileAccept"
:accept=
"fileAccept"
ref=
"AutoUploader"
:http-request=
"httpRequest"
>
>
<i
v-if=
"listType === 'picture-card'"
class=
"el-icon-plus"
></i>
<i
v-if=
"listType === 'picture-card'"
class=
"el-icon-plus"
></i>
<el-button
v-else
size=
"small"
type=
"primary"
>
点击上传
</el-button>
<el-button
v-else
size=
"small"
type=
"primary"
>
点击上传
</el-button>
...
@@ -27,8 +29,9 @@
...
@@ -27,8 +29,9 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
getToken
}
from
"@/utils/auth"
;
import
{
getToken
}
from
"@/utils/auth"
;
import
{
upload
}
from
"@/utils/upload"
;
export
default
{
export
default
{
name
:
"Uploader"
,
name
:
"
Auto
Uploader"
,
props
:
{
props
:
{
// 值
// 值
value
:
[
String
,
Object
,
Array
],
value
:
[
String
,
Object
,
Array
],
...
@@ -81,7 +84,6 @@ export default {
...
@@ -81,7 +84,6 @@ export default {
files
:
{
files
:
{
handler
:
function
(
newVal
,
oldVal
)
{
handler
:
function
(
newVal
,
oldVal
)
{
this
.
fileList
=
newVal
;
this
.
fileList
=
newVal
;
},
},
immediate
:
true
,
immediate
:
true
,
deep
:
true
,
deep
:
true
,
...
@@ -111,49 +113,59 @@ export default {
...
@@ -111,49 +113,59 @@ export default {
this
.
fileList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
files
));
this
.
fileList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
files
));
},
},
methods
:
{
methods
:
{
// 自定义上传实现,用于修改上传后的封面
httpRequest
(
file
)
{
uploadmany
(
file
)
{
var
formData
=
new
FormData
();
var
formData
=
new
FormData
();
//这是由于接口数据类型规定,可以根据自己所需进行更改
formData
.
append
(
"files"
,
file
.
file
);
formData
.
append
(
"files"
,
file
.
file
);
upload
(
formData
).
then
((
res
)
=>
{
upload
(
formData
).
then
((
res
)
=>
{
if
(
res
.
code
==
0
)
{
if
(
res
.
code
==
0
)
{
console
.
log
(
res
);
this
.
fileList
=
res
.
data
;
var
last
=
res
.
data
.
substring
(
res
.
data
.
lastIndexOf
(
"."
));
//将接口中返回的各文件链接进行截取,来判断属于什么格式文件
this
.
changeFileList
(
res
.
data
)
if
(
last
==
".pdf"
)
{
this
.
fileList
.
push
({
url
:
"https://img0.baidu.com/it/u=3644622474,3688361323&fm=26&fmt=auto&gp=0.jpg"
,
//pdf封面图片
realUrl
:
res
.
data
.
result
,
//接口返回的pdf文件链接
});
}
else
if
(
last
==
".png"
||
last
==
".jpg"
||
last
==
".jpeg"
||
last
==
".jfif"
)
{
this
.
fileList
.
push
({
url
:
res
.
data
.
result
,
realurl
:
res
.
data
.
result
,
});
}
else
if
(
last
==
".doc"
||
last
==
".docx"
)
{
this
.
fileList
.
push
({
url
:
"https://img1.baidu.com/it/u=1714136260,3766911961&fm=26&fmt=auto&gp=0.jpg"
,
realurl
:
res
.
data
.
result
,
});
}
else
if
(
last
==
".xls"
||
last
==
".xlsx"
)
{
this
.
fileList
.
push
({
url
:
"https://img1.baidu.com/it/u=1123362811,2189997153&fm=26&fmt=auto&gp=0.jpg"
,
realurl
:
res
.
data
.
result
,
});
}
}
else
{
this
.
$message
({
message
:
res
.
data
.
message
,
type
:
"error"
,
offset
:
70
,
});
}
}
});
});
},
},
// // 自定义上传实现,用于修改上传后的封面
// uploadmany(file) {
// var formData = new FormData(); //这是由于接口数据类型规定,可以根据自己所需进行更改
// formData.append("files", file.file);
// upload(formData).then((res) => {
// if (res.code == 0) {
// console.log(res);
// var last = res.data.substring(res.data.lastIndexOf(".")); //将接口中返回的各文件链接进行截取,来判断属于什么格式文件
// if (last == ".pdf") {
// this.fileList.push({
// url: "https://img0.baidu.com/it/u=3644622474,3688361323&fm=26&fmt=auto&gp=0.jpg", //pdf封面图片
// realUrl: res.data.result, //接口返回的pdf文件链接
// });
// } else if (
// last == ".png" ||
// last == ".jpg" ||
// last == ".jpeg" ||
// last == ".jfif"
// ) {
// this.fileList.push({
// url: res.data.result,
// realurl: res.data.result,
// });
// } else if (last == ".doc" || last == ".docx") {
// this.fileList.push({
// url: "https://img1.baidu.com/it/u=1714136260,3766911961&fm=26&fmt=auto&gp=0.jpg",
// realurl: res.data.result,
// });
// } else if (last == ".xls" || last == ".xlsx") {
// this.fileList.push({
// url: "https://img1.baidu.com/it/u=1123362811,2189997153&fm=26&fmt=auto&gp=0.jpg",
// realurl: res.data.result,
// });
// }
// } else {
// this.$message({
// message: res.data.message,
// type: "error",
// offset: 70,
// });
// }
// });
// },
// 上传前校检格式和大小
// 上传前校检格式和大小
handleBeforeUpload
(
file
)
{
handleBeforeUpload
(
file
)
{
...
@@ -200,7 +212,6 @@ export default {
...
@@ -200,7 +212,6 @@ export default {
console
.
log
(
"res"
,
res
);
console
.
log
(
"res"
,
res
);
console
.
log
(
"fileList"
,
fileList
);
console
.
log
(
"fileList"
,
fileList
);
this
.
$message
.
success
(
"上传成功"
);
this
.
$message
.
success
(
"上传成功"
);
this
.
$emit
(
"endLoading"
);
this
.
changeFileList
(
fileList
);
this
.
changeFileList
(
fileList
);
},
},
// 文件列表移除文件时的钩子
// 文件列表移除文件时的钩子
...
@@ -216,16 +227,17 @@ export default {
...
@@ -216,16 +227,17 @@ export default {
// 文件列表改变的时候,更新组件的v-model的文的数据
// 文件列表改变的时候,更新组件的v-model的文的数据
changeFileList
(
fileList
)
{
changeFileList
(
fileList
)
{
console
.
log
(
"fileList"
,
fileList
);
// console.log("fileList", fileList);
const
tempFileList
=
fileList
.
map
((
item
)
=>
{
// const tempFileList = fileList.map((item) => {
let
tempItem
=
{
// let tempItem = {
name
:
item
.
name
,
// name: item.name,
url
:
item
.
response
?
item
.
response
.
data
[
0
].
url
:
item
.
url
,
// url: item.response ? item.response.data[0].url : item.url,
};
// };
return
tempItem
;
// return tempItem;
});
// });
this
.
$emit
(
'input'
,
tempFileList
)
debugger
this
.
$emit
(
"handleFileReady"
,
tempFileList
);
this
.
$emit
(
"input"
,
fileList
);
// this.$emit("handleFileReady", tempFileList);
},
},
},
},
};
};
...
...
src/store/modules/org.js
浏览文件 @
af2ff993
import
{
import
{
getMuseumTreeV1
,
getMuseumTreeV1
,
getSysRegionTree
}
from
'@/api/
museum
'
}
from
'@/api/
org
'
const
getDefaultState
=
()
=>
{
const
getDefaultState
=
()
=>
{
return
{
return
{
museumTree
:
[],
museumTree
:
[],
//博物馆树
regionTree
:[],
//行政区划树
}
}
}
}
...
@@ -17,6 +18,9 @@ const mutations = {
...
@@ -17,6 +18,9 @@ const mutations = {
SET_MUSEUM_TREE
:
(
state
,
museumTree
)
=>
{
SET_MUSEUM_TREE
:
(
state
,
museumTree
)
=>
{
state
.
museumTree
=
museumTree
state
.
museumTree
=
museumTree
},
},
SET_REGION_TREE
:(
state
,
regionTree
)
=>
{
state
.
regionTree
=
regionTree
}
}
}
const
actions
=
{
const
actions
=
{
...
@@ -36,7 +40,7 @@ const actions = {
...
@@ -36,7 +40,7 @@ const actions = {
data
data
}
=
response
}
=
response
commit
(
'SET_MUSEUM_TREE'
,
data
)
commit
(
'SET_MUSEUM_TREE'
,
data
)
resolve
()
resolve
(
data
)
}).
catch
(
error
=>
{
}).
catch
(
error
=>
{
reject
(
error
)
reject
(
error
)
})
})
...
@@ -44,7 +48,31 @@ const actions = {
...
@@ -44,7 +48,31 @@ const actions = {
}
}
},
},
getSysRegionTreeData
({
commit
},
parentId
)
{
if
(
state
.
regionTree
&&
state
.
regionTree
.
length
>
0
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
resolve
(
state
.
regionTree
)
})
}
else
{
return
new
Promise
((
resolve
,
reject
)
=>
{
getSysRegionTree
({
parentId
}).
then
(
response
=>
{
const
{
data
}
=
response
commit
(
'SET_REGION_TREE'
,
data
)
resolve
(
data
)
}).
catch
(
error
=>
{
reject
(
error
)
})
})
}
},
}
}
export
default
{
export
default
{
...
...
src/views/culturalRelic/components/InfoEditDialog.vue
浏览文件 @
af2ff993
...
@@ -244,14 +244,14 @@
...
@@ -244,14 +244,14 @@
<
script
>
<
script
>
import
{
getLiteratureList
}
from
"@/api/literature"
;
import
{
getLiteratureList
}
from
"@/api/literature"
;
import
{
addCulturalRelic
,
editCulturalRelic
}
from
"@/api/culturalRelic"
;
import
{
addCulturalRelic
,
editCulturalRelic
}
from
"@/api/culturalRelic"
;
import
Uploader
from
"@/components/Uploader/index
.vue"
;
import
AutoUploader
from
"@/components/Uploader/AutoUploader
.vue"
;
import
ManualUploader
from
"@/components/Uploader/ManualUploader.vue"
;
import
ManualUploader
from
"@/components/Uploader/ManualUploader.vue"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
upload
}
from
"@/utils/upload"
;
import
{
upload
}
from
"@/utils/upload"
;
export
default
{
export
default
{
name
:
"InfoEditDialog"
,
name
:
"InfoEditDialog"
,
components
:
{
components
:
{
Uploader
,
Auto
Uploader
,
ManualUploader
,
ManualUploader
,
},
},
props
:
{
props
:
{
...
...
src/views/museum/components/InfoEditDialog.vue
浏览文件 @
af2ff993
...
@@ -25,22 +25,31 @@
...
@@ -25,22 +25,31 @@
style=
"width: 100%"
style=
"width: 100%"
v-model=
"dialogForm.pid"
v-model=
"dialogForm.pid"
:options=
"orgTreeData"
:options=
"orgTreeData"
:props=
"
{ expandTrigger: 'hover' }
"
:props=
"
optionProps
"
@change="handleChangeOrgTre
e"
:show-all-levels=
"fals
e"
placeholder=
"请选择所属部门"
placeholder=
"请选择所属部门"
:key=
"pidModalKey"
>
>
<template
slot-scope=
"
{ node, data }">
<span>
{{
data
.
label
}}
</span>
<span
v-if=
"!node.isLeaf"
>
(
{{
data
.
children
.
length
}}
)
</span>
</
template
>
</el-cascader>
</el-cascader>
</el-form-item>
</el-form-item>
<el-form-item
label=
"所属地"
:label-width=
"formLabelWidth"
>
<
!--
<
el-form-item
label=
"所属地"
:label-width=
"formLabelWidth"
>
<el-input
<el-input
v-model=
"dialogForm.regionCode"
v-model=
"dialogForm.regionCode"
autocomplete=
"off"
autocomplete=
"off"
placeholder=
"请选择所属地"
placeholder=
"请选择所属地"
></el-input>
></el-input>
</el-form-item>
-->
<el-form-item
label=
"所属地"
:label-width=
"formLabelWidth"
>
<el-cascader
style=
"width: 100%"
v-model=
"dialogForm.regionCode"
:options=
"regionTree"
:props=
"regionOptionProps"
:show-all-levels=
"false"
placeholder=
"请选择所属地"
:key=
"regionCodeModalKey"
>
</el-cascader>
</el-form-item>
</el-form-item>
<el-form-item
label=
"经度"
:label-width=
"formLabelWidth"
>
<el-form-item
label=
"经度"
:label-width=
"formLabelWidth"
>
...
@@ -58,15 +67,17 @@
...
@@ -58,15 +67,17 @@
placeholder=
"请输入纬度"
placeholder=
"请输入纬度"
></el-input>
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"状态"
:label-width=
"formLabelWidth"
>
<el-switch
v-model=
"status"
>
</el-switch>
</el-form-item>
<el-form-item
label=
"博物馆封面"
:label-width=
"formLabelWidth"
>
<el-form-item
label=
"博物馆封面"
:label-width=
"formLabelWidth"
>
<Uploader
<
Auto
Uploader
v-model=
"dialogForm.faceImage"
v-model=
"dialogForm.faceImage"
:fileLimit=
"1"
:fileLimit=
"1"
:fileSize=
"50"
:fileSize=
"50"
listType=
"picture-card"
listType=
"picture-card"
:fileType=
"['png', 'jpeg', 'jpg']"
:fileType=
"['png', 'jpeg', 'jpg']"
ref=
"
f
aceImage"
ref=
"
museumF
aceImage"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"简介"
:label-width=
"formLabelWidth"
>
<el-form-item
label=
"简介"
:label-width=
"formLabelWidth"
>
...
@@ -91,14 +102,13 @@
...
@@ -91,14 +102,13 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
addMuseum
,
editMuseum
}
from
"@/api/museum"
;
import
{
addMuseum
,
editMuseum
}
from
"@/api/org"
;
import
Uploader
from
"@/components/Uploader/index.vue"
;
import
AutoUploader
from
"@/components/Uploader/AutoUploader.vue"
;
import
{
mapGetters
,
mapActions
}
from
"vuex"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
upload
}
from
"@/utils/upload"
;
export
default
{
export
default
{
name
:
"InfoEditDialog"
,
name
:
"InfoEditDialog"
,
components
:
{
components
:
{
Uploader
,
Auto
Uploader
,
},
},
props
:
{
props
:
{
visible
:
{
visible
:
{
...
@@ -148,10 +158,31 @@ export default {
...
@@ -148,10 +158,31 @@ export default {
form
:
{
form
:
{
handler
(
value
)
{
handler
(
value
)
{
this
.
dialogForm
=
{
...
value
};
this
.
dialogForm
=
{
...
value
};
if
(
this
.
dialogForm
.
id
)
{
this
.
status
=
Boolean
(
Number
(
this
.
dialogForm
.
status
));
// this.pidModalKey++; //回显
// this.regionCodeModalKey++; //回显
}
},
},
immediate
:
true
,
immediate
:
true
,
deep
:
true
,
deep
:
true
,
},
},
orgTreeData
(
value
)
{
// 遍历,如果children为空,则直接去掉children,以免选择器中显示无结果
if
(
value
)
{
let
tree
=
[...
value
];
loopTree
(
tree
);
function
loopTree
(
arr
)
{
arr
.
forEach
((
item
)
=>
{
if
(
item
.
children
&&
item
.
children
.
length
==
0
)
{
delete
item
.
children
;
}
else
{
loopTree
(
item
.
children
);
}
});
}
}
},
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -159,10 +190,42 @@ export default {
...
@@ -159,10 +190,42 @@ export default {
...
this
.
form
,
...
this
.
form
,
},
},
formLabelWidth
:
"100px"
,
formLabelWidth
:
"100px"
,
// orgTreeData: [],
optionProps
:
{
value
:
"id"
,
label
:
"name"
,
children
:
"children"
,
// checkStrictly: true,
},
regionOptionProps
:
{
value
:
"regionId"
,
label
:
"name"
,
children
:
"children"
,
// checkStrictly: true,
},
regionTree
:
[],
status
:
false
,
pidModalKey
:
0
,
regionCodeModalKey
:
0
,
};
};
},
},
mounted
()
{
let
parentId
=
""
;
this
.
$store
.
dispatch
(
"org/getSysRegionTreeData"
,
parentId
).
then
((
res
)
=>
{
this
.
regionTree
=
res
;
loopTree
(
this
.
regionTree
);
function
loopTree
(
arr
)
{
if
(
arr
&&
arr
.
length
>
0
)
{
arr
.
forEach
((
item
)
=>
{
if
(
item
.
children
&&
item
.
children
.
length
==
0
)
{
delete
item
.
children
;
}
else
{
loopTree
(
item
.
children
);
}
});
}
}
});
},
methods
:
{
methods
:
{
handlePreview
({
type
,
file
})
{
handlePreview
({
type
,
file
})
{
console
.
log
(
type
,
file
);
console
.
log
(
type
,
file
);
...
@@ -179,23 +242,33 @@ export default {
...
@@ -179,23 +242,33 @@ export default {
async
handleSubmit
()
{
async
handleSubmit
()
{
if
(
this
.
dialogForm
.
id
)
{
if
(
this
.
dialogForm
.
id
)
{
}
else
{
}
else
{
console
.
log
(
this
.
dialogForm
);
let
params
=
{
...
this
.
dialogForm
};
const
{
faceImage
}
=
this
.
dialogForm
;
const
{
faceImage
}
=
params
;
this
.
dialogForm
.
faceImage
=
faceImage
.
url
;
if
(
params
.
faceImage
.
length
>
0
)
{
let
res
=
await
addMuseum
(
this
.
dialogForm
);
params
=
faceImage
[
0
].
fileId
;
}
// 处理行政区划
params
.
regionCode
=
params
.
regionCode
[
params
.
regionCode
.
length
-
1
];
// 处理所属部门
params
.
pid
=
params
.
pid
[
params
.
pid
.
length
-
1
];
// 处理状态
params
.
status
=
params
.
status
?
1
:
0
;
let
res
=
await
addMuseum
(
params
);
if
(
res
.
code
==
0
)
{
if
(
res
.
code
==
0
)
{
this
.
$message
.
success
(
"添加成功!"
);
this
.
dialogForm
=
{};
this
.
dialogForm
=
{};
this
.
$emit
(
"refresh"
);
this
.
$emit
(
"refresh"
);
this
.
$emit
(
"handleClose"
);
}
}
}
}
},
},
handleChangeOrgTree
()
{},
handleClose
(
done
)
{
handleClose
(
done
)
{
this
.
$confirm
(
"确认关闭?"
)
this
.
$confirm
(
"确认关闭?"
)
.
then
((
_
)
=>
{
.
then
((
_
)
=>
{
done
();
done
();
this
.
$emit
(
"handleClose"
);
this
.
$emit
(
"handleClose"
);
this
.
dialogForm
=
{};
})
})
.
catch
((
_
)
=>
{});
.
catch
((
_
)
=>
{});
},
},
...
...
src/views/museum/index-old.vue
浏览文件 @
af2ff993
...
@@ -78,7 +78,7 @@ import {
...
@@ -78,7 +78,7 @@ import {
// getRCDetailById,
// getRCDetailById,
// deleteCultralRelic,
// deleteCultralRelic,
// editCulturalRelic,
// editCulturalRelic,
}
from
"@/api/
museum
"
;
}
from
"@/api/
org
"
;
import
InfoEditDialog
from
"./components/InfoEditDialog"
;
import
InfoEditDialog
from
"./components/InfoEditDialog"
;
import
SearchBar
from
"@/components/SearchBar"
;
import
SearchBar
from
"@/components/SearchBar"
;
...
...
src/views/museum/index.vue
浏览文件 @
af2ff993
...
@@ -2,12 +2,9 @@
...
@@ -2,12 +2,9 @@
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<div
class=
"top-bar"
>
<div
class=
"top-bar"
>
<SearchBar
:config=
"searchConfig"
@
search=
"search"
@
reset=
"reset"
/>
<SearchBar
:config=
"searchConfig"
@
search=
"search"
@
reset=
"reset"
/>
<el-button
<el-button
type=
"primary"
@
click
.
native=
"handleOperation('add')"
>
type=
"primary"
@
click
.
native=
"handleOperation(
{ type: 'add' })"
>
<i
class=
"el-icon-s-promotion"
></i>
<i
class=
"el-icon-s-promotion"
></i>
发布
</el-button
添加
</el-button
>
>
</div>
</div>
...
@@ -19,7 +16,6 @@
...
@@ -19,7 +16,6 @@
border
border
stripe
stripe
default-expand-all
default-expand-all
>
>
<el-table-column
<el-table-column
align=
"center"
align=
"center"
...
@@ -31,7 +27,7 @@
...
@@ -31,7 +27,7 @@
prop=
"regionName"
prop=
"regionName"
label=
"归属地"
label=
"归属地"
></el-table-column>
></el-table-column>
<el-table-column
align=
"center"
prop=
"status"
label=
"状态"
>
<
!--
<
el-table-column
align=
"center"
prop=
"status"
label=
"状态"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<el-popconfirm
<el-popconfirm
:title=
"getStatusTitle(scope.row.status)"
:title=
"getStatusTitle(scope.row.status)"
...
@@ -40,18 +36,28 @@
...
@@ -40,18 +36,28 @@
<el-switch
slot=
"reference"
:value=
"scope.row.status"
></el-switch>
<el-switch
slot=
"reference"
:value=
"scope.row.status"
></el-switch>
</el-popconfirm>
</el-popconfirm>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
-->
<el-table-column
align=
"center"
prop=
"longitude"
label=
"经度"
>
<el-table-column
align=
"center"
prop=
"longitude"
label=
"经度"
>
</el-table-column>
</el-table-column>
<el-table-column
align=
"center"
prop=
"latitude"
label=
"纬度"
>
<el-table-column
align=
"center"
prop=
"latitude"
label=
"纬度"
>
</el-table-column>
</el-table-column>
<el-table-column
align=
"center"
prop=
"latitude"
label=
"纬度"
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"intro"
label=
"简介"
/>
<el-table-column
align=
"center"
prop=
"intro"
label=
"简介"
/>
<el-table-column
align=
"center"
label=
"操作"
>
<el-table-column
align=
"center"
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"primary"
size=
"mini"
icon=
"el-icon-edit"
>
编辑
</el-button>
<el-button
<el-button
type=
"danger"
size=
"mini"
icon=
"el-icon-delete"
>
删除
</el-button>
type=
"primary"
size=
"mini"
icon=
"el-icon-edit"
@
click
.
native=
"handleOperation('edit', scope.row)"
>
编辑
</el-button
>
<el-button
type=
"danger"
size=
"mini"
icon=
"el-icon-delete"
@
click
.
native=
"handleOperation('delete', scope.row)"
>
删除
</el-button
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -69,12 +75,6 @@
...
@@ -69,12 +75,6 @@
import
TablePage
from
"@/components/Table/TablePage.vue"
;
import
TablePage
from
"@/components/Table/TablePage.vue"
;
import
TableOperation
from
"@/components/Table/TableOperation.vue"
;
import
TableOperation
from
"@/components/Table/TableOperation.vue"
;
import
{
title
,
operates
,
operations
}
from
"./config"
;
import
{
title
,
operates
,
operations
}
from
"./config"
;
import
{
getMuseumList
,
// getRCDetailById,
// deleteCultralRelic,
// editCulturalRelic,
}
from
"@/api/museum"
;
import
InfoEditDialog
from
"./components/InfoEditDialog"
;
import
InfoEditDialog
from
"./components/InfoEditDialog"
;
import
SearchBar
from
"@/components/SearchBar"
;
import
SearchBar
from
"@/components/SearchBar"
;
...
@@ -98,21 +98,14 @@ export default {
...
@@ -98,21 +98,14 @@ export default {
type
:
"input"
,
type
:
"input"
,
label
:
"博物馆名称"
,
label
:
"博物馆名称"
,
},
},
{
// {
prop
:
"status"
,
// prop: "regionCode",
type
:
"select"
,
// type: "select",
label
:
"状态"
,
// label: "地区",
selectOptions
:
[
// selectOptions: [
{
label
:
"已上架"
,
// ],
value
:
"1"
,
// },
},
{
label
:
"已下架"
,
value
:
"0"
,
},
],
},
],
],
drawerVisible
:
false
,
drawerVisible
:
false
,
isAdd
:
true
,
isAdd
:
true
,
...
@@ -127,6 +120,7 @@ export default {
...
@@ -127,6 +120,7 @@ export default {
},
},
loading
:
false
,
loading
:
false
,
orgTreeData
:
[],
orgTreeData
:
[],
expandRow
:
[],
};
};
},
},
watch
:
{
watch
:
{
...
@@ -135,9 +129,10 @@ export default {
...
@@ -135,9 +129,10 @@ export default {
this
.
dict
=
value
;
this
.
dict
=
value
;
}
}
},
},
// orgTreeData(value) {
orgTreeData
(
value
)
{
// console.log("123", value);
console
.
log
(
"123"
,
value
);
// },
// setTimeout(()=>{value},500)
},
},
},
computed
:
{
computed
:
{
tableTitle
()
{
tableTitle
()
{
...
@@ -164,18 +159,54 @@ export default {
...
@@ -164,18 +159,54 @@ export default {
},
},
methods
:
{
methods
:
{
async
search
(
form
)
{
async
search
(
form
)
{
var
params
=
{
if
(
form
.
name
)
{
page
:
this
.
list
.
current
,
let
searchValue
=
form
.
name
;
limit
:
this
.
list
.
size
,
let
treeData
=
this
.
orgTreeData
;
...
form
,
let
handleTreeData
=
this
.
handleTreeData
(
treeData
,
searchValue
);
};
// debugger;
if
(
params
.
status
==
""
)
{
this
.
setExpandRow
(
handleTreeData
);
delete
params
.
status
;
this
.
expandRow
=
this
.
expandRow
.
join
(
","
).
split
(
","
);
this
.
orgTreeData
=
handleTreeData
;
}
}
console
.
log
(
"params"
,
params
);
},
let
res
=
await
getMuseumList
(
params
);
if
(
res
.
code
==
0
)
{
// 树形表格过滤
this
.
list
=
res
.
data
;
handleTreeData
(
treeData
,
searchValue
)
{
// debugger
if
(
!
treeData
||
treeData
.
length
===
0
)
{
return
[];
}
const
array
=
[];
for
(
let
i
=
0
;
i
<
treeData
.
length
;
i
+=
1
)
{
let
match
=
false
;
for
(
let
pro
in
treeData
[
i
])
{
if
(
typeof
treeData
[
i
][
pro
]
==
"string"
)
{
match
|=
treeData
[
i
][
pro
].
includes
(
searchValue
);
if
(
match
)
break
;
}
}
if
(
this
.
handleTreeData
(
treeData
[
i
].
children
,
searchValue
).
length
>
0
||
match
)
{
array
.
push
({
...
treeData
[
i
],
children
:
this
.
handleTreeData
(
treeData
[
i
].
children
,
searchValue
),
});
}
}
return
array
;
},
setExpandRow
(
handleTreeData
)
{
if
(
handleTreeData
.
length
)
{
for
(
let
i
of
handleTreeData
)
{
// debugger
this
.
expandRow
.
push
(
i
.
id
);
if
(
i
.
children
.
length
)
{
this
.
setExpandRow
(
i
.
children
);
}
}
}
}
},
},
...
@@ -186,31 +217,31 @@ export default {
...
@@ -186,31 +217,31 @@ export default {
// 加载表格数据
// 加载表格数据
loadData
()
{
loadData
()
{
this
.
$store
.
dispatch
(
"org/getMuseumTreeData"
,
""
).
then
((
res
)
=>
{
this
.
$store
.
dispatch
(
"org/getMuseumTreeData"
,
""
).
then
((
res
)
=>
{
this
.
orgTreeData
=
res
this
.
orgTreeData
=
res
;
});
});
},
},
async
handleOperation
(
valu
e
,
row
)
{
async
handleOperation
(
typ
e
,
row
)
{
console
.
log
(
"handleOperation"
,
valu
e
,
row
);
console
.
log
(
"handleOperation"
,
typ
e
,
row
);
switch
(
value
.
type
)
{
switch
(
type
)
{
case
"add"
:
case
"add"
:
this
.
drawerVisible
=
true
;
this
.
drawerVisible
=
true
;
break
;
break
;
case
"view"
:
case
"view"
:
break
;
break
;
case
"edit"
:
case
"edit"
:
let
detailRes
=
await
getRCDetailById
({
crId
:
row
.
crId
});
//
let detailRes = await getRCDetailById({ crId: row.crId });
if
(
detailRes
.
code
==
0
)
{
//
if (detailRes.code == 0) {
this
.
form
=
detailRes
.
data
;
// }
this
.
drawerVisible
=
true
;
this
.
form
=
row
;
}
this
.
drawerVisible
=
true
;
break
;
break
;
case
"delete"
:
case
"delete"
:
let
deleteRes
=
await
deleteCultralRelic
([
row
.
crId
]);
//
let deleteRes = await deleteCultralRelic([row.crId]);
if
(
deleteRes
.
code
==
0
)
{
//
if (deleteRes.code == 0) {
this
.
$message
.
success
(
"删除成功!"
);
//
this.$message.success("删除成功!");
this
.
loadData
();
//
this.loadData();
}
//
}
break
;
break
;
}
}
},
},
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论