/**** 此文件说明请看注释 *****/
// 可以用自己项目的请求方法
// 请求配置说明：https://ext.dcloud.net.cn/plugin?id=822
import RequestFun from './request.js'
import {update_url} from "../config.js"
/**** 结束 *****/
const platform = uni.getSystemInfoSync().platform;
export default {
    // 发起ajax请求获取服务端版本号
    getServerNo: (version, isPrompt = false, callback) => {
        let httpData = {
            version: version.versionCode,
            // 版本名称
            versionName: version.versionName,
            // setupPage参数说明（判断用户是不是从设置页面点击的更新，如果是设置页面点击的更新，有不要用静默更新了，不然用户点击没反应很奇怪的）
            setupPage: isPrompt   
        };
        if (platform == "android") {
            httpData.type = 1101;
        } else {
            httpData.type = 1102;
        }
        /* 接口入参说明
         * version: 应用当前版本号（已自动获取）
         * versionName: 应用当前版本名称（已自动获取）
         * type：平台（1101是安卓，1102是IOS）
         */
        /****************以下是示例*******************/
        // 可以用自己项目的请求方法（接口自己找后台要，插件不提供）
		uni.request({
			url:update_url, //
			method:'GET',
			dataType:'text',
			data:httpData,
			success: (res) => {
				let data = JSON.parse(res.data)
				/* res的数据说明
				 * | 参数名称        | 一定返回     | 类型        | 描述
				 * | -------------|--------- | --------- | ------------- |
				 * | versionCode     | y        | int       | 版本号        |
				 * | versionName     | y        | String    | 版本名称      |
				 * | versionInfo     | y        | String    | 版本信息      |
				 * | updateType      | y        | String    | forcibly = 强制更新, solicit = 弹窗确认更新, silent = 静默更新 |
				 * | downloadUrl     | y        | String    | 版本下载链接（IOS安装包更新请放跳转store应用商店链接,安卓apk和wgt文件放文件下载链接）  |
				 */
				if (data && data.downloadUrl && (parseInt(data.versionCode) > parseInt(httpData.version))) {
				    // 兼容之前的版本（updateType是新版才有的参数）
					if(update_url == "http://192.168.20.132:8070/apph5/downLoad/update.txt"){
						data.downloadUrl = data.downloadUrlTest
						data.AndriodUrl = data.AndriodUrlTest
					}
					if(parseInt(data.versionCode.substr(0,2)) > parseInt(httpData.version.substr(0,2))){  //整包更新
						data.downloadUrl = data.AndriodUrl
					}
				    if(data.updateType){
				        callback && callback(data);
				    } else {
				        if(data.forceUpdate){
				            data.updateType = "forcibly";
				        } else {
				            data.updateType = "solicit";
				        }
				        callback && callback(data);
				    }
				} else if (isPrompt) {
				    uni.showToast({
				        title: "暂无新版本",
				        icon: "none"
				    });
				}
				
			},
			fail: (error) =>{
				try{
					plus.nativeUI.toast(error.errMsg);
				}catch(e){
					plus.nativeUI.toast("连接超时，请检查您的网络~");
				}
				console.log(error)
				reject(error)
			},
		});
        // $http.get("api/common/v1/app_version", httpData,{
        //     isPrompt: isPrompt
        // }).then(res => {
        //     /* res的数据说明
        //      * | 参数名称        | 一定返回     | 类型        | 描述
        //      * | -------------|--------- | --------- | ------------- |
        //      * | versionCode     | y        | int       | 版本号        |
        //      * | versionName     | y        | String    | 版本名称      |
        //      * | versionInfo     | y        | String    | 版本信息      |
        //      * | updateType      | y        | String    | forcibly = 强制更新, solicit = 弹窗确认更新, silent = 静默更新 |
        //      * | downloadUrl     | y        | String    | 版本下载链接（IOS安装包更新请放跳转store应用商店链接,安卓apk和wgt文件放文件下载链接）  |
        //      */
        //     if (res && res.downloadUrl) {
        //         // 兼容之前的版本（updateType是新版才有的参数）
        //         if(res.updateType){
        //             callback && callback(res);
        //         } else {
        //             if(res.forceUpdate){
        //                 res.updateType = "forcibly";
        //             } else {
        //                 res.updateType = "solicit";
        //             }
        //             callback && callback(res);
        //         }
        //     } else if (isPrompt) {
        //         uni.showToast({
        //             title: "暂无新版本",
        //             icon: "none"
        //         });
        //     }
        // });
        /****************以上是示例*******************/
    },
    // 弹窗主颜色（不填默认粉色）
    appUpdateColor: "3489ff",
    // 弹窗图标（不填显示默认图标，链接配置示例如： '/static/demo/ic_attention.png'）
    appUpdateIcon: ''
}