提交 2f7eb22d 编写于 作者: bo.dang's avatar bo.dang

Merge branch 'dev-circle-seven-20200914' into 'release'

Dev circle seven 20200914,code review:bo.dang



See merge request !219
...@@ -74,8 +74,7 @@ ...@@ -74,8 +74,7 @@
@change="returnTypeData('dynamicFlag')" @change="returnTypeData('dynamicFlag')"
placeholder="请选择发布权限" placeholder="请选择发布权限"
size="small" size="small"
clearable clearable>
>
<el-option <el-option
v-for="(item,index) in contentList" v-for="(item,index) in contentList"
:key="index" :key="index"
...@@ -87,12 +86,23 @@ ...@@ -87,12 +86,23 @@
<!--<span class="el-icon-info"></span>--> <!--<span class="el-icon-info"></span>-->
<i class="el-icon-info" style="color: #449284;"></i> <i class="el-icon-info" style="color: #449284;"></i>
</el-tooltip> </el-tooltip>
<div style="margin-top: 60px;margin-left: 250px;">
<el-button type="primary" @click="save()" center>保存</el-button> </el-form-item>
<el-button @click="cancle()">取 消</el-button>
</div>
<el-form-item label="圈子类型" prop="type">
<el-radio-group v-model="formData.type" size="small" @change="changeType">
<el-radio :label="0" class="label-type">封闭 - 只对圈子成员可见,成员只能由管理员添加、删除</el-radio>
<el-radio :label="1" class="label-type">半开放 - 对任何人可见,用户请求加入后需管理员同意,成员可自行退出</el-radio>
<el-radio :label="2" class="label-type">开放 - 对任何人可见,用户请求加入后无需管理员同意,成员可自行退出</el-radio>
</el-radio-group>
</el-form-item> </el-form-item>
<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-dialog <el-dialog
class="dialog-title-border-old" class="dialog-title-border-old"
title="图片裁剪" title="图片裁剪"
...@@ -189,6 +199,9 @@ ...@@ -189,6 +199,9 @@
], ],
dynamicFlag: [ dynamicFlag: [
{ required: true, message: "请选择内容发布权限", trigger: "blur" }, { required: true, message: "请选择内容发布权限", trigger: "blur" },
],
type: [
{ required: true, message: "请选择圈子类型", trigger: "blur" },
] ]
}, },
imgMouseOver1: false, imgMouseOver1: false,
...@@ -338,6 +351,9 @@ ...@@ -338,6 +351,9 @@
setTimeout(function () { setTimeout(function () {
_this.$router.go(-1) _this.$router.go(-1)
}, 100); }, 100);
},
changeType(){
} }
} }
} }
...@@ -431,4 +447,8 @@ ...@@ -431,4 +447,8 @@
color: #f56c6c; color: #f56c6c;
margin-right: 4px; margin-right: 4px;
} }
.label-type {
width: 100%;
margin-top: 10px;
}
</style> </style>
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
</el-table> </el-table>
<div class="pagination"> <div class="pagination">
<el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization" <el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization"
:current-page="formOrganization.pageNum" :page-sizes="[10, 20, 40]" :page-size="formOrganization.pageSize" :current-page="formOrganization.pageNum" :page-sizes="[10, 30, 50, 100, 200]" :page-size="formOrganization.pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="totalOrganization"></el-pagination> layout="total, sizes, prev, pager, next, jumper" :total="totalOrganization"></el-pagination>
</div> </div>
</div> </div>
......
...@@ -61,7 +61,7 @@ ...@@ -61,7 +61,7 @@
</el-table> </el-table>
<div class="pagination"> <div class="pagination">
<el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization" <el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization"
:current-page="formOrganization.pageNum" :page-sizes="[10, 20, 40]" :page-size="formOrganization.pageSize" :current-page="formOrganization.pageNum" :page-sizes="[10, 30, 50, 100, 200]" :page-size="formOrganization.pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="totalOrganization"></el-pagination> layout="total, sizes, prev, pager, next, jumper" :total="totalOrganization"></el-pagination>
</div> </div>
</div> </div>
......
...@@ -5,6 +5,16 @@ ...@@ -5,6 +5,16 @@
<i class="el-icon-circle-plus-outline" @click="dialogOrgFn()"></i> <i class="el-icon-circle-plus-outline" @click="dialogOrgFn()"></i>
<i class="text" @click="dialogOrgFn()">添加机构</i> <i class="text" @click="dialogOrgFn()">添加机构</i>
</el-col> </el-col>
<el-col class="add-organization" v-if="showImportFlag">
<el-upload
class="bg-uploader"
action="#"
:show-file-list="false"
:before-upload="beforeUploadOrg">
<i class="el-icon-document-add"></i>
<i class="text">批量导入</i>
</el-upload>
</el-col>
<el-col class="organization-search"> <el-col class="organization-search">
<el-form :inline="true" :model="formOrganization" class="demo-form-inline" > <el-form :inline="true" :model="formOrganization" class="demo-form-inline" >
<el-form-item label> <el-form-item label>
...@@ -55,7 +65,7 @@ ...@@ -55,7 +65,7 @@
</el-table> </el-table>
<div class="pagination"> <div class="pagination">
<el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization" <el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization"
:current-page="formOrganization.pageNum" :page-sizes="[10, 20, 40]" :page-size="formOrganization.pageSize" :current-page="formOrganization.pageNum" :page-sizes="[10, 30, 50, 100, 200]" :page-size="formOrganization.pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="totalOrganization"></el-pagination> layout="total, sizes, prev, pager, next, jumper" :total="totalOrganization"></el-pagination>
</div> </div>
<el-dialog <el-dialog
...@@ -87,6 +97,21 @@ ...@@ -87,6 +97,21 @@
<el-button type="primary" @click="hideDeleteFrom">取 消</el-button> <el-button type="primary" @click="hideDeleteFrom">取 消</el-button>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog
title="导入错误提示"
:visible.sync="dialogVisible"
width="500px"
:close-on-click-modal="false"
@close="handleErrorClose"
center
>
<el-table :data="dialogErrorData" align="center">
<el-table-column property="rowNumber" label="行数" align="center"></el-table-column>
<el-table-column property="wrongData" label="错误提示" align="center"></el-table-column>
</el-table>
</el-dialog>
</div> </div>
</template> </template>
...@@ -96,6 +121,7 @@ import { doUpload, getFilePath } from "@/utils/qiniu-util"; ...@@ -96,6 +121,7 @@ import { doUpload, getFilePath } from "@/utils/qiniu-util";
import * as operationData from "@/utils/operation"; import * as operationData from "@/utils/operation";
import { moRelSearch, morDeleteOrg } from '@/utils/yqrange/memberApi'; import { moRelSearch, morDeleteOrg } from '@/utils/yqrange/memberApi';
import { getOrgProvincesReq } from '@/utils/yqrange/rangeApi'; import { getOrgProvincesReq } from '@/utils/yqrange/rangeApi';
import { uploadOrg } from '@/utils/yqrange/yqrangeApi';
import checkOrg from './checkOrg' import checkOrg from './checkOrg'
let vm = null; let vm = null;
export default { export default {
...@@ -162,7 +188,10 @@ export default { ...@@ -162,7 +188,10 @@ export default {
dialogOrg: false, dialogOrg: false,
deleteVisible: false, deleteVisible: false,
detelMessage: '', detelMessage: '',
clickItem: null clickItem: null,
dialogVisible: false,
dialogErrorData: [],
showImportFlag: false,
} }
}, },
components: { components: {
...@@ -173,6 +202,12 @@ export default { ...@@ -173,6 +202,12 @@ export default {
this.initRange(); this.initRange();
//Idtype:1,内部 2.外部 //Idtype:1,内部 2.外部
vm.idType = localStorage.getItem("storageIdType"); vm.idType = localStorage.getItem("storageIdType");
if(vm.idType == 1){
this.showImportFlag = true;
}
else {
this.showImportFlag = false;
}
}, },
mounted() { mounted() {
}, },
...@@ -408,7 +443,67 @@ export default { ...@@ -408,7 +443,67 @@ export default {
this.dialogOrg = false this.dialogOrg = false
this.searchOrganization() this.searchOrganization()
this.$emit('refreshRenYuan') this.$emit('refreshRenYuan')
} },
// 批量导入
beforeUploadOrg(file) {
let name = file.name;
let type = name.substring(name.lastIndexOf('.') + 1);
if (type !== 'xls' && type !== 'xlsx') {
vm.$message({
message: '上传文件只能是 xls、xlsx格式!',
type: 'warning'
});
return;
}
openLoading(vm);
let formData = new FormData();
formData.append("circleId", vm.circleId);
formData.append("file", file);
// let files = new window.File();
uploadOrg(formData).then(res => {
closeLoading(vm);
if (res.code == "000000") {
if(res.data.successNum == 0 && res.data.wrongDataList.length > 0){
this.dialogVisible = true;
this.dialogErrorData = res.data.wrongDataList;
}
else {
this.$message({
type: 'success',
message: '导入成功!'
});
vm.initRange();
vm.searchOrganization();
vm.$emit('refreshRenYuan');
}
}
else {
this.$message({
type: 'error',
message: res.message
});
}
// vm.setDialog(res);
});
// };
// reader.readAsDataURL(file);
},
handleErrorClose() {
this.dialogVisible = false;
},
} }
} }
</script> </script>
...@@ -430,7 +525,7 @@ export default { ...@@ -430,7 +525,7 @@ export default {
font-size: 18px; font-size: 18px;
margin-right: 2px; margin-right: 2px;
} }
} }
.organization-search { .organization-search {
margin-right: 20px; margin-right: 20px;
......
...@@ -5,6 +5,16 @@ ...@@ -5,6 +5,16 @@
<i class="el-icon-circle-plus-outline" @click="dialogMemberFn()"></i> <i class="el-icon-circle-plus-outline" @click="dialogMemberFn()"></i>
<i class="text" @click="dialogMemberFn()">添加人员</i> <i class="text" @click="dialogMemberFn()">添加人员</i>
</el-col> </el-col>
<el-col class="add-organization" v-if="showImportFlag">
<el-upload
class="bg-uploader"
action="#"
:show-file-list="false"
:before-upload="beforeUploadDoc">
<i class="el-icon-document-add"></i>
<i class="text">批量导入</i>
</el-upload>
</el-col>
<el-col class="organization-search"> <el-col class="organization-search">
<el-form :inline="true" :model="formOrganization" class="demo-form-inline" > <el-form :inline="true" :model="formOrganization" class="demo-form-inline" >
<el-form-item label="机构:"> <el-form-item label="机构:">
...@@ -19,7 +29,7 @@ ...@@ -19,7 +29,7 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button size="small" type="primary" @click="serch()">搜索</el-button> <el-button size="small" type="primary" @click="serch()">搜索</el-button>
</el-form-item> </el-form-item>
...@@ -56,7 +66,7 @@ ...@@ -56,7 +66,7 @@
</el-table> </el-table>
<div class="pagination"> <div class="pagination">
<el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization" <el-pagination background @size-change="handleSizeOrganization" @current-change="handleCurrentOrganization"
:current-page="formOrganization.pageNum" :page-sizes="[10, 20, 40]" :page-size="formOrganization.pageSize" :current-page="formOrganization.pageNum" :page-sizes="[10, 30, 50, 100, 200]" :page-size="formOrganization.pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="totalPeople"></el-pagination> layout="total, sizes, prev, pager, next, jumper" :total="totalPeople"></el-pagination>
</div> </div>
<el-dialog <el-dialog
...@@ -88,6 +98,22 @@ ...@@ -88,6 +98,22 @@
<el-button type="primary" @click="hideDeleteFrom">取 消</el-button> <el-button type="primary" @click="hideDeleteFrom">取 消</el-button>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog
title="导入错误提示"
:visible.sync="dialogVisible"
width="500px"
:close-on-click-modal="false"
@close="handleErrorClose"
center
>
<el-table :data="dialogErrorData" align="center">
<el-table-column property="rowNumber" label="行数" align="center"></el-table-column>
<el-table-column property="wrongData" label="错误提示" align="center"></el-table-column>
</el-table>
</el-dialog>
</div> </div>
</template> </template>
...@@ -96,6 +122,7 @@ import * as operationData from "@/utils/operation"; ...@@ -96,6 +122,7 @@ import * as operationData from "@/utils/operation";
import { openLoading, closeLoading } from "@/utils/utils"; import { openLoading, closeLoading } from "@/utils/utils";
import { doUpload, getFilePath } from "@/utils/qiniu-util"; import { doUpload, getFilePath } from "@/utils/qiniu-util";
import { mpRelSearch, mprDeleteOrg } from '@/utils/yqrange/memberApi'; import { mpRelSearch, mprDeleteOrg } from '@/utils/yqrange/memberApi';
import { uploadDoc } from '@/utils/yqrange/yqrangeApi';
import addMember from './addMember.vue' import addMember from './addMember.vue'
let vm = null; let vm = null;
export default { export default {
...@@ -173,7 +200,10 @@ export default { ...@@ -173,7 +200,10 @@ export default {
}, },
dialogOrg:false, dialogOrg:false,
deleteVisible: false, deleteVisible: false,
detelMessage: '' detelMessage: '',
dialogVisible: false,
dialogErrorData: [],
showImportFlag: false
} }
}, },
created() { created() {
...@@ -181,10 +211,16 @@ export default { ...@@ -181,10 +211,16 @@ export default {
//Idtype:1,内部 2.外部 //Idtype:1,内部 2.外部
vm.idType = localStorage.getItem("storageIdType"); vm.idType = localStorage.getItem("storageIdType");
this.initRange(); this.initRange();
if(vm.idType == 1){
this.showImportFlag = true;
}
else {
this.showImportFlag = false;
}
}, },
mounted() { mounted() {
}, },
methods: { methods: {
initRange() { initRange() {
...@@ -297,7 +333,66 @@ export default { ...@@ -297,7 +333,66 @@ export default {
addPeople() { addPeople() {
this.dialogOrg = false this.dialogOrg = false
this.initRange() this.initRange()
} },
// 批量导入
beforeUploadDoc(file) {
let name = file.name;
let type = name.substring(name.lastIndexOf('.') + 1);
if (type !== 'xls' && type !== 'xlsx') {
vm.$message({
message: '上传文件只能是 xls、xlsx格式!',
type: 'warning'
});
return;
}
openLoading(vm);
let formData = new FormData();
formData.append("circleId", vm.circleId);
formData.append("file", file);
// let files = new window.File();
uploadDoc(formData).then(res => {
closeLoading(vm);
if (res.code == "000000") {
if(res.data.successNum == 0 && res.data.wrongDataList.length > 0){
this.dialogVisible = true;
this.dialogErrorData = res.data.wrongDataList;
}
else {
this.$message({
type: 'success',
message: '导入成功!'
});
vm.initRange();
}
}
else {
this.$message({
type: 'error',
message: res.message
});
}
// vm.setDialog(res);
});
// };
// reader.readAsDataURL(file);
},
handleErrorClose() {
this.dialogVisible = false;
},
} }
} }
</script> </script>
...@@ -314,7 +409,7 @@ export default { ...@@ -314,7 +409,7 @@ export default {
font-size: 18px; font-size: 18px;
margin-right: 2px; margin-right: 2px;
} }
} }
.organization-search { .organization-search {
flex: 1; flex: 1;
......
<template>
<div class="main-content" style="position: absolute;left:80px;z-index: 1">
<!--<div class="left-box left" style="background-color: white;" v-if="searchList && searchList.length > 0">-->
<div :id="searchId" class="left-box left" style="background-color: white;" v-if="searchList && searchList.length > 0">
<!-- 搜索列表 有搜索结果时-->
<!-- v-if="searchList && searchList.length > 0" v-infinite-scroll="loadMore" :infinite-scroll-disabled="busy"-->
<div class="search-list-wrap"
infinite-scroll-distance="5"
infinite-scroll-immediate-check="false"
>
<ul class="search-list">
<li v-for="(searchLi, index) in searchList" @mousedown="handleSearchLiClick(searchLi)" :key="index">
<div class="left">
<p class="disease-name" v-html="searchLi.name"></p>
<div class="one-line">
<p class="alias" v-html="searchLi.alias"></p>
<p class="sign" v-if="searchLi.alias">|</p>
<p class="code">{{searchLi.hospitalName}}</p>
</div>
</div>
<!--<div class="right" v-if="isSearchLiSelected(searchLi)"><i class="el-icon-check"></i></div>-->
</li>
<!--<p v-if="busy" class="loading">加载中...</p>-->
<!--<p v-if="noMore" class="loading">没有更多了...</p>-->
</ul>
</div>
</div>
</div>
</template>
<script>
let vm = null;
export default {
name: "search-doctor",
components: {
},
props: {
searchList: {
type: Array,
default: []
},
searchId: {
type: Number | String,
default: 100
}
},
created() {
vm = this;
// $("#" + this.searchId).show();
},
data() {
return{}
},
mounted() {
// document.querySelector("#" + this.searchId).style.display = 'block';
},
methods: {
handleSearchLiClick(searchLi) {
console.log(this.searchId);
this.$emit('handleSearchLiClick', {
name: searchLi.name,
mobilePhone: searchLi.mobilePhone
})
},
}
}
</script>
<style lang="scss">
.main-content{
overflow: hidden;
.left{
float: left;
}
.left-box{
width: 270px;
height: 300px;
.common-diagnose{
width: 100%; height: 300px;
.title{
color: #303133;
font-size: 16px;
line-height: 40px;
margin-top: 10px;
.no-result{
font-size: 14px;
color: #e6a23c;
margin-left: 28px;
}
}
.list{
width: 100%; height: 250px;
overflow: hidden;
overflow-y: scroll;
/*.scroll-bar;*/
padding: 10px;
border: 1px solid #DCDFE6;
li{
height: 35px; line-height: 35px; padding: 0 15px;
background: #fff;
border: 1px solid #dcdfe6;
color: #606266;
cursor: pointer;
font-size: 12px;
&.active{
color: #fff;
background: #409eff;
border-color: #409eff;
}
display: inline-block;
margin: 0 10px 10px 0;
border-radius: 4px;
max-width: 350px;
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
}
}
.search-list-wrap{
width: 100%; height: 290px; margin-top: 10px;
border: 1px solid #DCDFE6;
overflow: hidden;
overflow-y: scroll;
/*.scroll-bar;*/
.search-list{
border-radius: 4px;
width: 100%;
padding: 10px;
li{
position: relative;
line-height: 30px;
overflow: hidden;
cursor: pointer;
font-size: 12px;
&:hover{
background: #eee;
}
.left{
width: 310px;
float: left;
span{
color: #ff8429;
}
.disease-name{
font-size: 14px;
}
.one-line{
width: 100%; overflow: hidden;
font-size: 12px; color: #aaa;
.alias{
float: left;
}
.sign{
float: left;
margin: 0 5px;
}
.code{
float: left;
}
}
}
.right{
position: absolute;
right: 0;
top: 50%;
margin-top: -13px;
// width: 0px;
// float: left;
display: inline-block;
vertical-align: middle;
i{
font-size: 24px;
color: #449284;
font-weight: 700;
}
}
.code{
line-height: 30px;
}
}
.loading{
color: #ccc;
text-align: center;
margin: 0;
font-size: 12px;
margin-top: 5px;
}
}
}
}
.choosed-list-wrap{
width: 450px;
height: 300px;
margin-left: 30px;
.title{
color: #303133;
font-size: 16px;
line-height: 40px;
margin-top: 10px;
}
.choosed-list{
overflow: hidden;
overflow-y: scroll;
width: 450px;
height: 250px;
padding: 10px;
border: 1px solid #DCDFE6;
/*.scroll-bar;*/
.el-tag {
margin: 0 10px 10px 0;;
.text{
display: inline-block;
max-width: 342px;
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.el-tag__close{
top: -12px;
}
}
}
}
}
</style>
...@@ -63,6 +63,7 @@ const editRange = r => require.ensure([], () => r(require('../views/yqrange/edit ...@@ -63,6 +63,7 @@ const editRange = r => require.ensure([], () => r(require('../views/yqrange/edit
const createLive = r => require.ensure([], () => r(require('../views/yqrange/create-live.vue')), 'create-live') 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 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 adminManage = r => require.ensure([], () => r(require('../views/yqrange/admin-manage.vue')), 'admin-manage')
const rangeApply = r => require.ensure([], () => r(require('../views/yqrange/range-apply.vue')), 'rangeApply')
const shopList = r => require.ensure([], () => r(require('../views/shop/shop-list.vue')), 'shop-list') 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') const createShop = r => require.ensure([], () => r(require('../views/shop/create-shop.vue')), 'create-shop')
...@@ -249,6 +250,10 @@ export default [{ ...@@ -249,6 +250,10 @@ export default [{
path: '/range-manage', path: '/range-manage',
component: rangeManage component: rangeManage
}, },
{
path: '/range-apply',
component: rangeApply
},
{ {
path: '/create-live', path: '/create-live',
component: createLive component: createLive
......
...@@ -14,9 +14,21 @@ const vueFilter = { ...@@ -14,9 +14,21 @@ const vueFilter = {
return '已结束(可回看)' return '已结束(可回看)'
} }
}, },
circleApplyStatus: (value) => {
if(value.stauts = 0){
return '拒绝'
}
else if(value.stauts = 1){
return '待审核'
}
else if(value.stauts = 2){
return '通过'
}
},
liveStatusFilter: (value) => { liveStatusFilter: (value) => {
if(value == 1) return "隐藏" if(value == 1) return "隐藏"
else return "发布" else return "发布"
}, },
liveTeacherType: (value) => { liveTeacherType: (value) => {
let doctorName = [] let doctorName = []
...@@ -30,7 +42,7 @@ const vueFilter = { ...@@ -30,7 +42,7 @@ const vueFilter = {
doctorName.push(value[i].doctorName) doctorName.push(value[i].doctorName)
} }
return doctorName.join("、") return doctorName.join("、")
} }
}, },
controlType: (value) => { controlType: (value) => {
if(value == 1) { if(value == 1) {
...@@ -56,11 +68,11 @@ const vueFilter = { ...@@ -56,11 +68,11 @@ const vueFilter = {
}, },
refreshType: (value) => { refreshType: (value) => {
if(value == 1) return "支持" if(value == 1) return "支持"
else return "不支持" else return "不支持"
}, },
moudleType: (value) => { moudleType: (value) => {
if(value == 1) return "未激活" if(value == 1) return "未激活"
else return "激活" else return "激活"
}, },
dateFilter: (value) => { dateFilter: (value) => {
if (!value) return ''; if (!value) return '';
...@@ -68,12 +80,12 @@ const vueFilter = { ...@@ -68,12 +80,12 @@ const vueFilter = {
}, },
appColumnStatusFilter: (value) => { appColumnStatusFilter: (value) => {
if(value == 1) return "未提交" if(value == 1) return "未提交"
else if(value == 4) return "已提交" else if(value == 4) return "已提交"
}, },
statusFilter: (value) => { statusFilter: (value) => {
if(value == 1) return "已创建" if(value == 1) return "已创建"
else if(value == 5) return "已发布" else if(value == 5) return "已发布"
else return "已下架" else return "已下架"
}, },
linkTypeFilter: (value) => { // 跳转类型 linkTypeFilter: (value) => { // 跳转类型
if(value == 1) return '链接' if(value == 1) return '链接'
...@@ -82,7 +94,7 @@ const vueFilter = { ...@@ -82,7 +94,7 @@ const vueFilter = {
}, },
teacherStatusFilter: (value) => { teacherStatusFilter: (value) => {
if(value == 1) return "已下架" if(value == 1) return "已下架"
else return "已发布" else return "已发布"
}, },
moduleTypeFilter: (value,data) => { // 模块类型 moduleTypeFilter: (value,data) => { // 模块类型
for(let key in data) { for(let key in data) {
...@@ -266,9 +278,9 @@ const vueFilter = { ...@@ -266,9 +278,9 @@ const vueFilter = {
let list = ''; let list = '';
for(let i=0; i<value.length ; i++) { for(let i=0; i<value.length ; i++) {
list += value[i]+'、'; list += value[i]+'、';
} }
list = list.substring(0, list.length - 1); list = list.substring(0, list.length - 1);
return list return list
}, },
} }
export default vueFilter export default vueFilter
\ No newline at end of file
...@@ -54,9 +54,9 @@ service.interceptors.request.use(config => { ...@@ -54,9 +54,9 @@ service.interceptors.request.use(config => {
} }
if( process.env.BUILD_ENV == "development" ){ // 本地开发环境qgit if( process.env.BUILD_ENV == "development" ){ // 本地开发环境qgit
// console.log('环境变量>>>> ', process.env.BUILD_ENV); // console.log('环境变量>>>> ', process.env.BUILD_ENV);
config.headers['token'] = '9606E40DDB704396AB532B2AE771048E'; // config.headers['token'] = '9098AE0A1DCE4F7B86178A9A8A1BFFCC';
// config.headers['token'] = localStorage.getItem('storageToken') config.headers['token'] = localStorage.getItem('storageToken')
}else{ }else{
config.headers['token'] = localStorage.getItem('storageToken') config.headers['token'] = localStorage.getItem('storageToken')
} }
......
...@@ -483,6 +483,17 @@ const vueFilter = { ...@@ -483,6 +483,17 @@ const vueFilter = {
return '-' return '-'
} }
}, },
circleApplyStatus: (value) => {
if(value == 0){
return '已拒绝'
}
else if(value == 1){
return '待审核'
}
else if(value == 2){
return '已通过'
}
},
// 圈子状态 0:暂存 10:待发布(已保存) 20:已发布(已提交待审核、审核被拒绝) 30:已上架(审核通过)40:下架 50:解散 // 圈子状态 0:暂存 10:待发布(已保存) 20:已发布(已提交待审核、审核被拒绝) 30:已上架(审核通过)40:下架 50:解散
rangeStatus: (value) => { rangeStatus: (value) => {
if (value == 0) { if (value == 0) {
......
此差异已折叠。
...@@ -111,3 +111,54 @@ export const getImages = (params) => { ...@@ -111,3 +111,54 @@ export const getImages = (params) => {
}) })
}; };
export const uploadOrg = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/import/hospitals`),
method: 'post',
data: params,
description: '批量导入机构',
})
};
export const uploadDoc = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/import/doctors`),
method: 'post',
data: params,
description: '批量导入人员',
})
};
export const searchDoc = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/circle/doctor/search?circleId=${params.id}&name=${params.name}`),
method: 'get',
description: '直播搜索主播或者嘉宾',
})
};
export const applyList = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/circle/apply/list`),
method: 'post',
data: params,
description: '圈子审核列表',
})
};
export const applyUpdate = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/circle/apply/update`),
method: 'post',
data: params,
description: '圈子审核列表更新',
})
};
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
@size-change="handleSizeChange" @size-change="handleSizeChange"
@current-change="handleNumChange" @current-change="handleNumChange"
:current-page="searchForm.pageNo" :current-page="searchForm.pageNo"
:page-sizes="[10, 30, 50, 100]" :page-sizes="[10, 30, 50, 100, 200]"
:page-size="searchForm.pageSize" :page-size="searchForm.pageSize"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="totalRows" :total="totalRows"
......
...@@ -86,7 +86,7 @@ ...@@ -86,7 +86,7 @@
@size-change="handleSizeOrganization" @size-change="handleSizeOrganization"
@current-change="handleCurrentOrganization" @current-change="handleCurrentOrganization"
:current-page="formOrganization.pageNum" :current-page="formOrganization.pageNum"
:page-sizes="[10, 20, 40]" :page-sizes="[10, 30, 50, 100, 200]"
:page-size="formOrganization.pageSize" :page-size="formOrganization.pageSize"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="totalOrganization" :total="totalOrganization"
......
此差异已折叠。
...@@ -60,7 +60,8 @@ ...@@ -60,7 +60,8 @@
introduce: '', introduce: '',
dynamicFlag: '', dynamicFlag: '',
idType: localStorage.getItem("storageIdType"), idType: localStorage.getItem("storageIdType"),
roleType: null roleType: null,
type: 0
} }
} }
}, },
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
</el-row> </el-row>
</el-form> </el-form>
<el-table :data="tableData" class="item-table" style="width: 100%;margin-top: 10px;"> <el-table :data="tableData" class="item-table" style="width: 100%;margin-top: 10px;">
<el-table-column prop="liveName" label="直播名称" min-width="100" align="center"></el-table-column> <el-table-column prop="name" label="直播名称" min-width="100" align="center"></el-table-column>
<el-table-column prop="liveStatus" label="直播状态" min-width="100" align="center"> <el-table-column prop="liveStatus" label="直播状态" min-width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.liveStatus | liveStatusFilter }}</span> <span>{{ scope.row.liveStatus | liveStatusFilter }}</span>
...@@ -57,8 +57,8 @@ ...@@ -57,8 +57,8 @@
<span>{{ scope.row.streamType | streamTypeFilter }}</span> <span>{{ scope.row.streamType | streamTypeFilter }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="createTime" label="创建时间" min-width="100" align="center"></el-table-column> <el-table-column prop="createdTime" label="创建时间" min-width="100" align="center"></el-table-column>
<el-table-column prop="startTime" label="开始时间" min-width="100" align="center"></el-table-column> <el-table-column prop="openTime" label="开始时间" min-width="100" align="center"></el-table-column>
<el-table-column prop="endTime" label="结束时间" min-width="100" align="center"></el-table-column> <el-table-column prop="endTime" label="结束时间" min-width="100" align="center"></el-table-column>
<el-table-column label="操作" min-width="300" align="center"> <el-table-column label="操作" min-width="300" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
@click="liveLink(scope.row)" @click="liveLink(scope.row)"
type="text" type="text"
size="small" size="small"
v-if="!((scope.row.liveStatus==4 && scope.row.liveScope==1) || (scope.row.streamType==2 && scope.row.liveScope==1))">直播链接</el-button> v-if="!((scope.row.liveStatus==4 && scope.row.scope==1) || (scope.row.streamType==2 && scope.row.scope==1))">直播链接</el-button>
<el-button <el-button
@click="updatelive(scope.row)" @click="updatelive(scope.row)"
...@@ -85,6 +85,7 @@ ...@@ -85,6 +85,7 @@
size="small" size="small"
v-if="scope.row.liveStatus==4">数据统计</el-button> v-if="scope.row.liveStatus==4">数据统计</el-button>
<el-button @click="editLive(scope.row)" type="text" size="small">编辑</el-button> <el-button @click="editLive(scope.row)" type="text" size="small">编辑</el-button>
<el-button @click="delLive(scope.row)" type="text" size="small">删除</el-button>
<!--<el-button @click="setPlayback(scope.row)" type="text" size="small" v-if="scope.row.playbackSetFlag == 1">设置回放</el-button>--> <!--<el-button @click="setPlayback(scope.row)" type="text" size="small" v-if="scope.row.playbackSetFlag == 1">设置回放</el-button>-->
<!--<el-button @click="setPlayback(scope.row)" type="text" size="small" v-if="scope.row.playbackSetFlag == 1">关闭回放</el-button>--> <!--<el-button @click="setPlayback(scope.row)" type="text" size="small" v-if="scope.row.playbackSetFlag == 1">关闭回放</el-button>-->
...@@ -98,7 +99,7 @@ ...@@ -98,7 +99,7 @@
@size-change="handleSizeChange" @size-change="handleSizeChange"
@current-change="handleNumChange" @current-change="handleNumChange"
:current-page="searchForm.pageNo" :current-page="searchForm.pageNo"
:page-sizes="[10, 30, 50, 100]" :page-sizes="[10, 30, 50, 100, 200]"
:page-size="searchForm.pageSize" :page-size="searchForm.pageSize"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="totalRows" :total="totalRows"
...@@ -152,7 +153,7 @@ ...@@ -152,7 +153,7 @@
</el-col> </el-col>
</div> </div>
<div class="live_url_style" v-if="streamType == 2 || this.liveScope==2"> <div class="live_url_style" v-if="streamType == 2 || this.scope==2">
<div class="href_style">观众链接 {{audienceUrl}}</div> <div class="href_style">观众链接 {{audienceUrl}}</div>
<el-col class="href_outer_border"> <el-col class="href_outer_border">
<el-link type="primary" @click="copyTxt(3)" size="small" class="href_button_style">复制</el-link> <el-link type="primary" @click="copyTxt(3)" size="small" class="href_button_style">复制</el-link>
...@@ -336,7 +337,7 @@ export default { ...@@ -336,7 +337,7 @@ export default {
tableData: [ tableData: [
// { // {
// liveName: "浙江医学大会第二场", // liveName: "浙江医学大会第二场",
// liveScope: 1, //直播范围 1-非公开 2-公开 // scope: 1, //直播范围 1-非公开 2-公开
// liveStatus: 1, //直播状态 1-未开始 2-直播中 3-暂停中 4-已结束 5-回放中目前只能用到1,2,4 // liveStatus: 1, //直播状态 1-未开始 2-直播中 3-暂停中 4-已结束 5-回放中目前只能用到1,2,4
// createTime: "", // createTime: "",
// startTime: "", // startTime: "",
...@@ -351,12 +352,12 @@ export default { ...@@ -351,12 +352,12 @@ export default {
signNum: 0 signNum: 0
} }
], ],
liveScope: 1, scope: 1,
liveStatus: 1, liveStatus: 1,
lecturerUrl: "https://dev.yunxin.163.com/", lecturerUrl: "",
guestUrl: "https://www.cnblogs.com/", guestUrl: "",
audienceUrl: "https://www.soho.com", audienceUrl: "",
playbackForm: { playbackForm: {
canPlayback: 0, canPlayback: 0,
playbackUrls: { playbackUrls: {
...@@ -453,17 +454,17 @@ export default { ...@@ -453,17 +454,17 @@ export default {
//弹出直播链接弹窗 //弹出直播链接弹窗
liveLink(row) { liveLink(row) {
this.dialogLivelinkVisible = true; this.dialogLivelinkVisible = true;
this.liveScope = row.liveScope; this.scope = row.scope;
this.liveStatus = row.liveStatus; this.liveStatus = row.liveStatus;
this.streamType = row.streamType; this.streamType = row.streamType;
console.log( console.log(
"liveLink() : liveScope = " + "liveLink() : scope = " +
this.liveScope + this.scope +
", liveStatus = " + ", liveStatus = " +
this.liveStatus this.liveStatus
); );
vm.GET("rtc/liveAdmin/url/" + row.rtcId, "").then(res => { vm.GET("rtc/liveAdmin/url/" + row.id, "").then(res => {
if (res.code == "000000") { if (res.code == "000000") {
this.lecturerUrl = res.data.lecturerUrl; this.lecturerUrl = res.data.lecturerUrl;
this.guestUrl = res.data.guestUrl; this.guestUrl = res.data.guestUrl;
...@@ -489,7 +490,7 @@ export default { ...@@ -489,7 +490,7 @@ export default {
setPlayback(row) { setPlayback(row) {
vm.dialogLivePlaybackVisible = true; vm.dialogLivePlaybackVisible = true;
const rtcId = row.rtcId; const rtcId = row.id;
vm.streamType = row.streamType; vm.streamType = row.streamType;
...@@ -887,7 +888,7 @@ export default { ...@@ -887,7 +888,7 @@ export default {
// vm.submitPlayback(0); // vm.submitPlayback(0);
let params = {rtcId: row.rtcId, canPlayback: 0}; let params = {rtcId: row.id, canPlayback: 0};
postPlayback(params).then((res) => { postPlayback(params).then((res) => {
closeLoading(this); closeLoading(this);
...@@ -925,7 +926,7 @@ export default { ...@@ -925,7 +926,7 @@ export default {
.then(() => { .then(() => {
openLoading(this); openLoading(this);
// confirm // confirm
let params = {rtcId: row.rtcId,liveStatus: 4}; let params = {rtcId: row.id,liveStatus: 4};
updateLiveStatus(params).then((res) => { updateLiveStatus(params).then((res) => {
closeLoading(this); closeLoading(this);
...@@ -947,11 +948,11 @@ export default { ...@@ -947,11 +948,11 @@ export default {
//数据统计 //数据统计
countLive(row) { countLive(row) {
this.rtcId = row.rtcId; this.rtcId = row.id;
this.isSign = row.isSign; this.isSign = row.isSign;
this.dialogStatisticsVisible = true; this.dialogStatisticsVisible = true;
console.log("getStatisticsData() : this.circleId = " + this.circleId); console.log("getStatisticsData() : this.circleId = " + this.circleId);
vm.GET("rtc/liveAdmin/data/" + row.rtcId, "").then(res => { vm.GET("rtc/liveAdmin/data/" + row.id, "").then(res => {
if (res.code == "000000") { if (res.code == "000000") {
let listData = []; let listData = [];
let obj = { let obj = {
...@@ -975,15 +976,26 @@ export default { ...@@ -975,15 +976,26 @@ export default {
path: "/create-live", path: "/create-live",
query: { query: {
// rtcId: "1" // rtcId: "1"
rtcId: row.rtcId, rtcId: row.id,
circleId: this.circleId, circleId: this.circleId,
circleName: this.circleName circleName: this.circleName
} }
}); });
}, },
//删除直播 //删除直播
deleteLive(row) { delLive(row) {
this.$confirm(`确定删除“${row.liveName}”吗?`, "", {
// 直播中
if(row.liveStatus == 2){
vm.$message({
type: "warning",
message: "直播中无法删除,请直播结束后重试"
});
}
// 1:直播预告;4:直播结束后,可以删除
else if(row.liveStatus == 1 || row.liveStatus == 4){
this.$confirm(`确定删除“${row.name}”吗?`, "", {
confirmButtonText: "删除", confirmButtonText: "删除",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning" type: "warning"
...@@ -991,10 +1003,7 @@ export default { ...@@ -991,10 +1003,7 @@ export default {
}) })
.then(() => { .then(() => {
// confirm // confirm
let req = { vm.DELETE("rtc/liveAdmin/" + row.id, {}).then(res => {
rtcId: row.rtcId
};
vm.DELETE("rtc/liveAdmin", req).then(res => {
if (res.code == "000000") { if (res.code == "000000") {
vm.$message({ vm.$message({
type: "success", type: "success",
...@@ -1003,13 +1012,18 @@ export default { ...@@ -1003,13 +1012,18 @@ export default {
this.getLiveList("", ""); this.getLiveList("", "");
} else { } else {
vm.$message({ vm.$message({
type: "success", type: "warning",
message: "删除失败" message: res.message
}); });
} }
}); });
}) })
.catch(() => {}); .catch(() => {});
}
}, },
// //编辑直播 // //编辑直播
// editLive(row) { // editLive(row) {
...@@ -1047,23 +1061,23 @@ export default { ...@@ -1047,23 +1061,23 @@ export default {
if (res.data.pageContents == null) { if (res.data.pageContents == null) {
return; return;
} }
for (let i = 0; i < res.data.pageContents.length; i++) { // for (let i = 0; i < res.data.pageContents.length; i++) {
let obj = { // let obj = {
liveName: res.data.pageContents[i].name, // // liveName: res.data.pageContents[i].name,
liveScope: res.data.pageContents[i].scope, // // liveScope: res.data.pageContents[i].scope,
liveStatus: res.data.pageContents[i].liveStatus, // // liveStatus: res.data.pageContents[i].liveStatus,
streamType: res.data.pageContents[i].streamType, // // streamType: res.data.pageContents[i].streamType,
playbackSetFlag: res.data.pageContents[i].playbackSetFlag, // // playbackSetFlag: res.data.pageContents[i].playbackSetFlag,
canPlayback: res.data.pageContents[i].canPlayback, // // canPlayback: res.data.pageContents[i].canPlayback,
createTime: res.data.pageContents[i].createdTime, // // createTime: res.data.pageContents[i].createdTime,
startTime: res.data.pageContents[i].openTime, // // startTime: res.data.pageContents[i].openTime,
endTime: res.data.pageContents[i].endTime, // // endTime: res.data.pageContents[i].endTime,
rtcId: res.data.pageContents[i].id, // // rtcId: res.data.pageContents[i].id,
isSign: res.data.pageContents[i].isSign // // isSign: res.data.pageContents[i].isSign
}; // };
listData.push(obj); // listData.push(obj);
} // }
this.tableData = listData; this.tableData = res.data.pageContents;
this.totalRows = res.data.totalRows; this.totalRows = res.data.totalRows;
} else { } else {
......
<template>
<div class="yqrange-index-wrapper">
<bread-crumb :curmbFirst="curmbFirst"></bread-crumb>
<div class="yqrange-index-content">
<el-form ref="searchForm" :model="searchForm" label-width="75px" label-suffix=":" :inline="true">
<el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="8">
<el-input v-model="searchForm.name" size="small" placeholder="请输入申请人姓名"></el-input>
</el-col>
<el-col :span="9">
<el-input v-model="searchForm.circleName" size="small" placeholder="请输入圈子名称"></el-input>
</el-col>
<el-col :span="9">
<el-select
v-model="searchForm.status"
placeholder="全部审核状态"
size="small"
clearable>
<el-option
v-for="item in statusList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-col>
<el-col :span="7" style="text-align: right">
<el-button type="primary" size="small" @click="search">搜索</el-button>
<el-button type="default" size="small" @click="resetForm" 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="100" align="center"></el-table-column>
<el-table-column prop="circleName" label="申请加入圈子" min-width="100" align="center"></el-table-column>
<el-table-column prop="department" label="所属科室" min-width="100" align="center"></el-table-column>
<el-table-column prop="hospital" label="所属医院" min-width="100" align="center"></el-table-column>
<el-table-column prop="provinceName" label="所属省份" min-width="100" align="center"></el-table-column>
<el-table-column prop="cityName" label="所属城市" min-width="100" align="center"></el-table-column>
<el-table-column prop="countyName" label="所属区县" min-width="100" align="center"></el-table-column>
<el-table-column prop="townName" label="所属街道" min-width="100" align="center"></el-table-column>
<el-table-column prop="status" label="审核状态" min-width="100" align="center">
<template slot-scope="scope">
<span>{{ scope.row.status | circleApplyStatus }}</span>
</template>
</el-table-column>
<el-table-column label="操作" min-width="370" align="center">
<template slot-scope="scope">
<div v-if="scope.row.status != 50">
<el-button @click="approve(scope.row)" type="text" size="small" v-if="scope.row.status != 0 && scope.row.status != 2">通过</el-button>
<el-button @click="reject(scope.row)" type="text" size="small" v-if="scope.row.status != 0 && scope.row.status != 2">拒绝</el-button>
</div>
</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>
</div>
</template>
<script>
import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue";
import { applyList, applyUpdate} from "../../utils/yqrange/yqrangeApi";
export default {
components: {
BreadCrumb
},
data(){
return{
curmbFirst: '审核列表',
showAllFlag: false,
showNewFlag: false,
searchForm: {
name: '',
circleName: '',
// endTime: '',
status: -1,
pageNo: 1,
pageSize: 10,
},
totalRows: 0,
tableData: [],
dialogSettingVisible: false,
settingForm:{
circleId: null,
settingData: []
},
statusList: [
{
value: -1,
label: "全部状态"
},
{
value: 0,
label: "已拒绝"
},
{
value: 1,
label: "待审核"
},
{
value: 2,
label: "已通过"
},
],
dialogVisible: false
}
},
created() {
this.initPrivilege();
this.search();
},
methods: {
initPrivilege(){
let idType = localStorage.getItem('storageIdType');
// if(idType == null || idType == ""){
// idType = 2;
// localStorage.setItem('storageIdType', idType);
// }
// this.searchForm.userType = idType;
// 内部用户:运营人员
if(idType == "1"){
this.showAllFlag = true;
this.showNewFlag = true;
}
// 外部用户
else if(idType == "2"){
this.showAllFlag = false;
setTimeout(() => {
this.getUserAuth();
},1500)
}
},
// 外部用户权限
getUserAuth(){
let highMainManager = localStorage.getItem('highMainManager');
let mainManager = localStorage.getItem('mainManager');
let manager = localStorage.getItem('manager');
if(highMainManager == "1" || mainManager == "1"){
this.showNewFlag = true;
}
else if(manager == "1"){
this.showNewFlag = false;
}
// localStorage.setItem('ordinary', vm.setStoreData(ordinary))
},
// 搜索
search(){
this.searchForm.pageNo = 1;
this.searchList();
},
searchList() {
openLoading(this);
let params = this.searchForm;
if(this.searchForm.status == ""){
this.searchForm.status = -1;
}
console.log('查询圈子')
applyList(params).then((res) => {
closeLoading(this);
if(res.code == "000000") {
this.tableData = res.data.list;
this.totalRows = res.data.total;
} else {
this.tableData = [];
}
}).catch((error) => {
// this.$message({
// message: error,
// type: 'error'
// });
this.$message.error("请重试");
})
},
resetForm() {
this.searchForm.name = "";
this.searchForm.circleName = "";
this.searchForm.status = -1;
console.log('重置')
this.search();
},
// 更新圈子状态(上线,下线)
updateStatus(params){
applyUpdate(params).then((res) => {
closeLoading(this);
if(res.code == "000000") {
this.$message.success("成功");
this.searchList();
} else {
this.$message.success("失败");
}
}).catch((error) => {
// this.$message({
// message: error,
// type: 'error'
// });
this.$message.error("请重试");
})
},
// 0:拒绝,1:待审核;2.通过
approve(row){
let params = {
applyList: [{
"circleId": row.circleId,
"doctorId": row.doctorId,
"status": 2
}]
};
this.updateStatus(params);
},
//拒绝
reject(row) {
let params = {
applyList: [{
"circleId": row.circleId,
"doctorId": row.doctorId,
"status": 0
}]
};
this.$confirm(`拒绝后"${row.name}"将无法访问"${row.circleName}"`, `确认拒绝`, {
confirmButtonText: '拒绝',
cancelButtonText: '取消',
type: 'warning',
customClass: 'range-make-box',
}).then(() => {
this.updateStatus(params);
// confirm
}).catch(() => {
// cancel
});
},
// 关闭
handleSettingClose(){
this.dialogSettingVisible = false;
},
handleSizeChange(val) {
this.searchForm.pageSize = val;
this.search();
},
handleNumChange(val) {
this.searchForm.pageNo = val;
this.searchList();
},
},
}
</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>
<template> <template>
<div class="yqrange-index-wrapper"> <div class="yqrange-index-wrapper">
<bread-crumb :curmbFirst="curmbFirst"></bread-crumb> <bread-crumb :curmbFirst="curmbFirst"></bread-crumb>
<div class="yqrange-index-content screenSet" id="screenSet"> <div class="yqrange-index-content screenSet">
<div class="header-title">云鹊小圈</div> <el-tabs v-model="activeName" @tab-click="tabChangeHandler">
<el-tab-pane label="云鹊小圈" name="first">
<el-form ref="searchForm" :model="searchForm" label-width="75px" label-suffix=":" :inline="true"> <el-form ref="searchForm" :model="searchForm" label-width="75px" label-suffix=":" :inline="true">
<el-row :gutter="30" type="flex" style="margin-top: 10px"> <el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="8"> <el-col :span="8">
...@@ -73,7 +74,7 @@ ...@@ -73,7 +74,7 @@
@size-change="handleSizeChange" @size-change="handleSizeChange"
@current-change="handleNumChange" @current-change="handleNumChange"
:current-page="searchForm.pageNo" :current-page="searchForm.pageNo"
:page-sizes="[10, 30, 50, 100]" :page-sizes="[10, 30, 50, 100, 200]"
:page-size="searchForm.pageSize" :page-size="searchForm.pageSize"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="totalRows" :total="totalRows"
...@@ -114,8 +115,17 @@ ...@@ -114,8 +115,17 @@
</el-dialog> </el-dialog>
</el-tab-pane>
<el-tab-pane label="审核列表" name="second" v-if="showApplyFlag">
<range-apply></range-apply>
</el-tab-pane>
</el-tabs>
</div> </div>
</div> </div>
...@@ -124,15 +134,21 @@ ...@@ -124,15 +134,21 @@
import { openLoading, closeLoading } from "../../utils/utils"; import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
import { getRangeList,updateRangeStatus, getCircleSettingList, saveCircleSetting} from "../../utils/yqrange/yqrangeApi"; import { getRangeList,updateRangeStatus, getCircleSettingList, saveCircleSetting} from "../../utils/yqrange/yqrangeApi";
import ElTabPane from "element-ui/packages/tabs/src/tab-pane";
import RangeApply from "./range-apply";
export default { export default {
components: { components: {
RangeApply,
ElTabPane,
BreadCrumb BreadCrumb
}, },
data(){ data(){
return{ return{
curmbFirst: '云鹊小圈', curmbFirst: '云鹊小圈',
activeName: 'first',
showAllFlag: false, showAllFlag: false,
showNewFlag: false, showNewFlag: false,
showApplyFlag: false,
searchForm: { searchForm: {
name: '', name: '',
createdTime: '', createdTime: '',
...@@ -157,6 +173,8 @@ export default { ...@@ -157,6 +173,8 @@ export default {
}, },
methods: { methods: {
tabChangeHandler(tab) {},
initPrivilege(){ initPrivilege(){
let idType = localStorage.getItem('storageIdType'); let idType = localStorage.getItem('storageIdType');
// if(idType == null || idType == ""){ // if(idType == null || idType == ""){
...@@ -169,14 +187,14 @@ export default { ...@@ -169,14 +187,14 @@ export default {
if(idType == "1"){ if(idType == "1"){
this.showAllFlag = true; this.showAllFlag = true;
this.showNewFlag = true; this.showNewFlag = true;
this.showApplyFlag = true;
} }
// 外部用户 // 外部用户
else if(idType == "2"){ else if(idType == "2"){
this.showAllFlag = false; this.showAllFlag = false;
setTimeout(() => { setTimeout(() => {
this.getUserAuth(); this.getUserAuth();
},1500) },500)
} }
}, },
...@@ -186,13 +204,20 @@ export default { ...@@ -186,13 +204,20 @@ export default {
let highMainManager = localStorage.getItem('highMainManager'); let highMainManager = localStorage.getItem('highMainManager');
let mainManager = localStorage.getItem('mainManager'); let mainManager = localStorage.getItem('mainManager');
let manager = localStorage.getItem('manager'); let manager = localStorage.getItem('manager');
let ordinary = localStorage.getItem('ordinary');
if(highMainManager == "1" || mainManager == "1"){ if(highMainManager == "1" || mainManager == "1"){
this.showNewFlag = true; this.showNewFlag = true;
this.showApplyFlag = true;
} }
else if(manager == "1"){ else if(manager == "1"){
this.showNewFlag = false; this.showNewFlag = false;
this.showApplyFlag = true;
} }
else if(ordinary == "1"){
this.showApplyFlag = false;
}
// localStorage.setItem('ordinary', vm.setStoreData(ordinary)) // localStorage.setItem('ordinary', vm.setStoreData(ordinary))
}, },
...@@ -455,9 +480,13 @@ export default { ...@@ -455,9 +480,13 @@ export default {
this.$message.error("请重试"); this.$message.error("请重试");
}) })
},
getRangeNotice(){
this.$router.push({
path: '/range-notice'
})
} }
}, },
} }
</script> </script>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册