瀏覽代碼

no message

yanjie 4 年之前
父節點
當前提交
a3db1587a2
共有 100 個文件被更改,包括 1482 次插入316 次删除
  1. 0 0
      common/goeasy-im-1.3.1.js
  2. 248 0
      common/goeasyimutil.js
  3. 2 1
      common/user.js
  4. 63 0
      components/GoEasyAudioPlayer/GoEasyAudioPlayer.vue
  5. 二進制
      components/GoEasyAudioPlayer/images/play.gif
  6. 二進制
      components/GoEasyAudioPlayer/images/voice.png
  7. 0 1
      main.js
  8. 291 183
      pages.json
  9. 316 0
      pages/childcare/child_care.vue
  10. 27 0
      pages/childcare/child_careList.vue
  11. 190 40
      pages/common_tools/my_consulting/conversation.vue
  12. 2 1
      pages/common_tools/my_consulting/my_appointment.vue
  13. 7 2
      pages/index/index.vue
  14. 32 10
      pages/index/message.vue
  15. 12 1
      pages/index/mine.vue
  16. 63 25
      pages/login/login.vue
  17. 45 0
      pages/order/payment.vue
  18. 9 1
      pages/vaccines/mechanism.vue
  19. 18 2
      pages/vaccines/vaccinesList.vue
  20. 63 12
      pages/vaccines/vaccines_info.vue
  21. 35 13
      unpackage/dist/build/mp-weixin/app.json
  22. 0 0
      unpackage/dist/build/mp-weixin/common/runtime.js
  23. 0 0
      unpackage/dist/build/mp-weixin/common/vendor.js
  24. 10 0
      unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.js
  25. 4 0
      unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.json
  26. 1 0
      unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.wxml
  27. 0 0
      unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.wxss
  28. 2 2
      unpackage/dist/build/mp-weixin/components/uni-badge/uni-badge.json
  29. 2 2
      unpackage/dist/build/mp-weixin/components/uni-icons/uni-icons.json
  30. 2 2
      unpackage/dist/build/mp-weixin/components/uni-list/uni-list.json
  31. 2 2
      unpackage/dist/build/mp-weixin/components/watch-input.json
  32. 0 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_care.js
  33. 11 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_care.json
  34. 0 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_care.wxml
  35. 0 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_care.wxss
  36. 1 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_careList.js
  37. 4 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_careList.json
  38. 1 0
      unpackage/dist/build/mp-weixin/pages/childcare/child_careList.wxml
  39. 0 1
      unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/conversation.js
  40. 3 1
      unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/conversation.json
  41. 0 0
      unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/conversation.wxml
  42. 0 0
      unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/my_appointment.js
  43. 0 0
      unpackage/dist/build/mp-weixin/pages/index/editinfo.js
  44. 0 0
      unpackage/dist/build/mp-weixin/pages/index/editinfo.wxml
  45. 1 1
      unpackage/dist/build/mp-weixin/pages/index/editinfo.wxss
  46. 0 0
      unpackage/dist/build/mp-weixin/pages/index/editphone.js
  47. 0 0
      unpackage/dist/build/mp-weixin/pages/index/index.js
  48. 0 0
      unpackage/dist/build/mp-weixin/pages/index/index.wxml
  49. 0 0
      unpackage/dist/build/mp-weixin/pages/index/index.wxss
  50. 0 0
      unpackage/dist/build/mp-weixin/pages/index/message.js
  51. 2 1
      unpackage/dist/build/mp-weixin/pages/index/message.json
  52. 1 1
      unpackage/dist/build/mp-weixin/pages/index/message.wxml
  53. 0 0
      unpackage/dist/build/mp-weixin/pages/index/mine.js
  54. 0 0
      unpackage/dist/build/mp-weixin/pages/index/mine.wxml
  55. 0 0
      unpackage/dist/build/mp-weixin/pages/index/mine.wxss
  56. 0 0
      unpackage/dist/build/mp-weixin/pages/index/paypassword.js
  57. 1 1
      unpackage/dist/build/mp-weixin/pages/index/paypassword.wxml
  58. 0 0
      unpackage/dist/build/mp-weixin/pages/login/login.js
  59. 1 0
      unpackage/dist/build/mp-weixin/pages/login/login.json
  60. 0 0
      unpackage/dist/build/mp-weixin/pages/login/login.wxml
  61. 0 0
      unpackage/dist/build/mp-weixin/pages/order/payment.js
  62. 0 1
      unpackage/dist/build/mp-weixin/pages/personal/personal_information.js
  63. 0 1
      unpackage/dist/build/mp-weixin/pages/personal/personal_information.wxml
  64. 0 0
      unpackage/dist/build/mp-weixin/pages/personal/personal_information.wxss
  65. 0 0
      unpackage/dist/build/mp-weixin/pages/vaccines/mechanism.js
  66. 1 1
      unpackage/dist/build/mp-weixin/pages/vaccines/mechanism.wxml
  67. 0 0
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccinesList.js
  68. 2 1
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccinesList.json
  69. 0 0
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccinesList.wxml
  70. 0 0
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.js
  71. 1 0
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.json
  72. 0 0
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.wxml
  73. 0 0
      unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.wxss
  74. 2 2
      unpackage/dist/build/mp-weixin/uview-ui/components/u-cell-group/u-cell-group.json
  75. 2 2
      unpackage/dist/build/mp-weixin/uview-ui/components/u-cell-item/u-cell-item.json
  76. 2 2
      unpackage/dist/build/mp-weixin/uview-ui/components/u-mask/u-mask.json
  77. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  78. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  79. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  80. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.js.map
  81. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-badge/uni-badge.js.map
  82. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-icons/uni-icons.js.map
  83. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list-item/uni-list-item.js.map
  84. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list/uni-list.js.map
  85. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-button.js.map
  86. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-input.js.map
  87. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/archives/add_archives.js.map
  88. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/archives/archives_info.js.map
  89. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/archives/my_archives.js.map
  90. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/childcare/child_care.js.map
  91. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/childcare/child_careList.js.map
  92. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/collection/collection.js.map
  93. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/collection/collection_details.js.map
  94. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/help_feedback/help_feedback.js.map
  95. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/help_feedback/opinion1.js.map
  96. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/home_doctor.js.map
  97. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_evaluate.js.map
  98. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_follow.js.map
  99. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_order/me_order.js.map
  100. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_order/order_details.js.map

文件差異過大導致無法顯示
+ 0 - 0
common/goeasy-im-1.3.1.js


+ 248 - 0
common/goeasyimutil.js

xqd
@@ -0,0 +1,248 @@
+import GoEasyIM from '@/common/goeasy-im-1.3.1.js';
+
+function Friend(uuid, name, avatar) {
+	this.uuid = uuid;
+	this.name = name;
+	this.avatar = avatar;
+}
+
+
+function CurrentUser(uuid, name, avatar) {
+	this.uuid = uuid;
+	this.name = name;
+	this.avatar = avatar;
+}
+//初始化
+function IMService() {
+	this.im = GoEasyIM.getInstance({
+		host: 'hangzhou.goeasy.io', //应用所在的区域地址: [hangzhou.goeasy.io, 新加坡暂不支持IM,敬请期待]
+		appkey: "BC-eef530bc08134a22b2a58ec8f8da0b25"  
+		// appkey: "BC-f420edb1a2c24b97ad43a55299987a85"
+	});
+	console.log(this.im)
+	//当前“我”
+	this.currentUser = null;
+	//我的好友
+	this.friends = {};
+	//私聊消息记录,map格式,每个好友对应一个数组
+	this.privateMessages = {};
+	//收到一条私聊消息
+	this.onNewPrivateMessageReceive = function(friendId, message) {};
+	this.onConversationsUpdate = function(conversations) {};
+}
+
+IMService.prototype.login = function(user) {
+	console.log(user)
+	if (user) {
+		//初始化当前用户
+		this.currentUser = new CurrentUser(user.id, user.nickname, user.avatar);
+		return true;
+	} else {
+		return false;
+	}
+};
+IMService.prototype.getPrivateMessages = function(friendId) {
+	console.log(this.privateMessages)
+	if (!this.privateMessages[friendId]) {
+		this.privateMessages[friendId] = {
+			sentMessages: [],
+			pendingMessages: []
+		};
+	}
+	return this.privateMessages[friendId]
+};
+
+//连接GoEasy
+IMService.prototype.connectIM = function() {
+	this.initialIMListeners();
+	this.im.connect({
+		id: this.currentUser.uuid,
+		data: {
+			avatar: this.currentUser.avatar,
+			name: this.currentUser.name
+		}
+	}).then(() => {
+		console.log('connect成功')
+	}).catch(error => {
+		console.log('connect失败,请确保网络正常,appkey和host正确,code:' + error.code + " content:" + error.content);
+	});
+};
+IMService.prototype.initialIMListeners = function() {
+	this.im.on(GoEasyIM.EVENT.CONNECTED, () => {
+		console.log('连接成功.')
+	});
+
+	this.im.on(GoEasyIM.EVENT.DISCONNECTED, () => {
+		console.log('连接断开.')
+	});
+
+	this.im.on(GoEasyIM.EVENT.CONNECTING, (times) => {
+		console.log('连接中', times);
+	});
+
+	//监听会话列表
+	this.im.on(GoEasyIM.EVENT.CONVERSATIONS_UPDATED, (conversations) => {
+		this.conversations = conversations;
+		this.onConversationsUpdate(this.conversations)
+	});
+
+	//监听私聊消息
+	this.im.on(GoEasyIM.EVENT.PRIVATE_MESSAGE_RECEIVED, (message) => {
+		//更新私聊消息记录
+		let friendId;
+
+		if (this.currentUser.uuid == message.senderId) {
+			friendId = message.receiverId;
+		} else {
+			friendId = message.senderId;
+		}
+		removePrivatePendingMessage(this, friendId, message);
+		let friendMessages = this.getPrivateMessages(friendId);
+		friendMessages.sentMessages.push(message);
+		//如果页面传入了相应的listener,执行listener
+		this.onNewPrivateMessageReceive(friendId, message);
+	});
+};
+//加载单聊历史消息
+IMService.prototype.loadPrivateHistoryMessage = function(friendId, timeStamp) {
+	return new Promise((resolve, reject) => {
+		this.im.history({
+			friendId: friendId,
+			lastTimestamp: timeStamp
+		}).then(result => {
+			let history = result.content;
+			let privateMessages = this.getPrivateMessages(friendId);
+			let friendMessages = privateMessages.sentMessages;
+			for (let i = history.length - 1; i >= 0; i--) {
+				friendMessages.unshift(history[i])
+			}
+			resolve(friendMessages)
+		}).catch(error => {
+			if (error.code == 401) {
+				console.log("您尚未开通历史消息,请登录GoEasy,查看应用详情里自助启用.");
+			}
+			reject(error)
+		});
+	})
+};
+
+function removePrivatePendingMessage(imService, friendId, message) {
+	let privateMessages = imService.getPrivateMessages(friendId);
+	let pendingMessages = privateMessages.pendingMessages;
+	let pendingMessageIndex = pendingMessages.findIndex(item => item.messageId == message.messageId);
+	if (pendingMessageIndex > -1) {
+		pendingMessages.splice(pendingMessageIndex, 1);
+	}
+}
+//发送私聊消息
+IMService.prototype.sendPrivateTextMessage = function(friendId, text) {
+	let textMessage = this.im.createTextMessage({
+		text: text
+	});
+	this.sendPrivateMessage(friendId, textMessage);
+};
+
+//私聊图片消息
+IMService.prototype.sendPrivateImageMessage = function(friendId, imageFile) {
+	let imageMessage = this.im.createImageMessage({
+		file: imageFile,
+		onProgress: function(progress) {
+			console.log(progress)
+		}
+	});
+	this.sendPrivateMessage(friendId, imageMessage);
+};
+
+//私聊视频消息
+IMService.prototype.sendPrivateVideoMessage = function(friendId, videoFile) {
+	let videoMessage = this.im.createVideoMessage({
+		file: videoFile,
+		onProgress: function(progress) {
+			console.log(progress)
+		}
+	});
+	this.sendPrivateMessage(friendId, videoMessage);
+};
+
+IMService.prototype.sendPrivateAudioMessage = function(friendId, audiofile) {
+	let audioMessage = this.im.createAudioMessage({
+		file: audiofile,
+		onProgress: function(progress) {
+			console.log(progress)
+		}
+	});
+
+	this.sendPrivateMessage(friendId, audioMessage);
+};
+
+//发送私聊消息
+IMService.prototype.sendPrivateMessage = function(friendId, message) {
+	console.log(friendId, message)
+	//添加到消息中
+	let privateMessages = this.getPrivateMessages(friendId);
+	privateMessages.pendingMessages.push(message);
+
+	//发送
+	this.im.sendPrivateMessage(friendId, message)
+		.then((res) => {
+			console.log(res)
+		})
+		.catch(e => {
+			console.log(e)
+		})
+};
+
+IMService.prototype.markPrivateMessageAsRead = function(friendId) {
+	this.im.markPrivateMessageAsRead(friendId)
+		.then(res => {
+			console.log('标记为已读成功')
+		})
+		.catch(e => {
+			console.log(e)
+		})
+};
+
+IMService.prototype.disconnect = function() {
+	return this.im.disconnect()
+};
+
+IMService.prototype.latestConversations = function() {
+	let promise = this.im.latestConversations();
+	promise.then((conversations) => {
+		this.conversations = conversations
+	});
+	return promise
+};
+
+IMService.prototype.topPrivateConversation = function(userId, isTop) {
+	let promise = this.im.topPrivateConversation(userId, isTop);
+	promise.then(res => {
+		console.log(res)
+	}).catch(e => {
+		console.log(e)
+	});
+	return promise
+};
+
+IMService.prototype.removePrivateConversation = function(friendId) {
+	let promise = this.im.removePrivateConversation(friendId);
+	promise.then(res => {
+		console.log(res)
+	}).catch(e => {
+		console.log(e)
+	});
+	return promise
+};
+
+
+IMService.prototype.sendCustomMessage = function(id, type, options) {
+	let customMessage = this.im.createCustomMessage(options);
+	let promise = null;
+	if (type == 'private') {
+		promise = this.im.sendPrivateMessage(id, customMessage)
+	} else {
+		promise = this.im.sendGroupMessage(id, customMessage)
+	}
+	return promise
+};
+export default IMService;

+ 2 - 1
common/user.js

xqd
@@ -128,7 +128,8 @@ function checkLogin() {
 }
 
 function islogin(res) {
-	if (res.status == 401) {
+	console.log(res)
+	if (res.status != 0) {
 		uni.showModal({
 			title: "提示",
 			content: "暂未登录,请登录",

+ 63 - 0
components/GoEasyAudioPlayer/GoEasyAudioPlayer.vue

xqd
@@ -0,0 +1,63 @@
+<template>
+    <div class="goeasy-audio-player" @click="playAudio">
+        <div class="audio-facade" :style="{width:Math.ceil(duration)*7 + 50 + 'px'}">
+            <div class="audio-facade-bg" :class="{'play-icon':play}"> </div>
+            <div>{{Math.ceil(duration) || 1}}</div>
+        </div>
+    </div>
+</template>
+
+<script>
+    const innerAudioContext = uni.createInnerAudioContext();
+    export default {
+        name: "GoEasyAudioPlayer",
+        props : ['src', 'duration'],
+        data () {
+            return {
+                play : false
+            }
+        },
+        methods : {
+            playAudio () {
+                this.play = true;
+                innerAudioContext.src = this.src;
+                innerAudioContext.play();
+                setTimeout(() => {
+                    this.play = false;
+                }, this.duration*1000)
+            }
+        }
+    }
+</script>
+
+<style scoped>
+    .goeasy-audio-player{
+        margin-top: 12rpx;
+        -webkit-tap-highlight-color:rgba(0,0,0,0);
+    }
+    .audio-facade{
+        min-width: 20rpx;
+        padding: 6rpx 10rpx;
+        height: 72rpx;
+        background: #618DFF;
+        font-size: 24rpx;
+        border-radius: 14rpx;
+        color: #ffffff;
+        display: flex;
+		align-items: center;
+    }
+    .audio-facade-bg{
+        background: url("./images/voice.png") no-repeat center;
+        background-size: 30rpx;
+        width: 40rpx;
+		height: 100%;
+    }
+    .audio-facade-bg.play-icon{
+        background: url("./images/play.gif") no-repeat center;
+        background-size: 30rpx;
+        -moz-transform:rotate(180deg);
+        -webkit-transform:rotate(180deg);
+        -o-transform:rotate(180deg);
+        transform:rotate(180deg);
+    }
+</style>

二進制
components/GoEasyAudioPlayer/images/play.gif


二進制
components/GoEasyAudioPlayer/images/voice.png


+ 0 - 1
main.js

xqd
@@ -10,7 +10,6 @@ import uView from "uview-ui";
 Vue.use(uView);
 
 Vue.config.productionTip = false;
-
 //挂载全局对象
 //Vue.prototype.$store = store
 Vue.prototype.$request = request

+ 291 - 183
pages.json

xqd xqd xqd xqd xqd xqd
@@ -2,7 +2,8 @@
 	"easycom": {
 		"^u-(.*)": "@/uview-ui/components/u-$1/u-$1.vue"
 	},
-	"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
+	"pages": [
+		//pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
 		{
 			"path": "pages/index/index",
 			"style": {
@@ -10,35 +11,41 @@
 			}
 		},
 		{
-			"path": "pages/index/book",
-			"style": {
-				"navigationBarTitleText": "健康小课堂"
-			}
-		},
-		{
-			"path": "pages/index/mine",
-			"style": {
-				"navigationBarTitleText": "我的"
-			}
-		},
-		{
-			"path": "pages/doctor_related/select_doctor",
+			"path": "pages/login/login",
 			"style": {
-				"navigationBarTitleText": "找医生"
+				"navigationBarTitleText": "登录/注册"
 			}
 		},
 		{
-			"path": "pages/doctor_related/doctor_info",
+			"path": "pages/index/book",
 			"style": {
-				"navigationBarTitleText": "医生详情"
+				"navigationBarTitleText": "健康小课堂"
 			}
 		},
 		{
-			"path": "pages/doctor_related/info_write",
+			"path": "pages/index/mine",
 			"style": {
-				"navigationBarTitleText": "信息填写"
+				"navigationBarTitleText": "我的"
 			}
 		},
+		// {
+		// 	"path": "pages/doctor_related/select_doctor",
+		// 	"style": {
+		// 		"navigationBarTitleText": "找医生"
+		// 	}
+		// },
+		// {
+		// 	"path": "pages/doctor_related/doctor_info",
+		// 	"style": {
+		// 		"navigationBarTitleText": "医生详情"
+		// 	}
+		// },
+		// {
+		// 	"path": "pages/doctor_related/info_write",
+		// 	"style": {
+		// 		"navigationBarTitleText": "信息填写"
+		// 	}
+		// },
 		{
 			"path": "pages/archives/my_archives",
 			"style": {
@@ -51,12 +58,6 @@
 				"navigationBarTitleText": "添加档案"
 			}
 		},
-		{
-			"path": "pages/login/login",
-			"style": {
-				"navigationBarTitleText": "登录/注册"
-			}
-		},
 		/*		order文件夹	订单		*/
 		//付款
 		{
@@ -74,68 +75,68 @@
 		},
 		/*		service_packs文件夹	服务包	*/
 		//服务人信息
-		{
-			"path": "pages/service_packs/packs_information",
-			"style": {
-				"navigationBarTitleText": "购买服务包"
-			}
-		},
-		//服务包详情
-		{
-			"path": "pages/service_packs/packs_details",
-			"style": {
-				"navigationBarTitleText": "服务包详情"
-			}
-		},
-		//选购
-		{
-			"path": "pages/service_packs/choicepacks",
-			"style": {
-				"navigationBarTitleText": "服务包"
-			}
-		},
-		//介绍页
-		{
-			"path": "pages/service_packs/introduce",
-			"style": {
-				"navigationBarTitleText": "服务包"
-			}
-		},
+		// {
+		// 	"path": "pages/service_packs/packs_information",
+		// 	"style": {
+		// 		"navigationBarTitleText": "购买服务包"
+		// 	}
+		// },
+		// //服务包详情
+		// {
+		// 	"path": "pages/service_packs/packs_details",
+		// 	"style": {
+		// 		"navigationBarTitleText": "服务包详情"
+		// 	}
+		// },
+		// //选购
+		// {
+		// 	"path": "pages/service_packs/choicepacks",
+		// 	"style": {
+		// 		"navigationBarTitleText": "服务包"
+		// 	}
+		// },
+		// //介绍页
+		// {
+		// 	"path": "pages/service_packs/introduce",
+		// 	"style": {
+		// 		"navigationBarTitleText": "服务包"
+		// 	}
+		// },
 		/*		personal文件夹		个人中心	*/
 		//个人信息
-		{
-			"path": "pages/personal/personal_information",
-			"style": {
-				"navigationBarTitleText": "余额"
-			}
-		},
-		{
-			"path": "pages/personal/balance_info",
-			"style": {
-				"navigationBarTitleText": "余额明细"
-			}
-		},
-		{
-			"path": "pages/personal/recharge",
-			"style": {
-				"navigationBarTitleText": "充值"
-			}
-		},
-		/*	coupon文件夹		优惠券*/
-		//优惠券
-		{
-			"path": "pages/personal/coupon/coupon",
-			"style": {
-				"navigationBarTitleText": "优惠券"
-			}
-		},
-		//优惠券详情
-		{
-			"path": "pages/personal/coupon/coupon_details",
-			"style": {
-				"navigationBarTitleText": "优惠券详情"
-			}
-		},
+		// {
+		// 	"path": "pages/personal/personal_information",
+		// 	"style": {
+		// 		"navigationBarTitleText": "余额"
+		// 	}
+		// },
+		// {
+		// 	"path": "pages/personal/balance_info",
+		// 	"style": {
+		// 		"navigationBarTitleText": "余额明细"
+		// 	}
+		// },
+		// {
+		// 	"path": "pages/personal/recharge",
+		// 	"style": {
+		// 		"navigationBarTitleText": "充值"
+		// 	}
+		// },
+		// /*	coupon文件夹		优惠券*/
+		// //优惠券
+		// {
+		// 	"path": "pages/personal/coupon/coupon",
+		// 	"style": {
+		// 		"navigationBarTitleText": "优惠券"
+		// 	}
+		// },
+		// //优惠券详情
+		// {
+		// 	"path": "pages/personal/coupon/coupon_details",
+		// 	"style": {
+		// 		"navigationBarTitleText": "优惠券详情"
+		// 	}
+		// },
 		/*		common_tools文件夹		常用工具*/
 		/*****help_feedback帮助和卡反馈文件夹*****/
 		//帮助和卡反馈
@@ -303,108 +304,215 @@
 		"backgroundColor": "#F8F8F8"
 	},
 	"subPackages": [{
-		"root": "pages/common_tools",
-		"pages": [{
-				"path": "my_consulting/opinionInfo",
-				"style": {
-					"navigationBarTitleText": "意见单"
-				}
-			}, {
-				"path": "my_consulting/my_opinion",
-				"style": {
-					"navigationBarTitleText": "我的意见单"
-				}
-			},
-			{
-				"path": "my_consulting/my_appointment",
-				"style": {
-					"navigationBarTitleText": "我的预约"
-				}
-			}, {
-				"path": "my_consulting/conversation",
-				"style": {
-					"navigationBarTitleText": "会话窗口"
-				}
-			},
-			{
-				"path": "my_consulting/consultingInfo",
-				"style": {
-					"navigationBarTitleText": "咨询详情"
-				}
-			},
-			{
-				"path": "my_consulting/my_consulting",
-				"style": {
-					"navigationBarTitleText": "我的咨询"
-				}
-			},
-			{
-				"path": "help_feedback/help_feedback",
-				"style": {
-					"navigationBarTitleText": "帮助与反馈"
-				}
-			},
-			//意见反馈1
-			{
-				"path": "help_feedback/opinion1",
-				"style": {
-					"navigationBarTitleText": "意见反馈"
-				}
-			},
-			/*****collection收藏文章文件夹*****/
-			// 收藏文章
-			{
-				"path": "collection/collection",
-				"style": {
-					"navigationBarTitleText": "收藏文章"
-				}
-			},
-			//文章详情
-			{
-				"path": "collection/collection_details",
-				"style": {
-					"navigationBarTitleText": "文章标题"
-				}
-			},
-			/*****me_order我的保单文件夹*****/
-			//我的保单
-			{
-				"path": "me_order/me_order",
-				"style": {
-					"navigationBarTitleText": "我的保单"
+			"root": "pages/common_tools",
+			"pages": [{
+					"path": "my_consulting/opinionInfo",
+					"style": {
+						"navigationBarTitleText": "意见单"
+					}
+				}, {
+					"path": "my_consulting/my_opinion",
+					"style": {
+						"navigationBarTitleText": "我的意见单"
+					}
+				},
+				{
+					"path": "my_consulting/my_appointment",
+					"style": {
+						"navigationBarTitleText": "我的预约"
+					}
+				}, {
+					"path": "my_consulting/conversation",
+					"style": {
+						"navigationBarTitleText": "会话窗口"
+					}
+				},
+				{
+					"path": "my_consulting/consultingInfo",
+					"style": {
+						"navigationBarTitleText": "咨询详情"
+					}
+				},
+				{
+					"path": "my_consulting/my_consulting",
+					"style": {
+						"navigationBarTitleText": "我的咨询"
+					}
+				},
+				{
+					"path": "help_feedback/help_feedback",
+					"style": {
+						"navigationBarTitleText": "帮助与反馈"
+					}
+				},
+				//意见反馈1
+				{
+					"path": "help_feedback/opinion1",
+					"style": {
+						"navigationBarTitleText": "意见反馈"
+					}
+				},
+				/*****collection收藏文章文件夹*****/
+				// 收藏文章
+				{
+					"path": "collection/collection",
+					"style": {
+						"navigationBarTitleText": "收藏文章"
+					}
+				},
+				//文章详情
+				{
+					"path": "collection/collection_details",
+					"style": {
+						"navigationBarTitleText": "文章标题"
+					}
+				},
+				/*****me_order我的保单文件夹*****/
+				//我的保单
+				{
+					"path": "me_order/me_order",
+					"style": {
+						"navigationBarTitleText": "我的保单"
+					}
+				},
+				//保单详情
+				{
+					"path": "me_order/order_details",
+					"style": {
+						"navigationBarTitleText": "保单详情"
+					}
+				},
+
+				//家庭医生
+				{
+					"path": "home_doctor",
+					"style": {
+						"navigationBarTitleText": "家庭医生"
+					}
+				},
+				//我的关注
+				{
+					"path": "me_follow",
+					"style": {
+						"navigationBarTitleText": "我的关注"
+					}
+				},
+				//我的评价
+				{
+					"path": "me_evaluate",
+					"style": {
+						"navigationBarTitleText": "我的评价"
+					}
 				}
-			},
-			//保单详情
-			{
-				"path": "me_order/order_details",
-				"style": {
-					"navigationBarTitleText": "保单详情"
+			]
+		},
+		{
+			"root": "pages/childcare",
+			"pages": [{
+					"path": "child_care",
+					"style": {
+						"navigationBarTitleText": "儿保信息"
+					}
+				},
+				{
+					"path": "child_careList",
+					"style": {
+						"navigationBarTitleText": "儿保项目"
+					}
 				}
-			},
-			
-			//家庭医生
-			{
-				"path": "home_doctor",
-				"style": {
-					"navigationBarTitleText": "家庭医生"
+			]
+		},
+		{
+			"root": "pages/doctor_related",
+			"pages": [{
+					"path": "select_doctor",
+					"style": {
+						"navigationBarTitleText": "找医生"
+					}
+				},
+				{
+					"path": "doctor_info",
+					"style": {
+						"navigationBarTitleText": "医生详情"
+					}
+				},
+				{
+					"path": "info_write",
+					"style": {
+						"navigationBarTitleText": "信息填写"
+					}
 				}
-			},
-			//我的关注
-			{
-				"path": "me_follow",
-				"style": {
-					"navigationBarTitleText": "我的关注"
+			]
+		},
+		{
+			"root": "pages/personal",
+			"pages": [{
+					"path": "personal_information",
+					"style": {
+						"navigationBarTitleText": "余额"
+					}
+				},
+				{
+					"path": "balance_info",
+					"style": {
+						"navigationBarTitleText": "余额明细"
+					}
+				},
+				{
+					"path": "recharge",
+					"style": {
+						"navigationBarTitleText": "充值"
+					}
+				},
+				/*	coupon文件夹		优惠券*/
+				//优惠券
+				{
+					"path": "coupon/coupon",
+					"style": {
+						"navigationBarTitleText": "优惠券"
+					}
+				},
+				//优惠券详情
+				{
+					"path": "coupon/coupon_details",
+					"style": {
+						"navigationBarTitleText": "优惠券详情"
+					}
 				}
-			},
-			//我的评价
-			{
-				"path": "me_evaluate",
-				"style": {
-					"navigationBarTitleText": "我的评价"
+			]
+		},
+		{
+			"root": "pages/service_packs",
+			"pages": [{
+					"path": "packs_information",
+					"style": {
+						"navigationBarTitleText": "购买服务包"
+					}
+				},
+				//服务包详情
+				{
+					"path": "packs_details",
+					"style": {
+						"navigationBarTitleText": "服务包详情"
+					}
+				},
+				//选购
+				{
+					"path": "choicepacks",
+					"style": {
+						"navigationBarTitleText": "服务包"
+					}
+				},
+				//介绍页
+				{
+					"path": "introduce",
+					"style": {
+						"navigationBarTitleText": "服务包"
+					}
 				}
-			}
-		]
-	}],
+			]
+		}
+	],
 	"tabBar": {
 		"color": "#C0C4CC", //未选中的菜单文字颜色
 		"selectedColor": "#0B73B9", //选中时的菜单文字颜色
@@ -435,7 +543,7 @@
 		"current": 0,
 		"list": [{
 			"name": "工具",
-			"path": "pages/personal/personal_information" //我的
+			"path": "pages/login/login" //我的
 			// "path": "pages/service_packs/introduce"//服务包
 		}]
 	}

+ 316 - 0
pages/childcare/child_care.vue

xqd
@@ -0,0 +1,316 @@
+<template>
+	<view class="">
+		<view class="cu-list menu">
+			<view class="cu-item arrow" @click="showpeople=true">
+				<view class="content">
+					<text class="text-grey">接种用户</text>
+				</view>
+				<view class="action">
+					<text class="text-grey text-sm">{{value}}</text>
+				</view>
+			</view>
+			<view class="cu-item arrow" @click="vaccinesList">
+				<view class="content">
+					<text class="text-grey">儿保项目</text>
+				</view>
+				<view class="action">
+					<text class="text-grey text-sm">{{yimiao}}</text>
+				</view>
+			</view>
+			<view class="cu-item arrow" @click="yuyuetime">
+				<view class="content">
+					<text class="text-grey">预约时间</text>
+				</view>
+				<view class="action">
+					<text class="text-grey text-sm">{{yuyuevalue}}</text>
+				</view>
+			</view>
+			<view class="cu-item arrow" @click="xuanzefuwu">
+				<view class="content">
+					<text class="text-grey">服务机构</text>
+				</view>
+				<view class="action">
+					<text class="text-grey text-sm">{{servicejigou}}</text>
+				</view>
+			</view>
+		</view>
+		<view class="padding-sm bg-white" v-if="doctor.docter.length!=0">
+			<scroll-view scroll-x="true">
+				<view class="flex flex-direction align-center justify-center" @click="gotodoctorinfo(item.id)" style="width: 120rpx;"
+				 v-for="(item,index) in doctor.docter" :key="index">
+					<u-avatar :src="item.avatar" mode="circle"></u-avatar>
+					<view class="">
+						{{item.name}}
+					</view>
+				</view>
+			</scroll-view>
+		</view>
+		<u-picker mode="multiSelector" @confirm="callbacktime" v-model="show" :default-selector='[0, 1]' range-key="start_time_period"
+		 :range="multiSelector"></u-picker>
+		<u-popup v-model="showpeople" mode="bottom" border-radius="14" length="50%">
+			<view class="popup_title">
+				<view class="popup_title_text">选择就诊人</view>
+			</view>
+			<scroll-view style="height: 70%;" scroll-y="true">
+				<view class="popup_list" v-for="(item, index) in patientList" :key="index" :data-index="index" @click="xuanzehuanzhe(item)">
+					<view class="popup_list_title">
+						<view class="title">{{item.name}}</view>
+						<view class="body">
+							{{item.sex==1?'男':'女'}}
+						</view>
+					</view>
+					<view class="popup_list_button flex align-center">
+						<u-radio-group v-model="value">
+							<u-radio @change="peopleRadioChange" :key="index" :name="item.name">
+							</u-radio>
+						</u-radio-group>
+					</view>
+				</view>
+			</scroll-view>
+			<u-gap height="10" bg-color="#f9f9f9"></u-gap>
+			<view class="popup_button">
+				<image style="width: 32rpx;height: 32rpx;margin-right: 15rpx;" src="https://zhengda.oss-cn-chengdu.aliyuncs.com/baoma/static/img/addjiu.png"
+				 mode=""></image>
+				<view class="" @click="addPeople">
+					添加就诊人档案
+				</view>
+			</view>
+		</u-popup>
+		<view class="cu-bar bg-white tabbar" style="position: fixed;bottom: 0;width: 100%;">
+			<view class="submit" style="background-color: #0B73B9;color: white;" @click="gotopay">
+				提交申请
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		onLoad() {
+			this.getarchives()
+			this.gettime()
+		},
+		onShow() {
+			if (this.doctor != null) {
+				this.servicejigou = this.doctor.name
+				this.jigouID = this.doctor.id
+			}
+			if (this.yimiaoInfo != null) {
+				this.yimiao = this.yimiaoInfo.name
+			}
+		},
+		data() {
+			return {
+				showpeople: false,
+				huanzheID: "",
+				value: "请选择接种用户",
+				patientList: [],
+				show: false,
+				yuyuevalue: "请选择预约时间",
+				multiSelector: [],
+				timehour: "",
+				doctor: {},
+				servicejigou: "请选择服务机构",
+				jigouID: "",
+				yimiao: "请选择儿保项目",
+				yimiaoInfo: {},
+				time: ""
+			}
+		},
+		methods: {
+			// 选中某个单选框时,由radio时触发
+			peopleRadioChange(e) {
+				console.log(e);
+			},
+			xuanzehuanzhe(item) {
+				this.huanzheID = item.id
+				this.value = item.name
+				this.showpeople = false
+			},
+			getarchives: async function() {
+				let res = await this.$request.post("/api/v1/patient/patientList")
+				if (res.status == 0) {
+					this.patientList = res.data.data
+				}
+			},
+			gettime: async function() {
+				let res = await this.$request.post("/api/v1/docter/timePeriodList")
+				console.log(res)
+				if (res.status == 0) {
+					res.data.list.forEach(item => {
+						item.start_time_period = item.start_time_period + '-' + item.end_time_period
+					})
+					this.multiSelector.push(res.data.dates)
+					this.multiSelector.push(res.data.list)
+				}
+			},
+			callbacktime(arr) {
+				this.timehour = this.multiSelector[1][arr[1]].id
+				this.yuyuevalue = this.multiSelector[0][arr[0]] + " " + this.multiSelector[1][arr[1]].start_time_period
+				this.time = new Date().getFullYear() + "-" + this.multiSelector[0][arr[0]]
+			},
+			//添加就诊人
+			addPeople(e) {
+				uni.navigateTo({
+					url: "../archives/add_archives"
+				})
+			},
+			xuanzefuwu() {
+				uni.navigateTo({
+					url: "../vaccines/mechanism"
+				})
+			},
+			vaccinesList() {
+				uni.navigateTo({
+					url: "child_careList"
+				})
+			},
+			yuyuetime() {
+				this.show = true
+			},
+			gotopay() {
+				if (this.yimiaoInfo != null && this.doctor != null && this.huanzheID != "" && this.timehour != "") {
+					let obj = {
+						product_type: 5,
+						patient_id: this.huanzheID,
+						total_amount: this.yimiaoInfo.price / 100,
+						organization_id: this.doctor.id,
+						schedule_date: this.time,
+						time_period_id: this.timehour,
+						vaccine_id: this.yimiaoInfo.id,
+						payment_type: 2
+					}
+					uni.navigateTo({
+						url: "../order/payment?data=" + JSON.stringify(obj)
+					})
+				} else {
+					uni.showToast({
+						title: "请填写完整",
+						icon: "none"
+					})
+				}
+			},
+			gotodoctorinfo(id) {
+				uni.navigateTo({
+					url: "../doctor_related/doctor_info?id=" + id
+				})
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.main {}
+
+	.popup_title {
+		height: 15%;
+		width: 100%;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		border-bottom: 1rpx solid #f9f9f9;
+	}
+
+	.textareasty {
+		background-color: white;
+		border: 1px solid #efefef;
+		border-radius: 16rpx;
+		padding: 15rpx;
+		margin: 15rpx auto;
+	}
+
+	.popup_title_text {
+		width: auto;
+		height: auto;
+		font-size: 34rpx;
+		font-weight: 540;
+	}
+
+	.popup_list {
+		display: flex;
+		height: 10vh;
+		width: auto;
+		border-bottom: 1rpx solid #f9f9f9;
+	}
+
+	.popup_list_title {
+		height: 100%;
+		width: 90%;
+		display: inline-block;
+		padding: 0 0 0 30rpx;
+
+		.title {
+			height: 50%;
+			width: auto;
+			font-size: 32rpx;
+			font-weight: 500;
+			padding: 20rpx 0 0 0;
+		}
+
+		.body {
+			height: 50%;
+			color: #a1a1a1;
+			height: auto;
+			width: auto;
+			font-size: 30rpx;
+			padding: 10rpx 0 0 0;
+		}
+	}
+
+	.popup_button {
+		height: 80rpx;
+		width: 100%;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+
+		view {
+			color: #0b73ba;
+			font-weight: 500;
+		}
+	}
+
+	/**选择号码的样式和选择患者不同
+	需要更改样式*/
+	.phone {
+		height: 20%;
+		width: 100%;
+
+		.list {
+			height: 100%;
+			width: 100%;
+			display: flex;
+			padding: 0 10rpx 0 30rpx;
+
+
+			.title {
+				height: 100%;
+				width: 65%;
+				font-size: 32rpx;
+				color: #7d7d7d;
+				display: flex;
+
+				align-items: center;
+			}
+
+			.phone {
+				height: 100%;
+				width: 30%;
+				font-size: 32rpx;
+				font-weight: 500;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+			}
+
+			.button {
+				height: 100%;
+				width: 5%;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+			}
+
+		}
+	}
+</style>

+ 27 - 0
pages/childcare/child_careList.vue

xqd
@@ -0,0 +1,27 @@
+<template>
+	<view class="main">
+
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+
+			};
+		},
+		onReachBottom() {
+
+		},
+		methods: {
+
+		},
+		onShow() {
+
+		}
+	};
+</script>
+<style scoped lang="scss">
+
+</style>

+ 190 - 40
pages/common_tools/my_consulting/conversation.vue

xqd xqd xqd
@@ -1,69 +1,98 @@
 <template>
 	<view class="main">
-		<view class="cu-chat">
-			<view class="cu-item self">
-				<view class="main">
+		<view class="cu-chat" v-for="(item,index) in messages" :key="index">
+			<view class="cu-item self" v-if="item.receiverId!=currentUser.uuid">
+				<view class="main" v-if="item.type=='text'">
 					<view class="content bg-green shadow">
-						<text>喵喵喵!喵喵喵!喵喵喵!喵喵!喵喵!!喵!喵喵喵!</text>
+						<text>{{item.payload.text}}</text>
 					</view>
 				</view>
-				<view class="cu-avatar radius" style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big107000.jpg);"></view>
-			</view>
-			<view class="cu-item">
-				<view class="cu-avatar radius" style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big143004.jpg);"></view>
-				<view class="main">
-					<view class="content shadow">
-						<text>喵喵喵!喵喵喵!</text>
-					</view>
-				</view>
-			</view>
-			<view class="cu-item self">
-				<view class="main">
-					<image src="https://ossweb-img.qq.com/images/lol/web201310/skin/big10006.jpg" class="radius" mode="widthFix"></image>
+				<view class="main" v-else-if="item.type =='image'">
+					<image :src="item.payload.url" @click="yulan(item.payload.url)" :style="'width:'+item.payload.width+'rpx;height'+item.payload.height+'rpx;'"
+					 class="radius" mode="widthFix"></image>
 				</view>
-				<view class="cu-avatar radius" style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big107000.jpg);"></view>
-			</view>
-			<view class="cu-item self">
-				<view class="main">
-					<view class="action text-bold text-grey">
-						3"
-					</view>
-					<view class="content shadow">
-						<text class="cuIcon-sound text-xxl padding-right-xl"> </text>
-					</view>
+				<view class="main" v-else="item.type =='audio'">
+					<GoEasyAudioPlayer :src="item.payload.url" :duration="item.payload.duration" />
 				</view>
-				<view class="cu-avatar radius" style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big107000.jpg);"></view>
+				<view class="cu-avatar radius" :style="'background-image:url('+currentUser.avatar+');'"></view>
 			</view>
-			<view class="cu-item">
+			<view class="cu-item" v-else>
 				<view class="cu-avatar radius" style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big143004.jpg);"></view>
-				<view class="main">
+				<view class="main" v-if="item.type=='text'">
 					<view class="content shadow">
-						xxxxxxs
+						<text>{{item.payload.text}}</text>
 					</view>
 				</view>
+				<view class="main" v-else-if="item.type =='image'">
+					<image :src="item.payload.url" @click="yulan(item.payload.url)" :style="'width:'+item.payload.width+'rpx;height'+item.payload.height+'rpx;'"
+					 class="radius" mode="widthFix"></image>
+				</view>
+				<view class="main" v-else="item.type =='audio'">
+					<GoEasyAudioPlayer :src="item.payload.url" :duration="item.payload.duration" />
+				</view>
 			</view>
 		</view>
-		<view :class="InputBottom!=0?'cu-bar foot input cur':'cu-bar foot input'" :style="'bottom:'+InputBottom+'px'">
+		<view :class="InputBottom!=0?'cu-bar foot tab input cur':'cu-bar foot input'" :style="'bottom:'+InputBottom+'px'">
 			<view class="action" @click="sendvoice">
 				<text class="cuIcon-sound text-grey"></text>
 			</view>
-			<input v-if="!isvoice" class="solid-bottom" @focus="InputFocus" @blur="InputBlur" :disabled="isinput" :adjust-position="false"
-			 :focus="false" maxlength="300" :placeholder="textinput" cursor-spacing="10"></input>
-			<button class="flex-sub" style="font-size: 30rpx; height: 64rpx;padding: 0;" v-else>按住发送语音</button>
-			<view class="action" style="margin-right: 20rpx;">
+			<input v-if="!isvoice" v-model="keyword" class="solid-bottom" @focus="InputFocus" @blur="InputBlur" :disabled="isinput"
+			 :adjust-position="false" :focus="false" maxlength="300" :placeholder="textinput" cursor-spacing="10"></input>
+			<button class="flex-sub" style="font-size: 30rpx; height: 64rpx;padding: 0;" @touchstart.stop="onRecordStart"
+			 @touchend.stop="onRecordEnd" v-else>{{audio.recording ? '松开发送':'按住发送语音'}}</button>
+			<view class="action" style="margin-right: 20rpx;" @click="sendImage">
 				<text class="cuIcon-picfill text-grey"></text>
 			</view>
-			<button class="cu-btn bg-green shadow">发送</button>
+			<button class="cu-btn bg-green shadow" @click="sendMessage">发送</button>
 		</view>
 	</view>
 </template>
 
 <script>
+	import {
+		sendMessages
+	} from "../../../common/goeasyimutil.js"
+	import GoEasyAudioPlayer from "../../../components/GoEasyAudioPlayer/GoEasyAudioPlayer";
+	import IMService from "../../../common/goeasyimutil.js";
+	const recorderManager = uni.getRecorderManager()
+	import store from '@/store'
 	export default {
 		components: {
-
+			GoEasyAudioPlayer
 		},
 		onLoad() {
+			getApp().globalData.imService = new IMService();
+			let loginResult = getApp().globalData.imService.login(store.getters['getusers']);
+			if (loginResult) {
+				//连接IM
+				getApp().globalData.imService.connectIM();
+			}
+			this.imService = getApp().globalData.imService;
+			//对话数据
+			this.friend = {
+				uuid: "8",
+				name: "勇敢的心",
+				avatar: "xxxxxxxx"
+			};
+			this.currentUser = this.imService.currentUser;
+			let privateMessages = this.imService.getPrivateMessages(this.friend.uuid);
+			this.messages = privateMessages.sentMessages;
+			this.pendingMessages = privateMessages.pendingMessages;
+			uni.setNavigationBarTitle({
+				title: this.friend.name
+			});
+
+			this.initialListeners();
+
+
+			//每次进入聊天页面,总是滚动到底部
+			this.scrollToBottom()
+
+
+			//收到的消息设置为已读
+			if (this.messages.length != 0) {
+				this.imService.markPrivateMessageAsRead(this.friend.uuid);
+			}
 
 		},
 		mounted() {
@@ -75,7 +104,25 @@
 				InputBottom: 0,
 				isvoice: false,
 				textinput: "请输入",
-				isinput: false
+				isinput: false,
+				messages: [],
+				self_messages: [],
+				friend: null,
+				currentUser: null,
+				imService: null,
+				audio: {
+					//语音录音中
+					recording: false,
+				},
+			}
+		},
+		onPullDownRefresh: function(e) {
+			this.loadMoreHistoryMessage();
+		},
+		onUnload() {
+			//退出聊天页面之前,清空页面传入的监听器
+			if (this.imService) {
+				this.imService.onNewPrivateMessageReceive = (friendId, message) => {};
 			}
 		},
 		methods: {
@@ -87,7 +134,110 @@
 			},
 			sendvoice() {
 				this.isvoice = !this.isvoice
-			}
+			},
+			subscribeMessage() { //订阅消息
+
+			},
+			yulan(url) {
+				uni.previewImage({
+					urls: [url],
+					current: url
+				})
+			},
+			initialListeners() {
+				//传入监听器,收到一条私聊消息总是滚到到页面底部
+				this.imService.onNewPrivateMessageReceive = (friendId, message) => {
+					if (friendId == this.friend.uuid) {
+						this.imService.markPrivateMessageAsRead(friendId);
+						//收到新消息,是滚动到最底部
+						this.scrollToBottom()
+					}
+				};
+				// 录音监听器
+				this.initRecorderListeners();
+			},
+			initRecorderListeners() {
+				let self = this;
+				// 监听录音开始
+				recorderManager.onStart(function() {
+					self.audio.recording = true;
+				});
+
+				//录音结束后,发送
+				recorderManager.onStop(function(res) {
+					console.log(res)
+					self.audio.recording = false;
+					self.imService.sendPrivateAudioMessage(self.friend.uuid, res)
+				});
+
+				// 监听录音报错
+				recorderManager.onError(function(res) {
+					console.log("录音报错:", res);
+				})
+			},
+			onRecordStart(event) {
+				try {
+					recorderManager.start();
+				} catch (e) {
+					uni.showModal({
+						title: '发送语音错误',
+						content: '请联系客服'
+					});
+				}
+				event.preventDefault();
+			},
+			onRecordEnd() {
+				try {
+					recorderManager.stop();
+				} catch (e) {
+					uni.showModal({
+						title: '发送语音错误',
+						content: '请联系客服'
+					});
+				}
+			},
+			sendMessage() { //发送消息
+				if (this.keyword.trim() != '') {
+					console.log(this.friend.uuid)
+					this.imService.sendPrivateTextMessage(this.friend.uuid, this.keyword);
+				}
+				this.keyword = "";
+			},
+			scrollToBottom() {
+				this.$nextTick(function() {
+					uni.pageScrollTo({
+						scrollTop: 2000000,
+						duration: 10
+					})
+				})
+			},
+			sendImage() {
+				uni.chooseImage({
+					count: 1,
+					success: (res) => {
+						this.imService.sendPrivateImageMessage(this.friend.uuid, res);
+					}
+				})
+			},
+			loadMoreHistoryMessage() { //历史消息
+				let lastMessageTimeStamp = Date.now();
+				let lastMessage = this.messages[0];
+				if (lastMessage) {
+					lastMessageTimeStamp = lastMessage.timestamp;
+				}
+				var currentLength = this.messages.length;
+				let promise = this.imService.loadPrivateHistoryMessage(this.friend.uuid, lastMessageTimeStamp);
+				promise.then(messages => {
+					if (messages.length == currentLength) {
+						this.allHistoryLoaded = true
+					}
+					this.messages = messages;
+					uni.stopPullDownRefresh();
+				}).catch(e => {
+					console.log(e)
+					uni.stopPullDownRefresh();
+				})
+			},
 		}
 	};
 </script>

+ 2 - 1
pages/common_tools/my_consulting/my_appointment.vue

xqd
@@ -139,11 +139,12 @@
 			getordersList: async function() {
 				let res = await this.$request.post("/api/v1/order/orderList", {
 					page: this.pageindex,
-					list_type: 3,
+					list_type: 2,
 					product_type: this.value1,
 					order_status: this.value2,
 					time_sort: this.value3
 				})
+				console.log(this.value1)
 				if (res.status == 0) {
 					this.ordersList = this.ordersList.concat(res.data.data)
 				}

+ 7 - 2
pages/index/index.vue

xqd xqd xqd
@@ -40,7 +40,7 @@
 						<view class="grid-text">疫苗接种</view>
 					</u-grid-item>
 				</view>
-				<view class="">
+				<view class="" @click="childcare">
 					<u-grid-item>
 						<u-image width="120rpx" height="120rpx" src="https://zhengda.oss-cn-chengdu.aliyuncs.com/baoma/static/toolimg/indexerbao.png"
 						 shape="circle"></u-image>
@@ -143,7 +143,7 @@
 				</swiper>
 			</view>
 		</view>
-		<view class="tltleStyle" @click="gototest">
+		<view class="tltleStyle">
 			<u-section title="推荐医生" font-size="40" line-color="#0B73BA" :bold="true" :right="false"></u-section>
 		</view>
 		<view style="width: 100%;">
@@ -352,6 +352,11 @@
 					url: "../doctor_related/select_doctor?value=" + value
 				})
 			},
+			childcare(){
+				uni.navigateTo({
+					url:"../childcare/child_care"
+				})
+			},
 			vaccines() {
 				uni.navigateTo({
 					url: "../vaccines/vaccines_info"

+ 32 - 10
pages/index/message.vue

xqd xqd
@@ -1,20 +1,24 @@
 <template>
 	<view class="main">
 		<view class="padding-lr">
-			<view v-for="(item,index) in 4" :key="index" class="padding-lr-sm padding-tb-sm bg-white margin-top-sm" style="border-radius: 16rpx;box-shadow: 0 0 50rpx 0 rgba(0, 0, 0, 0.1);">
+			<view v-for="(item,index) in messageList" @click="gotoliaotian" :key="index" class="padding-lr-sm padding-tb-sm bg-white margin-top-sm"
+			 style="border-radius: 16rpx;box-shadow: 0 0 50rpx 0 rgba(0, 0, 0, 0.1);">
 				<view class="flex justify-start align-center">
 					<u-icon name="order"></u-icon>
-					<text class="text-lg margin-left-xs">订单通知</text>
-					<text class="flex-sub text-right">10:10</text>
+					<text class="text-lg margin-left-xs">{{item.type}}</text>
+					<text class="flex-sub text-right">{{item.create_time}}</text>
 				</view>
-				<view class="margin-top-sm">
-					您接到一个新的图文咨询订单,请尽快确认 (点击查看订单详情)
+				<view class="margin-top-sm text-cut">
+					{{item.content}}
 				</view>
 				<view class="text-right" style="position: relative">
-					<u-badge size="mini" :absolute="false" type="error" :is-dot="true"></u-badge><text class="margin-left-xs">未读</text>
+					<u-badge size="mini" :absolute="false" type="error" v-if="item.status==1" :is-dot="true"></u-badge>
+					<text class="margin-left-xs" v-if="item.status==1">未读</text>
+					<text class="margin-left-xs" v-if="item.status==2">已读</text>
 				</view>
 			</view>
 		</view>
+		<u-empty text="暂无数据" mode="order" :show="show" margin-top="250"></u-empty>
 		<view class="cu-tabbar-height"></view>
 		<view class="cu-tabbar-height"></view>
 	</view>
@@ -26,16 +30,34 @@
 
 		},
 		mounted() {
-
+			this.getMessage()
 		},
 		data() {
 			return {
-
+				messageList: [],
+				pageindex: 1,
+				show: false
 			}
 		},
 		methods: {
-			getMessage:async function(){
-				let res = await this.$request.post("")
+			getMessage: async function() {
+				let res = await this.$request.post("/api/v1/user/userMessageList", {
+					page: this.pageindex
+				})
+				console.log(res)
+				if (res.status == 0) {
+					this.messageList = res.data.data
+					if (this.messageList.length == 0) {
+						this.show = true
+					} else {
+						this.show = false
+					}
+				}
+			},
+			gotoliaotian(e){
+				uni.navigateTo({
+					url:"../common_tools/my_consulting/conversation"
+				})
 			}
 		}
 	};

+ 12 - 1
pages/index/mine.vue

xqd xqd xqd
@@ -128,7 +128,7 @@
 						<image style="width: 42rpx;height: 42rpx;" src="https://zhengda.oss-cn-chengdu.aliyuncs.com/baoma/static/toolimg/myhple.png"></image>
 						<view class="f14 m-gray-small mt10 line1">帮助反馈</view>
 					</navigator>
-					<view bindtap="" class="width25 m-ycenter overflow pr">
+					<view @click="gotohuihua" class="width25 m-ycenter overflow pr">
 						<image style="width: 42rpx;height: 42rpx;" src="https://zhengda.oss-cn-chengdu.aliyuncs.com/baoma/static/toolimg/kefu.png"></image>
 						<view class="f14 m-gray-small mt10 line1">客服咨询</view>
 					</view>
@@ -165,6 +165,12 @@
 					this.info = res.data
 					console.log(this.info)
 					store.commit('setUser', this.info)
+					// getApp().globalData.imService = new IMService();
+					// let loginResult = getApp().globalData.imService.login(e.detail.userInfo);
+					// if (loginResult) {
+					// 	//连接IM
+					// 	getApp().globalData.imService.connectIM();
+					// }
 				}
 			},
 			getarchives: async function() {
@@ -180,6 +186,11 @@
 				uni.navigateTo({
 					url: "../personal/coupon/coupon"
 				})
+			},
+			gotohuihua() {
+				uni.navigateTo({
+					url: "../common_tools/my_consulting/conversation"
+				})
 			}
 		}
 	};

+ 63 - 25
pages/login/login.vue

xqd xqd xqd xqd xqd
@@ -14,10 +14,19 @@
 
 			<wButton class="wbutton" text="登 录" :rotate="isRotate" @click.native="startReg()" bgColor="linear-gradient(to right, rgba(11,115,185,0.7), rgba(11,115,185,0.6))"></wButton>
 			<view class="flex justify-between align-center" style="margin-top: 60rpx;">
-				<button style="margin-top: 20rpx;" :class="['buttonBorder',!istrue?'dlbutton':'dlbutton_loading']" open-type="getPhoneNumber"
-				 @getphonenumber="getphone">
+				<button v-if="!isphoneNum" style="margin-top: 20rpx;" :class="['buttonBorder',!istrue?'dlbutton':'dlbutton_loading']"
+				 open-type="getPhoneNumber" @getphonenumber="getphone">
 					<view :class="istrue?'rotate_loop':''">
-						<text v-if="istrue" class="cuIcon cuIcon-loading1 "></text>
+						<text v-if="istrue" class="cuIcon cuIcon-loading1"></text>
+						<view v-if="!istrue">
+							<slot name="text">微信授权一键登录</slot>
+						</view>
+					</view>
+				</button>
+				<button v-else style="margin-top: 20rpx;" :class="['buttonBorder',!istrue?'dlbutton':'dlbutton_loading']" open-type="getUserInfo"
+				 @getuserinfo="wxLogin">
+					<view :class="istrue?'rotate_loop':''">
+						<text v-if="istrue" class="cuIcon cuIcon-loading1"></text>
 						<view v-if="!istrue">
 							<slot name="text">微信授权一键登录</slot>
 						</view>
@@ -84,7 +93,8 @@
 					istrue: false,
 					name: "https://zhengda.oss-cn-chengdu.aliyuncs.com/baoma/static/img/xieyi.png"
 				},
-				show: false
+				show: false,
+				isphoneNum: false
 			}
 		},
 		// onShow() {
@@ -107,6 +117,9 @@
 		mounted() {
 			_this = this;
 		},
+		onLoad() {
+			this.isphone()
+		},
 		methods: {
 			isShowAgree() {
 				//是否选择协议
@@ -193,6 +206,23 @@
 					}
 				})
 			},
+			isphone: async function() {
+				uni.login({
+					success: (re) => {
+						this.$request.post("/api/v1/common/getUserByCode", {
+							wechat_code: re.code
+						}).then(data => {
+							console.log(data)
+							if (data.data != null && data.data.phone != "") {
+								this.isphoneNum = true
+							}
+						}).catch(err => {
+
+						})
+					}
+				})
+
+			},
 			getphone: async function(e) {
 				if (this.imgitem.istrue) {
 					_this.istrue = true
@@ -234,29 +264,37 @@
 					});
 					return;
 				}
-				user.loginByWeixin(e.detail.userInfo)
-					.then(res => {
-						this.show = false
-						if (res.status == 0) {
+				if (this.imgitem.istrue) {
+					user.loginByWeixin(e.detail.userInfo)
+						.then(res => {
+							this.show = false
+							if (res.status == 0) {
+								uni.showToast({
+									title: "登录成功",
+									icon: "none",
+									duration: 2000
+								})
+							}
+							setTimeout(function() {
+								_this.istrue = false
+								uni.navigateBack({
+									delta: 1
+								})
+							}, 2000)
+						})
+						.catch(res => {
 							uni.showToast({
-								title: "登录成功",
-								icon: "none",
-								duration: 2000
-							})
-						}
-						setTimeout(function() {
-							_this.istrue = false
-							uni.navigateBack({
-								delta: 1
-							})
-						}, 2000)
-					})
-					.catch(res => {
-						uni.showToast({
-							title: '微信登录失败',
-							icon: "none"
+								title: '微信登录失败',
+								icon: "none"
+							});
 						});
-					});
+				}else{
+					uni.showToast({
+						title: "请先同意协议",
+						icon: "none"
+					})
+				}
+
 			},
 			toindex() {
 				uni.switchTab({

+ 45 - 0
pages/order/payment.vue

xqd xqd
@@ -314,6 +314,49 @@
 					})
 				}
 			},
+			payvaccines: async function() {
+				let res = await this.$request.post("/api/v1/order/appointPlaceOrder", {
+					product_type: this.infodata.product_type,
+					patient_id: this.infodata.patient_id,
+					total_amount: this.infodata.total_amount,
+					user_coupon_id: "",
+					organization_id: this.infodata.organization_id,
+					schedule_date: this.infodata.schedule_date,
+					time_period_id: this.infodata.time_period_id,
+					vaccine_id: this.infodata.vaccine_id,
+					payment_type: this.infodata.payment_type,
+					pay_password: this.password
+				})
+				if (res.status == 0) {
+					this.popupShow = false
+					this.show = false
+					uni.showToast({
+						title: "支付成功!",
+						duration: 1500
+					})
+					setTimeout(() => {
+						uni.redirectTo({
+							url: "order?type=" + this.infodata.product_type
+						})
+					}, 1500)
+				} else {
+					this.popupShow = false
+					this.show = false
+					this.password = ""
+					uni.showModal({
+						title: "错误提示",
+						content: "支付密码错误或未设置支付密码",
+						confirmText: "设置",
+						success: (res) => {
+							if (res.confirm) {
+								uni.navigateTo({
+									url: "../index/paypassword"
+								})
+							}
+						},
+					})
+				}
+			},
 			//点击确认支付
 			payment(e) {
 				if (this.infodata.product_type == 1) {
@@ -324,6 +367,8 @@
 					this.paypacks()
 				} else if (this.infodata.product_type == 3) {
 					this.payyuyue()
+				} else if (this.infodata.product_type == 4) {
+					this.payvaccines()
 				}
 			},
 			// 按键被点击(点击退格键不会触发此事件)

+ 9 - 1
pages/vaccines/mechanism.vue

xqd xqd
@@ -57,6 +57,13 @@
 		methods: {
 			xuanzephone(item) {
 				this.value = item.id
+				let pages = getCurrentPages(); //获取所有页面栈实例列表
+				let nowPage = pages[pages.length - 1]; //当前页页面实例
+				let prevPage = pages[pages.length - 2]; //上一页页面实例
+				prevPage.$vm.doctor = item
+				uni.navigateBack({ //uni.navigateTo跳转的返回,默认1为返回上一级
+					delta: 1
+				});
 			},
 			PickerChange(value) {
 				this.value1 = value
@@ -84,8 +91,9 @@
 </script>
 
 <style lang="scss">
-	page{
+	page {
 		background-color: #fff;
 	}
+
 	.main {}
 </style>

+ 18 - 2
pages/vaccines/vaccinesList.vue

xqd xqd xqd
@@ -38,6 +38,7 @@
 				</view>
 			</view>
 		</view>
+		<u-empty text="暂无数据" mode="order" :show="show" margin-top="250"></u-empty>
 		<view class="cu-tabbar-height"></view>
 		<view class="cu-tabbar-height"></view>
 	</view>
@@ -88,7 +89,8 @@
 					value: 2,
 					label: "收费"
 				}, ],
-				danxuan: ""
+				danxuan: "",
+				show: false
 			}
 		},
 		methods: {
@@ -118,19 +120,33 @@
 				})
 				if (res.status == 0) {
 					this.vaccineList = res.data.data
+					console.log(this.vaccineList)
+					if (this.vaccineList.length == 0) {
+						this.show = true
+					} else {
+						this.show = false
+					}
 				}
 			},
 			xuanzephone(item) {
 				this.danxuan = item.id
+				let pages = getCurrentPages(); //获取所有页面栈实例列表
+				let nowPage = pages[pages.length - 1]; //当前页页面实例
+				let prevPage = pages[pages.length - 2]; //上一页页面实例
+				prevPage.$vm.yimiaoInfo = item
+				uni.navigateBack({ //uni.navigateTo跳转的返回,默认1为返回上一级
+					delta: 1
+				});
 			}
 		}
 	}
 </script>
 
 <style lang="scss">
-	page{
+	page {
 		background-color: #fff;
 	}
+
 	.main {}
 
 	.mianfei {

+ 63 - 12
pages/vaccines/vaccines_info.vue

xqd xqd xqd xqd xqd xqd xqd
@@ -9,20 +9,12 @@
 					<text class="text-grey text-sm">{{value}}</text>
 				</view>
 			</view>
-			<view class="cu-item arrow" @click="xuanzefuwu">
-				<view class="content">
-					<text class="text-grey">服务机构</text>
-				</view>
-				<view class="action">
-					<text class="text-grey text-sm">请选择服务机构</text>
-				</view>
-			</view>
 			<view class="cu-item arrow" @click="vaccinesList">
 				<view class="content">
 					<text class="text-grey">接种疫苗</text>
 				</view>
 				<view class="action">
-					<text class="text-grey text-sm">请选择接种疫苗</text>
+					<text class="text-grey text-sm">{{yimiao}}</text>
 				</view>
 			</view>
 			<view class="cu-item arrow" @click="yuyuetime">
@@ -33,6 +25,25 @@
 					<text class="text-grey text-sm">{{yuyuevalue}}</text>
 				</view>
 			</view>
+			<view class="cu-item arrow" @click="xuanzefuwu">
+				<view class="content">
+					<text class="text-grey">服务机构</text>
+				</view>
+				<view class="action">
+					<text class="text-grey text-sm">{{servicejigou}}</text>
+				</view>
+			</view>
+		</view>
+		<view class="padding-sm bg-white" v-if="doctor.docter.length!=0">
+			<scroll-view scroll-x="true">
+				<view class="flex flex-direction align-center justify-center" @click="gotodoctorinfo(item.id)" style="width: 120rpx;" v-for="(item,index) in doctor.docter"
+				 :key="index">
+					<u-avatar :src="item.avatar" mode="circle"></u-avatar>
+					<view class="">
+						{{item.name}}
+					</view>
+				</view>
+			</scroll-view>
 		</view>
 		<u-picker mode="multiSelector" @confirm="callbacktime" v-model="show" :default-selector='[0, 1]' range-key="start_time_period"
 		 :range="multiSelector"></u-picker>
@@ -66,7 +77,7 @@
 			</view>
 		</u-popup>
 		<view class="cu-bar bg-white tabbar" style="position: fixed;bottom: 0;width: 100%;">
-			<view class="submit" style="background-color: #0B73B9;color: white;" @click="">
+			<view class="submit" style="background-color: #0B73B9;color: white;" @click="gotopay">
 				提交申请
 			</view>
 		</view>
@@ -80,7 +91,13 @@
 			this.gettime()
 		},
 		onShow() {
-
+			if (this.doctor != null) {
+				this.servicejigou = this.doctor.name
+				this.jigouID = this.doctor.id
+			}
+			if (this.yimiaoInfo != null) {
+				this.yimiao = this.yimiaoInfo.name
+			}
 		},
 		data() {
 			return {
@@ -91,7 +108,13 @@
 				show: false,
 				yuyuevalue: "请选择预约时间",
 				multiSelector: [],
-				timehour:""
+				timehour: "",
+				doctor: {},
+				servicejigou: "请选择服务机构",
+				jigouID: "",
+				yimiao: "请选择接种疫苗",
+				yimiaoInfo: {},
+				time: ""
 			}
 		},
 		methods: {
@@ -124,6 +147,7 @@
 			callbacktime(arr) {
 				this.timehour = this.multiSelector[1][arr[1]].id
 				this.yuyuevalue = this.multiSelector[0][arr[0]] + " " + this.multiSelector[1][arr[1]].start_time_period
+				this.time = new Date().getFullYear() + "-" + this.multiSelector[0][arr[0]]
 			},
 			//添加就诊人
 			addPeople(e) {
@@ -143,6 +167,33 @@
 			},
 			yuyuetime() {
 				this.show = true
+			},
+			gotopay() {
+				if (this.yimiaoInfo != null && this.doctor != null && this.huanzheID != "" && this.timehour != "") {
+					let obj = {
+						product_type: 4,
+						patient_id: this.huanzheID,
+						total_amount: this.yimiaoInfo.price / 100,
+						organization_id: this.doctor.id,
+						schedule_date: this.time,
+						time_period_id: this.timehour,
+						vaccine_id: this.yimiaoInfo.id,
+						payment_type: 2
+					}
+					uni.navigateTo({
+						url: "../order/payment?data=" + JSON.stringify(obj)
+					})
+				} else {
+					uni.showToast({
+						title: "请填写完整",
+						icon: "none"
+					})
+				}
+			},
+			gotodoctorinfo(id){
+				uni.navigateTo({
+					url: "../doctor_related/doctor_info?id=" + id
+				})
 			}
 		}
 	}

+ 35 - 13
unpackage/dist/build/mp-weixin/app.json

xqd xqd
@@ -1,25 +1,13 @@
 {
   "pages": [
     "pages/index/index",
+    "pages/login/login",
     "pages/index/book",
     "pages/index/mine",
-    "pages/doctor_related/select_doctor",
-    "pages/doctor_related/doctor_info",
-    "pages/doctor_related/info_write",
     "pages/archives/my_archives",
     "pages/archives/add_archives",
-    "pages/login/login",
     "pages/order/payment",
     "pages/order/order",
-    "pages/service_packs/packs_information",
-    "pages/service_packs/packs_details",
-    "pages/service_packs/choicepacks",
-    "pages/service_packs/introduce",
-    "pages/personal/personal_information",
-    "pages/personal/balance_info",
-    "pages/personal/recharge",
-    "pages/personal/coupon/coupon",
-    "pages/personal/coupon/coupon_details",
     "pages/service_box/box_details",
     "pages/vaccines/vaccines_info",
     "pages/vaccines/mechanism",
@@ -50,6 +38,40 @@
         "me_follow",
         "me_evaluate"
       ]
+    },
+    {
+      "root": "pages/childcare",
+      "pages": [
+        "child_care",
+        "child_careList"
+      ]
+    },
+    {
+      "root": "pages/doctor_related",
+      "pages": [
+        "select_doctor",
+        "doctor_info",
+        "info_write"
+      ]
+    },
+    {
+      "root": "pages/personal",
+      "pages": [
+        "personal_information",
+        "balance_info",
+        "recharge",
+        "coupon/coupon",
+        "coupon/coupon_details"
+      ]
+    },
+    {
+      "root": "pages/service_packs",
+      "pages": [
+        "packs_information",
+        "packs_details",
+        "choicepacks",
+        "introduce"
+      ]
     }
   ],
   "window": {

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/common/runtime.js


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/common/vendor.js


+ 10 - 0
unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.js

xqd
@@ -0,0 +1,10 @@
+(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["components/GoEasyAudioPlayer/GoEasyAudioPlayer"],{"07ab":function(t,n,a){"use strict";(function(t){Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var a=t.createInnerAudioContext(),e={name:"GoEasyAudioPlayer",props:["src","duration"],data:function(){return{play:!1}},methods:{playAudio:function(){var t=this;this.play=!0,a.src=this.src,a.play(),setTimeout((function(){t.play=!1}),1e3*this.duration)}}};n.default=e}).call(this,a("543d")["default"])},"4e4a":function(t,n,a){"use strict";var e=a("b999"),u=a.n(e);u.a},8973:function(t,n,a){"use strict";a.r(n);var e=a("07ab"),u=a.n(e);for(var r in e)"default"!==r&&function(t){a.d(n,t,(function(){return e[t]}))}(r);n["default"]=u.a},b999:function(t,n,a){},c494:function(t,n,a){"use strict";var e;a.d(n,"b",(function(){return u})),a.d(n,"c",(function(){return r})),a.d(n,"a",(function(){return e}));var u=function(){var t=this,n=t.$createElement,a=(t._self._c,Math.ceil(t.duration)),e=Math.ceil(t.duration);t.$mp.data=Object.assign({},{$root:{g0:a,g1:e}})},r=[]},cf0e:function(t,n,a){"use strict";a.r(n);var e=a("c494"),u=a("8973");for(var r in u)"default"!==r&&function(t){a.d(n,t,(function(){return u[t]}))}(r);a("4e4a");var o,i=a("f0c5"),c=Object(i["a"])(u["default"],e["b"],e["c"],!1,null,"5a74bb3c",null,!1,e["a"],o);n["default"]=c.exports}}]);
+;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
+    'components/GoEasyAudioPlayer/GoEasyAudioPlayer-create-component',
+    {
+        'components/GoEasyAudioPlayer/GoEasyAudioPlayer-create-component':(function(module, exports, __webpack_require__){
+            __webpack_require__('543d')['createComponent'](__webpack_require__("cf0e"))
+        })
+    },
+    [['components/GoEasyAudioPlayer/GoEasyAudioPlayer-create-component']]
+]);

+ 4 - 0
unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.json

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

+ 1 - 0
unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.wxml

xqd
@@ -0,0 +1 @@
+<view data-event-opts="{{[['tap',[['playAudio',['$event']]]]]}}" class="goeasy-audio-player _div data-v-5a74bb3c" bindtap="__e"><view class="audio-facade _div data-v-5a74bb3c" style="{{'width:'+($root.g0*7+50+'px')+';'}}"><view class="{{['audio-facade-bg _div data-v-5a74bb3c',(play)?'play-icon':'']}}"></view><view class="_div data-v-5a74bb3c">{{$root.g1||1}}</view></view></view>

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.wxss


+ 2 - 2
unpackage/dist/build/mp-weixin/components/uni-badge/uni-badge.json

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

+ 2 - 2
unpackage/dist/build/mp-weixin/components/uni-icons/uni-icons.json

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

+ 2 - 2
unpackage/dist/build/mp-weixin/components/uni-list/uni-list.json

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

+ 2 - 2
unpackage/dist/build/mp-weixin/components/watch-input.json

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

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_care.js


+ 11 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_care.json

xqd
@@ -0,0 +1,11 @@
+{
+  "navigationBarTitleText": "儿保信息",
+  "usingComponents": {
+    "u-avatar": "/uview-ui/components/u-avatar/u-avatar",
+    "u-picker": "/uview-ui/components/u-picker/u-picker",
+    "u-popup": "/uview-ui/components/u-popup/u-popup",
+    "u-radio-group": "/uview-ui/components/u-radio-group/u-radio-group",
+    "u-radio": "/uview-ui/components/u-radio/u-radio",
+    "u-gap": "/uview-ui/components/u-gap/u-gap"
+  }
+}

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_care.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_care.wxss


+ 1 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_careList.js

xqd
@@ -0,0 +1 @@
+(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["pages/childcare/child_careList"],{"0142":function(t,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var u={data:function(){return{}},onReachBottom:function(){},methods:{},onShow:function(){}};n.default=u},"0608":function(t,n,e){"use strict";var u;e.d(n,"b",(function(){return a})),e.d(n,"c",(function(){return c})),e.d(n,"a",(function(){return u}));var a=function(){var t=this,n=t.$createElement;t._self._c},c=[]},"9c3e":function(t,n,e){"use strict";e.r(n);var u=e("0608"),a=e("fa49");for(var c in a)"default"!==c&&function(t){e.d(n,t,(function(){return a[t]}))}(c);var r,o=e("f0c5"),f=Object(o["a"])(a["default"],u["b"],u["c"],!1,null,"198962f9",null,!1,u["a"],r);n["default"]=f.exports},aea5:function(t,n,e){"use strict";(function(t){e("02cf");u(e("66fd"));var n=u(e("9c3e"));function u(t){return t&&t.__esModule?t:{default:t}}t(n.default)}).call(this,e("543d")["createPage"])},fa49:function(t,n,e){"use strict";e.r(n);var u=e("0142"),a=e.n(u);for(var c in u)"default"!==c&&function(t){e.d(n,t,(function(){return u[t]}))}(c);n["default"]=a.a}},[["aea5","common/runtime","common/vendor"]]]);

+ 4 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_careList.json

xqd
@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "儿保项目",
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/build/mp-weixin/pages/childcare/child_careList.wxml

xqd
@@ -0,0 +1 @@
+<view class="main data-v-198962f9"></view>

文件差異過大導致無法顯示
+ 0 - 1
unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/conversation.js


+ 3 - 1
unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/conversation.json

xqd
@@ -1,4 +1,6 @@
 {
   "navigationBarTitleText": "会话窗口",
-  "usingComponents": {}
+  "usingComponents": {
+    "go-easy-audio-player": "/components/GoEasyAudioPlayer/GoEasyAudioPlayer"
+  }
 }

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/conversation.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/common_tools/my_consulting/my_appointment.js


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/editinfo.js


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/editinfo.wxml


+ 1 - 1
unpackage/dist/build/mp-weixin/pages/index/editinfo.wxss

xqd
@@ -1 +1 @@
-.button2 button.data-v-e56c37e8{width:100%;font-size:26rpx;height:70rpx;color:#606266;background-color:#fff;border-radius:0;border-top:2rpx solid rgba(0,0,0,.2)}.button2 button.data-v-e56c37e8::after{border:none}.toast-box.data-v-e56c37e8{width:100%;height:100%;opacity:1;position:fixed;top:0;left:0}.toastbg.data-v-e56c37e8{opacity:.2;background-color:#000;position:absolute;width:100%;min-height:100vh}.showToast.data-v-e56c37e8{position:absolute;opacity:1;width:70%;margin-left:15%;margin-top:40%}.toast-title.data-v-e56c37e8{padding-left:5%;background-color:#2196f3;color:#fff;padding-top:2vh;padding-bottom:2vh;border-top-right-radius:16rpx;border-top-left-radius:16rpx}.toast-main.data-v-e56c37e8{padding-top:2vh;padding-bottom:2vh;background-color:#fff;text-align:center}.toast-input.data-v-e56c37e8{margin-left:5%;margin-right:5%;border:1px solid #ddd;padding-left:2vh;padding-right:2vh;padding-top:1vh;padding-bottom:1vh}
+.button2 button.data-v-52cc9c59{width:100%;font-size:26rpx;height:70rpx;color:#606266;background-color:#fff;border-radius:0;border-top:2rpx solid rgba(0,0,0,.2)}.button2 button.data-v-52cc9c59::after{border:none}.toast-box.data-v-52cc9c59{width:100%;height:100%;opacity:1;position:fixed;top:0;left:0}.toastbg.data-v-52cc9c59{opacity:.2;background-color:#000;position:absolute;width:100%;min-height:100vh}.showToast.data-v-52cc9c59{position:absolute;opacity:1;width:70%;margin-left:15%;margin-top:40%}.toast-title.data-v-52cc9c59{padding-left:5%;background-color:#2196f3;color:#fff;padding-top:2vh;padding-bottom:2vh;border-top-right-radius:16rpx;border-top-left-radius:16rpx}.toast-main.data-v-52cc9c59{padding-top:2vh;padding-bottom:2vh;background-color:#fff;text-align:center}.toast-input.data-v-52cc9c59{margin-left:5%;margin-right:5%;border:1px solid #ddd;padding-left:2vh;padding-right:2vh;padding-top:1vh;padding-bottom:1vh}

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/editphone.js


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/index.js


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/index.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/index.wxss


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/message.js


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

xqd
@@ -2,6 +2,7 @@
   "navigationBarTitleText": "消息通知",
   "usingComponents": {
     "u-icon": "/uview-ui/components/u-icon/u-icon",
-    "u-badge": "/uview-ui/components/u-badge/u-badge"
+    "u-badge": "/uview-ui/components/u-badge/u-badge",
+    "u-empty": "/uview-ui/components/u-empty/u-empty"
   }
 }

+ 1 - 1
unpackage/dist/build/mp-weixin/pages/index/message.wxml

xqd
@@ -1 +1 @@
-<view class="main data-v-7a5e9f8d"><view class="padding-lr data-v-7a5e9f8d"><block wx:for="{{4}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view class="padding-lr-sm padding-tb-sm bg-white margin-top-sm data-v-7a5e9f8d" style="border-radius:16rpx;box-shadow:0 0 50rpx 0 rgba(0, 0, 0, 0.1);"><view class="flex justify-start align-center data-v-7a5e9f8d"><u-icon vue-id="{{'6385ca05-1-'+index}}" name="order" class="data-v-7a5e9f8d" bind:__l="__l"></u-icon><text class="text-lg margin-left-xs data-v-7a5e9f8d">订单通知</text><text class="flex-sub text-right data-v-7a5e9f8d">10:10</text></view><view class="margin-top-sm data-v-7a5e9f8d">您接到一个新的图文咨询订单,请尽快确认 (点击查看订单详情)</view><view class="text-right data-v-7a5e9f8d" style="position:relative;"><u-badge vue-id="{{'6385ca05-2-'+index}}" size="mini" absolute="{{false}}" type="error" is-dot="{{true}}" class="data-v-7a5e9f8d" bind:__l="__l"></u-badge><text class="margin-left-xs data-v-7a5e9f8d">未读</text></view></view></block></view><view class="cu-tabbar-height data-v-7a5e9f8d"></view><view class="cu-tabbar-height data-v-7a5e9f8d"></view></view>
+<view class="main data-v-16975587"><view class="padding-lr data-v-16975587"><block wx:for="{{messageList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['gotoliaotian',['$event']]]]]}}" class="padding-lr-sm padding-tb-sm bg-white margin-top-sm data-v-16975587" style="border-radius:16rpx;box-shadow:0 0 50rpx 0 rgba(0, 0, 0, 0.1);" bindtap="__e"><view class="flex justify-start align-center data-v-16975587"><u-icon vue-id="{{'6385ca05-1-'+index}}" name="order" class="data-v-16975587" bind:__l="__l"></u-icon><text class="text-lg margin-left-xs data-v-16975587">{{item.type}}</text><text class="flex-sub text-right data-v-16975587">{{item.create_time}}</text></view><view class="margin-top-sm text-cut data-v-16975587">{{''+item.content+''}}</view><view class="text-right data-v-16975587" style="position:relative;"><block wx:if="{{item.status==1}}"><u-badge vue-id="{{'6385ca05-2-'+index}}" size="mini" absolute="{{false}}" type="error" is-dot="{{true}}" class="data-v-16975587" bind:__l="__l"></u-badge></block><block wx:if="{{item.status==1}}"><text class="margin-left-xs data-v-16975587">未读</text></block><block wx:if="{{item.status==2}}"><text class="margin-left-xs data-v-16975587">已读</text></block></view></view></block></view><u-empty vue-id="6385ca05-3" text="暂无数据" mode="order" show="{{show}}" margin-top="250" class="data-v-16975587" bind:__l="__l"></u-empty><view class="cu-tabbar-height data-v-16975587"></view><view class="cu-tabbar-height data-v-16975587"></view></view>

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/mine.js


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/mine.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/mine.wxss


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/paypassword.js


+ 1 - 1
unpackage/dist/build/mp-weixin/pages/index/paypassword.wxml

xqd
@@ -1 +1 @@
-<view class="main  bg-white margin-top padding-tb-sm"><view class="flex justify-between align-center margin-top-sm padding-lr-sm"><view class="flex-sub margin-right-sm"><u-input bind:input="__e" vue-id="040cdd49-1" type="{{type}}" placeholder="请设置支付密码(6位数字)" border="{{border}}" value="{{password}}" data-event-opts="{{[['^input',[['__set_model',['','password','$event',[]]]]]]}}" bind:__l="__l"></u-input></view></view><view class="flex justify-between align-center margin-top-sm padding-lr-sm"><view class="flex-sub margin-right-sm"><u-input bind:input="__e" vue-id="040cdd49-2" type="{{type}}" placeholder="请输入验证码" border="{{border}}" value="{{code}}" data-event-opts="{{[['^input',[['__set_model',['','code','$event',[]]]]]]}}" bind:__l="__l"></u-input></view><u-verification-code class="vue-ref" vue-id="040cdd49-3" seconds="{{seconds}}" data-ref="uCode" data-event-opts="{{[['^end',[['end']]],['^start',[['start']]],['^change',[['codeChange']]]]}}" bind:end="__e" bind:start="__e" bind:change="__e" bind:__l="__l"></u-verification-code><u-button bind:click="__e" vue-id="040cdd49-4" data-event-opts="{{[['^click',[['getCode']]]]}}" bind:__l="__l" vue-slots="{{['default']}}">{{tips}}</u-button></view><view class="cu-bar bg-white tabbar" style="position:fixed;bottom:0;width:100%;"><view data-event-opts="{{[['tap',[['',['$event']]]]]}}" class="submit" style="background-color:#0B73B9;color:white;" bindtap="__e">立即保存</view></view><view class="cu-tabbar-height"></view><view class="cu-tabbar-height"></view></view>
+<view class="main  bg-white margin-top padding-tb-sm"><view class="flex justify-between align-center margin-top-sm padding-lr-sm"><view class="flex-sub margin-right-sm"><u-input bind:input="__e" vue-id="040cdd49-1" type="{{type}}" maxlength="6" placeholder="请设置支付密码(6位数字)" border="{{border}}" value="{{password}}" data-event-opts="{{[['^input',[['__set_model',['','password','$event',[]]]]]]}}" bind:__l="__l"></u-input></view></view><view class="flex justify-between align-center margin-top-sm padding-lr-sm"><view class="flex-sub margin-right-sm"><u-input bind:input="__e" vue-id="040cdd49-2" type="number" maxlength="6" placeholder="请输入验证码" border="{{border}}" value="{{code}}" data-event-opts="{{[['^input',[['__set_model',['','code','$event',[]]]]]]}}" bind:__l="__l"></u-input></view><u-verification-code class="vue-ref" vue-id="040cdd49-3" seconds="{{seconds}}" data-ref="uCode" data-event-opts="{{[['^end',[['end']]],['^start',[['start']]],['^change',[['codeChange']]]]}}" bind:end="__e" bind:start="__e" bind:change="__e" bind:__l="__l"></u-verification-code><u-button bind:click="__e" vue-id="040cdd49-4" data-event-opts="{{[['^click',[['getCode']]]]}}" bind:__l="__l" vue-slots="{{['default']}}">{{tips}}</u-button></view><view class="cu-bar bg-white tabbar" style="position:fixed;bottom:0;width:100%;"><view data-event-opts="{{[['tap',[['editpwd',['$event']]]]]}}" class="submit" style="background-color:#0B73B9;color:white;" bindtap="__e">立即保存</view></view><view class="cu-tabbar-height"></view><view class="cu-tabbar-height"></view></view>

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/login/login.js


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

xqd
@@ -1,6 +1,7 @@
 {
   "navigationBarTitleText": "登录/注册",
   "usingComponents": {
+    "u-popup": "/uview-ui/components/u-popup/u-popup",
     "w-input": "/components/watch-input",
     "w-button": "/components/watch-button"
   }

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/login/login.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/order/payment.js


文件差異過大導致無法顯示
+ 0 - 1
unpackage/dist/build/mp-weixin/pages/personal/personal_information.js


文件差異過大導致無法顯示
+ 0 - 1
unpackage/dist/build/mp-weixin/pages/personal/personal_information.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/personal/personal_information.wxss


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/mechanism.js


+ 1 - 1
unpackage/dist/build/mp-weixin/pages/vaccines/mechanism.wxml

xqd
@@ -1 +1 @@
-<view class="bg-white"><picker range-key="name" value="{{index}}" range="{{options1}}" data-event-opts="{{[['change',[['PickerChange',['$event']]]]]}}" bindchange="__e"><view class="text-xl">{{''+picker[index].name+''}}<text class="cuIcon-unfold lg text-gray margin-left-xs"></text></view></picker><view class="margin-sm"><block wx:for="{{$root.l0}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['xuanzephone',['$0'],[[['mechanismList','',index]]]]]]]}}" class="padding bg-white margin-top-sm flex justify-between align-center" style="border-radius:16rpx;box-shadow:0 0 50rpx 0 rgba(0, 0, 0, 0.1);" bindtap="__e"><view><view class="text-bold" style="color:#333333;font-size:30rpx;">{{''+item.$orig.name+''}}</view><view class="margin-top-sm" style="color:#999999;font-size:26rpx;">地址:<text style="color:#666666;">{{item.$orig.address}}</text></view><view class="margin-top-sm" style="color:#999999;font-size:26rpx;">距离:<text style="color:#666666;">{{item.m0+"km"}}</text></view></view><view><u-radio-group bind:input="__e" vue-id="{{'6a40f9f6-1-'+index}}" value="{{value}}" data-event-opts="{{[['^input',[['__set_model',['','value','$event',[]]]]]]}}" bind:__l="__l" vue-slots="{{['default']}}"><u-radio vue-id="{{('6a40f9f6-2-'+index)+','+('6a40f9f6-1-'+index)}}" name="{{item.$orig.id}}" data-event-opts="{{[['^change',[['radioChange']]]]}}" bind:change="__e" bind:__l="__l"></u-radio></u-radio-group></view></view></block></view><view class="cu-tabbar-height"></view><view class="cu-tabbar-height"></view></view>
+<view class="bg-white"><picker mode="multiSelector" range-key="name" value="{{index}}" range="{{options1}}" data-event-opts="{{[['change',[['PickerChange',['$event']]]]]}}" bindchange="__e"><view class="text-xl">{{''+picker[index].name+''}}<text class="cuIcon-unfold lg text-gray margin-left-xs"></text></view></picker><view class="margin-sm"><block wx:for="{{$root.l0}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['xuanzephone',['$0'],[[['mechanismList','',index]]]]]]]}}" class="padding bg-white margin-top-sm flex justify-between align-center" style="border-radius:16rpx;box-shadow:0 0 50rpx 0 rgba(0, 0, 0, 0.1);" bindtap="__e"><view><view class="text-bold" style="color:#333333;font-size:30rpx;">{{''+item.$orig.name+''}}</view><view class="margin-top-sm" style="color:#999999;font-size:26rpx;">地址:<text style="color:#666666;">{{item.$orig.address}}</text></view><view class="margin-top-sm" style="color:#999999;font-size:26rpx;">距离:<text style="color:#666666;">{{item.m0+"km"}}</text></view></view><view><u-radio-group bind:input="__e" vue-id="{{'6a40f9f6-1-'+index}}" value="{{value}}" data-event-opts="{{[['^input',[['__set_model',['','value','$event',[]]]]]]}}" bind:__l="__l" vue-slots="{{['default']}}"><u-radio vue-id="{{('6a40f9f6-2-'+index)+','+('6a40f9f6-1-'+index)}}" name="{{item.$orig.id}}" data-event-opts="{{[['^change',[['radioChange']]]]}}" bind:change="__e" bind:__l="__l"></u-radio></u-radio-group></view></view></block></view><view class="cu-tabbar-height"></view><view class="cu-tabbar-height"></view></view>

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/vaccinesList.js


+ 2 - 1
unpackage/dist/build/mp-weixin/pages/vaccines/vaccinesList.json

xqd
@@ -5,6 +5,7 @@
     "u-dropdown-item": "/uview-ui/components/u-dropdown-item/u-dropdown-item",
     "u-search": "/uview-ui/components/u-search/u-search",
     "u-radio-group": "/uview-ui/components/u-radio-group/u-radio-group",
-    "u-radio": "/uview-ui/components/u-radio/u-radio"
+    "u-radio": "/uview-ui/components/u-radio/u-radio",
+    "u-empty": "/uview-ui/components/u-empty/u-empty"
   }
 }

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/vaccinesList.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.js


+ 1 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.json

xqd
@@ -1,6 +1,7 @@
 {
   "navigationBarTitleText": "疫苗信息填写",
   "usingComponents": {
+    "u-avatar": "/uview-ui/components/u-avatar/u-avatar",
     "u-picker": "/uview-ui/components/u-picker/u-picker",
     "u-popup": "/uview-ui/components/u-popup/u-popup",
     "u-radio-group": "/uview-ui/components/u-radio-group/u-radio-group",

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.wxml


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/vaccines/vaccines_info.wxss


+ 2 - 2
unpackage/dist/build/mp-weixin/uview-ui/components/u-cell-group/u-cell-group.json

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

+ 2 - 2
unpackage/dist/build/mp-weixin/uview-ui/components/u-cell-item/u-cell-item.json

xqd
@@ -1,6 +1,6 @@
 {
+  "component": true,
   "usingComponents": {
     "u-icon": "/uview-ui/components/u-icon/u-icon"
-  },
-  "component": true
+  }
 }

+ 2 - 2
unpackage/dist/build/mp-weixin/uview-ui/components/u-mask/u-mask.json

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

文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/GoEasyAudioPlayer/GoEasyAudioPlayer.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-badge/uni-badge.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-icons/uni-icons.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list-item/uni-list-item.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list/uni-list.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-button.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-input.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/archives/add_archives.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/archives/archives_info.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/archives/my_archives.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/childcare/child_care.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/childcare/child_careList.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/collection/collection.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/collection/collection_details.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/help_feedback/help_feedback.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/help_feedback/opinion1.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/home_doctor.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_evaluate.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_follow.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_order/me_order.js.map


文件差異過大導致無法顯示
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/common_tools/me_order/order_details.js.map


部分文件因文件數量過多而無法顯示