|
|
@@ -1,10 +1,17 @@
|
|
|
<template>
|
|
|
<view class="school-circle iPhone-bottom flex-common-css box-border-box ">
|
|
|
<image class="circle-add" src="@/static/img/school/add.png" mode="" @click="openPop()"></image>
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
<view class="bg-box"></view>
|
|
|
- <Nav title='圈子' bgckgroundBox='transparent'></Nav>
|
|
|
+
|
|
|
+ <Nav :leftShow='false' :customNav='true' bgckgroundBox='transparent'>
|
|
|
+ <template>
|
|
|
+ <view slot="custom" class="align-items-center">
|
|
|
+ <uni-icons type="left" size="20" @click="toBack()"></uni-icons>
|
|
|
+ <view class="w-390 text-overflow-ellipsis-one fs-36 fw-400">{{schoolData.school_name}}</view>
|
|
|
+ </view>
|
|
|
+ </template>
|
|
|
+ </Nav>
|
|
|
|
|
|
<view class="ts-box mt-24 align-items-center box-border-box plr-12 mb-20">
|
|
|
<image src="@/static/img/school/ts.png" mode=""></image>
|
|
|
@@ -12,55 +19,58 @@
|
|
|
</view>
|
|
|
|
|
|
<view class="nav-box display-flex box-border-box mb-20">
|
|
|
- <view class="nav-item view-nowrap" :class="id == i?'h130':''" v-for="(item,i) in 10" :key="i">
|
|
|
- <image class="nav-icon" src="@/static/img/school/icon.png" mode=""></image>
|
|
|
- <view class="fs-24 plr-24 " :class="id==i?'fw-600 fc-41ABF5':''">全部帖子</view>
|
|
|
- <image v-if="id == i" class="nav-bg" src="@/static/img/school/bg.png" mode=""></image>
|
|
|
+ <view class="nav-item view-nowrap" @click="selectTopicId(item.id)"
|
|
|
+ :class="fromData.topic_id == item.id?'h130':''" v-for="(item,i) in classList" :key="i">
|
|
|
+ <image v-if="item.id == 0" class="nav-icon" src="@/static/img/school/icon.png" mode=""></image>
|
|
|
+ <image v-else class="nav-icon" :src="item.image" mode=""></image>
|
|
|
+ <view class="fs-24 plr-24 " :class="fromData.topic_id==item.id?'fw-600 fc-41ABF5':''">{{item.name}}</view>
|
|
|
+ <image v-if="fromData.topic_id == item.id" class="nav-bg" src="@/static/img/school/bg.png" mode=""></image>
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
<view class="flex-justify-space type-box mb-24">
|
|
|
<view class="display-flex">
|
|
|
- <view class="box-1" :class="id == 0?'box-s':''">最新</view>
|
|
|
- <view class="box-1">最热</view>
|
|
|
- <view class="box-1">评论最多</view>
|
|
|
+ <view @click="selectOrderBuy(1)" class="box-1" :class="fromData.orderBy == 1?'box-s':''">最新</view>
|
|
|
+ <view @click="selectOrderBuy(2)" class="box-1" :class="fromData.orderBy == 2?'box-s':''">最热</view>
|
|
|
+ <view @click="selectOrderBuy(3)" class="box-1" :class="fromData.orderBy == 3?'box-s':''">评论最多</view>
|
|
|
</view>
|
|
|
- <view class="box-2 fs-24 fc-41ABF5">逛其他学校</view>
|
|
|
+ <view class="box-2 fs-24 fc-41ABF5" @click="toSelectSchool()">逛其他学校</view>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view v-if="list.length === 0" class="scroll-view-css">
|
|
|
+ <EnBlank :customSrc='true'>
|
|
|
+ <template v-slot:blankImg>
|
|
|
+ <image class="black-custom-img" src="@/static/img/common/no-order.png" mode=""></image>
|
|
|
+ </template>
|
|
|
+ </EnBlank>
|
|
|
</view>
|
|
|
|
|
|
- <scroll-view scroll-y="true" class="scroll-view-css" @scrolltolower="scrolltolower">
|
|
|
- <view class="card-box box-border-box p-24 bgc-f flex-justify-space" v-for="(item,i) in 5" :key="i" @click.stop="toDet()">
|
|
|
- <image class="card-head" src="@/static/img/my/lqzx-bg.png" mode="scaleToFill"></image>
|
|
|
+ <scroll-view v-else scroll-y="true" class="scroll-view-css" @scrolltolower="scrolltolower">
|
|
|
+ <view class="card-box box-border-box p-24 bgc-f flex-justify-space" v-for="(item,i) in list" :key="i" @click.stop="toDet()">
|
|
|
+ <image class="card-head" :src="item.head_img" mode="scaleToFill"></image>
|
|
|
<view class="flex-1">
|
|
|
<view class="card-1 flex-justify-space mb-16">
|
|
|
<view class="">
|
|
|
- <view class="w-400 fs-28 fw-600 mb-8">恒生科技和半导体恒生科技和半导体恒生科技和半导体恒生科技和半导体</view>
|
|
|
- <view class="fs-24 fc-9">1小时前</view>
|
|
|
+ <view class="w-400 fs-28 fw-600 mb-8">{{item.nickname}}</view>
|
|
|
+ <view class="fs-24 fc-9">{{item.created_date}}</view>
|
|
|
</view>
|
|
|
<view class="">
|
|
|
<image class="dian-img" src="@/static/img/school/dian.png" mode=""></image>
|
|
|
<view class="align-items-center">
|
|
|
<image class="hot-img" src="@/static/img/school/hot.png" mode=""></image>
|
|
|
- <view class="fs-26 fw-400 fc-9">125</view>
|
|
|
+ <view class="fs-26 fw-400 fc-9">{{item.heat}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="card-2 fs-30 fw-400 mb-16">
|
|
|
- 欢迎打脸,科技类型很顽强,不是刚刚说11吧,换着领涨,这个季节玩什么光伏储白酒,普
|
|
|
+ {{item.content}}
|
|
|
</view>
|
|
|
<view class="card-3 flex-wrap-wrap mb-32">
|
|
|
- <image class="card-3-img" src="@/static/img/my/lqzx-bg.png" v-for="(item,i) in 9" mode="scaleToFill"></image>
|
|
|
+ <image class="card-3-img" :src="item" v-for="(item,i) in item.image" mode="scaleToFill"></image>
|
|
|
</view>
|
|
|
<view class="card-4 flex-wrap-wrap mb-40">
|
|
|
- <view class="">重庆工商职业学校</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
- <view class="">买卖闲置</view>
|
|
|
+ <view class="">{{item.school_name}}</view>
|
|
|
+ <view class="">{{item.topic_name}}</view>
|
|
|
</view>
|
|
|
|
|
|
<view class="card-5 flex-justify-space">
|
|
|
@@ -68,13 +78,13 @@
|
|
|
<image src="@/static/img/school/fx.png" mode=""></image>
|
|
|
<view class="fs-24 fc-9">分享</view>
|
|
|
</view>
|
|
|
- <view class="align-items-center" @click.stop="handUp()">
|
|
|
- <uni-icons type="hand-up" size="22" color="#999"></uni-icons>
|
|
|
- <view class="fs-24 fc-9">12</view>
|
|
|
+ <view class="align-items-center" @click.stop="handUp(item)">
|
|
|
+ <uni-icons type="hand-up" size="22" :color="item.is_like==1?'#FD5C02':'#999'"></uni-icons>
|
|
|
+ <view class="fs-24 " :class="item.is_like==1?'fc-FD5C02':'fc-9'">{{item.like}}</view>
|
|
|
</view>
|
|
|
- <view class="align-items-center" @click.stop="openMsg()">
|
|
|
+ <view class="align-items-center" @click.stop="openMsg(item)">
|
|
|
<image src="@/static/img/school/info.png" mode=""></image>
|
|
|
- <view class="fs-24 fc-9">6</view>
|
|
|
+ <view class="fs-24 fc-9">{{item.remark}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
@@ -87,10 +97,10 @@
|
|
|
<view class="head-pop flex-justify-space align-items-center mb-24">
|
|
|
<uni-icons @click.stop="closePop()" type="closeempty" size="24"></uni-icons>
|
|
|
<view class="fs-36 fc-0 fw-600">选发布类型</view>
|
|
|
- <view class="fs-28 fw-600 fc-41ABF5" @click.stop="add">确定</view>
|
|
|
+ <view class="fs-28 fw-600 fc-41ABF5" @click.stop="add()">确定</view>
|
|
|
</view>
|
|
|
<view class="scroll-view-css">
|
|
|
- <view class="item-box fs-32 " :class="id==i?'fc-41ABF5 bgc-D5EDFB':'bgc-F3F4F6'" v-for="(item,i) in 10" :key="i">分享交流</view>
|
|
|
+ <view class="item-box fs-32 " :class="id==i?'fc-41ABF5 bgc-D5EDFB':'bgc-F3F4F6'" v-for="(item,i) in classListPop" :key="i">{{item.name}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</uni-popup>
|
|
|
@@ -98,6 +108,7 @@
|
|
|
|
|
|
<uni-popup ref="popmsg" type="bottom">
|
|
|
<view class="pop-box pop-msg box-border-box p-24">
|
|
|
+ <!-- 输入框 -->
|
|
|
<view class="pop-input" v-if="isShowIpnut">
|
|
|
<view class="head-pop flex-justify-space align-items-center mb-24 box-border-box p-24">
|
|
|
<uni-icons @click.stop="closeInput()" type="closeempty" size="24"></uni-icons>
|
|
|
@@ -109,9 +120,6 @@
|
|
|
<view class="fs-34 fw-600 mb-20">评论</view>
|
|
|
<textarea class=" fs-24" placeholder='友善评论,文明发言'></textarea>
|
|
|
</view>
|
|
|
- <view class="">
|
|
|
- <EnUpload></EnUpload>
|
|
|
- </view>
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
@@ -121,28 +129,25 @@
|
|
|
<uni-icons @click.stop="closeMsg()" type="closeempty" size="24"></uni-icons>
|
|
|
</view>
|
|
|
<view class="scroll-view-css box-border-box plr-24">
|
|
|
- <view class="list-box flex-justify-space" v-for="(item,i) in 10" :key="i">
|
|
|
- <image class="list-box-img" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
|
|
|
+ <view class="list-box flex-justify-space" v-for="(item,i) in remarkData.list" :key="i">
|
|
|
+ <image class="list-box-img" :src="item.head_img" mode="scaleToFill"></image>
|
|
|
<view class="flex-1">
|
|
|
<view class=" flex-justify-space">
|
|
|
<view class="p-b-20 b-b-F9F9F9 mr-20">
|
|
|
<view class="fs-28 fw-400 fc-9 mb-8">
|
|
|
- 最佳损友最佳损友 <span class='only-box text-align-center fs-24 fc-41ABF5 ml-10'>作者</span>
|
|
|
+ {{item.nickname}} <span v-if="is_author == 1" class='only-box text-align-center fs-24 fc-41ABF5 ml-10'>作者</span>
|
|
|
</view>
|
|
|
<view class="fs-30 fw-400 mb-8" @click.stop="openInput()">
|
|
|
- 回关一下啊,这么近这么近这么近这么近这么近这么近
|
|
|
- </view>
|
|
|
- <view class="flex-wrap-wrap mb-8">
|
|
|
- <image class="msg-img" v-for="(item,i) in 4" :key="i" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
|
|
|
+ {{item.content}}
|
|
|
</view>
|
|
|
- <view class="fs-24 fw-400 fc-9 mb-8">2021-04-17 15:53</view>
|
|
|
+ <view class="fs-24 fw-400 fc-9 mb-8">{{item.created_date}}</view>
|
|
|
</view>
|
|
|
<view class="display-flex">
|
|
|
- <uni-icons type="hand-up" size="20" color="#999"></uni-icons>
|
|
|
- <view class="fs-24 fw-400 fc-9 mt-5">11</view>
|
|
|
+ <uni-icons type="hand-up" size="20" :color="item.is_like==1?'#FD5C02':'#999'"></uni-icons>
|
|
|
+ <view class="fs-24 fw-400 mt-5" :class="item.is_like==1?'fc-FD5C02':'fc-9'">{{item.like}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="list-box flex-justify-space" v-for="(info,index) in 5" :key="index">
|
|
|
+ <view class="list-box flex-justify-space" v-for="(info,index) in 1" :key="index">
|
|
|
<image class="list-box-img" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
|
|
|
<view class="flex-1">
|
|
|
<view class=" flex-justify-space">
|
|
|
@@ -153,9 +158,6 @@
|
|
|
<view class="fs-30 fw-400 mb-8" @click.stop="openInput()">
|
|
|
回关一下啊,这么近这么近这么近这么近这么近这么近
|
|
|
</view>
|
|
|
- <view class="flex-wrap-wrap mb-8">
|
|
|
- <image class="msg-img-1 msg-img" v-for="(item,i) in 4" :key="i" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
|
|
|
- </view>
|
|
|
<view class="fs-24 fw-400 fc-9 mb-8">2021-04-17 15:53</view>
|
|
|
</view>
|
|
|
<view class="display-flex">
|
|
|
@@ -175,25 +177,145 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import EnUpload from '@/components/en-from/en-upload/en-upload.vue';
|
|
|
+ import EnBlank from "@/components/en-utils/en-blank/en-blank";
|
|
|
+ import {getAlumniList,setAlumniLike,getRemarkList} from '@/api/alumni.js';
|
|
|
+ import {getTopic} from '@/api/category.js';
|
|
|
+ import tools from '@/service/tools';
|
|
|
+
|
|
|
export default {
|
|
|
- components:{EnUpload},
|
|
|
+ components:{EnBlank},
|
|
|
data(){
|
|
|
return{
|
|
|
id:0,
|
|
|
isShowIpnut:false,
|
|
|
+
|
|
|
+ classList:[],
|
|
|
+ classListPop:[],
|
|
|
+
|
|
|
+ total:0,
|
|
|
+ list:[],
|
|
|
+ fromData:{
|
|
|
+ topic_id:0,
|
|
|
+ orderBy:1,//1最新 2最热 3最多评论
|
|
|
+ school_id:'',
|
|
|
+ page:1,
|
|
|
+ },
|
|
|
+ isAJAX:false,
|
|
|
+
|
|
|
+ remarkData:{
|
|
|
+ total:0,
|
|
|
+ list:[],
|
|
|
+ page:1,
|
|
|
+ },
|
|
|
+
|
|
|
+ schoolData:{
|
|
|
+ school_name:'',
|
|
|
+ },
|
|
|
}
|
|
|
},
|
|
|
- onLoad() {
|
|
|
+ onShow(){
|
|
|
+ let circleSchoolId = uni.getStorageSync('circleSchoolId');
|
|
|
+ let schoolName = uni.getStorageSync('school_name');
|
|
|
+ let circleSchoolName = uni.getStorageSync('circleSchoolName');
|
|
|
+ this.schoolData.school_name = circleSchoolId?circleSchoolName:schoolName;
|
|
|
|
|
|
+ this.classList = [];
|
|
|
+ this.getTopic();
|
|
|
+
|
|
|
+ this.list = [];
|
|
|
+ this.fromData.page = 1;
|
|
|
+ this.getList();
|
|
|
},
|
|
|
methods:{
|
|
|
+ toBack(){
|
|
|
+ tools.leftClick()
|
|
|
+ },
|
|
|
+ toSelectSchool(){
|
|
|
+ uni.navigateTo({
|
|
|
+ url:'/pages-address/select-school?type=2'
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getTopic(){
|
|
|
+ getTopic().then((res)=>{
|
|
|
+ if(res.code === 1){
|
|
|
+ this.classListPop = JSON.parse(JSON.stringify(res.data));
|
|
|
+ this.classList = res.data;
|
|
|
+ this.classList.unshift({name:'全部贴子',id:0});
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ selectOrderBuy(type){
|
|
|
+ if(this.fromData.orderBy != type){
|
|
|
+ this.fromData.orderBy = type;
|
|
|
+ this.list = [];
|
|
|
+ this.fromData.page = 1;
|
|
|
+ this.getList();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectTopicId(id){
|
|
|
+ if(this.fromData.topic_id != id){
|
|
|
+ this.fromData.topic_id = id;
|
|
|
+ this.list = [];
|
|
|
+ this.fromData.page = 1;
|
|
|
+ this.getList();
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ getList(){
|
|
|
+ this.fromData.school_id = uni.getStorageSync('school_id');
|
|
|
+ getAlumniList(this.fromData).then((res)=>{
|
|
|
+ if(res.code === 1){
|
|
|
+ this.list = [...this.list,...res.data.items];
|
|
|
+ this.total = res.data.total;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
scrolltolower(){
|
|
|
- console.log('触底');
|
|
|
+ if(this.list.length < this.total){
|
|
|
+ this.fromData.page += 1;
|
|
|
+ this.getList();
|
|
|
+ }
|
|
|
},
|
|
|
- handUp(){
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
+ handUp(item){
|
|
|
+ if(this.isAJAX){
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.isAJAX = true;
|
|
|
+ let is_like = item.is_like == 1?0:1;
|
|
|
+ setAlumniLike({news_id:item.news_id,is_like:is_like}).then((res)=>{
|
|
|
+ if(res.code === 1){
|
|
|
+ item.is_like = is_like;
|
|
|
+ this.isAJAX = false;
|
|
|
+ tools.success(res.msg);
|
|
|
+ }else{
|
|
|
+ this.isAJAX = false;
|
|
|
+ tools.error(res.msg);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ openMsg(item){
|
|
|
+ if(this.isAJAX){
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.isAJAX = true;
|
|
|
+ getRemarkList({news_id:item.news_id,remark_id:0,page:this.remarkData.page}).then((res)=>{
|
|
|
+ if(res.code === 1){
|
|
|
+ this.remarkData.list = [...this.remarkData.list,...res.data.items];
|
|
|
+ this.remarkData.total = res.data.total;
|
|
|
+ this.remarkData.list.forEach((v)=>{
|
|
|
+ v.isOpne = false;
|
|
|
+ })
|
|
|
+ this.$refs.popmsg.open();
|
|
|
+ }
|
|
|
+ })
|
|
|
},
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
toDet(){
|
|
|
uni.navigateTo({
|
|
|
url:"/pages-school/circle-info"
|
|
|
@@ -205,17 +327,13 @@
|
|
|
closePop(){
|
|
|
this.$refs.popup.close();
|
|
|
},
|
|
|
- add(){
|
|
|
+ add(item){
|
|
|
uni.navigateTo({
|
|
|
- url:"/pages-school/add-circle"
|
|
|
+ url:"/pages-school/add-circle?topic_id=" + this.fromData.topic_id + '&news_id=' + item.news_id
|
|
|
})
|
|
|
},
|
|
|
- save(){
|
|
|
- this.isShowIpnut = false;
|
|
|
- },
|
|
|
- openMsg(){
|
|
|
- this.$refs.popmsg.open();
|
|
|
- },
|
|
|
+
|
|
|
+
|
|
|
closeMsg(){
|
|
|
this.$refs.popmsg.close();
|
|
|
},
|
|
|
@@ -225,6 +343,9 @@
|
|
|
closeInput(){
|
|
|
this.isShowIpnut = false;
|
|
|
},
|
|
|
+ save(){
|
|
|
+ this.isShowIpnut = false;
|
|
|
+ },
|
|
|
},
|
|
|
}
|
|
|
</script>
|