Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
A
admin-base
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
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
new-sing
admin-base
Commits
a49dae2b
Commit
a49dae2b
authored
Aug 12, 2019
by
赵茹林
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
标签页 新增搜索、高级搜索、导出、权限配置
9个期数搜索框更新
parent
a23277cf
Changes
24
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
320 additions
and
476 deletions
+320
-476
App.vue
src/App.vue
+21
-0
channelConversionList.vue
src/components/conversionList/channelConversionList.vue
+3
-4
channelGoodsConversionList.vue
src/components/conversionList/channelGoodsConversionList.vue
+3
-5
channelTransList.vue
src/components/conversionList/channelTransList.vue
+6
-1
marketEnrollmentConversionList.vue
...ponents/conversionList/marketEnrollmentConversionList.vue
+14
-9
periodsConversionList.vue
src/components/conversionList/periodsConversionList.vue
+14
-20
sourceConversionList.vue
src/components/conversionList/sourceConversionList.vue
+6
-4
squadConversionList.vue
src/components/conversionList/squadConversionList.vue
+6
-4
teacherConversionList.vue
src/components/conversionList/teacherConversionList.vue
+6
-4
teacherPeriodsConversionList.vue
...omponents/conversionList/teacherPeriodsConversionList.vue
+5
-2
add.vue
src/components/exchange/add.vue
+1
-1
index.vue
src/components/framework/index.vue
+4
-2
index.vue
src/components/lesson/index.vue
+12
-14
index.vue
src/components/marketStatistics/index.vue
+1
-2
dialog.vue
src/components/periods/dialog.vue
+2
-8
index.vue
src/components/periods/index.vue
+3
-1
newDialog.vue
src/components/periods/newDialog.vue
+15
-18
role.vue
src/components/system/role.vue
+1
-1
staff.vue
src/components/system/staff.vue
+2
-2
staffRecord.vue
src/components/system/staffRecord.vue
+1
-1
tag.vue
src/components/system/tag.vue
+138
-279
index.vue
src/components/user/index.vue
+40
-68
index.vue
src/components/userDetail/index.vue
+8
-26
api.js
src/service/api.js
+8
-0
No files found.
src/App.vue
View file @
a49dae2b
...
@@ -198,6 +198,12 @@ html, body {
...
@@ -198,6 +198,12 @@ html, body {
&.width-320 {
&.width-320 {
max-width: 320px;
max-width: 320px;
}
}
&.width-360 {
max-width: 360px;
}
&.width-400 {
max-width: 400px;
}
&.width-480 {
&.width-480 {
max-width: 480px;
max-width: 480px;
}
}
...
@@ -232,4 +238,19 @@ html, body {
...
@@ -232,4 +238,19 @@ html, body {
}
}
}
}
.el-table {
.f-c > div {
display: flex !important;
flex-flow: row;
justify-content: flex-start;
align-items: center;
}
.avatar {
width: 50px;
margin-right: 8px;
border-radius: 50%;
height: 50px;
}
}
</
style
>
</
style
>
src/components/conversionList/channelConversionList.vue
View file @
a49dae2b
...
@@ -140,8 +140,7 @@ export default {
...
@@ -140,8 +140,7 @@ export default {
goods_id
:
null
,
goods_id
:
null
,
teacherList
:
[],
teacherList
:
[],
goodsList
:
[],
goodsList
:
[],
periodList
:
[],
//periodList: [],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -343,12 +342,12 @@ export default {
...
@@ -343,12 +342,12 @@ export default {
this
.
limit
=
val
;
this
.
limit
=
val
;
this
.
getChannelTransList
();
this
.
getChannelTransList
();
},
},
getPeriodsOtherList
()
{
/*
getPeriodsOtherList() {
let json = { limit: 1000, page: 1,max_watch_num:20 };
let json = { limit: 1000, page: 1,max_watch_num:20 };
getPeriodsOtherListApi(json).then(res => {
getPeriodsOtherListApi(json).then(res => {
this.periodList = res.list;
this.periodList = res.list;
});
});
},
},
*/
getChannelTransList
()
{
getChannelTransList
()
{
let
json
=
{
let
json
=
{
limit
:
this
.
limit
,
limit
:
this
.
limit
,
...
...
src/components/conversionList/channelGoodsConversionList.vue
View file @
a49dae2b
...
@@ -157,8 +157,7 @@ export default {
...
@@ -157,8 +157,7 @@ export default {
list
:
[],
list
:
[],
goods_id
:
null
,
goods_id
:
null
,
teacherList
:
[],
teacherList
:
[],
periodList
:
[],
//periodList: [],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -204,7 +203,6 @@ export default {
...
@@ -204,7 +203,6 @@ export default {
];
];
}
}
},
},
propertyList
:
[],
spanArr
:
[],
spanArr
:
[],
contentSpanArr
:
[],
contentSpanArr
:
[],
searchFrom
:
{
searchFrom
:
{
...
@@ -391,12 +389,12 @@ export default {
...
@@ -391,12 +389,12 @@ export default {
this
.
limit
=
val
;
this
.
limit
=
val
;
this
.
getChannelTransList
();
this
.
getChannelTransList
();
},
},
getPeriodsOtherList
()
{
/*
getPeriodsOtherList() {
let json = { limit: 1000,page:1,max_watch_num:20 };
let json = { limit: 1000,page:1,max_watch_num:20 };
getPeriodsOtherListApi(json).then(res => {
getPeriodsOtherListApi(json).then(res => {
this.periodList = res.list;
this.periodList = res.list;
});
});
},
},
*/
getChannelTransList
()
{
getChannelTransList
()
{
let
json
=
{
let
json
=
{
limit
:
this
.
limit
,
limit
:
this
.
limit
,
...
...
src/components/conversionList/channelTransList.vue
View file @
a49dae2b
...
@@ -65,13 +65,15 @@
...
@@ -65,13 +65,15 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
:popper-class=
"'refresh-select-multi width-480'"
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
clearable
clearable
filterable
>
filterable
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
title
"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
label
"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"组ID"
>
<el-form-item
label=
"组ID"
>
...
@@ -443,6 +445,9 @@ export default {
...
@@ -443,6 +445,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
});
});
},
},
...
...
src/components/conversionList/marketEnrollmentConversionList.vue
View file @
a49dae2b
...
@@ -36,13 +36,15 @@
...
@@ -36,13 +36,15 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
:popper-class=
"'refresh-select-multi width-480'"
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
clearable
clearable
filterable
>
filterable
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
title
"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
label
"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -58,12 +60,11 @@
...
@@ -58,12 +60,11 @@
:header-cell-style=
"
{background:'#5f5f5f',color:'#fff'}"
:header-cell-style=
"
{background:'#5f5f5f',color:'#fff'}"
:data="list"
:data="list"
size="mini"
size="mini"
height="calc(100vh - 210px)"
:row-class-name="tableRowClassName"
:row-class-name="tableRowClassName"
:span-method="arraySpanMethod"
:span-method="arraySpanMethod"
>
>
<
el-table-column
prop=
"periods_title"
align=
"center"
min-width=
"80"
fixed
label=
"期数名称"
>
<
!--height="calc(100vh - 210px)"--
>
</el-table-column>
<
el-table-column
prop=
"periods_title"
align=
"center"
min-width=
"80"
fixed
label=
"期数名称"
><
/el-table-column>
<el-table-column
prop=
"is_other"
min-width=
"160"
align=
"left"
fixed
label=
"渠道信息"
>
<el-table-column
prop=
"is_other"
min-width=
"160"
align=
"left"
fixed
label=
"渠道信息"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
来源:
{{
scope
.
row
.
is_other
==
0
?
"内部"
:
"外部"
}}
<br>
来源:
{{
scope
.
row
.
is_other
==
0
?
"内部"
:
"外部"
}}
<br>
...
@@ -109,7 +110,6 @@ export default {
...
@@ -109,7 +110,6 @@ export default {
"wait_join_num"
,
"wait_join_num"
,
"other_wait_join_num"
"other_wait_join_num"
],
],
periodList
:[],
searchFrom
:
{
searchFrom
:
{
payTime
:
[],
payTime
:
[],
start_at
:
""
,
start_at
:
""
,
...
@@ -196,6 +196,9 @@ export default {
...
@@ -196,6 +196,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
});
});
},
},
...
@@ -292,10 +295,12 @@ export default {
...
@@ -292,10 +295,12 @@ export default {
<
style
scoped
lang=
"less"
>
<
style
scoped
lang=
"less"
>
.searchFrom{
.searchFrom{
position: absolute;
/*position: absolute;
top: 20px;
top: 20px;*/
}
.el-table{
/*margin-top: 130px;*/
}
}
.el-table{margin-top: 130px;}
/deep/.el-table--enable-row-hover .el-table__body tr:hover > td {
/deep/.el-table--enable-row-hover .el-table__body tr:hover > td {
background-color: #fff;
background-color: #fff;
}
}
...
@@ -306,6 +311,6 @@ export default {
...
@@ -306,6 +311,6 @@ export default {
max-width: 100% !important;
max-width: 100% !important;
}
}
.el-main .content .router-block .child-view {
.el-main .content .router-block .child-view {
height: 100vh;
/*height: 100vh;*/
}
}
</
style
>
</
style
>
src/components/conversionList/periodsConversionList.vue
View file @
a49dae2b
...
@@ -11,8 +11,7 @@
...
@@ -11,8 +11,7 @@
end-placeholder=
"结束日期"
end-placeholder=
"结束日期"
:picker-options=
"
{shortcuts:[today,yesterday,last7Day,last30Day]}"
:picker-options=
"
{shortcuts:[today,yesterday,last7Day,last30Day]}"
:default-time="['00:00:00','23:59:59']"
:default-time="['00:00:00','23:59:59']"
@change="getChannelTransList"
@change="getChannelTransList">
</el-date-picker>
>
</el-date-picker>
</el-form-item>
</el-form-item>
<el-form-item
label=
"开结课日期"
>
<el-form-item
label=
"开结课日期"
>
<el-date-picker
<el-date-picker
...
@@ -24,8 +23,7 @@
...
@@ -24,8 +23,7 @@
end-placeholder=
"结束日期"
end-placeholder=
"结束日期"
:picker-options=
"
{shortcuts:[classToday,classYesterday,classLast7Day,classLast30Day]}"
:picker-options=
"
{shortcuts:[classToday,classYesterday,classLast7Day,classLast30Day]}"
:default-time="['00:00:00','23:59:59']"
:default-time="['00:00:00','23:59:59']"
@change="getChannelTransList"
@change="getChannelTransList">
</el-date-picker>
>
</el-date-picker>
</el-form-item>
</el-form-item>
<el-form-item
label=
"渠道code"
>
<el-form-item
label=
"渠道code"
>
<el-input
v-model=
"searchFrom.invite_type"
style=
"width: 110px"
></el-input>
<el-input
v-model=
"searchFrom.invite_type"
style=
"width: 110px"
></el-input>
...
@@ -38,25 +36,23 @@
...
@@ -38,25 +36,23 @@
clearable
clearable
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 150px"
style=
"width: 150px"
@
change=
"selectChange"
@
change=
"selectChange"
>
>
<el-option
<el-option
v-for=
"(data,index) in watchList"
v-for=
"(data,index) in watchList"
:key=
"index"
:key=
"index"
:label=
"data.title"
:label=
"data.title"
:value=
"data.id"
:value=
"data.id"
></el-option>
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
filterable
filterable
>
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.label"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.title"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"组ID"
>
<el-form-item
label=
"组ID"
>
...
@@ -69,15 +65,13 @@
...
@@ -69,15 +65,13 @@
placeholder=
"请选择"
placeholder=
"请选择"
@
change=
"changeTeacher"
@
change=
"changeTeacher"
clearable
clearable
style=
"width: 100px"
style=
"width: 100px"
>
>
<el-option
label=
"暂不分配"
value=
"0"
></el-option>
<el-option
label=
"暂不分配"
value=
"0"
></el-option>
<el-option
<el-option
v-for=
"(data,index) in teacherList"
v-for=
"(data,index) in teacherList"
:key=
"index"
:key=
"index"
:label=
"data.name"
:label=
"data.name"
:value=
"data.id"
:value=
"data.id"
></el-option>
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -92,15 +86,13 @@
...
@@ -92,15 +86,13 @@
:data=
"list"
:data=
"list"
@
sort-change=
"sortMethod"
@
sort-change=
"sortMethod"
:style=
"
{width: width+'px'}"
:style=
"
{width: width+'px'}"
fixed
fixed>
>
<el-table-column
prop=
"periods_title"
label=
"期数名称"
></el-table-column>
<el-table-column
prop=
"periods_title"
label=
"期数名称"
></el-table-column>
<el-table-column
<el-table-column
prop=
"duration_over_at"
prop=
"duration_over_at"
label=
"开课看课时间"
label=
"开课看课时间"
style=
"font-size:12px;"
style=
"font-size:12px;"
width=
"200"
width=
"200"
>
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
开课日期:
{{
scope
.
row
.
start_at
}}
开课日期:
{{
scope
.
row
.
start_at
}}
<br>
<br>
...
@@ -164,7 +156,6 @@ export default {
...
@@ -164,7 +156,6 @@ export default {
teacherList
:
[],
teacherList
:
[],
goodsList
:
[],
goodsList
:
[],
periodList
:
[],
periodList
:
[],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -453,6 +444,9 @@ export default {
...
@@ -453,6 +444,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
console
.
log
(
320
)
console
.
log
(
320
)
});
});
...
...
src/components/conversionList/sourceConversionList.vue
View file @
a49dae2b
...
@@ -35,13 +35,13 @@
...
@@ -35,13 +35,13 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
filterable
filterable
>
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.label"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.title"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"转化前商品"
>
<el-form-item
label=
"转化前商品"
>
...
@@ -193,7 +193,6 @@ export default {
...
@@ -193,7 +193,6 @@ export default {
teacherList
:
[],
teacherList
:
[],
goodsList
:
[],
goodsList
:
[],
periodList
:
[],
periodList
:
[],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -473,6 +472,9 @@ export default {
...
@@ -473,6 +472,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
console
.
log
(
320
)
console
.
log
(
320
)
});
});
...
...
src/components/conversionList/squadConversionList.vue
View file @
a49dae2b
...
@@ -37,13 +37,13 @@
...
@@ -37,13 +37,13 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
filterable
filterable
>
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.label"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.title"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -117,7 +117,6 @@ export default {
...
@@ -117,7 +117,6 @@ export default {
teacherList
:
[],
teacherList
:
[],
goodsList
:
[],
goodsList
:
[],
periodList
:
[],
periodList
:
[],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -355,6 +354,9 @@ export default {
...
@@ -355,6 +354,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
});
});
},
},
...
...
src/components/conversionList/teacherConversionList.vue
View file @
a49dae2b
...
@@ -29,8 +29,7 @@
...
@@ -29,8 +29,7 @@
clearable
clearable
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 150px"
style=
"width: 150px"
@
change=
"selectChange"
@
change=
"selectChange"
>
>
<el-option
<el-option
v-for=
"(data,index) in watchList"
v-for=
"(data,index) in watchList"
:key=
"index"
:key=
"index"
...
@@ -41,12 +40,13 @@
...
@@ -41,12 +40,13 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
filterable
>
filterable
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
title
"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
label
"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -121,7 +121,6 @@ export default {
...
@@ -121,7 +121,6 @@ export default {
teacherList
:
[],
teacherList
:
[],
goodsList
:
[],
goodsList
:
[],
periodList
:
[],
periodList
:
[],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -358,6 +357,9 @@ export default {
...
@@ -358,6 +357,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
});
});
},
},
...
...
src/components/conversionList/teacherPeriodsConversionList.vue
View file @
a49dae2b
...
@@ -35,12 +35,13 @@
...
@@ -35,12 +35,13 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-form-item
label=
"期数名称"
prop=
"periods_title"
>
<el-select
<el-select
style=
"width: 480px"
placeholder=
"请选择"
placeholder=
"请选择"
v-model=
"searchFrom.periods_id"
v-model=
"searchFrom.periods_id"
@
change=
"onPeriodChange"
@
change=
"onPeriodChange"
multiple
multiple
filterable
>
filterable
>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
title
"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in periodList"
:key=
"item.id"
:label=
"item.
label
"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"老师"
>
<el-form-item
label=
"老师"
>
...
@@ -164,7 +165,6 @@ export default {
...
@@ -164,7 +165,6 @@ export default {
teacherList
:
[],
teacherList
:
[],
goodsList
:
[],
goodsList
:
[],
periodList
:
[],
periodList
:
[],
total
:
0
,
today
:
{
today
:
{
text
:
"今天"
,
text
:
"今天"
,
onClick
:
()
=>
{
onClick
:
()
=>
{
...
@@ -456,6 +456,9 @@ export default {
...
@@ -456,6 +456,9 @@ export default {
getPeriodsOtherList
()
{
getPeriodsOtherList
()
{
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
let
json
=
{
limit
:
1000
,
page
:
1
,
max_watch_num
:
20
};
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
getPeriodsOtherListApi
(
json
).
then
(
res
=>
{
res
.
list
.
forEach
(
val
=>
{
val
.
label
=
`【
${
val
.
goods_id
}
】
${
val
.
title
}${
val
.
watch_num
}
课时(
${
val
.
start_at
.
slice
(
5
).
replace
(
'-'
,
''
)}
)-d
${
val
.
has_watch_num
}
`
})
this
.
periodList
=
res
.
list
;
this
.
periodList
=
res
.
list
;
});
});
},
},
...
...
src/components/exchange/add.vue
View file @
a49dae2b
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
<el-form-item
label=
"活动方案"
>
<el-form-item
label=
"活动方案"
>
<el-select
<el-select
v-model=
"newIntegral.source"
v-model=
"newIntegral.source"
:p
rop
-class=
"'refresh-select-multi width-480'"
:p
opper
-class=
"'refresh-select-multi width-480'"
style=
"width: 480px"
placeholder=
"请选择"
filterable
>
style=
"width: 480px"
placeholder=
"请选择"
filterable
>
<el-option
<el-option
v-for=
"(data,index) in classSource"
v-for=
"(data,index) in classSource"
...
...
src/components/framework/index.vue
View file @
a49dae2b
...
@@ -54,6 +54,8 @@
...
@@ -54,6 +54,8 @@
.menu-block{
.menu-block{
float: left;
float: left;
height: 100%;
height: 100%;
background-color: #333333;
/*height: calc(100vh - 60px);*/
/*overflow: auto;
/*overflow: auto;
position: fixed;
position: fixed;
left: 0;
left: 0;
...
@@ -69,9 +71,9 @@
...
@@ -69,9 +71,9 @@
height: 100%;
height: 100%;
position: relative;
position: relative;
.child-view{
.child-view{
height: calc(100% - 40px);
/*
height: calc(100% - 40px);
width: 100%;
width: 100%;
overflow-y: auto;
overflow-y: auto;
*/
}
}
}
}
}
}
...
...
src/components/lesson/index.vue
View file @
a49dae2b
<
template
>
<
template
>
<div
class=
"user"
>
<div
class=
"user"
>
<el-form
ref=
"searchFrom"
:model=
"searchFrom"
label-width=
"100px"
inline=
""
class=
"search-form"
>
<el-form
ref=
"searchFrom"
:model=
"searchFrom"
label-width=
"100px"
inline=
""
class=
"search-form"
>
<el-form-item
label=
"课程标题"
>
<el-form-item
label=
"课程标题"
>
<el-input
v-model=
"searchFrom.title"
></el-input>
<el-input
v-model=
"searchFrom.title"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
""
>
<el-form-item
label=
""
>
<div
class=
"search-btn-block"
>
<div
class=
"search-btn-block"
>
<el-button
type=
"primary"
plain
@
click=
"getUser"
icon=
"el-icon-search"
>
搜索
</el-button>
<el-button
type=
"primary"
plain
@
click=
"getUser"
icon=
"el-icon-search"
>
搜索
</el-button>
<el-button
type=
"success"
plain
@
click=
"add"
v-if=
"!$store.state.readonly"
icon=
"el-icon-plus"
>
新增课程
</el-button>
<el-button
type=
"success"
plain
@
click=
"add"
v-if=
"!$store.state.readonly"
icon=
"el-icon-plus"
>
新增课程
</el-button>
</div>
</div>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<el-tabs
v-model=
"searchFrom.type"
type=
"card"
style=
"background: white;padding-top: 10px"
@
tab-click=
"getUser"
>
<el-tabs
v-model=
"searchFrom.type"
type=
"card"
style=
"background: white;padding-top: 10px"
@
tab-click=
"getUser"
>
<el-tab-pane
label=
"全部"
name=
"-1"
></el-tab-pane>
<el-tab-pane
label=
"全部"
name=
"-1"
></el-tab-pane>
<el-tab-pane
label=
"日课"
name=
"1"
></el-tab-pane>
<el-tab-pane
label=
"日课"
name=
"1"
></el-tab-pane>
<el-tab-pane
label=
"月课"
name=
"0"
></el-tab-pane>
<el-tab-pane
label=
"月课"
name=
"0"
></el-tab-pane>
</el-tabs>
</el-tabs>
<el-table
<el-table
:data=
"userList"
>
:data=
"userList"
style=
"width: 100%"
>
<el-table-column
<el-table-column
prop=
"title"
prop=
"title"
label=
"课程名"
>
label=
"课程名"
>
...
@@ -181,8 +179,8 @@
...
@@ -181,8 +179,8 @@
margin: 0;
margin: 0;
}
}
.user{
.user{
height: 100%;
/*height: 100%;*/
overflow: auto;
/*overflow: auto;*/
padding: 20px 0;
padding: 20px 0;
.btn-content{
.btn-content{
text-align: center;
text-align: center;
...
...
src/components/marketStatistics/index.vue
View file @
a49dae2b
...
@@ -8,8 +8,7 @@
...
@@ -8,8 +8,7 @@
height="calc(100vh - 60px)"
height="calc(100vh - 60px)"
size="mini"
size="mini"
:row-class-name="tableRowClassName"
:row-class-name="tableRowClassName"
:span-method="arraySpanMethod"
:span-method="arraySpanMethod">
>
<el-table-column
min-width=
"180"
prop=
"wait_join_num"
align=
"left"
fixed=
"left"
label=
"期数总状况"
>
<el-table-column
min-width=
"180"
prop=
"wait_join_num"
align=
"left"
fixed=
"left"
label=
"期数总状况"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
期数名称:
{{
scope
.
row
.
title
}}
期数名称:
{{
scope
.
row
.
title
}}
...
...
src/components/periods/dialog.vue
View file @
a49dae2b
<
template
>
<
template
>
<div>
<div>
<el-dialog
<el-dialog
:title=
"dialogObj.title"
:visible
.
sync=
"dialogObj.show"
>
:title=
"dialogObj.title"
:visible
.
sync=
"dialogObj.show"
>
<el-table
<el-table
:data=
"goodList"
:data=
"goodList"
style=
"width: 100%"
style=
"width: 100%"
row-key=
"id"
row-key=
"id"
highlight-current-row
highlight-current-row
@
current-change=
"handleCurrentChange"
>
@
current-change=
"handleCurrentChange"
>
<el-table-column
<el-table-column
prop=
"id"
label=
"商品ID"
></el-table-column>
prop=
"id"
label=
"商品ID"
>
</el-table-column>
<el-table-column
<el-table-column
prop=
"name"
prop=
"name"
label=
"名称"
>
label=
"名称"
>
...
...
src/components/periods/index.vue
View file @
a49dae2b
...
@@ -6,7 +6,9 @@
...
@@ -6,7 +6,9 @@
<el-input
v-model=
"title"
placeholder=
"请输入内容"
style=
"width: 150px"
clearable
></el-input>
<el-input
v-model=
"title"
placeholder=
"请输入内容"
style=
"width: 150px"
clearable
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"商品名称"
>
<el-form-item
label=
"商品名称"
>
<el-select
v-model=
"goodsId"
filterable
placeholder=
"请选择"
style=
"width: 150px"
@
change=
"onSearch"
clearable
>
<el-select
:popper-class=
"'refresh-select-multi width-400'"
style=
"width: 400px"
v-model=
"goodsId"
filterable
placeholder=
"请选择"
@
change=
"onSearch"
clearable
>
<el-option
<el-option
v-for=
"(data,index) in goodList"
v-for=
"(data,index) in goodList"
:key=
"index"
:key=
"index"
...
...
src/components/periods/newDialog.vue
View file @
a49dae2b
...
@@ -2,26 +2,23 @@
...
@@ -2,26 +2,23 @@
<div>
<div>
<el-dialog
<el-dialog
:title=
"dialogObj.title"
:title=
"dialogObj.title"
center
center
append-to-body
append-to-body
:visible
.
sync=
"show"
:visible
.
sync=
"show"
width=
"800px"
>
width=
"800px"
>
<div
v-loading=
"loading"
>
<div
v-loading=
"loading"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"120px"
:rules=
"rules"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"120px"
:rules=
"rules"
>
<el-row>
<el-form-item
label=
"商品名称"
prop=
"goods_id"
>
<el-col
:span=
"10"
>
<el-select
<el-form-item
label=
"商品名称"
prop=
"goods_id"
>
:popper-class=
"'refresh-select-multi width-480'"
style=
"width: 480px"
<el-select
v-model=
"form.goods_id"
placeholder=
"请选择"
@
change=
"onOptionChange"
:disabled=
"form.id ? true : false"
>
v-model=
"form.goods_id"
placeholder=
"请选择"
@
change=
"onOptionChange"
:disabled=
"form.id ? true : false"
>
<el-option
<el-option
v-for=
"(data,index) in goodList"
v-for=
"(data,index) in goodList"
:key=
"index"
:key=
"index"
:label=
"data | filterGoods"
:label=
"data | filterGoods"
:value=
"data.id"
>
:value=
"data.id"
>
</el-option>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-row>
<el-form-item
label=
"期数名称"
prop=
"title"
>
<el-form-item
label=
"期数名称"
prop=
"title"
>
<el-input
v-model=
"form.title"
></el-input>
<el-input
v-model=
"form.title"
></el-input>
</el-form-item>
</el-form-item>
...
@@ -83,10 +80,10 @@
...
@@ -83,10 +80,10 @@
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"show = false"
>
取 消
</el-button>
<el-button
@
click=
"show = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"sub"
>
确 定
</el-button>
<el-button
type=
"primary"
@
click=
"sub"
>
确 定
</el-button>
</span>
</div>
</div>
</el-dialog>
</el-dialog>
</div>
</div>
...
...
src/components/system/role.vue
View file @
a49dae2b
...
@@ -96,7 +96,7 @@
...
@@ -96,7 +96,7 @@
limit
:
10
,
limit
:
10
,
roleList
:[],
roleList
:[],
exportMenuList
:[
exportMenuList
:[
'2-3'
,
'5-10'
,
'5-2'
,
'5-1'
,
'5-3'
,
'5-8'
,
'5-9'
,
'3-1'
,
'7-9'
,
'6-3'
'2-3'
,
'5-10'
,
'5-2'
,
'5-1'
,
'5-3'
,
'5-8'
,
'5-9'
,
'3-1'
,
'7-9'
,
'6-3'
,
'10-8'
],
],
dialog
:{
dialog
:{
title
:
'新增角色'
,
title
:
'新增角色'
,
...
...
src/components/system/staff.vue
View file @
a49dae2b
...
@@ -81,7 +81,7 @@
...
@@ -81,7 +81,7 @@
</el-table-column>
</el-table-column>
</el-table>
</el-table>
<page
:total=
"total"
:limit=
"limit"
@
pageChange=
"onPageChange"
@
sizeChange=
"onSizeChange"
/>
<page
:total=
"total"
:limit=
"limit"
@
pageChange=
"onPageChange"
@
sizeChange=
"onSizeChange"
/>
<el-dialog
:title=
"dialog.title"
:visible
.
sync=
"dialog.show"
width=
"
5
00px"
>
<el-dialog
:title=
"dialog.title"
:visible
.
sync=
"dialog.show"
width=
"
8
00px"
>
<el-form
ref=
"dialogForm"
:rules=
"dialog.form.rules"
:model=
"dialog.form"
label-width=
"100px"
>
<el-form
ref=
"dialogForm"
:rules=
"dialog.form.rules"
:model=
"dialog.form"
label-width=
"100px"
>
<el-form-item
label=
"真实姓名:"
prop=
"name"
>
<el-form-item
label=
"真实姓名:"
prop=
"name"
>
...
@@ -334,7 +334,7 @@
...
@@ -334,7 +334,7 @@
}
}
.user {
.user {
height: 100%;
/*height: 100%;*/
overflow: auto;
overflow: auto;
padding: 20px 0;
padding: 20px 0;
...
...
src/components/system/staffRecord.vue
View file @
a49dae2b
...
@@ -151,7 +151,7 @@
...
@@ -151,7 +151,7 @@
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
scoped
>
.user {
.user {
height: 100%;
/*height: 100%;*/
overflow: auto;
overflow: auto;
padding: 20px 0;
padding: 20px 0;
...
...
src/components/system/tag.vue
View file @
a49dae2b
This diff is collapsed.
Click to expand it.
src/components/user/index.vue
View file @
a49dae2b
<
template
>
<
template
>
<div
class=
"user"
v-loading=
"loading"
>
<div
class=
"user"
v-loading=
"loading"
>
<el-form
ref=
"searchFrom"
:model=
"searchFrom"
label-width=
"80px"
inline
>
<el-form
ref=
"searchFrom"
:model=
"searchFrom"
label-width=
"80px"
inline
>
<el-form-item
label=
"ID"
>
<el-form-item
label=
"ID"
>
<el-input
v-model=
"searchFrom.userId"
></el-input>
<el-input
v-model=
"searchFrom.userId"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"昵称"
>
<el-form-item
label=
"昵称"
>
<el-input
v-model=
"searchFrom.nickName"
></el-input>
<el-input
v-model=
"searchFrom.nickName"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"电话"
>
<el-form-item
label=
"电话"
>
<el-input
v-model=
"searchFrom.mobile"
></el-input>
<el-input
v-model=
"searchFrom.mobile"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"等级"
>
<el-form-item
label=
"等级"
>
<el-input
v-model=
"searchFrom.level"
></el-input>
<el-input
v-model=
"searchFrom.level"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item>
<!--
<el-form-item
label=
"标签"
>
<div
class=
"flexRow"
>
<el-cascader
<el-button
type=
"primary"
plain
@
click=
"getUser"
>
搜索
</el-button>
style=
"width: 320px"
placeholder=
"选择标签"
clearable
@
change=
"tagChange"
<!--
<el-button
type=
"success"
plain
@
click=
"syncUser"
>
同步最新数据
</el-button>
-->
:options=
"options"
:props=
"
{ multiple: true, checkStrictly: true }">
</el-cascader>
</div>
</el-form-item>
-->
</el-form-item>
<el-form-item>
<div
class=
"flexRow"
>
<el-button
type=
"primary"
plain
@
click=
"getUser"
>
搜索
</el-button>
<!--
<el-button
type=
"success"
plain
@
click=
"syncUser"
>
同步最新数据
</el-button>
-->
</div>
</el-form-item>
</el-form>
</el-form>
<el-table
<el-table
:data=
"userList"
:data=
"userList"
style=
"width: 100%"
>
style=
"width: 100%"
>
<el-table-column
<el-table-column
className=
"f-c"
label=
"用户"
>
className=
"f-c"
label=
"用户"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<img
class=
"avatar"
:src=
"scope.row.avatar"
>
{{
scope
.
row
.
nickname
}}
(ID:
{{
scope
.
row
.
user_id
}}
)
<img
class=
"avatar"
:src=
"scope.row.avatar"
>
{{
scope
.
row
.
nickname
}}
<br>
(ID:
{{
scope
.
row
.
user_id
}}
)
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"mobile"
label=
"手机号"
></el-table-column>
prop=
"mobile"
<el-table-column
prop=
"created_at"
label=
"注册时间"
width=
"105px"
sortable
></el-table-column>
label=
"手机号"
>
<el-table-column
prop=
"last_login_at"
label=
"最后登录"
width=
"105px"
sortable
></el-table-column>
</el-table-column>
<!--<el-table-column prop="last_login_at" label="最后登录时间" width="120px" sortable></el-table-column>-->
<el-table-column
<el-table-column
prop=
"baby_name"
label=
"宝宝名称"
></el-table-column>
prop=
"created_at"
<el-table-column
prop=
"birthday"
label=
"宝宝生日"
width=
"105px"
></el-table-column>
label=
"注册时间"
sortable
>
<el-table-column
prop=
"sex"
label=
"宝宝性别"
width=
"80px"
:formatter=
"sexFormatter"
></el-table-column>
</el-table-column>
<el-table-column
label=
"操作"
width=
"100px"
>
<el-table-column
prop=
"last_login_at"
label=
"最后登录时间"
sortable
>
</el-table-column>
<el-table-column
prop=
"baby_name"
label=
"宝宝名称"
>
</el-table-column>
<el-table-column
prop=
"birthday"
label=
"宝宝生日"
>
</el-table-column>
<el-table-column
prop=
"sex"
label=
"宝宝性别"
:formatter=
"sexFormatter"
>
</el-table-column>
<el-table-column
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
plain
type=
"primary"
@
click=
"goToDetail(scope.row.user_id)"
>
<el-button
size=
"mini"
plain
type=
"primary"
@
click=
"goToDetail(scope.row.user_id)"
>
查看详情
</el-button>
查看详情
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -123,6 +106,9 @@
...
@@ -123,6 +106,9 @@
this
.
getUser
()
this
.
getUser
()
},
},
methods
:{
methods
:{
tagChange
()
{
},
sexFormatter
(
item
){
sexFormatter
(
item
){
if
(
item
.
sex
==
0
){
if
(
item
.
sex
==
0
){
return
'保密'
return
'保密'
...
@@ -204,16 +190,10 @@
...
@@ -204,16 +190,10 @@
}
}
</
script
>
</
script
>
<
style
scoped
lang=
"less"
>
<
style
lang=
"less"
>
@import "../../util/public";
/*@import "../../util/public";*/
.avatar {
width: 50px;
margin-right: 5px;
border-radius: 50%;
height: 50px;
}
.user{
.user{
height: 100%;
/*height: 100%;*/
overflow: auto;
overflow: auto;
padding: 20px 0;
padding: 20px 0;
.btn-content{
.btn-content{
...
@@ -228,11 +208,3 @@
...
@@ -228,11 +208,3 @@
}
}
</
style
>
</
style
>
<
style
>
.f-c
>
div
{
display
:
flex
!important
;
flex-flow
:
row
;
justify-content
:
flex-start
;
align-items
:
center
;
}
</
style
>
src/components/userDetail/index.vue
View file @
a49dae2b
...
@@ -97,24 +97,19 @@
...
@@ -97,24 +97,19 @@
</el-table>
</el-table>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"periods_title"
label=
"期数名称"
>
prop=
"periods_title"
label=
"期数名称"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<router-link
:to=
"
{name:'class', query: { goods_id: scope.row.goods_id, periods_id: scope.row.periods_id}}" >
<router-link
:to=
"
{name:'class', query: { goods_id: scope.row.goods_id, periods_id: scope.row.periods_id}}" >
{{
scope
.
row
.
periods_title
}}
{{
scope
.
row
.
periods_title
}}
</router-link>
</router-link>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
label=
"看课权限"
>
label=
"看课权限"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
is_view_course
===
1
?
'是'
:
'否'
}}
{{
scope
.
row
.
is_view_course
===
1
?
'是'
:
'否'
}}
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
className=
"f-c"
label=
"老师"
>
className=
"f-c"
label=
"老师"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<router-link
:to=
"`/teacher/$
{scope.row.teacher_id}`" >
<router-link
:to=
"`/teacher/$
{scope.row.teacher_id}`" >
<div
class=
"f-c"
>
<div
class=
"f-c"
>
...
@@ -125,24 +120,11 @@
...
@@ -125,24 +120,11 @@
</router-link>
</router-link>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"join_num"
label=
"加入人数"
></el-table-column>
prop=
"join_num"
<el-table-column
prop=
"max_join_num"
label=
"最大加入人数"
></el-table-column>
label=
"加入人数"
>
<el-table-column
prop=
"start_at"
label=
"开课时间"
></el-table-column>
</el-table-column>
<el-table-column
prop=
"created_at"
label=
"创建时间"
></el-table-column>
<el-table-column
<el-table-column
label=
"操作"
width=
"340px"
>
prop=
"max_join_num"
label=
"最大加入人数"
>
</el-table-column>
<el-table-column
prop=
"start_at"
label=
"开课时间"
>
</el-table-column>
<el-table-column
prop=
"created_at"
label=
"创建时间"
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"400px"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"showUser(scope.row)"
size=
"mini"
type=
"primary"
>
班级成员
</el-button>
<el-button
@
click=
"showUser(scope.row)"
size=
"mini"
type=
"primary"
>
班级成员
</el-button>
<el-button
size=
"mini"
type=
"warning"
v-if=
"!$store.state.readonly"
@
click=
"editPrivilege(scope.row)"
>
编辑
</el-button>
<el-button
size=
"mini"
type=
"warning"
v-if=
"!$store.state.readonly"
@
click=
"editPrivilege(scope.row)"
>
编辑
</el-button>
...
...
src/service/api.js
View file @
a49dae2b
...
@@ -1337,6 +1337,14 @@ export const postTagApi = function (json) {
...
@@ -1337,6 +1337,14 @@ export const postTagApi = function (json) {
export
const
putTagApi
=
function
(
json
)
{
export
const
putTagApi
=
function
(
json
)
{
return
Vue
.
prototype
.
$put
(
`
${
_baseUrl
}
api/admin/category/
${
json
.
category_id
}
`
,
json
)
return
Vue
.
prototype
.
$put
(
`
${
_baseUrl
}
api/admin/category/
${
json
.
category_id
}
`
,
json
)
};
};
// 根据标签搜索用户
export
const
getTagUserApi
=
function
(
json
)
{
return
Vue
.
prototype
.
$fetch
(
`
${
_baseUrl
}
api/admin/advanced/search`
,
json
)
};
// 根据标签搜索用户
export
const
TagUserApi
=
function
(
json
)
{
return
Vue
.
prototype
.
$fetch
(
`
${
_baseUrl
}
api/admin/advanced/search`
,
json
)
};
// 获取员工列表
// 获取员工列表
export
const
getStaffListApi
=
function
(
json
)
{
export
const
getStaffListApi
=
function
(
json
)
{
return
Vue
.
prototype
.
$fetch
(
`
${
_baseUrl
}
api/admin/staff/list`
,
json
)
return
Vue
.
prototype
.
$fetch
(
`
${
_baseUrl
}
api/admin/staff/list`
,
json
)
...
...
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