Przeglądaj źródła

20221014版本更新

asd123a20 2 lat temu
rodzic
commit
9637fb2525
97 zmienionych plików z 757 dodań i 499 usunięć
  1. 11 1
      api/family.js
  2. 6 6
      api/user.js
  3. 2 2
      env.js
  4. 9 22
      pages.json
  5. 0 161
      pages/family/receive.vue
  6. 21 39
      pages/illness/index.vue
  7. 191 0
      pages/illness/receive.vue
  8. 1 1
      pages/index/index.vue
  9. 26 24
      pages/my/index.vue
  10. 103 22
      pages/register/index.vue
  11. 20 18
      pages/family/familyInfo.vue
  12. 141 9
      pages/user/index.vue
  13. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  14. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  15. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/family/familyInfo.js.map
  16. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/index.js.map
  17. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/receive.js.map
  18. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  19. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/index.js.map
  20. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map
  21. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/notice/index.js.map
  22. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/register/index.js.map
  23. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/resident/userAddr.js.map
  24. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/familyInfo.js.map
  25. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/index.js.map
  26. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js.map
  27. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js.map
  28. 3 5
      unpackage/dist/dev/mp-weixin/app.json
  29. 1 1
      unpackage/dist/dev/mp-weixin/common/runtime.js
  30. 2 2
      unpackage/dist/dev/mp-weixin/common/vendor.js
  31. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.js
  32. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/index.js
  33. 0 2
      unpackage/dist/dev/mp-weixin/pages/family/familyInfo.js
  34. 0 2
      unpackage/dist/dev/mp-weixin/pages/family/receive.js
  35. 0 10
      unpackage/dist/dev/mp-weixin/pages/family/receive.json
  36. 0 1
      unpackage/dist/dev/mp-weixin/pages/family/receive.wxml
  37. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/index.js
  38. 2 2
      unpackage/dist/dev/mp-weixin/pages/illness/index.json
  39. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/index.wxml
  40. 3 0
      unpackage/dist/dev/mp-weixin/pages/illness/index.wxss
  41. 2 0
      unpackage/dist/dev/mp-weixin/pages/illness/receive.js
  42. 3 2
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.json
  43. 1 0
      unpackage/dist/dev/mp-weixin/pages/illness/receive.wxml
  44. 0 0
      unpackage/dist/dev/mp-weixin/pages/illness/receive.wxss
  45. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/testingRoom.js
  46. 1 1
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  47. 1 1
      unpackage/dist/dev/mp-weixin/pages/my/index.js
  48. 1 1
      unpackage/dist/dev/mp-weixin/pages/my/index.wxml
  49. 1 1
      unpackage/dist/dev/mp-weixin/pages/notice/index.js
  50. 1 1
      unpackage/dist/dev/mp-weixin/pages/policy/index.js
  51. 1 1
      unpackage/dist/dev/mp-weixin/pages/register/index.js
  52. 3 3
      unpackage/dist/dev/mp-weixin/pages/register/index.json
  53. 1 1
      unpackage/dist/dev/mp-weixin/pages/register/index.wxml
  54. 3 0
      unpackage/dist/dev/mp-weixin/pages/register/index.wxss
  55. 0 2
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.js
  56. 0 13
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.json
  57. 0 1
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.wxml
  58. 0 16
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.wxss
  59. 0 2
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.js
  60. 0 1
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.wxml
  61. 0 52
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.wxss
  62. 1 1
      unpackage/dist/dev/mp-weixin/pages/service/index.js
  63. 2 0
      unpackage/dist/dev/mp-weixin/pages/user/familyInfo.js
  64. 1 1
      unpackage/dist/dev/mp-weixin/pages/family/familyInfo.json
  65. 1 1
      unpackage/dist/dev/mp-weixin/pages/family/familyInfo.wxml
  66. 0 0
      unpackage/dist/dev/mp-weixin/pages/user/familyInfo.wxss
  67. 1 1
      unpackage/dist/dev/mp-weixin/pages/user/index.js
  68. 2 1
      unpackage/dist/dev/mp-weixin/pages/user/index.json
  69. 1 1
      unpackage/dist/dev/mp-weixin/pages/user/index.wxml
  70. 3 0
      unpackage/dist/dev/mp-weixin/pages/user/index.wxss
  71. 1 1
      unpackage/dist/dev/mp-weixin/project.private.config.json
  72. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js
  73. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.js
  74. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js
  75. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.js
  76. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.js
  77. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar-item.js
  78. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar.js
  79. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/time-picker.js
  80. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker.js
  81. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js
  82. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js
  83. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js
  84. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js
  85. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-chat/uni-list-chat.js
  86. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-item/uni-list-item.js
  87. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list/uni-list.js
  88. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js
  89. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js
  90. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.js
  91. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js
  92. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.js
  93. 11 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js
  94. 4 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.json
  95. 1 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.wxml
  96. 103 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.wxss
  97. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-title/components/uni-title/uni-title.js

+ 11 - 1
api/family.js

@@ -29,4 +29,14 @@ const filing = async (data) => {
 	const res = await request.post({ url: `/nat/add-record`, data });
 	return res.data;
 }
-export default { familyInfo, getFamilyInfo, filing, membersStatus, runningTask, getFamilyInfoDetails };
+// 获取家庭成员列表 待审核,含本人
+const getApplyUser = async (data) => {
+	const res = await request.get({ url: `/api/resident/req/list`, data });
+	return res.data;
+}
+// 获取待审核信息详情
+const getReqInfoDetails = async (data) => {
+	const res = await request.get({ url: `/api/resident/req/${data.residentReqId}` });
+	return res.data;
+}
+export default { familyInfo, getFamilyInfo, filing, membersStatus, runningTask, getFamilyInfoDetails, getApplyUser, getReqInfoDetails };

+ 6 - 6
api/user.js

@@ -14,14 +14,14 @@ const houseList = async (data) => {
 	const res = await request.get({ url: `/wx/addr/houses`, data });
 	return res.data;
 }
-// 修改用户信息
-const updateUser = async (data) => {
-	const res = await request.post({ url: `/user/edit`, data });
+// 添加用户信息
+const addUser = async (data) => {
+	const res = await request.post({ url: `/api/user/register`, data });
 	return res.data;
 }
 // 添加用户信息
-const registerUser = async (data) => {
-	const res = await request.post({ url: `/user/register`, data });
+const updateUser = async (data) => {
+	const res = await request.post({ url: `/api/user/edit`, data });
 	return res.data;
 }
 // 获取用户信息
@@ -29,4 +29,4 @@ const getUser = async () => {
 	const res = await request.get({ url: `/user/info` });
 	return res.data;
 }
-export default { addrTreeSelect, buildingList, houseList, registerUser, getUser, updateUser };
+export default { addrTreeSelect, buildingList, houseList, addUser, getUser, updateUser };

+ 2 - 2
env.js

@@ -1,7 +1,7 @@
 const ENV_API_URL = {
 	development: {
-		url: 'https://fuyu.scapp.cn/wx-api/api',
-		// url: 'http://192.168.0.70/api',
+		// url: 'https://fuyu.scapp.cn/wx-api/api',
+		url: 'http://192.168.0.70:7070/api',
 		imgUrl: 'https://fuyu.scapp.cn/static/wxa/'
 	},
 	production: {

+ 9 - 22
pages.json

@@ -37,6 +37,12 @@
 				"navigationBarTitleText": "返(来)长报备"
 			}
 		},
+		{
+			"path": "pages/illness/receive",
+			"style": {
+				"navigationBarTitleText": "家庭成员"
+			}
+		},
 		{
 			"path": "pages/illness/testingRoom",
 			"style": {
@@ -68,34 +74,15 @@
 			}
 		},
 		{
-			"path": "pages/family/receive",
+			"path": "pages/user/familyInfo",
 			"style": {
-				"navigationBarTitleText": "家人代领"
-			}
-		},
-		{
-			"path": "pages/family/familyInfo",
-			"style": {
-				"navigationBarTitleText": "家人资料"
+				"navigationBarTitleText": "成员资料"
 			}
 		},
 		{
 			"path": "pages/register/index",
 			"style": {
-				"navigationBarTitleText": "用户注册",
-				"enablePullDownRefresh": true
-			}
-		},
-		{
-			"path": "pages/resident/userInfoList",
-			"style": {
-				"navigationBarTitleText": "居民列表"
-			}
-		},
-		{
-			"path": "pages/resident/userAddr",
-			"style": {
-				"navigationBarTitleText": "居民信息"
+				"navigationBarTitleText": "注册用户"
 			}
 		}
 	],

+ 0 - 161
pages/family/receive.vue

@@ -1,161 +0,0 @@
-<template>
-	<view class="container">
-		<uni-card class="addUser">
-			<uni-list :border="false">
-				<uni-list-item :showExtraIcon="true" :extra-icon="extraIcon" title="添加成员" clickable @click="onClick"></uni-list-item>
-			</uni-list>
-		</uni-card>
-		<uni-list :border="true">
-			<view :id="item && item.residentId" class="delBox" @touchstart="touchStart" @touchend="touchEnd" v-for="(item, index) in list" :key="index" >
-				<uni-list-chat :class="{ left: isId == item.residentId }" class="item" :avatar="item.avatar || '/static/user1.png'" :title="item.name" :note="item.phone" badge-positon="left">
-				</uni-list-chat>
-				<uni-icons @click="userbtn(item)"  color="#fff" class="del compose" type="compose" size="28"></uni-icons>
-				<uni-icons :class="{ left: isId !== item.residentId }" @click="delbtn(item)" color="#fff" class="del" type="trash-filled" size="28"></uni-icons>
-			</view>
-		</uni-list>
-	</view>
-</template>
-
-<script>
-	import requestFamily from '../../api/family.js';
-	export default {
-		data() {
-			return {
-				isId: '',
-				startX: 0,
-				extraIcon: {
-					color: '#ff8319',
-					size: '20',
-					type: 'plusempty'
-				},
-				list: [],
-				natTaskId: '',
-				membersStatus: []
-			}
-		},
-		async mounted() {
-			this.query();
-		},
-		onShow() {
-			this.isId = '';
-		},
-		methods: {
-			async query() {
-				const { userId } = uni.getStorageSync('userinfo');
-				const familyInfo = await requestFamily.getFamilyInfo({ userId });
-				if (familyInfo.code == 200) {
-					this.list = familyInfo.rows;
-				}
-			},
-			// 滑动开始
-			touchStart(e) {
-				if (e.touches.length == 1) {
-					//设置触摸起始点水平方向位置
-					this.startX=e.touches[0].clientX;
-				}
-			},
-			// 滑动结束
-			touchEnd(e) {
-				if (e.changedTouches.length == 1) {
-					//手指移动结束后水平位置
-					var endX = e.changedTouches[0].clientX;
-					let diff = endX - this.startX;
-					if(Math.abs(diff) > 20){
-						if(diff < 0) {
-							this.isId = e.currentTarget.id;
-							
-						}else{
-							this.isId = '';
-						}
-					}
-				}
-			},
-			// 报备
-			async filing(e) {
-				const res = await requestFamily.filing({ residentId: e.residentId, natTaskId: this.natTaskId });
-				if (res.code == 200) {
-					this.query();
-					uni.showToast({
-						title: '报备成功',
-						duration: 2000,
-					});
-				}
-			},
-			// 删除
-			async delbtn(e) {
-				const res = await requestFamily.familyInfo({ ...e, reqType: '2' });
-				if (res.code == 200) {
-					this.isId = '';
-					uni.showToast({
-						title: '已提交审核',
-						duration: 2000,
-					});
-				}
-			},
-			onClick() {
-				uni.navigateTo({
-					url: '/pages/family/familyInfo'
-				})
-			},
-			userbtn(e) {
-				console.log(e);
-				uni.navigateTo({
-					url: `/pages/family/familyInfo?residentId=${e.residentId}`
-				})
-			}
-		}
-	}
-</script>
-
-<style>
-	.container {
-		width: 100%;
-	}
-	.addUser {
-		display: block;
-		/* width: 90%; */
-		margin: 5px auto;
-	}
-	.chat-custom-text {
-		font-size: 12px;
-		color: #999;
-		width: 100%;
-		text-align: center;
-		display: block;
-	}
-	.addUser .uni-list-item__container {
-		flex: none;
-		margin: 0 auto;
-	}
-	.addUser .uni-list-item__content-title {
-		color: #ff8319;
-	}
-	.delBox {
-		display: flex;
-		width: 100%;
-		overflow: hidden;
-	}
-	.item {
-		width: 100%;
-	}
-	.del {
-		display: block;
-		width: 50px;
-		background: red;
-	}
-	.right {
-		margin-right: -100px;
-	}
-	.uni-icons {
-		display: block;
-		width: 100%;
-		text-align: center;
-		line-height: 2.3em;
-	}
-	.left {
-		margin-left: -100px;
-	}
-	.compose {
-		background: #1aad19;
-	}
-</style>

+ 21 - 39
pages/illness/index.vue

@@ -1,19 +1,18 @@
 <template>
 	<view class="container">
-		<uni-list :border="true">
-			<view :id="item && item.residentId" class="delBox" v-for="(item, index) in list" :key="index" >
-				<uni-list-chat :class="{ left: isId == item.residentId }" class="item" :avatar="item.avatar || '/static/user1.png'" :title="item.name" :note="item.phone" badge-positon="left">
-					<view class="chat-custom-right">
-						<text class="chat-custom-text">{{ item && item.status == 0 ? '未检' : '已检' }}</text>
-						<!-- 需要使用 uni-icons 请自行引入 -->
-						<!-- <uni-icons type="upload" color="#999" size="18"></uni-icons> -->
-						<button type="primary" size="mini" :disabled="item && item.status == 1" @click="filing(item)">报备</button>
-					</view>
-				</uni-list-chat>
-				<uni-icons @click="userbtn(item)"  color="#fff" class="del compose" type="compose" size="28"></uni-icons>
-				<uni-icons :class="{ left: isId !== item.residentId }" @click="delbtn(item)" color="#fff" class="del" type="trash-filled" size="28"></uni-icons>
-			</view>
-		</uni-list>
+		<uni-section :title="task !== null ? task.name : '当前无检测任务'" type="line">
+			<uni-list :border="true" v-if="list.length > 0">
+				<view :id="item && item.residentId" class="delBox" v-for="(item, index) in list" :key="index" >
+					<uni-list-chat :class="{ left: isId == item.residentId }" class="item" :avatar="item.avatar || '/static/user1.png'" :title="item.name" :note="item.phone" badge-positon="left">
+						<view class="chat-custom-right">
+							<text class="chat-custom-text">{{ item && item.status == 0 ? '未检' : '已检' }}</text>
+							<button type="primary" size="mini" :disabled="item && item.status == 1" @click="filing(item)">报备</button>
+						</view>
+					</uni-list-chat>
+				</view>
+			</uni-list>
+			<text v-else class="chat-custom-text msgText">请完善成员信息 / 家庭成员审核中</text>
+		</uni-section>
 	</view>
 </template>
 
@@ -31,11 +30,13 @@
 				},
 				list: [],
 				natTaskId: '',
+				task: null
 			}
 		},
 		async mounted() {
 			const task = await requestFamily.runningTask();
 			if (task.code == 200) {
+				this.task = task.data[0];
 				this.natTaskId = task.data[0].natTaskId;
 				this.query();
 			}
@@ -45,10 +46,10 @@
 		},
 		methods: {
 			async query() {
-				const { userId } = uni.getStorageSync('userinfo');
-				const familyInfo = await requestFamily.getFamilyInfo({ userId });
+				// const { userId } = uni.getStorageSync('userinfo');
+				const familyInfo = await requestFamily.getFamilyInfo();
 				if (familyInfo.code == 200) {
-					const membersStatus = await requestFamily.membersStatus({ userId, natTaskId: this.natTaskId });
+					const membersStatus = await requestFamily.membersStatus({ natTaskId: this.natTaskId });
 					familyInfo.rows = familyInfo.rows.map(e => {
 						const resident = membersStatus.data.find(j => j.residentId == e.residentId);
 						return { ...e, status: resident?.status || 0 };
@@ -66,28 +67,6 @@
 						duration: 2000,
 					});
 				}
-			},
-			// 删除
-			async delbtn(e) {
-				const res = await requestFamily.familyInfo({ ...e, reqType: '2' });
-				if (res.code == 200) {
-					this.isId = '';
-					uni.showToast({
-						title: '已提交审核',
-						duration: 2000,
-					});
-				}
-			},
-			onClick() {
-				uni.navigateTo({
-					url: '/pages/user/familyInfo'
-				})
-			},
-			userbtn(e) {
-				console.log(e);
-				uni.navigateTo({
-					url: `/pages/user/familyInfo?residentId=${e.residentId}`
-				})
 			}
 		}
 	}
@@ -144,4 +123,7 @@
 	.compose {
 		background: #1aad19;
 	}
+	.msgText {
+		padding-bottom: 20px;
+	}
 </style>

+ 191 - 0
pages/illness/receive.vue

@@ -0,0 +1,191 @@
+<template>
+	<view class="container">
+		<view class="uni-padding-wrap uni-common-mt">
+			<uni-segmented-control :current="current" :values="items" :style-type="styleType" :active-color="activeColor" @clickItem="onClickItem" />
+		</view>
+		<view v-if="current == 0">
+			<uni-card class="addUser">
+				<uni-list :border="false">
+					<uni-list-item :showExtraIcon="true" :extra-icon="extraIcon" title="添加成员" clickable @click="onClick"></uni-list-item>
+				</uni-list>
+			</uni-card>
+			<uni-list :border="true">
+				<view :id="item && item.residentId" class="delBox" @touchstart="touchStart" @touchend="touchEnd" v-for="(item, index) in list" :key="index" >
+					<uni-list-chat :class="{ left: isId == item.residentId }" class="item" :avatar="item.avatar || '/static/user1.png'" :title="item.name" :note="item.phone" badge-positon="left">
+					</uni-list-chat>
+					<uni-icons @click="userbtn(item)"  color="#fff" class="del compose" type="compose" size="28"></uni-icons>
+					<uni-icons :class="{ left: isId !== item.residentId }" @click="delbtn(item)" color="#fff" class="del" type="trash-filled" size="28"></uni-icons>
+				</view>
+			</uni-list>
+		</view>
+		<!-- 居民审核信息 -->
+		<view v-if="current == 1">
+			<uni-list :border="true">
+				<view :id="item && item.residentReqId" class="delBox" v-for="(item, index) in list" :key="index" >
+					<uni-list-chat :class="{ left: isId == item.residentReqId }" class="item" :avatar="item.avatar || '/static/user1.png'" :title="item.name" :note="item.phone" badge-positon="left">
+						<uni-tag v-if="item.reqStatus == 0" :text="item.reqStatusText" :circle="true" type="primary" />
+						<uni-tag v-if="item.reqStatus == 1" :text="item.reqStatusText" :circle="true" type="success" />
+						<uni-tag v-if="item.reqStatus == 2" :text="item.reqStatusText" :circle="true" type="error" />
+						<text class="chat-custom-text" v-if="item.rejectReason !== null">{{ item.rejectReason }}</text>
+					</uni-list-chat>
+				</view>
+			</uni-list>
+		</view>
+	</view>
+</template>
+
+<script>
+	import requestFamily from '../../api/family.js';
+	export default {
+		data() {
+			return {
+				isId: '',
+				startX: 0,
+				extraIcon: {
+					color: '#ff8319',
+					size: '20',
+					type: 'plusempty'
+				},
+				list: [],
+				natTaskId: '',
+				membersStatus: [],
+				// 选项卡参数
+				items: ['成员信息', '成员审核状态'],
+				activeColor: '#dd524d',
+				styleType: 'text',
+				current: 0
+			}
+		},
+		async mounted() {
+			this.query();
+		},
+		onShow() {
+			this.isId = '';
+		},
+		methods: {
+			// 标签页点击
+			async onClickItem(e) {
+				if (this.current !== e.currentIndex) {
+					this.current = e.currentIndex
+				}
+				if (e.currentIndex == 1) {
+					const res = await requestFamily.getApplyUser();
+					this.list = res.data.map(e => {
+						if (e.reqStatus == 0) e.reqStatusText = '审核中';
+						if (e.reqStatus == 1) e.reqStatusText = '已通过';
+						if (e.reqStatus == 2) e.reqStatusText = '已拒绝';
+						return e;
+					});
+					return;
+				}
+				this.query();
+			},
+			async query() {
+				const familyInfo = await requestFamily.getFamilyInfo();
+				if (familyInfo.code == 200) {
+					this.list = familyInfo.rows;
+				}
+			},
+			// 滑动开始
+			touchStart(e) {
+				console.log(e)
+				if (e.touches.length == 1) {
+					//设置触摸起始点水平方向位置
+					this.startX=e.touches[0].clientX;
+				}
+			},
+			// 滑动结束
+			touchEnd(e) {
+				if (e.changedTouches.length == 1) {
+					//手指移动结束后水平位置
+					var endX = e.changedTouches[0].clientX;
+					let diff = endX - this.startX;
+					if(Math.abs(diff) > 20){
+						if(diff < 0) {
+							this.isId = e.currentTarget.id;
+							
+						}else{
+							this.isId = '';
+						}
+					}
+				}
+			},
+			// 删除
+			async delbtn(e) {
+				const res = await requestFamily.familyInfo({ ...e, reqType: '2' });
+				if (res.code == 200) {
+					this.isId = '';
+					uni.showToast({
+						title: '已提交审核',
+						duration: 2000,
+					});
+				}
+			},
+			// 添加
+			onClick() {
+				uni.navigateTo({
+					url: '/pages/user/familyInfo'
+				})
+			},
+			// 修改
+			userbtn(e) {
+				uni.navigateTo({
+					url: `/pages/user/familyInfo?residentId=${e.residentId}`
+				})
+			}
+		}
+	}
+</script>
+
+<style>
+	.container {
+		width: 100%;
+	}
+	.addUser {
+		display: block;
+		/* width: 90%; */
+		margin: 5px auto;
+	}
+	.chat-custom-text {
+		font-size: 12px;
+		color: #999;
+		width: 100%;
+		text-align: center;
+		display: block;
+	}
+	.addUser .uni-list-item__container {
+		flex: none;
+		margin: 0 auto;
+	}
+	.addUser .uni-list-item__content-title {
+		color: #ff8319;
+	}
+	.delBox {
+		display: flex;
+		width: 100%;
+		overflow: hidden;
+	}
+	.item {
+		width: 100%;
+	}
+	.del {
+		display: block;
+		width: 50px;
+		background: red;
+	}
+	.right {
+		margin-right: -100px;
+	}
+	.uni-icons {
+		display: block;
+		width: 100%;
+		text-align: center;
+		line-height: 2.3em;
+	}
+	.left {
+		margin-left: -100px;
+	}
+	.compose {
+		background: #1aad19;
+	}
+</style>

+ 1 - 1
pages/index/index.vue

@@ -72,7 +72,7 @@
 				const role = uni.getStorageSync('role');
 				if (e.isUser && role && role == 'guest') {
 					uni.navigateTo({
-						url: `/pages/register/index`
+						url: `/pages/register/index?path=${e.path}`
 					})
 					return;
 				}

+ 26 - 24
pages/my/index.vue

@@ -13,12 +13,12 @@
 			</uni-card>
 			<uni-card>
 				<uni-list :border="false">
-					<uni-list-item :showExtraIcon="true" :extra-icon="extraIconList[5]" title="居民信息" link clickable @click="onClick(5)"></uni-list-item>
+					<uni-list-item :showExtraIcon="true" :extra-icon="extraIconList[1]" title="家庭成员" link clickable @click="onClick(1)"></uni-list-item>
 				</uni-list>
 			</uni-card>
 			<uni-card>
 				<uni-list :border="false">
-					<uni-list-item :showExtraIcon="true" :extra-icon="extraIconList[1]" title="家人代领" link clickable @click="onClick(1)"></uni-list-item>
+					<uni-list-item :showExtraIcon="true" :extra-icon="extraIconList[2]" title="问卷调查" link clickable @click="onClick(2)"></uni-list-item>
 				</uni-list>
 			</uni-card>
 			<uni-card>
@@ -27,15 +27,10 @@
 				</uni-list>
 			</uni-card>
 			<uni-card>
-				<uni-list :border="false">
-					<uni-list-item :showExtraIcon="true" :extra-icon="extraIconList[2]" title="问卷调查" link clickable @click="onClick(2)"></uni-list-item>
-				</uni-list>
-			</uni-card>
-			<!-- <uni-card>
 				<uni-list :border="false">
 					<uni-list-item :showExtraIcon="true" :extra-icon="extraIconList[4]" title="意见反馈" link clickable @click="onClick(4)"></uni-list-item>
 				</uni-list>
-			</uni-card> -->
+			</uni-card>
 			<!-- <uni-card class="logoutBox">
 				<uni-list :border="false">
 					<uni-list-item size="mini" class="logout" title="退出登录" clickable @click="onClick(4)"></uni-list-item>
@@ -76,11 +71,6 @@
 						color: '#e70000',
 						size: '22',
 						type: 'email-filled'
-					},
-					{
-						color: '#a8a861',
-						size: '22',
-						type: 'home-filled'
 					}
 				],
 				src: '',
@@ -89,16 +79,23 @@
 			}
 		},
 		async onShow() {
-			// const userinfo = await request.getUser();
-			// uni.setStorageSync('userinfo', userinfo.data);
-			const userinfo = uni.getStorageSync('userinfo');
-			this.userInfo = userinfo.data;
 			this.role = uni.getStorageSync('role');
+			if (this.role !== 'guest') {
+				const userinfo = await request.getUser();
+				uni.setStorageSync('userinfo', userinfo.data);
+				this.userInfo = userinfo.data;
+			}
 		},
 		async mounted() {
 			const config = await requestLogin.getJson();
 			const { avatar } = config.data;
 			this.src = avatar;
+			if (this.role == 'guest') {
+				uni.navigateTo({
+					url: '/pages/register/index'
+				});
+				return;
+			}
 		},
 		methods: {
 			register() {
@@ -107,6 +104,7 @@
 				})
 			},
 			onClick(e) {
+				console.log(e);
 				if (e == 0) {
 					uni.navigateTo({
 						url: '/pages/user/index'
@@ -117,12 +115,10 @@
 					this.illness();
 					return;
 				}
-				if (e == 5) {
-					uni.navigateTo({
-						url: '/pages/resident/userInfoList'
-					})
-					return;
-				}
+				// if (e == 4) {
+				// 	this.logOut();
+				// 	return;
+				// }
 				uni.showToast({
 					title: '敬请期待',
 					icon: 'error',
@@ -131,7 +127,13 @@
 			},
 			illness() {
 				uni.navigateTo({
-					url: '/pages/family/receive'
+					url: '/pages/illness/receive'
+				})
+			},
+			logOut() {
+				uni.clearStorage();
+				uni.redirectTo({
+					url: '/pages/index/index'
 				})
 			}
 		}

+ 103 - 22
pages/register/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="container">
-		<uni-section title="注册用户信息" type="line">
+		<uni-section title="基础信息" type="line">
 			<uni-forms ref="infoForm" :rules="rules" :modelValue="formData" :label-width="90">
 				<uni-forms-item required label="姓名" name="name">
 					<uni-easyinput type="text" v-model="formData.name" placeholder="请输入姓名" />
@@ -19,6 +19,25 @@
 				</uni-forms-item>
 			</uni-forms>
 		</uni-section>
+		<uni-section title="地址信息" sub-title="(富裕街道居民请填写地址信息)" type="line">
+			<uni-forms ref="addrForm" :modelValue="formData" :label-width="90">
+				<uni-forms-item label="小区选择">
+					<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="楼栋选择">
+					<uni-data-picker v-model="formData.buildingId" :localdata="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>
+				</uni-forms-item>
+				<uni-forms-item label="楼层选择" v-if="house.floor && house.unit.length > 0">
+					<uni-data-picker v-model="formData.floor" :localdata="house.floor" placeholder="请选择楼层" popup-title="请选择楼层" @change="floorChange"></uni-data-picker>
+				</uni-forms-item>
+				<uni-forms-item label="门牌选择" v-if="house.number && house.number !== ''">
+					<uni-data-picker v-model="formData.houseId" :localdata="house.number" placeholder="请选择门牌" popup-title="请选择门牌" @change="houseChange"></uni-data-picker>
+				</uni-forms-item>
+			</uni-forms>
+		</uni-section>
 		<button class="btn" type="primary" @click="submit('infoForm')">提交</button>
 	</view>
 </template>
@@ -37,6 +56,15 @@
 					{ text: '男', value: 1 },
 					{ text: '女', value: 0 },
 				],
+				items: [],
+				pickerMap: {
+					text: 'label',
+					value: 'interId'
+				},
+				range: [],
+				house: {},
+				building: [],
+				unit: '',
 				// 校验规则
 				rules: {
 					name: {
@@ -61,38 +89,88 @@
 			}
 		},
 		async mounted() {
-			this.role = uni.getStorageSync('role');
-			if (this.role !== 'guest') this.queryInfo();
+			const res = await request.addrTreeSelect();
+			this.items = res.data;
 		},
 		methods: {
-			async queryInfo() {
-				const userinfo = await request.getUser();
-				this.formData = userinfo.data;
-			},
 			// 获取手机号
 			async decryptPhoneNumber(e) {
 				const res = await requestLogin.getPhone({ code: e.detail.code, appid: appid });
 				this.$set(this.formData, 'phone', res.phone_info.phoneNumber);
 			},
+			// 小区选择
+			async onchange(e) {
+				const val = e.detail.value[e.detail.value.length - 1].value;
+				const res = await request.buildingList({ estateId: val });
+				this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
+			},
+			// 楼栋选择
+			async selectChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const res = await request.houseList({ buildingId: e.detail.value[0].value });
+				this.building = res.rows;
+				const list = [];
+				const numList = [];
+				const unit = res.rows.filter(j => j.unit !== null).map(j => ({ ...j, text: `${j.unit}单元`, value: j.unit }));
+				const number = res.rows.filter(j => j.number !== null).map(j => ({ ...j, text: `${j.number}号`, value: j.houseId }));
+				unit.forEach(k => {
+					const isunit = list.find(j => j.unit == k.unit);
+					if (!isunit) list.push(k);
+				});
+				this.$set(this.house, 'unit', list);
+				number.forEach(k => {
+					const isunit = numList.find(j => j.number == k.number);
+					if (!isunit) numList.push(k);
+				});
+				this.$set(this.house, 'number', numList);
+				
+			},
+			// 单元选择
+			unitChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				this.unit = e.detail.value[0].value;
+				const list = [];
+				const floor = this.building.filter(j => j.unit == e.detail.value[0].value).map(j => ({ ...j, text: `${j.floor}层`, value: j.floor }));
+				floor.forEach(k => {
+					const isunit = list.find(j => j.floor == k.floor);
+					if (!isunit) list.push(k);
+				});
+				this.$set(this.house, 'floor', list);
+			},
+			// 楼层选择
+			floorChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const list = [];
+				const number = this.building.filter(j => j.floor == e.detail.value[0].value && j.unit == this.unit).map(j => ({ ...j, text: `${j.number}号`, value: j.houseId }));
+				number.forEach(k => {
+					const isunit = list.find(j => j.number == k.number);
+					if (!isunit) list.push(k);
+				});
+				this.$set(this.house, 'number', list);
+			},
+			// 门牌选择
+			houseChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const dept = this.house.number.find(j => j.houseId == e.detail.value[0].value);
+				this.formData.deptId = dept.deptId;
+			},
 			// 提交
 			async submit(ref) {
 				this.$refs[ref].validate(async (err, formdata) => {
 					if (!err) {
-						if (this.role == 'guest') {
-							// 添加用户
-							const res = await request.registerUser(this.formData);
-							uni.setStorageSync('token', res.data.token);
-							uni.setStorageSync('userinfo', res.data.user);
-							uni.setStorageSync('role', res.data.role);
-							uni.showToast({
-								title: '添加成功',
-								duration: 2000,
-							});
-							if (this.path && this.path !== null) {
-								uni.redirectTo({
-									url: this.path
-								})
-							}
+						// 添加用户
+						const res = await request.addUser(this.formData);
+						uni.setStorageSync('token', res.data.token);
+						uni.setStorageSync('userinfo', res.data.user);
+						uni.setStorageSync('role', res.data.role);
+						uni.showToast({
+							title: '添加成功',
+							duration: 2000,
+						});
+						if (this.path && this.path !== null) {
+							uni.redirectTo({
+								url: this.path
+							})
 						}
 						uni.navigateBack()
 					}
@@ -110,6 +188,9 @@
 		padding-bottom: 10px;
 		margin-bottom: 10px;
 	}
+	.uni-select__selector {
+		z-index: 999 !important;
+	}
 	.uni-forms, .btn {
 		width: 90%;
 		margin: 10px auto;

+ 20 - 18
pages/family/familyInfo.vue

@@ -59,6 +59,7 @@
 				building: [],
 				unit: '',
 				residentReqId: '',
+				residentId: '',
 				// 校验规则
 				rules: {
 					name: {
@@ -84,15 +85,16 @@
 		},
 		async onLoad(option) {
 			this.residentId = option.residentId;
+			this.residentReqId = option.residentReqId;
 			if (option.residentId) {
 				this.queryInfo();
-			} else {
-				// 设置默认地址信息
-				const userinfo = uni.getStorageSync('userinfo');
-				const { estateId, buildingId, unit, floor, houseId } = userinfo;
-				this.formData = { estateId, buildingId, unit, floor, houseId };
-				this.setAddr(userinfo);
+				return;
 			}
+			// 设置默认地址信息
+			const userinfo = uni.getStorageSync('userinfo');
+			const { estateId, buildingId, unit, floor, houseId } = userinfo;
+			this.formData = { estateId, buildingId, unit, floor, houseId };
+			this.setAddr(userinfo);
 			
 		},
 		async mounted() {
@@ -108,25 +110,25 @@
 			// 设置地址
 			async setAddr(data) {
 				// 小区存在
-				if (data.estateId) {
+				if (data.estateId && data.estateId !== null) {
 					const res = await request.buildingList({ estateId: data.estateId });
 					this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
 				}
 				// 楼栋存在
-				if(data.buildingId) {
-				 	await this.selectChange(data.buildingId);
+				if(data.buildingId && data.buildingId !== null) {
+				 	await this.selectChange({ detail: { value: [{ value: data.buildingId }] } });
 				}
 				// 单元存在
-				if(data.unit) {
-					await this.unitChange(data.unit);
+				if(data.unit && data.unit !== null) {
+					await this.unitChange({ detail: { value: [{ value: data.unit }] } });
 				}
 				// 楼层存在
-				if(data.floor) {
-					await this.floorChange(data.floor);
+				if(data.floor && data.floor !== null) {
+					await this.floorChange({ detail: { value: [{ value: data.floor }] } });
 				}
 				// 门牌存在
-				if(data.houseId) {
-					await this.houseChange(data.houseId);
+				if(data.houseId && data.houseId !== null) {
+					await this.houseChange({ detail: { value: [{ value: data.houseId }] } });
 				}
 			},
 			async onchange(e) {
@@ -134,7 +136,6 @@
 				const res = await request.buildingList({ estateId: val });
 				this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
 			},
-			onnodeclick(node) {},
 			// 楼栋选择
 			async selectChange(e) {
 				if (!e || e == '' || e.detail.value.length <= 0) return;
@@ -196,11 +197,12 @@
 							});
 							return;
 						}
-						this.formData.reqType = this.formData.residentReqId ? 1 : 0;
+						// 居民修改
+						this.formData.reqType = this.formData.residentId ? 1 : 0;
 						const res = await requestFamily.familyInfo(this.formData);
 						if (res.code == 200) {
 							uni.showToast({
-								title: this.formData.residentReqId ? '修改成功' : '添加成功',
+								title: this.formData.residentId ? '修改成功' : '添加成功',
 								duration: 2000,
 							});
 							uni.navigateBack()

+ 141 - 9
pages/user/index.vue

@@ -19,6 +19,25 @@
 				</uni-forms-item>
 			</uni-forms>
 		</uni-section>
+		<uni-section title="地址信息" type="line">
+			<uni-forms ref="addrForm" :modelValue="formData" :label-width="90">
+				<uni-forms-item label="小区选择">
+					<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="楼栋选择">
+					<uni-data-picker v-model="formData.buildingId" :localdata="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>
+				</uni-forms-item>
+				<uni-forms-item label="楼层选择" v-if="house.floor && house.unit.length > 0">
+					<uni-data-picker v-model="formData.floor" :localdata="house.floor" placeholder="请选择楼层" popup-title="请选择楼层" @change="floorChange"></uni-data-picker>
+				</uni-forms-item>
+				<uni-forms-item label="门牌选择" v-if="house.number && house.number !== ''">
+					<uni-data-picker v-model="formData.houseId" :localdata="house.number" placeholder="请选择门牌" popup-title="请选择门牌" @change="houseChange"></uni-data-picker>
+				</uni-forms-item>
+			</uni-forms>
+		</uni-section>
 		<button class="btn" type="primary" @click="submit('infoForm')">提交</button>
 	</view>
 </template>
@@ -37,6 +56,15 @@
 					{ text: '男', value: 1 },
 					{ text: '女', value: 0 },
 				],
+				items: [],
+				pickerMap: {
+					text: 'label',
+					value: 'interId'
+				},
+				range: [],
+				house: {},
+				building: [],
+				unit: '',
 				// 校验规则
 				rules: {
 					name: {
@@ -61,30 +89,131 @@
 			}
 		},
 		async mounted() {
+			const res = await request.addrTreeSelect();
+			this.items = res.data;
 			this.role = uni.getStorageSync('role');
 			if (this.role !== 'guest') this.queryInfo();
 		},
 		methods: {
 			async queryInfo() {
-				const userinfo = await request.getUser();
-				// const userinfo = uni.getStorageSync('userinfo');
-				this.formData = userinfo.data;
+				// const userinfo = await request.getUser();
+				const userinfo = uni.getStorageSync('userinfo');
+				this.formData = userinfo;
+				this.setAddr(userinfo);
+			},
+			// 设置地址
+			async setAddr(data) {
+				// 小区存在
+				if (data.estateId && data.estateId !== null) {
+					const res = await request.buildingList({ estateId: data.estateId });
+					this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
+				}
+				// 楼栋存在
+				if(data.buildingId && data.buildingId !== null) {
+				 	await this.selectChange({ detail: { value: [{ value: data.buildingId }] } });
+				}
+				// 单元存在
+				if(data.unit && data.unit !== null) {
+					await this.unitChange({ detail: { value: [{ value: data.unit }] } });
+				}
+				// 楼层存在
+				if(data.floor && data.floor !== null) {
+					await this.floorChange({ detail: { value: [{ value: data.floor }] } });
+				}
+				// 门牌存在
+				if(data.houseId && data.houseId !== null) {
+					await this.houseChange({ detail: { value: [{ value: data.houseId }] } });
+				}
 			},
 			// 获取手机号
 			async decryptPhoneNumber(e) {
 				const res = await requestLogin.getPhone({ code: e.detail.code, appid: appid });
 				this.$set(this.formData, 'phone', res.phone_info.phoneNumber);
 			},
+			// 小区选择
+			async onchange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const val = e.detail.value[e.detail.value.length - 1].value;
+				const res = await request.buildingList({ estateId: val });
+				this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
+			},
+			// 楼栋选择
+			async selectChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const res = await request.houseList({ buildingId: e.detail.value[0].value });
+				this.building = res.rows;
+				const list = [];
+				const numList = [];
+				const unit = res.rows.filter(j => j.unit !== null).map(j => ({ ...j, text: `${j.unit}单元`, value: j.unit }));
+				const number = res.rows.filter(j => j.number !== null).map(j => ({ ...j, text: `${j.number}号`, value: j.houseId }));
+				unit.forEach(k => {
+					const isunit = list.find(j => j.unit == k.unit);
+					if (!isunit) list.push(k);
+				});
+				this.$set(this.house, 'unit', list);
+				number.forEach(k => {
+					const isunit = numList.find(j => j.number == k.number);
+					if (!isunit) numList.push(k);
+				});
+				this.$set(this.house, 'number', numList);
+				
+			},
+			// 单元选择
+			unitChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				this.unit = e.detail.value[0].value;
+				const list = [];
+				const floor = this.building.filter(j => j.unit == e.detail.value[0].value).map(j => ({ ...j, text: `${j.floor}层`, value: j.floor }));
+				floor.forEach(k => {
+					const isunit = list.find(j => j.floor == k.floor);
+					if (!isunit) list.push(k);
+				});
+				this.$set(this.house, 'floor', list);
+			},
+			// 楼层选择
+			floorChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const list = [];
+				const number = this.building.filter(j => j.floor == e.detail.value[0].value && j.unit == this.unit).map(j => ({ ...j, text: `${j.number}号`, value: j.houseId }));
+				number.forEach(k => {
+					const isunit = list.find(j => j.number == k.number);
+					if (!isunit) list.push(k);
+				});
+				this.$set(this.house, 'number', list);
+			},
+			// 门牌选择
+			houseChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
+				const dept = this.house.number.find(j => j.houseId == e.detail.value[0].value);
+				this.formData.deptId = dept.deptId;
+			},
 			// 提交
 			async submit(ref) {
 				this.$refs[ref].validate(async (err, formdata) => {
 					if (!err) {
-						// 修改用户
-						const res = await request.updateUser(this.formData);
-						uni.showToast({
-							title: '修改成功',
-							duration: 2000,
-						});
+						if (this.role == 'guest') {
+							// 添加用户
+							const res = await request.addUser(this.formData);
+							uni.setStorageSync('token', res.data.token);
+							uni.setStorageSync('userinfo', res.data.user);
+							uni.setStorageSync('role', res.data.role);
+							uni.showToast({
+								title: '添加成功',
+								duration: 2000,
+							});
+							if (this.path && this.path !== null) {
+								uni.redirectTo({
+									url: this.path
+								})
+							}
+						} else {
+							// 修改用户
+							const res = await request.updateUser(this.formData);
+							uni.showToast({
+								title: '修改成功',
+								duration: 2000,
+							});
+						}
 						uni.navigateBack()
 					}
 				})
@@ -101,6 +230,9 @@
 		padding-bottom: 10px;
 		margin-bottom: 10px;
 	}
+	.uni-select__selector {
+		z-index: 999 !important;
+	}
 	.uni-forms, .btn {
 		width: 90%;
 		margin: 10px auto;

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/family/familyInfo.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/index.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/receive.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map


+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/index.js.map

@@ -1 +1 @@
-{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":"8HAAA,KAGA,YACA,W,mDAFAA,GAAGC,kCAAoCC,EAGvCC,EAAWC,a","file":"pages/login/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/login/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
+{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":"+HAAA,KAGA,YACA,yH,mDAFAA,GAAGC,kCAAoCC,EAGvCC,EAAWC,a","file":"pages/login/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/login/index.vue'\ncreatePage(Page)"],"sourceRoot":""}

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/notice/index.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/register/index.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/resident/userAddr.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/familyInfo.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/index.js.map


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js.map


Plik diff jest za duży
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js.map


+ 3 - 5
unpackage/dist/dev/mp-weixin/app.json

@@ -6,16 +6,14 @@
     "pages/policy/index",
     "pages/illness/index",
     "pages/illness/come",
+    "pages/illness/receive",
     "pages/illness/testingRoom",
     "pages/details/index",
     "pages/details/cmsinfo",
     "pages/notice/index",
     "pages/user/index",
-    "pages/family/receive",
-    "pages/family/familyInfo",
-    "pages/register/index",
-    "pages/resident/userInfoList",
-    "pages/resident/userAddr"
+    "pages/user/familyInfo",
+    "pages/register/index"
   ],
   "subPackages": [],
   "window": {

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/common/runtime.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/common/vendor.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/details/index.js


Plik diff jest za duży
+ 0 - 2
unpackage/dist/dev/mp-weixin/pages/family/familyInfo.js


Plik diff jest za duży
+ 0 - 2
unpackage/dist/dev/mp-weixin/pages/family/receive.js


+ 0 - 10
unpackage/dist/dev/mp-weixin/pages/family/receive.json

@@ -1,10 +0,0 @@
-{
-  "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",
-    "uni-list-chat": "/uni_modules/uni-list/components/uni-list-chat/uni-list-chat",
-    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons"
-  }
-}

Plik diff jest za duży
+ 0 - 1
unpackage/dist/dev/mp-weixin/pages/family/receive.wxml


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/index.js


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

@@ -1,8 +1,8 @@
 {
   "navigationBarTitleText": "核酸检测报备",
   "usingComponents": {
+    "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section",
     "uni-list": "/uni_modules/uni-list/components/uni-list/uni-list",
-    "uni-list-chat": "/uni_modules/uni-list/components/uni-list-chat/uni-list-chat",
-    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons"
+    "uni-list-chat": "/uni_modules/uni-list/components/uni-list-chat/uni-list-chat"
   }
 }

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/index.wxml


+ 3 - 0
unpackage/dist/dev/mp-weixin/pages/illness/index.wxss

@@ -49,4 +49,7 @@
 .compose {
 	background: #1aad19;
 }
+.msgText {
+	padding-bottom: 20px;
+}
 

Plik diff jest za duży
+ 2 - 0
unpackage/dist/dev/mp-weixin/pages/illness/receive.js


+ 3 - 2
unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.json

@@ -1,11 +1,12 @@
 {
-  "navigationBarTitleText": "居民列表",
+  "navigationBarTitleText": "家庭成员",
   "usingComponents": {
     "uni-segmented-control": "/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control",
     "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",
     "uni-list-chat": "/uni_modules/uni-list/components/uni-list-chat/uni-list-chat",
-    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons"
+    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons",
+    "uni-tag": "/uni_modules/uni-tag/components/uni-tag/uni-tag"
   }
 }

Plik diff jest za duży
+ 1 - 0
unpackage/dist/dev/mp-weixin/pages/illness/receive.wxml


unpackage/dist/dev/mp-weixin/pages/family/receive.wxss → unpackage/dist/dev/mp-weixin/pages/illness/receive.wxss


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/illness/testingRoom.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/index/index.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/my/index.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/my/index.wxml


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/notice/index.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/policy/index.js


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/register/index.js


+ 3 - 3
unpackage/dist/dev/mp-weixin/pages/register/index.json

@@ -1,12 +1,12 @@
 {
-  "navigationBarTitleText": "用户注册",
-  "enablePullDownRefresh": true,
+  "navigationBarTitleText": "注册用户",
   "usingComponents": {
     "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section",
     "uni-forms": "/uni_modules/uni-forms/components/uni-forms/uni-forms",
     "uni-forms-item": "/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item",
     "uni-easyinput": "/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput",
     "uni-data-checkbox": "/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox",
-    "uni-datetime-picker": "/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker"
+    "uni-datetime-picker": "/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker",
+    "uni-data-picker": "/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker"
   }
 }

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/register/index.wxml


+ 3 - 0
unpackage/dist/dev/mp-weixin/pages/register/index.wxss

@@ -3,6 +3,9 @@
 	padding-bottom: 10px;
 	margin-bottom: 10px;
 }
+.uni-select__selector {
+	z-index: 999 !important;
+}
 .uni-forms, .btn {
 	width: 90%;
 	margin: 10px auto;

Plik diff jest za duży
+ 0 - 2
unpackage/dist/dev/mp-weixin/pages/resident/userAddr.js


+ 0 - 13
unpackage/dist/dev/mp-weixin/pages/resident/userAddr.json

@@ -1,13 +0,0 @@
-{
-  "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-forms": "/uni_modules/uni-forms/components/uni-forms/uni-forms",
-    "uni-forms-item": "/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item",
-    "uni-easyinput": "/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput",
-    "uni-data-checkbox": "/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox",
-    "uni-datetime-picker": "/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker",
-    "uni-data-picker": "/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker"
-  }
-}

Plik diff jest za duży
+ 0 - 1
unpackage/dist/dev/mp-weixin/pages/resident/userAddr.wxml


+ 0 - 16
unpackage/dist/dev/mp-weixin/pages/resident/userAddr.wxss

@@ -1,16 +0,0 @@
-
-.uni-section {
-	padding-bottom: 10px;
-	margin-bottom: 10px;
-}
-.uni-select__selector {
-	z-index: 999 !important;
-}
-.uni-forms, .btn {
-	width: 90%;
-	margin: 10px auto;
-}
-.phoneBox {
-	display: flex;
-}
-

Plik diff jest za duży
+ 0 - 2
unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.js


Plik diff jest za duży
+ 0 - 1
unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.wxml


+ 0 - 52
unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.wxss

@@ -1,52 +0,0 @@
-
-.container {
-	width: 100%;
-}
-.addUser {
-	display: block;
-	/* width: 90%; */
-	margin: 5px auto;
-}
-.chat-custom-text {
-	font-size: 12px;
-	color: #999;
-	width: 100%;
-	text-align: center;
-	display: block;
-}
-.addUser .uni-list-item__container {
-	flex: none;
-	margin: 0 auto;
-}
-.addUser .uni-list-item__content-title {
-	color: #ff8319;
-}
-.delBox {
-	display: flex;
-	width: 100%;
-	overflow: hidden;
-}
-.item {
-	width: 100%;
-}
-.del {
-	display: block;
-	width: 50px;
-	background: red;
-}
-.right {
-	margin-right: -100px;
-}
-.uni-icons {
-	display: block;
-	width: 100%;
-	text-align: center;
-	line-height: 2.3em;
-}
-.left {
-	margin-left: -100px;
-}
-.compose {
-	background: #1aad19;
-}
-

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/service/index.js


Plik diff jest za duży
+ 2 - 0
unpackage/dist/dev/mp-weixin/pages/user/familyInfo.js


+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/family/familyInfo.json

@@ -1,5 +1,5 @@
 {
-  "navigationBarTitleText": "家人资料",
+  "navigationBarTitleText": "成员资料",
   "usingComponents": {
     "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section",
     "uni-forms": "/uni_modules/uni-forms/components/uni-forms/uni-forms",

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/family/familyInfo.wxml


unpackage/dist/dev/mp-weixin/pages/family/familyInfo.wxss → unpackage/dist/dev/mp-weixin/pages/user/familyInfo.wxss


Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/user/index.js


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

@@ -6,6 +6,7 @@
     "uni-forms-item": "/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item",
     "uni-easyinput": "/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput",
     "uni-data-checkbox": "/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox",
-    "uni-datetime-picker": "/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker"
+    "uni-datetime-picker": "/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker",
+    "uni-data-picker": "/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker"
   }
 }

Plik diff jest za duży
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/user/index.wxml


+ 3 - 0
unpackage/dist/dev/mp-weixin/pages/user/index.wxss

@@ -3,6 +3,9 @@
 	padding-bottom: 10px;
 	margin-bottom: 10px;
 }
+.uni-select__selector {
+	z-index: 999 !important;
+}
 .uni-forms, .btn {
 	width: 90%;
 	margin: 10px auto;

+ 1 - 1
unpackage/dist/dev/mp-weixin/project.private.config.json

@@ -2,7 +2,7 @@
   "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
   "projectname": "Applet",
   "setting": {
-    "compileHotReLoad": true,
+    "compileHotReLoad": false,
     "bigPackageSizeSupport": false
   }
 }

Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar-item.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/time-picker.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-chat/uni-list-chat.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-item/uni-list-item.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list/uni-list.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js


Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.js


Plik diff jest za duży
+ 11 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "component": true
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.wxml

@@ -0,0 +1 @@
+<block wx:if="{{text}}"><text data-event-opts="{{[['tap',[['onClick',['$event']]]]]}}" class="{{['uni-tag',classes]}}" style="{{(customStyle)}}" bindtap="__e">{{text}}</text></block>

+ 103 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.wxss

@@ -0,0 +1,103 @@
+@charset "UTF-8";
+/* 水平间距 */
+/* 水平间距 */
+.uni-tag {
+  line-height: 14px;
+  font-size: 12px;
+  font-weight: 200;
+  padding: 4px 7px;
+  color: #fff;
+  border-radius: 3px;
+  background-color: #8f939c;
+  border-width: 1rpx;
+  border-style: solid;
+  border-color: #8f939c;
+}
+.uni-tag--default {
+  font-size: 12px;
+}
+.uni-tag--default--inverted {
+  color: #8f939c;
+  border-color: #8f939c;
+}
+.uni-tag--small {
+  padding: 2px 5px;
+  font-size: 12px;
+  border-radius: 2px;
+}
+.uni-tag--mini {
+  padding: 1px 3px;
+  font-size: 12px;
+  border-radius: 2px;
+}
+.uni-tag--primary {
+  background-color: #2979ff;
+  border-color: #2979ff;
+  color: #fff;
+}
+.uni-tag--success {
+  color: #fff;
+  background-color: #18bc37;
+  border-color: #18bc37;
+}
+.uni-tag--warning {
+  color: #fff;
+  background-color: #f3a73f;
+  border-color: #f3a73f;
+}
+.uni-tag--error {
+  color: #fff;
+  background-color: #e43d33;
+  border-color: #e43d33;
+}
+.uni-tag--primary--inverted {
+  color: #2979ff;
+  border-color: #2979ff;
+}
+.uni-tag--success--inverted {
+  color: #18bc37;
+  border-color: #18bc37;
+}
+.uni-tag--warning--inverted {
+  color: #f3a73f;
+  border-color: #f3a73f;
+}
+.uni-tag--error--inverted {
+  color: #e43d33;
+  border-color: #e43d33;
+}
+.uni-tag--inverted {
+  background-color: #fff;
+}
+.uni-tag--circle {
+  border-radius: 15px !important;
+}
+.uni-tag--mark {
+  border-top-left-radius: 0 !important;
+  border-bottom-left-radius: 0 !important;
+  border-top-right-radius: 15px !important;
+  border-bottom-right-radius: 15px !important;
+}
+.uni-tag--disabled {
+  opacity: 0.5;
+}
+.uni-tag-text {
+  color: #fff;
+  font-size: 14px;
+}
+.uni-tag-text--primary {
+  color: #2979ff;
+}
+.uni-tag-text--success {
+  color: #18bc37;
+}
+.uni-tag-text--warning {
+  color: #f3a73f;
+}
+.uni-tag-text--error {
+  color: #e43d33;
+}
+.uni-tag-text--small {
+  font-size: 12px;
+}
+

Plik diff jest za duży
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-title/components/uni-title/uni-title.js