Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
S
saas-hr-admin
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
saas-hr-admin
Commits
8e6e55bb
提交
8e6e55bb
authored
6月 21, 2022
作者:
matian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
班级和项目实现联动效果
上级
f47aa841
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
52 行增加
和
31 行删除
+52
-31
List.vue
src/modules/alumni/views/List.vue
+52
-31
没有找到文件。
src/modules/alumni/views/List.vue
浏览文件 @
8e6e55bb
...
@@ -12,26 +12,7 @@ interface classList {
...
@@ -12,26 +12,7 @@ interface classList {
list
:
any
[]
list
:
any
[]
}
}
const
classListItem
=
reactive
<
classList
>
({
loading
:
false
,
page
:
1
,
total
:
0
,
list
:
[]
})
const
classListItem
=
reactive
<
classList
>
({
loading
:
false
,
page
:
1
,
total
:
0
,
list
:
[]
})
onMounted
(()
=>
{
handleGetClassList
()
})
// 获取班级列表
const
handleGetClassList
=
()
=>
{
const
params
=
{
page
:
classListItem
.
page
,
limit
:
10000
,
project_prefix
:
''
,
id
:
''
,
name
:
''
}
getClassList
(
params
).
then
((
res
:
any
)
=>
{
classListItem
.
list
=
res
.
data
.
data
})
}
// 刷新页面
const
handleFresh
=
()
=>
{
appList
.
value
?.
refetch
()
}
const
listOptions
=
{
const
listOptions
=
{
remote
:
{
remote
:
{
httpRequest
:
getAlumniList
,
httpRequest
:
getAlumniList
,
...
@@ -66,14 +47,15 @@ const listOptions = {
...
@@ -66,14 +47,15 @@ const listOptions = {
placeholder
:
'性别'
,
placeholder
:
'性别'
,
options
:
sexList
options
:
sexList
},
},
{
prop
:
'class_id'
,
slots
:
'filter-class'
},
{
{
prop
:
'project_prefix'
,
prop
:
'project_prefix'
,
slots
:
'filter-project'
slots
:
'filter-project'
},
},
{
prop
:
'class_id'
,
slots
:
'filter-class'
},
{
type
:
'select'
,
prop
:
'province'
,
slots
:
'filter-province'
},
{
type
:
'select'
,
prop
:
'province'
,
slots
:
'filter-province'
},
{
type
:
'select'
,
prop
:
'city'
,
slots
:
'filter-city'
},
{
type
:
'select'
,
prop
:
'city'
,
slots
:
'filter-city'
},
{
type
:
'select'
,
prop
:
'industry'
,
placeholder
:
'所在行业'
,
options
:
industryCategoryList
},
{
type
:
'select'
,
prop
:
'industry'
,
placeholder
:
'所在行业'
,
options
:
industryCategoryList
},
...
@@ -87,7 +69,6 @@ const listOptions = {
...
@@ -87,7 +69,6 @@ const listOptions = {
align
:
'center'
,
align
:
'center'
,
computed
(
row
:
any
)
{
computed
(
row
:
any
)
{
return
sexList
.
filter
((
item
:
any
)
=>
{
return
sexList
.
filter
((
item
:
any
)
=>
{
console
.
log
(
item
,
row
.
row
,
'item'
)
if
(
item
.
value
===
row
.
row
.
sex
)
{
if
(
item
.
value
===
row
.
row
.
sex
)
{
return
item
return
item
}
}
...
@@ -114,21 +95,61 @@ const listOptions = {
...
@@ -114,21 +95,61 @@ const listOptions = {
{
label
:
'操作'
,
slots
:
'table-operate'
,
width
:
230
,
align
:
'center'
}
{
label
:
'操作'
,
slots
:
'table-operate'
,
width
:
230
,
align
:
'center'
}
]
]
}
}
// 筛选项目,匹配班级
const
handleChangeClass
=
(
val
:
any
)
=>
{
handleGetClassList
(
val
)
}
// 获取班级列表
const
handleGetClassList
=
(
val
:
string
)
=>
{
const
params
=
{
page
:
classListItem
.
page
,
limit
:
10000
,
project_prefix
:
val
,
id
:
''
,
name
:
''
}
getClassList
(
params
).
then
((
res
:
any
)
=>
{
if
(
listOptions
.
remote
.
params
.
project_prefix
!==
''
)
{
classListItem
.
list
=
res
.
data
.
data
.
filter
(
(
item
:
any
)
=>
item
.
project_prefix
===
listOptions
.
remote
.
params
.
project_prefix
)
}
else
{
classListItem
.
list
=
res
.
data
.
data
}
})
}
// 刷新页面
const
handleFresh
=
()
=>
{
appList
.
value
?.
refetch
()
}
onMounted
(()
=>
{
// 获取班级列表
handleGetClassList
(
''
)
})
</
script
>
</
script
>
<
template
>
<
template
>
<AppCard>
<AppCard>
<AppList
v-bind=
"listOptions"
ref=
"appList"
>
<AppList
v-bind=
"listOptions"
ref=
"appList"
>
<template
#
filter-class=
"
{ params }">
<el-select
@
change=
"handleFresh"
clearable
v-model=
"params.class_id"
placeholder=
"班级"
>
<el-option
v-for=
"item in classListItem.list"
:key=
"item.id"
:label=
"item.name"
:value=
"item.class_id"
/>
</el-select>
</
template
>
<template
#
filter-project=
"
{ params }">
<template
#
filter-project=
"
{ params }">
<el-select
@
change=
"handle
Fresh
"
clearable
v-model=
"params.project_prefix"
placeholder=
"项目"
>
<el-select
@
change=
"handle
ChangeClass
"
clearable
v-model=
"params.project_prefix"
placeholder=
"项目"
>
<el-option
v-for=
"item in allPrefixList"
:key=
"item.prefix"
:label=
"item.name"
:value=
"item.prefix"
/>
<el-option
v-for=
"item in allPrefixList"
:key=
"item.prefix"
:label=
"item.name"
:value=
"item.prefix"
/>
</el-select>
</el-select>
</
template
>
</
template
>
<
template
#
filter-class=
"{ params }"
>
<el-select
@
change=
"handleFresh"
clearable
v-model=
"params.class_id"
placeholder=
"班级"
:remote-method=
"handleGetClassList"
filterable
remote
>
<el-option
v-for=
"item in classListItem.list"
:key=
"item.id"
:label=
"item.name"
:value=
"item.class_id"
/>
</el-select>
</
template
>
<
template
#
filter-province
>
<
template
#
filter-province
>
<el-select
filterable
clearable
v-model=
"provinceValue"
@
change=
"handleFresh"
placeholder=
"省份"
>
<el-select
filterable
clearable
v-model=
"provinceValue"
@
change=
"handleFresh"
placeholder=
"省份"
>
<el-option
v-for=
"item in provinceList"
:value=
"item.label"
:key=
"item.code"
></el-option>
<el-option
v-for=
"item in provinceList"
:value=
"item.label"
:key=
"item.code"
></el-option>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论