瀏覽代碼

发帖权限优化

xhj 2 年之前
父節點
當前提交
3b081c205e

+ 1 - 1
card/index/index.vue

@@ -314,7 +314,7 @@
 						</view>
 						</block>
 						<!-- 话题 -->
-						<view class="ddflex" v-if="item.qyDialogu">
+						<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 							<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 								<image src="../../static/images/topic.png"></image>
 								{{ item.qyDialogu.title }}

+ 1 - 1
office/detail/detail.vue

@@ -60,7 +60,7 @@
 			<!-- <view class="cates ddflex" v-if="detail.question && detail.question.cateName">
 				<text>{{ detail.question.cateName }}</text>
 			</view> -->
-			<view class="ddflex" v-if="detail.qyDialogu">
+			<view class="ddflex" v-if="detail.qyDialogu&&detail.qyDialogu.isExamine==1">
 				<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + detail.qyDialogu.id)">
 					<image src="../../static/images/topic.png"></image>
 					<view class="fflex tover">{{ detail.qyDialogu.title }}</view>

+ 12 - 1
office/news/news.vue

@@ -38,7 +38,7 @@
 				<view class="sel-ht" v-if="productList.length>0&&newsType==11">{{productList.length}}个活动</view>
 				<image src="../../static/pages/images/more.png" class="rico"></image>
 			</view>
-			<view class="li ddflex" @click="jumpUrl('/office/vote/vote' + (pollObj ? '?pollId=' + pollObj.id : ''))">
+			<view v-if="havePermissionVote" class="li ddflex" @click="jumpUrl('/office/vote/vote' + (pollObj ? '?pollId=' + pollObj.id : ''))">
 				<image src="../static/images/tj_tpico.png" class="o-ico"></image>
 				<view class="fflex">投票</view>
 				<view class="sel-ht" v-if="pollObj">发起投票</view>
@@ -118,9 +118,12 @@ export default {
 			isOpenWeRunData:false,
 			
 			showArea:true,//是否选择定位
+			
+			havePermissionVote:false,//是否有选择投票的权限
 		};
 	},
 	onLoad(opt) {
+		this.getUserPermission()
 		this.newsType = opt.newsType;
 		if(opt.isVideo){
 			this.isVideo = true;
@@ -147,6 +150,14 @@ export default {
 		this.config = JSON.parse(req.getStorage('configRes'))
 	},
 	methods: {
+		getUserPermission(){
+			req.getRequest('/api/user/getUserPermission',{},res=>{
+				if(res){
+					this.havePermissionVote = res.map(item=>item.permissions).indexOf('sys:vote')>-1?true:false
+					this.havePermissionTopic = res.map(item=>item.permissions).indexOf('sys:topic')>-1?true:false
+				}
+			})
+		},
 		descInput(event) {
 			this.desc = event.detail.value;
 			console.log('desc数据>>>>>>', this.desc);

+ 1 - 1
office/poi/index.vue

@@ -68,7 +68,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}

+ 1 - 1
office/search/index.vue

@@ -46,7 +46,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}

+ 1 - 1
office/team/index.vue

@@ -94,7 +94,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}

+ 13 - 3
office/topic/topic.vue

@@ -5,7 +5,7 @@
 			<input v-model="cTitle" placeholder="自定义话题" @input="inputTopicText" placeholder-class="placeholder" class="ipt fflex" />
 			<!-- <view class="clear">取消</view> -->
 		</view>
-		<view class="new" v-if="cTitle">
+		<view class="new" v-if="cTitle && havePermissionTopic">
 			<view class="tip">没有找到想要参与的话题?</view>
 			<view class="create" @click="getSaveTopic()">
 				创建新话题:
@@ -38,17 +38,27 @@ export default {
 				// limit: 10
 			},
 			topicList: [],
-			cTitle: '' //输入的话题关键词
+			cTitle: '', //输入的话题关键词
+			
+			havePermissionTopic:false,//是否有创建话题的权限
 		};
 	},
 	onLoad() {
 		this.getListTopic();
+		this.getUserPermission()
 	},
 	onReachBottom() {
 		this.form.page++;
 		this.getListTopic();
 	},
 	methods: {
+		getUserPermission(){
+			req.getRequest('/api/user/getUserPermission',{},res=>{
+				if(res){
+					this.havePermissionTopic = res.map(item=>item.permissions).indexOf('sys:topic')>-1?true:false
+				}
+			})
+		},
 		// 监听获取话题输入
 		inputTopicText(e) {
 			this.isLoad = true;
@@ -79,7 +89,7 @@ export default {
 			this.form.poiLatitude = req.getStorage('loctionAddressMap').location.lat;
 			// this.form.orderType=1;
 			// '/api/v3/dialogue/list'
-			req.getRequest(api.get_nearby_dialogue, this.form, data => {
+			req.getRequest('/api/v3/dialogue/list', this.form, data => {
 				if (data && data.length >= this.form.limit) {
 					this.isLoad = true;
 				}

+ 13 - 2
pages/interactive/index.vue

@@ -132,7 +132,7 @@
 								</view>
 							</block>
 							<!-- 话题 -->
-							<view class="ddflex" v-if="item.qyDialogu">
+							<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 								<view class="topic ddflex"
 									@click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 									<image src="../../static/images/topic.png"></image>
@@ -330,7 +330,7 @@
 			</block>
 		</view>
 		<view :class="'create'+(config.greyTheme==1?' grayTheme':'')" @click="showBtn"
-			v-if="config.is_show_create_btn == 1">
+			v-if="config.is_show_create_btn == 1&&havePermission">
 			<image style="display: block;" src="/static/images/create.png"></image>发布
 		</view>
 		<view :class="'ceng'+(config.greyTheme==1?' grayTheme':'')" v-if="isShowbtn" @click="hideBtn"></view>
@@ -407,6 +407,8 @@
 				isShowUpdate: false, //是否显示更新信息弹窗
 				isUpdateInfo: false,//更新用户信息
 				isUpdateMobile: false,//绑定手机号
+				
+				havePermission:false//当前用户是否有发帖权限
 			}
 		},
 		onLoad(options) {
@@ -451,6 +453,8 @@
 		},
 		onShow() {
 			// this.getCategory();
+			// 获取是否有发帖权限
+			this.getUserPermission()
 			this.getConfig();
 			this.getHotTopic();
 			this.getCmsList();
@@ -485,6 +489,13 @@
 			}
 		},
 		methods: {
+			getUserPermission(){
+				req.getRequest('/api/user/getUserPermission',{},res=>{
+					if(res){
+						this.havePermission = res.map(item=>item.permissions).indexOf('sys:post')>-1?true:false
+					}
+				})
+			},
 			swiTab(index) {
 				if (this.currentTab == index) return false;
 				this.currentTab = index;

+ 1 - 1
topics/collection/collection.vue

@@ -47,7 +47,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}

+ 13 - 3
topics/detail/detail.vue

@@ -63,7 +63,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}
@@ -151,7 +151,7 @@
 			<image :src="picUrlss + 'empty_jl.png'"></image>
 			<text>暂无动态</text>
 		</view>
-		<view class="create" v-if="config.is_show_create_btn == 1" @click="createJump('/office/news/news?topicId=' + topicId)">
+		<view class="create" v-if="config.is_show_create_btn == 1 && havePermission" @click="createJump('/office/news/news?topicId=' + topicId)">
 			<image style="display: block;" src="../../static/images/create.png"></image>
 			发帖
 		</view>
@@ -193,12 +193,15 @@ export default {
 			videoCurrent: null,
 			videoContext: '',
 			config: {},
-			currentPoi: {}
+			currentPoi: {},
+			havePermission:false//当前用户是否有发帖权限
 		};
 	},
 	onLoad(opt) {
 		this.topicId = opt.topicId;
 		req.saveBehaviorNew(this.topicId,21,4)
+		// 获取是否有发帖权限
+		this.getUserPermission()
 	},
 	onShow() {
 		this.getTopicsInfo();
@@ -232,6 +235,13 @@ export default {
 		this.isShowbtn = false;
 	},
 	methods: {
+		getUserPermission(){
+			req.getRequest('/api/user/getUserPermission',{},res=>{
+				if(res){
+					this.havePermission = res.map(item=>item.permissions).indexOf('sys:post')>-1?true:false
+				}
+			})
+		},
 		showBtn() {
 			this.isShowbtn = true;
 		},

+ 1 - 1
topics/home/home.vue

@@ -148,7 +148,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}

+ 1 - 1
topics/release/release.vue

@@ -48,7 +48,7 @@
 					</view>
 					</block>
 					<!-- 话题 -->
-					<view class="ddflex" v-if="item.qyDialogu">
+					<view class="ddflex" v-if="item.qyDialogu&&item.qyDialogu.isExamine==1">
 						<view class="topic ddflex" @click="jumpUrl('/topics/detail/detail?topicId=' + item.qyDialogu.id)">
 							<image src="../../static/images/topic.png"></image>
 							{{ item.qyDialogu.title }}