
//APP更新

import * as config from '../config'
export default function appUpdate() {
		
	let baseUrlNew = config.def().baseUrlNew
	console.log('id',plus.runtime.appid)
	console.log('version',plus.runtime.version)
	
	uni.request({
	    url: 'https://apitest.eliangeyun.com/appVersion/selectInfo',
	    data: {
	    	appid: plus.runtime.appid,
	    	version: plus.runtime.version,
	    	imei: "1",
			type:'hz'
	    },
	    method: 'GET',
	    success: (res) => {			
			console.log(222222222222222222222222222)
	    	if (res.statusCode === 200) {
				console.log("uni.request update success",res)
				plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {
					let client_version = wgtinfo.version
					var flag_update = client_version.split(".").splice(0, 2).join(".") != res.data.data.version.split(".").splice(0, 2)
						.join(".")
					var flag_hot = (Number(client_version.split(".")[2]) < Number(res.data.data.version.split(".")[2])) & !flag_update
					console.log("client_version",client_version) 
					console.log("flag_update",flag_update)
					console.log("flag_hot",flag_hot)
				
					if (flag_update) {
						console.log("更新弹窗")
						// 提醒用户更新
						uni.showModal({
							title: '更新提示',
							content: res.data.data.note,
							success: (showResult) => {
								if (showResult.confirm) {
									plus.nativeUI.toast("正在准备环境，请稍后!");
									console.log(res.data.data.url, )
									var dtask = plus.downloader.createDownload(res.data.data.url, {
										method: 'GET',
										filename: '_doc/update/'
									}, function(d, status) {
										if (status == 200) {
											var path = d.filename; //下载apk
											plus.runtime.install(path); // 自动安装apk文件
										} else {
											plus.nativeUI.alert('版本更新失败:' + status);
										}
									});
									dtask.start();
								}
							}
						})
					} else if (flag_hot) {
						console.log("热更新") 
						uni.downloadFile({
							url: res.data.data.wgtUrl,
							success: (downloadResult) => {
								console.log(downloadResult.tempFilePath)
								if (downloadResult.statusCode === 200) {
									plus.nativeUI.toast(`正在热更新!${res.data.data.versionCode}`);
									plus.runtime.install(downloadResult.tempFilePath, {
										force: false
									}, function() {
										plus.nativeUI.toast("热更新成功");
										plus.runtime.restart();
									}, function(e) {
										console.log(e)
										plus.nativeUI.toast(`热更新失败:${e.message}`);
									});
								}
							}
						});
					}
				
				});
	    	}
	    },fail(res) {
	    	console.log(222222222222222222222222222)
			console.log(res)
	    }
	})

}
