Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
提交
打开侧边栏
com.pica.cloud.education.frontend
pica.cloud.web-education-admin
提交
e08e7b40
提交
e08e7b40
编写于
9月 03, 2020
作者:
alex.zhang
浏览文件
操作
浏览文件
下载
差异文件
fix conflict
上级
32c760cb
f2a6e05b
变更
19
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
2687 行增加
和
120 行删除
+2687
-120
baseinfo.vue
src/components/yqrange/baseinfo.vue
+14
-0
breadcrumb-range.vue
src/components/yqrange/breadcrumb-range.vue
+52
-0
mebman.vue
src/components/yqrange/mebman.vue
+104
-0
checkOrg.vue
src/components/yqrange/member-management/checkOrg.vue
+553
-0
org.vue
src/components/yqrange/member-management/org.vue
+424
-0
renyaun.vue
src/components/yqrange/member-management/renyaun.vue
+270
-0
organzation.vue
src/components/yqrange/organzation.vue
+0
-1
router.js
src/router/router.js
+10
-0
filter.js
src/utils/filter.js
+15
-1
memberApi.js
src/utils/yqrange/memberApi.js
+96
-0
edit-custom.vue
src/views/education/edit-custom.vue
+99
-12
edit-manager.vue
src/views/education/edit-manager.vue
+131
-45
admin-manage.vue
src/views/yqrange/admin-manage.vue
+333
-0
create-live.vue
src/views/yqrange/create-live.vue
+33
-13
create-range.vue
src/views/yqrange/create-range.vue
+27
-17
live-manage.vue
src/views/yqrange/live-manage.vue
+18
-8
range-manage.vue
src/views/yqrange/range-manage.vue
+295
-0
range-setting.vue
src/views/yqrange/range-setting.vue
+202
-0
yq-range.vue
src/views/yqrange/yq-range.vue
+11
-23
未找到文件。
src/components/yqrange/baseinfo.vue
浏览文件 @
e08e7b40
...
...
@@ -87,6 +87,10 @@
<!--
<span
class=
"el-icon-info"
></span>
-->
<i
class=
"el-icon-info"
style=
"color: #449284;"
></i>
</el-tooltip>
<div
style=
"margin-top: 60px;margin-left: 250px;"
>
<el-button
type=
"primary"
@
click=
"save()"
center
>
保存
</el-button>
<el-button
@
click=
"cancle()"
>
取 消
</el-button>
</div>
</el-form-item>
<el-dialog
...
...
@@ -325,6 +329,16 @@
});
},
save(){
this.submitForm();
},
cancle(){
const _this = this;
setTimeout(function () {
_this.$router.go(-1)
}, 100);
}
}
}
</
script
>
...
...
src/components/yqrange/breadcrumb-range.vue
0 → 100644
浏览文件 @
e08e7b40
<
template
>
<div
class=
"bread-crumb"
>
<el-breadcrumb
separator=
"/"
>
<el-breadcrumb-item
v-if=
"curmbFirst"
:to=
"
{ path: jumPathThird }">
{{
curmbFirst
}}
</el-breadcrumb-item>
<el-breadcrumb-item
v-if=
"jumPathFouth"
:to=
"
{ path: jumPathFouth }">
{{
curmbSecond
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
curmbThird
}}
</el-breadcrumb-item>
<el-breadcrumb-item
v-if=
"curmbFouth"
>
{{
curmbFouth
}}
</el-breadcrumb-item>
</el-breadcrumb>
</div>
</
template
>
<
script
>
export
default
{
props
:
{
curmbFirst
:
{
type
:
String
},
curmbSecond
:
{
type
:
String
},
curmbThird
:
{
type
:
String
},
curmbFouth
:
{
type
:
String
},
jumPathThird
:
{
type
:
String
},
jumPathFouth
:
{
type
:
String
}
}
}
</
script
>
<
style
lang=
"scss"
>
.bread-crumb
{
position
:
fixed
;
left
:
255px
;
top
:
64px
;
width
:
100%
;
background
:
#fff
;
height
:
61px
;
padding
:
20px
20px
30px
;
z-index
:
99
;
border-top
:
3px
solid
#F0F2F5
;
.el-breadcrumb__inner
{
font-size
:
14px
;
}
}
</
style
>
src/components/yqrange/mebman.vue
0 → 100644
浏览文件 @
e08e7b40
<
template
>
<div
class=
"member-management screenSet"
id=
"screenSet"
>
<el-row
type=
"flex"
justify=
"space-around"
class=
"mm-nav"
align=
"middle"
>
<el-col
:span=
"20"
>
<el-button
:type=
"orgbtn"
round
class=
"margin-l"
@
click=
"checkTab(1)"
>
可访问本圈的机构(
{{
orgTotal
}}
)
</el-button>
<el-button
:type=
"plebtn"
round
class=
"margin-l"
@
click=
"checkTab(2)"
>
可访问本圈的人员(
{{
pleTotal
}}
)
</el-button>
<el-link
href=
"https://element.eleme.io"
target=
"_blank"
class=
"black"
>
黑名单
</el-link>
</el-col>
<el-col
:span=
"4"
class=
"mm-r"
>
<el-link
href=
"https://element.eleme.io"
target=
"_blank"
>
设置管理员
</el-link>
</el-col>
</el-row>
<div
class=
"member-main"
>
<org
v-show=
"tab == 1"
:circleId=
'circleId'
:roleType=
'roleType'
@
setOrgTotal=
"setOrgTotal"
></org>
<renyaun
v-show=
"tab == 2"
:circleId=
'circleId'
:roleType=
'roleType'
@
setPleTotal=
"setPleTotal"
></renyaun>
</div>
</div>
</
template
>
<
script
>
import
*
as
commonUtil
from
"../utils/utils"
;
import
org
from
'@/components/yqrange/member-management/org'
import
renyaun
from
'@/components/yqrange/member-management/renyaun'
export
default
{
props
:
{
circleId
:
{
type
:
Number
|
String
,
default
:
1
},
roleType
:
{
type
:
Number
|
String
,
default
:
1
},
},
data
()
{
return
{
tab
:
1
,
orgbtn
:
'primary'
,
plebtn
:
''
,
orgTotal
:
0
,
pleTotal
:
0
}
},
components
:
{
org
,
renyaun
},
created
()
{},
// 挂载到Dom完成时
mounted
:
function
()
{
commonUtil
.
resizeHeight
();
},
methods
:
{
checkTab
(
v
)
{
this
.
tab
=
v
if
(
v
==
1
)
{
this
.
orgbtn
=
'primary'
this
.
plebtn
=
''
}
else
{
this
.
orgbtn
=
''
this
.
plebtn
=
'primary'
}
},
setOrgTotal
(
n
)
{
this
.
orgTotal
=
n
},
setPleTotal
(
n
)
{
this
.
pleTotal
=
n
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.member-management
{
padding
:
10px
;
background
:
#fff
;
.mm-nav
{
.margin-l
{
margin-left
:
20px
;
}
.black
{
margin-left
:
30px
;
}
.mm-r
{
text-align
:
right
;
padding-right
:
20px
;
}
}
.member-main
{
margin-top
:
20px
;
}
}
</
style
>
src/components/yqrange/member-management/checkOrg.vue
0 → 100644
浏览文件 @
e08e7b40
此差异已折叠。
点击以展开。
src/components/yqrange/member-management/org.vue
0 → 100644
浏览文件 @
e08e7b40
此差异已折叠。
点击以展开。
src/components/yqrange/member-management/renyaun.vue
0 → 100644
浏览文件 @
e08e7b40
<
template
>
<div
class=
"organization"
>
<el-row
type=
"flex"
class=
"row-bg"
align=
"middle"
>
<el-col
:span=
"4"
class=
"add-organization"
>
<i
class=
"el-icon-circle-plus-outline"
></i>
<i
class=
"text"
>
添加人员
</i>
</el-col>
<el-col
:span=
"20"
class=
"organization-search"
>
<el-form
:inline=
"true"
:model=
"formOrganization"
class=
"demo-form-inline"
>
<el-form-item
label=
"机构"
>
<el-input
style=
"width:140px;"
size=
"small"
v-model=
"formOrganization.orgName"
placeholder=
"请输入机构名称"
></el-input>
</el-form-item>
<el-form-item
label=
"姓名"
>
<el-input
style=
"width:140px;"
size=
"small"
v-model=
"formOrganization.name"
placeholder=
"请输入人员姓名"
></el-input>
</el-form-item>
<el-form-item
label=
"来源"
>
<el-select
size=
"small"
v-model=
"formOrganization.source"
placeholder=
"请选择来源"
>
<el-option
v-for=
"(item, index) in sourceList"
:key=
"index"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button
size=
"small"
type=
"primary"
@
click=
"getList()"
>
搜索
</el-button>
</el-form-item>
<el-form-item>
<el-button
size=
"small"
type=
"primary"
@
click=
"reset()"
>
重置
</el-button>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-table
class=
"rim"
ref=
"multipleOrganization"
:data=
"peoplesDtoList"
tooltip-effect=
"dark"
style=
"width: 100%"
>
<el-table-column
prop=
"name"
label=
"人员"
min-width=
"100"
align=
"center"
></el-table-column>
<el-table-column
prop=
"department"
label=
"所属科室"
align=
"center"
></el-table-column>
<el-table-column
prop=
"hospital"
label=
"所属医院"
align=
"center"
></el-table-column>
<el-table-column
prop=
"provinceName"
label=
"所属省份"
align=
"center"
></el-table-column>
<el-table-column
prop=
"cityName"
label=
"所属城市"
align=
"center"
></el-table-column>
<el-table-column
prop=
"countyName"
label=
"所属区县"
align=
"center"
></el-table-column>
<el-table-column
prop=
"townName"
label=
"所属街道"
align=
"center"
></el-table-column>
<el-table-column
prop=
"sourceName"
label=
"来源"
align=
"center"
></el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
align=
"center"
width=
"140"
>
<template
slot-scope=
"scope"
>
<el-button
@
click=
"detel(scope.row)"
type=
"text"
size=
"small"
style=
"color:red"
>
删除
</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=
"handleSizeOrganization"
@
current-change=
"handleCurrentOrganization"
:current-page=
"formOrganization.pageNum"
:page-sizes=
"[10, 20, 40]"
:page-size=
"formOrganization.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"totalPeople"
></el-pagination>
</div>
</div>
</template>
<
script
>
import
*
as
operationData
from
"@/utils/operation"
;
import
{
openLoading
,
closeLoading
}
from
"@/utils/utils"
;
import
{
doUpload
,
getFilePath
}
from
"@/utils/qiniu-util"
;
import
{
mpRelSearch
,
mprDeleteOrg
}
from
'@/utils/yqrange/memberApi'
;
let
vm
=
null
;
export
default
{
props
:
{
circleId
:
{
type
:
Number
|
String
,
default
:
1
},
roleType
:
{
type
:
Number
|
String
,
default
:
1
},
},
data
()
{
return
{
props
:
{
lazy
:
true
,
lazyLoad
(
node
,
resolve
)
{
const
{
level
}
=
node
;
if
(
node
.
level
==
1
)
{
let
req
=
{
provinceId
:
node
.
data
.
value
};
vm
.
GET
(
"basic-data/position/cities"
,
req
).
then
(
res
=>
{
let
newData
=
vm
.
setMoreOption
(
res
.
data
.
cityList
,
"cities"
);
resolve
(
newData
);
});
}
else
if
(
node
.
level
==
2
)
{
let
req
=
{
cityId
:
node
.
data
.
value
};
vm
.
GET
(
"basic-data/position/counties"
,
req
).
then
(
res
=>
{
let
newData
=
vm
.
setMoreOption
(
res
.
data
.
countyList
,
"counties"
);
resolve
(
newData
);
});
}
else
if
(
node
.
level
==
3
)
{
let
req
=
{
countyId
:
node
.
data
.
value
};
vm
.
GET
(
"basic-data/position/towns"
,
req
).
then
(
res
=>
{
let
newData
=
vm
.
setMoreOption
(
res
.
data
.
townList
,
"towns"
);
resolve
(
newData
);
});
}
}
},
administrativeValue
:
""
,
optionsRegion
:
[],
sourceList
:
[
{
label
:
'全部'
,
value
:
0
},
{
label
:
'从圈内机构人员'
,
value
:
1
},
{
label
:
'从人员白名单'
,
value
:
2
},
],
peoplesDtoList
:
[],
totalPeople
:
10
,
selectionList
:[],
formOrganization
:
{
name
:
''
,
orgName
:
''
,
source
:
0
,
pageNum
:
1
,
pageSize
:
10
}
}
},
created
()
{
vm
=
this
;
},
mounted
()
{
this
.
initRange
();
//Idtype:1,内部 2.外部
vm
.
idType
=
localStorage
.
getItem
(
"storageIdType"
);
},
methods
:
{
initRange
()
{
this
.
formOrganization
.
pageNum
=
1
;
this
.
formOrganization
.
name
=
""
;
this
.
formOrganization
.
orgName
=
""
;
this
.
formOrganization
.
source
=
0
this
.
getList
()
},
setMoreOption
(
data
,
type
)
{
let
option
=
[];
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
let
obj
=
data
[
i
];
if
(
type
==
"cities"
)
{
obj
.
label
=
data
[
i
].
cityName
;
obj
.
value
=
data
[
i
].
cityId
;
}
else
if
(
type
==
"counties"
)
{
obj
.
label
=
data
[
i
].
countyName
;
obj
.
value
=
data
[
i
].
countyId
;
}
else
if
(
type
==
"towns"
)
{
obj
.
label
=
data
[
i
].
townName
;
obj
.
value
=
data
[
i
].
townId
;
obj
.
leaf
=
true
;
}
option
.
push
(
obj
);
}
return
option
;
},
getList
()
{
let
idType
=
localStorage
.
getItem
(
"storageIdType"
);
let
req
=
{
circleId
:
this
.
circleId
,
countryFlag
:
true
,
name
:
this
.
formOrganization
.
name
.
trim
(),
orgName
:
this
.
formOrganization
.
orgName
.
trim
(),
pageNo
:
this
.
formOrganization
.
pageNum
,
pageSize
:
this
.
formOrganization
.
pageSize
,
source
:
this
.
formOrganization
.
source
,
};
openLoading
(
vm
);
mpRelSearch
(
req
).
then
(
res
=>
{
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
this
.
peoplesDtoList
=
res
.
data
.
peoplesDtoList
;
this
.
totalPeople
=
res
.
data
.
total
;
this
.
setPleTotal
()
}
else
{
this
.
$message
(
res
.
message
);
}
}).
catch
(
err
=>
{
this
.
$message
.
error
(
'请求失败'
);
});
},
//重置机构、人员查询
reset
()
{
this
.
initRange
()
},
//机构table修改
handleSizeOrganization
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
this
.
formOrganization
.
pageSize
=
val
;
this
.
getList
();
},
handleCurrentOrganization
(
val
)
{
//console.log(`当前页: ${val}`);
this
.
formOrganization
.
pageNum
=
val
;
this
.
getList
();
},
detel
(
item
)
{
this
.
$confirm
(
`删除后
${
item
.
name
}
将无法访问本圈, 确定删除么?`
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
let
params
=
{
circleId
:
this
.
circleId
,
docIds
:
[
item
.
id
]
}
mprDeleteOrg
(
params
).
then
((
res
)
=>
{
this
.
$message
({
type
:
'success'
,
message
:
'删除成功!'
});
this
.
getList
()
}).
catch
(()
=>
{
this
.
$message
.
error
(
'删除失败,请稍后重试'
);
})
}).
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消删除'
});
});
},
setPleTotal
()
{
this
.
$emit
(
'setPleTotal'
,
this
.
totalPeople
)
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.organization
{
.add-organization
{
margin-left
:
40px
;
line-height
:
20px
;
cursor
:
pointer
;
i
{
font-size
:
18px
;
margin-right
:
2px
;
}
}
.organization-search
{
margin-right
:
20px
;
text-align
:
right
;
}
}
</
style
>
src/components/yqrange/organzation.vue
浏览文件 @
e08e7b40
...
...
@@ -166,7 +166,6 @@
getRegionOption
()
{
openLoading
(
vm
);
let
idType
=
localStorage
.
getItem
(
"storageIdType"
);
debugger
getCircleProvincesReq
(
idType
).
then
(
res
=>
{
closeLoading
(
this
);
if
(
res
.
code
==
"000000"
)
{
...
...
src/router/router.js
浏览文件 @
e08e7b40
...
...
@@ -58,9 +58,11 @@ const yqRange = r => require.ensure([], () => r(require('../views/yqrange/yq-ran
const
liveManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/live-manage.vue'
)),
'live-manage'
)
const
roleManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/role-manage.vue'
)),
'role-manage'
)
const
createRange
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/create-range.vue'
)),
'create-range'
)
const
rangeManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/range-manage.vue'
)),
'range-manage'
)
const
editRange
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/edit-range.vue'
)),
'edit-range'
)
const
createLive
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/create-live.vue'
)),
'create-live'
)
const
blackListManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/blacklist-manage.vue'
)),
'blacklist-manage'
)
const
adminManage
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/yqrange/admin-manage.vue'
)),
'admin-manage'
)
export
default
[{
path
:
'/'
,
...
...
@@ -227,10 +229,18 @@ export default [{
path
:
'/role-manage'
,
component
:
roleManage
},
{
path
:
'/admin-manage'
,
component
:
adminManage
},
{
path
:
'/create-range'
,
component
:
createRange
},
{
path
:
'/range-manage'
,
component
:
rangeManage
},
{
path
:
'/create-live'
,
component
:
createLive
...
...
src/utils/filter.js
浏览文件 @
e08e7b40
...
...
@@ -306,6 +306,20 @@ const vueFilter = {
return
'取消屏蔽'
;
}
},
roleAdminStatus
:
(
value
)
=>
{
if
(
value
==
0
)
{
return
'普通成员'
;
}
else
if
(
value
==
1
)
{
return
'管理员'
;
}
},
roleAdminButton
:
(
value
)
=>
{
if
(
value
==
0
)
{
return
'升为管理员'
;
}
else
if
(
value
==
1
)
{
return
'降为普通成员'
;
}
},
areaText
:
(
value
)
=>
{
let
text
=
'-'
;
if
(
value
.
regions
.
length
==
0
)
{
...
...
@@ -474,7 +488,7 @@ const vueFilter = {
if
(
value
==
0
)
{
return
'暂存'
}
else
if
(
value
==
10
)
{
return
'
下线
'
return
'
待发布
'
}
else
if
(
value
==
20
)
{
return
''
}
else
if
(
value
==
30
)
{
...
...
src/utils/yqrange/memberApi.js
0 → 100644
浏览文件 @
e08e7b40
import
fetch
from
'../fetch'
;
import
{
getBaseUrl
}
from
'@/utils/index'
let
headers
=
{
'Content-Type'
:
'application/json;charset=UTF-8'
,
token
:
localStorage
.
getItem
(
'storageToken'
),
};
export
const
moRelSearch
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/org/related/search`
),
method
:
'post'
,
data
:
params
,
description
:
'查询机构-圈子已选机构列表'
,
})
};
export
const
morDeleteOrg
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/org/related/deleteOrg`
),
method
:
'post'
,
data
:
params
,
description
:
'删除机构- 圈子已选机构'
,
})
};
export
const
moOption
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/org/option`
),
method
:
'post'
,
data
:
params
,
description
:
'添加机构- 勾选操作'
,
})
};
export
const
moSave
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/org/save`
),
method
:
'post'
,
data
:
params
,
description
:
'添加机构-保存'
,
})
};
export
const
moOrgSearch
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/org/search`
),
method
:
'post'
,
data
:
params
,
description
:
'添加机构-查询所有机构列表'
,
})
};
export
const
clearCacheOrg
=
(
circleId
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/org/option/clearCache/
${
circleId
}
`
),
method
:
'get'
,
description
:
'添加机构- 勾选操作清除缓存'
,
})
};
export
const
mpRelSearch
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/people/related/search`
),
method
:
'post'
,
data
:
params
,
description
:
'查询人员白名单- 圈子已选人员列表'
,
})
};
export
const
mprDeleteOrg
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/people/related/deletePeople`
),
method
:
'post'
,
data
:
params
,
description
:
'删除人员白名单- 圈子已选人员'
,
})
};
export
const
getprovinces
=
(
idType
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`circle/memberSelect/provinces/idType/
${
idType
}
`
),
method
:
'get'
,
description
:
'根据用户ID 获取选人时省市'
,
})
};
src/views/education/edit-custom.vue
浏览文件 @
e08e7b40
...
...
@@ -52,7 +52,7 @@
/>
<!-- 设定行政范围与设定机构 -->
<div
class=
"three-step"
v-if=
"active === 2"
>
<
!--
<
div
class=
"three-step"
v-if=
"active === 2"
>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClickTabs"
>
<el-tab-pane
label=
"设定行政范围"
name=
"first"
>
<select-region
ref=
"selectRegion"
:projectId=
"projectId"
:status4Flag=
"status4Flag"
></select-region>
...
...
@@ -65,21 +65,52 @@
></set-organization>
</el-tab-pane>
</el-tabs>
</div>
-->
<!-- 改为关联小圈 -->
<div
class=
"three-step"
v-if=
"active === 2"
>
<el-form
:model=
"formCircle"
label-width=
"130px"
class=
"demo-form-inline"
>
<el-form-item
label=
"关联小圈:"
required
>
<el-select
size=
"small"
v-model=
"formCircle.microecologyId"
placeholder=
"请选择关联小圈"
:disabled=
"status4Flag == 1"
>
<el-option
v-for=
"item in circleList"
:key=
"item.id"
:label=
"`$
{item.id}-${item.name}`"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
v-show=
"formCircle.microecologyId"
label=
"圈内可见范围:"
required
>
<el-select
size=
"small"
v-model=
"formCircle.groupType"
placeholder=
"请选择圈内可见范围"
>
<el-option
label=
"全体成员"
:value=
"1"
></el-option>
</el-select>
</el-form-item>
</el-form>
</div>
</div>
<dialog-componet
:dialogObj=
"dialogObj"
@
hide=
"hide"
></dialog-componet>
<dialog-componet
:dialogObj=
"sendObj"
@
hide=
"hidefn"
@
confirm=
"confirmFn"
></dialog-componet>
<PreviewEditCourse
<PreviewEditCourse
:dialogVisible=
"isPreviewEditCourse"
:courseId=
"courseId"
@
close=
"closeEditCourse"
/>
<PreviewProtocol
<PreviewProtocol
:dialogVisible=
"isPreviewProtocol"
:protocolId=
"protocolId"
:protocolContent=
"protocolContent"
@
close=
"closeProtocol"
:protocolContent=
"protocolContent"
@
close=
"closeProtocol"
/>
</div>
</
template
>
...
...
@@ -170,7 +201,7 @@ export default {
isPreview
:
0
,
// 1表示是查看信息
maxLimitCreatedCustomProjectCountInYear
:
20
,
// 同一个用户每年能够创建的项目数
allSubList
:
[],
isPreviewEditCourse
:
false
,
courseId
:
'0'
,
...
...
@@ -178,6 +209,13 @@ export default {
protocolId
:
22
,
protocolContent
:
''
,
isFirst
:
true
,
// 是否是第一次(不做更新)
// 小圈
formCircle
:
{
microecologyId
:
''
,
// 小圈id
groupType
:
1
,
// 关联类型:1 全部 2:分组
groupIds
:
[],
// 分组id,全部为[]
},
circleList
:
[],
};
},
computed
:
{
...
...
@@ -326,7 +364,7 @@ export default {
pageNo
:
1
,
pageSize
:
10
,
labelIdList
:
labelIdList
||
[]
};
};
this
.
setSearchParam
(
searchParam
);
},
...
...
@@ -371,7 +409,7 @@ export default {
pageNo
:
1
,
pageSize
:
10
,
labelIdList
:
labelIdList
||
[]
};
};
this
.
setSearchParamOrg
(
searchParam
);
},
...
...
@@ -436,13 +474,15 @@ export default {
next
(
id
)
{
vm
.
projectId
=
id
;
vm
.
active
=
2
;
this
.
getCircleList
();
this
.
getCircleData
();
},
// 暂存
save
()
{
if
(
vm
.
active
==
1
)
{
vm
.
$refs
.
CustomBaseinfo
.
save
(
false
);
}
else
if
(
vm
.
active
==
2
)
{
vm
.
regionComplete
();
vm
.
sendCircleData
();
}
},
confirmFn
()
{
...
...
@@ -468,7 +508,7 @@ export default {
},
// 完成触发的接口
hidefn
()
{
vm
.
regionComplete
(
vm
.
changeStatus
);
vm
.
sendCircleData
(
vm
.
changeStatus
);
},
// 选择学元范围暂存
...
...
@@ -572,6 +612,53 @@ export default {
});
},
// 获取圈子列表
getCircleList
()
{
vm
.
GET
(
"circle/portal/circle/list"
,
{})
.
then
(
res
=>
{
// console.log("查询小圈列表", res);
this
.
circleList
=
res
.
data
;
});
},
// 获取圈子数据
getCircleData
()
{
vm
.
GET
(
"portal/portalMicroEcology/relation/query"
,
{
projectId
:
this
.
projectId
})
.
then
(
res
=>
{
// console.log("获取圈子数据", res);
if
(
res
.
code
==
"000000"
&&
res
.
data
)
{
this
.
formCircle
.
microecologyId
=
res
.
data
.
microecologyId
;
this
.
formCircle
.
groupType
=
res
.
data
.
groupType
;
this
.
formCircle
.
groupIds
=
res
.
data
.
groupIds
;
}
});
},
// 提交、修改圈子数据
sendCircleData
(
fishFn
)
{
const
{
microecologyId
,
groupType
,
groupIds
}
=
this
.
formCircle
;
if
(
!
microecologyId
)
{
vm
.
$message
({
type
:
"info"
,
message
:
"请选择关联小圈"
});
return
;
}
const
postData
=
{
projectId
:
this
.
projectId
,
microecologyId
,
groupType
,
groupIds
:
groupType
===
1
?
[
0
]
:
groupIds
,
}
openLoading
(
vm
);
vm
.
POST
(
"portal/portalMicroEcology/relation/saveOrUpdate"
,
postData
).
then
(
res
=>
{
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
&&
fishFn
)
{
fishFn
();
}
});
},
// 隐藏弹框
hide
()
{
vm
.
dialogObj
.
visible
=
false
;
...
...
@@ -603,7 +690,7 @@ export default {
vm
.
status4Flag
=
s
;
},
/*
/*
展示添加机构课程弹框
如果已经加入机构,1:没有同意过协议,则打开协议弹框;2:已经加入,时直接打开添加弹框
如果没有加入机构,则直接弹出提示(我知道了)
...
...
@@ -654,7 +741,7 @@ export default {
.
then
(
res
=>
{
if
(
res
.
code
==
"000000"
)
{
if
(
!
res
.
data
)
{
// 没有签署,打开协议签署弹框
this
.
getProtocolInfoById
();
this
.
getProtocolInfoById
();
}
else
{
this
.
isPreviewEditCourse
=
true
;
}
...
...
src/views/education/edit-manager.vue
浏览文件 @
e08e7b40
...
...
@@ -569,26 +569,26 @@
</el-tab-pane>
</el-tabs>
</div>
<div
v-else
>
<
!-- <
div v-else>
<el-form :inline="true" :model="formOrganization" class="demo-form-inline">
<el-form-item
label
>
<el-select
size=
"small"
v-model=
"formEcology.ecology"
placeholder=
"选择小生态"
@
change=
"selectChangeEcology"
:disabled=
"status4Flag == 1"
>
<el-option
v-for=
"item in ecologySelect"
:key=
"item.id"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
<span
class=
"span_ecology"
>
{{ checkedEcology }}
</span>
</el-form>
<el-form-item label>
<el-select
size="small"
v-model="formEcology.ecology"
placeholder="选择小生态"
@change="selectChangeEcology"
:disabled="status4Flag == 1"
>
<el-option
v-for="item in ecologySelect"
:key="item.id"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
<span class="span_ecology">{{ checkedEcology }}</span>
</el-form>
<el-table
class="rim"
ref="multipleEcology"
...
...
@@ -627,6 +627,34 @@
:total="totalEcology"
></el-pagination>
</div>
</div> -->
<div
v-else
>
<el-form
:model=
"formCircle"
label-width=
"130px"
class=
"demo-form-inline"
>
<el-form-item
label=
"关联小圈:"
required
>
<el-select
size=
"small"
v-model=
"formCircle.microecologyId"
placeholder=
"请选择关联小圈"
:disabled=
"status4Flag == 1"
>
<el-option
v-for=
"item in circleList"
:key=
"item.id"
:label=
"`${item.id}-${item.name}`"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
v-show=
"formCircle.microecologyId"
label=
"圈内可见范围:"
required
>
<el-select
size=
"small"
v-model=
"formCircle.groupType"
placeholder=
"请选择圈内可见范围"
>
<el-option
label=
"全体成员"
:value=
"1"
></el-option>
</el-select>
</el-form-item>
</el-form>
</div>
<el-dialog
title
:visible
.
sync=
"dialogShow"
width=
"40%"
center
>
<p
class=
"dialog-p"
>
设定范围数据已经被其他管理员修改,是否强制提交进行覆盖
</p>
...
...
@@ -1020,7 +1048,7 @@ export default {
// callback(new Error(`请输入0~100正整数`));
// }
};
return {
idTypeValue: 1,
idTypeProject: "",
...
...
@@ -1204,6 +1232,13 @@ export default {
lookedEcology: [],
changedEcology: [],
changedEcology2: [],
// 小圈
formCircle: {
microecologyId: '', // 小圈id
groupType: 1, // 关联类型:1 全部 2:分组
groupIds: [], // 分组id,全部为[]
},
circleList: [],
//选择项目组件 数据
optionsComponent: [],
optionsCertificate: [],
...
...
@@ -1459,11 +1494,11 @@ export default {
this.$message.error('发起机构名称不能重复');
return false;
}
}
}
}
return true;
},
//表单校验
submitForm(formName) {
let flag = null;
...
...
@@ -1729,8 +1764,10 @@ export default {
this.active++;
this.stepData = [false, true, false];
if (this.formData.scopeType == 1) {
this.getEcologySelect();
//this.getEcology();
this.getCircleList();
this.getCircleData();
// this.getEcologySelect();
// this.getEcology();
return;
}
// this.projectId = res.data.id;
...
...
@@ -2066,26 +2103,28 @@ export default {
//进入第三步
if
(
this
.
formData
.
scopeType
==
1
)
{
//设定小生态范围
if
(
this
.
formEcology
.
ecology
==
""
)
{
vm
.
$message
({
type
:
"info"
,
message
:
"请选择小生态范围"
});
return
;
}
let
req
=
{};
req
.
ecology
=
[];
req
.
ecology
[
0
]
=
this
.
formEcology
.
ecology
;
vm
.
POST
(
"portal/scope/v1/"
+
this
.
projectId
+
"/organization"
,
req
)
.
then
(
res
=>
{
console
.
log
(
"设定小生态范围"
,
res
);
if
(
res
.
code
==
"000000"
)
{
this
.
active
++
;
this
.
stepData
=
[
false
,
false
,
true
];
this
.
tagDrop
();
}
});
// if (this.formEcology.ecology == "") {
// vm.$message({
// type: "info",
// message: "请选择小生态范围"
// });
// return;
// }
// let req = {};
// req.ecology = [];
// req.ecology[0] = this.formEcology.ecology;
// vm
// .POST("portal/scope/v1/" + this.projectId + "/organization", req)
// .then(res => {
// console.log("设定小生态范围", res);
// if (res.code == "000000") {
// this.active++;
// this.stepData = [false, false, true];
// this.tagDrop();
// }
// });
// 设定小圈范围
this
.
sendCircleData
();
return
;
}
if
(
this
.
idType
==
1
)
{
...
...
@@ -3283,7 +3322,54 @@ export default {
});
});
},
//
// 获取圈子列表
getCircleList
()
{
vm
.
GET
(
"circle/portal/circle/list"
,
{})
.
then
(
res
=>
{
// console.log("查询小圈列表", res);
this
.
circleList
=
res
.
data
;
});
},
// 获取圈子数据
getCircleData
()
{
vm
.
GET
(
"portal/portalMicroEcology/relation/query"
,
{
projectId
:
this
.
projectId
})
.
then
(
res
=>
{
// console.log("获取圈子数据", res);
if
(
res
.
code
==
"000000"
&&
res
.
data
)
{
this
.
formCircle
.
microecologyId
=
res
.
data
.
microecologyId
;
this
.
formCircle
.
groupType
=
res
.
data
.
groupType
;
this
.
formCircle
.
groupIds
=
res
.
data
.
groupIds
;
}
});
},
// 提交、修改圈子数据
sendCircleData
()
{
const
{
microecologyId
,
groupType
,
groupIds
}
=
this
.
formCircle
;
if
(
!
microecologyId
)
{
vm
.
$message
({
type
:
"info"
,
message
:
"请选择关联小圈"
});
return
;
}
const
postData
=
{
projectId
:
this
.
projectId
,
microecologyId
,
groupType
,
groupIds
:
groupType
===
1
?
[
0
]
:
groupIds
,
}
openLoading
(
vm
);
vm
.
POST
(
"portal/portalMicroEcology/relation/saveOrUpdate"
,
postData
).
then
(
res
=>
{
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
this
.
active
++
;
this
.
stepData
=
[
false
,
false
,
true
];
this
.
tagDrop
();
}
});
},
//机构table修改
handleSizeOrganization
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
...
...
src/views/yqrange/admin-manage.vue
0 → 100644
浏览文件 @
e08e7b40
此差异已折叠。
点击以展开。
src/views/yqrange/create-live.vue
浏览文件 @
e08e7b40
<
template
>
<div
class=
"yqrange-index-wrapper"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
:curmbThird=
"curmbThird"
:jumPathThird=
"jumPathThird
"
></bread-crumb>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
:curmbThird=
"curmbThird"
:jumPathThird=
"jumPathThird"
:jumPathFouth=
"jumPathFouth
"
></bread-crumb>
<div
class=
"yqrange-index-content screenSet"
id=
"screenSet"
>
<el-row
class=
"step-content"
>
<el-col
:span=
"12"
>
...
...
@@ -55,7 +55,9 @@
<el-radio
label=
"1"
:disabled=
"styleEditFlag"
>
网页直播
</el-radio>
<el-radio
label=
"2"
:disabled=
"styleEditFlag"
>
拉流直播
</el-radio>
</el-radio-group>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"网页直播即通过生成的网页地址进行直播,拉流直播是指进入第三方流进行转播"
placement=
"top"
>
<i
class=
"el-icon-info"
style=
"color: #449284;margin-left: 15px;"
></i>
</el-tooltip>
</el-form-item>
<el-form-item
label=
"拉流地址"
v-if=
"pullFlag"
class=
"required-label"
>
...
...
@@ -112,9 +114,9 @@
</el-form-item>
<!-- <el-form-item label="直播开始通知">--
>
<!-- <el-checkbox size="small" v-model="checked" :disabled="styleEditFlag">App通知</el-checkbox>--
>
<!-- </el-form-item>--
>
<el-form-item
label=
"直播开始通知"
>
<el-checkbox
size=
"small"
v-model=
"checked"
:disabled=
"styleEditFlag"
>
App通知
</el-checkbox
>
</el-form-item
>
<el-form-item
label=
"直播中人数显示规则"
prop=
"streamType"
>
...
...
@@ -342,6 +344,9 @@
<el-radio
label=
"0"
>
否
</el-radio>
<el-radio
label=
"1"
>
是
</el-radio>
</el-radio-group>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"此tab会出现在直播详情页上,用于直播内容进行拓展说明"
placement=
"top"
>
<i
class=
"el-icon-info"
style=
"color: #449284;margin-left: 15px;"
></i>
</el-tooltip>
</el-form-item>
...
...
@@ -555,7 +560,7 @@
</div>
</template>
<
script
>
import
BreadCrumb
from
"@/components/
breadcrumb
.vue"
;
import
BreadCrumb
from
"@/components/
yqrange/breadcrumb-range
.vue"
;
import
{
isEmptyUtils
,
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
{
doUpload
,
getFilePath
,
unsubscribe
}
from
"../../utils/qiniu-util"
;
import
{
checkMobile
}
from
'../../utils/patients/checkValid'
;
...
...
@@ -584,10 +589,11 @@
return{
rtcId: '',
circleId: '',
circleName: "",
curmbFirst: '云鹊小圈',
curmbSecond: '直播管理',
//
curmbSecond: '直播管理',
curmbThird: '新建直播',// /live-manage?id=
jumPathThird: '',
jumPathThird: '
/yq-range
',
showIntroImageFlag: false,
introduceIndex: 0,
isDisabledIns: false,//为了防止上传多图时,点太快图片错位
...
...
@@ -775,15 +781,27 @@
}
}
},
props: {
// curmbSecond: {
// type: String
// },
// jumPathFouth: {
// type: String
// }
},
created() {
vm = this;
// 区分内部用户和外部用户
let idType = localStorage.getItem('storageIdType');
this.circleId = this.$route.query.circleId;
this.circleName = this.$route.query.circleName;
this.curmbSecond = "
圈子管理
-
" + this.circleName;
this.jumPathFouth = "
/
range
-
manage
?
id
=
" + this.circleId + "
&
name
=
" + this.circleName + "
&
activeName
=
third
";
this.formData.circleId = this.circleId;
console.log("
create
-
live
:
jumPathFouth
:
" + this.jumPathFouth);
this.jumPathThird = '/live-manage?id=' + this.circleId;
//
this.jumPathThird = '/live-manage?id=' + this.circleId;
},
mounted() {
...
...
@@ -1622,7 +1640,7 @@
this.changeSign();
//
this.checked = this.formData.isAppPush == 1 ? true: false;
this.checked = this.formData.isAppPush == 1 ? true: false;
if(this.formData.signMinute == 0 || this.formData.signMinute == undefined){
...
...
@@ -1716,7 +1734,7 @@
}
}
//
this.formData.isAppPush = this.checked == true ? 1: 0;
this.formData.isAppPush = this.checked == true ? 1: 0;
if(this.formData.signMinute == "" || this.formData.signMinute == undefined){
this.formData.signMinute = 0;
...
...
@@ -1791,9 +1809,11 @@
if( res.code == '000000') {
this.$message.success("
操作成功
");
this.$router.push({
path: '/
liv
e-manage',
path: '/
rang
e-manage',
query: {
id: this.formData.circleId
id: this.formData.circleId,
name: this.circleName,
activeName: "
third
"
}
})
}
...
...
src/views/yqrange/create-range.vue
浏览文件 @
e08e7b40
...
...
@@ -4,26 +4,27 @@
<div
class=
"yqrange-index-content screenSet"
id=
"screenSet"
>
<el-row
class=
"step-content"
>
<el-col
:span=
"14"
>
<el-steps
:active=
"active"
simple
class
>
<span
class=
"step-num"
v-bind:class=
"
{ 'on-step': stepData[0] }">1
</span>
<el-step
title=
"基础信息"
></el-step>
<span
class=
"step-num"
v-bind:class=
"
{ 'on-step': stepData[1] }">2
</span>
<el-step
title=
"选择成员"
>
2
</el-step>
</el-steps>
</el-col>
<el-col
:span=
"5"
:offset=
"5"
>
<el-button
v-if=
"active
<1
"
size=
"small"
type=
"primary"
@
click=
"nextStep"
>
下一步
</el-button>
<el-button
v-if=
"active>=1"
size=
"small"
type=
"primary"
@
click=
"complete"
>
完成
</el-button>
<p
class=
"p-title"
>
{{
curmbSecond
}}
</p>
<!--
<el-steps
:active=
"active"
simple
class
>
-->
<!--
<span
class=
"step-num"
v-bind:class=
"
{ 'on-step': stepData[0] }">1
</span>
-->
<!--
<el-step
title=
"基础信息"
></el-step>
-->
<!--
<span
class=
"step-num"
v-bind:class=
"
{ 'on-step': stepData[1] }">2
</span>
-->
<!--
<el-step
title=
"选择成员"
>
2
</el-step>
-->
<!--
</el-steps>
-->
</el-col>
<!--
<el-col
:span=
"5"
:offset=
"5"
>
-->
<!--
<el-button
v-if=
"active
<1
"
size=
"small"
type=
"primary"
@
click=
"nextStep"
>
下一步
</el-button>
-->
<!--
<el-button
v-if=
"active>=1"
size=
"small"
type=
"primary"
@
click=
"complete"
>
完成
</el-button>
-->
<!--
</el-col>
-->
</el-row>
<div
class=
"first-step"
v-if=
"active === 0"
>
<p
class=
"p-title"
>
基础信息
</p>
<base-info
:formData=
"formData"
@
returnTypeData=
"returnTypeData"
@
returnIsNext=
"returnIsNext"
ref=
"child"
>
</base-info>
</div>
<
div
class=
"second-step"
v-else-if=
"active === 1"
>
<
organzation
:formData=
"formData"
ref=
"org"
></organzation
>
<
/div
>
<
!--
<div
class=
"second-step"
v-else-if=
"active === 1"
>
--
>
<
!--
<organzation
:formData=
"formData"
ref=
"org"
></organzation>
--
>
<
!--
</div>
--
>
</div>
</div>
</
template
>
...
...
@@ -72,6 +73,10 @@
this
.
enterType
=
enterType
;
this
.
roleType
=
roleType
;
if
(
this
.
enterType
!=
null
&&
this
.
roleType
!=
null
){
this
.
curmbSecond
=
"编辑小圈"
}
if
(
roleType
==
null
||
roleType
==
undefined
){
let
highMainManager
=
localStorage
.
getItem
(
'highMainManager'
);
let
mainManager
=
localStorage
.
getItem
(
'mainManager'
);
...
...
@@ -163,10 +168,15 @@
vm
.
POST
(
"circle/circle/save"
,
req
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
)
{
// console.log(res);
console
.
log
(
this
.
$refs
);
vm
.
formData
.
id
=
res
.
data
;
this
.
active
=
1
;
this
.
stepData
=
[
false
,
true
];
// console.log(this.$refs);
// vm.formData.id = res.data;
// // this.active = 1;
// this.stepData = [false, true];
this
.
$message
.
success
(
'保存成功'
);
const
_this
=
this
;
setTimeout
(
function
()
{
_this
.
$router
.
go
(
-
1
)
},
100
);
}
else
{
...
...
src/views/yqrange/live-manage.vue
浏览文件 @
e08e7b40
<
template
>
<div
class=
"yqrange-index-wrapper"
>
<
bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
></bread-crumb
>
<div
class=
"yqrange-index-content
screenSet
"
id=
"screenSet"
>
<
div
class=
"header-title"
>
直播管理
</div
>
<
!--
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
></bread-crumb>
--
>
<div
class=
"yqrange-index-content"
id=
"screenSet"
>
<
!--
<div
class=
"header-title"
>
直播管理
</div>
--
>
<el-form
ref=
"searchForm"
:model=
"searchForm"
...
...
@@ -392,9 +392,15 @@ export default {
isSign
:
0
,
// 是否签到
};
},
props
:{
circleName
:
{
type
:
String
}
},
created
()
{
vm
=
this
;
this
.
circleId
=
this
.
$route
.
query
.
id
;
console
.
log
(
"circleName: "
+
this
.
circleName
);
vm
.
getLiveList
(
""
,
""
);
},
methods
:
{
...
...
@@ -432,12 +438,17 @@ export default {
},
//新建直播
createLive
()
{
this
.
$router
.
push
({
path
:
"/create-live"
,
query
:
{
circleId
:
this
.
circleId
circleId
:
this
.
circleId
,
circleName
:
this
.
circleName
}
});
// this.$emit("setActive", 4);
},
//弹出直播链接弹窗
liveLink
(
row
)
{
...
...
@@ -965,7 +976,8 @@ export default {
query
:
{
// rtcId: "1"
rtcId
:
row
.
rtcId
,
circleId
:
this
.
circleId
circleId
:
this
.
circleId
,
circleName
:
this
.
circleName
}
});
},
...
...
@@ -1028,7 +1040,6 @@ export default {
pageNo
:
this
.
searchForm
.
pageNo
,
pageSize
:
this
.
searchForm
.
pageSize
};
console
.
log
(
"alex name = "
+
name
+
", status = "
+
status
);
vm
.
POST
(
"rtc/liveAdmin/list"
,
req
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
)
{
// console.log(res);
...
...
@@ -1047,8 +1058,7 @@ export default {
createTime
:
res
.
data
.
pageContents
[
i
].
createdTime
,
startTime
:
res
.
data
.
pageContents
[
i
].
openTime
,
endTime
:
res
.
data
.
pageContents
[
i
].
endTime
,
rtcId
:
res
.
data
.
pageContents
[
i
].
id
,
isSign
:
res
.
data
.
pageContents
[
i
].
isSign
rtcId
:
res
.
data
.
pageContents
[
i
].
id
};
listData
.
push
(
obj
);
}
...
...
src/views/yqrange/range-manage.vue
0 → 100644
浏览文件 @
e08e7b40
<
template
>
<div
class=
"resident-list"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
:curmbThird=
"curmbThird"
:jumPathThird=
"jumPathThird"
>
</bread-crumb>
<div
class=
"f-main-content screenSet patient-detail-wrap"
>
<div
v-if=
"active == 0"
>
<el-tabs
v-model=
"activeName"
@
tab-click=
"tabChangeHandler"
>
<el-tab-pane
label=
"成员管理"
name=
"first"
>
</el-tab-pane>
<el-tab-pane
label=
"分组管理"
name=
"second"
>
</el-tab-pane>
<el-tab-pane
label=
"直播管理"
name=
"third"
>
<live-manage
@
setActive=
"setActive"
:circleName=
"name"
></live-manage>
</el-tab-pane>
<el-tab-pane
label=
"应用配置"
name=
"fourth"
>
<range-setting></range-setting>
</el-tab-pane>
</el-tabs>
</div>
<div
v-if=
"active == 4"
>
<create-live
:curmbSecond=
"curmbSecond"
:jumPathFouth=
"jumPathFouth"
></create-live>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
BreadCrumb
from
"@/components/yqrange/breadcrumb-range.vue"
;
import
{
getRangeList
,
updateRangeStatus
,
getCircleSettingList
,
saveCircleSetting
}
from
"../../utils/yqrange/yqrangeApi"
;
import
LiveManage
from
"./live-manage"
;
import
RangeSetting
from
"./range-setting"
;
import
CreateLive
from
"./create-live"
;
export
default
{
components
:
{
CreateLive
,
RangeSetting
,
LiveManage
,
BreadCrumb
},
data
(){
return
{
curmbFirst
:
'云鹊小圈'
,
curmbSecond
:
'圈子管理'
,
curmbThird
:
''
,
jumPathFouth
:
""
,
jumPathThird
:
'/yq-range'
,
activeName
:
'first'
,
showAllFlag
:
false
,
showNewFlag
:
false
,
searchForm
:
{
name
:
''
,
createdTime
:
''
,
// endTime: '',
userType
:
""
,
// 用户标识 1:内部用户 2:外部用户,
status
:
""
,
pageNo
:
1
,
pageSize
:
10
,
},
totalRows
:
0
,
tableData
:
[],
dialogSettingVisible
:
false
,
circleId
:
null
,
name
:
""
,
active
:
0
}
},
created
()
{
const
{
id
,
name
,
activeName
}
=
this
.
$route
.
query
;
this
.
circleId
=
id
;
this
.
name
=
name
;
this
.
activeName
=
activeName
;
this
.
curmbSecond
=
"圈子管理-"
+
name
;
this
.
curmbThird
=
this
.
curmbSecond
;
this
.
active
=
0
;
this
.
jumPathFouth
=
"/range-manage?id="
+
this
.
circleId
+
"&name="
+
this
.
name
;
// this.jumPathFouth = "/yq-range";
},
methods
:
{
tabChangeHandler
(
tab
)
{},
setActive
(
active
){
this
.
active
=
active
;
}
},
}
</
script
>
<
style
lang=
"scss"
>
.yqrange-index-wrapper
{
.yqrange-index-content
{
background
:
#fff
;
padding
:
10px
;
.header-title
{
padding
:
10px
12px
;
font-size
:
12px
;
color
:
#449284
;
border-bottom
:
1px
solid
#efefef
;
}
}
.el-button--text
{
color
:
#449284
;
font-size
:
14px
;
&
:
:
after
{
content
:
''
;
position
:
relative
;
height
:
14px
;
/*border-right: 1px solid #EBEEF5;*/
border-right
:
1px
solid
#aaaaaa
;
padding-right
:
10px
;
}
&
:last-of-type
{
&
:
:
after
{
content
:
''
;
position
:
relative
;
width
:
1px
;
height
:
14px
;
border-right
:
none
;
}
}
}
}
/*.range-make-box{*/
/*.el-message-box__btns{*/
/*margin-top: 30px;*/
/*}*/
/*}*/
</
style
>
<
style
lang=
"scss"
scoped
>
@import
'../../style/patients-style/element-reset.css'
;
.f-main-content
{
background
:
#ffffff
;
padding
:
30px
;
.right-btn-group
{
position
:
absolute
;
right
:
60px
;
z-index
:
1800
;
}
.section
{
.item
{
display
:
flex
;
font-size
:
14px
;
div
{
display
:
flex
;
flex
:
1
;
line-height
:
36px
;
.title
{
width
:
150px
;
text-align
:
right
;
}
.info
{
color
:
#999
;
padding-left
:
15px
;
width
:
100%
;
}
}
&
.wrap-p
{
div
{
line-height
:
28px
;
}
}
.btn-right
{
width
:
35%
;
padding-left
:
10px
;
}
}
.has-header
{
display
:
flex
;
justify-content
:
space-between
;
padding
:
15px
0
;
margin-bottom
:
15px
;
border-bottom
:
1px
dashed
#888
;
.right-p
{
display
:
inline-block
;
text-align
:
right
;
color
:
#999
;
font-size
:
14px
;
span
:last-child
{
margin-left
:
15px
;
}
}
}
}
.health-record-wrap
{
/*height: 300px;*/
overflow-y
:
auto
;
@media
screen
and
(
min-width
:
1240px
)
and
(
max-width
:
1545px
){
height
:
350px
;
}
@media
screen
and
(
min-width
:
1545px
)
and
(
max-width
:
1600px
){
height
:
580px
;
}
@media
screen
and
(
min-width
:
1600px
){
height
:
670px
;
}
&
:
:-
webkit-scrollbar
{
width
:
5px
;
}
&
:
:-
webkit-scrollbar-thumb
{
/*滚动条里面小方块*/
border-radius
:
10px
;
-webkit-box-shadow
:
inset
0
0
5px
rgba
(
0
,
0
,
0
,
0
.2
);
background
:
rgba
(
0
,
0
,
0
,
0
.1
);
}
}
.health-record-list
{
.item
{
width
:
100%
;
margin-bottom
:
15px
;
.record-date
{
color
:
#999
;
padding-bottom
:
10px
;
}
.record-content
{
width
:
100%
;
border
:
1px
solid
#E4E7ED
;
border-radius
:
5px
;
padding
:
10px
15px
13px
;
.record-title
{
display
:
flex
;
justify-content
:
space-between
;
padding
:
5px
0
;
span
{
color
:
#999
;
font-size
:
14px
;
}
}
.list-visit
{
line-height
:
28px
;
padding
:
6px
0
2px
;
display
:
flex
;
display
:
-
webkit-flex
;
align-items
:
flex-start
;
font-size
:
14px
;
color
:
#999
;
.left-label
{
line-height
:
28px
;
}
.right-item
{
flex
:
1
;
line-height
:
28px
;
p
{
line-height
:
28px
;
.check-btn
{
color
:
#449284
;
cursor
:
pointer
;
margin-left
:
15px
;
}
}
}
}
}
}
}
.no-record-content
{
@media
screen
and
(
min-width
:
1240px
)
and
(
max-width
:
1545px
){
height
:
300px
;
}
@media
screen
and
(
min-width
:
1545px
)
and
(
max-width
:
1600px
){
height
:
500px
;
}
@media
screen
and
(
min-width
:
1600px
){
height
:
600px
;
}
text-align
:
center
;
padding
:
50px
0
60px
;
.no-record-info
{
position
:
absolute
;
top
:
50%
;
left
:
50%
;
transform
:
translate
(
-50%
,
-60%
);
}
img
{
width
:
120px
;
}
p
{
color
:
#B9B9C6
;
font-size
:
20px
;
}
}
.ml10
{
margin-left
:
10px
;
}
}
</
style
>
src/views/yqrange/range-setting.vue
0 → 100644
浏览文件 @
e08e7b40
<
template
>
<div
class=
"yqrange-index-wrapper"
>
<!--
<bread-crumb
:curmbFirst=
"curmbFirst"
></bread-crumb>
-->
<div
class=
"yqrange-index-content"
id=
"screenSet"
>
<!--
<div
class=
"header-title"
>
云鹊小圈
</div>
-->
<el-form
ref=
"settingForm"
:model=
"settingForm"
label-width=
"150px"
label-suffix=
":"
class=
"basic-form"
>
<div
v-for=
"(item, index) in settingForm.settingData"
:key=
"index"
>
<el-form-item
:label=
"item.appTagName"
>
<el-radio-group
size=
"small"
v-model=
"item.showOff"
>
<el-radio
:label=
"1"
>
开启
</el-radio>
<el-radio
:label=
"0"
>
关闭
</el-radio>
</el-radio-group>
</el-form-item>
</div>
</el-form>
<div
style=
"margin-top: 60px;margin-left: 150px;"
>
<el-button
type=
"primary"
@
click=
"save()"
center
>
保存
</el-button>
<!--
<el-button
@
click=
"cancle()"
>
取 消
</el-button>
-->
</div>
</div>
</div>
</
template
>
<
script
>
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
BreadCrumb
from
"@/components/breadcrumb.vue"
;
import
{
getRangeList
,
updateRangeStatus
,
getCircleSettingList
,
saveCircleSetting
}
from
"../../utils/yqrange/yqrangeApi"
;
export
default
{
components
:
{
BreadCrumb
},
data
(){
return
{
curmbFirst
:
'云鹊小圈'
,
showAllFlag
:
false
,
showNewFlag
:
false
,
searchForm
:
{
name
:
''
,
createdTime
:
''
,
// endTime: '',
userType
:
""
,
// 用户标识 1:内部用户 2:外部用户,
status
:
""
,
pageNo
:
1
,
pageSize
:
10
,
},
totalRows
:
0
,
tableData
:
[],
dialogSettingVisible
:
false
,
settingForm
:{
circleId
:
null
,
settingData
:
[]
}
}
},
created
()
{
this
.
circleId
=
this
.
$route
.
query
.
id
;
this
.
setting
();
},
methods
:
{
// 应用配置
setting
(){
let
params
=
{
circleId
:
this
.
circleId
// circleId: 22
}
getCircleSettingList
(
params
).
then
((
res
)
=>
{
closeLoading
(
this
);
if
(
res
.
code
==
"000000"
)
{
this
.
settingForm
.
settingData
=
res
.
data
;
}
else
{
this
.
settingForm
.
settingData
=
[];
}
if
(
this
.
settingForm
.
settingData
==
[]
||
this
.
settingForm
.
settingData
.
length
==
0
){
this
.
settingForm
.
settingData
=
[{
appTag
:
1
,
showOff
:
1
},
{
appTag
:
2
,
showOff
:
1
},
{
appTag
:
3
,
showOff
:
1
},
{
appTag
:
4
,
showOff
:
1
}];
}
for
(
let
i
=
0
;
i
<
this
.
settingForm
.
settingData
.
length
;
i
++
){
if
(
this
.
settingForm
.
settingData
[
i
].
appTag
==
1
){
this
.
settingForm
.
settingData
[
i
].
appTagName
=
"教培"
}
else
if
(
this
.
settingForm
.
settingData
[
i
].
appTag
==
2
){
this
.
settingForm
.
settingData
[
i
].
appTagName
=
"直播"
}
else
if
(
this
.
settingForm
.
settingData
[
i
].
appTag
==
3
){
this
.
settingForm
.
settingData
[
i
].
appTagName
=
"继教课程"
}
else
if
(
this
.
settingForm
.
settingData
[
i
].
appTag
==
4
){
this
.
settingForm
.
settingData
[
i
].
appTagName
=
"职称培训"
}
}
}).
catch
((
error
)
=>
{
this
.
$message
.
error
(
"请重试"
);
})
},
// 保存
save
(){
let
params
=
{
apps
:
this
.
settingForm
.
settingData
,
circleId
:
this
.
circleId
}
saveCircleSetting
(
params
).
then
((
res
)
=>
{
closeLoading
(
this
);
if
(
res
.
code
==
"000000"
)
{
this
.
$message
.
success
(
"保存成功!"
);
// this.$router.go(-1);
}
}).
catch
((
error
)
=>
{
this
.
$message
.
error
(
"请重试"
);
})
},
cancle
(){
this
.
$router
.
go
(
-
1
);
}
},
}
</
script
>
<
style
lang=
"scss"
>
.yqrange-index-wrapper
{
.yqrange-index-content
{
background
:
#fff
;
padding
:
10px
;
.header-title
{
padding
:
10px
12px
;
font-size
:
12px
;
color
:
#449284
;
border-bottom
:
1px
solid
#efefef
;
}
}
.el-button--text
{
color
:
#449284
;
font-size
:
14px
;
&
:
:
after
{
content
:
''
;
position
:
relative
;
height
:
14px
;
/*border-right: 1px solid #EBEEF5;*/
border-right
:
1px
solid
#aaaaaa
;
padding-right
:
10px
;
}
&
:last-of-type
{
&
:
:
after
{
content
:
''
;
position
:
relative
;
width
:
1px
;
height
:
14px
;
border-right
:
none
;
}
}
}
}
/*.range-make-box{*/
/*.el-message-box__btns{*/
/*margin-top: 30px;*/
/*}*/
/*}*/
</
style
>
src/views/yqrange/yq-range.vue
浏览文件 @
e08e7b40
...
...
@@ -62,6 +62,7 @@
<el-button
@
click=
"editRange(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button>
<el-button
@
click=
"deleteRange(scope.row)"
type=
"text"
size=
"small"
v-if=
"showAllFlag && scope.row.status != 0"
>
解散圈子
</el-button>
<el-button
@
click=
"setting(scope.row)"
type=
"text"
size=
"small"
v-if=
"scope.row.status != 0 && showNewFlag"
>
应用配置
</el-button>
<el-button
@
click=
"rangeManage(scope.row)"
type=
"text"
size=
"small"
v-if=
"scope.row.status != 0"
>
管理
</el-button>
</div>
</
template
>
</el-table-column>
...
...
@@ -104,27 +105,6 @@
</div>
<!--<el-form-item label="直播">-->
<!--<el-radio-group size="small">-->
<!--<el-radio label="1">开启</el-radio>-->
<!--<el-radio label="0">关闭</el-radio>-->
<!--</el-radio-group>-->
<!--</el-form-item>-->
<!--<el-form-item label="继教课程">-->
<!--<el-radio-group size="small">-->
<!--<el-radio label="1">开启</el-radio>-->
<!--<el-radio label="0">关闭</el-radio>-->
<!--</el-radio-group>-->
<!--</el-form-item>-->
<!--<el-form-item label="职称培训">-->
<!--<el-radio-group size="small">-->
<!--<el-radio label="1">开启</el-radio>-->
<!--<el-radio label="0">关闭</el-radio>-->
<!--</el-radio-group>-->
<!--</el-form-item>-->
</el-form>
...
...
@@ -196,7 +176,7 @@ export default {
setTimeout
(()
=>
{
this
.
getUserAuth
();
},
1500
)
}
},
...
...
@@ -330,7 +310,15 @@ export default {
},
rangeManage
(
row
)
{
this
.
$router
.
push
({
path
:
'/range-manage'
,
query
:
{
id
:
row
.
id
,
name
:
row
.
name
}
})
},
//直播管理
liveManage
(
row
)
{
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录