Browse Source

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

付宇航 1 year ago
parent
commit
ef9e1cd9af

+ 10 - 0
api/asking/asking.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+// 获取类型列表
+export function getTypeList(query) {
+  return request({
+    url: '/JnbQuestionType/type/typeList',
+    method: 'get',
+    params: query
+  })
+}

+ 10 - 11
api/information/information.js

@@ -9,13 +9,17 @@ export function governmentListData(query) {
   })
 }
 
+// 政策推荐更多
+export function governmentListMore(query) {
+    return request({
+        url: '/jnb/information/listWxs',
+        method: 'get',
+        params:query
+    })
+}
+
 
 //资讯前三条置顶uniapp
-//{
-// 			  pageSize: 10,
-// 			  pageNum: 1,
-// 			  type:10,
-// 			  }
 export function listWx(query) {
   return request({
     url: '/jnb/information/listWx',
@@ -24,11 +28,6 @@ export function listWx(query) {
   })
 }
 //查询资讯列表uniapp
-//{
-// 			  pageSize: ,
-// 			  pageNum: ,
-// 			  type:,
-// 			  }
 export function listWxs(query) {
   return request({
     url: '/jnb/information/listWxs',
@@ -69,4 +68,4 @@ export function delServer(ids,type) {
     url: '/jnb/information/' + ids + '/' + type,
     method: 'delete'
   })
-}
+}

+ 15 - 0
api/liveBroadcast/liveBroadcast.js

@@ -0,0 +1,15 @@
+import request from '@/utils/request'
+
+export function list(query) {
+  return request({
+    url: '/high/server/liveBroadcastList',
+    method: 'get',
+	params:query
+  })
+}
+export function getDetails(id) {
+  return request({
+    url: '/high/server/liveBroadcastDetails/' + id,
+    method: 'get',
+  })
+}

+ 10 - 0
api/me/nameAuthentication.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+// 提交实名认证
+export function appletAdd(query) {
+  return request({
+    url: '/nameAuthentication/appletAdd',
+    method: 'post',
+    data: query
+  })
+}

+ 10 - 0
api/me/officialAuthentication.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+// 提交官方认证
+export function appletAdd(query) {
+  return request({
+    url: '/officialAuthentication/appletAdd',
+    method: 'post',
+    data: query
+  })
+}

+ 1 - 3
config.js

@@ -3,12 +3,10 @@ module.exports = {
 
 	// baseUrl: 'https://www.xcx.cczdsz.cn/prod-api',
 	// baseUrl: 'http://192.168.4.6:8080',
-	baseUrl: 'http://192.168.4.28:8080',
+	baseUrl: 'http://localhost:8080',
 	// baseUrl: 'http://192.168.4.11:8080',
 	// baseUrl: 'http://192.168.4.14:8089',
-	baseUrl: 'http://192.168.4.88:8080',
 	baseIconUrl: 'http://119.3.201.155:9000',
-	// baseIconUrl: 'http://192.168.4.14:8080',
 	// 应用信息
 	appInfo: {
 		// 应用名称

+ 40 - 9
pages.json

@@ -179,17 +179,18 @@
 
 			}
 		},
-		{
-			"path": "pages/quotations/quotations",
-			"style": {
-				"usingComponents": {},
-				"navigationBarBackgroundColor": "#07c160",
-				"navigationBarTextStyle": "white",
-				"navigationBarTitleText": "行情"
+		// {
+		// 	"path": "pages/quotations/quotations",
+		// 	"style": {
+		// 		"usingComponents": {},
+		// 		"navigationBarBackgroundColor": "#07c160",
+		// 		"navigationBarTextStyle": "white",
+		// 		"navigationBarTitleText": "行情"
 
 
-			}
-		},{
+		// 	}
+		// },
+		{
 			"path": "pages/toGovernmentList/toGovernmentList",
 			"style": {
 				"usingComponents": {},
@@ -219,6 +220,36 @@
 			}
 		},
 		{
+			"path": "pages/asking/asking",
+			"style": {
+				"usingComponents": {},
+				"navigationBarBackgroundColor": "#07c160",
+				"navigationBarTextStyle": "white",
+				"navigationBarTitleText": "问吧"
+
+			}
+		},
+		{
+			"path": "pages/me/nameAuthentication",
+			"style": {
+				"usingComponents": {},
+				"navigationBarBackgroundColor": "#07c160",
+				"navigationBarTextStyle": "white",
+				"navigationBarTitleText": "实名认证"
+
+			}
+		},
+		{
+			"path": "pages/me/officialAuthentication",
+			"style": {
+				"usingComponents": {},
+				"navigationBarBackgroundColor": "#07c160",
+				"navigationBarTextStyle": "white",
+				"navigationBarTitleText": "官方认证"
+
+			}
+		},
+		{
 			"path" : "pages/liveBroadcast/liveBroadcast",
 			"style" :
 			{

+ 103 - 0
pages/asking/asking.css

@@ -0,0 +1,103 @@
+/* pages/wenda/wenda.wxss */
+.wendaFL {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    margin: 30rpx 0 0 0;
+}
+.wendaFL li {
+    width: 48%;
+    height: 168rpx;
+    position: relative;
+}
+.lbBj {
+    position: absolute;
+    left: 0;
+    top: 0;
+    z-index: 0;
+    width: 100%;
+    height: 100%;
+}
+.wendaFL li h2 {
+    font-size: 36rpx;
+    position: absolute;
+    left: 30rpx;
+    top: 40rpx;
+    z-index: 1;
+    font-weight: bold;
+}
+.wendaFL li span {
+    font-size: 30rpx;
+    position: absolute;
+    left: 30rpx;
+    top: 88rpx;
+    z-index: 1;
+}
+.wendaFL li.sanNong {
+    color: #0d9970;
+}
+.wendaFL li.jiuYe {
+    color: #1e8fb4;
+}
+.wendaFL li.faLv {
+    color: #1e5dab;
+}
+.wendaFL li.jiuZhen {
+    color: #4a700d;
+}
+/* 列表 */
+.rnwdList {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    margin: 20rpx 0;
+}
+.list {
+    width: 79%;
+}
+.lb {
+    background: #0d9970;
+    color: #fff;
+    font-size: 24rpx;
+    width: 12%;
+    text-align: center;
+    padding: 2rpx 0;
+    line-height: 40rpx;
+    height: 40rpx;
+    border-radius: 10rpx;
+}
+.listTitle {
+    font-size: 32rpx;
+    color: #333;
+    line-height: 40rpx;
+}
+.jlSj {
+    height: 40rpx;
+    display: flex;
+    justify-content: space-between;
+    font-size: 24rpx;
+    margin: 20rpx 0 0 0;
+}
+.jf {
+    color: #07c160;
+}
+.icon-jifen {
+    font-size: 28rpx;
+    color: #07c160;
+    margin: 0 0 0 6rpx;
+}
+.ck {
+    color: #c4c4c4;
+}
+.icon-pinglun,
+.icon-chakan,
+.icon-shoucang {
+    font-size: 28rpx;
+    margin: 0 6rpx 0 20rpx;
+    color: #c4c4c4;
+}
+.icon-xiangyoujiantou {
+    font-size: 30rpx;
+    color: #c4c4c4;
+    line-height: 60rpx;
+}

+ 78 - 0
pages/asking/asking.vue

@@ -0,0 +1,78 @@
+<template>
+    <!-- pages/fuwu/fuwu.wxml -->
+    <view class="container">
+        <!-- 问答类别 -->
+
+        <view class="wendaFL" @tap="" v-for="(obj, index) in typeList" :key="index">
+            <ul class="wendaFL">
+                <li class="sanNong">
+                    <image :src="'http://127.0.0.1:8080'+obj.path" class="lbBj"></image>
+                    <h2>{{obj.type}}</h2>
+                    <span>1566</span>
+                </li>
+            </ul>
+        </view>
+    </view>
+</template>
+
+<script>
+import upload from '../../components/upload/index.vue'
+import {getTypeList} from '@/api/asking/asking.js'
+export default {
+	components: {
+		upload
+	},
+    data() {
+        return {
+			imageList:[
+				'/profile/upload/2024/03/02/D5hjxYkldNxIef093ae65b2128b1293b86a7b537ed98_20240302170757A001.png',
+				'/profile/upload/2024/03/02/D5hjxYkldNxIef093ae65b2128b1293b86a7b537ed98_20240302170757A001.png'
+			],
+            typeList: [
+                {
+                    type: null,
+					path: null
+                }
+            ],
+			// 查询参数
+		  queryParams: {
+			pageNum: 1,
+			pageSize: 6,
+		  },
+        };
+    }
+    /**
+     * 生命周期函数--监听页面加载
+     */,
+    onLoad(options) {
+        this.getTypeList();
+    },
+    methods: {
+         //获取类型列表
+        getTypeList(){
+            getTypeList(this.queryParams).then(res =>{
+                this.typeList = res.rows
+            })
+        },
+
+        goSanNong() {
+            uni.navigateTo({
+                url: '/pages/sannong/sannong'
+            });
+        },
+
+        goDetails() {
+            uni.navigateTo({
+                url: '/pages/wenbaxiangqing/wenbaxiangqing'
+            });
+        },
+
+		updateImg(imgList){
+			this.imageList = imgList;
+		}
+    }
+};
+</script>
+<style>
+@import './asking.css';
+</style>

+ 3 - 2
pages/gridQuery/gridQuery.vue

@@ -23,13 +23,14 @@
 		onLoad(option){
 			const _that = this
 			const id = uni.getStorageSync('id');
+			console.log(id)
 			 getGridType(id).then(res =>{
 				 _that.jobDescription = res.data.jobDescription
 			 })
 		},
-		
+
 		methods: {
-		
+
 		}
 	}
 </script>

+ 105 - 20
pages/handleAffairs/handleAffairs.vue

@@ -1,15 +1,51 @@
 <template>
+
 	<view>
-			<view class="gpfwNav">
-				<ul >
-					<li v-for="(item,index) in gridtTypeLits" :key="index" >
-						<image :src="'http://127.0.0.1:8080'+item.fileUrl" @click="querygrid(item)">{{item.name}}</image>
-					</li>
-					</ul>
-
-			</view>
-	</view>
+		<!-- 搜索栏 -->
+		<view class="input-view">
+			<input confirm-type="search" class="nav-bar-input" type="text" placeholder="输入搜索关键词" @confirm="confirm" />
+			<uni-icons class="input-uni-icon" type="search" size="18" color="#999" />
+		</view>
+		<!-- 网格配置列表滑动 -->
+		<view>
+			<uni-swiper-dot :info="info" :current="current" field="content" :mode="mode">
+				<swiper class="swiper-box">
+					<swiper-item v-for="(item ,index) in gridtType" :key="index">
+
+						<!-- <ul class="mainNav" >
+							<li v-for="(dataitem,dataindex) in item.dataList" :key="dataitem.id">
+								<image class="uni-header-image" :src="'http://127.0.0.1:8080'+dataitem.fileUrl"
+									@click="querygrid(dataitem)"></image>
+								<text>{{dataitem.name}}</text>
+							</li>
+						</ul> -->
+						<uni-grid :column="5" :highlight="true" :showBorder="false">
+							<uni-grid-item v-for="(dataitem,dataindex) in item" :key="dataitem.id">
+								<view>
+									<image class="uni-header-image" :src="'http://127.0.0.1:8080'+dataitem.fileUrl"
+										@click="querygrid(dataitem)"></image>
+									<uni-title type="h5" :title="dataitem.name" align="center"></uni-title>
+								</view>
+
+							</uni-grid-item>
+						</uni-grid>
+					</swiper-item>
+				</swiper>
+			</uni-swiper-dot>
+		</view>
+
+		<view>
+			<uni-row class="demo-uni-row" :width="nvueWidth">
+				<uni-col :span="12">
+					<button align="center" @click="topic">主题导航</button>
+				</uni-col>
 
+				<uni-col :span="12">
+					<button align="center" @click="dept">部门导航</button>
+				</uni-col>
+			</uni-row>
+		</view>
+	</view>
 </template>
 
 <script>
@@ -20,27 +56,48 @@
 	export default {
 		data() {
 			return {
-				gridtTypeLits: [],
+				gridtType: [], //是一个list<map>数据 [{0,[1,2,3]}]
 			};
 		},
 		created() {
 			this.getList();
 		},
 		methods: {
-			querygrid(item){
+			//主题导航跳转
+			topic(){
+
+				uni.navigateTo({
+					url: '/pages/topic/topic',
+				});
+			},
+			//部门导航跳转
+			dept(){
+
+			},
+			querygrid(item) {
 				console.log(item)
-					uni.setStorageSync('id', item.id)
-				    uni.navigateTo({
-				        url: '/pages/gridQuery/gridQuery',
+				uni.setStorageSync('id', item.id)
+				uni.navigateTo({
+					url: '/pages/gridQuery/gridQuery',
 
-				    });
+				});
 			},
 			getList() {
 				const _that = this
-				let query = {yesOrNoShow: "0"};
-				listGridType(query).then(res =>{
-				 _that.gridtTypeLits = res.rows
-				 console.log(res)
+				let query = {
+					yesOrNoShow: "0"
+				};
+				listGridType(query).then(res => {
+					let gridtTypeLits = res.rows
+
+					let dataList = []
+					for (var i = 0; i < gridtTypeLits.length; i++) {
+						dataList.push(gridtTypeLits[i])
+						if (((i + 1) % 5 == 0) || i == gridtTypeLits.length - 1) {
+							_that.gridtType.push(dataList)
+							dataList = []
+						}
+					}
 				});
 
 			},
@@ -48,6 +105,34 @@
 	}
 </script>
 <style scoped>
+	.uni-header-image {
 
-</style>
+		width: 30px;
+		height: 30px;
+		display: block;
+		margin: 0 auto;
+	}
 
+	/* 主导航 */
+	.mainNav {
+		width: 100%;
+		background: #fff;
+
+	}
+
+	.input-view {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		// width: 500rpx;
+		flex: 1;
+		background-color: #f8f8f8;
+		height: $nav-height;
+		border-radius: 15px;
+		padding: 0 15px;
+		flex-wrap: nowrap;
+		margin: 7px 0;
+		line-height: $nav-height;
+	}
+</style>

+ 2 - 1
pages/index/index.vue

@@ -342,6 +342,7 @@ export default {
 			  pageSize: 10,
 			  pageNum: 1,
 			  type:10,
+			  isGovernment:1
 			  }
 			governmentListData(params).then(res =>{
 				if (res.code==200) {
@@ -351,7 +352,7 @@ export default {
 		},
         goWenBa() {
             uni.navigateTo({
-                url: '/pages/wenba/wenba'
+                url: '/pages/asking/asking'
             });
         },
       goHangQing() {

+ 50 - 17
pages/liveBroadcast/liveBroadcast.css

@@ -48,12 +48,12 @@
 /* 列表 */
 .rnwdList {
     width: 100%;
-    display: flex;
-    justify-content: space-between;
-    margin: 20rpx 0;
+    height: 100%;
 }
 .list {
-    width: 79%;
+    border-bottom: solid 2rpx #f6f6f6;
+    padding: 10rpx 0;
+    width: 100%;
 }
 .lb {
     background: #0d9970;
@@ -71,24 +71,11 @@
     color: #333;
     line-height: 40rpx;
 }
-.jlSj {
-    height: 40rpx;
-    display: flex;
-    justify-content: space-between;
-    font-size: 24rpx;
-    margin: 20rpx 0 0 0;
-}
-.jf {
-    color: #07c160;
-}
 .icon-jifen {
     font-size: 28rpx;
     color: #07c160;
     margin: 0 0 0 6rpx;
 }
-.ck {
-    color: #c4c4c4;
-}
 .icon-pinglun,
 .icon-chakan,
 .icon-shoucang {
@@ -101,3 +88,49 @@
     color: #c4c4c4;
     line-height: 60rpx;
 }
+.onePic {
+    width: 100%;
+    height: 360rpx;
+    border-radius: 20rpx;
+    overflow: hidden;
+    margin: 20rpx 0;
+}
+.onePic image {
+    width: 100%;
+    height: 100%;
+}
+.twoPic {
+    width: 100%;
+    height: 220rpx;
+    margin: 20rpx 0;
+    display: flex;
+    justify-content: space-between;
+}
+.twoPic image {
+    width: 49%;
+    height: auto;
+    border-radius: 20rpx;
+}
+.threePic {
+    width: 100%;
+    height: 160rpx;
+    margin: 20rpx 0;
+    display: flex;
+    justify-content: space-between;
+}
+.threePic image {
+    width: 32%;
+    height: auto;
+    border-radius: 20rpx;
+}
+.jlSj {
+    height: 40rpx;
+    display: flex;
+    justify-content: space-between;
+    font-size: 24rpx;
+    margin: 20rpx 0 0 0;
+}
+.ck {
+    color: #c4c4c4;
+	margin-left:240px;
+}

+ 60 - 50
pages/liveBroadcast/liveBroadcast.vue

@@ -1,81 +1,91 @@
 <template>
 	<!-- 直播带货列表 -->
-	<view>
-		<view class="rnwdList" @tap="goDetails" v-for="(item, index) in dataSource" :key="index">
-			<span class="lb">{{ item.type }}</span>
+	<view class="container">
+		<view class="rnwdList">
+			<view class="list" @tap="goDetails(item.id)" v-for="(item, index1) in dataSource" :key="index1">
+				<span class="listTitle">{{ item.titleName }}</span>
+
+				<view class="onePic" v-if="item.pictureList.length == 1">
+					<image :src="loadImgSrcLocalhost(item2)" v-for="(item2, index2) in item.pictureList" :key="index2">
+					</image>
+				</view>
+				<view class="twoPic" v-if="item.pictureList.length == 2">
+					<image :src="loadImgSrcLocalhost(item2)" v-for="(item2, index2) in item.pictureList" :key="index2">
+					</image>
+				</view>
+				<view class="threePic" v-if="item.pictureList.length == 3">
+					<image :src="loadImgSrcLocalhost(item2)" v-for="(item2, index2) in item.pictureList" :key="index2">
+					</image>
+				</view>
+				<view class="threePic" v-if="item.pictureList.length > 3">
+					<image :src="loadImgSrcLocalhost(item2)" v-for="(item2, index2) in item.pictureList"
+						v-if="index2 < 3" :key="index2"></image>
+				</view>
 
-			<view class="list">
-				<span class="listTitle">{{ item.title }}</span>
 				<view class="jlSj">
-					<span class="jf">
-						{{ item.jf }}
-						<em class="iconfont icon-jifen"></em>
-					</span>
 					<view class="ck">
 						<span>
-							<em class="iconfont icon-pinglun"></em>
-							{{ item.pl }}
-						</span>
-						<span>
 							<em class="iconfont icon-chakan"></em>
-							{{ item.ck }}
+							{{ item.likeNum }}
 						</span>
 						<span>
 							<em class="iconfont icon-shoucang"></em>
-							{{ item.dz }}
+							{{ item.watchNum }}
 						</span>
 					</view>
 				</view>
 			</view>
-
-			<em class="iconfont icon-xiangyoujiantou"></em>
 		</view>
 	</view>
 </template>
 
 <script>
+	import {
+		list
+	} from '@/api/liveBroadcast/liveBroadcast.js';
 	export default {
 		data() {
 			return {
-				dataSource: [{
-						ck: '10',
-						dz: '120',
-						id: 1,
-						jf: '100',
-						pl: '10',
-						title: '探索乡村能源供给新模式',
-						type: '三农'
-					},
-					{
-						ck: '20',
-						dz: '220',
-						id: 2,
-						jf: '200',
-						pl: '20',
-						title: '探索乡村能源供给新模式 美丽新画卷',
-						type: '三农'
-					},
-					{
-						ck: '30',
-						dz: '30',
-						id: 3,
-						jf: '300',
-						pl: '30',
-						title: '探索乡村能源供给新模式 绘就乡村振兴美丽新画卷',
-						type: '三农'
-					}
-				]
+				dataSource: [],
+				// 数据总量
+				total: 0,
+				queryParams: {
+					// 当前页
+					pageNum: 1,
+					// 每页数据量
+					pageSize: 10,
+				},
+				loading: false,
 			}
 		},
 		/**
 		 * 生命周期函数--监听页面加载
 		 */
-		onLoad(options) {},
+		onLoad(options) {
+			this.getList(1)
+		},
 		methods: {
-			goDetails() {
-			    uni.navigateTo({
-			        url: '/pages/liveBroadcastDetails/liveBroadcastDetails'
-			    });
+			goDetails(id) {
+				uni.navigateTo({
+					url: '/pages/liveBroadcastDetails/liveBroadcastDetails?id=' + id,
+				});
+			},
+			// 分页触发
+			change(e) {
+				this.getList(e.current);
+			},
+			// 获取数据
+			getList(pageNum) {
+				let params = {
+					pageSize: this.queryParams.pageSize,
+					pageNum: pageNum,
+				}
+				list(params).then(res => {
+					if (res.code == 200) {
+						this.dataSource = res.rows
+						this.total = res.total
+					}
+				})
 			},
 		}
 	}

File diff suppressed because it is too large
+ 209 - 239
pages/liveBroadcastDetails/liveBroadcastDetails.vue


+ 10 - 0
pages/me/me.vue

@@ -40,6 +40,16 @@ export default {
 					open: false,
 				},
 				{
+					id: 'me/nameAuthentication',
+					name: '实名认证',
+					open: false,
+				},
+				{
+					id: 'me/officialAuthentication',
+					name: '官方认证',
+					open: false,
+				},
+				{
 					id: 'matters/matters',
 					name: '我的事项',
 					open: false,

+ 0 - 0
pages/me/nameAuthentication.css


+ 82 - 0
pages/me/nameAuthentication.vue

@@ -0,0 +1,82 @@
+<template>
+	<uni-section title="自定义校验规则" type="line">
+			<view class="example">
+				<!-- 自定义表单校验 -->
+				<uni-forms ref="customForm" :rules="customRules" :modelValue="form">
+					<uni-forms-item label="姓名" required name="name">
+						<uni-easyinput v-model="form.name" placeholder="请输入姓名" />
+					</uni-forms-item>
+					<uni-forms-item label="电话" required name="phone">
+						<uni-easyinput v-model="form.phone" placeholder="请输入电话" />
+					</uni-forms-item>
+					<uni-forms-item label="身份证号" required name="idCard">
+						<uni-easyinput v-model="form.idCard" placeholder="请输入身份证号" />
+					</uni-forms-item>
+					<uni-forms-item label="身份证正反面" required name="path">
+						<upload :imgArr="imageList" name="path" v-model="form.path" :fileSize="1" :limit="2" @updateImg="updateImg"></upload>
+					</uni-forms-item>
+				</uni-forms>
+				<button type="primary" @click="submitForm('customForm')">提交</button>
+			</view>
+		</uni-section>
+</template>
+
+<script>
+import upload from '../../components/upload/index.vue'
+import {appletAdd} from '@/api/me/nameAuthentication.js'
+export default {
+	components: {
+		upload
+	},
+	onReady() {
+		// 设置自定义表单校验规则,必须在节点渲染完毕后执行
+		this.$refs.customForm.setRules(this.customRules)
+	},
+	data() {
+		return{
+			form:{
+				
+			},
+			// 表单校验
+			customRules: {
+				name: {
+					rules: [{
+						required: true,
+						errorMessage: '姓名不能为空'
+					}]
+				},
+			},
+			imageList:[]
+		}
+	},
+	methods: {
+	    // 取消按钮
+	    cancel() {
+	      this.open = false;
+	      this.reset();
+	    },
+	    /** 提交按钮 */
+	    submitForm(e) {
+			console.log("11111")
+			this.$refs[e].validate().then(res => {
+				console.log('success', res);
+				uni.showToast({
+				  title: `校验通过`
+				})
+			  }).catch(err => {
+				console.log('err', err);
+			})
+			let path = this.imageList.join(',');
+			console.log(path)
+			this.form.path = path
+			appletAdd(this.form).then(res =>{})
+	    },
+		updateImg(imgList){
+			this.imageList = imgList;
+		}
+	}
+};
+</script>
+
+<style>
+</style>

+ 0 - 0
pages/me/officialAuthentication.css


+ 81 - 0
pages/me/officialAuthentication.vue

@@ -0,0 +1,81 @@
+<template>
+	<uni-section title="自定义校验规则" type="line">
+			<view class="example">
+				<!-- 自定义表单校验 -->
+				<uni-forms ref="customForm" :rules="customRules" :modelValue="form">
+					<uni-forms-item label="企业名称" required name="enterpriseName">
+						<uni-easyinput v-model="form.enterpriseName" placeholder="请输入企业名称" />
+					</uni-forms-item>
+					<uni-forms-item label="法人姓名" required name="legalName">
+						<uni-easyinput v-model="form.legalName" placeholder="请输入法人姓名" />
+					</uni-forms-item>
+					<uni-forms-item label="联系电话" required name="phone">
+						<uni-easyinput v-model="form.phone" placeholder="请输入联系电话" />
+					</uni-forms-item>
+					<uni-forms-item label="证照信息" required name="path">
+						<upload :imgArr="imageList" name="path" v-model="form.path" :fileSize="1" :limit="3" @updateImg="updateImg"></upload>
+					</uni-forms-item>
+				</uni-forms>
+				<button type="primary" @click="submitForm('customForm')">提交</button>
+			</view>
+		</uni-section>
+</template>
+
+<script>
+import upload from '../../components/upload/index.vue'
+import {appletAdd} from '@/api/me/officialAuthentication.js'
+export default {
+	components: {
+		upload
+	},
+	onReady() {
+		// 设置自定义表单校验规则,必须在节点渲染完毕后执行
+		this.$refs.customForm.setRules(this.customRules)
+	},
+	data() {
+		return{
+			form:{
+				
+			},
+			// 表单校验
+			customRules: {
+				name: {
+					rules: [{
+						required: true,
+						errorMessage: '姓名不能为空'
+					}]
+				},
+			},
+			imageList:[]
+		}
+	},
+	methods: {
+	    // 取消按钮
+	    cancel() {
+	      this.open = false;
+	      this.reset();
+	    },
+	    /** 提交按钮 */
+	    submitForm(e) {
+			console.log("11111")
+			this.$refs[e].validate().then(res => {
+				console.log('success', res);
+				uni.showToast({
+				  title: `校验通过`
+				})
+			  }).catch(err => {
+				console.log('err', err);
+			})
+			let path = this.imageList.join(',');
+			this.form.path = path
+			appletAdd(this.form).then(res =>{})
+	    },
+		updateImg(imgList){
+			this.imageList = imgList;
+		}
+	}
+};
+</script>
+
+<style>
+</style>

+ 194 - 0
pages/toGovernmentList/index.css

@@ -0,0 +1,194 @@
+/*
+/* 热门问答 */
+.rnwdList {
+    width: 100%;
+}
+
+.list {
+    border-bottom: solid 2rpx #f6f6f6;
+    padding: 10rpx 0;
+    width: 100%;
+}
+
+.listTitle {
+    font-size: 32rpx;
+    color: #333;
+    line-height: 40rpx;
+}
+
+.jlSj {
+    height: 40rpx;
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+    font-size: 24rpx;
+    margin: 20rpx 0 0 0;
+}
+
+.jf {
+    color: #07c160;
+}
+
+.icon-jifen {
+    font-size: 26rpx;
+    color: #07c160;
+    margin: 0 0 0 6rpx;
+}
+
+.ck {
+    color: #c4c4c4;
+}
+
+.icon-pinglun,
+.icon-chakan,
+.icon-shoucang {
+    font-size: 28rpx;
+    margin: 0 6rpx 0 20rpx;
+    color: #c4c4c4;
+}
+
+.onePic {
+    width: 100%;
+    height: 360rpx;
+    border-radius: 20rpx;
+    overflow: hidden;
+    margin: 20rpx 0;
+}
+
+.onePic image {
+    width: 100%;
+    height: 100%;
+}
+.imageContainer {
+  display: flex;
+}
+
+.imageContainer.one-image {
+  justify-content: center;
+  align-items: center;
+}
+
+.imageContainer.two-images {
+  justify-content: space-between;
+}
+
+.imageContainer.three-images {
+  justify-content: space-between;
+}
+
+.imageContainer image {
+  /* 根据需要设置图片样式 */
+}
+.twoPic {
+    width: 100%;
+    height: 220rpx;
+    margin: 20rpx 0;
+    display: flex;
+    justify-content: space-between;
+}
+
+.twoPic image {
+    width: 49%;
+    height: auto;
+    border-radius: 20rpx;
+}
+
+.threePic {
+    width: 100%;
+    height: 160rpx;
+    margin: 20rpx 0;
+    display: flex;
+    justify-content: space-between;
+}
+
+.threePic image {
+    width: 32%;
+    height: auto;
+    border-radius: 20rpx;
+}
+
+/* 热门知识 */
+.rmzsList li {
+    width: 100%;
+    border-bottom: solid 2rpx #f6f6f6;
+    padding: 20rpx 0;
+    display: flex;
+    justify-content: space-between;
+}
+
+.rmzsList li image {
+    width: 40%;
+    height: 200rpx;
+}
+
+.listCont {
+    width: 58%;
+}
+
+.listCont p {
+    font-size: 32rpx;
+    color: #333;
+    overflow: hidden;
+    line-height: 40rpx;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    display: -webkit-box;
+    -webkit-line-clamp: 2;
+    -webkit-box-orient: vertical;
+}
+
+.listCont text {
+    font-size: 24rpx;
+    color: #9c9c9c;
+}
+
+.biaoqian {
+    display: flex;
+    margin: 6rpx 0;
+}
+
+.biaoqian span {
+    padding: 2rpx 20rpx;
+    font-size: 20rpx;
+    background: #e0e0e0;
+    color: #9c9c9c;
+    margin: 0 20rpx 0 0;
+    border-radius: 30rpx;
+}
+
+.jiage {
+    display: flex;
+}
+
+.yhjg {
+    font-size: 30rpx;
+    color: #07c160;
+}
+
+.yhjg em {
+    font-size: 24rpx;
+    color: #07c160;
+}
+
+.yjjg {
+    font-size: 24rpx;
+    color: #9c9c9c;
+    margin: 6rpx 0 0 20rpx;
+    text-decoration: line-through;
+}
+
+/* 公告start */
+
+.swiper_container {
+    height: 55rpx;
+    width: 70%;
+    line-height: 60rpx;
+}
+
+.swiper_item {
+    color: #000;
+    font-size: 28rpx;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
+}

+ 64 - 18
pages/toGovernmentList/toGovernmentList.vue

@@ -1,26 +1,72 @@
 <template>
-	<view>
-	  <text>秦厚玉</text>
-	</view>
+        <!-- 分割线 -->
+        <view class="container">
+            <view class="rnwdList">
+                <view class="list" v-for="(item, index) in indexList1" :key="index" @click="toGovernmentList1">
+                    <span class="listTitle">{{ item.titleName }}</span>
+                    <view class="onePic" v-if="item.urls!=null&&item.urls.length > 0" v-for="(url, i) in item.urls">
+                        <image :src="'http://localhost:88/dev-api'+url" :key="i"></image>
+                    </view>
+                    <view class="jlSj">
+                        <span class="jf">
+                            {{ item.createTime }}
+                        </span>
+                        <view class="ck">
+                            <span>
+                                <em class="iconfont icon-chakan"></em>
+                                {{ item.watchNum }}
+                            </span>
+                            <span>
+                                <em class="iconfont icon-shoucang"></em>
+                                {{ item.likeNum }}
+                            </span>
+                        </view>
+                    </view>
+                </view>
+            </view>
+        </view>
 
 </template>
 
 <script>
-	
-	export default {
-		data() {
-			return {
-				
-			};
-		},
-		mount() {
-			
-		},
-		methods: {
-			
+	import {governmentListMore} from '@/api/information/information.js'
+export default {
+    data() {
+        return {
+            indexList1: []
+        };
+    }
+    /**
+     * 生命周期函数--监听页面加载
+     */,
+    onLoad(options) {
+		this.governmentListMores()
+    },
+	mounted() {
+
+	},
+    methods: {
+      toGovernmentList1(){
+        uni.navigateTo({
+          url: '/pages/toGovernmentList/toGovernmentListDetail'
+        });
+      },
+		governmentListMores(){
+			let params = {
+			  pageSize: 10,
+			  pageNum: 1,
+			  type:10,
+			  isGovernment:1
+			  }
+			governmentListMore(params).then(res =>{
+				if (res.code==200) {
+					this.indexList1=res.rows
+				}
+			})
 		}
-	}
+    }
+};
 </script>
 <style scoped>
-	
-</style>
+	@import url("./index.css");
+</style>

+ 160 - 0
pages/toGovernmentList/toGovernmentListDetail.css

@@ -0,0 +1,160 @@
+/* pages/wenbaxiangqing.wxss */
+.title {
+    font-size: 44rpx;
+    text-align: center;
+    line-height: 70rpx;
+    color: #333;
+    margin: 30rpx 0;
+}
+.wenzhangLy {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    border-bottom: solid 2rpx #e8e8e8;
+    padding: 0 0 14rpx 0;
+}
+.txTime {
+    display: flex;
+    flex-direction: row;
+}
+.txTime image {
+    width: 80rpx;
+    height: 80rpx;
+}
+.time {
+    display: flex;
+    flex-direction: column;
+    padding: 10rpx 0 0 8px;
+}
+.time p {
+    font-size: 28rpx;
+    color: #9c9c9c;
+}
+.time span {
+    font-size: 24rpx;
+    color: #c4c4c4;
+}
+
+.jf {
+    color: #07c160;
+    line-height: 80rpx;
+    font-size: 24rpx;
+}
+.icon-jifen {
+    font-size: 28rpx;
+    color: #07c160;
+    margin: 0 0 0 6rpx;
+}
+.ck {
+    color: #c4c4c4;
+    font-size: 28rpx;
+}
+.icon-pinglun,
+.icon-chakan,
+.ck .icon-shoucang {
+    font-size: 28rpx;
+    margin: 0 6rpx 0 20rpx;
+    color: #c4c4c4;
+    line-height: 0;
+}
+.wenzhangCont {
+    font-size: 34rpx;
+    margin: 30rpx 0;
+}
+.wenzhangCont image {
+    width: 100%;
+    height: 320rpx;
+    margin: 20rpx auto;
+}
+.pinglunTj {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    margin: 30rpx 0;
+}
+.pinglunTitle {
+    font-size: 34rpx;
+    color: #2e2e2e;
+    font-weight: 600;
+}
+.pinglunTitle em {
+    font-size: 34rpx;
+    color: #9b9b9b;
+    font-weight: normal;
+    margin: 0 0 0 10rpx;
+}
+.pinglunList {
+    width: 100%;
+    padding: 0 0 120rpx 0;
+}
+.pinglunList li {
+    margin: 20rpx 0;
+    border-bottom: solid 2rpx #e8e8e8;
+    padding: 0 0 20rpx 0;
+    display: flex;
+    flex-direction: column;
+}
+.plListcont {
+    font-size: 30rpx;
+    color: #696868;
+    margin: 20rpx 0;
+}
+.pinglunList li button {
+    width: 80%;
+    border-radius: 10rpx;
+    background: #07c160;
+    color: #fff;
+    font-size: 28rpx;
+    font-weight: normal;
+    margin: 16rpx auto;
+}
+.fabiaoPl {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    position: fixed;
+    left: 0;
+    bottom: 0;
+    height: 112rpx;
+    background: #e8e8e8;
+    box-shadow: 0rpx 0rpx 16rpx #999;
+}
+.shuRu {
+    width: 72%;
+    display: flex;
+    flex-direction: row;
+    height: 76rpx;
+    background: #e0e0e0;
+    border-radius: 60rpx;
+    margin: 20rpx 0 0 20rpx;
+}
+.shuRu input {
+    line-height: 38px;
+    height: 76rpx;
+    font-size: 30rpx;
+    width: 83%;
+}
+.icon-bianji {
+    font-size: 38rpx;
+    line-height: 76rpx;
+    margin: 0 10rpx 0 20rpx;
+    color: #828181;
+}
+.icon-shoucang {
+    font-size: 50rpx;
+    line-height: 112rpx;
+    color: #828181;
+}
+.fasong {
+    width: 58rpx;
+    height: 58rpx;
+    border-radius: 50rpx;
+    background: #07c160;
+    margin: 26rpx 20rpx 0 10rpx;
+    text-align: center;
+    line-height: 58rpx;
+}
+.icon-fasong {
+    font-size: 40rpx;
+    color: #fff;
+}

File diff suppressed because it is too large
+ 269 - 0
pages/toGovernmentList/toGovernmentListDetail.vue