提交 d3cd186a 编写于 作者: changdi.hao's avatar changdi.hao

Merge branch 'dev-liveSix-20200817' into 'release'

小生态6期   code reviewer  张平

小生态6期   code reviewer  张平

See merge request !212
此差异已折叠。
......@@ -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>
......
<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>
<template>
<div class="member-management" 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>
<span class="text inlin" @click="goBalck">黑名单</span>
</el-col>
<el-col :span="4" class="mm-r">
<span class="text" @click="goManger" v-if="role == 1">设置管理员</span>
</el-col>
</el-row>
<div class="member-main">
<org
v-show="tab == 1"
:circleId='circleId'
:roleType='roleType'
@setOrgTotal="setOrgTotal"
@refreshRenYuan='refreshRenYuan'
ref='org'
></org>
<renyaun
v-show="tab == 2"
:circleId='circleId'
:roleType='roleType'
@setPleTotal="setPleTotal"
ref='renyaun'
></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/renyuan'
import { getCircleRole } from '@/utils/yqrange/rangeApi'
export default {
props: {
circleId: {
type: Number | String,
default: 1
},
roleType: {
type: Number | String,
default: 1
},
circleName: {
type: String
}
},
data() {
return {
tab: 1,
orgbtn: 'primary',
plebtn: '',
orgTotal: 0,
pleTotal: 0,
role: 0
}
},
components: {
org,
renyaun
},
created() {
this.getRole()
},
// 挂载到Dom完成时
mounted: function() {
// commonUtil.resizeHeight();
},
methods: {
getRole() {
getCircleRole(this.circleId).then((res) => {
if(res.code == '000000') {
// 0普通人 1 管理员 2主管理员 3内部管理员 4 高级管理员
if (res.data.circleRoleId > 1) {
this.role = 1
}
}
})
},
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
},
goManger() {
this.$router.push(`/admin-manage?circleId=${this.circleId}&circleName=${this.circleName}`)
},
goBalck() {
this.$router.push(`/blacklist-manage?circleId=${this.circleId}&circleName=${this.circleName}`)
},
// getRole() {
// if (localStorage.getItem("highMainManager") == 1 || localStorage.getItem("mainManager") == 1 || localStorage.getItem("storageIdType") == 1) {
// this.role = 1
// } else {
// this.role = 0
// }
// },
refreshRenYuan() {
this.$refs.renyaun.initRange()
}
}
}
</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;
}
.inlin {
margin-left: 10px;
}
.text {
color: #606266;
font-size: 14px;
cursor: pointer;
padding: 10px;
}
}
.member-main {
margin-top: 20px;
}
}
</style>
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
......@@ -166,7 +166,6 @@
getRegionOption() {
openLoading(vm);
let idType = localStorage.getItem("storageIdType");
debugger
getCircleProvincesReq(idType).then(res => {
closeLoading(this);
if (res.code == "000000") {
......
......@@ -58,8 +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')
const shopList = r => require.ensure([], () => r(require('../views/shop/shop-list.vue')), 'shop-list')
const createShop = r => require.ensure([], () => r(require('../views/shop/create-shop.vue')), 'create-shop')
......@@ -234,10 +237,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
......@@ -246,6 +257,10 @@ export default [{
path:'/edit-range',
component: editRange
},
{
path: '/blacklist-manage',
component: blackListManage
},
{
path: '/external-resource-manage',
component: externalResourceManage,
......
......@@ -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'] = 'B66468F48B5847DE8A5A5CFB0F79022A';
config.headers['token'] = '9606E40DDB704396AB532B2AE771048E';
config.headers['token'] = localStorage.getItem('storageToken')
// config.headers['token'] = localStorage.getItem('storageToken')
}else{
config.headers['token'] = localStorage.getItem('storageToken')
}
......
......@@ -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,13 +488,13 @@ const vueFilter = {
if (value == 0) {
return '暂存'
}else if (value == 10) {
return '线'
return '未上线'
}else if (value == 20) {
return ''
}else if (value == 30) {
return '上线'
return '上线'
} else if (value == 40) {
return '下线'
return '下线'
}else if (value == 50) {
return '已解散'
}else {
......
import fetch from '../fetch';
import { getBaseUrl } from '@/utils/index'
let headers = {
'Content-Type': 'application/json;charset=UTF-8',
token: localStorage.getItem('storageToken'),
};
export const moRelAddSearch = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/people/add/search`),
method: 'post',
data: params,
description: '添加人员白名单-查询圈子to添加人员列表',
})
};
export const moPeopleOption = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/people/option`),
method: 'post',
data: params,
description: '添加白名单人员- 勾选操作',
})
};
export const moPeopleSave = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/people/save`),
method: 'post',
data: params,
description: '添加白名单人员- 保存',
})
};
export const moRelSearch = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/org/related/search`),
method: 'post',
data: params,
description: '查询机构-圈子已选机构列表',
})
};
export const clearPeopleCacheOrg = (circleId) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/people/option/clearCache/${circleId}`),
method: 'get',
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 moOptionBlackList = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/black/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 moSaveBlackList = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/black/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 clearBlackListCacheOrg = (circleId) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/black/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 获取选人时省市',
})
};
......@@ -52,3 +52,20 @@ export const getMemberSelectOrgOptionReq = (data) => {
export const getOrgProvincesReq = (idType,circleId,type=1) => {
return fetch({
headers,
url: getBaseUrl(`circle/memberSelect/provinces/idType/${idType}/${circleId}/${type}`),
method: 'get',
description: '根据用户ID圈子id 获取选人时省市',
})
};
export const getCircleRole = (circleId) => {
return fetch({
headers,
url: getBaseUrl(`circle/circle/auth/${circleId}`),
method: 'get',
description: '根据圈子 获取人的角色',
})
};
\ No newline at end of file
......@@ -19,7 +19,7 @@
<el-step title="选择学员范围">3</el-step>
</el-steps>
</el-col>
<div>
<div style="white-space: nowrap">
<div v-if="!canNext" class="dis-btn">下一步</div>
<el-button class="dis-btn-b" v-if="active != 0 && projectStatus == 1 && isPreview != 1" size="small" @click="save">暂存</el-button>
<el-button class="dis-btn-b" v-if="active !== 2 && canNext" size="small" type="primary" @click="nextStep">下一步</el-button>
......@@ -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,53 @@
></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 || isPreview == 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="请选择圈内可见范围"
:disabled="isPreview == 1"
>
<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 +202,7 @@ export default {
isPreview: 0, // 1表示是查看信息
maxLimitCreatedCustomProjectCountInYear: 20, // 同一个用户每年能够创建的项目数
allSubList: [],
isPreviewEditCourse: false,
courseId: '0',
......@@ -178,6 +210,13 @@ export default {
protocolId: 22,
protocolContent: '',
isFirst: true, // 是否是第一次(不做更新)
// 小圈
formCircle: {
microecologyId: '', // 小圈id
groupType: 1, // 关联类型:1 全部 2:分组
groupIds: [], // 分组id,全部为[]
},
circleList: [],
};
},
computed: {
......@@ -326,7 +365,7 @@ export default {
pageNo: 1,
pageSize: 10,
labelIdList: labelIdList || []
};
};
this.setSearchParam(searchParam);
},
......@@ -371,7 +410,7 @@ export default {
pageNo: 1,
pageSize: 10,
labelIdList: labelIdList || []
};
};
this.setSearchParamOrg(searchParam);
},
......@@ -425,6 +464,8 @@ export default {
// 查看时,点击下一步直接跳
if (vm.isPreview == 1) {
vm.active = 2;
this.getCircleList();
this.getCircleData();
return;
}
// 调用项目信息中的下一步操作
......@@ -436,13 +477,17 @@ 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(() => {
vm.$message.info("成功");
});
}
},
confirmFn() {
......@@ -468,7 +513,7 @@ export default {
},
// 完成触发的接口
hidefn() {
vm.regionComplete(vm.changeStatus);
vm.sendCircleData(vm.changeStatus);
},
// 选择学元范围暂存
......@@ -572,6 +617,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 +695,7 @@ export default {
vm.status4Flag = s;
},
/*
/*
展示添加机构课程弹框
如果已经加入机构,1:没有同意过协议,则打开协议弹框;2:已经加入,时直接打开添加弹框
如果没有加入机构,则直接弹出提示(我知道了)
......@@ -654,7 +746,7 @@ export default {
.then(res => {
if (res.code == "000000") {
if(!res.data) { // 没有签署,打开协议签署弹框
this.getProtocolInfoById();
this.getProtocolInfoById();
} else {
this.isPreviewEditCourse = true;
}
......
......@@ -3,28 +3,24 @@
<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-row :gutter="30" class="row" type="flex" style="margin-top: 10px;" align='middle' justify='space-around'>
<el-form ref="formInline" :model="formInline" label-width="75px" style="width:100%;">
<el-col :span="6">
<el-form-item label="项目名称:">
<el-input v-model="formInline.projectName" size="small" placeholder="请输入项目名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-col style="width: 600px">
<el-form-item label="项目时间:">
<el-date-picker
<el-date-picker
v-model="formInline.projectBegintime"
size="small"
type="datetime"
placeholder="请选择开始时间"
value-format="yyyy-MM-dd HH:mm:ss"
:picker-options="pickerOptions0"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="~">
<el-date-picker
></el-date-picker> ~
<el-date-picker
v-model="formInline.projectEndtime"
size="small"
type="datetime"
......@@ -35,7 +31,7 @@
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8" style="padding:0;text-align:right;padding-right:15px;">
<el-col :span="5" style="padding:0;text-align:right;padding-right:15px; float: right">
<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>
......
此差异已折叠。
<template>
<div class="yqrange-index-wrapper">
<bread-crumb
:curmbFirst="curmbFirst"
:curmbSecond="curmbSecond"
:curmbThird="curmbThird"
:jumPathThird="jumPathThird"
:jumPathFouth="jumPathFouth"
></bread-crumb>
<div class="yqrange-index-content screenSet" id="screenSet">
<div class="header-title">黑名单</div>
<el-form
ref="searchForm"
:model="searchForm"
label-width="75px"
label-suffix=":"
:inline="true"
>
<el-row :gutter="10" type="flex" style="margin-top: 10px">
<!-- <p class="add_btn" @click="openDialogBlackList()">+ 添加人员至黑名单</p> -->
<el-col class="add-organization">
<i class="el-icon-circle-plus-outline" @click="openDialogBlackList()"></i>
<i class="text" @click="openDialogBlackList()">添加人员至黑名单</i>
</el-col>
<el-col :span="8">
<el-form-item label="机构">
<el-input size="small" v-model="searchForm.organization" placeholder="请输入机构名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="名称">
<el-input size="small" v-model="searchForm.staffName" placeholder="请输入人员名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="7" style="text-align: right;margin-top: 5px">
<el-button type="primary" size="small" @click="search">搜索</el-button>
<el-button type="default" size="small" @click="searchCancel" style="margin-left:0;">取消搜索</el-button>
</el-col>
</el-row>
</el-form>
<el-table :data="tableData" class="item-table" style="width: 100%;margin-top: 10px;">
<el-table-column prop="name" label="人员名称" min-width="120" align="center"></el-table-column>
<el-table-column prop="department" label="所属科室" min-width="120" align="center"></el-table-column>
<el-table-column prop="hospital" label="所属医院" min-width="120" align="center"></el-table-column>
<el-table-column prop="provinceName" label="所属省份" min-width="120" align="center"></el-table-column>
<el-table-column prop="cityName" label="所属城市" min-width="120" align="center"></el-table-column>
<el-table-column prop="countyName" label="所属区县" min-width="120" align="center"></el-table-column>
<el-table-column prop="townName" label="所属街道" min-width="120" align="center"></el-table-column>
<el-table-column label="操作" min-width="200" align="center">
<template slot-scope="scope">
<el-button @click="removeBlackList(scope.row)" type="text" size="small">移出黑名单</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination
background
@size-change="handleSizeChange"
@current-change="handleNumChange"
:current-page="searchForm.pageNo"
:page-sizes="[10, 30, 50, 100]"
:page-size="searchForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="totalRows"
></el-pagination>
</div>
</div>
<el-dialog
title="添加人员至黑名单"
:visible.sync="dialogBlackList"
width="80%"
top="5vh"
:before-close="handleClose"
>
<checkBlackList v-if="dialogBlackList" :circleId="circleId" @addOrg="addOrg" @handleClose="handleClose"></checkBlackList>
<!-- :roleType="roleType" -->
</el-dialog>
</div>
</template>
<script>
let vm = null;
import BreadCrumb from "@/components/yqrange/breadcrumb-range.vue";
// import * as operationData from "../../../utils/operation";
import checkBlackList from "./checkBlackList";
export default {
components: {
BreadCrumb,
checkBlackList,
},
data() {
vm = this;
return {
circleId: 0,
curmbFirst: "云鹊小圈",
curmbSecond: "",
curmbThird: "黑名单",
jumPathThird: "/yq-range",
searchForm: {
organization: "",
staffName: "",
pageNo: 1,
pageSize: 10,
},
totalRows: 0,
tableData: [],
selfRoleId: 0,
docIds: [],
dialogBlackList: false,
};
},
created() {
vm = this;
// this.circleId = 131;
this.circleId = this.$route.query.circleId;
this.idType = localStorage.getItem("storageIdType");
this.circleName = this.$route.query.circleName;
this.curmbSecond = "圈子管理-" + this.circleName;
this.jumPathFouth =
"/range-manage?id=" +
this.circleId +
"&name=" +
this.circleName +
"&activeName=first";
console.log("alex storageIdType = " + this.idType + ", id = " + this.id);
this.searchList();
},
methods: {
// 搜索
search() {
this.searchForm.pageNo = 1;
this.searchList();
},
searchCancel() {
this.searchForm.organization = "";
this.searchForm.staffName = "";
this.searchList();
},
searchList() {
console.log("查询");
let req = {
circleId: this.circleId,
name: this.searchForm.staffName,
orgName: this.searchForm.organization,
circleId: this.circleId,
pageNo: this.searchForm.pageNo,
pageSize: this.searchForm.pageSize,
};
vm.POST("circle/memberSelect/black/related/search", req)
.then((res) => {
if (res.code == "000000") {
this.tableData = res.data.peoplesDtoList;
this.totalRows = res.data.total;
} else {
// vm.$message.info(res.message);
// vm.$message.info("操作失败,请重试");
}
})
.catch(function (error) {
vm.$message.error(error);
});
},
openDialogBlackList() {
this.dialogBlackList = true;
},
resetForm() {
console.log("重置");
this.searchForm.organization = "";
this.searchForm.staffName = "";
this.search();
},
//移出黑名单
removeBlackList(row) {
vm = this;
this.$confirm(`确定将“${row.name}”移出黑名单吗?`, "", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "alert",
customClass: "range-make-box",
})
.then(() => {
console.log("移出: row.name = " + row.name);
this.docIds = [row.id];
let req = {
circleId: this.circleId,
docIds: this.docIds,
};
vm.POST("circle/memberSelect/black/related/deletePeople", req)
.then((res) => {
if (res.code == "000000") {
vm.$message({
type: "success",
message: "操作成功",
});
this.searchList();
} else {
// vm.$message.info(res.message);
vm.$message.error("操作失败,请重试");
}
})
.catch(function (error) {
vm.$message.error(error);
});
})
.catch(() => {
// cancel
});
},
handleSizeChange(val) {
this.searchForm.pageSize = val;
this.searchForm.pageNo = 1;
this.searchList();
},
handleNumChange(val) {
this.searchForm.pageNo = val;
this.searchList();
},
handleClose() {
this.dialogBlackList = false;
},
addOrg() {
this.handleClose();
this.search();
},
},
};
</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;
}
}
}
.add_btn {
width: 200px;
margin-top: 10px;
margin-left: 20px;
}
.add-organization {
margin-left: 0px;
line-height: 20px;
width: 200px;
cursor: pointer;
padding-top: 10px;
i {
font-size: 16px;
margin-right: 2px;
}
}
}
</style>
此差异已折叠。
<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: '/live-manage',
path: '/range-manage',
query: {
id: this.formData.circleId
id: this.formData.circleId,
name: this.circleName,
activeName: "third"
}
})
}
......
......@@ -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 {
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册