Browse Source

Merge branch 'master' of http://192.168.10.18:3000/sooka_shop/sooka_consult_uniapp

付宇航 1 năm trước cách đây
mục cha
commit
b96729db53

+ 51 - 0
api/handleAffairs/topicType.js

@@ -0,0 +1,51 @@
+import request from '@/utils/request'
+
+// 查询主题类型配置列表
+export function listTopicType(query) {
+  return request({
+    url: '/jnb/topicType/list',
+    method: 'get',
+    params: query
+  })
+}
+// 查询主题类型配置列表
+export function listAll(query) {
+  return request({
+    url: '/jnb/topicType/listAll',
+    method: 'get',
+    params: query
+  })
+}
+// 查询主题类型配置详细
+export function getTopicType(id) {
+  return request({
+    url: '/jnb/topicType/' + id,
+    method: 'get'
+  })
+}
+
+// 新增主题类型配置
+export function addTopicType(data) {
+  return request({
+    url: '/jnb/topicType',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改主题类型配置
+export function updateTopicType(data) {
+  return request({
+    url: '/jnb/topicType',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除主题类型配置
+export function delTopicType(id) {
+  return request({
+    url: '/jnb/topicType/' + id,
+    method: 'delete'
+  })
+}

+ 36 - 0
api/knowledge/knowledge.js

@@ -12,4 +12,40 @@ export function getDetails(id) {
     url: '/knowledge/base/' + id,
     method: 'get',
   })
+}
+export function popularKnowledgeList() {
+  return request({
+    url: '/knowledge/base/popularKnowledgeList',
+    method: 'get',
+  })
+}
+/**
+ * 验证积分是否充足
+ */
+export function verifyScore(query) {
+  return request({
+    url: '/score/verifyScore',
+    method: 'get',
+	params:query
+  })
+}
+/**
+ * 减少积分
+ */
+export function reduceScore(data) {
+  return request({
+    url: '/score/reduceScore',
+    method: 'post',
+	data:data
+  })
+}
+/**
+ * 增加积分
+ */
+export function addScore(data) {
+  return request({
+    url: '/score/addScore',
+    method: 'post',
+	data:data
+  })
 }

+ 10 - 1
pages.json

@@ -334,6 +334,15 @@
 				"navigationBarTextStyle": "white",
 				"navigationBarTitleText": "知识库详情"
 			}
+		},
+		{
+			"path" : "pages/topic/topic",
+			"style": {
+				"usingComponents": {},
+				"navigationBarBackgroundColor": "#07c160",
+				"navigationBarTextStyle": "white",
+				"navigationBarTitleText": "主题导航"
+			}
 		}
 	],
 	"easycom": {
@@ -387,4 +396,4 @@
 		}]
 	},
 	"subPackages": []
-}
+}

+ 1 - 1
pages/index/announcementList.vue

@@ -2,7 +2,7 @@
 	<view class="list">
 		<view v-for="(item, index) in list" :key="item.id" class="item">
 			<img :src="loadImgSrc(`${item.announcementImg}`)" class="avatar" />
-			<view class="info" style="height: 10em;">
+			<view class="info" style="height: 5em;">
 				<view class="name" @click="handleNavigate(item)">
 					{{ item.announcementTitle }}
 					<view class="unread-dot" v-if="item.readType == 0"></view>

+ 476 - 400
pages/index/index.vue

@@ -1,160 +1,166 @@
 <template>
-    <view>
-        <!-- index.wxml -->
-        <view class="topBj">
-            <image :src="loadImgSrc('/jcb-top.png')"></image>
-        </view>
-        <view class="container">
-            <!-- 主导航 -->
-            <ul class="mainNav">
-                <li>
-                    <view class="wb" @tap="goWenBa"><em class="iconfont icon-wenhaofill"></em></view>
-                    <span>问吧</span>
-                </li>
-                <li>
-                    <view class="hq" @tap="goHangQing"><em class="iconfont icon-hangqing"></em></view>
-                    <span>行情</span>
-                </li>
-                <li>
-                    <view class="sc" @tap="goShangCheng"><em class="iconfont icon-shangcheng11"></em></view>
-                    <span>商城</span>
-                </li>
-                <li>
-                    <view class="bs" @tap="goBanShi"><em class="iconfont icon-banshidating1"></em></view>
-                    <span>办事</span>
-                </li>
-            </ul>
-            <!-- 村民福利 -->
-            <view class="cmfl_title">
-                <image :src="loadImgSrc('/cnfl-fl.png')"></image>
-                <h1>村民福利</h1>
-                <image :src="loadImgSrc('/cnfl-fr.png')"></image>
-            </view>
-            <view class="cnfl">
-                <view class="fv" @click="toLegal()">
-                    <text>法律乡下</text>
-                    <image :src="loadImgSrc('/fv.jpg')"></image>
-                </view>
-                <view class="hm" @click='toGovernmentList1'>
-                    <text >惠民通</text>
-                    <image :src="loadImgSrc('/hm.jpg')"></image>
-                </view>
-            </view>
-        </view>
-        <view class="fengexian"></view>
-        <!-- 分割线 -->
-        <!-- 公告 -->
-        <view class="container">
-            <view class="gonggao">
-                <span>
-                    <em class="iconfont icon-gonggao"></em>
-                    [公告]
-                </span>
-              <swiper class="swiper_container" :autoplay="true" :circular="true" :vertical="true" interval="2000">
-                <block v-for="(item, index) in announcementList" :key="index">
-                  <swiper-item @click="handleNavigate(item.id)">
-                    <view class="swiper_item">{{ item.announcementTitle }}</view>
-                  </swiper-item>
-                </block>
-              </swiper>
-              <em class="iconfont icon-xiangyoujiantou" @click="goAnnoList()"></em>
-            </view>
-        </view>
-        <!-- 公告 end -->
-        <view class="fengexian"></view>
-        <!-- 分割线 -->
-        <view class="container">
-            <!-- 政策推荐 -->
-            <view class="zcTuijian">
-                <image :src="loadImgSrc('/zctj.png')"></image>
-                <ul>
-                    <view v-for="(item, index) in governmentList" :key="index">
-                        <li style="display: flex;">
-                            <em class="iconfont icon-yuandianxiao"></em>
-                            {{ item.titleName }}
-                        </li>
-                    </view>
-                </ul>
-                <em class="iconfont icon-xiangyoujiantou" @click="toGovernmentList"></em>
-            </view>
-        </view>
-        <view class="fengexian"></view>
-        <!-- 分割线 -->
-        <view class="container">
-            <!-- 图片轮播 -->
-            <swiper :indicator-dots="indicatorDots" :autoplay="autoplay" :interval="interval" :duration="duration" :circular="circular" class="banner">
-                <block v-for="(item, index) in banners" :key="index">
-                    <swiper-item><image :src="loadImgSrc(item.src)" mode="aspectFill"></image></swiper-item>
-                </block>
-            </swiper>
-        </view>
-        <view class="fengexian"></view>
-        <!-- 分割线 -->
-        <view class="container">
-            <view class="titleLeft">
-                <em class="iconfont icon--fuwu"></em>
-                高频服务
-            </view>
-            <view class="gpfwNav">
-                <ul>
-                    <li>
-                        <view class="lvxd"><em class="iconfont icon-jurassic_nav"></em></view>
-                        <span>旅游向导</span>
-                    </li>
-                    <li>
-                        <view class="xlzx"><em class="iconfont icon-xinlizixun"></em></view>
-                        <span>心里咨询</span>
-                    </li>
-                    <li>
-                        <view class="xswz"><em class="iconfont icon-wenzhen"></em></view>
-                        <span>线上问诊</span>
-                    </li>
-                    <li>
-                        <view class="gxs" @tap="goCooperative"><em class="iconfont icon-gongxiaoshelogo"></em></view>
-                        <span @tap="goLoveAtVillage">供</span>
-                        <span @tap="goLegalService">销</span>
-                        <span @tap="goFinancialInfrastructure">社</span>
-                    </li>
-                    <li>
-                        <view class="xlzx"><em class="iconfont icon-linshijiuzhu"></em></view>
-                        <span>帮扶救助</span>
-                    </li>
-                    <li>
-                        <view class="xswz"><em class="iconfont icon-zhishi1" @tap="gozsk"></em></view>
-                        <span>知识库</span>
-                    </li>
-                    <li>
-                        <view class="lvxd"><em class="iconfont icon-zhibo" @tap="gozbdh"></em></view>
-                        <span>直播带货</span>
-                    </li>
-                    <li>
-                        <view class="more"><em class="iconfont icon-gengduo1"></em></view>
-                        <span>更多</span>
-                    </li>
-                </ul>
-            </view>
-        </view>
-        <view class="fengexian"></view>
-        <!-- 分割线 -->
-        <view class="container">
-            <view class="titleLeft">
-                <em class="iconfont icon-licaiwenda"></em>
-                热门问答
-            </view>
-            <view class="rnwdList">
-                <view class="list" @tap="goDetails" v-for="(item, index) in indexList" :key="index">
-                    <span class="listTitle">{{ item.title }}</span>
+	<view>
+		<!-- index.wxml -->
+		<view class="topBj">
+			<image :src="loadImgSrc('/jcb-top.png')"></image>
+		</view>
+		<view class="container">
+			<!-- 主导航 -->
+			<ul class="mainNav">
+				<li>
+					<view class="wb" @tap="goWenBa"><em class="iconfont icon-wenhaofill"></em></view>
+					<span>问吧</span>
+				</li>
+				<li>
+					<view class="hq" @tap="goHangQing"><em class="iconfont icon-hangqing"></em></view>
+					<span>行情</span>
+				</li>
+				<li>
+					<view class="sc" @tap="goShangCheng"><em class="iconfont icon-shangcheng11"></em></view>
+					<span>商城</span>
+				</li>
+				<li>
+					<view class="bs" @tap="goBanShi"><em class="iconfont icon-banshidating1"></em></view>
+					<span>办事</span>
+				</li>
+			</ul>
+			<!-- 村民福利 -->
+			<view class="cmfl_title">
+				<image :src="loadImgSrc('/cnfl-fl.png')"></image>
+				<h1>村民福利</h1>
+				<image :src="loadImgSrc('/cnfl-fr.png')"></image>
+			</view>
+			<view class="cnfl">
+				<view class="fv" @click="toLegal()">
+					<text>法律乡下</text>
+					<image :src="loadImgSrc('/fv.jpg')"></image>
+				</view>
+				<view class="hm" @click='toGovernmentList1'>
+					<text>惠民通</text>
+					<image :src="loadImgSrc('/hm.jpg')"></image>
+				</view>
+			</view>
+		</view>
+		<view class="fengexian"></view>
+		<!-- 分割线 -->
+		<!-- 公告 -->
+		<view class="container">
+			<view class="gonggao">
+				<span>
+					<em class="iconfont icon-gonggao"></em>
+					[公告]
+				</span>
+				<swiper class="swiper_container" :autoplay="true" :circular="true" :vertical="true" interval="2000">
+					<block v-for="(item, index) in announcementList" :key="index">
+						<swiper-item @click="handleNavigate(item.id)">
+							<view class="swiper_item">{{ item.announcementTitle }}</view>
+						</swiper-item>
+					</block>
+				</swiper>
+				<em class="iconfont icon-xiangyoujiantou" @click="goAnnoList()"></em>
+			</view>
+		</view>
+		<!-- 公告 end -->
+		<view class="fengexian"></view>
+		<!-- 分割线 -->
+		<view class="container">
+			<!-- 政策推荐 -->
+			<view class="zcTuijian">
+				<image :src="loadImgSrc('/zctj.png')"></image>
+				<ul>
+					<view v-for="(item, index) in governmentList" :key="index">
+						<li style="display: flex;">
+							<em class="iconfont icon-yuandianxiao"></em>
+							{{ item.titleName }}
+						</li>
+					</view>
+				</ul>
+				<em class="iconfont icon-xiangyoujiantou" @click="toGovernmentList"></em>
+			</view>
+		</view>
+		<view class="fengexian"></view>
+		<!-- 分割线 -->
+		<view class="container">
+			<!-- 图片轮播 -->
+			<swiper :indicator-dots="indicatorDots" :autoplay="autoplay" :interval="interval" :duration="duration"
+				:circular="circular" class="banner">
+				<block v-for="(item, index) in banners" :key="index">
+					<swiper-item>
+						<image :src="loadImgSrc(item.src)" mode="aspectFill"></image>
+					</swiper-item>
+				</block>
+			</swiper>
+		</view>
+		<view class="fengexian"></view>
+		<!-- 分割线 -->
+		<view class="container">
+			<view class="titleLeft">
+				<em class="iconfont icon--fuwu"></em>
+				高频服务
+			</view>
+			<view class="gpfwNav">
+				<ul>
+					<li>
+						<view class="lvxd"><em class="iconfont icon-jurassic_nav"></em></view>
+						<span>旅游向导</span>
+					</li>
+					<li>
+						<view class="xlzx"><em class="iconfont icon-xinlizixun"></em></view>
+						<span>心里咨询</span>
+					</li>
+					<li>
+						<view class="xswz"><em class="iconfont icon-wenzhen"></em></view>
+						<span>线上问诊</span>
+					</li>
+					<li>
+						<view class="gxs" @tap="goCooperative"><em class="iconfont icon-gongxiaoshelogo"></em></view>
+						<span @tap="goLoveAtVillage">供</span>
+						<span @tap="goLegalService">销</span>
+						<span @tap="goFinancialInfrastructure">社</span>
+					</li>
+					<li>
+						<view class="xlzx"><em class="iconfont icon-linshijiuzhu"></em></view>
+						<span>帮扶救助</span>
+					</li>
+					<li>
+						<view class="xswz"><em class="iconfont icon-zhishi1" @tap="gozsk"></em></view>
+						<span>知识库</span>
+					</li>
+					<li>
+						<view class="lvxd"><em class="iconfont icon-zhibo" @tap="gozbdh"></em></view>
+						<span>直播带货</span>
+					</li>
+					<li>
+						<view class="more"><em class="iconfont icon-gengduo1"></em></view>
+						<span>更多</span>
+					</li>
+				</ul>
+			</view>
+		</view>
+		<view class="fengexian"></view>
+		<!-- 分割线 -->
+		<view class="container">
+			<view class="titleLeft">
+				<em class="iconfont icon-licaiwenda"></em>
+				热门问答
+			</view>
+			<view class="rnwdList">
+				<view class="list" @tap="goDetails" v-for="(item, index) in indexList" :key="index">
+					<span class="listTitle">{{ item.title }}</span>
 
 					<view class="onePic" v-if="item.imgList.length == 1">
-						<image :src="loadImgSrc('/' + item.url)" v-for="(item, index1) in item.imgList" :key="index1"></image>
+						<image :src="loadImgSrc('/' + item.url)" v-for="(item, index1) in item.imgList" :key="index1">
+						</image>
 					</view>
 
 					<view class="twoPic" v-if="item.imgList.length == 2">
-						<image :src="loadImgSrc('/' + item.url)" v-for="(item, index1) in item.imgList" :key="index1"></image>
+						<image :src="loadImgSrc('/' + item.url)" v-for="(item, index1) in item.imgList" :key="index1">
+						</image>
 					</view>
 
 					<view class="threePic" v-if="item.imgList.length == 3">
-						<image :src="loadImgSrc('/' + item.url)" v-for="(item, index1) in item.imgList" :key="index1"></image>
+						<image :src="loadImgSrc('/' + item.url)" v-for="(item, index1) in item.imgList" :key="index1">
+						</image>
 					</view>
 
 					<view class="jlSj">
@@ -187,12 +193,12 @@
 				<em class="iconfont icon-zhishiku1"></em>
 				热门知识
 			</view>
-			<ul class="rmzsList">
+			<ul class="rmzsList" @tap="goKnowledgeDetails(item)" v-for="(item, index) in dataSource" :key="index">
 				<li>
-					<image :src="loadImgSrc('/10_16.png')"></image>
+					<image :src="loadImgSrcLocalhost(item.imgUrlList)"></image>
 					<view class="listCont">
-						<p>稳预期 促互通——专家学者建言献策国际农产品市场和贸易高质量发展</p>
-						<text>唐旭 姚媛</text>
+						<p>{{ item.titleName }}</p>
+						<text>{{ item.createBy }}</text>
 						<view class="biaoqian">
 							<span>三农</span>
 							<span>教育</span>
@@ -200,25 +206,7 @@
 						<view class="jiage">
 							<span class="yhjg">
 								<em>¥</em>
-								200
-							</span>
-							<span class="yjjg">¥500</span>
-						</view>
-					</view>
-				</li>
-				<li>
-					<image :src="loadImgSrc('/10_16.png')"></image>
-					<view class="listCont">
-						<p>稳预期 促互通——专家学者建言献策国际农产品市场和贸易高质量发展</p>
-						<text>唐旭 姚媛</text>
-						<view class="biaoqian">
-							<span>三农</span>
-							<span>教育</span>
-						</view>
-						<view class="jiage">
-							<span class="yhjg">
-								<em>¥</em>
-								200
+								{{ item.integral }}
 							</span>
 							<span class="yjjg">¥500</span>
 						</view>
@@ -230,245 +218,333 @@
 </template>
 
 <script>
-import { getListToAnnouncement } from '@/api/index/index.js';
-import { governmentListData } from '@/api/information/information.js';
-
-export default {
-	data() {
-		return {
-			// 图片轮播
-			banners: [
-				{
-					src: '/img1.png'
+	import {
+		getListToAnnouncement
+	} from '@/api/index/index.js';
+	import {
+		governmentListData
+	} from '@/api/information/information.js';
+	import {
+		popularKnowledgeList,
+		verifyScore,
+		reduceScore,
+		addScore
+	} from '@/api/knowledge/knowledge.js'
+	export default {
+		data() {
+			return {
+				// 图片轮播
+				banners: [{
+						src: '/img1.png'
+					},
+					{
+						src: '/img2.png'
+					}
+				],
+				announcementList: [{
+						id: '3',
+						announcementTitle: '关于高质量推进土地整治工作赋能乡村振兴的通知'
+					},
+					{
+						id: '2',
+						announcementTitle: '关于高质量推进土地整治工作的通知'
+					},
+					{
+						id: '1',
+						announcementTitle: '关于乡村振兴的通知'
+					}
+				],
+				requestParam: {
+					userId: getApp().globalData.userId
 				},
-				{
-					src: '/img2.png'
-				}
-			],
-			announcementList: [
-				{
-					id: '3',
-					announcementTitle: '关于高质量推进土地整治工作赋能乡村振兴的通知'
-				},
-				{
-					id: '2',
-					announcementTitle: '关于高质量推进土地整治工作的通知'
-				},
-				{
-					id: '1',
-					announcementTitle: '关于乡村振兴的通知'
-				}
-			],
-			requestParam: {
-				userId: getApp().globalData.userId
-			},
-			msgList: [
-				{
-					id: 0,
-					title: '关于高质量推进土地整治工作赋能乡村振兴的通知'
-				},
-				{
-					id: 1,
-					title: '关于高质量推进土地整治工作的通知'
-				},
-				{
-					id: 2,
-					title: '关于乡村振兴的通知'
-				}
-			],
-			indicatorDots: true,
-			vertical: false,
-			autoplay: true,
-			interval: 2000,
-			duration: 500,
-			circular: true,
-			governmentList: [],
-			indexList: [
-				{
-					ck: '10',
-					dz: '10',
-					id: 1,
-					imgList: [],
-					jf: '100',
-					pl: '10',
-					title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
-				},
-				{
-					ck: '20',
-					dz: '200',
-					id: 2,
-					imgList: [
-						{
+				msgList: [{
+						id: 0,
+						title: '关于高质量推进土地整治工作赋能乡村振兴的通知'
+					},
+					{
+						id: 1,
+						title: '关于高质量推进土地整治工作的通知'
+					},
+					{
+						id: 2,
+						title: '关于乡村振兴的通知'
+					}
+				],
+				indicatorDots: true,
+				vertical: false,
+				autoplay: true,
+				interval: 2000,
+				duration: 500,
+				circular: true,
+				governmentList: [],
+				indexList: [{
+						ck: '10',
+						dz: '10',
+						id: 1,
+						imgList: [],
+						jf: '100',
+						pl: '10',
+						title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
+					},
+					{
+						ck: '20',
+						dz: '200',
+						id: 2,
+						imgList: [{
 							url: '/xczx01.png'
-						}
-					],
-					jf: '220',
-					pl: '20',
-					title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
+						}],
+						jf: '220',
+						pl: '20',
+						title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
+					},
+					{
+						ck: '30',
+						dz: '320',
+						id: 3,
+						imgList: [{
+								url: '/xczx01.png'
+							},
+							{
+								url: '/xczx01.png'
+							}
+						],
+						jf: '300',
+						ly: '30',
+						title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
+					},
+					{
+						ck: '40',
+						dz: '420',
+						id: 4,
+						imgList: [{
+								url: '/img1.png'
+							},
+							{
+								url: '/img1.png'
+							},
+							{
+								url: '/img1.png'
+							}
+						],
+						jf: '400',
+						pl: '40',
+						title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
+					}
+				],
+				queryParam: {
+					pageNum: 1,
+					pageSize: 10,
+					userId: getApp().globalData.userId
 				},
-				{
-					ck: '30',
-					dz: '320',
-					id: 3,
-					imgList: [
-						{
-							url: '/xczx01.png'
-						},
-						{
-							url: '/xczx01.png'
-						}
-					],
-					jf: '300',
-					ly: '30',
-					title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
+				//热门知识数据集合
+				dataSource: [],
+				// 热门知识数据总量
+				total: 0,
+				// 热门知识数据
+				knowledgeParams: {
+					// 当前页
+					pageNum: 1,
+					// 每页数据量
+					pageSize: 2,
 				},
-				{
-					ck: '40',
-					dz: '420',
-					id: 4,
-					imgList: [
-						{
-							url: '/img1.png'
-						},
-						{
-							url: '/img1.png'
-						},
-						{
-							url: '/img1.png'
-						}
-					],
-					jf: '400',
-					pl: '40',
-					title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷'
-				}
-			],
-			queryParam: {
-				pageNum: 1,
-				pageSize: 10,
-				userId: getApp().globalData.userId
-			}
-		};
-	},
-	/**
-	 * 生命周期函数--监听页面加载
-	 */ onLoad(options) {
-		this.getAnnouncementList(getApp().globalData.userId);
-	},
-	mounted() {
-		this.governmentListData();
-	},
-    methods: {
-		toLegal(){
-			uni.navigateTo({
-			    url: '/pages/toLegal/toLegal'
-			});
-		},
-		toGovernmentList(){
-			uni.navigateTo({
-				url: '/pages/toGovernmentList/toGovernmentList'
-			});
-		},
-		toGovernmentList1(){
-			uni.navigateTo({
-			    url: '/pages/toGovernmentList/toGovernmentList?type=10'
-			});
-		},
-		governmentListData() {
-			let params = {
-				pageSize: 10,
-				pageNum: 1,
-				type: 10,
-				isGovernment: 1
+				loading: false,
 			};
-			governmentListData(params).then((res) => {
-				if (res.code == 200) {
-					this.governmentList = res.data;
-				}
-			});
 		},
-		goWenBa() {
-			uni.navigateTo({
-				url: '/pages/asking/asking'
-			});
+		/**
+		 * 生命周期函数--监听页面加载
+		 */
+		onLoad(options) {
+			this.getAnnouncementList(getApp().globalData.userId);
 		},
-		goHangQing() {
-			uni.navigateTo({
-				url: '/pages/quotations/quotations'
-			});
+		mounted() {
+			this.governmentListData();
 		},
-		goShangCheng() {
-			uni.navigateTo({
-				url: '/pages/shangcheng/shangcheng'
-			});
+		created() {
+			this.getList()
 		},
-
-		goDetails() {
-			uni.navigateTo({
-				url: '/pages/wenbaxiangqing/wenbaxiangqing'
-			});
+		onReachBottom() {
+			let pageNum = this.knowledgeParams.pageNum
+			let pageSize = this.knowledgeParams.pageSize
+			let total = this.total
+			if (pageNum * pageSize >= total) {
+				uni.showToast({
+					title: '暂无更多数据'
+				})
+				return
+			} else {
+				this.queryParams.pageNum += 1;
+				this.getList()
+			}
 		},
+		methods: {
+			// 热门知识获取数据
+			getList(pageNum) {
+				let params = {
+					pageSize: this.knowledgeParams.pageSize,
+					pageNum: pageNum,
+				}
+				popularKnowledgeList(params).then(res => {
+					if (res.code == 200) {
+						this.dataSource = [...this.dataSource, ...res.rows]
+						this.total = res.total
+						console.log("this.dataSource", this.dataSource)
+					}
+				})
+			},
+			toLegal() {
+				uni.navigateTo({
+					url: '/pages/toLegal/toLegal'
+				});
+			},
+			toGovernmentList() {
+				uni.navigateTo({
+					url: '/pages/toGovernmentList/toGovernmentList'
+				});
+			},
+			toGovernmentList1() {
+				uni.navigateTo({
+					url: '/pages/toGovernmentList/toGovernmentList?type=10'
+				});
+			},
+			governmentListData() {
+				let params = {
+					pageSize: 10,
+					pageNum: 1,
+					type: 10,
+					isGovernment: 1
+				};
+				governmentListData(params).then((res) => {
+					if (res.code == 200) {
+						this.governmentList = res.data;
+					}
+				});
+			},
+			goWenBa() {
+				uni.navigateTo({
+					url: '/pages/asking/asking'
+				});
+			},
+			goHangQing() {
+				uni.navigateTo({
+					url: '/pages/quotations/quotations'
+				});
+			},
+			goShangCheng() {
+				uni.navigateTo({
+					url: '/pages/shangcheng/shangcheng'
+				});
+			},
 
-        goCooperative() {
-            uni.navigateTo({
-                url: '/pages/cooperative/cooperative'
-            });
-        },
-        goLoveAtVillage() {
-            uni.navigateTo({
-                url: '/pages/specialService/loveAtVillage/loveAtVillage'
-            });
-        },
-        goLegalService() {
-            uni.navigateTo({
-                url: '/pages/specialService/legalService/legalService'
-            });
-        },
-        goFinancialInfrastructure() {
-            uni.navigateTo({
-                url: '/pages/specialService/financialInfrastructure/financialInfrastructure'
-            });
-        },
-		goBanShi() {
-			uni.navigateTo({
-				url: '/pages/handleAffairs/handleAffairs'
-			});
-		},
-		//获取最新公告列表(三条未读消息)
-		getAnnouncementList(userId) {
-			getListToAnnouncement(userId).then((res) => {
-				this.announcementList = res.data;
-			});
-		},
-		handleNavigate(item) {
-			uni.navigateTo({
-				url: '/pages/index/announcementDetails?id=' + item
-			});
-		},
-		//跳转公告列表页面
-		goAnnoList() {
-			uni.navigateTo({
-				url: '/pages/index/announcementList'
-			});
-		},
-		/**
-		 * 跳转直播带货页面
-		 */
-		gozbdh() {
-			uni.navigateTo({
-				url: '/pages/liveBroadcast/liveBroadcast'
-			});
-		},
-		/**
-		 * 跳转知识库页面
-		 */
-		gozsk(){
-			uni.navigateTo({
-			    url: '/pages/knowledge/knowledge'
-			});
-		},
-	}
-};
+			goDetails() {
+				uni.navigateTo({
+					url: '/pages/wenbaxiangqing/wenbaxiangqing'
+				});
+			},
+
+			goCooperative() {
+				uni.navigateTo({
+					url: '/pages/cooperative/cooperative'
+				});
+			},
+			goLoveAtVillage() {
+				uni.navigateTo({
+					url: '/pages/specialService/loveAtVillage/loveAtVillage'
+				});
+			},
+			goLegalService() {
+				uni.navigateTo({
+					url: '/pages/specialService/legalService/legalService'
+				});
+			},
+			goFinancialInfrastructure() {
+				uni.navigateTo({
+					url: '/pages/specialService/financialInfrastructure/financialInfrastructure'
+				});
+			},
+			goBanShi() {
+				uni.navigateTo({
+					url: '/pages/handleAffairs/handleAffairs'
+				});
+			},
+			//获取最新公告列表(三条未读消息)
+			getAnnouncementList(userId) {
+				getListToAnnouncement(userId).then((res) => {
+					this.announcementList = res.data;
+				});
+			},
+			handleNavigate(item) {
+				uni.navigateTo({
+					url: '/pages/index/announcementDetails?id=' + item
+				});
+			},
+			//跳转公告列表页面
+			goAnnoList() {
+				uni.navigateTo({
+					url: '/pages/index/announcementList'
+				});
+			},
+			/**
+			 * 跳转直播带货页面
+			 */
+			gozbdh() {
+				uni.navigateTo({
+					url: '/pages/liveBroadcast/liveBroadcast'
+				});
+			},
+			/**
+			 * 跳转知识库页面
+			 */
+			gozsk() {
+				uni.navigateTo({
+					url: '/pages/knowledge/knowledge'
+				});
+			},
+			goKnowledgeDetails(item) {
+				let params = {
+					userId: getApp().globalData.userId,
+					scoreNum: item.integral
+				};
+				verifyScore(params).then((res) => {
+					if (res.code == 200) {
+						this.reduceScore(item)
+						this.addScore(item)
+						uni.navigateTo({
+							url: '/pages/knowledgeDetails/knowledgeDetails?id=' + item.id,
+						});
+					}
+				});
+			},
+			/**
+			 * 减少积分
+			 */
+			reduceScore(item) {
+				let params = {
+					userId: getApp().globalData.userId,
+					scoreNum: item.integral,
+					relevanceDataId: item.id,
+					relevance: "0",
+				}
+				reduceScore(params).then((res) => {
+					console.log("reduceScore",res)
+				})
+			},
+			/**
+			 * 增加积分
+			 */
+			addScore(item) {
+				let params = {
+					userId: item.createId,
+					scoreNum: item.integral,
+					relevanceDataId: item.id,
+					relevance: "0",
+				}
+				addScore(params).then((res) => {
+					console.log("addScore",res)
+				})
+			}
+		}
+	};
 </script>
 <style>
-@import './index.css';
-</style>
+	@import './index.css';
+</style>

+ 1 - 1
pages/knowledgeDetails/knowledgeDetails.vue

@@ -14,7 +14,7 @@
 					</view>
 				</view>
 			</view>
-			<view class="wenzhangCont">
+			<view class="wenzhangCont article">
 				<view v-html="fromData.textDetails"></view>
 				<view>
 					<image :src="loadImgSrcLocalhost(fromData.imgUrlList)"></image>

+ 1 - 1
pages/lifeServicesDetails/lifeServicesDetails.vue

@@ -14,7 +14,7 @@
 					</view>
 				</view>
 			</view>
-			<view class="wenzhangCont">
+			<view class="wenzhangCont article">
 				<view v-html="fromData.textDetails"></view>
 				<view v-for="(item, index) in fromData.pictureList" :key="index">
 					<image :src="loadImgSrcLocalhost(item)"></image>

+ 1 - 1
pages/liveBroadcastDetails/liveBroadcastDetails.vue

@@ -14,7 +14,7 @@
 					</view>
 				</view>
 			</view>
-			<view class="wenzhangCont">
+			<view class="wenzhangCont article">
 				<view v-html="fromData.textDetails"></view>
 				<view v-for="(item, index) in fromData.pictureList" :key="index">
 					<image :src="loadImgSrcLocalhost(item)"></image>

+ 26 - 11
pages/me/meOperate.vue

@@ -9,7 +9,7 @@
 					<uni-th align="center">积分变动来源</uni-th>
 					<uni-th align="center">时间</uni-th>
 				</uni-tr>
-				<uni-tr v-for="(item, index) in tableData" :key="index">
+				<uni-tr v-for="(item, index) in tableData" :key="index" style="height: 5em;">
 					<uni-td>{{item.name == null || item.name == '' ? item.wechatName : item.name}}</uni-td>
 					<uni-td>{{ item.scoreOperate }}</uni-td>
 					<uni-td align="center">{{ item.scoreNum }}</uni-td>
@@ -17,9 +17,9 @@
 					<uni-td align="center">{{ item.createTime }}</uni-td>
 				</uni-tr>
 			</uni-table>
-			<view class="uni-pagination-box">
+			<!-- <view class="uni-pagination-box">
 				<uni-pagination show-icon :page-size="queryParams.pageSize" :current="queryParams.pageNum" :total="total" @change="change" />
-			</view>
+			</view> -->
 		</view>
 	</view>
 </template>
@@ -38,7 +38,7 @@ export default {
 				// 当前页
 				pageNum: 1,
 				// 每页数据量
-				pageSize: 10,
+				pageSize: 15,
 				//请求参数
 				userId: getApp().globalData.userId
 			},
@@ -46,22 +46,37 @@ export default {
 		};
 	},
 	onLoad() {
-		this.selectedIndexs = [];
-		this.getData(1);
+		// this.selectedIndexs = [];
+		this.getData();
+	},
+	onReachBottom() {
+		let pageNum = this.queryParams.pageNum;
+		let pageSize = this.queryParams.pageSize;
+		let total = this.total;
+		if (pageNum * pageSize >= total) {
+			uni.showToast({
+				title: '暂无更多数据'
+			});
+			return;
+		} else {
+			this.queryParams.pageNum += 1;
+			this.getData();
+		}
 	},
 	methods: {
 		// 分页触发
-		change(e) {
+		/* change(e) {
 			this.$refs.table.clearSelection();
 			this.selectedIndexs.length = 0;
 			this.getData(e.current);
-		},
+		}, */
 		// 获取数据
-		getData(pageNum) {
+		getData() {
 			this.loading = true;
-			this.queryParams.pageNum = pageNum;
+			// this.queryParams.pageNum = pageNum;
 			listScoreInfo(this.queryParams).then(res =>{
-				this.tableData = res.rows
+				this.tableData = [...this.tableData,...res.rows]
+				// this.tableData = res.rows
 				this.total = res.total
 				this.loading = false;
 			});

+ 118 - 0
pages/topic/topic.vue

@@ -0,0 +1,118 @@
+<template>
+	<view>
+		<view style="height: 20%;">
+			<button v-for="(item,index) in userType" @click="onclick(item)">{{item.dictLabel}}
+			</button>
+		</view>
+		<view>
+			<uni-grid :column="2" :square="false" :highlight="false">
+				<uni-grid-item v-for="(item, index) in dataList" :index="index" :key="index">
+					<view class="grid-item-box">
+						<text class="text">{{ item.deptName }}</text>
+					</view>
+				</uni-grid-item>
+			</uni-grid>
+		</view>
+
+	</view>
+</template>
+
+<script>
+	import {
+		getDicts
+	} from "@/api/system/dict/data.js"
+	import {
+		listAll
+	} from "@/api/handleAffairs/topicType.js"
+	export default {
+
+		data() {
+			return {
+				userType: [], // 初始化用户类型为空
+				dataList: [],
+
+			}
+		},
+		created() {
+			this.getdictData()//初始化字典按钮
+			this.getdataList()//初始化数据
+		},
+		methods: {
+			
+			getdataList(data){
+				let _that = this
+				if (!data) {
+					data = {
+						objectOfHandling: 0,
+						yesOrNoShow: "0"
+					}
+				}
+				listAll(data).then(res => {
+					_that.dataList = res.data
+				})
+				console.log(_that.dataList)
+			},
+			onclick(row) {
+				
+				let data = {
+					objectOfHandling: row.dictValue,
+					yesOrNoShow: "0"
+				}
+				this.getdataList(data)
+			},
+			getdictData() {
+				let _that = this
+				getDicts("object_application").then(res => {
+					_that.userType = res.data
+				})
+			},
+			changeUserType(type) {
+				this.userType = type
+			}
+		},
+
+	}
+</script>
+
+<style>
+	/* view {
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		justify-content: center;
+		height: 100vh;
+	} */
+
+	button {
+		margin-bottom: 10px;
+	}
+
+	.selected {
+		background-color: #007bff;
+		color: #fff;
+	}
+
+	.grid-item-box {
+		flex: 1;
+		// position: relative;
+		/* #ifndef APP-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: column;
+		align-items: center;
+		justify-content: center;
+		padding: 15px 0;
+	}
+
+	.grid-item-box-row {
+		flex: 1;
+		// position: relative;
+		/* #ifndef APP-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		padding: 15px 0;
+	}
+</style>