1 |
- {"ast":null,"code":"var strUrl = window.location.href;\nvar strIp = \"\";\nstrIp = strUrl.split('//')[1].split('/')[0];\n// if(strIp == 'localhost:8080')\n// {\n// strIp = '172.16.50.4:18080'\n// }\n\nif (strIp == '127.0.0.1:8080') {\n strIp = '172.16.50.4:18080';\n}\nif (strIp == '172.16.30.57:8080') {\n strIp = '172.16.50.4:18080';\n}\nconst urlBaseSet = {\n OSS: \"https://bucket-model.oss-cn-beijing.aliyuncs.com\",\n //CDN: \"http://127.0.0.1:8080\",\n //ICDN: \"http://127.0.0.1:8080\",\n //TCDN: \"http://127.0.0.1:8080\",\n //CDN: \"https://modelcdn2.3dnest.cn\",\n //ICDN: \"https://infocdn2.3dnest.cn\",\n //TCDN: \"https://template2.3dnest.cn\",\n //CDN: \"http://172.16.50.4:18080\",\n //ICDN: \"http://172.16.50.4:18080\",\n //TCDN: \"http://172.16.50.4:18080\",\n CDN: \"http://\" + strIp,\n ICDN: \"http://\" + strIp,\n TCDN: \"http://\" + strIp,\n EDIT: \"/manager_house/model/rtiframedata/\"\n};\nlet modelId; // 模型id\nlet modelVersion; // 模型版本号\nlet modelSetting; // 模型版本设置\nlet companyId; // 公司Id\nlet globalSetting = null;\n// 获取页面对应的单个参数 start by ytj\nfunction getParams(key) {\n let search = window.location.search.replace(/^\\?/, \"\");\n let pairs = search.split(\"&\");\n let paramsMap = pairs.map(pair => {\n let [key, value] = pair.split(\"=\");\n return [decodeURIComponent(key), decodeURIComponent(value)];\n }).reduce((res, [key, value]) => Object.assign(res, {\n [key]: value\n }), {});\n return paramsMap[key] || \"\";\n}\n// 获取页面对应的单个参数 end by ytj\n\n// 获取模型版本信息\nconst getModelVesionUrl = urlBaseSet => {\n modelId = getParams('m');\n let currentDate = new Date().getTime();\n return `${urlBaseSet.CDN}/${modelId}/version.txt?f=${currentDate}`;\n};\n// 获取模型配置信息\nconst getModelSettingUrl = (urlBaseSet, modelVersion, modelSetting) => {\n return `${urlBaseSet.ICDN}/${modelId}/${modelVersion}/settings.txt?s=${modelSetting}`;\n};\n// 获取模型公司配置\nconst getCompanySettingUrl = companyId => {\n let currentDate = new Date().getTime();\n return `${urlBaseSet.TCDN} /company/${companyId}/company.txt?t=${currrentDate}`;\n};\nconst fetchData = url => {\n return new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.open('GET', url);\n xhr.onload = () => {\n if (xhr.status >= 200 && xhr.status < 300) {\n resolve(JSON.parse(xhr.responseText));\n } else {\n reject(xhr.statusText);\n }\n };\n xhr.onerror = () => reject(xhr.statusText);\n xhr.send();\n });\n};\n\n// 这是我们的包装函数,它返回一个数组\nconst awaitWrap = promise => {\n return promise.then(data => [null, data]).catch(err => [err, null]);\n};\n\n// 这是我们的主函数,它按顺序执行三个请求,并合并返回的数据\nconst fetchAndCombine = async () => {\n let combinedData = {};\n let backgroundBgUrl = `${urlBaseSet.ICDN}/${modelId}/https://infocdn2.3dnest.cn/881f840a_q8X6_b6f9_DAP/background.jpg?`;\n try {\n let modelVersionUrl = getModelVesionUrl(urlBaseSet);\n const [err1, modelVersionData] = await awaitWrap(fetchData(modelVersionUrl));\n if (err1) {\n throw new Error(`Error fetching data from ${modelVersionUrl}: ${err1}`);\n }\n console.log('=====模型版本数据========', modelVersionData);\n // combinedData = { ...combinedData, ...modelVersionData };\n let modelSettingUrl = getModelSettingUrl(urlBaseSet, modelVersionData.version, modelVersionData.setting);\n const [err2, modelSettingData] = await awaitWrap(fetchData(modelSettingUrl));\n if (err2) throw new Error(`Error fetching data from url2: ${err2}`);\n // onsole.log('=====模型版本数据========',modelSettingData);\n // combinedData = { ...combinedData, ...modelSettingData };\n console.log('=====模型配置数据========', modelSettingData);\n if (!!modelSettingData?.basic?.user?.group && !!modelSettingData?.basic?.user?.group > 1) {\n let companySettingUrl = getCompanySettingUrl(modelSettingData.basic.user.group);\n const [err3, data3] = await awaitWrap(fetchData(companySettingUrl));\n if (err3) throw new Error(`Error fetching data from url3: ${err3}`);\n } else {}\n let siteConf = {\n \"type\": \"display\",\n \"versionpre\": `${urlBaseSet.CDN}/${modelId}/`,\n \"modelpre\": `${urlBaseSet.CDN}/${modelId}/`,\n \"infopre\": `${urlBaseSet.ICDN}/${modelId}/`,\n \"setpre\": `${urlBaseSet.ICDN}/${modelId}/`\n };\n globalSetting = {\n modelId: modelId,\n settings: modelSettingData,\n version: modelVersionData,\n siteConf: siteConf,\n enterType: 3\n };\n return [null, globalSetting];\n // combinedData = { ...combinedData, ...data3 };\n } catch (error) {\n return [error, null];\n }\n return [null, globalSetting];\n};\n\n// 导出主函数\nexport default fetchAndCombine;","map":{"version":3,"names":["strUrl","window","location","href","strIp","split","urlBaseSet","OSS","CDN","ICDN","TCDN","EDIT","modelId","modelVersion","modelSetting","companyId","globalSetting","getParams","key","search","replace","pairs","paramsMap","map","pair","value","decodeURIComponent","reduce","res","Object","assign","getModelVesionUrl","currentDate","Date","getTime","getModelSettingUrl","getCompanySettingUrl","currrentDate","fetchData","url","Promise","resolve","reject","xhr","XMLHttpRequest","open","onload","status","JSON","parse","responseText","statusText","onerror","send","awaitWrap","promise","then","data","catch","err","fetchAndCombine","combinedData","backgroundBgUrl","modelVersionUrl","err1","modelVersionData","Error","console","log","modelSettingUrl","version","setting","err2","modelSettingData","basic","user","group","companySettingUrl","err3","data3","siteConf","settings","enterType","error"],"sources":["/Users/mac/projects/mime/mine/public/loader/loader.js"],"sourcesContent":["var strUrl=window.location.href;\nvar strIp = \"\";\nstrIp = strUrl.split('//') [1].split('/')[0]\n// if(strIp == 'localhost:8080')\n// {\n// strIp = '172.16.50.4:18080'\n// }\n\nif(strIp == '127.0.0.1:8080')\n{\n strIp = '172.16.50.4:18080'\n}\n\nif(strIp == '172.16.30.57:8080')\n{\n strIp = '172.16.50.4:18080'\n}\n\nconst urlBaseSet = {\n OSS: \"https://bucket-model.oss-cn-beijing.aliyuncs.com\",\n //CDN: \"http://127.0.0.1:8080\",\n //ICDN: \"http://127.0.0.1:8080\",\n //TCDN: \"http://127.0.0.1:8080\",\n //CDN: \"https://modelcdn2.3dnest.cn\",\n //ICDN: \"https://infocdn2.3dnest.cn\",\n //TCDN: \"https://template2.3dnest.cn\",\n //CDN: \"http://172.16.50.4:18080\",\n //ICDN: \"http://172.16.50.4:18080\",\n //TCDN: \"http://172.16.50.4:18080\",\n CDN: \"http://\" + strIp,\n ICDN: \"http://\" + strIp,\n TCDN: \"http://\" + strIp,\n EDIT: \"/manager_house/model/rtiframedata/\",\n};\nlet modelId; // 模型id\nlet modelVersion; // 模型版本号\nlet modelSetting; // 模型版本设置\nlet companyId; // 公司Id\nlet globalSetting = null;\n// 获取页面对应的单个参数 start by ytj\nfunction getParams(key) {\n let search = window.location.search.replace(/^\\?/, \"\");\n let pairs = search.split(\"&\");\n let paramsMap = pairs.map(pair => {\n let [key, value] = pair.split(\"=\");\n return [decodeURIComponent(key), decodeURIComponent(value)];\n }).reduce((res, [key, value]) => Object.assign(res, { [key]: value }), {});\n return paramsMap[key] || \"\";\n}\n// 获取页面对应的单个参数 end by ytj\n\n\n// 获取模型版本信息\nconst getModelVesionUrl = (urlBaseSet)=>{\n modelId = getParams('m');\n let currentDate = new Date().getTime(); \n return `${urlBaseSet.CDN }/${modelId}/version.txt?f=${currentDate}`\n}\n// 获取模型配置信息\nconst getModelSettingUrl = (urlBaseSet,modelVersion,modelSetting)=>{\n return `${urlBaseSet.ICDN}/${modelId}/${modelVersion}/settings.txt?s=${ modelSetting}`\n}\n// 获取模型公司配置\nconst getCompanySettingUrl = (companyId)=>{\n let currentDate = new Date().getTime(); \n return `${urlBaseSet.TCDN} /company/${companyId}/company.txt?t=${currrentDate}`\n }\nconst fetchData = (url) => {\n return new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.open('GET', url);\n xhr.onload = () => {\n if (xhr.status >= 200 && xhr.status < 300) {\n resolve(JSON.parse(xhr.responseText));\n } else {\n reject(xhr.statusText);\n }\n };\n xhr.onerror = () => reject(xhr.statusText);\n xhr.send();\n });\n }\n \n // 这是我们的包装函数,它返回一个数组\n const awaitWrap = (promise) => {\n return promise\n .then(data => [null, data])\n .catch(err => [err, null]);\n }\n \n // 这是我们的主函数,它按顺序执行三个请求,并合并返回的数据\n const fetchAndCombine = async () => {\n let combinedData = {};\n let backgroundBgUrl = `${urlBaseSet.ICDN}/${modelId}/https://infocdn2.3dnest.cn/881f840a_q8X6_b6f9_DAP/background.jpg?`\n try {\n let modelVersionUrl = getModelVesionUrl(urlBaseSet);\n const [err1, modelVersionData] = await awaitWrap(fetchData(modelVersionUrl));\n if (err1) {\n throw new Error(`Error fetching data from ${modelVersionUrl}: ${err1}`);\n }\n console.log('=====模型版本数据========',modelVersionData);\n // combinedData = { ...combinedData, ...modelVersionData };\n let modelSettingUrl = getModelSettingUrl(urlBaseSet,modelVersionData.version,modelVersionData.setting)\n const [err2, modelSettingData] = await awaitWrap(fetchData(modelSettingUrl));\n if (err2) throw new Error(`Error fetching data from url2: ${err2}`);\n // onsole.log('=====模型版本数据========',modelSettingData);\n // combinedData = { ...combinedData, ...modelSettingData };\n console.log('=====模型配置数据========',modelSettingData);\n if(!!modelSettingData?.basic?.user?.group&&!!modelSettingData?.basic?.user?.group>1){\n let companySettingUrl = getCompanySettingUrl(modelSettingData.basic.user.group)\n const [err3, data3] = await awaitWrap(fetchData(companySettingUrl));\n if (err3) throw new Error(`Error fetching data from url3: ${err3}`);\n }else {\n\n }\n let siteConf = {\n \"type\": \"display\",\n \"versionpre\": `${urlBaseSet.CDN}/${modelId}/`,\n \"modelpre\": `${urlBaseSet.CDN}/${modelId}/`,\n \"infopre\": `${urlBaseSet.ICDN}/${modelId}/`,\n \"setpre\": `${urlBaseSet.ICDN}/${modelId}/`\n \n }\n globalSetting = {\n modelId: modelId,\n settings: modelSettingData,\n version: modelVersionData,\n siteConf: siteConf,\n enterType: 3\n }\n return [null, globalSetting];\n // combinedData = { ...combinedData, ...data3 };\n } catch (error) {\n return [error, null];\n }\n \n return [null, globalSetting];\n }\n \n // 导出主函数\n export default fetchAndCombine;\n "],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}
|