asd123a20 2 anni fa
parent
commit
74838dc953
100 ha cambiato i file con 382 aggiunte e 209 eliminazioni
  1. 1 1
      api/cms.js
  2. 0 3
      components/gaoyia-parse/libs/html2json.js
  3. 0 1
      components/gaoyia-parse/parse.vue
  4. 6 0
      pages.json
  5. 7 43
      pages/details/cmsinfo.vue
  6. 1 1
      pages/illness/testingRoom.vue
  7. 1 1
      pages/illness/vaccines.vue
  8. 3 3
      pages/index/index.vue
  9. 3 3
      pages/integral/index.vue
  10. 0 1
      pages/my/index.vue
  11. 1 1
      pages/policy/index.vue
  12. 17 18
      pages/property/butler.vue
  13. 71 0
      pages/property/butlerType.vue
  14. 1 0
      pages/recruit/details.vue
  15. 55 22
      pages/report/double.vue
  16. 43 14
      pages/report/index.vue
  17. 13 0
      pages/user/familyInfo.vue
  18. 1 1
      pages/user/index.vue
  19. 1 0
      unpackage/dist/build/mp-weixin/app.json
  20. 1 1
      unpackage/dist/build/mp-weixin/common/vendor.js
  21. 1 1
      unpackage/dist/build/mp-weixin/pages/property/butler.js
  22. 1 3
      unpackage/dist/build/mp-weixin/pages/property/butler.json
  23. 1 1
      unpackage/dist/build/mp-weixin/pages/property/butler.wxml
  24. 1 1
      unpackage/dist/build/mp-weixin/pages/property/butler.wxss
  25. 1 0
      unpackage/dist/build/mp-weixin/pages/property/butlerType.js
  26. 8 0
      unpackage/dist/build/mp-weixin/pages/property/butlerType.json
  27. 1 0
      unpackage/dist/build/mp-weixin/pages/property/butlerType.wxml
  28. 1 0
      unpackage/dist/build/mp-weixin/pages/property/butlerType.wxss
  29. 1 1
      unpackage/dist/build/mp-weixin/pages/report/double.js
  30. 1 1
      unpackage/dist/build/mp-weixin/pages/report/double.wxml
  31. 1 1
      unpackage/dist/build/mp-weixin/pages/report/index.js
  32. 1 1
      unpackage/dist/build/mp-weixin/pages/report/index.wxml
  33. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  34. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  35. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/components/gaoyia-parse/parse.js.map
  36. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/details/cmsinfo.js.map
  37. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/testingRoom.js.map
  38. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/vaccines.js.map
  39. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  40. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/integral/index.js.map
  41. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map
  42. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/notice/index.js.map
  43. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/policy/index.js.map
  44. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/property/butler.js.map
  45. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/property/butlerType.js.map
  46. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/recruit/details.js.map
  47. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/report/double.js.map
  48. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/report/index.js.map
  49. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/familyInfo.js.map
  50. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/index.js.map
  51. 1 0
      unpackage/dist/dev/mp-weixin/app.json
  52. 1 1
      unpackage/dist/dev/mp-weixin/common/runtime.js
  53. 2 2
      unpackage/dist/dev/mp-weixin/common/vendor.js
  54. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseAudio.js
  55. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseImg.js
  56. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTable.js
  57. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate0.js
  58. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate1.js
  59. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate10.js
  60. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate11.js
  61. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate2.js
  62. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate3.js
  63. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate4.js
  64. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate5.js
  65. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate6.js
  66. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate7.js
  67. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate8.js
  68. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate9.js
  69. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseVideo.js
  70. 2 2
      unpackage/dist/dev/mp-weixin/components/gaoyia-parse/parse.js
  71. 1 1
      unpackage/dist/dev/mp-weixin/pages/activity/details.js
  72. 1 1
      unpackage/dist/dev/mp-weixin/pages/activity/index.js
  73. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.js
  74. 1 3
      unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.json
  75. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.wxml
  76. 4 1
      unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.wxss
  77. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/index.js
  78. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/index.js
  79. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/receive.js
  80. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/testingRoom.js
  81. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/vaccines.js
  82. 1 1
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  83. 1 2
      unpackage/dist/dev/mp-weixin/pages/index/index.json
  84. 1 1
      unpackage/dist/dev/mp-weixin/pages/index/index.wxml
  85. 1 1
      unpackage/dist/dev/mp-weixin/pages/integral/index.wxml
  86. 1 1
      unpackage/dist/dev/mp-weixin/pages/my/index.js
  87. 1 1
      unpackage/dist/dev/mp-weixin/pages/notice/index.js
  88. 1 1
      unpackage/dist/dev/mp-weixin/pages/policy/index.js
  89. 1 1
      unpackage/dist/dev/mp-weixin/pages/property/butler.js
  90. 1 3
      unpackage/dist/dev/mp-weixin/pages/property/butler.json
  91. 1 1
      unpackage/dist/dev/mp-weixin/pages/property/butler.wxml
  92. 3 2
      unpackage/dist/dev/mp-weixin/pages/property/butler.wxss
  93. 2 0
      unpackage/dist/dev/mp-weixin/pages/property/butlerType.js
  94. 8 0
      unpackage/dist/dev/mp-weixin/pages/property/butlerType.json
  95. 1 0
      unpackage/dist/dev/mp-weixin/pages/property/butlerType.wxml
  96. 40 0
      unpackage/dist/dev/mp-weixin/pages/property/butlerType.wxss
  97. 1 1
      unpackage/dist/dev/mp-weixin/pages/property/index.js
  98. 1 1
      unpackage/dist/dev/mp-weixin/pages/questionnaire/details.js
  99. 1 1
      unpackage/dist/dev/mp-weixin/pages/questionnaire/index.js
  100. 0 0
      unpackage/dist/dev/mp-weixin/pages/recruit/details.js

+ 1 - 1
api/cms.js

@@ -16,7 +16,7 @@ const addBlogViews = async ({ id }) => {
 	return res.data;
 }
 const getsublist = async ({ alias }) => {
-	const res = await request.get({ url: `/api/cms/type/sublist/${alias}` });
+	const res = await request.get({ url: `/cms/type/sublist/${alias}` });
 	return res.data;
 }
 export default { getTypeList, getArticleList, getArticleDetail, addBlogViews, getsublist };

+ 0 - 3
components/gaoyia-parse/libs/html2json.js

@@ -151,7 +151,6 @@ function html2json(html, customHandler, imageProp, host) {
           results.imageUrls.push(imgUrl);
         }
       }
-
       // 处理a标签属性
       if (node.tag === 'a') {
         node.attr.href = node.attr.href || '';
@@ -238,11 +237,9 @@ function html2json(html, customHandler, imageProp, host) {
         node: 'text',
         text,
       };
-
       if (customHandler.chars) {
         customHandler.chars(node, results);
       }
-
       if (bufArray.length === 0) {
         results.nodes.push(node);
       } else {

+ 0 - 1
components/gaoyia-parse/parse.vue

@@ -179,7 +179,6 @@ import wxParseTemplate from './components/wxParseTemplate0';
 				});
 			},
 			navigate(href, $event, attr) {
-				console.log(href, attr);
 				this.$emit('navigate', href, $event);
 			},
 			preview(src, $event) {

+ 6 - 0
pages.json

@@ -134,6 +134,12 @@
 				"navigationBarTitleText": "红色物业"
 			}
 		},
+		{
+			"path": "pages/property/butlerType",
+			"style": {
+				"navigationBarTitleText": "红管家风采展示"
+			}
+		},
 		{
 			"path": "pages/property/butler",
 			"style": {

+ 7 - 43
pages/details/cmsinfo.vue

@@ -1,67 +1,31 @@
 <template>
 	<view class="container">
-		<view class="title" :style="{ height: height + 'px', lineHeight: height + 'px', paddingTop: top + 'px' }">
-			<uni-icons @click="back" class="back" color="#fff" type="back" size="25"></uni-icons>
-			<text>{{ info.title }}</text>
-		</view>
-		<!-- <text class="time">创建时间:{{ info.createTime }}</text> -->
-		<rich-text image-menu-prevent="true" :nodes="info.content || info.noticeContent" class="content" :style="{ marginTop: height + top + 'px' }"></rich-text>
-		<!-- <view class="content" v-html="info.content || info.noticeContent"> -->
-		</view>
+		<web-view :src="baseUrl + url"></web-view>
 	</view>
 </template>
 
 <script>
 	import request from '../../api/cms.js';
-	import requestNotice from '../../api/system.js';
+	import { BASE_URL } from '../../env.js';
 	export default {
+		components: {},
 		onLoad: function (option) {
 			this.id = option.id;
+			this.url = `/cms/article/${option.id}`;
 		},
 		data() {
 			return {
+				baseUrl: BASE_URL.url,
+				url: '',
 				id: '',
-				info: null,
-				height: 60,
-				top: 25,
 			}
 		},
 		async mounted() {
-			const res = await request.getArticleDetail({ id: this.id });
-			this.info = res.data;
 			await request.addBlogViews({ id: this.id });
-			const client = wx.getMenuButtonBoundingClientRect();
-			this.height = client.height;
-			this.top = client.top;
 		},
-		methods: {
-			back() {
-				uni.navigateBack();
-			}
-		}
+		methods: {}
 	}
 </script>
 
 <style>
-	.title {
-		position: fixed;
-		color: #fff;
-		background-color: #fd6b18;
-		top: 0;
-		width: 100%;
-	}
-	.back {
-		margin: 0 15px 0 5px;
-	}
-	.time {
-		width: 100%;
-		text-align: center;
-		display: block;
-		font-size: 12px;
-	}
-	.content {
-		display: block;
-		width: 90%;
-		margin: 10px auto;
-	}
 </style>

+ 1 - 1
pages/illness/testingRoom.vue

@@ -28,7 +28,7 @@
 		},
 		methods: {
 			listItemBtn(e) {
-				uni.navigateTo({ url: `/pages/details/index?id=${e.id}` });
+				uni.navigateTo({ url: `/pages/details/cmsinfo?id=${e.id}` });
 			},
 			// 查询列表函数
 			async getList() {

+ 1 - 1
pages/illness/vaccines.vue

@@ -28,7 +28,7 @@
 		},
 		methods: {
 			listItemBtn(e) {
-				uni.navigateTo({ url: `/pages/details/index?id=${e.id}` });
+				uni.navigateTo({ url: `/pages/details/cmsinfo?id=${e.id}` });
 			},
 			// 查询列表函数
 			async getList() {

+ 3 - 3
pages/index/index.vue

@@ -24,10 +24,10 @@
 		</uni-section>
 		<!-- 疫情 -->
 		<uni-section titleFontSize="16px" class="mb-10 sectionBox" title="疫情防控" type="line">
-			<uni-card class="card card2" v-for="(item, index) in list" :key="index" :border="false" @click="illnessBtn(item)">
+			<view class="card" v-for="(item, index) in list" :key="index" :border="false" @click="illnessBtn(item)">
+				<image style="width: 50%; height: 55px; margin: 0 auto; display: block;" :src="item.url"></image>
 				<text class="title">{{ item.title }}</text>
-				<image style="width: 60%; height: 70px; margin-left: 40%; display: block;" :src="item.url"></image>
-			</uni-card>
+			</view>
 		</uni-section>
 	</view>
 </template>

+ 3 - 3
pages/integral/index.vue

@@ -3,11 +3,11 @@
 		<view class="top">
 			<view class="left">
 				<text class="name">荣誉积分</text>
-				<text class="num">{{ integral.honorPoints }}</text>
+				<text class="num">{{ integral.honorPoints || 0 }}</text>
 			</view>
 			<view class="right">
 				<text class="name">消费积分</text>
-				<text class="num">{{ integral.spendPoints }}</text>
+				<text class="num">{{ integral.spendPoints || 0 }}</text>
 			</view>
 		</view>
 		<view class="main">
@@ -16,7 +16,7 @@
 				<view class="userName">姓名</view>
 				<view class="userIntegral">积分</view>
 			</view>
-			<view class="titleBox item" v-for="(item, index) in list">
+			<view class="titleBox item" v-for="(item, index) in list" :key="index">
 				<view class="ranking">{{ item.num | userNum }}</view>
 				<view class="userName">{{ item.name }}</view>
 				<view class="userIntegral">{{ item.honorPoints }}分</view>

+ 0 - 1
pages/my/index.vue

@@ -104,7 +104,6 @@
 				})
 			},
 			onClick(e) {
-				console.log(e);
 				if (e == 0) {
 					uni.navigateTo({
 						url: '/pages/user/index'

+ 1 - 1
pages/policy/index.vue

@@ -35,7 +35,7 @@
 		methods: {
 			// 列表点击函数
 			listItemBtn(e) {
-				uni.navigateTo({ url: `/pages/details/index?id=${e.id}` })
+				uni.navigateTo({ url: `/pages/details/cmsinfo?id=${e.id}` })
 			},
 			// 搜索函数
 			async getPolicyList(e) {

+ 17 - 18
pages/property/butler.vue

@@ -1,14 +1,12 @@
 <template>
 	<view class="container" :style="{ backgroundImage: `url(${hgjbj})` }">
-		<uni-section v-for="item in dataList" titleFontSize="16px"  class="sectionBox" :title="item.name" type="line">
-			<view class="box">
-				<view class="imgBox" v-for="(i, index) in item.data" :key="index" @click="btn(i)">
-					<image class="imgs" mode="scaleToFill" :src="filesUrl + i.blogPic"></image>
-					<text class="name">{{ i.title }}</text>
-					<text class="name">{{ i.blogDesc }}</text>
-				</view>
+		<view class="box">
+			<view class="imgBox" v-for="(i, index) in dataList" :key="index" @click="btn(i)">
+				<image class="imgs" mode="scaleToFill" :src="filesUrl + i.blogPic"></image>
+				<text class="name">{{ i.title }}</text>
+				<text class="name">{{ i.blogDesc }}</text>
 			</view>
-		</uni-section>
+		</view>
 	</view>
 </template>
 
@@ -21,23 +19,23 @@
 			return {
 				filesUrl: BASE_URL.fileUrl,
 				dataList: [],
-				hgjbj: ''
+				hgjbj: '',
+				alias: ''
 			}
 		},
-		onShow: function() {},
+		onLoad: function(option) {
+			this.alias = option.alias;
+		},
 		async mounted() {
 			const config = await requestLogin.getJson();
 			const { hgjbj } = config.data;
 			this.hgjbj = hgjbj;
-			const res = await request.getsublist({ alias: 'hgjfc' });
-			this.dataList = await Promise.all(res.data.map(async e => {
-				const aliasData = await request.getArticleList({ pageNum: 1, pageSize: 100, typeName: e.alias });
-				return { name: e.typeName, alias: e.alias, data: aliasData.rows };
-			}))
+			const res = await request.getArticleList({ pageNum: 1, pageSize: 100, typeName: this.alias });
+			this.dataList = res.rows;
 		},
 		methods: {
 			btn(e) {
-				// uni.navigateTo({ url: `/pages/details/index?id=${e.id}` })
+				uni.navigateTo({ url: `/pages/details/cmsinfo?id=${e.id}` })
 			}
 		}
 	}
@@ -53,17 +51,18 @@
 	.box {
 		display: flex;
 		flex-wrap: wrap;
+		margin-top: 15px;
 	}
 	.imgBox {
 		width: 30%;
-		height: 36vw;
+		height: 50vw;
 		margin-left: 2.5%;
 		margin-top: 5px;
 	}
 	.imgs {
 		display: block;
 		width: 100%;
-		height: 90%;
+		height: 75%;
 		border: 2px solid #CD7F32;
 	}
 	.name {

+ 71 - 0
pages/property/butlerType.vue

@@ -0,0 +1,71 @@
+<template>
+	<view class="container">
+		<uni-card :title="istitle" class="cardBox">
+			<uni-list border class="list">
+				<uni-list-item v-for="(item, index) in dataList" :key="index" :ellipsis="1" :title="item.typeName" link clickable  @click="listItemBtn(item)" ></uni-list-item>
+			</uni-list>
+		</uni-card>
+	</view>
+</template>
+
+<script>
+	import request from '../../api/cms.js';
+	export default {
+		data() {
+			return {
+				dataList: []
+			}
+		},
+		onShow: function() {},
+		async mounted() {
+			const res = await request.getsublist({ alias: 'hgjfc' });
+			this.dataList = res.data;
+		},
+		methods: {
+			listItemBtn(e) {
+				uni.navigateTo({ url: `/pages/property/butler?alias=${e.alias}` });
+			}
+		}
+	}
+</script>
+
+<style>
+	.container {
+		width: 100%;
+		height: 100vh;
+		overflow-y: auto;
+		background-size: 100% 100%;
+	}
+	.box {
+		display: flex;
+		flex-wrap: wrap;
+	}
+	.imgBox {
+		width: 30%;
+		height: 36vw;
+		margin-left: 2.5%;
+		margin-top: 5px;
+	}
+	.imgs {
+		display: block;
+		width: 100%;
+		height: 90%;
+		border: 2px solid #CD7F32;
+	}
+	.name {
+		width: 100%;
+		display: block;
+		text-align: center;
+		color: #fff;
+	}
+	.uni-section {
+		background-color: transparent !important;
+		margin-top: 20px;
+	}
+	.uni-section-header {
+		padding: 0 10px !important;
+	}
+	.uni-section__content-title {
+		color: #fff !important;
+	}
+</style>

+ 1 - 0
pages/recruit/details.vue

@@ -2,6 +2,7 @@
 	<view class="container">
 		<uni-section :title="info.topic" titleFontSize="18" type="line">
 			<uni-list>
+				<uni-list-item :show-extra-icon="true" :extra-icon="extraIcon[0]" title="招募时间" :rightText="`${info.startTime}至${info.endTime}`"></uni-list-item>
 				<uni-list-item :show-extra-icon="true" :extra-icon="extraIcon[1]" title="负责人" :rightText="info.sponsorName"></uni-list-item>
 				<uni-list-item :show-extra-icon="true" :extra-icon="extraIcon[2]" title="联系电话" :rightText="info.sponsorPhone"></uni-list-item>
 				<uni-list-item :show-extra-icon="true" title="招募人数" :rightText="info.count"></uni-list-item>

+ 55 - 22
pages/report/double.vue

@@ -1,7 +1,7 @@
 <template>
 	<view class="container">
-		<uni-forms ref="baseForm" :modelValue="formData" :label-width="100">
-			<uni-forms-item v-for="item in fileds" :label="item.title" :name="item.name"  :key="item.name">
+		<uni-forms ref="baseForm" :modelValue="formData" :rules="rules" :label-width="80">
+			<uni-forms-item v-for="item in fileds" :label="item.title" :name="item.name"  :key="item.name" required>
 				<uni-easyinput v-if="!item.formatter && !item.type" type="text" v-model="formData[item.name]" :placeholder="`请输入${item.title}`" />
 				<uni-data-checkbox v-model="formData[item.name]" v-if="item.formatter && item.type == 'checkbox'" :multiple="item.multiple || false" :localdata="item.dict" />
 				<uni-data-select v-model="formData[item.name]" v-if="item.formatter && item.type == 'select'" :localdata="item.dict"></uni-data-select>
@@ -11,7 +11,7 @@
 				<video controls v-if="item.type == 'video' && formData[item.name]" class="uploadVideo" :src="filesUrl + formData[item.name]"></video>
 			</uni-forms-item>
 		</uni-forms>
-		<button :disabled="btnText == '已报'" class="btn" type="primary" @click="submitForm">{{ btnText }}</button>
+		<button :disabled="btnText == '已报'" class="btn" type="primary" @click="submitForm">{{ btnText }}</button>
 	</view>
 </template>
 
@@ -30,19 +30,48 @@
 					{ name: 'sex', title: '性别', formatter: 'dict:user_sex_type', type: 'checkbox' },
 					{ name: 'phone', title: '联系电话' },
 					{ name: 'workUnit', title: '工作单位' },
-					{ name: 'reportLocation', title: '报位置' },
-					{ name: 'reportType', title: '报类别', formatter: 'dict:baodao_type', type: 'select' },
+					{ name: 'reportLocation', title: '报位置' },
+					{ name: 'reportType', title: '报类别', formatter: 'dict:baodao_type', type: 'select' },
 					{ name: 'residence', title: '居住地' },
-					{ name: 'content', title: '报道内容' },
-					{ name: 'videoPath', title: '影片', type: 'video' },
-				]
+					{ name: 'content', title: '报到内容' },
+					// { name: 'videoPath', title: '影片', type: 'video' },
+				],
+				rules: {
+					name: {
+						rules:[{ required: true, errorMessage: '请填写姓名' }]
+					},
+					sex: {
+						rules:[{ required: true, errorMessage: '请选择性别' }]
+					},
+					phone: {
+						rules:[{ required: true, errorMessage: '请填写联系电话' }]
+					},
+					workUnit: {
+						rules:[{ required: true, errorMessage: '请填写工作单位' }]
+					},
+					reportLocation: {
+						rules:[{ required: true, errorMessage: '请填写报到位置' }]
+					},
+					reportType: {
+						rules:[{ required: true, errorMessage: '请选择报到类别' }]
+					},
+					residence: {
+						rules:[{ required: true, errorMessage: '请填写居住地' }]
+					},
+					content: {
+						rules:[{ required: true, errorMessage: '请填写报到内容' }]
+					},
+					// videoPath: {
+					// 	rules:[{ required: true, errorMessage: '请上传影片' }]
+					// }
+				}
 			}
 		},
 		async mounted() {
 			const res = await request.getDyStatus();
 			if (res.data) {
 				this.formData = { ...res.data, sex: String(res.data.sex), reportType: String(res.data.reportType) };;
-				this.btnText = '已报道';
+				this.btnText = '已报';
 			}
 			await this.setDict();
 		},
@@ -72,7 +101,7 @@
 						let tempFilePath=res.tempFiles[0].tempFilePath
 						// 上传视频
 						uni.uploadFile({
-							url: _this.baseUrl + '/api/activity/photo',
+							url: _this.baseUrl + '/activity/photo',
 							name: 'file',
 							header: {
 								'Authorization': `Bearer ${token}`
@@ -94,18 +123,22 @@
 					  },
 					})
 			},
-			async submitForm() {
-				const res = await request.submitdy(this.formData);
-				if (res.code == 200) {
-					uni.showToast({
-						title: '提交成功',
-						icon: 'success',
-						duration: 2000,
-					});
-					setTimeout(() => {
-						uni.navigateBack();
-					}, 1000)
-				}
+			submitForm() {
+				this.$refs.baseForm.validate().then(async valid=>{
+					const res = await request.submitdy(this.formData);
+					if (res.code == 200) {
+						uni.showToast({
+							title: '提交成功',
+							icon: 'success',
+							duration: 2000,
+						});
+						setTimeout(() => {
+							uni.navigateBack();
+						}, 1000)
+					}
+				}).catch(err =>{
+					console.log('表单错误信息:', err);
+				})
 			}
 		},
 		// 页面生命周期中onReachBottom(页面滚动到底部的事件)

+ 43 - 14
pages/report/index.vue

@@ -1,9 +1,10 @@
 <template>
 	<view class="container">
-		<uni-forms ref="baseForm" :modelValue="formData" :label-width="100">
-			<uni-forms-item v-for="item in fileds" :label="item.title" :name="item.name"  :key="item.name">
+		<uni-forms ref="baseForm" :modelValue="formData" :label-width="110" :rules="rules">
+			<uni-forms-item v-for="item in fileds" :label="item.title" :name="item.name" :key="item.name" required>
 				<uni-easyinput v-if="!item.formatter && !item.type" type="text" v-model="formData[item.name]" :placeholder="`请输入${item.title}`" />
 				<uni-data-checkbox v-model="formData[item.name]" v-if="item.formatter && item.type == 'checkbox'" :multiple="item.multiple || false" :localdata="item.dict" />
+				<text class="msg" v-if="item.name == 'baobaoloudong'">例:XX社区 + XX小区 + X栋</text>
 			</uni-forms-item>
 		</uni-forms>
 		<button :disabled="btnText == '已报道'" class="btn" type="primary" @click="submitForm">{{ btnText }}</button>
@@ -24,7 +25,27 @@
 					{ name: 'baobaoloudong', title: '包保楼栋' },
 					{ name: 'phone', title: '联系电话' },
 					{ name: 'jianrensanzhang', title: '是否兼任三长', formatter: 'dict:jianrensanzhang_type', type: 'checkbox' },
-				]
+				],
+				rules: {
+					name: {
+						rules:[{ required: true, errorMessage: '请填写姓名' }]
+					},
+					sex: {
+						rules:[{ required: true, errorMessage: '请选择性别' }]
+					},
+					phone: {
+						rules:[{ required: true, errorMessage: '请填写联系电话' }]
+					},
+					workUnit: {
+						rules:[{ required: true, errorMessage: '请填写工作单位' }]
+					},
+					baobaoloudong: {
+						rules:[{ required: true, errorMessage: '请填写包保楼栋' }]
+					},
+					jianrensanzhang: {
+						rules:[{ required: true, errorMessage: '请选择是否兼任三长' }]
+					},
+				}
 			}
 		},
 		async mounted() {
@@ -48,17 +69,21 @@
 				}));
 			},
 			async submitForm() {
-				const res = await request.submitgb(this.formData);
-				if (res.code == 200) {
-					uni.showToast({
-						title: '提交成功',
-						icon: 'success',
-						duration: 2000,
-					});
-					setTimeout(() => {
-						uni.navigateBack();
-					}, 1000)
-				}
+				this.$refs.baseForm.validate().then(async valid=>{
+					const res = await request.submitgb(this.formData);
+					if (res.code == 200) {
+						uni.showToast({
+							title: '提交成功',
+							icon: 'success',
+							duration: 2000,
+						});
+						setTimeout(() => {
+							uni.navigateBack();
+						}, 1000)
+					}
+				}).catch(err =>{
+					console.log('表单错误信息:', err);
+				})
 			}
 		},
 		// 页面生命周期中onReachBottom(页面滚动到底部的事件)
@@ -75,4 +100,8 @@
 		width: 90%;
 		margin: 0 auto;
 	}
+	.msg {
+		color: red;
+		font-size: 12px;
+	}
 </style>

+ 13 - 0
pages/user/familyInfo.vue

@@ -1,5 +1,10 @@
 <template>
 	<view class="container">
+		<uni-card v-if="formData && formData.reqStatus == 2">
+			<uni-section title="驳回原因" type="line">
+				<text class="msg">{{ formData.rejectReason }}</text>
+			</uni-section>
+		</uni-card>
 		<uni-section title="基础信息" type="line">
 			<uni-forms ref="infoForm" :rules="rules" :modelValue="formData" :label-width="90">
 				<uni-forms-item required label="姓名" name="name">
@@ -280,4 +285,12 @@
 		width: 90%;
 		margin: 10px auto;
 	}
+	.msg {
+		color: red;
+		display: block;
+		width: 90%;
+		margin: 0 auto;
+		font-size: 14px;
+		font-weight: 600;
+	}
 </style>

+ 1 - 1
pages/user/index.vue

@@ -26,7 +26,7 @@
 					<uni-data-picker v-model="formData.estateId" :map="pickerMap" :localdata="items" placeholder="请选择地址" popup-title="请选择地址" @change="onchange"></uni-data-picker>
 				</uni-forms-item>
 				<uni-forms-item label="楼栋选择" v-if="house.range && house.range.length > 0">
-					<uni-data-picker v-model="formData.buildingId" :localdata="house.range" placeholder="请选择小区" popup-title="请选择小区" @change="selectChange"></uni-data-picker>
+					<uni-data-picker v-model="formData.buildingId" :localdata="house.range" placeholder="请选择楼栋" popup-title="请选择楼栋" @change="selectChange"></uni-data-picker>
 				</uni-forms-item>
 				<uni-forms-item label="单元选择" v-if="house.unit && house.unit.length > 0">
 					<uni-data-picker v-model="formData.unit" :localdata="house.unit" placeholder="请选择单元" popup-title="请选择单元" @change="unitChange"></uni-data-picker>

+ 1 - 0
unpackage/dist/build/mp-weixin/app.json

@@ -22,6 +22,7 @@
     "pages/activity/details",
     "pages/activity/uploadFiel",
     "pages/property/index",
+    "pages/property/butlerType",
     "pages/property/butler",
     "pages/report/index",
     "pages/report/double",

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/common/vendor.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/pages/property/butler.js


+ 1 - 3
unpackage/dist/build/mp-weixin/pages/property/butler.json

@@ -1,6 +1,4 @@
 {
   "navigationBarTitleText": "红管家风采展示",
-  "usingComponents": {
-    "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section"
-  }
+  "usingComponents": {}
 }

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/pages/property/butler.wxml


+ 1 - 1
unpackage/dist/build/mp-weixin/pages/property/butler.wxss

@@ -1 +1 @@
-.container{width:100%;height:100vh;overflow-y:auto;background-size:100% 100%}.box{display:flex;flex-wrap:wrap}.imgBox{width:30%;height:36vw;margin-left:2.5%;margin-top:5px}.imgs{display:block;width:100%;height:90%;border:2px solid #cd7f32}.name{width:100%;display:block;text-align:center;color:#fff}.uni-section{background-color:initial!important;margin-top:20px}.uni-section-header{padding:0 10px!important}.uni-section__content-title{color:#fff!important}
+.container{width:100%;height:100vh;overflow-y:auto;background-size:100% 100%}.box{display:flex;flex-wrap:wrap}.imgBox{width:30%;height:45vw;margin-left:2.5%;margin-top:5px}.imgs{display:block;width:100%;height:70%;border:2px solid #cd7f32}.name{width:100%;display:block;text-align:center;color:#fff}.uni-section{background-color:initial!important;margin-top:20px}.uni-section-header{padding:0 10px!important}.uni-section__content-title{color:#fff!important}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/build/mp-weixin/pages/property/butlerType.js


+ 8 - 0
unpackage/dist/build/mp-weixin/pages/property/butlerType.json

@@ -0,0 +1,8 @@
+{
+  "navigationBarTitleText": "红管家风采展示",
+  "usingComponents": {
+    "uni-card": "/uni_modules/uni-card/components/uni-card/uni-card",
+    "uni-list": "/uni_modules/uni-list/components/uni-list/uni-list",
+    "uni-list-item": "/uni_modules/uni-list/components/uni-list-item/uni-list-item"
+  }
+}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/build/mp-weixin/pages/property/butlerType.wxml


+ 1 - 0
unpackage/dist/build/mp-weixin/pages/property/butlerType.wxss

@@ -0,0 +1 @@
+.container{width:100%;height:100vh;overflow-y:auto;background-size:100% 100%}.box{display:flex;flex-wrap:wrap}.imgBox{width:30%;height:36vw;margin-left:2.5%;margin-top:5px}.imgs{display:block;width:100%;height:90%;border:2px solid #cd7f32}.name{width:100%;display:block;text-align:center;color:#fff}.uni-section{background-color:initial!important;margin-top:20px}.uni-section-header{padding:0 10px!important}.uni-section__content-title{color:#fff!important}

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/pages/report/double.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/pages/report/double.wxml


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/pages/report/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/build/mp-weixin/pages/report/index.wxml


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/components/gaoyia-parse/parse.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/details/cmsinfo.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/testingRoom.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/vaccines.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/integral/index.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/notice/index.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/policy/index.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/property/butler.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/property/butlerType.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/recruit/details.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/report/double.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/report/index.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/familyInfo.js.map


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/index.js.map


+ 1 - 0
unpackage/dist/dev/mp-weixin/app.json

@@ -22,6 +22,7 @@
     "pages/activity/details",
     "pages/activity/uploadFiel",
     "pages/property/index",
+    "pages/property/butlerType",
     "pages/property/butler",
     "pages/report/index",
     "pages/report/double",

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/common/runtime.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/common/vendor.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseAudio.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseImg.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTable.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate0.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate1.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate10.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate11.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate2.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate3.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate4.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate5.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate6.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate7.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate8.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseTemplate9.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/components/wxParseVideo.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/components/gaoyia-parse/parse.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/activity/details.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/activity/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.js


+ 1 - 3
unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.json

@@ -1,7 +1,5 @@
 {
   "navigationBarTitleText": "详情",
   "navigationStyle": "custom",
-  "usingComponents": {
-    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons"
-  }
+  "usingComponents": {}
 }

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.wxml


+ 4 - 1
unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.wxss

@@ -1,8 +1,11 @@
 
+.parse {
+	display: block;
+}
 .title {
 	position: fixed;
 	color: #fff;
-	background-color: #fd6b18;
+	background-color: #c60814;
 	top: 0;
 	width: 100%;
 }

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/details/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/receive.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/testingRoom.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/vaccines.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/index/index.js


+ 1 - 2
unpackage/dist/dev/mp-weixin/pages/index/index.json

@@ -2,7 +2,6 @@
   "navigationBarTitleText": "首页",
   "usingComponents": {
     "uni-notice-bar": "/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar",
-    "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section",
-    "uni-card": "/uni_modules/uni-card/components/uni-card/uni-card"
+    "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section"
   }
 }

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/index/index.wxml


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/integral/index.wxml


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/my/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/notice/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/policy/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/property/butler.js


+ 1 - 3
unpackage/dist/dev/mp-weixin/pages/property/butler.json

@@ -1,6 +1,4 @@
 {
   "navigationBarTitleText": "红管家风采展示",
-  "usingComponents": {
-    "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section"
-  }
+  "usingComponents": {}
 }

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/property/butler.wxml


+ 3 - 2
unpackage/dist/dev/mp-weixin/pages/property/butler.wxss

@@ -8,17 +8,18 @@
 .box {
 	display: flex;
 	flex-wrap: wrap;
+	margin-top: 15px;
 }
 .imgBox {
 	width: 30%;
-	height: 36vw;
+	height: 50vw;
 	margin-left: 2.5%;
 	margin-top: 5px;
 }
 .imgs {
 	display: block;
 	width: 100%;
-	height: 90%;
+	height: 75%;
 	border: 2px solid #CD7F32;
 }
 .name {

File diff suppressed because it is too large
+ 2 - 0
unpackage/dist/dev/mp-weixin/pages/property/butlerType.js


+ 8 - 0
unpackage/dist/dev/mp-weixin/pages/property/butlerType.json

@@ -0,0 +1,8 @@
+{
+  "navigationBarTitleText": "红管家风采展示",
+  "usingComponents": {
+    "uni-card": "/uni_modules/uni-card/components/uni-card/uni-card",
+    "uni-list": "/uni_modules/uni-list/components/uni-list/uni-list",
+    "uni-list-item": "/uni_modules/uni-list/components/uni-list-item/uni-list-item"
+  }
+}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/mp-weixin/pages/property/butlerType.wxml


+ 40 - 0
unpackage/dist/dev/mp-weixin/pages/property/butlerType.wxss

@@ -0,0 +1,40 @@
+
+.container {
+	width: 100%;
+	height: 100vh;
+	overflow-y: auto;
+	background-size: 100% 100%;
+}
+.box {
+	display: flex;
+	flex-wrap: wrap;
+}
+.imgBox {
+	width: 30%;
+	height: 36vw;
+	margin-left: 2.5%;
+	margin-top: 5px;
+}
+.imgs {
+	display: block;
+	width: 100%;
+	height: 90%;
+	border: 2px solid #CD7F32;
+}
+.name {
+	width: 100%;
+	display: block;
+	text-align: center;
+	color: #fff;
+}
+.uni-section {
+	background-color: transparent !important;
+	margin-top: 20px;
+}
+.uni-section-header {
+	padding: 0 10px !important;
+}
+.uni-section__content-title {
+	color: #fff !important;
+}
+

File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/property/index.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/questionnaire/details.js


File diff suppressed because it is too large
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/questionnaire/index.js


+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/recruit/details.js


Some files were not shown because too many files changed in this diff