asd123a20 2 years ago
parent
commit
898fa5b3d6
100 changed files with 1122 additions and 524 deletions
  1. 2 1
      api/login.js
  2. 4 1
      api/request.js
  3. 37 0
      api/resident.js
  4. 6 6
      api/user.js
  5. 5 4
      env.js
  6. 26 8
      pages.json
  7. 52 45
      pages/user/familyInfo.vue
  8. 161 0
      pages/family/receive.vue
  9. 1 29
      pages/illness/index.vue
  10. 2 2
      pages/index/index.vue
  11. 0 19
      pages/login/index.vue
  12. 33 20
      pages/my/index.vue
  13. 120 0
      pages/register/index.vue
  14. 221 0
      pages/resident/userAddr.vue
  15. 181 0
      pages/resident/userInfoList.vue
  16. 7 139
      pages/user/index.vue
  17. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  18. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  19. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/details/cmsinfo.js.map
  20. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/family/familyInfo.js.map
  21. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/family/receive.js.map
  22. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/filing.js.map
  23. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/index.js.map
  24. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/receive.js.map
  25. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  26. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/index.js.map
  27. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map
  28. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/register/index.js.map
  29. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/resident/userAddr.js.map
  30. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/resident/userInfoList.js.map
  31. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/familyInfo.js.map
  32. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/index.js.map
  33. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/userAddr.js.map
  34. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/userInfoList.js.map
  35. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/userAddr/index.js.map
  36. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.js.map
  37. 5 2
      unpackage/dist/dev/mp-weixin/app.json
  38. 1 1
      unpackage/dist/dev/mp-weixin/common/runtime.js
  39. 2 2
      unpackage/dist/dev/mp-weixin/common/vendor.js
  40. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.js
  41. 1 1
      unpackage/dist/dev/mp-weixin/pages/details/index.js
  42. 2 0
      unpackage/dist/dev/mp-weixin/pages/family/familyInfo.js
  43. 1 2
      unpackage/dist/dev/mp-weixin/pages/user/familyInfo.json
  44. 1 0
      unpackage/dist/dev/mp-weixin/pages/family/familyInfo.wxml
  45. 0 0
      unpackage/dist/dev/mp-weixin/pages/family/familyInfo.wxss
  46. 2 0
      unpackage/dist/dev/mp-weixin/pages/family/receive.js
  47. 10 0
      unpackage/dist/dev/mp-weixin/pages/family/receive.json
  48. 1 0
      unpackage/dist/dev/mp-weixin/pages/family/receive.wxml
  49. 52 0
      unpackage/dist/dev/mp-weixin/pages/family/receive.wxss
  50. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/come.js
  51. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/index.js
  52. 0 2
      unpackage/dist/dev/mp-weixin/pages/illness/index.json
  53. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/index.wxml
  54. 1 1
      unpackage/dist/dev/mp-weixin/pages/illness/testingRoom.js
  55. 1 1
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  56. 1 1
      unpackage/dist/dev/mp-weixin/pages/index/index.wxml
  57. 0 2
      unpackage/dist/dev/mp-weixin/pages/login/index.js
  58. 0 5
      unpackage/dist/dev/mp-weixin/pages/login/index.json
  59. 0 1
      unpackage/dist/dev/mp-weixin/pages/login/index.wxml
  60. 1 1
      unpackage/dist/dev/mp-weixin/pages/my/index.js
  61. 1 1
      unpackage/dist/dev/mp-weixin/pages/my/index.wxml
  62. 1 1
      unpackage/dist/dev/mp-weixin/pages/notice/index.js
  63. 1 1
      unpackage/dist/dev/mp-weixin/pages/policy/index.js
  64. 2 0
      unpackage/dist/dev/mp-weixin/pages/register/index.js
  65. 12 0
      unpackage/dist/dev/mp-weixin/pages/register/index.json
  66. 1 0
      unpackage/dist/dev/mp-weixin/pages/register/index.wxml
  67. 13 0
      unpackage/dist/dev/mp-weixin/pages/register/index.wxss
  68. 2 0
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.js
  69. 13 0
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.json
  70. 1 0
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.wxml
  71. 16 0
      unpackage/dist/dev/mp-weixin/pages/resident/userAddr.wxss
  72. 2 0
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.js
  73. 11 0
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.json
  74. 1 0
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.wxml
  75. 52 0
      unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.wxss
  76. 1 1
      unpackage/dist/dev/mp-weixin/pages/service/index.js
  77. 0 2
      unpackage/dist/dev/mp-weixin/pages/user/familyInfo.js
  78. 0 1
      unpackage/dist/dev/mp-weixin/pages/user/familyInfo.wxml
  79. 1 1
      unpackage/dist/dev/mp-weixin/pages/user/index.js
  80. 1 3
      unpackage/dist/dev/mp-weixin/pages/user/index.json
  81. 1 1
      unpackage/dist/dev/mp-weixin/pages/user/index.wxml
  82. 0 3
      unpackage/dist/dev/mp-weixin/pages/user/index.wxss
  83. 1 1
      unpackage/dist/dev/mp-weixin/project.config.json
  84. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js
  85. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.js
  86. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js
  87. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.js
  88. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.js
  89. 0 11
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js
  90. 0 6
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.json
  91. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxml
  92. 0 157
      unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxss
  93. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar-item.js
  94. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar.js
  95. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/time-picker.js
  96. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker.js
  97. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js
  98. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js
  99. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js
  100. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js

+ 2 - 1
api/login.js

@@ -1,4 +1,5 @@
 import request from './request.js';
+import { BASE_URL } from '../env.js';
 const login = async (data) => {
 	const res = await request.post({ url: `/user/login`, data });
 	return res.data;
@@ -8,7 +9,7 @@ const getPhone = async (data) => {
 	return res.data;
 }
 const getJson = async () => {
-	const res = await request.get({ url: `http://192.168.0.63/static/wxa/config.json` });
+	const res = await request.get({ url: `${BASE_URL.imgUrl}/config.json` });
 	return res;
 }
 export default { login, getPhone, getJson };

+ 4 - 1
api/request.js

@@ -42,4 +42,7 @@ const post = async ({ url, data, header }) => {
 const put = async ({ url, data, header }) => {
 	return await request({ url, method: 'put', data, header });
 }
-export default { get, post, put };
+const del = async ({ url, data, header }) => {
+	return await request({ url, method: 'delete', data, header });
+}
+export default { get, post, put, del };

+ 37 - 0
api/resident.js

@@ -0,0 +1,37 @@
+import request from './request.js';
+// 查询地址下拉树结构 -- 到小区
+const addrTreeSelect = async (data) => {
+	const res = await request.get({ url: `/api/wx/addr/tree`, data });
+	return res.data;
+}
+// 楼栋查询
+const buildingList = async (data) => {
+	const res = await request.get({ url: `/wx/addr/buildings`, data });
+	return res.data;
+}
+// 住宅查询
+const houseList = async (data) => {
+	const res = await request.get({ url: `/wx/addr/houses`, data });
+	return res.data;
+}
+// 居民信息登记、修改
+const registerUser = async (data) => {
+	const res = await request.post({ url: `/resident/register`, data });
+	return res.data;
+}
+// 获取居民信息
+const getUser = async () => {
+	const res = await request.get({ url: `/resident/list` });
+	return res.data;
+}
+// 删除居民信息
+const delUser = async () => {
+	const res = await request.del({ url: `/resident/del` });
+	return res.data;
+}
+// 获取居民信息申请记录
+const getApplyUser = async () => {
+	const res = await request.get({ url: `/resident/req/list` });
+	return res.data;
+}
+export default { addrTreeSelect, buildingList, houseList, registerUser, getUser, delUser, getApplyUser };

+ 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 addUser = async (data) => {
-	const res = await request.post({ url: `/api/user/register`, data });
+// 修改用户信息
+const updateUser = async (data) => {
+	const res = await request.post({ url: `/user/edit`, data });
 	return res.data;
 }
 // 添加用户信息
-const updateUser = async (data) => {
-	const res = await request.post({ url: `/api/user/edit`, data });
+const registerUser = async (data) => {
+	const res = await request.post({ url: `/user/register`, 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, addUser, getUser, updateUser };
+export default { addrTreeSelect, buildingList, houseList, registerUser, getUser, updateUser };

+ 5 - 4
env.js

@@ -1,11 +1,12 @@
 const ENV_API_URL = {
 	development: {
-		url: 'http://192.168.0.63/wx-api/api',
-		imgUrl: 'http://192.168.0.63/static/wxa/'
+		url: 'https://fuyu.scapp.cn/wx-api/api',
+		// url: 'http://192.168.0.70/api',
+		imgUrl: 'https://fuyu.scapp.cn/static/wxa/'
 	},
 	production: {
-		url: 'http://192.168.0.63/wx-api/api',
-		imgUrl: 'http://192.168.0.63/static/wxa/'
+		url: 'https://fuyu.scapp.cn/wx-api/api',
+		imgUrl: 'https://fuyu.scapp.cn/static/wxa/'
 	},
 }
 export const BASE_URL = ENV_API_URL[process.env.NODE_ENV || 'development'];

+ 26 - 8
pages.json

@@ -12,13 +12,6 @@
 				"navigationBarTitleText": "个人中心"
 			}
 		},
-		{
-			"path": "pages/login/index",
-			"style": {
-				"navigationBarTitleText": "登录",
-				"navigationStyle": "custom"
-			}
-		},
 		{
 			"path": "pages/service/index",
 			"style": {
@@ -75,10 +68,35 @@
 			}
 		},
 		{
-			"path": "pages/user/familyInfo",
+			"path": "pages/family/receive",
+			"style": {
+				"navigationBarTitleText": "家人代领"
+			}
+		},
+		{
+			"path": "pages/family/familyInfo",
 			"style": {
 				"navigationBarTitleText": "家人资料"
 			}
+		},
+		{
+			"path": "pages/register/index",
+			"style": {
+				"navigationBarTitleText": "用户注册",
+				"enablePullDownRefresh": true
+			}
+		},
+		{
+			"path": "pages/resident/userInfoList",
+			"style": {
+				"navigationBarTitleText": "居民列表"
+			}
+		},
+		{
+			"path": "pages/resident/userAddr",
+			"style": {
+				"navigationBarTitleText": "居民信息"
+			}
 		}
 	],
 	"globalStyle": {

+ 52 - 45
pages/user/familyInfo.vue

@@ -17,19 +17,19 @@
 		<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" @nodeclick="onnodeclick"></uni-data-picker>
+					<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-select :localdata="range"  @change="selectChange" v-model="formData.buildingId"></uni-data-select>
+					<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 !== null">
-					<uni-data-select :localdata="house.unit" @change="unitChange" v-model="formData.unit"></uni-data-select>
+				<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.floor !== null">
-					<uni-data-select :localdata="house.floor" @change="floorChange" v-model="formData.floor"></uni-data-select>
+				<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 !== null">
-					<uni-data-select :localdata="house.number" v-model="formData.houseId" @change="houseChange"></uni-data-select>
+				<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>
@@ -84,7 +84,16 @@
 		},
 		async onLoad(option) {
 			this.residentId = option.residentId;
-			if (option.residentId) this.queryInfo();
+			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);
+			}
+			
 		},
 		async mounted() {
 			const res = await request.addrTreeSelect();
@@ -93,30 +102,31 @@
 		methods: {
 			async queryInfo() {
 				const userinfo = await requestFamily.getFamilyInfoDetails({ residentId: this.residentId });
-				console.log(userinfo.data);
 				this.formData = userinfo.data;
-				const { estateId, buildingId, unit, floor, houseId } = userinfo.data;
+				this.setAddr(userinfo.data);
+			},
+			// 设置地址
+			async setAddr(data) {
 				// 小区存在
-				if (estateId) {
-					const res = await request.buildingList({ estateId });
+				if (data.estateId) {
+					const res = await request.buildingList({ estateId: data.estateId });
 					this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
 				}
 				// 楼栋存在
-				if(buildingId) {
-				 	await this.selectChange(buildingId);
+				if(data.buildingId) {
+				 	await this.selectChange(data.buildingId);
 				}
 				// 单元存在
-				if(unit) {
-					await this.unitChange(unit);
+				if(data.unit) {
+					await this.unitChange(data.unit);
 				}
 				// 楼层存在
-				if(floor) {
-					await this.floorChange(floor);
+				if(data.floor) {
+					await this.floorChange(data.floor);
 				}
 				// 门牌存在
-				if(houseId) {
-					console.log(houseId)
-					await this.houseChange(houseId);
+				if(data.houseId) {
+					await this.houseChange(data.houseId);
 				}
 			},
 			async onchange(e) {
@@ -127,35 +137,31 @@
 			onnodeclick(node) {},
 			// 楼栋选择
 			async selectChange(e) {
-				if (!e || e == '') return;
-				const res = await request.houseList({ buildingId: 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 }));
-				if (unit && unit.length > 0) {
-					unit.forEach(k => {
-						const isunit = list.find(j => j.unit == k.unit);
-						if (!isunit) list.push(k);
-					});
-					this.$set(this.house, 'unit', list);
-					return;
-				}
-				if (number && number.length > 0) {
-					number.forEach(k => {
-						const isunit = list.find(j => j.number == k.number);
-						if (!isunit) list.push(k);
-					});
-					this.$set(this.house, 'number', list);
-					return;
-				}
+				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) {
-				this.unit = 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).map(j => ({ ...j, text: `${j.floor}层`, value: j.floor }));
+				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);
@@ -164,8 +170,9 @@
 			},
 			// 楼层选择
 			floorChange(e) {
+				if (!e || e == '' || e.detail.value.length <= 0) return;
 				const list = [];
-				const number = this.building.filter(j => j.floor == e && j.unit == this.unit).map(j => ({ ...j, text: `${j.number}号`, value: j.houseId }));
+				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);
@@ -174,8 +181,8 @@
 			},
 			// 门牌选择
 			houseChange(e) {
-				if (!e || e == '') return;
-				const dept = this.house.number.find(j => j.houseId == 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;
 			},
 			// 提交

+ 161 - 0
pages/family/receive.vue

@@ -0,0 +1,161 @@
+<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>

+ 1 - 29
pages/illness/index.vue

@@ -1,12 +1,7 @@
 <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" >
+			<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>
@@ -61,29 +56,6 @@
 					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 });

+ 2 - 2
pages/index/index.vue

@@ -16,7 +16,7 @@
 		</uni-section>
 		<uni-section titleFontSize="16px"  class="mb-10 sectionBox" title="办事指南" type="line">
 			<template v-slot:right>
-				<text @click="morBtn">更多>></text>
+				<!-- <text @click="morBtn">更多>></text> -->
 			</template>
 			<uni-card class="card card2" v-for="(item, index) in policyList" :key="index" @click="policyBtn(item)">
 				<image class="cover" :src="item.url"></image>
@@ -72,7 +72,7 @@
 				const role = uni.getStorageSync('role');
 				if (e.isUser && role && role == 'guest') {
 					uni.navigateTo({
-						url: `/pages/user/index?path=${e.path}`
+						url: `/pages/register/index`
 					})
 					return;
 				}

+ 0 - 19
pages/login/index.vue

@@ -1,19 +0,0 @@
-<template>
-	<view class="container">
-		<text class="intro">login</text>
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {}
-		},
-		methods: {
-
-		}
-	}
-</script>
-
-<style>
-</style>

+ 33 - 20
pages/my/index.vue

@@ -13,12 +13,12 @@
 			</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[5]" title="居民信息" link clickable @click="onClick(5)"></uni-list-item>
 				</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-item :showExtraIcon="true" :extra-icon="extraIconList[1]" title="家人代领" link clickable @click="onClick(1)"></uni-list-item>
 				</uni-list>
 			</uni-card>
 			<uni-card>
@@ -28,9 +28,14 @@
 			</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-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 class="logoutBox">
 				<uni-list :border="false">
 					<uni-list-item size="mini" class="logout" title="退出登录" clickable @click="onClick(4)"></uni-list-item>
@@ -41,6 +46,7 @@
 </template>
 
 <script>
+	import request from '../../api/user.js';
 	import requestLogin from '../../api/login.js';
 	export default {
 		data() {
@@ -70,26 +76,37 @@
 						color: '#e70000',
 						size: '22',
 						type: 'email-filled'
+					},
+					{
+						color: '#a8a861',
+						size: '22',
+						type: 'home-filled'
 					}
 				],
-				src: 'https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/6acec660-4f31-11eb-a16f-5b3e54966275.jpg',
+				src: '',
 				userInfo: {},
 				role: ''
 			}
 		},
-		onShow() {
-			this.userInfo = uni.getStorageSync('userinfo');
+		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');
 		},
-		mounted() {},
+		async mounted() {
+			const config = await requestLogin.getJson();
+			const { avatar } = config.data;
+			this.src = avatar;
+		},
 		methods: {
 			register() {
 				uni.navigateTo({
-					url: '/pages/user/index'
+					url: '/pages/register/index'
 				})
 			},
 			onClick(e) {
-				console.log(e);
 				if (e == 0) {
 					uni.navigateTo({
 						url: '/pages/user/index'
@@ -100,10 +117,12 @@
 					this.illness();
 					return;
 				}
-				// if (e == 4) {
-				// 	this.logOut();
-				// 	return;
-				// }
+				if (e == 5) {
+					uni.navigateTo({
+						url: '/pages/resident/userInfoList'
+					})
+					return;
+				}
 				uni.showToast({
 					title: '敬请期待',
 					icon: 'error',
@@ -112,13 +131,7 @@
 			},
 			illness() {
 				uni.navigateTo({
-					url: '/pages/illness/index'
-				})
-			},
-			logOut() {
-				uni.clearStorage();
-				uni.redirectTo({
-					url: '/pages/index/index'
+					url: '/pages/family/receive'
 				})
 			}
 		}

+ 120 - 0
pages/register/index.vue

@@ -0,0 +1,120 @@
+<template>
+	<view class="container">
+		<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="请输入姓名" />
+				</uni-forms-item>
+				<uni-forms-item required label="性别" name="sex">
+					<uni-data-checkbox v-model="formData.sex" :localdata="sexs" />
+				</uni-forms-item>
+				<uni-forms-item required label="手机号" name="phone">
+					<view class="phoneBox">
+						<uni-easyinput disabled type="text" v-model="formData.phone" placeholder="手机号" />
+						<button type="primary" :plain="true" style="border: none;"  size="mini" open-type="getPhoneNumber" @getphonenumber="decryptPhoneNumber">获取手机号</button>
+					</view>
+				</uni-forms-item>
+				<uni-forms-item name="birthday" label="出生日期">
+					<uni-datetime-picker type="date" v-model="formData.birthday" />
+				</uni-forms-item>
+			</uni-forms>
+		</uni-section>
+		<button class="btn" type="primary" @click="submit('infoForm')">提交</button>
+	</view>
+</template>
+
+<script>
+	import request from '../../api/user.js';
+	import requestLogin from '../../api/login.js';
+	const appid = uni.getAccountInfoSync().miniProgram.appId;
+	export default {
+		data() {
+			return {
+				role: '',
+				path: null,
+				formData: {},
+				sexs: [
+					{ text: '男', value: 1 },
+					{ text: '女', value: 0 },
+				],
+				// 校验规则
+				rules: {
+					name: {
+						rules: [{
+							required: true,
+							errorMessage: '姓名不能为空'
+						}]
+					},
+					sex: {
+						rules: [{
+							required: true,
+							errorMessage: '性别不能为空'
+						}]
+					},
+					phone: {
+						rules: [{
+							required: true,
+							errorMessage: '电话不能为空'
+						}]
+					},
+				},
+			}
+		},
+		async mounted() {
+			this.role = uni.getStorageSync('role');
+			if (this.role !== 'guest') this.queryInfo();
+		},
+		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 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
+								})
+							}
+						}
+						uni.navigateBack()
+					}
+				})
+			},
+		},
+		onLoad(option) {
+			this.path == option.path;
+		}
+	}
+</script>
+
+<style>
+	.uni-section {
+		padding-bottom: 10px;
+		margin-bottom: 10px;
+	}
+	.uni-forms, .btn {
+		width: 90%;
+		margin: 10px auto;
+	}
+	.phoneBox {
+		display: flex;
+	}
+</style>

+ 221 - 0
pages/resident/userAddr.vue

@@ -0,0 +1,221 @@
+<template>
+	<view class="container">
+		<uni-notice-bar v-if="formData.status == '2'" :text="`驳回原因:${formData.remarks}`" />
+		<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="请输入姓名" />
+				</uni-forms-item>
+				<uni-forms-item required label="性别" name="sex">
+					<uni-data-checkbox v-model="formData.sex" :localdata="sexs" />
+				</uni-forms-item>
+				<uni-forms-item required label="手机号" name="phone">
+					<view class="phoneBox">
+						<uni-easyinput disabled type="text" v-model="formData.phone" placeholder="手机号" />
+						<button type="primary" :plain="true" style="border: none;"  size="mini" open-type="getPhoneNumber" @getphonenumber="decryptPhoneNumber">获取手机号</button>
+					</view>
+				</uni-forms-item>
+				<uni-forms-item name="birthday" label="出生日期">
+					<uni-datetime-picker type="date" v-model="formData.birthday" />
+				</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="villageChange"></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()">提交</button>
+	</view>
+</template>
+
+<script>
+	import request from '../../api/resident.js';
+	export default {
+		data() {
+			return {
+				role: '',
+				residentId: null,
+				formData: {},
+				items: [],
+				pickerMap: {
+					text: 'label',
+					value: 'interId'
+				},
+				range: [],
+				house: {},
+				building: [],
+				unit: '',
+				sexs: [
+					{ text: '男', value: 1 },
+					{ text: '女', value: 0 },
+				],
+				// 校验规则
+				rules: {
+					name: {
+						rules: [{
+							required: true,
+							errorMessage: '姓名不能为空'
+						}]
+					},
+					sex: {
+						rules: [{
+							required: true,
+							errorMessage: '性别不能为空'
+						}]
+					},
+					phone: {
+						rules: [{
+							required: true,
+							errorMessage: '电话不能为空'
+						}]
+					},
+				},
+			}
+		},
+		async mounted() {
+			const res = await request.addrTreeSelect();
+			this.items = res.data;
+			if (this.residentId !== null && this.residentId) this.queryInfo();
+		},
+		methods: {
+			async queryInfo() {
+				const userinfo = await request.getUser();
+				this.formData = userinfo.data;
+				this.setAddr(userinfo.data);
+			},
+			// 设置地址
+			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.villageChange(data.buildingId);
+				}
+				// 单元存在
+				if(data.unit && data.unit !== null) {
+					await this.unitChange(data.unit);
+				}
+				// 楼层存在
+				if(data.floor && data.floor !== null) {
+					await this.floorChange(data.floor);
+				}
+				// 门牌存在
+				if(data.houseId && data.houseId !== null) {
+					await this.houseChange(data.houseId);
+				}
+			},
+			// 小区选择
+			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 villageChange(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 == this.unit).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);
+				if (dept) this.formData.deptId = dept.deptId;
+			},
+			// 提交
+			async submit() {
+				if (!this.formData.deptId || !this.formData.houseId || this.formData.houseId == '') {
+					uni.showToast({
+						title: '请选择完整信息',
+						icon: 'error',
+						duration: 2000,
+					});
+					return;
+				}
+				await request.registerUser(this.formData);
+				const msg = this.residentId && this.residentId !== null ? '修改成功' : '添加成功';
+				uni.showToast({
+					title: msg,
+					duration: 2000,
+				});
+				uni.navigateBack()
+			},
+		},
+		onLoad(option) {
+			this.residentId == option.residentId;
+		}
+	}
+</script>
+
+<style>
+	.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;
+	}
+</style>

+ 181 - 0
pages/resident/userInfoList.vue

@@ -0,0 +1,181 @@
+<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.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">
+						<text class="chat-custom-text">{{ item && item.status }}</text>
+					</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>
+</template>
+
+<script>
+	import request from '../../api/resident.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.onClickItem(0);
+		},
+		onShow() {
+			this.isId = '';
+		},
+		methods: {
+			// 标签页点击
+			async onClickItem(e) {
+				if (this.current !== e.currentIndex) {
+					this.current = e.currentIndex
+				}
+				let res;
+				if (e.currentIndex == 1) {
+					res = request.getApplyUser();
+				} else {
+					res = request.getUser();
+				}
+				this.list = res.data;
+			},
+			// 滑动开始
+			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 delbtn(e) {
+				const res = await request.delUser({ ...e, reqType: '2' });
+				if (res.code == 200) {
+					this.isId = '';
+					uni.showToast({
+						title: '删除成功',
+						duration: 2000,
+					});
+				}
+			},
+			// 添加
+			onClick() {
+				uni.navigateTo({
+					url: '/pages/resident/userAddr'
+				})
+			},
+			// 修改
+			userbtn(e) {
+				console.log(e);
+				uni.navigateTo({
+					url: `/pages/resident/userAddr?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>

+ 7 - 139
pages/user/index.vue

@@ -19,25 +19,6 @@
 				</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" @nodeclick="onnodeclick"></uni-data-picker>
-				</uni-forms-item>
-				<uni-forms-item label="楼栋选择">
-					<uni-data-select :localdata="range"  @change="selectChange" v-model="formData.buildingId"></uni-data-select>
-				</uni-forms-item>
-				<uni-forms-item label="单元选择" v-if="house.unit && house.unit !== null">
-					<uni-data-select :localdata="house.unit" @change="unitChange" v-model="formData.unit"></uni-data-select>
-				</uni-forms-item>
-				<uni-forms-item label="楼层选择" v-if="house.floor && house.floor !== null">
-					<uni-data-select :localdata="house.floor" @change="floorChange" v-model="formData.floor"></uni-data-select>
-				</uni-forms-item>
-				<uni-forms-item label="门牌选择" v-if="house.number && house.number !== null">
-					<uni-data-select :localdata="house.number" v-model="formData.houseId" @change="houseChange"></uni-data-select>
-				</uni-forms-item>
-			</uni-forms>
-		</uni-section>
 		<button class="btn" type="primary" @click="submit('infoForm')">提交</button>
 	</view>
 </template>
@@ -56,15 +37,6 @@
 					{ text: '男', value: 1 },
 					{ text: '女', value: 0 },
 				],
-				items: [],
-				pickerMap: {
-					text: 'label',
-					value: 'interId'
-				},
-				range: [],
-				house: {},
-				building: [],
-				unit: '',
 				// 校验规则
 				rules: {
 					name: {
@@ -89,131 +61,30 @@
 			}
 		},
 		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 { estateId, buildingId, unit, floor, houseId } = userinfo.data;
-				// 小区存在
-				if (estateId) {
-					const res = await request.buildingList({ estateId });
-					this.range = res.rows.map(e => ({ ...e, text: `${e.number}栋`, value: e.buildingId }));
-				}
-				// 楼栋存在
-				if(buildingId) {
-				 	await this.selectChange(buildingId);
-				}
-				// 单元存在
-				if(unit) {
-					await this.unitChange(unit);
-				}
-				// 楼层存在
-				if(floor) {
-					await this.floorChange(floor);
-				}
-				// 门牌存在
-				if(houseId) {
-					await this.houseChange(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) {
-				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 }));
-			},
-			onnodeclick(node) {},
-			// 楼栋选择
-			async selectChange(e) {
-				if (!e || e == '') return;
-				const res = await request.houseList({ buildingId: e });
-				this.building = res.rows;
-				const list = [];
-				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.number }));
-				if (unit && unit.length > 0) {
-					unit.forEach(k => {
-						const isunit = list.find(j => j.unit == k.unit);
-						if (!isunit) list.push(k);
-					});
-					this.$set(this.house, 'unit', list);
-					return;
-				}
-				if (number && number.length > 0) {
-					number.forEach(k => {
-						const isunit = list.find(j => j.number == k.number);
-						if (!isunit) list.push(k);
-					});
-					this.$set(this.house, 'number', list);
-					return;
-				}
-				
-			},
-			// 单元选择
-			unitChange(e) {
-				this.unit = e;
-				const list = [];
-				const floor = this.building.filter(j => j.unit == e).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) {
-				const list = [];
-				const number = this.building.filter(j => j.floor == e && 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 == '') return;
-				const dept = this.house.number.find(j => j.houseId == e);
-				if (dept) this.formData.deptId = dept.deptId;
-				// this.$set(this.form, 'deptId', dept.deptId);
-			},
 			// 提交
 			async submit(ref) {
 				this.$refs[ref].validate(async (err, formdata) => {
 					if (!err) {
-						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,
-							});
-						}
+						// 修改用户
+						const res = await request.updateUser(this.formData);
+						uni.showToast({
+							title: '修改成功',
+							duration: 2000,
+						});
 						uni.navigateBack()
 					}
 				})
@@ -230,9 +101,6 @@
 		padding-bottom: 10px;
 		margin-bottom: 10px;
 	}
-	.uni-select__selector {
-		z-index: 999 !important;
-	}
 	.uni-forms, .btn {
 		width: 90%;
 		margin: 10px auto;

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/pages/details/cmsinfo.js.map


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


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


+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/filing.js.map

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

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


+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/illness/receive.js.map

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

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/login/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 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/register/index.js.map


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


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/resident/userInfoList.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/.sourcemap/mp-weixin/pages/user/userAddr.js.map

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

+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/userInfoList.js.map

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

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

@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":"kIAAA,KAGA,YACA,4H,mDAFAA,GAAGC,kCAAoCC,EAGvCC,EAAWC,a","file":"pages/userAddr/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/userAddr/index.vue'\ncreatePage(Page)"],"sourceRoot":""}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.js.map


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

@@ -2,7 +2,6 @@
   "pages": [
     "pages/index/index",
     "pages/my/index",
-    "pages/login/index",
     "pages/service/index",
     "pages/policy/index",
     "pages/illness/index",
@@ -12,7 +11,11 @@
     "pages/details/cmsinfo",
     "pages/notice/index",
     "pages/user/index",
-    "pages/user/familyInfo"
+    "pages/family/receive",
+    "pages/family/familyInfo",
+    "pages/register/index",
+    "pages/resident/userInfoList",
+    "pages/resident/userAddr"
   ],
   "subPackages": [],
   "window": {

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
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/details/cmsinfo.js


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
+ 2 - 0
unpackage/dist/dev/mp-weixin/pages/family/familyInfo.js


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

@@ -7,7 +7,6 @@
     "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",
-    "uni-data-select": "/uni_modules/uni-data-select/components/uni-data-select/uni-data-select"
+    "uni-data-picker": "/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker"
   }
 }

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


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


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


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

@@ -0,0 +1,10 @@
+{
+  "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"
+  }
+}

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


+ 52 - 0
unpackage/dist/dev/mp-weixin/pages/family/receive.wxss

@@ -0,0 +1,52 @@
+
+.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;
+}
+

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


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


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

@@ -1,9 +1,7 @@
 {
   "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"
   }

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


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/index/index.js


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
+ 0 - 2
unpackage/dist/dev/mp-weixin/pages/login/index.js


+ 0 - 5
unpackage/dist/dev/mp-weixin/pages/login/index.json

@@ -1,5 +0,0 @@
-{
-  "navigationBarTitleText": "登录",
-  "navigationStyle": "custom",
-  "usingComponents": {}
-}

+ 0 - 1
unpackage/dist/dev/mp-weixin/pages/login/index.wxml

@@ -1 +0,0 @@
-<view class="container"><text class="intro">login</text></view>

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/my/index.wxml


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
+ 2 - 0
unpackage/dist/dev/mp-weixin/pages/register/index.js


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

@@ -0,0 +1,12 @@
+{
+  "navigationBarTitleText": "用户注册",
+  "enablePullDownRefresh": true,
+  "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"
+  }
+}

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


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

@@ -0,0 +1,13 @@
+
+.uni-section {
+	padding-bottom: 10px;
+	margin-bottom: 10px;
+}
+.uni-forms, .btn {
+	width: 90%;
+	margin: 10px auto;
+}
+.phoneBox {
+	display: flex;
+}
+

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


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

@@ -0,0 +1,13 @@
+{
+  "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"
+  }
+}

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


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

@@ -0,0 +1,16 @@
+
+.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;
+}
+

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


+ 11 - 0
unpackage/dist/dev/mp-weixin/pages/resident/userInfoList.json

@@ -0,0 +1,11 @@
+{
+  "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"
+  }
+}

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


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

@@ -0,0 +1,52 @@
+
+.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;
+}
+

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


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


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


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


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

@@ -6,8 +6,6 @@
     "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",
-    "uni-data-select": "/uni_modules/uni-data-select/components/uni-data-select/uni-data-select"
+    "uni-datetime-picker": "/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker"
   }
 }

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


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

@@ -3,9 +3,6 @@
 	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.config.json

@@ -8,7 +8,7 @@
     "urlCheck": false,
     "es6": true,
     "postcss": true,
-    "minified": true,
+    "minified": false,
     "newFeature": true,
     "bigPackageSizeSupport": true,
     "babelSetting": {

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


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


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.js


File diff suppressed because it is too large
+ 0 - 11
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js


+ 0 - 6
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.json

@@ -1,6 +0,0 @@
-{
-  "usingComponents": {
-    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons"
-  },
-  "component": true
-}

File diff suppressed because it is too large
+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxml


+ 0 - 157
unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxss

@@ -1,157 +0,0 @@
-@charset "UTF-8";
-/* 水平间距 */
-/* 水平间距 */
-@media screen and (max-width: 500px) {
-.hide-on-phone {
-    display: none;
-}
-}
-.uni-stat__select {
-  display: flex;
-  align-items: center;
-  cursor: pointer;
-  width: 100%;
-  flex: 1;
-  box-sizing: border-box;
-}
-.uni-stat-box {
-  width: 100%;
-  flex: 1;
-}
-.uni-stat__actived {
-  width: 100%;
-  flex: 1;
-}
-.uni-label-text {
-  font-size: 14px;
-  font-weight: bold;
-  color: #6a6a6a;
-  margin: auto 0;
-  margin-right: 5px;
-}
-.uni-select {
-  font-size: 14px;
-  border: 1px solid #e5e5e5;
-  box-sizing: border-box;
-  border-radius: 4px;
-  padding: 0 5px;
-  padding-left: 10px;
-  position: relative;
-  display: flex;
-  -webkit-user-select: none;
-          user-select: none;
-  flex-direction: row;
-  align-items: center;
-  border-bottom: solid 1px #e5e5e5;
-  width: 100%;
-  flex: 1;
-  height: 35px;
-}
-.uni-select__label {
-  font-size: 16px;
-  height: 35px;
-  padding-right: 10px;
-  color: #909399;
-}
-.uni-select__input-box {
-  position: relative;
-  display: flex;
-  flex: 1;
-  flex-direction: row;
-  align-items: center;
-}
-.uni-select__input {
-  flex: 1;
-  font-size: 14px;
-  height: 22px;
-  line-height: 22px;
-}
-.uni-select__input-plac {
-  font-size: 14px;
-  color: #909399;
-}
-.uni-select__selector {
-  box-sizing: border-box;
-  position: absolute;
-  top: calc(100% + 12px);
-  left: 0;
-  width: 100%;
-  background-color: #FFFFFF;
-  border: 1px solid #EBEEF5;
-  border-radius: 6px;
-  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
-  z-index: 2;
-  padding: 4px 0;
-}
-.uni-select__selector-scroll {
-  max-height: 200px;
-  box-sizing: border-box;
-}
-.uni-select__selector-empty,
-.uni-select__selector-item {
-  display: flex;
-  cursor: pointer;
-  line-height: 35px;
-  font-size: 14px;
-  text-align: center;
-  /* border-bottom: solid 1px $uni-border-3; */
-  padding: 0px 10px;
-}
-.uni-select__selector-item:hover {
-  background-color: #f9f9f9;
-}
-.uni-select__selector-empty:last-child,
-.uni-select__selector-item:last-child {
-  border-bottom: none;
-}
-.uni-select__selector__disabled {
-  opacity: 0.4;
-  cursor: default;
-}
-/* picker 弹出层通用的指示小三角 */
-.uni-popper__arrow,
-.uni-popper__arrow::after {
-  position: absolute;
-  display: block;
-  width: 0;
-  height: 0;
-  border-color: transparent;
-  border-style: solid;
-  border-width: 6px;
-}
-.uni-popper__arrow {
-  -webkit-filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.03));
-          filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.03));
-  top: -6px;
-  left: 10%;
-  margin-right: 3px;
-  border-top-width: 0;
-  border-bottom-color: #EBEEF5;
-}
-.uni-popper__arrow::after {
-  content: " ";
-  top: 1px;
-  margin-left: -6px;
-  border-top-width: 0;
-  border-bottom-color: #fff;
-}
-.uni-select__input-text {
-  width: 100%;
-  color: #3a3a3a;
-  white-space: nowrap;
-  text-overflow: ellipsis;
-  -o-text-overflow: ellipsis;
-  overflow: hidden;
-}
-.uni-select__input-placeholder {
-  color: #6a6a6a;
-  font-size: 12px;
-}
-.uni-select--mask {
-  position: fixed;
-  top: 0;
-  bottom: 0;
-  right: 0;
-  left: 0;
-}
-

File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar-item.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/time-picker.js


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker.js


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


File diff suppressed because it is too large
+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js


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


+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js


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