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
提交
fe2f1e66
提交
fe2f1e66
编写于
10月 25, 2019
作者:
guangjun.yang
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'dev-coop-phase2.3-1012' into release
上级
09b68b6a
46848ca3
变更
10
显示空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
614 行增加
和
187 行删除
+614
-187
router.js
src/router/router.js
+5
-0
common.scss
src/style/common.scss
+1
-1
env-config.js
src/utils/env-config.js
+2
-1
fetch.js
src/utils/fetch.js
+1
-2
edit-entry.vue
src/views/education/edit-entry.vue
+381
-0
edit-manager.vue
src/views/education/edit-manager.vue
+89
-183
entry-manager.vue
src/views/education/entry-manager.vue
+113
-0
item-manager.vue
src/views/education/item-manager.vue
+3
-0
item-role.vue
src/views/system/item-role.vue
+16
-0
role.vue
src/views/system/role.vue
+3
-0
未找到文件。
src/router/router.js
浏览文件 @
fe2f1e66
...
@@ -23,6 +23,7 @@ const dataAlignment = r => require.ensure([], () => r(require('../views/learning
...
@@ -23,6 +23,7 @@ const dataAlignment = r => require.ensure([], () => r(require('../views/learning
const
exportDownload
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/learning/export-download.vue'
)),
'export-download'
)
const
exportDownload
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/learning/export-download.vue'
)),
'export-download'
)
const
itemShield
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/item-shield.vue'
)),
'item-shield'
)
const
itemShield
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/item-shield.vue'
)),
'item-shield'
)
const
entryManager
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/education/entry-manager.vue'
)),
'entry-manager'
)
export
default
[{
export
default
[{
path
:
'/'
,
path
:
'/'
,
...
@@ -87,6 +88,10 @@ export default [{
...
@@ -87,6 +88,10 @@ export default [{
path
:
'/item-shield'
,
path
:
'/item-shield'
,
component
:
itemShield
,
component
:
itemShield
,
},
},
{
path
:
'/entry-manager'
,
component
:
entryManager
,
},
{
{
path
:
'/msg-push'
,
path
:
'/msg-push'
,
component
:
msgPush
,
component
:
msgPush
,
...
...
src/style/common.scss
浏览文件 @
fe2f1e66
...
@@ -253,4 +253,4 @@ html,body{
...
@@ -253,4 +253,4 @@ html,body{
font-size
:
12px
;
font-size
:
12px
;
color
:
#FF9A4B
;
color
:
#FF9A4B
;
}
}
}
}
src/utils/env-config.js
浏览文件 @
fe2f1e66
...
@@ -29,7 +29,8 @@ export const envConfig = {
...
@@ -29,7 +29,8 @@ export const envConfig = {
// reportUrl: 'http://10.177.15.150:10401/',
// reportUrl: 'http://10.177.15.150:10401/',
// reportUrl: 'http://192.168.140.13:10401/',
// reportUrl: 'http://192.168.140.13:10401/',
// reportUrl: 'https://dev-sc-report.yunqueyi.com/',
// reportUrl: 'https://dev-sc-report.yunqueyi.com/',
reportUrl
:
'https://uat-sc-report.yunqueyi.com/'
,
reportUrl
:
'https://dev-sc-report.yunqueyi.com/'
,
// reportUrl: 'https://test1-sc-report.yunqueyi.com/',
// reportUrl: 'https://uat-sc-report.yunqueyi.com/',
// reportUrl: 'https://uat-sc-report.yunqueyi.com/',
excelUrl
:
'https://uat-file.yunqueyi.com/File/template/portal/'
,
excelUrl
:
'https://uat-file.yunqueyi.com/File/template/portal/'
,
itemFileUrl
:
'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/'
,
itemFileUrl
:
'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/'
,
...
...
src/utils/fetch.js
浏览文件 @
fe2f1e66
...
@@ -56,8 +56,7 @@ service.interceptors.request.use(config => {
...
@@ -56,8 +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'] = 'E5F82EDD958941C29BCDDDED410ACDB3';
config
.
headers
[
'token'
]
=
'2E46B77D801C479DBA1C550CE70D348F'
;
config
.
headers
[
'token'
]
=
'04BEB8CAF7DE4E1AB861FC487E7ADAC8'
;
}
else
{
}
else
{
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
}
}
...
...
src/views/education/edit-entry.vue
0 → 100644
浏览文件 @
fe2f1e66
<
template
>
<div
class=
"edit-entry-wrap"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
:curmbThird=
"curmbThird"
></bread-crumb>
<div
class=
"component-content screenSet"
id=
"screenSet"
>
<el-form
ref=
"formData"
:model=
"formData"
:rules=
"rules"
label-width=
"150px"
class=
"basic-form"
>
<el-form-item
label=
"入口名称:"
prop=
"entryName"
>
<el-col
:span=
"13"
>
<el-input
size=
"small"
v-model=
"formData.entryName"
placeholder=
"请输入名称"
style=
"width:83%;"
:disabled=
"peopleLevel == 'L3'"
></el-input>
<span
class=
"word-num"
>
{{
(
formData
.
entryName
).
replace
(
/
\s
+/g
,
""
).
length
}}
/24
</span>
</el-col>
</el-form-item>
<el-form-item
label=
"发起机构:"
prop=
"organizationName"
>
<el-col
:span=
"13"
>
<el-input
size=
"small"
v-model=
"formData.organizationName"
placeholder=
"请输入发起机构名称"
style=
"width:83%;"
:disabled=
"peopleLevel == 'L3'"
@
input=
"changeOrganizationName"
@
blur=
"blurName"
@
focus=
"focusName"
></el-input>
<span
class=
"word-num"
>
{{
(
formData
.
organizationName
).
replace
(
/
\s
+/g
,
""
).
length
}}
/12
</span>
</el-col>
<el-popover
class=
"popover-content"
placement=
"bottom"
:content=
"organizationContent"
v-model=
"visibleName"
@
click=
"checkDefault"
>
<p
@
click=
"checkDefault"
>
我的机构:
{{
organizationContent
}}
</p>
</el-popover>
</el-form-item>
<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-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-form-item>
</el-col>
</el-form-item>
<el-form-item
label=
"项目简介:"
prop=
"projectIntro"
>
<el-col
:span=
"13"
>
<el-input
size=
"small"
type=
"textarea"
:autosize=
"
{ minRows: 5}"
placeholder="请输入项目简介"
v-model="formData.projectIntro"
style="width:83%;"
:disabled="peopleLevel == 'L3'"
>
</el-input>
<span
class=
"word-num"
>
{{
(
formData
.
projectIntro
).
replace
(
/
\s
+/g
,
""
).
length
}}
/200
</span>
</el-col>
</el-form-item>
<div
class=
"basic-item-icon"
>
<span
class=
"require"
>
*
</span>
<el-form-item
label=
"列表图片:"
>
<el-upload
v-model=
"formData.attachmentUrl1"
class=
"bg-uploader"
action=
"#"
:show-file-list=
"false"
:before-upload=
"beforeUploadListPic"
:disabled=
"peopleLevel == 'L3'"
>
<img
v-if=
"formData.attachmentUrl1"
@
mouseover
.
stop=
"imgMouseOver=true && peopleLevel != 'L3'"
:src=
"formData.attachmentUrl1"
class=
"bg-img"
/>
<img
v-if=
"!formData.attachmentUrl1"
class=
"bg-img"
src=
"../../assets/image/small.png"
/>
<div
class=
"img-delete"
v-show=
"imgMouseOver"
@
click
.
stop=
"deleteImg(1)"
@
mouseout
.
stop=
"imgMouseOver=false"
>
<i
class=
"el-icon-delete"
></i>
</div>
<div
class=
"limit-text"
>
<p>
尺寸:230*172
</p>
<p>
限制大小: 500Kb
</p>
<p>
支持.jpg,.png格式
</p>
</div>
</el-upload>
</el-form-item>
<p
class=
"upload-message"
v-if=
"uploadImgMessage"
>
请选择列表图片
</p>
</div>
<el-form-item
label=
"封面类型:"
>
<el-radio-group
size=
"small"
v-model=
"formData.type"
@
change=
"changeCover"
:disabled=
"peopleLevel == 'L3'"
>
<el-radio
:label=
"1"
>
图片
</el-radio>
<el-radio
:label=
"2"
>
视频
</el-radio>
</el-radio-group>
</el-form-item>
<div
class=
"basic-item-icon"
>
<span
class=
"require"
>
*
</span>
<el-form-item
label=
"封面文件:"
>
<el-upload
v-model=
"formData.attachmentUrl2"
class=
"bg-uploader"
action=
"#"
:show-file-list=
"false"
:before-upload=
"beforeUploadCoverPic"
:disabled=
"peopleLevel == 'L3'"
>
<img
v-if=
"formData.type == 1 && formData.attachmentUrl2"
:src=
"formData.attachmentUrl2"
@
mouseover
.
stop=
"imgMouseOver2=true && peopleLevel != 'L3'"
class=
"bg-img"
/>
<video
v-if=
"formData.type == 2 && formData.attachmentUrl2"
width=
"100"
controls
class=
"bg-video"
@
mouseover
.
stop=
"imgMouseOver2=true && peopleLevel != 'L3'"
>
<source
:src=
"formData.attachmentUrl2"
type=
"video/mp4"
/>
浏览器不支持mp4
</video>
<img
v-if=
"!formData.attachmentUrl2"
class=
"bg-img"
src=
"../../assets/image/small.png"
/>
<div
class=
"img-delete"
v-show=
"imgMouseOver2"
@
click
.
stop=
"deleteImg(2)"
@
mouseout
.
stop=
"imgMouseOver2=false"
>
<i
class=
"el-icon-delete"
></i>
</div>
<div
v-show=
"formData.type == 1"
class=
"limit-text"
>
<p>
尺寸:750*420
</p>
<p>
限制大小: 2.0 Mb
</p>
<p>
支持.jpg,.png格式
</p>
</div>
<div
v-show=
"formData.type == 2"
class=
"limit-text"
>
<p></p>
<p>
限制大小: 500 Mb
</p>
<p>
支持.mp4
</p>
</div>
</el-upload>
</el-form-item>
<p
class=
"upload-message"
v-if=
"uploadImgMessage2"
>
请选择封面
</p>
</div>
</el-form>
</div>
</div>
</
template
>
<
script
>
import
BreadCrumb
from
"../../components/breadcrumb.vue"
;
import
{
doUpload
,
getFilePath
}
from
"../../utils/qiniu-util"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
*
as
commonUtil
from
"../../utils/utils"
;
import
*
as
operationData
from
"../../utils/operation"
;
import
Sortable
from
"sortablejs"
;
let
vm
=
null
;
export
default
{
components
:
{
BreadCrumb
},
data
()
{
return
{
curmbFirst
:
"教培项目"
,
curmbSecond
:
"项目组件"
,
curmbThird
:
"新建入口"
,
formData
:
{
entryName
:
""
,
projectBegintime
:
""
,
projectEndtime
:
""
,
projectIntro
:
""
,
type
:
1
,
attachmentUrl1
:
""
,
attachmentUrl2
:
""
,
},
pickerOptions0
:
{
disabledDate
:
time
=>
{
if
(
this
.
formData
.
projectEndtime
!=
""
&&
this
.
formData
.
projectEndtime
!=
null
)
{
return
(
time
.
getTime
()
>
new
Date
(
this
.
formData
.
projectEndtime
).
getTime
()
);
}
}
},
pickerOptions1
:
{
disabledDate
:
time
=>
{
return
(
time
.
getTime
()
<
new
Date
(
this
.
formData
.
projectBegintime
).
getTime
()
);
//减去一天的时间代表可以选择同一天;
}
},
rules
:
{
projectName
:
[
{
required
:
true
,
message
:
"请输入项目名称"
,
trigger
:
"blur"
},
{
min
:
2
,
max
:
24
,
message
:
"输入长度为2-24的内容,可包含中英文、数字及特殊符号"
,
trigger
:
"blur"
},
{
validator
:
checkProjectStr
,
trigger
:
'blur'
}
],
organizationName
:
[
{
required
:
true
,
message
:
"请填写发起机构名称"
,
trigger
:
"blur"
},
{
min
:
1
,
max
:
12
,
message
:
"超过12个最大字数限制,请精简字数或使用简称"
,
trigger
:
"blur"
}
],
projectBegintime
:
[
{
required
:
true
,
message
:
"请选择时间"
,
trigger
:
"change"
}
],
projectEndtime
:
[
{
required
:
true
,
message
:
"请选择时间"
,
trigger
:
"change"
}
],
type
:
[
{
type
:
"array"
,
required
:
true
,
message
:
"请至少选择一个活动性质"
,
trigger
:
"change"
}
],
projectIntro
:
[
{
required
:
true
,
message
:
"请填写项目简介"
,
trigger
:
"blur"
},
{
min
:
1
,
max
:
200
,
message
:
"超出可输入的最大长度"
,
trigger
:
"blur"
}
],
attachmentUrl1
:
[
{
required
:
true
,
message
:
"请选择列表图片"
,
trigger
:
"blur"
}
],
attachmentUrl2
:
[
{
required
:
true
,
message
:
"请选择封面"
,
trigger
:
"blur"
}
]
}
},
},
computed
:
{
...
mapGetters
([
"_token"
])
},
created
()
{
vm
=
this
;
},
mounted
:
function
()
{
commonUtil
.
resizeHeight
();
},
methods
:
{
},
};
</
script
>
<
style
lang=
"scss"
>
.edit-entry-wrap
{
.component-content
{
background
:
#fff
;
padding
:
10px
;
.basic-form
{
.basic-item-icon
{
position
:
relative
;
.require
{
position
:
absolute
;
left
:
67px
;
top
:
11px
;
color
:
#f56c6c
;
}
.upload-message
{
position
:
absolute
;
left
:
160px
;
top
:
105px
;
font-size
:
12px
;
color
:
#f56c6c
;
}
.img-delete
{
position
:
absolute
;
left
:
0px
;
top
:
0px
;
width
:
84px
;
height
:
100px
;
background
:
#000
;
opacity
:
0
.7
;
z-index
:
999
;
i
{
color
:
#fff
;
margin-top
:
39px
;
margin-left
:
0px
;
}
}
}
.word-num
{
font-size
:
12px
;
color
:
#999
;
padding-top
:
5px
;
}
.line
{
margin-left
:
10px
;
width
:
20px
;
}
.bg-uploader
{
img
{
float
:
left
;
}
.bg-img
{
width
:
84px
;
height
:
100px
;
}
.bg-video
{
float
:
left
;
width
:
84px
;
height
:
100px
;
}
.limit-text
{
float
:
left
;
margin-left
:
10px
;
margin-top
:
-10px
;
p
{
font-size
:
12px
;
color
:
#999
;
}
}
}
}
}
}
src/views/education/edit-manager.vue
浏览文件 @
fe2f1e66
...
@@ -203,6 +203,26 @@
...
@@ -203,6 +203,26 @@
<el-radio
:label=
"1"
>
使用小生态范围
</el-radio>
<el-radio
:label=
"1"
>
使用小生态范围
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"项目范围外可见"
>
<el-radio-group
size=
"small"
v-model=
"formData.visibleFlag"
:disabled=
"showNoticeType()"
>
<el-radio
:label=
"1"
>
允许项目范围外人员可见
</el-radio>
<el-radio
:label=
"2"
>
不允许项目范围外人员可见
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
v-if=
"formData.visibleFlag != 2"
label=
"项目范围外可学"
>
<el-radio-group
size=
"small"
v-model=
"formData.learnableFlag"
:disabled=
"showNoticeType()"
>
<el-radio
:label=
"1"
>
允许项目范围外人员可学(不发证)
</el-radio>
<el-radio
:label=
"2"
>
不允许项目范围外人员可学
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"项目上线通知"
>
<el-form-item
label=
"项目上线通知"
>
<el-radio-group
<el-radio-group
size=
"small"
size=
"small"
...
@@ -703,6 +723,7 @@
...
@@ -703,6 +723,7 @@
>
>
<el-form-item
label=
"选择组件:"
prop=
"component"
>
<el-form-item
label=
"选择组件:"
prop=
"component"
>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<!-- :disabled="projectStatus == 3 || projectStatus == 4 || projectStatus == 5 || projectStatus == 6" -->
<el-select
<el-select
v-model=
"formComponent.component"
v-model=
"formComponent.component"
multiple
multiple
...
@@ -710,22 +731,23 @@
...
@@ -710,22 +731,23 @@
style=
"width: 350px"
style=
"width: 350px"
placeholder=
"请选择组件"
placeholder=
"请选择组件"
@
change=
"changeValue"
@
change=
"changeValue"
:disabled=
"projectStatus == 3 || projectStatus == 4 || projectStatus == 5 || projectStatus == 6"
>
>
<el-option
<el-option
v-for=
"item in optionsComponent"
v-for=
"item in optionsComponent"
:key=
"item.value"
:key=
"item.value"
:label=
"item.label"
:label=
"item.label"
:value=
"item.value"
:value=
"item.value"
:disabled=
"item.disabled"
></el-option>
></el-option>
</el-select>
</el-select>
</el-col>
</el-col>
</el-form-item>
</el-form-item>
<el-form-item
label=
"已选择:"
class=
"check-component"
>
<el-form-item
label=
"已选择:"
class=
"check-component"
>
<el-col
:span=
"20"
>
<el-col
:span=
"20"
class=
"tags-list"
>
<el-tag
<el-tag
class =
"tags-component"
class =
"tags-component"
v-for=
"tag in tagsComponent"
v-for=
"tag in tagsComponent"
v-bind:class=
"{'tags-component-online': tag.disabled === true }"
:key=
"tag.value"
:key=
"tag.value"
closable
closable
:type=
"tag.type"
:type=
"tag.type"
...
@@ -883,6 +905,8 @@ export default {
...
@@ -883,6 +905,8 @@ export default {
organizationName: '',
organizationName: '',
sendOption: 1,
sendOption: 1,
receiveOption: 1,
receiveOption: 1,
visibleFlag: 1,
learnableFlag: 2,
},
},
pickerOptions0: {
pickerOptions0: {
disabledDate: time => {
disabledDate: time => {
...
@@ -1241,6 +1265,8 @@ export default {
...
@@ -1241,6 +1265,8 @@ export default {
notifyId: editData.notifyData.notifyId,
notifyId: editData.notifyData.notifyId,
sendOption: editData.notifyData.sendOption,
sendOption: editData.notifyData.sendOption,
receiveOption: editData.notifyData.receiveOption,
receiveOption: editData.notifyData.receiveOption,
visibleFlag: editData.projectData.visibleFlag,
learnableFlag: editData.projectData.learnableFlag,
};
};
this.organizationContent = editData.projectData.creatorOrganizationName;
this.organizationContent = editData.projectData.creatorOrganizationName;
if (editData.attachmentData.length > 2) {
if (editData.attachmentData.length > 2) {
...
@@ -1294,10 +1320,11 @@ export default {
...
@@ -1294,10 +1320,11 @@ export default {
closeLoading(vm);
closeLoading(vm);
if (res.code == "
000000
" && res.data.projectData != null) {
if (res.code == "
000000
" && res.data.projectData != null) {
let editData = res.data;
let editData = res.data;
this.status4Flag = res.data.projectData.status4Flag;
this.setEditData(editData);
this.setEditData(editData);
this.idTypeProject = res.data.projectData.idType;
this.idTypeProject = res.data.projectData.idType;
this.projectStatus = res.data.projectData.projectStatus;
this.projectStatus = res.data.projectData.projectStatus;
this.status4Flag = res.data.projectData.status4Flag;
//
this.status4Flag = res.data.projectData.status4Flag;
if (this.projectStatus == 1) {
if (this.projectStatus == 1) {
this.showStorage = true;
this.showStorage = true;
}
}
...
@@ -1321,6 +1348,8 @@ export default {
...
@@ -1321,6 +1348,8 @@ export default {
projectIntro: this.formData.projectIntro,
projectIntro: this.formData.projectIntro,
scopeType: this.formData.scopeType,
scopeType: this.formData.scopeType,
organizationName: this.formData.organizationName,
organizationName: this.formData.organizationName,
visibleFlag: this.formData.visibleFlag,
learnableFlag: this.formData.learnableFlag,
};
};
let attachmentModel = [
let attachmentModel = [
{
{
...
@@ -1435,7 +1464,11 @@ export default {
...
@@ -1435,7 +1464,11 @@ export default {
//查询组件证书信息
//查询组件证书信息
getComponentInfo() {
getComponentInfo() {
let param = {};
let param = {};
vm.GET("
portal
/
portalInfo
/
getComponentInfo
", param).then(res => {
let projectIdValue = vm.projectId;
if(projectIdValue == null) {
projectIdValue = 0;
}
vm.GET("
portal
/
portalInfo
/
getComponentInfo
/
" + projectIdValue, param).then(res => {
if (res.code == "
000000
") {
if (res.code == "
000000
") {
//console.log(res);
//console.log(res);
let componentList = res.data.componentList;
let componentList = res.data.componentList;
...
@@ -1525,7 +1558,9 @@ export default {
...
@@ -1525,7 +1558,9 @@ export default {
this.getDepartment();
this.getDepartment();
} else if (active == 2) {
} else if (active == 2) {
this.stepData = [false, false, true];
this.stepData = [false, false, true];
this.tagDrop();
setTimeout(function(){
vm.tagDrop();
},800);
}
}
},
},
//点击暂存
//点击暂存
...
@@ -2517,12 +2552,9 @@ export default {
...
@@ -2517,12 +2552,9 @@ export default {
//机构搜索
//机构搜索
getOrganizationChoose
()
{
getOrganizationChoose
()
{
// console.log('formOrganization',this.formOrganization);
// console.log('formOrganization',this.formOrganization);
// let lastNum = this.formOrganization.administrativeIdList.length - 1
// let administrativeIdItem = this.formOrganization.administrativeIdList[lastNum];
let
administrativeIdItem
=
operationData
.
setAdministrativeId
(
this
.
formOrganization
.
administrativeIdList
);
let
administrativeIdItem
=
operationData
.
setAdministrativeId
(
this
.
formOrganization
.
administrativeIdList
);
let
req
=
{
let
req
=
{
projectId
:
this
.
projectId
,
projectId
:
this
.
projectId
,
// setKind: this.getKind("administrative"),
administrativeId
:
administrativeIdItem
,
administrativeId
:
administrativeIdItem
,
hospitalLevel
:
this
.
formOrganization
.
level
,
hospitalLevel
:
this
.
formOrganization
.
level
,
hospitalName
:
this
.
formOrganization
.
name
,
hospitalName
:
this
.
formOrganization
.
name
,
...
@@ -2530,9 +2562,6 @@ export default {
...
@@ -2530,9 +2562,6 @@ export default {
pageSize
:
this
.
formOrganization
.
pageSize
,
pageSize
:
this
.
formOrganization
.
pageSize
,
scope
:
this
.
getScope
(
"administrative"
),
scope
:
this
.
getScope
(
"administrative"
),
};
};
// if (req.setKind == 3) {
// req.scope = this.getScope("administrative");
// }
openLoading
(
vm
);
openLoading
(
vm
);
// vm.POST("portal/scope/v1/organization/choose", req).then(res => {
// vm.POST("portal/scope/v1/organization/choose", req).then(res => {
vm
.
POST
(
"portal/new/scope/org/v1/organization/search"
,
req
).
then
(
res
=>
{
vm
.
POST
(
"portal/new/scope/org/v1/organization/search"
,
req
).
then
(
res
=>
{
...
@@ -2543,28 +2572,6 @@ export default {
...
@@ -2543,28 +2572,6 @@ export default {
this
.
totalOrganization
=
res
.
data
.
total
;
this
.
totalOrganization
=
res
.
data
.
total
;
vm
.
initOrganizationStatus
();
vm
.
initOrganizationStatus
();
// 教培v2.2.0二期不需要前端记录状态
// let idList = operationData.getIdList(this.tableOrganization);
// let intersect = operationData.getIntersect(
// idList,
// this.changedOrganization
// );
// this.lookedOrganization = operationData.getUnion(
// this.lookedOrganization,
// idList
// );
// //console.log('全部看过的:',this.lookedOrganization);
// if (vm.checkTableState.multipleOrganization === "") {
// this.initOrganizationChoose();
// } else if (vm.checkTableState.multipleOrganization === true) {
// let intersect2 = operationData.getIntersect(
// idList,
// this.changedOrganization
// );
// if (intersect2.length == 0) {
// this.$refs.multipleOrganization.toggleAllSelection();
// }
// }
}
else
{
}
else
{
vm
.
$message
(
res
.
message
);
vm
.
$message
(
res
.
message
);
}
}
...
@@ -2577,14 +2584,10 @@ export default {
...
@@ -2577,14 +2584,10 @@ export default {
administrativeId
:
''
,
administrativeId
:
''
,
hospitalLevel
:
''
,
hospitalLevel
:
''
,
hospitalLevel
:
''
,
hospitalLevel
:
''
,
// setKind: this.getKind("administrative"),
scope
:
this
.
getScope
(
"administrative"
),
scope
:
this
.
getScope
(
"administrative"
),
pageNum
:
this
.
formOrganization
.
pageNum
,
pageNum
:
this
.
formOrganization
.
pageNum
,
pageSize
:
this
.
formOrganization
.
pageSize
pageSize
:
this
.
formOrganization
.
pageSize
};
};
// if (req.setKind == 3) {
// req.scope = this.getScope("administrative");
// }
openLoading
(
vm
);
openLoading
(
vm
);
// vm.POST("portal/scope/v1/organization", req).then(res => {
// vm.POST("portal/scope/v1/organization", req).then(res => {
vm
.
POST
(
"portal/new/scope/org/v1/organization"
,
req
).
then
(
res
=>
{
vm
.
POST
(
"portal/new/scope/org/v1/organization"
,
req
).
then
(
res
=>
{
...
@@ -2594,32 +2597,6 @@ export default {
...
@@ -2594,32 +2597,6 @@ export default {
this
.
totalOrganization
=
res
.
data
.
total
;
this
.
totalOrganization
=
res
.
data
.
total
;
vm
.
initOrganizationStatus
();
vm
.
initOrganizationStatus
();
// let idList = operationData.getIdList(this.tableOrganization);
// let intersect = operationData.getIntersect(
// idList,
// this.changedOrganization
// );
// this.lookedOrganization = operationData.getUnion(
// this.lookedOrganization,
// idList
// );
// let difference = operationData.getDifference(
// idList,
// this.changedOrganization2
// );
// if (vm.checkTableState.multipleOrganization === "") {
// this.initOrganizationChoose();
// } else if (vm.checkTableState.multipleOrganization === true) {
// let intersect2 = operationData.getIntersect(
// idList,
// this.changedOrganization
// );
// if (intersect2.length == 0) {
// this.$refs.multipleOrganization.toggleAllSelection();
// }
// }
}
else
{
}
else
{
vm
.
$message
(
res
.
message
)
vm
.
$message
(
res
.
message
)
}
}
...
@@ -2728,12 +2705,6 @@ export default {
...
@@ -2728,12 +2705,6 @@ export default {
req
.
setKindOfOrganization
req
.
setKindOfOrganization
);
);
}
}
// vm.POST("portal/scope/v1/hospital", req).then(res => {
// if (res.code == "000000") {
// console.log(res);
// this.hospitalList = operationData.getHospitalList(res.data.organizationList);
// }
// })
},
},
//选择搜索机构方式
//选择搜索机构方式
searchPeople
()
{
searchPeople
()
{
...
@@ -2781,9 +2752,6 @@ export default {
...
@@ -2781,9 +2752,6 @@ export default {
// console.log('formOrganization',this.formOrganization);
// console.log('formOrganization',this.formOrganization);
let
req
=
{
let
req
=
{
projectId
:
this
.
projectId
,
projectId
:
this
.
projectId
,
// setKindOfAdministrative: this.getKind("administrative"),
// setKindOfOrganization: this.getKind("organization"),
// setKindOfDepartment: this.getKind("department"),
pageNum
:
this
.
formPerson
.
pageNum
,
pageNum
:
this
.
formPerson
.
pageNum
,
pageSize
:
this
.
formPerson
.
pageSize
,
pageSize
:
this
.
formPerson
.
pageSize
,
doctorName
:
this
.
formPerson
.
doctorName
,
doctorName
:
this
.
formPerson
.
doctorName
,
...
@@ -2791,17 +2759,6 @@ export default {
...
@@ -2791,17 +2759,6 @@ export default {
scopeOfAdministrative
:
this
.
getScope
(
"administrative"
),
scopeOfAdministrative
:
this
.
getScope
(
"administrative"
),
scopeOfDepartment
:
this
.
getScopeDepartment
(),
scopeOfDepartment
:
this
.
getScopeDepartment
(),
};
};
// if (req.setKindOfAdministrative == 3) {
// req.scopeOfAdministrative = this.getScope("administrative");
// }
// if (req.setKindOfOrganization == 2 || req.setKindOfOrganization == 3) {
// req.scopeOfOrganization = this.getScopeOrganization(
// req.setKindOfOrganization
// );
// }
// if (req.setKindOfDepartment == 3) {
// req.scopeOfDepartment = this.getScopeDepartment();
// }
openLoading
(
vm
);
openLoading
(
vm
);
// vm.POST("portal/scope/v1/people/choose", req).then(res => {
// vm.POST("portal/scope/v1/people/choose", req).then(res => {
vm
.
POST
(
"portal/new/scope/doctor/v1/doctor/search"
,
req
).
then
(
res
=>
{
vm
.
POST
(
"portal/new/scope/doctor/v1/doctor/search"
,
req
).
then
(
res
=>
{
...
@@ -2810,27 +2767,6 @@ export default {
...
@@ -2810,27 +2767,6 @@ export default {
this
.
tablePerson
=
res
.
data
.
people
;
this
.
tablePerson
=
res
.
data
.
people
;
this
.
totalPerson
=
res
.
data
.
total
;
this
.
totalPerson
=
res
.
data
.
total
;
vm
.
initPeopleStatus
();
vm
.
initPeopleStatus
();
// let idList = operationData.getIdList(this.tablePerson);
// let intersect = operationData.getIntersect(
// idList,
// this.changedPerson
// );
// this.lookedPerson = operationData.getUnion(
// this.lookedPerson,
// idList
// );
// if (vm.checkTableState.multiplePerson === "") {
// this.initPeopleChoose();
// } else if (vm.checkTableState.multiplePerson === true) {
// let intersect2 = operationData.getIntersect(
// idList,
// this.changedPerson
// );
// if (intersect2.length == 0) {
// this.$refs.multiplePerson.toggleAllSelection();
// }
// }
}
else
{
}
else
{
vm
.
$message
(
res
.
message
)
vm
.
$message
(
res
.
message
)
}
}
...
@@ -2857,17 +2793,6 @@ export default {
...
@@ -2857,17 +2793,6 @@ export default {
pageNum
:
this
.
formPerson
.
pageNum
,
pageNum
:
this
.
formPerson
.
pageNum
,
pageSize
:
this
.
formPerson
.
pageSize
pageSize
:
this
.
formPerson
.
pageSize
};
};
// if (req.setKindOfAdministrative == 3) {
// req.scopeOfAdministrative = this.getScope("administrative");
// }
// if (req.setKindOfOrganization == 2 || req.setKindOfOrganization == 3) {
// req.scopeOfOrganization = this.getScopeOrganization(
// req.setKindOfOrganization
// );
// }
// if (req.setKindOfDepartment == 3) {
// req.scopeOfDepartment = this.getScopeDepartment();
// }
openLoading
(
vm
);
openLoading
(
vm
);
// vm.POST("portal/scope/v1/people", req).then(res => {
// vm.POST("portal/scope/v1/people", req).then(res => {
vm
.
POST
(
"portal/new/scope/doctor/v1/doctor"
,
req
).
then
(
res
=>
{
vm
.
POST
(
"portal/new/scope/doctor/v1/doctor"
,
req
).
then
(
res
=>
{
...
@@ -2877,31 +2802,6 @@ export default {
...
@@ -2877,31 +2802,6 @@ export default {
this
.
tablePerson
=
res
.
data
.
people
;
this
.
tablePerson
=
res
.
data
.
people
;
this
.
totalPerson
=
res
.
data
.
total
;
this
.
totalPerson
=
res
.
data
.
total
;
vm
.
initPeopleStatus
();
vm
.
initPeopleStatus
();
// let idList = operationData.getIdList(this.tablePerson);
// let intersect = operationData.getIntersect(
// idList,
// this.changedPerson
// );
// this.lookedPerson = operationData.getUnion(
// this.lookedPerson,
// idList
// );
// let difference = operationData.getDifference(
// idList,
// this.changedPerson2
// );
// if (vm.checkTableState.multiplePerson === "") {
// this.initPeopleChoose();
// } else if (vm.checkTableState.multiplePerson === true) {
// let intersect2 = operationData.getIntersect(
// idList,
// this.changedPerson
// );
// if (intersect2.length == 0) {
// this.$refs.multiplePerson.toggleAllSelection();
// }
// }
}
else
{
}
else
{
vm
.
$message
(
res
.
message
)
vm
.
$message
(
res
.
message
)
}
}
...
@@ -3008,31 +2908,6 @@ export default {
...
@@ -3008,31 +2908,6 @@ export default {
tableStatus
.
forEach
(
row
=>
{
tableStatus
.
forEach
(
row
=>
{
this
.
$refs
.
multipleEcology
.
toggleRowSelection
(
row
);
this
.
$refs
.
multipleEcology
.
toggleRowSelection
(
row
);
});
});
// let idList = operationData.getIdList(this.tableEcology);
// let intersect = operationData.getIntersect(
// idList,
// this.changedEcology
// );
// this.lookedEcology = operationData.getUnion(
// this.lookedEcology,
// idList
// );
// let difference = operationData.getDifference(
// idList,
// this.changedEcology2
// );
// if (vm.checkTableEcology === "") {
// this.initEcology();
// } else if (vm.checkTableEcology === true) {
// let intersect2 = operationData.getIntersect(
// idList,
// this.changedEcology
// );
// if (intersect2.length == 0) {
// this.$refs.multipleEcology.toggleAllSelection();
// }
// }
}
}
);
);
},
},
...
@@ -3085,9 +2960,6 @@ export default {
...
@@ -3085,9 +2960,6 @@ export default {
this
.
lookedOrganization
=
[];
this
.
lookedOrganization
=
[];
this
.
changedOrganization
=
[];
this
.
changedOrganization
=
[];
this
.
changedOrganization2
=
[];
this
.
changedOrganization2
=
[];
// this.lookedPerson = [];
// this.changedPerson = [];
// this.changedPerson2 = [];
},
},
//设定机构改变更新设定人员
//设定机构改变更新设定人员
updatePerson
()
{
updatePerson
()
{
...
@@ -3130,6 +3002,7 @@ export default {
...
@@ -3130,6 +3002,7 @@ export default {
for
(
let
j
=
0
;
j
<
this
.
optionsComponent
.
length
;
j
++
)
{
for
(
let
j
=
0
;
j
<
this
.
optionsComponent
.
length
;
j
++
)
{
if
(
value
[
i
]
==
this
.
optionsComponent
[
j
].
value
)
{
if
(
value
[
i
]
==
this
.
optionsComponent
[
j
].
value
)
{
this
.
tagsComponent
[
len
]
=
{};
this
.
tagsComponent
[
len
]
=
{};
this
.
tagsComponent
[
len
]
=
this
.
optionsComponent
[
j
];
this
.
tagsComponent
[
len
].
value
=
this
.
optionsComponent
[
j
].
value
;
this
.
tagsComponent
[
len
].
value
=
this
.
optionsComponent
[
j
].
value
;
this
.
tagsComponent
[
len
].
name
=
this
.
optionsComponent
[
j
].
label
;
this
.
tagsComponent
[
len
].
name
=
this
.
optionsComponent
[
j
].
label
;
len
++
;
len
++
;
...
@@ -3149,24 +3022,28 @@ export default {
...
@@ -3149,24 +3022,28 @@ export default {
this
.
tagsComponent
[
len
]
=
{};
this
.
tagsComponent
[
len
]
=
{};
this
.
tagsComponent
[
len
].
value
=
this
.
optionsComponent
[
j
].
value
;
this
.
tagsComponent
[
len
].
value
=
this
.
optionsComponent
[
j
].
value
;
this
.
tagsComponent
[
len
].
name
=
this
.
optionsComponent
[
j
].
label
;
this
.
tagsComponent
[
len
].
name
=
this
.
optionsComponent
[
j
].
label
;
if
(
vm
.
status4Flag
==
1
)
{
this
.
optionsComponent
[
j
].
disabled
=
true
;
this
.
tagsComponent
[
len
].
disabled
=
true
;
}
len
++
;
len
++
;
}
}
}
}
}
}
//console.log('this.tagsComponent',this.tagsComponent);
console
.
log
(
'this.optionsComponent值:'
,
this
.
optionsComponent
);
// if(vm.tagsComponent.length > 0) {
// vm.tagDrop();
// }
},
},
//选择组件数据绑定
//选择组件数据绑定
handleCloseComponent
(
tag
)
{
handleCloseComponent
(
tag
)
{
if
(
this
.
projectStatus
==
1
||
this
.
projectStatus
==
2
)
{
if
(
tag
.
disabled
==
true
)
{
return
;
}
// if (this.projectStatus == 1 || this.projectStatus == 2) {
this
.
tagsComponent
.
splice
(
this
.
tagsComponent
.
indexOf
(
tag
),
1
);
this
.
tagsComponent
.
splice
(
this
.
tagsComponent
.
indexOf
(
tag
),
1
);
this
.
formComponent
.
component
=
[];
this
.
formComponent
.
component
=
[];
for
(
let
j
=
0
;
j
<
this
.
tagsComponent
.
length
;
j
++
)
{
for
(
let
j
=
0
;
j
<
this
.
tagsComponent
.
length
;
j
++
)
{
this
.
formComponent
.
component
[
j
]
=
this
.
tagsComponent
[
j
].
value
;
this
.
formComponent
.
component
[
j
]
=
this
.
tagsComponent
[
j
].
value
;
}
}
}
//
}
},
},
addCertificate
()
{
addCertificate
()
{
let
obj
=
{
let
obj
=
{
...
@@ -3952,6 +3829,39 @@ export default {
...
@@ -3952,6 +3829,39 @@ export default {
.third-step
{
.third-step
{
margin
:
30px
0
0px
30px
;
margin
:
30px
0
0px
30px
;
padding-bottom
:
30px
;
padding-bottom
:
30px
;
::-webkit-scrollbar
{
width
:
4px
;
height
:
20px
;
background-color
:
#D8D8D8
;
}
::-webkit-scrollbar-thumb
{
background-color
:
#D8D8D8
;
}
.el-tag
{
margin-top
:
5px
;
display
:
table
;
background-color
:
#E6F1FC
;
color
:
#389EFE
;
}
.el-select
{
.el-tag
{
i
{
display
:
none
;
}
}
}
.tags-list
{
border
:
1px
#E8E8E8
solid
;
height
:
350px
;
min-width
:
280px
;
overflow-y
:
scroll
;
}
.tags-component-online
{
color
:
#9ACEFF
;
background-color
:
#F3F8FE
;
border-color
:
#D5EAFE
;
}
.achievement
{
.achievement
{
margin-top
:
60px
;
margin-top
:
60px
;
}
}
...
@@ -3960,14 +3870,10 @@ export default {
...
@@ -3960,14 +3870,10 @@ export default {
}
}
.check-component
{
.check-component
{
top
:
0px
;
top
:
0px
;
left
:
550px
;
right
:
5%
;
position
:
absolute
;
position
:
absolute
;
z-index
:
999
;
z-index
:
999
;
}
}
.el-tag
{
margin-top
:
5px
;
display
:
table
;
}
.el-configure
{
.el-configure
{
width
:
200px
;
width
:
200px
;
}
}
...
...
src/views/education/entry-manager.vue
0 → 100644
浏览文件 @
fe2f1e66
<
template
>
<div
class=
"entry-manager"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
></bread-crumb>
<div
class=
"component-content screenSet"
id=
"screenSet"
>
<el-form
:model=
"formInline"
ref=
"formInline"
label-width=
"75px"
class=
"form-inline"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"入口名称:"
>
<el-input
size=
"small"
v-model=
"formInline.name"
placeholder=
"请输入名称"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"2"
></el-col>
<el-col
:span=
"2"
>
<el-button
type=
"primary"
size=
"small"
>
查询
</el-button>
</el-col>
<el-col
:span=
"6"
style=
"padding:0;text-align:right;padding-right:10px;"
>
<el-button
type=
"primary"
size=
"small"
>
新建入口
</el-button>
</el-col>
</el-form>
<el-table
:data=
"tableData"
style=
"width: 100%"
>
<el-table-column
prop=
"id"
label=
"ID编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"project"
label=
"入口名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"name"
label=
"创建人"
align=
"center"
></el-table-column>
<el-table-column
prop=
"createTime"
label=
"创建时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"desc"
label=
"入口介绍"
align=
"center"
></el-table-column>
<el-table-column
prop=
"startTime"
label=
"开始时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"endTime"
label=
"介绍时间"
align=
"center"
></el-table-column>
<el-table-column
fixed=
"right"
label=
"状态"
align=
"center"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
status
|
shieldStatus
}}
</
template
>
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"150"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
>
编辑
</el-button>
</
template
>
</el-table-column>
</el-table>
<div
class=
"pagination"
>
<el-pagination
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"formInline.pageNo"
:page-sizes=
"[10, 20, 30, 100]"
:page-size=
"formInline.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"totalRows"
></el-pagination>
</div>
</div>
</div>
</template>
<
script
>
import
BreadCrumb
from
"../../components/breadcrumb.vue"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
*
as
commonUtil
from
"../../utils/utils"
;
import
*
as
operationData
from
"../../utils/operation"
;
let
vm
=
null
;
export
default
{
components
:
{
BreadCrumb
},
data
()
{
return
{
curmbFirst
:
"入口管理"
,
totalRows
:
0
,
formInline
:
{
name
:
""
,
pageNo
:
1
,
pageSize
:
10
},
tableData
:
[
{
id
:
123
,
project
:
"小何同学的项目"
,
name
:
"小王同学"
,
createTime
:
"2019-09-09"
,
desc
:
"小王同学"
,
startTime
:
"2019-10-10"
,
endTime
:
"2019-12-10"
,
status
:
1
}
]
};
},
computed
:
{
...
mapGetters
([
"_token"
])
},
created
()
{
vm
=
this
;
},
mounted
:
function
()
{
commonUtil
.
resizeHeight
();
},
methods
:
{
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
this
.
formInline
.
pageSize
=
val
;
},
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
this
.
formInline
.
pageNo
=
val
;
}
}
};
</
script
>
<
style
lang=
"scss"
>
.entry-manager
{
.component-content
{
padding
:
10px
;
background
:
#fff
;
}
}
</
style
>
\ No newline at end of file
src/views/education/item-manager.vue
浏览文件 @
fe2f1e66
...
@@ -532,4 +532,7 @@ export default {
...
@@ -532,4 +532,7 @@ export default {
}
}
}
}
}
}
.el-tooltip__popper
{
max-width
:
50%
}
</
style
>
</
style
>
\ No newline at end of file
src/views/system/item-role.vue
浏览文件 @
fe2f1e66
...
@@ -1078,4 +1078,20 @@ export default {
...
@@ -1078,4 +1078,20 @@ export default {
}
}
}
}
}
}
.el-popover
{
::-webkit-scrollbar
{
width
:
4px
;
height
:
10px
;
background-color
:
#D8D8D8
;
}
::-webkit-scrollbar-thumb
{
background-color
:
#D8D8D8
;
}
.more-text
{
padding
:
0
5px
0
5px
;
max-height
:
55px
;
overflow-y
:
scroll
;
}
}
</
style
>
</
style
>
\ No newline at end of file
src/views/system/role.vue
浏览文件 @
fe2f1e66
...
@@ -217,4 +217,7 @@ export default {
...
@@ -217,4 +217,7 @@ export default {
}
}
}
}
}
}
.el-tooltip__popper
{
max-width
:
50%
}
</
style
>
</
style
>
\ No newline at end of file
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录