Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
提交
打开侧边栏
com.pica.cloud.education.frontend
pica.cloud.web-education-admin
提交
c373a262
提交
c373a262
编写于
12月 23, 2019
作者:
chengxiang.li
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
CME审核权限及学分发放页面开发
上级
0e9fb75c
变更
7
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
630 行增加
和
33 行删除
+630
-33
router.js
src/router/router.js
+10
-0
cmeApi.js
src/utils/cme/cmeApi.js
+82
-0
fetch.js
src/utils/fetch.js
+1
-1
credit-manage.vue
src/views/cme/credit-manage.vue
+166
-31
credit-send-manage.vue
src/views/cme/credit-send-manage.vue
+143
-0
review-access-manage.vue
src/views/cme/review-access-manage.vue
+217
-0
slidebar.vue
src/views/layout/slidebar.vue
+11
-1
未找到文件。
src/router/router.js
浏览文件 @
c373a262
...
@@ -28,6 +28,8 @@ const editEntry = r => require.ensure([], () => r(require('../views/education/ed
...
@@ -28,6 +28,8 @@ const editEntry = r => require.ensure([], () => r(require('../views/education/ed
const
editNotice
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/edit-notice.vue'
)),
'edit-notice'
)
const
editNotice
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/edit-notice.vue'
)),
'edit-notice'
)
const
creditManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/cme/credit-manage.vue'
)),
'credit-manage'
)
const
creditManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/cme/credit-manage.vue'
)),
'credit-manage'
)
const
reviewAccessManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/cme/review-access-manage.vue'
)),
'review-access-manage'
)
const
creditSendManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/cme/credit-send-manage.vue'
)),
'credit-send-manage'
)
export
default
[{
export
default
[{
path
:
'/'
,
path
:
'/'
,
...
@@ -114,6 +116,14 @@ export default [{
...
@@ -114,6 +116,14 @@ export default [{
path
:
'/credit-manage'
,
path
:
'/credit-manage'
,
component
:
creditManage
,
component
:
creditManage
,
},
},
{
path
:
'/review-access-manage'
,
component
:
reviewAccessManage
,
},
{
path
:
'/credit-send-manage'
,
component
:
creditSendManage
,
},
// {
// {
// path: '/followup',
// path: '/followup',
...
...
src/utils/cme/cmeApi.js
0 → 100644
浏览文件 @
c373a262
import
fetch
from
'../fetch'
;
import
{
getBaseUrl
,
getSaasDomain
,
getSaasApiDomain
}
from
'@/utils/index'
export
const
getSelectListReq
=
(
type
)
=>
{
return
fetch
({
url
:
getBaseUrl
(
`cme/constants/list?code=
${
type
}
`
),
method
:
'get'
,
description
:
'获取学分等级 状态 学习形式'
,
})
};
// export const getConstants = (params) => {
// return fetch({
// headers,
// url: getBaseUrl(`basic-data/constants/`),
// method: 'get',
// params: params,
// description: '获取常量',
// })
// };
export
const
getCreditListReq
=
(
params
)
=>
{
return
fetch
({
url
:
getBaseUrl
(
`cme/credit/list`
),
method
:
'get'
,
params
:
params
,
description
:
'获取积分管理列表'
,
})
};
export
const
getRelatedCreditReq
=
(
params
)
=>
{
return
fetch
({
url
:
getBaseUrl
(
`contents/certificate/select`
),
method
:
'get'
,
params
:
params
,
description
:
'获取关联学分证书列表'
,
})
};
export
const
goUpReq
=
(
data
,
id
)
=>
{
return
fetch
({
headers
:
{
'Content-Type'
:
'application/json;charset=UTF-8'
,
token
:
localStorage
.
getItem
(
'storageToken'
),
},
url
:
getBaseUrl
(
`cme/credit/deploy/
${
id
}
`
),
method
:
'post'
,
data
:
data
,
description
:
'上架'
,
})
}
export
const
goDownReq
=
(
data
,
id
)
=>
{
return
fetch
({
headers
:
{
'Content-Type'
:
'application/json;charset=UTF-8'
,
token
:
localStorage
.
getItem
(
'storageToken'
),
},
url
:
getBaseUrl
(
`cme/credit/revoke/
${
id
}
`
),
method
:
'post'
,
data
:
data
,
description
:
'下架'
,
})
}
export
const
goAddNewReq
=
(
data
)
=>
{
return
fetch
({
headers
:
{
'Content-Type'
:
'application/json;charset=UTF-8'
,
token
:
localStorage
.
getItem
(
'storageToken'
),
},
// url: 'http://10.177.15.4:13801/cme/credit/create',
url
:
getBaseUrl
(
`cme/credit/create`
),
method
:
'post'
,
data
:
data
,
description
:
'新增学分记录'
,
})
}
src/utils/fetch.js
浏览文件 @
c373a262
...
@@ -56,7 +56,7 @@ service.interceptors.request.use(config => {
...
@@ -56,7 +56,7 @@ service.interceptors.request.use(config => {
// console.log('环境变量>>>> ', process.env.BUILD_ENV);
// console.log('环境变量>>>> ', process.env.BUILD_ENV);
// config.headers['token'] = 'BFD804F3A3194FBBBE113962222839F6';
// config.headers['token'] = 'BFD804F3A3194FBBBE113962222839F6';
// config.headers['token'] = 'F8209898391C40A0B8DBC1ED9E157291';
// config.headers['token'] = 'F8209898391C40A0B8DBC1ED9E157291';
config
.
headers
[
'token'
]
=
'
FDFBD0E7DC5748A08DA5E0C2CB8498A
6'
;
config
.
headers
[
'token'
]
=
'
A686102457254CA986639F97DFB4F9F
6'
;
}
else
{
}
else
{
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
}
}
...
...
src/views/cme/credit-manage.vue
浏览文件 @
c373a262
此差异已折叠。
点击以展开。
src/views/cme/credit-send-manage.vue
0 → 100644
浏览文件 @
c373a262
<
template
>
<div
class=
"credit-manage-wrap"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
></bread-crumb>
<div
class=
"list-wrap screenSet"
id=
"screenSet"
>
<div
class=
"header-title"
>
学分发放管理
</div>
<el-form
ref=
"form"
:model=
"searchForm"
label-width=
"100px"
class=
"search-form-wrap"
>
<div
style=
"width: 75%; float:left;"
>
<el-form-item
label=
"项目编号:"
class=
"search-item"
>
<el-input
v-model=
"searchForm.code"
size=
"small"
class=
"form-width"
placeholder=
"请输入项目编号"
></el-input>
</el-form-item>
<el-form-item
label=
"项目名称:"
class=
"search-item"
>
<el-input
v-model=
"searchForm.name"
size=
"small"
class=
"form-width"
placeholder=
"请输入项目名称"
></el-input>
</el-form-item>
<el-form-item
label=
"项目时间:"
class=
"search-item"
>
<el-date-picker
v-model=
"searchForm.date"
type=
"daterange"
range-separator=
"—"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</el-form-item>
</div>
<div
style=
"width: 25%; float: right;"
>
<el-form-item
class=
"btn-list"
>
<el-button
type=
"primary"
size=
"small"
>
查询
</el-button>
<el-button
size=
"small"
>
重置
</el-button>
</el-form-item>
</div>
</el-form>
<el-table
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
></el-table-column>
<el-table-column
align=
"center"
prop=
"code"
label=
"项目编号"
show-overflow-tooltip
></el-table-column>
<el-table-column
align=
"center"
prop=
"name"
label=
"项目名称"
show-overflow-tooltip
></el-table-column>
<el-table-column
align=
"center"
prop=
"startTime"
label=
"项目开始时间"
show-overflow-tooltip
></el-table-column>
<el-table-column
align=
"center"
prop=
"endTime"
label=
"项目结束时间"
show-overflow-tooltip
></el-table-column>
<el-table-column
align=
"center"
prop=
"status"
label=
"项目状态"
show-overflow-tooltip
></el-table-column>
<el-table-column
align=
"center"
label=
"操作"
>
<template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
>
查看申请明细
</el-button>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
</template>
<
script
>
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
BreadCrumb
from
"../../components/breadcrumb.vue"
;
import
*
as
commonUtil
from
"../../utils/utils"
;
import
{
}
from
'@/utils/cme/cmeApi'
export
default
{
data
()
{
return
{
curmbFirst
:
"CME"
,
curmbSecond
:
"学分发放管理"
,
totalRows
:
0
,
searchForm
:
{
code
:
''
,
name
:
''
,
date
:
[],
pageNo
:
1
,
pageSize
:
15
,
},
tableData
:
[
{
code
:
11
,
name
:
'撒地方的阿萨德李开复就j克拉的房客哦佛i额我joie就哦覅我'
,
startTime
:
'20191224'
,
endTime
:
'20201111'
,
status
:
'已结束'
},
],
multipleSelection
:
[],
}
},
components
:
{
BreadCrumb
},
created
()
{
},
mounted
()
{
commonUtil
.
resizeHeight
();
},
methods
:
{
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
}
},
}
</
script
>
<
style
lang=
"scss"
>
.credit-manage-wrap
{
.list-wrap
{
padding
:
10px
;
background
:
#fff
;
.el-button--small
{
font-size
:
14px
;
}
.search-item
{
float
:
left
;
}
.form-width
{
width
:
200px
;
}
.header-title
{
padding
:
10px
12px
;
font-size
:
14px
;
color
:
#606266
;
border-bottom
:
1px
solid
#efefef
;
}
.btn-list
{
float
:
right
;
margin-right
:
30px
;
.el-form-item__content
{
margin-left
:
0
!
important
;
}
}
.search-form-wrap
{
padding
:
25px
0
20px
;
overflow
:
hidden
;
border-bottom
:
1px
dashed
#efefef
;
}
}
}
</
style
>
\ No newline at end of file
src/views/cme/review-access-manage.vue
0 → 100644
浏览文件 @
c373a262
<
template
>
<div
class=
"review-access-wrap"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
></bread-crumb>
<div
class=
"review-access screenSet"
id=
"screenSet"
>
<div
class=
"header-title"
>
审核权限管理
</div>
<el-form
ref=
"form"
:model=
"searchForm"
label-width=
"100px"
class=
"search-form-wrap"
>
<el-form-item
label=
"姓名:"
class=
"search-item"
>
<el-input
v-model=
"searchForm.name"
size=
"small"
class=
"form-width"
placeholder=
"请输入姓名"
></el-input>
</el-form-item>
<el-form-item
label=
"权限:"
class=
"search-item"
>
<el-select
v-model=
"searchForm.access"
placeholder=
"请选择"
size=
"small"
class=
"form-width"
>
<el-option
v-for=
"(item, index) in accessList"
:key=
"index"
:label=
"item.text"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
class=
"btn-list"
>
<el-button
@
click=
"goToSearch"
type=
"primary"
size=
"small"
>
查询
</el-button>
<el-button
@
click=
"goToReset"
size=
"small"
>
重置
</el-button>
</el-form-item>
</el-form>
<div>
<el-button
@
click=
"goToAdd"
type=
"primary"
size=
"small"
class=
"new-add"
>
新增
</el-button>
</div>
<el-table
:data=
"tableData"
border
style=
"width: 100%"
>
<el-table-column
align=
"center"
type=
"index"
label=
"编号"
width=
"80"
></el-table-column>
<el-table-column
align=
"center"
prop=
"name"
label=
"姓名"
></el-table-column>
<el-table-column
align=
"center"
prop=
"access"
label=
"权限"
></el-table-column>
<el-table-column
align=
"center"
label=
"操作"
>
<template
slot-scope=
"scope"
>
<el-button
@
click=
"goToEdit(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button>
<el-button
@
click=
"goToDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
</div>
<!-- 新增/编辑 弹窗 -->
<el-dialog
title=
"新增/编辑权限"
@
close=
"hideAddEditForm"
:visible
.
sync=
"addEditVisible"
:close-on-click-modal=
"false"
width=
"600px"
center
>
<el-form
ref=
"addEditForm"
:rules=
"rules"
:model=
"addEditForm"
label-width=
"120px"
>
<el-form-item
label=
"姓名:"
class=
"search-item"
prop=
"name"
>
<el-select
v-model=
"addEditForm.name"
placeholder=
"请选择"
size=
"small"
class=
"form-width"
>
<el-option
v-for=
"(item, index) in nameList"
:key=
"index"
:label=
"item.text"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"权限:"
class=
"search-item"
prop=
"access"
>
<el-select
v-model=
"addEditForm.access"
placeholder=
"请选择"
size=
"small"
class=
"form-width"
>
<el-option
v-for=
"(item, index) in nameList"
:key=
"index"
:label=
"item.text"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"hideAddEditForm"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm('addEditForm')"
>
确 定
</el-button>
</span>
</el-dialog>
<!-- 删除 弹窗 -->
<el-dialog
title=
"删除"
@
close=
"hideDeleteFrom"
:visible
.
sync=
"deleteVisible"
:close-on-click-modal=
"false"
width=
"600px"
center
>
<p
style=
"text-align: center;"
>
确定删除XXX考试审核人的权限?
</p>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"confirmDelete"
>
确 定
</el-button>
<el-button
@
click=
"hideDeleteFrom"
>
取 消
</el-button>
</span>
</el-dialog>
</div>
</template>
<
script
>
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
BreadCrumb
from
"../../components/breadcrumb.vue"
;
import
*
as
commonUtil
from
"../../utils/utils"
;
import
{
}
from
'@/utils/cme/cmeApi'
export
default
{
data
()
{
return
{
curmbFirst
:
"CME"
,
curmbSecond
:
"审核权限管理"
,
searchForm
:
{
name
:
''
,
access
:
''
,
},
accessList
:
[],
// 权限列表
tableData
:
[
{
name
:
11
,
access
:
88
}
],
addEditVisible
:
false
,
deleteVisible
:
false
,
addEditForm
:
{
name
:
''
,
access
:
''
,
},
nameList
:
[],
rules
:
{
name
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blur'
}],
access
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blur'
}],
}
}
},
components
:
{
BreadCrumb
},
created
()
{
},
mounted
()
{
commonUtil
.
resizeHeight
();
},
methods
:
{
// 搜索
goToSearch
()
{
},
// 重置
goToReset
()
{
},
// 新增
goToAdd
()
{
this
.
addEditVisible
=
true
;
},
// 编辑
goToEdit
(
row
)
{
this
.
addEditVisible
=
true
;
console
.
log
(
'编辑 '
,
row
)
},
goToDelete
()
{
this
.
deleteVisible
=
true
;
},
resetForm
(
formName
)
{
this
.
$refs
[
formName
].
resetFields
();
},
submitForm
(
formName
)
{
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
'submit!'
);
}
else
{
console
.
log
(
'error submit!!'
);
return
false
;
}
});
},
hideAddEditForm
()
{
this
.
addEditVisible
=
false
;
this
.
resetForm
(
'addEditForm'
);
},
confirmDelete
()
{
// 调接口
},
hideDeleteFrom
()
{
this
.
deleteVisible
=
false
;
},
},
}
</
script
>
<
style
lang=
"scss"
>
.review-access-wrap
{
.review-access
{
padding
:
10px
;
background
:
#fff
;
.el-button--small
{
font-size
:
14px
;
}
.header-title
{
padding
:
10px
12px
;
font-size
:
14px
;
color
:
#606266
;
border-bottom
:
1px
solid
#efefef
;
}
.search-form-wrap
{
padding
:
25px
0
20px
;
overflow
:
hidden
;
border-bottom
:
1px
dashed
#efefef
;
}
.search-item
{
float
:
left
;
}
.btn-list
{
float
:
right
;
.el-form-item__content
{
margin-left
:
0
!
important
;
}
}
.new-add
{
float
:
right
;
margin
:
10px
0
30px
;
}
}
}
</
style
>
\ No newline at end of file
src/views/layout/slidebar.vue
浏览文件 @
c373a262
...
@@ -153,7 +153,17 @@
...
@@ -153,7 +153,17 @@
title
:
'学分管理列表'
,
title
:
'学分管理列表'
,
icon
:
'el-icon-document'
,
icon
:
'el-icon-document'
,
index
:
'credit-manage'
index
:
'credit-manage'
}
},
{
title
:
'审核权限管理'
,
icon
:
'el-icon-document'
,
index
:
'review-access-manage'
},
{
title
:
'学分发放管理'
,
icon
:
'el-icon-document'
,
index
:
'credit-send-manage'
},
]
]
},
},
]
]
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录