Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
提交
议题看板
打开侧边栏
jingqi.liu
pica.cloud.web-education-admin
提交
6d58eb4e
提交
6d58eb4e
编写于
7月 23, 2020
作者:
guofeng.chen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加学科页面和职称考页面
上级
edb5358d
变更
11
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
1116 行增加
和
5165 行删除
+1116
-5165
package.json
package.json
+0
-1
router.js
src/router/router.js
+12
-0
utils.js
src/utils-o/utils.js
+3
-2
fetch.js
src/utils/fetch.js
+2
-2
utils.js
src/utils/utils.js
+7
-2
edit-professional-exam.vue
src/views/education/edit-professional-exam.vue
+82
-59
edit-subject.vue
src/views/education/edit-subject.vue
+385
-0
item-manager.vue
src/views/education/item-manager.vue
+16
-1
pica-professional-exam.vue
src/views/education/pica-professional-exam.vue
+0
-5094
subject-manager.vue
src/views/education/subject-manager.vue
+598
-0
slidebar.vue
src/views/layout/slidebar.vue
+11
-4
未找到文件。
package.json
浏览文件 @
6d58eb4e
...
...
@@ -29,7 +29,6 @@
"
jsencrypt
"
:
"
^3.0.0-rc.1
"
,
"
jspdf
"
:
"
^1.5.3
"
,
"
node-sass
"
:
"
^4.9.2
"
,
"
jspdf
"
:
"
^1.5.3
"
,
"
pdfh5
"
:
"
^1.3.9
"
,
"
qrcode
"
:
"
^1.3.3
"
,
"
showdown
"
:
"
^1.6.4
"
,
...
...
src/router/router.js
浏览文件 @
6d58eb4e
...
...
@@ -13,6 +13,9 @@ const editManager = r => require.ensure([], () => r(require('../views/education/
const
itemRole
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/system/item-role.vue'
)),
'item-role'
)
const
msgPush
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/msgpush/msg-push.vue'
)),
'msg-push'
)
const
editCme
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/edit-cme.vue'
)),
'edit-cme'
)
const
editProfessionalExam
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/edit-professional-exam.vue'
)),
'edit-professional-exam'
)
const
subjectManager
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/subject-manager.vue'
)),
'subject-manager'
)
const
editSubject
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/edit-subject.vue'
)),
'edit-subject'
)
import
patientsRouters
from
'./patients'
import
followRouters
from
'./follow'
...
...
@@ -91,6 +94,15 @@ export default [{
},{
path
:
'/edit-cme'
,
component
:
editCme
},{
path
:
'/edit-professional-exam'
,
component
:
editProfessionalExam
},{
path
:
'/subject-manager'
,
component
:
subjectManager
},{
path
:
'/edit-subject'
,
component
:
editSubject
},{
path
:
'/item-component'
,
component
:
itemComponent
...
...
src/utils-o/utils.js
浏览文件 @
6d58eb4e
...
...
@@ -5,7 +5,7 @@ export const containObject = function(...obj1) {
return
obj
}
// 获取页面自适应高度
export
function
resizeHeight
(
cMinusHeight
=
152
,
iMinuxHeight
=
210
,
refHeightId
=
'slidebar-container'
,
export
function
resizeHeight
(
cMinusHeight
=
152
,
iMinuxHeight
=
210
,
refHeightId
=
'slidebar-container'
,
containerHeightId
=
'screenSet'
){
let
containerHeight
=
p_getElm
(
refHeightId
).
getBoundingClientRect
().
height
-
15
p_getElm
(
containerHeightId
).
style
.
height
=
containerHeight
-
cMinusHeight
+
'px'
...
...
@@ -305,7 +305,8 @@ const GetLocalIPAddress = () => {
// // check();
// });
// $.getScript('http://pv.sohu.com/cityjson?ie=utf-8', function () {
return
returnCitySN
[
"cip"
];
// return returnCitySN["cip"];
return
''
;
// });
// return ip;
};
...
...
src/utils/fetch.js
浏览文件 @
6d58eb4e
...
...
@@ -54,9 +54,9 @@ service.interceptors.request.use(config => {
}
if
(
process
.
env
.
BUILD_ENV
==
"development"
){
// 本地开发环境qgit
// console.log('环境变量>>>> ', process.env.BUILD_ENV);
config
.
headers
[
'token'
]
=
'28731437A7EF482ABC5DF4D4DB13B3ED'
;
//
config.headers['token'] = '28731437A7EF482ABC5DF4D4DB13B3ED';
//
config.headers['token'] = localStorage.getItem('storageToken')
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
}
else
{
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
}
...
...
src/utils/utils.js
浏览文件 @
6d58eb4e
...
...
@@ -7,7 +7,7 @@ import axios from 'axios';
// }
// 获取页面自适应高度
export
function
resizeHeight
(
cMinusHeight
=
152
,
iMinuxHeight
=
210
,
refHeightId
=
'slidebar-container'
,
export
function
resizeHeight
(
cMinusHeight
=
152
,
iMinuxHeight
=
210
,
refHeightId
=
'slidebar-container'
,
containerHeightId
=
'screenSet'
){
let
containerHeight
=
p_getElm
(
refHeightId
).
getBoundingClientRect
().
height
-
15
p_getElm
(
containerHeightId
).
style
.
height
=
containerHeight
-
cMinusHeight
+
'px'
...
...
@@ -307,7 +307,8 @@ const GetLocalIPAddress = () => {
// // check();
// });
// $.getScript('http://pv.sohu.com/cityjson?ie=utf-8', function () {
return
returnCitySN
[
"cip"
];
// return returnCitySN["cip"];
return
''
;
// });
// return ip;
};
...
...
@@ -803,3 +804,7 @@ export const setOptionLabel = (self,selfModel,selfEId,selfEName,list,listEId,lis
}
return
;
};
export
function
deepCopy
(
obj
)
{
return
obj
?
JSON
.
parse
(
JSON
.
stringify
(
obj
))
:
obj
;
}
src/views/education/edit-
cme copy
.vue
→
src/views/education/edit-
professional-exam
.vue
浏览文件 @
6d58eb4e
...
...
@@ -89,39 +89,56 @@
</el-form-item>
</el-col>
</el-row>
<el-form-item
label=
"项目时间:"
required
>
<el-col
:span=
"5"
>
<el-form-item
prop=
"projectBegintime"
>
<el-date-picker
v-model=
"formData.projectBegintime"
size=
"small"
type=
"datetime"
placeholder=
"请选择开始时间"
value-format=
"yyyy-MM-dd HH:mm:ss"
:picker-options=
"pickerOptions0"
style=
"width: 100%;"
:disabled=
"peopleLevel == 'L3'"
></el-date-picker>
<el-row>
<el-col
:span=
"13"
>
<el-form-item
label=
"项目时间:"
required
>
<el-col
:span=
"10"
>
<el-form-item
prop=
"projectBegintime"
>
<el-date-picker
v-model=
"formData.projectBegintime"
size=
"small"
type=
"datetime"
placeholder=
"请选择开始时间"
value-format=
"yyyy-MM-dd HH:mm:ss"
:picker-options=
"pickerOptions0"
style=
"width: 100%;"
:disabled=
"peopleLevel == 'L3'"
></el-date-picker>
</el-form-item>
</el-col>
<el-col
class=
"line"
:span=
"2"
>
~
</el-col>
<el-col
:span=
"10"
>
<el-form-item
label
prop=
"projectEndtime"
>
<el-date-picker
v-model=
"formData.projectEndtime"
size=
"small"
type=
"datetime"
placeholder=
"请选择结束时间"
value-format=
"yyyy-MM-dd HH:mm:ss"
:picker-options=
"pickerOptions1"
default-time=
"23:59:59"
style=
"width: 100%;"
:disabled=
"peopleLevel == 'L3'"
></el-date-picker>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
<el-col
class=
"line"
:span=
"1"
>
~
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label
prop=
"projectEndtime"
>
<el-date-picker
v-model=
"formData.projectEndtime"
size=
"small"
type=
"datetime"
placeholder=
"请选择结束时间"
value-format=
"yyyy-MM-dd HH:mm:ss"
:picker-options=
"pickerOptions1"
default-time=
"23:59:59"
style=
"width: 100%;"
:disabled=
"peopleLevel == 'L3'"
></el-date-picker>
<el-col
:span=
"10"
>
<el-form-item
label=
"卡类型:"
prop=
"cardType"
>
<el-select
size=
"small"
v-model=
"formData.cardType"
placeholder=
"请选择卡类型"
>
<el-option
v-for=
"item in cardTypeList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-form-item>
<el-form-item
label=
"项目简介:"
prop=
"projectIntro"
>
</el-row>
<el-form-item
label=
"简介:"
prop=
"projectIntro"
>
<el-col
:span=
"13"
>
<el-input
size=
"small"
...
...
@@ -290,10 +307,9 @@
</el-form-item>
-->
<el-form-item
label=
"项目类型:"
>
<el-radio-group
v-model=
"formData.cmeType"
:disabled=
"projectId && projectStatus != 1"
size=
"small"
>
<el-radio
:label=
"1"
>
自营项目
</el-radio>
<el-radio
:label=
"2"
>
中华医学会二类
</el-radio>
<el-radio
:label=
"3"
>
职称考项目
</el-radio>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
v-show=
"formData.cmeType == 1"
label=
"学分名称:"
prop=
"creditId"
>
<el-col
:span=
"11"
>
<el-select
...
...
@@ -342,7 +358,7 @@
<!--
<span
class=
"word-num"
>
{{
(
formData
.
mustKnow
).
replace
(
/
\s
+/g
,
""
).
length
}}
/250
</span>
-->
</el-col>
</el-form-item>
<el-form-item
label=
"项目结束后:"
>
<el-radio-group
size=
"small"
v-model=
"formData.allowLearn"
:disabled=
"showAllowType()"
>
<el-radio
:label=
"1"
>
允许继续学习(停止发证)
</el-radio>
...
...
@@ -360,7 +376,7 @@
<el-radio
:label=
"1"
>
使用小生态范围
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"人员权限设定"
v-show=
"projectType !=
2
"
>
<el-form-item
label=
"人员权限设定"
v-show=
"projectType !=
5
"
>
<el-radio-group
size=
"small"
v-model=
"formData.authorityType"
...
...
@@ -1085,7 +1101,7 @@
</div>
</div>
<el-form-item
required
label=
"配置证书:"
v-show=
"projectType !=
2
"
>
<el-form-item
required
label=
"配置证书:"
v-show=
"projectType !=
5
"
>
<el-col
:span=
"10"
>
<el-radio-group
class=
"el-configure"
...
...
@@ -1385,11 +1401,12 @@ export default {
//cme新增
projectNo: "",
projectLevel: "",
cardType: "",
projectLeaderId: "",
projectSubject: "",
mustKnow: "",
creditId: "",
cmeType:
1
,
cmeType:
3
,
cmeCredit: '',
examBtnUrl: '',
},
...
...
@@ -1581,6 +1598,7 @@ export default {
uploadType: "",
//cme新增
projectLevelList: [],
cardTypeList: [],
projectLeaderList: [],
creditList: [],
creditTip: "",
...
...
@@ -1762,22 +1780,25 @@ export default {
// projectNo: [
// { required: true, message: "
请输入项目编号
", trigger: "
blur
" },
// ],
projectLevel: [
{ required: true, message: "
请选择项目等级
", trigger: "
change
" }
// projectLevel: [
// { required: true, message: "
请选择项目等级
", trigger: "
change
" }
// ],
cardType: [
{ required: true, message: "
请选择卡类型
", trigger: "
change
" }
],
// projectLeaderId: [
// { required: true, message: "
请选择项目负责人
", trigger: "
change
" },
// ],
projectSubject: [
{ required: true, message: "
请输入项目所属学科
", trigger: "
blur
" }
],
mustKnow: [
{ required: true, message: "
请输入学习须知
", trigger: "
blur
" },
{ min: 1, max: 200, message: "
超出可输入的最大长度
", trigger: "
blur
" }
],
creditId: [
{ required: true, validator: checkCmeCreditId, trigger: "
change
,
blur
" }
],
//
projectSubject: [
//
{ required: true, message: "
请输入项目所属学科
", trigger: "
blur
" }
//
],
//
mustKnow: [
//
{ required: true, message: "
请输入学习须知
", trigger: "
blur
" },
//
{ min: 1, max: 200, message: "
超出可输入的最大长度
", trigger: "
blur
" }
//
],
//
creditId: [
//
{ required: true, validator: checkCmeCreditId, trigger: "
change
,
blur
" }
//
],
cmeCredit: [
{ required: true, validator: checkCmeCredit, trigger: "
blur
" },
// { min: 0.1, max: 100, message: "
请输入
0.1
~
100
数字,可小数
", trigger: "
blur
" }
...
...
@@ -1797,7 +1818,7 @@ export default {
(this.projectId = vm.getUrlSearch(window.location.href, "
projectId
")),
(this.peopleLevel = vm.getUrlSearch(window.location.href, "
level
"));
if (this.projectType ==
2
) {
if (this.projectType ==
5
) {
//CME情况下
this.rules = this.rules2;
this.formData.learnableFlag = 1;
...
...
@@ -1975,6 +1996,7 @@ export default {
//cme新增
projectNo: editData.projectData.projectNo,
projectLevel: editData.projectData.projectLevel,
cardType: editData.projectData.cardType,
projectLeaderId: editData.projectData.projectLeaderId,
projectSubject: editData.projectData.projectSubject,
mustKnow: editData.projectData.mustKnow,
...
...
@@ -1983,7 +2005,7 @@ export default {
cmeCredit: editData.projectData.cmeCredit || '',
examBtnUrl: editData.projectData.examBtnUrl || '',
};
if (vm.projectType ==
2
) {
if (vm.projectType ==
5
) {
vm.formData.learnableFlag = 1;
vm.initCreditTip();
}
...
...
@@ -2113,6 +2135,7 @@ export default {
projectType: this.projectType,
projectNo: this.formData.projectNo,
projectLevel: this.formData.projectLevel,
cardType: this.formData.cardType,
projectLeaderId: this.formData.projectLeaderId,
projectSubject: this.formData.projectSubject,
mustKnow: this.formData.mustKnow,
...
...
@@ -2156,13 +2179,13 @@ export default {
}
//}
//creditId学分id的特殊处理
if (this.projectType ==
2
) {
if (this.projectType ==
5
) {
if (option == "
add
" || option == "
storage
") {
projectModel.creditId = this.formData.creditId;
}
}
if (option == "
edit
" || option == "
storageEdit
") {
if (this.projectType ==
2
) {
if (this.projectType ==
5
) {
projectModel.creditId = this.beforeCreditId;
}
//编辑
...
...
@@ -2505,9 +2528,9 @@ export default {
},
//点击下一步
nextStep
(
moveType
)
{
if
(
this
.
formData
.
cmeType
==
2
)
{
moveType
=
2
;
}
//
if(this.formData.cmeType == 2) {
//
moveType = 2;
//
}
if
(
this
.
active
==
0
)
{
let
formName
=
"formData"
;
let
removeState
=
this
.
submitForm
(
formName
);
...
...
@@ -2538,7 +2561,7 @@ export default {
if
(
res
.
code
==
"000000"
)
{
//移动到第二页 选择范围
// this.operationLast();
if
(
moveType
==
1
&&
vm
.
projectType
==
2
)
{
if
(
moveType
==
1
&&
vm
.
projectType
==
5
)
{
this
.
dialogCme
=
true
;
return
;
}
...
...
@@ -3693,7 +3716,7 @@ export default {
},
showScopeTypeCME
()
{
if
(
this
.
projectStatus
==
""
||
this
.
projectStatus
==
1
)
{
if
(
this
.
peopleLevel
!=
"L3"
&&
this
.
projectType
!=
2
)
{
if
(
this
.
peopleLevel
!=
"L3"
&&
this
.
projectType
!=
5
)
{
return
false
;
}
}
...
...
@@ -3719,7 +3742,7 @@ export default {
this
.
projectStatus
==
1
||
this
.
projectStatus
==
2
)
{
if
(
this
.
peopleLevel
!=
"L3"
&&
this
.
projectType
!=
2
)
{
if
(
this
.
peopleLevel
!=
"L3"
&&
this
.
projectType
!=
5
)
{
return
false
;
}
}
...
...
@@ -3730,7 +3753,7 @@ export default {
if
(
this
.
peopleLevel
==
"L3"
||
this
.
peopleLevel
==
"L0"
)
{
return
true
;
}
if
(
this
.
projectType
==
2
)
{
if
(
this
.
projectType
==
5
)
{
return
true
;
}
return
false
;
...
...
src/views/education/edit-subject.vue
0 → 100644
浏览文件 @
6d58eb4e
<
template
>
<div
class=
"notice-editor-wrap"
id=
"screenSet"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
:curmbThird=
"curmbThird"
:jumPathThird=
"jumPathThird"
></bread-crumb>
<div
class=
"add-content screenSet"
>
<el-form
ref=
"formData"
:model=
"formData"
:rules=
"rules"
label-width=
"160px"
class=
"basic-form"
>
<el-form-item
label=
"所属职称:"
prop=
"titleCode"
>
<el-select
size=
"small"
v-model=
"formData.titleCode"
placeholder=
"请选择职称"
>
<el-option
v-for=
"item in gradeList"
:key=
"item.code"
:label=
"item.name"
:value=
"item.code"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"学科名称:"
prop=
"name"
>
<el-col
:span=
"13"
>
<el-input
size=
"small"
v-model=
"formData.name"
placeholder=
"请输入学科名称"
style=
"width:70%;"
></el-input>
<span
class=
"word-num"
>
{{
(
formData
.
name
).
replace
(
/
\s
+/g
,
""
).
length
}}
/20
</span>
</el-col>
</el-form-item>
<el-row>
<el-col
:span=
"13"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"addSecondList"
>
添加二级分类
</el-button>
</el-col>
</el-row>
<template
v-for=
"(item, index) in formData.titleTestSubjectSecondModelList"
>
<div
class=
"list-block"
:key=
"index"
>
<el-form-item
label=
"二级分类名称:"
:prop=
"`titleTestSubjectSecondModelList.$
{index}.name`"
:rules="secondNameRules">
<el-col
:span=
"13"
>
<el-input
size=
"small"
v-model=
"item.name"
placeholder=
"请输入二级分类名称"
style=
"width:70%;"
></el-input>
<span
class=
"word-num"
>
{{
(
item
.
name
).
replace
(
/
\s
+/g
,
""
).
length
}}
/20
</span>
</el-col>
</el-form-item>
<el-form-item
label=
"二级分类代码:"
:prop=
"`titleTestSubjectSecondModelList.$
{index}.code`"
:rules="secondCodeRules">
<el-col
:span=
"13"
>
<el-input
size=
"small"
v-model=
"item.code"
placeholder=
"请输入二级分类代码"
style=
"width:70%;"
></el-input>
<span
class=
"word-num"
>
{{
(
item
.
code
).
replace
(
/
\s
+/g
,
""
).
length
}}
/8
</span>
</el-col>
</el-form-item>
<el-form-item
label=
"是否已在项目配置课程:"
:prop=
"`titleTestSubjectSecondModelList.$
{index}.openFlag`"
:rules="{ required: true, message: '请选择是否已在项目配置课程', trigger: 'change'}">
<el-col
:span=
"13"
>
<el-radio-group
v-model=
"item.openFlag"
>
<el-radio
:label=
"1"
>
是
</el-radio>
<el-radio
:label=
"0"
>
否
</el-radio>
</el-radio-group>
</el-col>
</el-form-item>
<el-form-item
v-if=
"item.openFlag"
label=
"选择项目:"
:prop=
"`titleTestSubjectSecondModelList.$
{index}.projectId`"
:rules="{ required: true, message: '请选择项目', trigger: 'change'}">
<el-select
size=
"small"
v-model=
"item.projectId"
placeholder=
"请选择项目"
>
<el-option
v-for=
"item in projectList"
:key=
"item.projectId"
:label=
"item.projectName"
:value=
"item.projectId"
></el-option>
</el-select>
</el-form-item>
<el-form-item
v-else
label=
"选择预计上线时间:"
:prop=
"`titleTestSubjectSecondModelList.$
{index}.predictTime`"
:rules="{ required: true, message: '请选择预计上线时间', trigger: 'change'}">
<el-date-picker
v-model=
"item.predictTime"
type=
"month"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"选择月"
>
</el-date-picker>
</el-form-item>
<i
v-show=
"index !== 0"
class=
"el-icon-delete icon-delete"
@
click=
"deleteSecondList(index)"
></i>
</div>
</
template
>
<el-form-item
style=
"margin-top: 30px"
>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
提交
</el-button>
<el-button
@
click=
"onReset"
>
取消
</el-button>
</el-form-item>
</el-form>
</div>
</div>
</template>
<
script
>
import
BreadCrumb
from
"@/components/breadcrumb.vue"
;
import
{
openLoading
,
closeLoading
,
deepCopy
}
from
"@/utils/utils"
;
import
*
as
commonUtil
from
"@/utils/utils"
;
let
checkProjectStr
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
.
indexOf
(
"
\
\"
) != -1) {
//存在
callback(new Error("
请勿输入字符“
\\
”
"));
} else if (value.indexOf("
.
") != -1) {
callback(new Error("
请勿输入字符“
.
”
"));
} else {
callback();
}
};
export default {
components: {
BreadCrumb
},
data() {
return {
curmbFirst: "
教培项目
",
curmbSecond: "
学科管理
",
jumPathThird: '/subject-manager',
curmbThird: '新建学科',
detailInfo: {}, // 接口返回
formData: {
// deleteFlag: 0,
id: 0,
name: '',
seqNo: 0,
status: 2,
titleCode: '',
titleTestSubjectSecondModelList: [
{
code: '',
// deleteFlag: 0,
id: 0,
name: '',
openFlag: 1,
predictTime: '',
seqNo: '',
subjectFirstId: '',
projectId: '',
titleTestSubjectSecondResourceModelList: [{
// deleteFlag: 0,
id: 0,
resourceId: 0,
seqNo: 0,
subjectSecondId: 0,
type: 0
}]
}
],
},
gradeList: [], // 职称列表
projectList: [], // 项目列表
rules: {
titleCode: [
{ required: true, message: "
请输入选择职称
", trigger: "
change
" },
],
name: [
{ required: true, message: "
请输入学科名称
", trigger: "
blur
" },
{ min: 1, max: 20, message: "
输入长度为
1
-
20
的科学名称
", trigger: "
blur
" },
{ validator: checkProjectStr, trigger: "
blur
" }
],
},
secondNameRules: [
{ required: true, message: "
请输入二级分类名称
", trigger: "
blur
" },
{ min: 1, max: 20, message: "
输入长度为
1
-
20
的二级分类名称
", trigger: "
blur
" },
{ validator: checkProjectStr, trigger: "
blur
" }
],
secondCodeRules: [
{ required: true, message: "
请输入二级分类代码
", trigger: "
blur
" },
{ min: 1, max: 8, message: "
输入长度为
1
-
8
的二级分类代码
", trigger: "
blur
" },
]
}
},
created() {
const { id } = this.$route.query;
if (id) {
this.getSubjectDetail(id);
}
this.getGradeList();
this.getProjectList();
},
mounted() {
commonUtil.resizeHeight();
},
methods: {
// 学科详情
getSubjectDetail(id) {
openLoading(this);
this.GET(`portal/titleTest/info/${id}`).then(res => {
closeLoading(this);
if (res.code == "
000000
") {
console.log('_______data_______', res.data);
this.detailInfo = res.data;
this.onReset();
}
});
},
// 获取职称列表
getGradeList() {
openLoading(this);
this.GET("
portal
/
titleTest
/
grade
/
list
").then(res => {
closeLoading(this);
if (res.code == "
000000
") {
const { titleGradeModelList = [] } = res.data;
this.gradeList = titleGradeModelList;
}
});
},
// 获取项目列表
getProjectList() {
openLoading(this);
this.GET("
portal
/
titleTest
/
cme
/
list
").then(res => {
closeLoading(this);
if (res.code == "
000000
") {
this.projectList = res.data;
}
});
},
// 添加二级分类
addSecondList() {
this.formData.titleTestSubjectSecondModelList.push({
code: '',
// deleteFlag: 0,
id: 0,
name: '',
openFlag: 1,
predictTime: '',
seqNo: '',
subjectFirstId: '',
projectId: '',
titleTestSubjectSecondResourceModelList: [{
// deleteFlag: 0,
id: 0,
resourceId: 0,
seqNo: 0,
subjectSecondId: 0,
type: 0
}]
});
},
// 删除二级分类
deleteSecondList(index) {
this.$confirm('确定删除此二级分类吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.formData.titleTestSubjectSecondModelList.splice(index, 1);
}).catch(() => {
});
},
onSubmit() {
this.$refs['formData'].validate((valid) => {
if (!valid) {
return false;
}
const params = deepCopy(this.formData);
for (let item of params.titleTestSubjectSecondModelList) {
let id = item.projectId;
item.titleTestSubjectSecondResourceModelList[0]['resourceId'] = id || 0;
delete item.projectId;
}
// params.createdName = this.$store.state.reservationManage.userName;
openLoading(this);
this.POST("
portal
/
titleTest
/
insertOrUpdate
", params).then(res => {
closeLoading(this);
if (res.code == "
000000
") {
this.$message.success('提交成功')
}
});
});
},
// 重置
onReset() {
if (this.detailInfo.id) {
const result = deepCopy(this.detailInfo);
const modelList = [];
for (let item of result.secondSubjectModelList) {
if (item.resourceModelList && item.resourceModelList[0]) {
item.projectId = item.resourceModelList[0]['resourceId']
item.titleTestSubjectSecondResourceModelList = item.resourceModelList;
delete item.resourceModelList;
} else {
item.projectId = 0;
item.titleTestSubjectSecondResourceModelList = [{
// deleteFlag: 0,
id: 0,
resourceId: 0,
seqNo: 0,
subjectSecondId: 0,
type: 0
}]
}
modelList.push(item);
}
result.titleTestSubjectSecondModelList = modelList;
delete result.secondSubjectModelList;
this.formData = result;
} else {
this.formData = {
// deleteFlag: 0,
id: 0,
name: '',
seqNo: 0,
status: 2,
titleCode: '',
titleTestSubjectSecondModelList: [
{
code: '',
// deleteFlag: 0,
id: 0,
name: '',
openFlag: 1,
predictTime: '',
seqNo: '',
subjectFirstId: '',
projectId: '',
titleTestSubjectSecondResourceModelList: [{
// deleteFlag: 0,
id: 0,
resourceId: 0,
seqNo: 0,
subjectSecondId: 0,
type: 0
}]
}
],
}
}
}
},
}
</
script
>
<
style
lang=
"scss"
scoped
>
.notice-editor-wrap
{
background
:
#fff
;
}
.prot-dialog-tips-1
{
text-align
:
center
!
important
;
}
.add-content
{
padding
:
30px
0
;
}
.list-block
{
position
:
relative
;
padding
:
20px
10px
0px
;
border
:
1px
solid
#cdcdcd
;
border-radius
:
5px
;
margin-top
:
25px
;
}
.icon-delete
{
position
:
absolute
;
right
:
20px
;
top
:
20px
;
font-size
:
30px
;
color
:
red
;
cursor
:
pointer
;
}
</
style
>
src/views/education/item-manager.vue
浏览文件 @
6d58eb4e
...
...
@@ -223,6 +223,7 @@
<el-radio
:label=
"1"
>
普通项目
</el-radio>
<el-radio
:label=
"2"
>
CME项目
</el-radio>
<el-radio
:label=
"3"
>
开放模板
</el-radio>
<el-radio
:label=
"5"
>
职称考试
</el-radio>
</el-radio-group>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"centerDialogVisible = false"
>
取 消
</el-button>
...
...
@@ -465,6 +466,9 @@ export default {
toTemplatePage
(
isPreview
=
0
)
{
this
.
$router
.
push
(
"template-open?projectType=3&isPreview="
+
isPreview
);
},
toProfessionalExamPage
(
isPreview
=
0
)
{
this
.
$router
.
push
(
"edit-professional-exam?projectType=5&isPreview="
+
isPreview
);
},
toEditCustomPage
(
isPreview
=
0
)
{
this
.
setKind
(
0
);
this
.
$router
.
push
(
"edit-custom?projectType=4&isPreview="
+
isPreview
);
...
...
@@ -478,12 +482,14 @@ export default {
},
handleCreateProject
()
{
if
(
this
.
newProjectType
==
1
)
{
// 1 普通项目 2 CME项目
// 1 普通项目 2 CME项目
5 职称考试
this
.
toPage
();
}
else
if
(
this
.
newProjectType
==
2
)
{
this
.
toCmePage
();
}
else
if
(
this
.
newProjectType
==
3
)
{
this
.
toTemplatePage
();
}
else
if
(
this
.
newProjectType
==
5
)
{
this
.
toProfessionalExamPage
();
}
},
...
...
@@ -716,6 +722,15 @@ export default {
projectId
+
"&level="
+
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
+
"&projectStatus="
+
row
.
projectStatus
);
}
else
if
(
row
.
projectType
===
5
)
{
this
.
$router
.
push
(
"edit-professional-exam?projectType=5&projectId="
+
projectId
+
"&level="
+
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
);
}
}
else
if
(
type
===
7
)
{
//提醒审核
...
...
src/views/education/pica-professional-exam.vue
已删除
100644 → 0
浏览文件 @
edb5358d
因为 它太大了无法显示 源差异 。您可以改为
查看blob
。
src/views/education/subject-manager.vue
0 → 100644
浏览文件 @
6d58eb4e
<
template
>
<div
class=
"item-manager-wrap"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
></bread-crumb>
<div
class=
"component-content screenSet"
id=
"screenSet"
>
<div
class=
"header-title"
>
学科管理
</div>
<el-row
:gutter=
"30"
class=
"row"
type=
"flex"
style=
"margin-top: 10px;"
>
<el-form
ref=
"formInline"
:model=
"formInline"
label-width=
"75px"
style=
"min-width:1200px;"
>
<el-col
style=
"width: 300px"
>
<el-form-item
label=
"学科名称:"
>
<el-input
style=
"width: 192px;"
v-model=
"formInline.subjectName"
size=
"small"
placeholder=
"请输入学科名称"
></el-input>
</el-form-item>
</el-col>
<el-col
style=
"width: 600px"
>
<el-form-item
label=
"发布状态:"
>
<el-select
size=
"small"
v-model=
"formInline.status"
placeholder=
"请选择发布状态"
>
<el-option
v-for=
"item in optionStatus"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"4"
style=
"padding:0;text-align:right;padding-right:15px;"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"searchList"
>
查询
</el-button>
<el-button
type=
"default"
size=
"small"
@
click=
"resetForm"
style=
"margin-left:0;"
>
重置
</el-button>
</el-col>
</el-form>
</el-row>
<el-form
:model=
"formInline"
class=
"demo-form-inline"
>
<el-form-item
>
<el-button
class=
"add-button"
size=
"small"
type=
"primary"
@
click=
"openProject()"
>
新建项目
</el-button>
</el-form-item>
</el-form>
<el-table
class=
"item-table"
:data=
"tableData"
style=
"width: 100%"
>
<el-table-column
prop=
"id"
label=
"ID编号"
min-width=
"100"
align=
"center"
></el-table-column>
<el-table-column
prop=
"firstSubjectName"
label=
"学科名称"
align=
"center"
></el-table-column>
<!--
<el-table-column
prop=
"title"
label=
"所属职称"
align=
"center"
></el-table-column>
-->
<el-table-column
prop=
"createdName"
label=
"创建人"
align=
"center"
></el-table-column>
<el-table-column
prop=
"statusText"
label=
"状态"
align=
"center"
></el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
min-width=
"250"
align=
"center"
>
<template
slot-scope=
"scope"
>
<el-button
v-for=
"btn in scope.row.btns"
:key=
"btn.type"
@
click=
"onBtnClick(scope.row, btn)"
type=
"primary"
size=
"small"
>
{{
btn
.
name
}}
</el-button>
</
template
>
</el-table-column>
<div
slot=
"empty"
>
<div
class=
"table-empty"
>
<img
src=
"../../assets/image/no-content1.png"
/>
<p>
没有查询到相关结果
</p>
</div>
</div>
</el-table>
<div
class=
"pagination"
>
<el-pagination
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"formInline.pageNo"
:page-sizes=
"[10, 30, 50, 100]"
:page-size=
"formInline.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"totalRows"
></el-pagination>
</div>
<!-- 初审 弹窗 -->
<el-dialog
title=
"项目初审"
:visible
.
sync=
"firstCheckVisible"
width=
"600px"
:close-on-click-modal=
"false"
center
>
<span
style=
"margin: 0 20px;"
>
{{ `项目《${currentRow.projectName}》初审结果为?` }}
</span>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"handleCheckLeft"
>
通 过
</el-button>
<el-button
@
click=
"handleCheckRight"
>
不通过
</el-button>
</span>
</el-dialog>
<!-- 复审 弹窗 -->
<el-dialog
title=
"项目复审"
:visible
.
sync=
"secondCheckVisible"
width=
"600px"
:close-on-click-modal=
"false"
center
>
<span
style=
"margin: 0 20px;"
>
{{ `项目《${currentRow.projectName}》复审结果为?` }}
</span>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"handleCheckLeft"
>
通 过
</el-button>
<el-button
@
click=
"handleCheckRight"
>
不通过
</el-button>
</span>
</el-dialog>
<!-- 删除 弹窗 -->
<el-dialog
title=
"确认删除"
:show-close=
"false"
:visible
.
sync=
"deleteVisible"
:close-on-click-modal=
"false"
width=
"600px"
center
>
<p
style=
"text-align: center;"
>
删除后将不可撤销,确认删除吗?
</p>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"confirmDelete"
>
删 除
</el-button>
<el-button
type=
"primary"
@
click=
"hideDeleteFrom"
>
取 消
</el-button>
</span>
</el-dialog>
<!-- 修改状态 -->
<el-dialog
:title=
"changeStatusConfig.title"
:show-close=
"false"
:visible
.
sync=
"changeStatusVisible"
:close-on-click-modal=
"false"
width=
"600px"
center
>
<p
style=
"text-align: center;"
>
{{changeStatusConfig.message}}
</p>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"changeStatusVisible=false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"changeStatusPre"
>
确 认
</el-button>
</span>
</el-dialog>
</div>
</div>
</template>
<
script
>
import
BreadCrumb
from
"../../components/breadcrumb.vue"
;
import
{
create
}
from
"domain"
;
import
{
mapGetters
,
mapActions
}
from
"vuex"
;
import
{
returnData
}
from
"../../utils/mock"
;
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
*
as
commonUtil
from
"../../utils/utils"
;
let
vm
=
null
;
export
default
{
components
:
{
BreadCrumb
},
data
()
{
return
{
changeStatusVisible
:
false
,
currentRow
:
null
,
currentType
:
4
,
changeStatusConfig
:
{
title
:
"确认通过该项目模版审核吗?"
,
message
:
"下架后,用户新建项目则无法看到该模版"
},
idValue
:
""
,
curmbFirst
:
"教培项目"
,
curmbSecond
:
"学科管理"
,
firstCheckVisible
:
false
,
// 各种操作的确认弹窗
secondCheckVisible
:
false
,
searchParam
:
{
name
:
""
,
status
:
""
,
pageNo
:
1
,
pageSize
:
10
},
cmeBtnText
:
""
,
currentRow
:
{},
optionStatus
:
[
{
value
:
""
,
label
:
"全部"
},
{
value
:
1
,
label
:
"草稿"
},
{
value
:
2
,
label
:
"未上架"
},
{
value
:
3
,
label
:
"审核中/待审核"
},
{
value
:
4
,
label
:
"已上架"
},
{
value
:
5
,
label
:
"已下架"
},
{
value
:
6
,
label
:
"已拒绝/未上架"
}
],
tableData
:
[],
totalRows
:
0
,
loading
:
true
,
timingTime
:
""
,
currentPage
:
1
,
formInline
:
{
subjectName
:
""
,
status
:
""
,
pageNo
:
1
,
pageSize
:
10
},
idType
:
""
,
deleteVisible
:
false
,
isRoleOfOuter
:
0
};
},
computed
:
{
...
mapGetters
([
"_token"
// "idType",
])
},
created
()
{
vm
=
this
;
vm
.
idType
=
localStorage
.
getItem
(
"storageIdType"
);
//
vm
.
isRoleOfOuter
=
localStorage
.
getItem
(
"isRoleOfOuter"
)
-
0
;
// 内部管理员权限
let
pageSize
=
vm
.
formInline
.
pageSize
;
console
.
log
(
"idType:"
,
vm
.
idType
);
if
(
this
.
$route
.
query
.
pageNum
)
{
this
.
formInline
=
{
...
this
.
$store
.
state
.
common
.
itemManager
};
this
.
formInline
.
pageNo
=
parseInt
(
this
.
$route
.
query
.
pageNum
);
this
.
formInline
.
pageSize
=
pageSize
;
}
this
.
$nextTick
(
function
()
{
this
.
getProjectList
();
});
},
// 挂载到Dom完成时
mounted
:
function
()
{
commonUtil
.
resizeHeight
();
},
methods
:
{
...
mapActions
([
"updateItemManager"
,
"setKind"
]),
hideDeleteFrom
()
{
this
.
deleteVisible
=
false
;
},
// 打开新建页面
openProject
()
{
this
.
$router
.
push
(
"edit-subject"
);
},
toEditCustomPage
(
isPreview
=
0
)
{
this
.
setKind
(
0
);
this
.
$router
.
push
(
"edit-custom?projectType=4&isPreview="
+
isPreview
);
},
hanldeCmeClick
(
row
)
{
this
.
currentRow
=
row
;
let
status
=
row
.
projectStatus
;
// 7.待初审 8.初审未通过 9.待复审 10.复审未通过 11.复审通过
if
(
status
==
7
||
status
==
8
)
{
// 按钮显示 初审
this
.
firstCheckVisible
=
true
;
}
else
if
(
status
==
9
||
status
==
10
)
{
// 按钮显示 复审
this
.
secondCheckVisible
=
true
;
}
else
if
(
status
==
11
)
{
// 按钮显示 发布
this
.
changeStatus
(
row
,
3
);
}
},
handleCheckLeft
()
{
// 左边通过
this
.
goToCheckAuth
(
1
);
},
handleCheckRight
()
{
this
.
goToCheckAuth
(
2
);
},
goToCheckAuth
(
refuse
)
{
let
row
=
this
.
currentRow
;
let
req
=
{};
openLoading
(
vm
);
// refuse = 1 : 同意 refuse = 2:拒绝
vm
.
GET
(
`portal/cme/verifyProject?projectId=
${
row
.
id
}
&refuse=
${
refuse
}
`
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
// debugger;
vm
.
firstCheckVisible
=
false
;
vm
.
secondCheckVisible
=
false
;
if
(
res
.
code
==
"000000"
)
{
vm
.
getProjectList
();
this
.
$message
({
message
:
"审核成功"
,
type
:
"success"
});
}
else
{
this
.
$message
.
error
(
res
.
message
);
}
});
},
searchList
()
{
this
.
formInline
.
pageNo
=
1
;
this
.
getProjectList
();
},
//查询项目列表
getProjectList
()
{
let
req
=
{};
req
=
this
.
formInline
;
openLoading
(
vm
);
vm
.
GET
(
"portal/titleTest/list"
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
const
{
list
=
[],
total
}
=
res
.
data
;
vm
.
tableData
=
list
.
map
(
item
=>
{
let
statusText
=
''
;
let
btns
=
[];
// 设置按钮名称、类型、操作之后的status
let
[
edit
,
publish
,
accept
,
reject
,
outOf
,
del
]
=
[
{
name
:
'编辑'
,
type
:
'edit'
},
{
name
:
'发布'
,
type
:
'publish'
,
next
:
3
},
{
name
:
'通过'
,
type
:
'accept'
,
next
:
4
},
{
name
:
'拒绝'
,
type
:
'reject'
,
next
:
6
},
{
name
:
'下架'
,
type
:
'outOf'
,
next
:
5
},
{
name
:
'删除'
,
type
:
'del'
,
next
:
7
},
];
switch
(
item
.
status
)
{
case
1
:
statusText
=
'草稿'
;
btns
=
[
edit
,
publish
,
del
];
break
;
case
2
:
statusText
=
'未上架'
;
btns
=
[
edit
,
publish
,
del
];
break
;
case
3
:
statusText
=
'审核中/待审核'
;
btns
=
[
accept
,
reject
];
break
;
case
4
:
statusText
=
'已上架'
;
btns
=
[
edit
,
outOf
];
break
;
case
5
:
statusText
=
'已下架'
;
btns
=
[
edit
,
del
];
break
;
case
6
:
statusText
=
'已拒绝/未上架'
;
btns
=
[
edit
,
publish
,
del
];
break
;
default
:
//
}
return
{
...
item
,
statusText
,
btns
,
}
});
//console.log(vm.tableData);
vm
.
totalRows
=
total
;
}
});
},
changeStatusPre
()
{
this
.
changeStatus
(
this
.
currentRow
,
this
.
currentType
);
this
.
changeStatusVisible
=
false
;
},
changeStatusForSP
(
row
,
type
)
{
this
.
currentRow
=
row
;
this
.
currentType
=
type
;
if
(
type
==
4
)
{
this
.
changeStatusConfig
.
title
=
"确认通过该项目审核吗?"
;
this
.
changeStatusConfig
.
message
=
"审核通过后,该项目范围内的学员可在云鹊医App进行培训学习"
;
}
else
if
(
type
==
6
)
{
this
.
changeStatusConfig
.
title
=
"确认要拒绝该项目吗?"
;
this
.
changeStatusConfig
.
message
=
""
;
}
this
.
changeStatusVisible
=
true
;
},
onBtnClick
(
item
,
btn
)
{
if
(
btn
.
type
===
'edit'
)
{
this
.
$router
.
push
(
"edit-subject?projectId="
+
item
.
id
+
"&level="
+
item
.
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
);
}
else
{
this
.
$confirm
(
'此操作将永久删除该文件, 是否继续?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
changeStatus
(
item
.
id
,
btn
.
next
);
}).
catch
(()
=>
{
});
}
},
// 修改状态
changeStatus
(
id
,
status
)
{
this
.
POST
(
"portal/titleTest/changeSubjectStatus"
,
{
id
,
status
}).
then
(
res
=>
{
this
.
$message
.
info
(
res
.
message
);
if
(
res
.
code
==
"000000"
)
{
console
.
log
(
res
);
this
.
getProjectList
();
}
});
},
//改变状态
changeStatus
(
row
,
type
)
{
let
projectId
=
row
.
id
;
let
level
=
row
.
level
;
if
(
type
===
0
)
{
this
.
updateItemManager
(
this
.
formInline
);
//编辑
if
(
row
.
projectType
===
1
)
{
this
.
$router
.
push
(
"edit-manager?projectType=1&projectId="
+
projectId
+
"&level="
+
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
);
}
else
if
(
row
.
projectType
===
2
)
{
this
.
$router
.
push
(
"edit-cme?projectType=2&projectId="
+
projectId
+
"&level="
+
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
);
}
else
if
(
row
.
projectType
===
3
)
{
this
.
$router
.
push
(
"template-open?projectType=3&projectId="
+
projectId
+
"&level="
+
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
);
}
else
if
(
row
.
projectType
===
4
)
{
this
.
$router
.
push
(
"edit-custom?projectType=4&projectId="
+
projectId
+
"&level="
+
level
+
"&pageNum="
+
this
.
formInline
.
pageNo
+
"&projectStatus="
+
row
.
projectStatus
);
}
}
else
if
(
type
===
7
)
{
//提醒审核
let
req
=
{
portalProjectId
:
projectId
,
warnType
:
1
};
vm
.
GET
(
"portal/portalCheck/remindPortalCheck"
,
req
).
then
(
res
=>
{
vm
.
$message
.
info
(
res
.
message
);
vm
.
getProjectList
();
// if (res.code == "000000") {
// console.log(res);
// vm.getProjectList();
// } else {
// vm.$message.info(res.message);
// }
});
}
else
{
let
req
=
{
projectId
:
projectId
,
changeStatus
:
vm
.
getType
(
type
)
};
vm
.
POST
(
"portal/portalInfo/changeStatus"
,
req
).
then
(
res
=>
{
vm
.
$message
.
info
(
res
.
message
);
if
(
res
.
code
==
"000000"
)
{
console
.
log
(
res
);
vm
.
getProjectList
();
//changeStatus之后remindPortalCheck
if
(
type
==
4
||
type
==
6
||
type
==
8
)
{
//发送消息
let
warnType
=
""
;
if
(
type
==
4
)
{
warnType
=
3
;
}
else
if
(
type
==
6
)
{
warnType
=
4
;
}
else
if
(
type
==
8
)
{
warnType
=
5
;
}
let
req
=
{
portalProjectId
:
projectId
,
warnType
:
warnType
};
vm
.
GET
(
"portal/portalCheck/remindPortalCheck"
,
req
).
then
(
res
=>
{
vm
.
$message
.
info
(
res
.
message
);
if
(
res
.
code
==
"000000"
)
{
vm
.
getProjectList
();
}
});
}
}
});
}
},
getType
(
value
)
{
let
data
=
value
;
if
(
data
==
8
)
{
data
=
2
;
}
return
data
;
},
delItem
(
row
)
{
this
.
deleteVisible
=
true
;
this
.
currentRow
=
row
;
},
hideDeleteFrom
()
{
this
.
deleteVisible
=
false
;
},
// 删除项目
confirmDelete
()
{
let
req
=
{};
vm
.
DELETE
(
"portal/portalInfo/delete/"
+
this
.
currentRow
.
id
,
req
).
then
(
res
=>
{
vm
.
$message
.
info
(
res
.
message
);
if
(
res
.
code
==
"000000"
)
{
this
.
deleteVisible
=
false
;
vm
.
getProjectList
();
}
}
);
},
// 重置表单
resetForm
()
{
vm
.
formInline
=
Object
.
assign
(
{},
{
subjectName
:
""
,
status
:
""
,
pageNo
:
1
,
pageSize
:
10
,
duringTime
:
""
}
);
vm
.
getProjectList
();
},
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
this
.
formInline
.
pageSize
=
val
;
this
.
handleCurrentChange
(
this
.
searchParam
.
pageNo
);
},
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
this
.
formInline
.
pageNo
=
val
;
this
.
getProjectList
();
//需要判断是否检索
// if (!this.flag) {
// this.currentChangePage(this.tableDataEnd);
// } else {
// this.currentChangePage(this.filterTableDataEnd);
// }
},
//组件自带监控当前页码
currentChangePage
(
list
)
{
let
from
=
(
this
.
currentPage
-
1
)
*
this
.
pageSize
;
let
to
=
this
.
currentPage
*
this
.
pageSize
;
this
.
tableDataEnd
=
[];
for
(;
from
<
to
;
from
++
)
{
if
(
list
[
from
])
{
this
.
tableDataEnd
.
push
(
list
[
from
]);
}
}
},
}
};
</
script
>
<
style
lang=
"scss"
>
.item-table
.el-button
{
margin
:
5px
0
;
}
.item-manager-wrap
{
.component-content
{
background
:
#fff
;
padding
:
10px
;
.header-title
{
padding
:
10px
12px
;
font-size
:
12px
;
color
:
#449284
;
border-bottom
:
1px
solid
#efefef
;
}
.demo-form-inline
{
margin-right
:
20px
;
.add-button
{
float
:
right
;
margin-right
:
10px
;
}
}
.table-empty
{
img
{
width
:
100px
;
}
p
{
margin-top
:
-50px
;
}
}
}
}
.el-tooltip__popper
{
max-width
:
50%
;
}
</
style
>
src/views/layout/slidebar.vue
浏览文件 @
6d58eb4e
...
...
@@ -191,7 +191,7 @@
// index: 'credit-send-manage'
// },
// ]
// },
// },
],
outsideItems
:
[
// 外部用户 路由
{
...
...
@@ -361,7 +361,7 @@
}
]
}
const
message
=
{
title
:
'消息推送'
,
icon
:
'el-icon-message'
,
...
...
@@ -410,6 +410,12 @@
index
:
'advert-simple-manage'
};
const
subjectManager
=
{
title
:
'学科管理'
,
icon
:
'el-icon-setting'
,
index
:
'subject-manager'
};
const
eduRole
=
{
title
:
'角色权限'
,
icon
:
'el-icon-menu'
,
...
...
@@ -441,7 +447,7 @@
title
:
'学分发放管理'
,
icon
:
'el-icon-document'
,
index
:
'credit-send-manage'
},
},
// {
// title: '外部资源管理',
// icon: 'el-icon-document',
...
...
@@ -469,7 +475,8 @@
]
};
vm
.
items
[
1
].
subs
.
push
(
subjectManager
);
vm
.
items
[
1
].
subs
.
push
(
itemComponent
);
vm
.
items
[
1
].
subs
.
push
(
templateManager
);
vm
.
items
[
1
].
subs
.
push
(
followSider
);
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录