<script>
	import './../.env.js'
	import {
		AnalysysAgent
	} from '@/utils/analysys_paas.js'
	import util from '@/utils/util.js'
	export default {
		globalData:{
			// 开发环境
			uniEnv:process.uniEnv,
			// 登录凭证
			token: '',
			 
			//授权提示 图标
			icon_auth_notice: 'https://qn-static.banshouhui.com/auth_notice.png',
			//授权提示新 图标
			icon_auth_notice_new: 'https://qn-static.banshouhui.com/auth_notice_new.png',
			// 服务规范教程视频
			service_standard: {
				"Course1": {
					url: "https://xy-hybrid.kakalili.com/web/vivaVideo/home/static/img/videoen.mp4",
					title: "第一节 接单服务标准",
					desc: "1.不同车企品牌结算价格不一，675元-1890元不等；",
				},
				"Course2": {
					url: "https://xy-hybrid.kakalili.com/web/vivaVideo/home/static/img/videoen.mp4",
					title: "第二节 完工服务标准",
					desc: "2.结算价格为包工包料价，安装材料根据车企品牌规格自行采购（电缆、空开、漏保）；",
				},
				"Course3": {
					url: "https://xy-hybrid.kakalili.com/web/vivaVideo/home/static/img/videoen.mp4",
					title: "第二节 结算服务标准",
					desc: "3.需具备一定的作业工具：如液压压线钳、冲击钻、电锤、登高安全带、电锤、绝缘电阻仪（摇表）、交流充电模拟器等；",
				},
			},
			
			// 授权用户信息
			authUserInfo: '',
		},
		onLaunch: function() {
			// 应用初始化（全局只触发一次）
			let that = this
			that.globalData.token = util.getToken()
			
			AnalysysAgent.registerSuperProperty("platform", "self-support");
		},
		onShow: function() {
			// 应用启动，或从后台进入前台显示
			if (!this.globalData.token) {
				this.autoLogin()
			}
		},
		onHide: function() {
			// 应用从前台进入后台
		},
		methods: {
			async getBaseInfo(vm, callBack) {
				uni.showLoading({
					title: '加载中……'
				})
				const res = await vm.$u.api.getSettleBaseInfo()
				console.log(res,'res')
				if(res.code !==200){
					uni.showToast({
						title: res && res.message || '获取基本信息错误',
						icon: 'none'
					});
					return false;
				}

				this.globalData.settledInfo = res.data
				if (!res.data) {
					return
				}
				callBack(vm, res.data)
				uni.hideLoading()
				return res.data
			
			},
			
			/**
			 * 用户自动登录
			 */
			autoLogin() {
				let that = this
				uni.login({
					async success(res) {
						if (res.code) {
							let params = {
								code: res.code,
								wxAppNo: 1, // 自营平台小程序
							}
							let result = await that.$u.api.loginWechatAuth(params)
							if (result) {
								if (result.code == 200 && result.data) {
									that.setUserData(result.data)
								}
							} else {
								uni.showModal({
									title: '请求失败',
									content: result.message,
									showCancel: false
								});
							}
							uni.hideLoading()
						} else {
							uni.showModal({
								title: '登录失败',
								content: '未获取到code',
							});
						}
					},
					fail() {
			
					}
				});
			},
			setUserData(userInfo) {
				if (userInfo && userInfo.token) {
					// 如果已经登录则直接获取相关信息
					util.setOpenid(userInfo.wxopenid)
					util.setToken(userInfo.token)
					uni.setStorageSync('user-info', userInfo);
				} else {
					util.setToken('')
				}
			},
			
			/* ------------------------- 数据埋点begin ------------------------------ */
			track(event, properties) {
				if (AnalysysAgent) {
					// 易观添加事件
					let AnalysysAgent = wx.AnalysysAgent;
					AnalysysAgent.track("take_order_" + event, properties);
				}
			},
			identify(userInfo, openid, unionid = null) {
				// 设备身份表示
				if (AnalysysAgent) {
					let setProfile = {
						'openid': openid,
						'unionid': unionid,
					}
					setProfile = Object.assign(setProfile, userInfo)
					AnalysysAgent.profileSet(setProfile);
				}
			},
			setUserId(userId) {
				// 用户id设置
				if (AnalysysAgent) {
					AnalysysAgent.alias(userId + '')
				}
			},
			setUser(user) {
				// 用户附加属性
				if (AnalysysAgent) {
					let userInfo = {
						'mobile': user.mobile,
						'userfrom_id': user.uid,
						'userfrom': '家维广场',
						'avatar': user.avatar,
						'nickname': user.nickname,
						'username': user.username,
						'wxhuid': user.wxhuid,
						'id': user.id,
						'money': user.money,
						'score': user.score
					};
					Object.keys(userInfo).map(key => {
						if (key && userInfo[key]) {
							AnalysysAgent.profileAppend(key, userInfo[key])
						}
					})
				}
			},
			share(toShareProperties, trackProperties) {
				if (AnalysysAgent) {
					AnalysysAgent.share(toShareProperties, trackProperties);
				}
			},
			trackPage(pageName, properties) {
				if (AnalysysAgent) {
					AnalysysAgent.pageView(pageName, properties);
				}
			},
			initShare(option) {
				console.log(option, 'option-initShare')
				option = option || {}
				if (AnalysysAgent && option.user_id) {
					let shareUserInfo = {
						'share_from_id': option.user_id || '',
						'share_from_nickname': option.user_name || '',
					}
					AnalysysAgent.registerSuperProperties(shareUserInfo);
				}
			},
			/* ------------------------- 数据埋点end ------------------------------ */
		}
	}
</script>

<style>
	/*每个页面公共css */
</style>
<style lang="scss">
	/* 注意要写在第一行，同时给style标签加入lang="scss"属性 */
	@import "uview-ui/index.scss";
	@import '@/common/index.scss';
</style>