Browse Source

更新即时通讯功能

yf_zhb 2 năm trước cách đây
mục cha
commit
f19de22602
37 tập tin đã thay đổi với 174 bổ sung112 xóa
  1. 3 3
      MingGaoApp/App.vue
  2. 41 6
      MingGaoApp/pages/my/formRecord/fieldSurveys.vue
  3. 7 7
      MingGaoApp/pages/my/formRecord/samplePlot.vue
  4. 13 13
      MingGaoApp/pages/my/formRecord/trapRecord.vue
  5. 5 1
      MingGaoApp/pages/response/details.vue
  6. 27 8
      MingGaoApp/pages/response/video.nvue
  7. 5 1
      MingGaoApp/store/index.js
  8. 1 1
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/__uniapppicker.js
  9. 2 2
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/app-config-service.js
  10. 5 5
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/app-service.js
  11. 1 1
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/app-view.js
  12. 1 1
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/manifest.json
  13. 1 1
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/pages/my/map.js
  14. 1 1
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/pages/response/video.js
  15. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/home-active.png
  16. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/home.png
  17. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/info-active.png
  18. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/info.png
  19. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/pest-active.png
  20. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/profile-active.png
  21. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/profile.png
  22. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/supervise-active.png
  23. BIN
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/supervise.png
  24. 1 1
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/view.css
  25. 2 2
      MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/view.umd.min.js
  26. BIN
      MingGaoApp/unpackage/debug/android_debug.apk
  27. 1 1
      MingGaoApp/unpackage/dist/build/app-plus/__uniapppicker.js
  28. 2 2
      MingGaoApp/unpackage/dist/build/app-plus/app-config-service.js
  29. 5 5
      MingGaoApp/unpackage/dist/build/app-plus/app-service.js
  30. 1 1
      MingGaoApp/unpackage/dist/build/app-plus/app-view.js
  31. 1 1
      MingGaoApp/unpackage/dist/build/app-plus/manifest.json
  32. 1 1
      MingGaoApp/unpackage/dist/build/app-plus/pages/response/video.js
  33. 1 1
      MingGaoApp/unpackage/dist/build/app-plus/view.css
  34. 2 2
      MingGaoApp/unpackage/dist/build/app-plus/view.umd.min.js
  35. 39 39
      MingGaoApp/unpackage/dist/dev/app-plus/app-service.js
  36. 4 4
      MingGaoApp/unpackage/dist/dev/app-plus/pages/response/video.js
  37. 1 1
      MingGaoApp/util/url.js

+ 3 - 3
MingGaoApp/App.vue

@@ -123,7 +123,7 @@
 					// console.log("收到服务器内容:");
 					var val = JSON.parse(res.data)
 					console.warn('这是返回的内容---------', val)
-
+					clearTimeout(that.globalData.msgSetTime); // 消息发送成功,清除发送失败定时器
 					if (val.action == 'list') {
 						clearTimeout(that.globalData.msgSetTime); // 消息发送成功,清除发送失败定时器
 						console.log('这是发送人的ID', that.globalData.userId)
@@ -229,13 +229,13 @@
 					} else if (val.action == 'ok') {
 						this.start(); // 心跳机制
 					} else if (val.action == 'error') {
-						if (val.data.errorCode == 403) {
+						if (val.data.code == 403) {
 
 							this.close();
 							uni.setStorageSync('session_key', '')
 							if (!this.$store.state.isInLoginPage) {
 
-								uni.$u.totast('用户在其他地方登陆,请重新登陆')
+								uni.$u.totast(val.data.data && val.data.data.error_info ||'用户在其他地方登陆,请重新登陆')
 								setTimeout(() => {
 									uni.navigateTo({
 										url: "/pages/login/login"

+ 41 - 6
MingGaoApp/pages/my/formRecord/fieldSurveys.vue

@@ -163,6 +163,11 @@
 					],
 					'harm_rate': [{
 						type: 'number',
+						required: true,
+						message: '请填写危害率',
+						trigger: ['blur', 'change']
+					}, {
+						type: 'number',
 						min: 0,
 						max: 100,
 						transform(value) {
@@ -171,6 +176,36 @@
 						message: '0-100之间',
 						trigger: ['blur', 'change']
 					}],
+					'check_num': [{
+						type: 'number',
+						required: true,
+						message: '请填写',
+						trigger: ['blur', 'change']
+					}, {
+						type: 'number',
+						min: 0,
+						max: 999999,
+						transform(value) {
+							return Number(value);
+						},
+						message: '0-999999999之间',
+						trigger: ['blur', 'change']
+					}],
+					'harm_num': [{
+						type: 'number',
+						required: true,
+						message: '请填写',
+						trigger: ['blur', 'change']
+					}, {
+						type: 'number',
+						min: 0,
+						max: 999999,
+						transform(value) {
+							return Number(value);
+						},
+						message: '0-999999999之间',
+						trigger: ['blur', 'change']
+					}],
 					'harm_obj': [{
 							type: 'string',
 							required: true,
@@ -339,7 +374,7 @@
 				this.baseForm.occurs = lastInfo ? lastInfo.value : firstInfo.value;
 				this.baseForm.occurs_name = lastInfo ? firstInfo.label + '/' + lastInfo.label : firstInfo.label;
 				this.show = false;
-				
+
 				this.$refs.uForm.validate()
 			},
 			changeHandler(e) {
@@ -365,11 +400,11 @@
 						console.log(res, '------------- add form success')
 						uni.$u.toast('提交成功')
 
-						// setTimeout(() => {
-						// 	uni.navigateBack({
-						// 		delta: 1
-						// 	})
-						// }, 1000)
+						setTimeout(() => {
+							uni.navigateBack({
+								delta: 1
+							})
+						}, 1000)
 
 					}).finally(() => {
 						this.submitLoading = false;

+ 7 - 7
MingGaoApp/pages/my/formRecord/samplePlot.vue

@@ -163,7 +163,7 @@
 					pest_name_2: '', //拉丁学名
 					pest_name_3: '', //当地俗名
 					is_check: '是', // 是否需要辅助调查    是/否
-					harm_obj: '', //危害对象
+					harm_obj: '农作物', //危害对象
 					harm_crop: '', //危害植物
 					sample_no_1: '1', // 样方/样线编号1
 					check_num_1: '', // 调查株数/样线长度
@@ -189,7 +189,7 @@
 					check_num_6: '', // 调查株数/样线长度
 					harm_num_6: '', // 受害株数
 					harm_rate_6: '', // 危害率
-					harm_place: '', // 危害部位
+					harm_place: '', // 危害部位
 					is_gather: '是', //  是否采集标本 是/否
 				},
 				rules: {
@@ -704,11 +704,11 @@
 						console.log(res, '------------- add form success')
 						uni.$u.toast('提交成功')
 
-						// setTimeout(() => {
-						// 	uni.navigateBack({
-						// 		delta: 1
-						// 	})
-						// }, 1000)
+						setTimeout(() => {
+							uni.navigateBack({
+								delta: 1
+							})
+						}, 1000)
 
 					}).finally(() => {
 						this.submitLoading = false;

+ 13 - 13
MingGaoApp/pages/my/formRecord/trapRecord.vue

@@ -3,29 +3,29 @@
 	<view class="record-form">
 		<view class="record-form__content">
 			<u--form labelPosition="left" :model="baseForm" :rules="rules" ref="uForm">
-				<u-form-item label="标准样地地点:" labelWidth="100" prop="sample_addr" borderBottom>
+				<u-form-item label="标准样地地点:" labelWidth="120" prop="sample_addr" borderBottom>
 					<u--input v-model="baseForm.sample_addr" border="none"></u--input>
 				</u-form-item>
-				<u-form-item label="标准样地编号:" labelWidth="100" prop="sample_num" borderBottom>
+				<u-form-item label="标准样地编号:" labelWidth="120" prop="sample_num" borderBottom>
 					<u--input v-model="baseForm.sample_num" border="none"></u--input>
 				</u-form-item>
-				<u-form-item label="标准样地面积:" labelWidth="100" prop="sample_area" borderBottom>
+				<u-form-item label="标准样地面积:" labelWidth="120" prop="sample_area" borderBottom>
 					<u--input v-model="baseForm.sample_area" border="none" type="digit" suffixIcon="亩"></u--input>
 				</u-form-item>
-				<u-form-item label="经度:" labelWidth="100" prop="lng" borderBottom>
+				<u-form-item label="经度:" labelWidth="120" prop="lng" borderBottom>
 					<u--input v-model="baseForm.lng" border="none" type="digit">
 					</u--input>
 				</u-form-item>
-				<u-form-item label="纬度:" labelWidth="100" prop="lat" borderBottom>
+				<u-form-item label="纬度:" labelWidth="120" prop="lat" borderBottom>
 					<u--input v-model="baseForm.lat" border="none" type="digit"></u--input>
 				</u-form-item>
-				<u-form-item label="海拔:" labelWidth="100" prop="height" borderBottom>
+				<u-form-item label="海拔:" labelWidth="120" prop="height" borderBottom>
 					<u--input v-model="baseForm.height" border="none" type="digit" suffixIcon="米"></u--input>
 				</u-form-item>
-				<u-form-item label="诱虫灯名称:" labelWidth="100" prop="trap_number" borderBottom>
+				<u-form-item label="诱虫灯名称:" labelWidth="120" prop="trap_number" borderBottom>
 					<u--input v-model="baseForm.trap_number" border="none"></u--input>
 				</u-form-item>
-				<u-form-item label="引诱剂名称:" labelWidth="100" prop="inducer_name" borderBottom>
+				<u-form-item label="引诱剂名称:" labelWidth="120" prop="inducer_name" borderBottom>
 					<u--input v-model="baseForm.inducer_name" border="none"></u--input>
 				</u-form-item>
 
@@ -360,11 +360,11 @@
 						console.log(res, '------------- add form success')
 						uni.$u.toast('提交成功')
 
-						// setTimeout(() => {
-						// 	uni.navigateBack({
-						// 		delta: 1
-						// 	})
-						// }, 1000)
+						setTimeout(() => {
+							uni.navigateBack({
+								delta: 1
+							})
+						}, 1000)
 
 					}).finally(() => {
 						this.submitLoading = false;

+ 5 - 1
MingGaoApp/pages/response/details.vue

@@ -86,7 +86,8 @@
 
 <script>
 	import {
-		mapState
+		mapState,
+		mapMutations
 	} from 'vuex'
 	import store from '@/store/index.js' //需要引入store
 	import {
@@ -236,6 +237,7 @@
 			uni.onKeyboardHeightChange(this.keyboardEventListener)
 		},
 		methods: {
+			...mapMutations(['updateCurrentReceiveUserID']),
 			// 实时监控input框数据
 			sendChange(data) {
 				this.value = data
@@ -325,6 +327,8 @@
 				}
 
 				console.log('send_video', obj)
+				
+				this.updateCurrentReceiveUserID(this.val.user_id);
 
 				this.transmit(obj)
 			},

+ 27 - 8
MingGaoApp/pages/response/video.nvue

@@ -40,7 +40,7 @@
 					<text class="video_view_txt" style="margin: 0 0 0 30rpx;">开启</text>
 				</view> -->
 
-				<image @click="offVideo()" style="width: 50px; height: 50px; margin: 0 0 0 330rpx;"
+				<image @click="offVideo(false,true)" style="width: 50px; height: 50px; margin: 0 0 0 330rpx;"
 					src="../../static/image/10.png" mode=""></image>
 			</view>
 
@@ -81,7 +81,8 @@
 	import ZegoRemoteView from '@/zego-express-video-uniapp/zego-view/ZegoRemoteView';
 
 	import {
-		assign, forEach
+		assign,
+		forEach
 	} from 'lodash-es';
 	export default {
 		data() {
@@ -109,7 +110,8 @@
 		},
 		computed: {
 			...mapState({
-				isVideoCallRefused: state => state.isVideoCallRefused
+				isVideoCallRefused: state => state.isVideoCallRefused,
+				currentReceiveUserID: state => state.currentReceiveUserID
 			})
 		},
 		components: {
@@ -242,7 +244,7 @@
 
 				// 房间用户变化通知
 				this.engine.on("roomUserUpdate", (roomID, updateType, userList) => {
-					console.log(updateType,ZegoUpdateType.Delete,'roomUserUpdate')
+					console.log(updateType, ZegoUpdateType.Delete, 'roomUserUpdate')
 					console.log(userList)
 					console.log("有其他用户进出房间");
 					if (updateType == ZegoUpdateType.Add) {
@@ -435,7 +437,7 @@
 			},
 
 			// 挂断退出
-			async offVideo(isRefused = false) {
+			async offVideo(isRefused = false, isNotice = true) {
 				console.warn('进入了啊offVideo', this.engine)
 				this.updateIsRefusedCall(false);
 				this.updateTalkingStatus(false);
@@ -480,6 +482,23 @@
 							},
 						});
 					}
+
+					if (isNotice) {
+						console.log(this.videoObj, 'is notice')
+						const socketData = {
+							action: 'reject_video', // 动作标识,必填
+							recv_user_id: that.currentReceiveUserID, // 接收人用户id, 非必填
+							data: {},
+						}
+
+						API.socketTask.send({
+							data: JSON.stringify(socketData),
+							async success(res) {
+								console.log('reject_video 消息发送成功 reject_video')
+							},
+						})
+					}
+
 					this.handleBack()
 				}, 1500)
 				// uni.redirectTo({
@@ -497,7 +516,7 @@
 
 			handleBack() {
 				const pages = getCurrentPages();
-				if(pages.length<3){
+				if (pages.length < 3) {
 					uni.switchTab({
 						url: '/pages/response/index',
 						success(res) {
@@ -510,7 +529,7 @@
 							console.warn('返回上一页执行完成,当前页面:视频通话页面 ')
 						}
 					})
-				}else{
+				} else {
 					uni.navigateBack({
 						delta: 1
 					})
@@ -519,7 +538,7 @@
 		},
 
 		async onLoad(optinos) {
-			
+
 			if (this.isVideoCallRefused) {
 				that.$refs.uToast.show({
 					type: 'default',

+ 5 - 1
MingGaoApp/store/index.js

@@ -22,7 +22,8 @@ const store = new Vuex.Store({
 		isVideoTalking: false,
 		isVideoCallRefused: false,
 		userInfo: {},
-		isInLoginPage:false
+		isInLoginPage:false,
+		currentReceiveUserID:'',// 当前接收到的视频用户ID
 	},
 	mutations: {
 		updateVideoInfo(state, payload) {
@@ -50,6 +51,9 @@ const store = new Vuex.Store({
 		},
 		updateInLoginPageStatus(state,flag){
 			state.isInLoginPage = flag;
+		},
+		updateCurrentReceiveUserID(state,id){
+			state.currentReceiveUserID = id
 		}
 	},
 	actions: {},

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/__uniapppicker.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2 - 2
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/app-config-service.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 5 - 5
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/app-service.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/app-view.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/manifest.json


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/pages/my/map.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/pages/response/video.js


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/home-active.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/home.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/info-active.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/info.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/pest-active.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/profile-active.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/profile.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/supervise-active.png


BIN
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/static/tab/supervise.png


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/view.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2 - 2
MingGaoApp/unpackage/cache/wgt/__UNI__1BA09AD/view.umd.min.js


BIN
MingGaoApp/unpackage/debug/android_debug.apk


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/dist/build/app-plus/__uniapppicker.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2 - 2
MingGaoApp/unpackage/dist/build/app-plus/app-config-service.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 5 - 5
MingGaoApp/unpackage/dist/build/app-plus/app-service.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/dist/build/app-plus/app-view.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/dist/build/app-plus/manifest.json


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/dist/build/app-plus/pages/response/video.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 1
MingGaoApp/unpackage/dist/build/app-plus/view.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2 - 2
MingGaoApp/unpackage/dist/build/app-plus/view.umd.min.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 39 - 39
MingGaoApp/unpackage/dist/dev/app-plus/app-service.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 4 - 4
MingGaoApp/unpackage/dist/dev/app-plus/pages/response/video.js


+ 1 - 1
MingGaoApp/util/url.js

@@ -1,6 +1,6 @@
 export default {
 	baseUrl: process.env.NODE_ENV === 'development' ? "http://114.115.147.140:12345" : "https://www.yhswjc.com",
-	wsUrl:process.env.NODE_ENV === 'development' ? "ws://114.115.147.140:12345" : "wss://www.toreskj.com",
+	wsUrl:process.env.NODE_ENV === 'development' ? "ws://114.115.147.140:12345" : "wss://www.yhswjc.com",
 	// baseUrl:"https://yfznscd.com"
 	// baseUrl:"https://www.toreskj.com"
 	// baseUrl:"https://www.yhswjc.com"