Compare commits
	
		
			No commits in common. "553953ebaf6cdfd33bb35e4470cadd452492f08a" and "e0efddabf3f19954dfc471b57542bf8024dff1a2" have entirely different histories.
		
	
	
		
			553953ebaf
			...
			e0efddabf3
		
	
		
							
								
								
									
										2
									
								
								App.vue
									
									
									
									
									
								
							
							
						
						| @ -1,7 +1,5 @@ | ||||
| <script> | ||||
| import pageAnimation from './components/page-animation' | ||||
| 	export default { | ||||
| 		mixins: [pageAnimation], | ||||
| 		onLaunch: function() { | ||||
| 			console.log('App Launch') | ||||
| 		}, | ||||
|  | ||||
| @ -1,28 +0,0 @@ | ||||
| /* #ifdef H5 */ | ||||
| uni-page { | ||||
| 	opacity: 0; | ||||
| } | ||||
| 
 | ||||
| uni-page.animation-before { | ||||
| 	/* 在页面上使用 transform 会导致页面内的 fixed 定位渲染为 absolute,需要在动画完成后移除 */ | ||||
| 	transform: translateY(20px); | ||||
| } | ||||
| 
 | ||||
| uni-page.animation-leave { | ||||
| 	transition: all .3s ease; | ||||
| } | ||||
| 
 | ||||
| uni-page.animation-enter { | ||||
| 	transition: all .3s ease; | ||||
| } | ||||
| 
 | ||||
| uni-page.animation-show { | ||||
| 	opacity: 1; | ||||
| } | ||||
| 
 | ||||
| uni-page.animation-after { | ||||
| 	/* 在页面上使用 transform 会导致页面内的 fixed 定位渲染为 absolute,需要在动画完成后移除 */ | ||||
| 	transform: translateY(0); | ||||
| } | ||||
| 
 | ||||
| /* #endif */ | ||||
| @ -1,37 +0,0 @@ | ||||
| <script> | ||||
| 	import './index.css' | ||||
| 	export default { | ||||
| 		// #ifdef H5 | ||||
| 		onLaunch: function() { | ||||
| 			this.show() | ||||
| 			this.$router.beforeEach((to, from, next) => { | ||||
| 				this.hide(next) | ||||
| 			}) | ||||
| 			this.$router.afterEach(() => { | ||||
| 				setTimeout(this.show, 50) | ||||
| 			}) | ||||
| 		}, | ||||
| 		methods: { | ||||
| 			hide(callback) { | ||||
| 				const classList = document.querySelector('uni-page').classList | ||||
| 				classList.add('animation-before', 'animation-leave') | ||||
| 				classList.remove('animation-show') | ||||
| 				setTimeout(() => { | ||||
| 					classList.remove('animation-before', 'animation-leave') | ||||
| 					callback && callback() | ||||
| 				}, 300) | ||||
| 			}, | ||||
| 			show() { | ||||
| 				const classList = document.querySelector('uni-page').classList | ||||
| 				classList.add('animation-before') | ||||
| 				setTimeout(() => { | ||||
| 					classList.add('animation-enter', 'animation-after', 'animation-show') | ||||
| 					setTimeout(() => { | ||||
| 						classList.remove('animation-before', 'animation-after', 'animation-enter') | ||||
| 					}, 300) | ||||
| 				}, 20) | ||||
| 			} | ||||
| 		}, | ||||
| 		// #endif | ||||
| 	} | ||||
| </script> | ||||
| @ -4,12 +4,10 @@ import login from './login' | ||||
| import mine from './mine' | ||||
| import series from './series' | ||||
| import airdrop from './airdrop' | ||||
| import usa from './usa' | ||||
| export default { | ||||
| 	login, | ||||
| 	mine, | ||||
| 	series, | ||||
| 	airdrop, | ||||
| 	usa | ||||
| 	airdrop | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -10,9 +10,13 @@ export default { | ||||
|       "Content-Type": "application/json;charset=UTF-8", | ||||
|       // 'Content-Type':'application/x-www-form-urlencoded'
 | ||||
|       "Accept-Language": | ||||
|         navigator.language === "zh-CN" | ||||
|           ? "zh-Hans" | ||||
|           : "en", | ||||
|         navigator.language === "en" | ||||
|           ? "en" | ||||
|           : navigator.language === "zh-Hans" | ||||
|             ? "zh-CN" | ||||
|             : navigator.language === "zh-Hant" | ||||
|               ? "zh-TW" | ||||
|               : "zh-CN", | ||||
|     }, | ||||
|     data: {}, | ||||
|     method: "GET", | ||||
| @ -67,7 +71,9 @@ export default { | ||||
|           } | ||||
|         } | ||||
|         if (response.data.status === 401) { | ||||
|          | ||||
|           uni.navigateTo({ | ||||
|             url: "/pages/login/login", | ||||
|           }); | ||||
|         } | ||||
|         // 统一的响应日志记录
 | ||||
|         _reslog(response); | ||||
|  | ||||
							
								
								
									
										58
									
								
								http/usa.js
									
									
									
									
									
								
							
							
						
						| @ -1,58 +0,0 @@ | ||||
| import http from './interface' | ||||
| 
 | ||||
| // 1.1 礼包详情
 | ||||
| export const getList = (data) => { | ||||
| 	return http.request({ | ||||
| 		url: '/mall/gift/active/series/info', | ||||
| 		method: 'POST', | ||||
| 		data | ||||
| 	}) | ||||
| } | ||||
| // 藏品列表
 | ||||
| export const getCollectionList = (data) => { | ||||
|     return http.request({ | ||||
|         url: '/mall/gift/active/collections/list', | ||||
|         method: 'POST', | ||||
|         data | ||||
|     }) | ||||
| } | ||||
| // 领取
 | ||||
| export const receive = (data) => { | ||||
|     return http.request({ | ||||
|         url: '/mall/gift/active/draw', | ||||
|         method: 'POST', | ||||
|         data | ||||
|     }) | ||||
| } | ||||
| // 详情
 | ||||
| export const collectionsInfo = (data) => { | ||||
|     return http.request({ | ||||
|         url: '/mall/gift/active/collections/detail', | ||||
|         method: 'POST', | ||||
|         data | ||||
|     }) | ||||
| } | ||||
| // 我的藏品列表
 | ||||
| export const getMyCollectionList = (data) => { | ||||
|     return http.request({ | ||||
|         url: '/mall/gift/active/my/collections/list', | ||||
|         method: 'POST', | ||||
|         data | ||||
|     }) | ||||
| } | ||||
| // 获取系列的助记词
 | ||||
| export const getSeriesMnemonic = (data) => { | ||||
|     return http.request({ | ||||
|         url: '/mall/gift/active/scan/by/pwd', | ||||
|         method: 'POST', | ||||
|         data | ||||
|     }) | ||||
| } | ||||
| export default { | ||||
| 	getList, | ||||
|     getCollectionList, | ||||
|     receive, | ||||
|     collectionsInfo, | ||||
|     getMyCollectionList, | ||||
|     getSeriesMnemonic | ||||
| } | ||||
| @ -1,7 +1,6 @@ | ||||
| <!DOCTYPE html> | ||||
| <html lang="en"> | ||||
|   <head> | ||||
|     <meta name="viewport" content="width=device-width, viewport-fit=cover"> | ||||
|     <meta charset="UTF-8" /> | ||||
|     <script> | ||||
|       var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || | ||||
| @ -12,7 +11,6 @@ | ||||
|     </script> | ||||
|     <title></title> | ||||
|     <!--preload-links--> | ||||
|     <link rel="icon"  href="./static/log.png"/> | ||||
|     <!--app-context--> | ||||
|   </head> | ||||
|   <body> | ||||
|  | ||||
| @ -1,23 +1,5 @@ | ||||
| { | ||||
|   "app.name": "fontree", | ||||
|   "start.title": "Generating a blockchain identity⋯", | ||||
|   "seriesData.detail": "Gift package details", | ||||
|   "seriesData.recive": "Claim all", | ||||
|   "seriesData.success": "Claimed successfully!",  | ||||
|   "usa.adress": "Address", | ||||
|   "usa.remember": "Mnemonic words", | ||||
|   "usa.check": "Check", | ||||
|   "usa.hasGet": "Items received", | ||||
|   "usa.popTitle": "Check Mnemonic words", | ||||
|   "usa.inputPassword": "Enter a 6-digit password", | ||||
|   "usa.warningPwd": "Please enter a 6-digit password", | ||||
|   "usa.copySuccess": "Copy successful!", | ||||
|   "usa.back": "Back", | ||||
|   "usa.backAndCopy": "Copy and back", | ||||
|   "series.play": "Play Collections Detail Video", | ||||
|   "usa.cancel": "Cancel", | ||||
|   "usa.confirm": "Confirm", | ||||
|   "usa.Password": "Password", | ||||
|   "tabbar.home": "Home", | ||||
|   "tabbar.mine": "Mine", | ||||
|   "index.title": "Home", | ||||
|  | ||||
| @ -1,23 +1,5 @@ | ||||
| { | ||||
|   "app.name": "助记词", | ||||
|   "start.title": "正在生成区块链身份中⋯", | ||||
|   "seriesData.detail": "礼包详情", | ||||
|   "seriesData.recive": "全部领取", | ||||
|   "seriesData.success": "领取成功!",  | ||||
|   "usa.adress": "地址", | ||||
|   "usa.remember": "助记词", | ||||
|   "usa.check": "点击查看", | ||||
|   "usa.hasGet": "已获取商品", | ||||
|   "usa.popTitle": "查看助记词", | ||||
|   "usa.inputPassword": "请输入6位数字密码", | ||||
|   "usa.warningPwd": "请输入密码", | ||||
|   "usa.copySuccess": "复制成功!", | ||||
|   "usa.back": "返回", | ||||
|   "usa.backAndCopy": "复制并返回", | ||||
|   "series.play": "播放视频详情", | ||||
|   "usa.cancel": "取消", | ||||
|   "usa.confirm": "确认", | ||||
|   "usa.Password": "密码", | ||||
|   "app.name": "丰链艺树", | ||||
|   "tabbar.home": "首页", | ||||
|   "tabbar.mine": "我的", | ||||
|   "index.title": "首页", | ||||
|  | ||||
							
								
								
									
										6
									
								
								main.js
									
									
									
									
									
								
							
							
						
						| @ -10,12 +10,10 @@ const messages = { | ||||
| }; | ||||
| 
 | ||||
| let i18nConfig = { | ||||
|   locale: | ||||
|     navigator.language === "zh-CN" | ||||
|       ? "zh-Hans" | ||||
|       : "en", | ||||
|   locale: uni.getLocale(), // 获取已设置的语言
 | ||||
|   messages, | ||||
| }; | ||||
| 
 | ||||
| //弹出框禁止滑动
 | ||||
| Vue.prototype.stopScroll = function () { | ||||
|   var mo = function (e) { | ||||
|  | ||||
| @ -1,5 +1,5 @@ | ||||
| { | ||||
|     "name" : "助记词", | ||||
|     "name" : "艺术商城", | ||||
|     "appid" : "__UNI__7D47507", | ||||
|     "description" : "", | ||||
|     "versionName" : "1.0.0", | ||||
| @ -9,7 +9,7 @@ | ||||
|     /* 5+App特有相关 */ | ||||
|     "app-plus" : { | ||||
|         "safearea" : { | ||||
|             "bottom" : "auto" | ||||
|             "bottom" : "none" | ||||
|         }, | ||||
|         "usingComponents" : true, | ||||
|         "nvueStyleCompiler" : "uni-app", | ||||
| @ -117,7 +117,6 @@ | ||||
|     }, | ||||
|     "vueVersion" : "2", | ||||
|     "h5" : { | ||||
|         "title" : "", | ||||
|         "template" : "" | ||||
|         "title" : "艺树商城" | ||||
|     } | ||||
| } | ||||
|  | ||||
							
								
								
									
										508
									
								
								pages.json
									
									
									
									
									
								
							
							
						
						| @ -1,257 +1,253 @@ | ||||
| { | ||||
|   "easycom": { | ||||
|     "^u-(.*)": "uview-ui/components/u-$1/u-$1.vue" | ||||
|   }, | ||||
|   "pages": [ | ||||
|     //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages | ||||
|     { | ||||
|       "path": "pages/start/start", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/usamine/index", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "个人中心", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/changePhone/changePhone", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "loading", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/realName/realName", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/index", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "礼包详情", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false, // 禁用原生导航 | ||||
|           "animationType": "fade-in", | ||||
|           "animationDuration": 100 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/index", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/series/series", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/activeSeries/activeSeries", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/detail/detail", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/login/login", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/setting/setting", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/notice/notice", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/comfirm/comfirm", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/payment/payment", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/detail/detail", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/cert/cert", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/login/sendCode/sendCode", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/login/welcome/welcome", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/detail/open3D/open3D", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/mine/confirmOrder/confirmOrder", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/payment/reciveOK", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/activity/index", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "系列活动详情页", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "pages/index/activity/detail", | ||||
|       "style": { | ||||
|         "navigationBarTitleText": "藏品活动详情页", | ||||
|         "enablePullDownRefresh": false, | ||||
|         "app-plus": { | ||||
|           "titleNView": false // 禁用原生导航 | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     { | ||||
|       "path": "components/tabBar/tabBar", | ||||
|       "style": {} | ||||
|     } | ||||
|   ], | ||||
|   "globalStyle": { | ||||
|     "navigationBarTextStyle": "black", | ||||
|     "navigationBarTitleText": "uni-app", | ||||
|     "navigationBarBackgroundColor": "#F8F8F8", | ||||
|     "backgroundColor": "#F8F8F8", | ||||
|     "app-plus": { | ||||
|       "bounce": "none", | ||||
|       "animationType": "fade-in", | ||||
|       "animationDuration": 100 | ||||
|     } | ||||
|   }, | ||||
|   "tabBar": {}, | ||||
|   "uniIdRouter": {} | ||||
| } | ||||
| 	"easycom": { | ||||
| 		"^u-(.*)": "uview-ui/components/u-$1/u-$1.vue" | ||||
| 	}, | ||||
| 	"pages": [ | ||||
| 		//pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages | ||||
| 		{ | ||||
| 			"path": "pages/start/start", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/changePhone/changePhone", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/realName/realName", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/index", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/index", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/series/series", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/activeSeries/activeSeries", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/detail/detail", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/login/login", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/setting/setting", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/notice/notice", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/comfirm/comfirm", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/payment/payment", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/detail/detail", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/cert/cert", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/login/sendCode/sendCode", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/login/welcome/welcome", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/detail/open3D/open3D", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/mine/confirmOrder/confirmOrder", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/payment/reciveOK", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/activity/index", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "系列活动详情页", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "pages/index/activity/detail", | ||||
| 			"style": { | ||||
| 				"navigationBarTitleText": "藏品活动详情页", | ||||
| 				"enablePullDownRefresh": false, | ||||
| 				"app-plus": { | ||||
| 					"titleNView": false // 禁用原生导航 | ||||
| 				} | ||||
| 			} | ||||
| 		}, | ||||
| 		{ | ||||
| 			"path": "components/tabBar/tabBar", | ||||
| 			"style": {} | ||||
| 		} | ||||
| 	], | ||||
| 	"globalStyle": { | ||||
| 		"navigationBarTextStyle": "black", | ||||
| 		"navigationBarTitleText": "uni-app", | ||||
| 		"navigationBarBackgroundColor": "#F8F8F8", | ||||
| 		"backgroundColor": "#F8F8F8", | ||||
| 		"app-plus": { | ||||
| 			"bounce": "none" | ||||
| 		} | ||||
| 	}, | ||||
| 	"tabBar": { | ||||
| 		"list": [{ | ||||
| 				"pagePath": "pages/index/index", | ||||
| 				"text": "%tabbar.home%" | ||||
| 			}, | ||||
| 			{ | ||||
| 				"pagePath": "pages/mine/index", | ||||
| 				"text": "%tabbar.mine%" | ||||
| 			} | ||||
| 		] | ||||
| 	}, | ||||
| 	"uniIdRouter": {} | ||||
| } | ||||
| @ -1,55 +1,76 @@ | ||||
| <template> | ||||
|   <view> | ||||
|     <navBar | ||||
|       :navTitle="collectionsDetail.name" | ||||
|       :navTitle="collectionsDetail.Name" | ||||
|       :stickyShow="stickyShow" | ||||
|       :color="'#000000'" | ||||
|       :backBackGroundColor="'#699A70'" | ||||
|       v-if="!isActive" | ||||
|       :sfBack="true" | ||||
|       @triggerSfBack="back" | ||||
|     ></navBar> | ||||
|     <view | ||||
|       class="fixed-box" | ||||
|       :style="{ background: !isActive ? '#FFFFFF' : '#000000' }" | ||||
|     > | ||||
|       <view class="btn" v-if="!isActive"> | ||||
|         <u-button | ||||
|           type="primary" | ||||
|           :text="$t('navbar.back')" | ||||
|           class="back" | ||||
|           @click="back" | ||||
|         ></u-button> | ||||
|         <u-button | ||||
|           v-if="this.collectionsDetail.CurrencyType === 'point'" | ||||
|           type="success" | ||||
|           :text="'积分制尚未开通'" | ||||
|           class="buyer" | ||||
|         ></u-button> | ||||
| 
 | ||||
|     <view> | ||||
|         <u-button | ||||
|           v-if="this.collectionsDetail.CurrencyType === 'normal'" | ||||
|           type="success" | ||||
|           :text=" | ||||
|             this.collectionsDetail.SaleType === 'draw' | ||||
|               ? '领取' | ||||
|               : this.collectionsDetail.SaleType === 'normal' | ||||
|               ? '¥' + price + $t('collection.buy') | ||||
|               : '仅限渠道购买' | ||||
|           " | ||||
|           class="buyer" | ||||
|           @click="buy" | ||||
|         ></u-button> | ||||
|       </view> | ||||
|       <view class="btn" v-else> | ||||
|         <u-button | ||||
|           type="primary" | ||||
|           :text="$t('navbar.back')" | ||||
|           class="back-active" | ||||
|           @click="back" | ||||
|         ></u-button> | ||||
|         <u-button type="success" :text="'售罄'" class="sell-out"></u-button> | ||||
|       </view> | ||||
|     </view> | ||||
|     <view v-if="!isActive"> | ||||
|       <view class="top-img"> | ||||
|         <u-album :urls="[carouselFigureImg]" :singleSize="358"></u-album> | ||||
|         <!-- @click="open3D"--> | ||||
|         <image | ||||
|           :src="this.collectionsDetail.CollectionImg" | ||||
|           mode="widthFix" | ||||
|         ></image> | ||||
|         <!-- <text class="price" v-if="this.collectionsDetail.Price != 0">¥{{ this.collectionsDetail.Price }}</text> --> | ||||
|       </view> | ||||
|       <view v-show="videoPlay" style="text-align: center;"> | ||||
|         <video | ||||
| 		style="width: 92%;" | ||||
|           controls | ||||
|           id="myvideo" | ||||
|           :src="videoUrl" | ||||
|           @fullscreenchange="screenChange" | ||||
|           x5-video-player-type="h5" | ||||
|           x5-video-player-fullscreen="true" | ||||
|         ></video> | ||||
|       </view> | ||||
|       <u-button class="video-btn" @click="playVideo" type="primary" v-if="videoUrl.length>0">{{ | ||||
|         $t("series.play") | ||||
|       }}</u-button> | ||||
|       <view | ||||
|         class="title-t" | ||||
|         :style="{ fontSize: '36rpx', color: '#434343', fontWeight: 600 }" | ||||
|         >{{ $t("basic.info") }}</view | ||||
|       > | ||||
|       <view | ||||
|         class="info-box" | ||||
|         style="padding: 28rpx 32rpx 4rpx 32rpx; background: #ffffff" | ||||
|       > | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("series.name") }}</text> | ||||
|           <text class="value">{{ collectionsDetail.seriesName }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("series.issuer") }}</text> | ||||
|           <text class="value">{{ collectionsDetail.brandName }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("series.hash") }}</text> | ||||
|           <text class="des">{{ collectionsDetail.hash }}</text> | ||||
|         </view> | ||||
|       </view> | ||||
| 
 | ||||
|       <!-- <view class="title-t">{{ collectionsDetail.Price != 0 ? $t('letter.all') : $t('letter.you') }}</view> --> | ||||
|       <!-- <view class="info-box" style="padding: 28rpx 32rpx"> | ||||
| 			<image src="@/static/image/home/to1.png" class="title-img" v-if="collectionsDetail.Price != 0"></image> | ||||
| 			<image src="@/static/image/home/to.png" class="title-img" v-else></image> | ||||
| 			<image src="@/static/image/home/333.png" class="content-img" mode="widthFix" | ||||
| 				v-if="collectionsDetail.Price != 0"></image> | ||||
| 			<image src="@/static/image/home/222.png" class="content-img" mode="widthFix" v-else></image> | ||||
| 			<view style="text-align: right;"> | ||||
| 				<image src="@/static/image/home/from.png" class="from-img"></image> | ||||
| 			</view> | ||||
| 		</view> --> | ||||
|       <view | ||||
|         class="title-t" | ||||
|         :style="{ fontSize: '36rpx', color: '#434343', fontWeight: 600 }" | ||||
| @ -58,29 +79,29 @@ | ||||
|       <view class="info-box" style="padding: 28rpx 32rpx; background: #ffffff"> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("collection.name") }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.name || "-" }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.Name || "-" }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("collection.type") }}</text> | ||||
|           <text class="value">{{ | ||||
|             this.collectionsDetail.collectionType || "-" | ||||
|             this.collectionsDetail.CollectionType || "-" | ||||
|           }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("collection.size") }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.size || "-" }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.Size || "-" }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("collection.specs") }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.specs || "-" }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.Specs || "-" }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("collection.address") }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.address || "-" }}</text> | ||||
|           <text class="value">{{ this.collectionsDetail.Address || "-" }}</text> | ||||
|         </view> | ||||
|         <view class="item"> | ||||
|           <text class="label">{{ $t("collection.intro") }}</text> | ||||
|           <view class="des">{{ this.collectionsDetail.intro || "-" }}</view> | ||||
|           <view class="des">{{ this.collectionsDetail.Intro || "-" }}</view> | ||||
|         </view> | ||||
|       </view> | ||||
|       <view | ||||
| @ -89,11 +110,76 @@ | ||||
|         >{{ $t("collection.detail") }} | ||||
|       </view> | ||||
|       <view class="detail-info"> | ||||
|         <view v-if="detailImgList.length > 0" class="box"> | ||||
|         <!-- <view class="title-t">{{$t('collection.sell')}}</view> | ||||
| 			<view class="box"> | ||||
| 				<image v-for="item in sellPoint" :key="item" :src="item" mode="widthFix" class="img"></image> | ||||
| 			</view> --> | ||||
|         <view | ||||
|           v-if=" | ||||
|             this.CollectionUID !== '372afbef-4d3c-4e06-8fae-2ef1068b0a89' && | ||||
|             collDetails.length > 0 | ||||
|           " | ||||
|           class="title-t" | ||||
|           >{{ $t("collection.sellDec") }}</view | ||||
|         > | ||||
|         <view | ||||
|           v-if=" | ||||
|             this.CollectionUID !== '372afbef-4d3c-4e06-8fae-2ef1068b0a89' && | ||||
|             collDetails.length > 0 | ||||
|           " | ||||
|           class="box" | ||||
|         > | ||||
|           <image | ||||
|             v-for="(img, index) in detailImgList" | ||||
|             :src="img" | ||||
|             :key="index" | ||||
|             v-for="item in collDetails" | ||||
|             :src="item" | ||||
|             :key="item" | ||||
|             mode="widthFix" | ||||
|             class="img" | ||||
|           ></image> | ||||
|         </view> | ||||
|         <view | ||||
|           v-if=" | ||||
|             this.CollectionUID !== '372afbef-4d3c-4e06-8fae-2ef1068b0a89' && | ||||
|             companyInfo.length > 0 | ||||
|           " | ||||
|           class="title-t" | ||||
|           >{{ $t("collection.company") }}</view | ||||
|         > | ||||
|         <view | ||||
|           v-if=" | ||||
|             this.CollectionUID !== '372afbef-4d3c-4e06-8fae-2ef1068b0a89' && | ||||
|             companyInfo.length > 0 | ||||
|           " | ||||
|           class="box" | ||||
|         > | ||||
|           <image | ||||
|             v-for="item in companyInfo" | ||||
|             :src="item" | ||||
|             :key="item" | ||||
|             mode="widthFix" | ||||
|             class="img" | ||||
|           ></image> | ||||
|         </view> | ||||
|         <view v-if="copyright.length > 0" class="title-t">{{ | ||||
|           $t("collection.copyight") | ||||
|         }}</view> | ||||
|         <view v-if="copyright.length > 0" lass="box"> | ||||
|           <image | ||||
|             v-for="item in copyright" | ||||
|             :src="item" | ||||
|             :key="item" | ||||
|             mode="widthFix" | ||||
|             class="img" | ||||
|           ></image> | ||||
|         </view> | ||||
|         <view v-if="Blockchain.length > 0" class="title-t">{{ | ||||
|           $t("collection.blockchain") | ||||
|         }}</view> | ||||
|         <view v-if="Blockchain.length > 0" class="box"> | ||||
|           <image | ||||
|             v-for="item in Blockchain" | ||||
|             :src="item" | ||||
|             :key="item" | ||||
|             mode="widthFix" | ||||
|             class="img" | ||||
|           ></image> | ||||
| @ -108,8 +194,88 @@ | ||||
|         ></image> | ||||
|       </view> | ||||
|     </view> | ||||
| 
 | ||||
|     <view v-else class="active"> | ||||
|       <view class="head"> | ||||
|         <u-button class="back" @click="back"> 返回 </u-button> | ||||
|         <view>泰丰十周年纪念徽章</view> | ||||
|       </view> | ||||
|       <image | ||||
|         src="@/static/image/home/drawing-board.png" | ||||
|         mode="scaleToFill" | ||||
|         class="drawing-board" | ||||
|       /> | ||||
|     </view> | ||||
|     <view style="height: 180rpx"></view> | ||||
|     <u-popup | ||||
|       :show="showVerfy" | ||||
|       mode="center" | ||||
|       @close="closeVerfy" | ||||
|       bgColor="transparent" | ||||
|     > | ||||
|       <view class="popup-box"> | ||||
|         <view class="title">{{ $t("buyVerfy.title") }}</view> | ||||
|         <view class=""> | ||||
|           <view class="input-box"> | ||||
|             <view class="label">{{ $t("buyVerfy.username") }}:</view> | ||||
|             <view class="input"> | ||||
|               <u--input | ||||
|                 border="none" | ||||
|                 shape="circle" | ||||
|                 v-model="realName" | ||||
|                 @focus="verfFocus" | ||||
|               ></u--input> | ||||
|             </view> | ||||
|           </view> | ||||
|           <view class="input-box"> | ||||
|             <view class="label">{{ $t("buyVerfy.idNum") }}:</view> | ||||
|             <view class="input"> | ||||
|               <u--input | ||||
|                 border="none" | ||||
|                 shape="circle" | ||||
|                 v-model="idNum" | ||||
|                 @focus="verfFocus" | ||||
|               ></u--input> | ||||
|             </view> | ||||
|           </view> | ||||
|           <view class="flex-end"> | ||||
|             <view class="fl-e" v-if="succes"> | ||||
|               <image | ||||
|                 src="../../../static/image/home/true.png" | ||||
|                 mode="" | ||||
|                 style="width: 30rpx; height: 30rpx; margin-right: 5px" | ||||
|               ></image> | ||||
|               <text style="color: #ffffff; font-size: 24rpx">{{ | ||||
|                 $t("buyVerfy.suss") | ||||
|               }}</text> | ||||
|             </view> | ||||
|             <view class="fl-e" v-if="err"> | ||||
|               <image | ||||
|                 src="../../../static/image/home/false.png" | ||||
|                 mode="" | ||||
|                 style="width: 30rpx; height: 30rpx; margin-right: 5px" | ||||
|               ></image> | ||||
|               <text style="color: #fd343c; font-size: 24rpx">{{ | ||||
|                 $t("buyVerfy.error") | ||||
|               }}</text> | ||||
|             </view> | ||||
|           </view> | ||||
|         </view> | ||||
|         <u-button | ||||
|           :text="$t('buyVerfy.done')" | ||||
|           color="#699A70" | ||||
|           @click="verifyName" | ||||
|           style=" | ||||
| 			         	'width: 622rpx; | ||||
| 			            height: 56rpx; | ||||
| 			            border-radius: 40rpx; | ||||
| 			            margin-top: 114rpx;' | ||||
| 			          " | ||||
|         ></u-button> | ||||
|         <view @click="closeVerfy" class="cancel">{{ | ||||
|           $t("buyVerfy.cancel") | ||||
|         }}</view> | ||||
|       </view> | ||||
|     </u-popup> | ||||
|   </view> | ||||
| </template> | ||||
| 
 | ||||
| @ -119,45 +285,55 @@ export default { | ||||
|     return { | ||||
|       stickyShow: false, | ||||
|       showVerfy: false, | ||||
|       collectionsUID: "", | ||||
|       CollectionUID: "", | ||||
|       collectionsDetail: {}, | ||||
|       carouselFigureImg: "", | ||||
|       detailImgList: [], | ||||
|       containerWidth: 300, // 替换为你的图片容器宽度 | ||||
|       videoPlay: false, | ||||
|       videoUrl: "", | ||||
|       videoContext: null, | ||||
|       sellPoint: [], | ||||
|       collDetails: [], | ||||
|       companyInfo: [], | ||||
|       copyright: [], | ||||
|       Blockchain: [], | ||||
|       realName: "", | ||||
|       idNum: "", | ||||
|       err: false, | ||||
|       succes: false, | ||||
|       SeriesName: "", | ||||
|       isHave: false, | ||||
|       AirdorpUid: "", | ||||
|       price: "", | ||||
|       isActive: false, | ||||
|       currencyType: "", | ||||
|       pageParams: {}, | ||||
|     }; | ||||
|   }, | ||||
|   onPageScroll(e) { | ||||
|     this.stickyShow = e.scrollTop > 5 ? true : false; | ||||
|   }, | ||||
|   onLoad: function (option) { | ||||
|     this.collectionsUID = option.collectionUID; | ||||
|     this.pageParams = option; | ||||
|     this.CollectionUID = option.CollectionUID; | ||||
|     this.SeriesName = option.SeriesName; | ||||
|     this.price = option.Price; | ||||
|     this.isActive = !Object.keys(option).length; | ||||
|   }, | ||||
|   onShow() { | ||||
|     this.getCollectionDetail(); | ||||
|   }, | ||||
|   onReady() { | ||||
|     // 页面加载完毕后开始动画 | ||||
|   }, | ||||
|   methods: { | ||||
|     //  | ||||
|     screenChange(e) { | ||||
|       let fullScreen = e.detail.fullScreen; // 值true为进入全屏,false为退出全屏 | ||||
|       console.log(e, "全屏"); | ||||
|       if (!fullScreen) { | ||||
|         //退出全屏 | ||||
|         this.videoPlay = false; // 隐藏播放盒子 | ||||
|     calcRouteParams(obj) { | ||||
|       if (obj && JSON.stringify(obj) !== "{}") { | ||||
|         let str = "?"; | ||||
|         for (let key in obj) { | ||||
|           str += key + "=" + obj[key] + "&"; | ||||
|         } | ||||
|         return str.slice(0, -1); | ||||
|       } | ||||
|       return ""; | ||||
|     }, | ||||
|     playVideo() { | ||||
|       this.videoContext = uni.createVideoContext("myvideo", this); // this这个是实例对象 必传 | ||||
|       this.videoContext.play(); | ||||
|       setTimeout(() => { | ||||
|         this.videoContext.requestFullScreen(); | ||||
|       }, 500); | ||||
|       this.videoPlay = true; // 显示播放盒子 | ||||
|     open3D() { | ||||
|       uni.navigateTo({ | ||||
|         url: "/pages/index/detail/open3D/open3D", | ||||
|       }); | ||||
|     }, | ||||
|     onPageScroll(e) { | ||||
|       this.stickyShow = e.scrollTop > 5 ? true : false; | ||||
|     }, | ||||
| 
 | ||||
|     back() { | ||||
|       let routesRecord = getCurrentPages(); | ||||
|       if (routesRecord.length > 1) { | ||||
| @ -169,33 +345,199 @@ export default { | ||||
|       } | ||||
|     }, | ||||
|     async getCollectionDetail() { | ||||
|       if (this.isActive) return; | ||||
|       let data = { | ||||
|         collectionsUID: this.collectionsUID, | ||||
|         CollectionsUID: this.CollectionUID, | ||||
|       }; | ||||
|       let res = await this.$api.usa.collectionsInfo(data); | ||||
|       let res = await this.$api.series.collectionsInfo(data); | ||||
|       if (res.status === 0) { | ||||
|         // await this.getPick(res.data.CollectionUID); | ||||
|         this.collectionsDetail = res.data; | ||||
|         this.carouselFigureImg = this.collectionsDetail.carouselFigureList[0]; | ||||
| 		this.videoUrl = this.collectionsDetail.carouselFigureList[1] || ''; | ||||
|         this.detailImgList = this.collectionsDetail.detailImgList; | ||||
|         (this.AllImgList = res.data.CutImg ? JSON.parse(res.data.CutImg) : []), | ||||
|           this.cutImg(); | ||||
|       } else { | ||||
|         uni.$u.toast(this.$t("load.failed")); | ||||
|       } | ||||
|     }, | ||||
|     async getPick(uid) { | ||||
|       if (this.isActive) return; | ||||
|       let parmas = { | ||||
|         uuid: uid, | ||||
|       }; | ||||
|       let res = await this.$api.series.userHaveDropNo(parmas); | ||||
|       if (res.status === 0) { | ||||
|         console.log(res.data.Hava); | ||||
|         this.isHave = res.data.Have != 0 ? false : true; | ||||
|         this.AirdorpUid = res.data.UserAirdorpUid; | ||||
|       } else { | ||||
|         this.isHave = false; | ||||
|       } | ||||
|     }, | ||||
|     cutImg() { | ||||
|       this.AllImgList.forEach((v) => { | ||||
|         if (Array.isArray(v.imgs)) { | ||||
|           v.imgs = v.imgs.filter((img) => { | ||||
|             if (img) { | ||||
|               return img; | ||||
|             } | ||||
|           }); | ||||
|         } | ||||
|         switch (v.label) { | ||||
|           case "卖点": | ||||
|             this.sellPoint = v.imgs; | ||||
|             break; | ||||
|           case "藏品细节": | ||||
|             this.collDetails = v.imgs; | ||||
|             break; | ||||
|           case "工艺/公司介绍": | ||||
|             this.companyInfo = v.imgs; | ||||
|             break; | ||||
|           case "版权声明": | ||||
|             this.copyright = v.imgs; | ||||
|             break; | ||||
|           case "区块链说明": | ||||
|             this.Blockchain = v.imgs; | ||||
|             break; | ||||
|         } | ||||
|       }); | ||||
|     }, | ||||
|     buy() { | ||||
|       // 只有领取和普通购买 才执行下去 | ||||
|       if ( | ||||
|         this.collectionsDetail.CurrencyType === "normal" && | ||||
|         ["normal", "draw"].includes(this.collectionsDetail.SaleType) | ||||
|       ) { | ||||
|         let token = uni.getStorageSync("mall_token"); | ||||
|         let realName = uni.getStorageSync("mall-user-info") | ||||
|           ? uni.getStorageSync("mall-user-info").realName | ||||
|           : ""; | ||||
|         if (!token) { | ||||
|           uni.$u.toast(this.$t("login.pls")); | ||||
|           uni.setStorageSync( | ||||
|             "login-redirect", | ||||
|             "/pages/index/detail/detail" + this.calcRouteParams(this.pageParams) | ||||
|           ); | ||||
|           uni.navigateTo({ | ||||
|             url: "/pages/login/login", | ||||
|           }); | ||||
|         } else if (!realName) { | ||||
|           this.showVerfy = true; | ||||
|         } else { | ||||
|           if (this.collectionsDetail.SaleType === "draw") { | ||||
|             this.directGet(); | ||||
|             return; | ||||
|           } | ||||
|           uni.navigateTo({ | ||||
|             url: | ||||
|               "/pages/index/comfirm/comfirm?Collection=" + | ||||
|               encodeURIComponent(JSON.stringify(this.collectionsDetail)), | ||||
|           }); | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     async directGet() { | ||||
|       let data = { | ||||
|         CollectionsUID: this.collectionsDetail.CollectionUID, | ||||
|       }; | ||||
|       let res = await this.$api.airdrop.directGet(data); | ||||
|       if (res.status === 0) { | ||||
|         uni.$u.toast("领取成功!"); | ||||
|         this.getCollectionDetail(); | ||||
| 
 | ||||
|         let routesRecord = getCurrentPages(); | ||||
|         if (routesRecord.length > 1) { | ||||
|           let that = this; | ||||
|           setTimeout(() => { | ||||
|             that.$common.navigateBack(); | ||||
|           }, 1000); | ||||
|         } else { | ||||
|           setTimeout(() => { | ||||
|             uni.reLaunch({ | ||||
|               url: "/pages/index/index", | ||||
|             }); | ||||
|           }, 1000); | ||||
|         } | ||||
|       } else { | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|     async pickUp() { | ||||
|       let data = { | ||||
|         UserId: uni.getStorageSync("mall-user-info").ID, | ||||
|         Uuid: this.AirdorpUid, | ||||
|       }; | ||||
|       let res = await this.$api.airdrop.getCollection(data); | ||||
|       if (res.status === 0) { | ||||
|         this.recive(); | ||||
|       } else { | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|     async recive() { | ||||
|       let data = { | ||||
|         collectionsUID: this.CollectionUID, | ||||
|         userAirdropUuid: this.AirdorpUid, | ||||
|       }; | ||||
|       let res = await this.$api.airdrop.getCollectionStepTwo(data); | ||||
|       if (res.status === 0) { | ||||
|         uni.navigateTo({ | ||||
|           url: "/pages/index/payment/reciveOK", | ||||
|         }); | ||||
|       } else { | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|     async verifyName() { | ||||
|       let data = { | ||||
|         idNum: this.idNum, | ||||
|         realName: this.realName, | ||||
|       }; | ||||
|       if (!data.idNum || !data.realName) { | ||||
|         return uni.$u.toast("姓名和身份证号不能为空"); | ||||
|       } | ||||
|       if (!uni.$u.test.idCard(data.idNum)) { | ||||
|         return uni.$u.toast("身份证号不正确"); | ||||
|       } | ||||
|       let res = await this.$api.mine.update(data); | ||||
|       if (res.status === 0) { | ||||
|         this.succes = true; | ||||
|         uni.setStorageSync("mall-user-info", res.data); | ||||
|         setTimeout(() => { | ||||
|           this.idNum = ""; | ||||
|           this.realName = ""; | ||||
|           this.showVerfy = false; | ||||
|           this.err = false; | ||||
|           this.succes = false; | ||||
|         }, 1000); | ||||
|       } else { | ||||
|         this.err = true; | ||||
|         this.succes = false; | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|     verfFocus() { | ||||
|       this.err = false; | ||||
|       this.succes = false; | ||||
|     }, | ||||
|     doneVerfy() { | ||||
|       this.showVerfy = false; | ||||
|     }, | ||||
|     closeVerfy() { | ||||
|       this.showVerfy = false; | ||||
|     }, | ||||
|   }, | ||||
| }; | ||||
| </script> | ||||
| 
 | ||||
| <style lang="scss"> | ||||
| page { | ||||
|   background: url("../../../static/image/start/new_bg.png") no-repeat; | ||||
|   background: url("@/static/image/home/new_bg.png?x-oss-process=image/resize,w_750,h_1580") | ||||
|     no-repeat; | ||||
|   background-size: 100% 100%; | ||||
|   background-attachment: fixed; | ||||
|   height: 100vh; | ||||
| } | ||||
| .video-btn { | ||||
|   width: 92%; | ||||
| } | ||||
| 
 | ||||
| .active { | ||||
|   position: relative; | ||||
| 
 | ||||
| @ -297,9 +639,17 @@ page { | ||||
|   height: 660rpx; | ||||
|   border-radius: 8rpx; | ||||
|   margin: 44rpx 44rpx 32rpx 46rpx; | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
|   align-items: center; | ||||
|   position: relative; | ||||
| 
 | ||||
|   .price { | ||||
|     font-size: 48rpx; | ||||
|     position: absolute; | ||||
|     bottom: 10rpx; | ||||
|     right: 30upx; | ||||
|     // left: 50%; | ||||
|     // transform: translateX(-50%); | ||||
|   } | ||||
| 
 | ||||
|   image { | ||||
|     width: 100%; | ||||
|     height: 100%; | ||||
| @ -388,11 +738,6 @@ page { | ||||
| 
 | ||||
|     .value { | ||||
|       color: #878787; | ||||
|       // 超出部分显示省略号 | ||||
|       overflow: hidden; | ||||
|       text-overflow: ellipsis; | ||||
|       white-space: nowrap; | ||||
|       max-width: 400rpx; | ||||
|     } | ||||
| 
 | ||||
|     .des { | ||||
|  | ||||
| @ -1,79 +1,241 @@ | ||||
| <template> | ||||
|   <view class="main-box"> | ||||
|     <u-toast ref="uToast"></u-toast> | ||||
|     <u-album :urls="[seriesData.coverImg]" :singleSize="368"></u-album> | ||||
|     <view class="title"> | ||||
|       <image src="../../static/image/usa/left.png"></image> | ||||
|       <text class="word">{{ $t("seriesData.detail") }}</text> | ||||
|       <image src="../../static/image/usa/right.png"></image> | ||||
|   <view> | ||||
|     <tabBar :currentPage="'pages/index/index'"></tabBar> | ||||
|     <view class="content"> | ||||
|       <image | ||||
|         src="../../static/image/home/fontree.png" | ||||
|         mode="" | ||||
|         class="logo" | ||||
|       ></image> | ||||
|     </view> | ||||
|     <view class="collectionList" v-if="collectionList"> | ||||
|       <view | ||||
|         v-for="(item, index) in collectionList" | ||||
|         :key="index" | ||||
|         class="list-item" | ||||
|       > | ||||
|         <view class="listbox" @click="goDetail(item)"> | ||||
|           <image class="coverImg" :src="item.coverImg"></image> | ||||
|           <view class="info"> | ||||
|             <view class="name">{{ item.name }}</view> | ||||
|             <view class="intro">{{ item.intro }}</view> | ||||
|     <scroll-view | ||||
|       scroll-y | ||||
|       @scrolltolower="onreachBottom" | ||||
|       :refresher-enabled="true" | ||||
|       :refresher-triggered="isrefresh" | ||||
|       @refresherpulling="openLoading" | ||||
|       @refresherrefresh="onRefresh" | ||||
|       @refresherrestore="onRestore" | ||||
|       @scroll="onScroll" | ||||
|       :scroll-anchoring="true" | ||||
|       refresher-background="#699A70" | ||||
|       refresher-default-style="none" | ||||
|       :style="'height:' + listHeight + 'px;'" | ||||
|       :refresher-threshold="300" | ||||
|       class="scroll" | ||||
|     > | ||||
|       <image | ||||
|         src="../../static/image/home/new_line.png" | ||||
|         mode="" | ||||
|         class="line" | ||||
|         v-if="showPull" | ||||
|       ></image> | ||||
|       <image | ||||
|         src="../../static/image/home/new_flower.png" | ||||
|         mode="" | ||||
|         class="flower-static" | ||||
|         v-if="showPull" | ||||
|       ></image> | ||||
|       <view v-for="(item, index) in listData" :key="index" class="item"> | ||||
|         <view class="box"> | ||||
|           <!-- :style="'background: url(' + item.CoverImg + ');'" --> | ||||
|           <image | ||||
|             :src="item.CoverImg" | ||||
|             mode="scaleToFill" | ||||
|             class="img" | ||||
|             @click="goLink(item)" | ||||
|           ></image> | ||||
|           <!-- <view class="bt-con"> | ||||
| 						<view class="name">{{ item.SeriesName }}</view> | ||||
| 						<view class="des">{{ item.Desc }}</view> | ||||
| 					</view> --> | ||||
|           <view class="description"> | ||||
|             <view class="text"> | ||||
|               <view class="name">{{ item.SeriesName }}</view> | ||||
|               <view class="des">{{ item.Desc }}</view> | ||||
|             </view> | ||||
|             <view class="line-des"></view> | ||||
|             <view | ||||
|               class="detail" | ||||
|               @click="goLink(item)" | ||||
|               :style="{ | ||||
|                 background: | ||||
|                   item.SeriesName === '泰丰十周年' ? '#FC4947' : '#699A70', | ||||
|               }" | ||||
|               >查看详情</view | ||||
|             > | ||||
|           </view> | ||||
|         </view> | ||||
|       </view> | ||||
|     </view> | ||||
|     <view class="bottom-btn"> | ||||
|       <u-button :loading="loading" class="btn" @click="receive">{{ | ||||
|         $t("seriesData.recive") | ||||
|       }}</u-button> | ||||
|     </view> | ||||
|     </scroll-view> | ||||
|     <Dialog | ||||
|       :detail="detail" | ||||
|       :collectionsUID="collectionsUID" | ||||
|       :num="num" | ||||
|       :isShow="isShow" | ||||
|     /> | ||||
|   </view> | ||||
| </template> | ||||
| haojia | ||||
| <script> | ||||
| import Dialog from "./dialog/dialog.vue"; | ||||
| export default { | ||||
|   components: { | ||||
|     Dialog, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       seriesData: {}, | ||||
|       collectionList: [], | ||||
|       loading: false, | ||||
|       title: "Hello", | ||||
|       fromLogin: true, | ||||
|       listData: [], | ||||
|       page: 1, | ||||
|       pageSize: 10, | ||||
|       showPull: false, | ||||
|       isrefresh: false, | ||||
|       listHeight: uni.getSystemInfoSync().windowHeight - 88 - 61, | ||||
|       isShow: false, | ||||
|       collectionsUID: "", | ||||
|       num: "", | ||||
|       detail: {}, | ||||
|     }; | ||||
|   }, | ||||
|   onShow() { | ||||
|     this.seriesData = uni.getStorageSync("seriesData"); | ||||
|     this.collectionList = uni.getStorageSync("collectionList"); | ||||
|     console.log(this.seriesData, 1111); | ||||
|     let routes = getCurrentPages(); // 获取当前打开过的页面路由数组 | ||||
|     let curRoute = routes[routes.length - 2]; | ||||
|   }, | ||||
|   onLoad() { | ||||
|     this.onreachBottom(); | ||||
|     const collectionsUID = uni.getStorageSync("collectionsUID"); | ||||
|     if (collectionsUID) { | ||||
|       this.collectionsUID = collectionsUID; | ||||
|     } | ||||
|     const num = uni.getStorageSync("num"); | ||||
|     if (num) { | ||||
|       this.num = JSON.parse(num); | ||||
|     } | ||||
|     if (this.collectionsUID && this.num) { | ||||
|       this.collectionsDetail(); | ||||
|     } | ||||
|   }, | ||||
|   methods: { | ||||
|     // 跳转详情 | ||||
|     goDetail(item) { | ||||
|       uni.navigateTo({ | ||||
|         url: `/pages/index/detail/detail?collectionUID=${item.collectionUID}`, | ||||
|       }); | ||||
|     openLoading(e) { | ||||
|       if (e.detail.deltaY < 0) return; | ||||
|       this.showPull = true; | ||||
|       this.isrefresh = true; | ||||
|     }, | ||||
|     async receive() { | ||||
|       this.loading = true; | ||||
|       let data = { | ||||
|         seriesUuid: this.seriesData.seriesUuid, | ||||
|     onRefresh(e) { | ||||
|       if (this._freshing) return; | ||||
|       this._freshing = true; | ||||
|       this.isrefresh = true; | ||||
|       setTimeout(() => { | ||||
|         this.getData(); | ||||
|       }, 2000); | ||||
|     }, | ||||
|     onRestore() { | ||||
|       this.showPull = false; | ||||
|     }, | ||||
|     onreachBottom() { | ||||
|       this.getData(); | ||||
|     }, | ||||
|     onScroll() { | ||||
|       this.page++; | ||||
|       let params = { | ||||
|         page: this.page, | ||||
|         pageSize: this.pageSize, | ||||
|       }; | ||||
|       let res = await this.$api.usa.receive(data); | ||||
|       if (res.status === 0) { | ||||
|         this.loading = false; | ||||
| 
 | ||||
|         this.$refs.uToast.show({ | ||||
|           type: "success", | ||||
|           position: "top", | ||||
|           message: this.$t("seriesData.success"), | ||||
|           duration: 2000, | ||||
|           iconUrl: "https://cdn.uviewui.com/uview/demo/toast/success.png", | ||||
|           complete() { | ||||
|             uni.redirectTo({ | ||||
|           url: "/pages/mine/usamine/index", | ||||
|         }); | ||||
|           }, | ||||
|       uni.$u.debounce(async () => { | ||||
|         await this.$api.series | ||||
|           .list(params) | ||||
|           .then((res) => { | ||||
|             if (res.status === 0) { | ||||
|               if (res.data.Data) { | ||||
|                 this.listData = [...this.listData, ...(res.data.Data || [])]; | ||||
|               } | ||||
|               this.page--; | ||||
|             } else { | ||||
|               uni.showToast({ | ||||
|                 title: this.$t("load.failed"), | ||||
|                 icon: "none", | ||||
|               }); | ||||
|             } | ||||
|           }) | ||||
|           .catch((err) => { | ||||
|             uni.showToast({ | ||||
|               title: this.$t("load.failed"), | ||||
|               icon: "none", | ||||
|             }); | ||||
|           }); | ||||
|       }, 500); | ||||
|     }, | ||||
|     goLink(item) { | ||||
|       // uni.navigateTo({ | ||||
|       // 	url: '/pages/index/activity/index?detail=' + encodeURIComponent(JSON.stringify(item)) | ||||
|       // }); | ||||
|       console.log(1111, item); | ||||
|       if (item.SeriesName === "泰丰十周年") { | ||||
|         uni.navigateTo({ | ||||
|           url: | ||||
|             "/pages/index/activeSeries/activeSeries?detail=" + | ||||
|             encodeURIComponent(JSON.stringify(item)), | ||||
|         }); | ||||
|       } else { | ||||
|         this.loading = false; | ||||
|         uni.$u.toast(res.msg); | ||||
|         uni.navigateTo({ | ||||
|           url: "/pages/index/series/series?SeriesUID=" + item.SeriesUuid, | ||||
|         }); | ||||
|       } | ||||
|     }, | ||||
|     async getData() { | ||||
|       let params = { | ||||
|         page: 1, | ||||
|         pageSize: this.pageSize, | ||||
|       }; | ||||
|       await this.$api.series | ||||
|         .list(params) | ||||
|         .then((res) => { | ||||
|           if (res.status === 0) { | ||||
|             this.listData = res.data.Data; | ||||
|             /* } else { | ||||
| 						this.listData = [...this.listData, ...res.data.Data || []]; | ||||
| 					} */ | ||||
|           } else { | ||||
|             uni.showToast({ | ||||
|               title: this.$t("load.failed"), | ||||
|               icon: "none", | ||||
|             }); | ||||
|           } | ||||
|           this.isrefresh = false; //触发onRestore,并关闭刷新图标 | ||||
|           this._freshing = false; | ||||
|         }) | ||||
|         .catch((err) => { | ||||
|           console.log(1231312312, err); | ||||
|           uni.showToast({ | ||||
|             title: this.$t("load.failed"), | ||||
|             icon: "none", | ||||
|           }); | ||||
|         }); | ||||
|     }, | ||||
|     async collectionsDetail() { | ||||
|       if (uni.getStorageSync("collectionsDetail")) { | ||||
|         await this.$api.series | ||||
|           .collectionsDetail({ | ||||
|             collectionsUID: this.collectionsUID, | ||||
|             num: this.num, | ||||
|           }) | ||||
|           .then((res) => { | ||||
|             if (res.status === 0) { | ||||
|               this.detail = res.data; | ||||
|               this.isShow = true; | ||||
|               uni.setStorageSync("collectionsDetail", false); | ||||
|             } else { | ||||
|               this.$common.msgToast(res.msg, null, "error"); | ||||
|             } | ||||
|           }) | ||||
|           .catch((err) => { | ||||
|             uni.showToast({ | ||||
|               title: this.$t("load.failed"), | ||||
|               icon: "none", | ||||
|             }); | ||||
|           }); | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
| @ -82,113 +244,152 @@ export default { | ||||
| 
 | ||||
| <style lang="scss"> | ||||
| page { | ||||
|   background: url("../../static/image/start/new_bg.png") no-repeat; | ||||
|   background: url("@/static/image/home/new_bg.png") no-repeat; | ||||
|   background-size: 100% 100%; | ||||
|   background-attachment: fixed; | ||||
|   height: 100vh; | ||||
|   padding-bottom: constant(safe-area-inset-bottom); | ||||
|   padding-bottom: env(safe-area-inset-bottom); | ||||
| } | ||||
| .main-box { | ||||
| 
 | ||||
| /deep/ .uni-scroll-view-refresher { | ||||
|   max-height: 250rpx; | ||||
| } | ||||
| 
 | ||||
| /deep/ .uni-scroll-view { | ||||
|   overflow-y: auto !important; | ||||
| } | ||||
| 
 | ||||
| .content { | ||||
|   height: 122rpx; | ||||
|   background: #ffffff; | ||||
| 
 | ||||
|   // padding-top: 300rpx; | ||||
|   // border: 1px solid red; | ||||
|   .logo { | ||||
|     width: 188rpx; | ||||
|     height: 56rpx; | ||||
|     margin-top: 36rpx; | ||||
|     margin-left: 48rpx; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .line { | ||||
|   width: 2rpx; | ||||
|   height: 164rpx; | ||||
|   position: absolute; | ||||
|   left: 50%; | ||||
|   transform: translate(-50%); | ||||
|   padding: 14px 5px 14px 5px; | ||||
|   top: 0; | ||||
|   transform: translateX(-50%); | ||||
| } | ||||
| /deep/ .u-album__row__wrapper { | ||||
|   image { | ||||
|      | ||||
|     border-radius: 4px; | ||||
|   } | ||||
| } | ||||
| .title { | ||||
|   font-size: 17px; | ||||
|   color: #3e6944; | ||||
|   text-align: center; | ||||
|   margin-top: 24px; | ||||
|   image { | ||||
|     width: 32px; | ||||
|     height: 13px; | ||||
|   } | ||||
|   .word { | ||||
|     margin: 0 10px; | ||||
|   } | ||||
| } | ||||
| .collectionList { | ||||
|   margin-top: 15px; | ||||
|   overflow-y: scroll; | ||||
|   height: 130px; | ||||
|   display: flex; | ||||
|   flex-wrap: wrap; | ||||
|   justify-content: space-between; | ||||
|   .list-item { | ||||
|     width: 100%; | ||||
|     height: 96px; | ||||
|     border-radius: 4px; | ||||
|     box-shadow: 0px 2px 4px 0px #e4e4e4; | ||||
|     margin-top: 10px; | ||||
|     background: #fff; | ||||
|     border-radius: 4px; | ||||
|     padding: 12px 16px; | ||||
|     box-sizing: border-box; | ||||
|     .listbox { | ||||
|       display: flex; | ||||
|       align-items: center; /* Add this line */ | ||||
|       .coverImg { | ||||
|         width: 72px; | ||||
|         height: 72px; | ||||
|         border-radius: 4px; | ||||
|       } | ||||
|       .info { | ||||
|         flex: 1; /* Add this line */ | ||||
|         margin-left: 8px; | ||||
|         .name { | ||||
|           font-size: 16px; | ||||
|           color: #000000; | ||||
|           // 超出一行显示省略号 | ||||
|           overflow: hidden; | ||||
|           text-overflow: ellipsis; | ||||
|           display: -webkit-box; | ||||
|           -webkit-line-clamp: 1; | ||||
|           -webkit-box-orient: vertical; | ||||
| 
 | ||||
|         } | ||||
|         .intro { | ||||
|           font-size: 14px; | ||||
|           color: #999999; | ||||
|           margin-top: 4px; | ||||
|           // 超出两行显示省略号 | ||||
|           overflow: hidden; | ||||
|           text-overflow: ellipsis; | ||||
|           display: -webkit-box; | ||||
|           -webkit-line-clamp: 2; | ||||
|           -webkit-box-orient: vertical; | ||||
|         } | ||||
| .flower-static { | ||||
|   width: 43rpx; | ||||
|   height: 43rpx; | ||||
|   position: absolute; | ||||
|   left: 47%; | ||||
|   top: 167rpx; | ||||
|   animation: fadenum 1s infinite; | ||||
| } | ||||
| 
 | ||||
| @keyframes fadenum { | ||||
|   100% { | ||||
|     transform: rotate(360deg); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .item { | ||||
|   margin-bottom: 40rpx; | ||||
| } | ||||
| 
 | ||||
| .box { | ||||
|   width: 656rpx; | ||||
|   height: 814rpx; | ||||
|   margin: 0 48rpx; | ||||
|   display: flex; | ||||
|   flex-direction: column; | ||||
| 
 | ||||
|   .img { | ||||
|     width: 656rpx; | ||||
|     height: 656rpx; | ||||
|   } | ||||
| 
 | ||||
|   // .bt-con { | ||||
|   // 	position: absolute; | ||||
|   // 	bottom: 0; | ||||
|   // 	width: 656rpx; | ||||
|   // 	height: 158rpx; | ||||
|   // 	background: rgba(255, 255, 255, 0.3); | ||||
| 
 | ||||
|   // 	// | ||||
|   // 	.name { | ||||
|   // 		font-size: 32rpx; | ||||
|   // 		border-bottom: 1rpx solid #fff; | ||||
|   // 		margin: 28rpx 50rpx 0 50rpx; | ||||
|   // 		text-align: center; | ||||
|   // 		padding-bottom: 10rpx; | ||||
|   // 	} | ||||
| 
 | ||||
|   // 	.des { | ||||
|   // 		padding-top: 10rpx; | ||||
|   // 		font-size: 20rpx; | ||||
|   // 		text-align: center; | ||||
|   // 		overflow: hidden; | ||||
|   // 		text-overflow: ellipsis; | ||||
|   // 		white-space: nowrap; | ||||
|   // 	} | ||||
|   // } | ||||
|   .description { | ||||
|     width: 656rpx; | ||||
|     height: 158rpx; | ||||
|     // border: 1px solid red; | ||||
|     box-sizing: border-box; | ||||
|     padding: 18px 11px 18px 11px; | ||||
|     display: flex; | ||||
|     justify-content: center; | ||||
|     align-items: center; | ||||
|     background-color: #ffffff; | ||||
|     border-bottom-left-radius: 8rpx; | ||||
|     border-bottom-right-radius: 8rpx; | ||||
| 
 | ||||
|     .text { | ||||
|       flex: 1; | ||||
| 
 | ||||
|       .name { | ||||
|         font-size: 32rpx; | ||||
|         color: #000000; | ||||
|         font-family: "Songti TC"; | ||||
|         font-weight: 500; | ||||
|         margin-bottom: 2px; | ||||
|         overflow: hidden; | ||||
|         white-space: nowrap; | ||||
|         text-overflow: ellipsis; | ||||
|       } | ||||
| 
 | ||||
|       .des { | ||||
|         margin-right: 28rpx; | ||||
|         font-size: 20rpx; | ||||
|         color: #939393; | ||||
|         overflow: hidden; | ||||
|         text-overflow: ellipsis; | ||||
|         display: -webkit-box; | ||||
|         -webkit-line-clamp: 2; | ||||
|         -webkit-box-orient: vertical; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     .line-des { | ||||
|       width: 1rpx; | ||||
|       height: 114rpx; | ||||
|       background-color: #d8d8d8; | ||||
|     } | ||||
| 
 | ||||
|     .detail { | ||||
|       background: #699a70; | ||||
|       padding: 12rpx 40rpx; | ||||
|       border-radius: 8rpx; | ||||
|       text-align: center; | ||||
|       margin-left: 19px; | ||||
|       font-size: 28rpx; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| .bottom-btn { | ||||
|   margin-top: 20px; | ||||
|   height: 70px; | ||||
|   width: 100%; | ||||
|   background: #ffffff; | ||||
|   // 内阴影 | ||||
|   box-shadow: 0px 2px 4px 0px #e4e4e4; | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
|   align-items: center; | ||||
|   .btn { | ||||
|     width: 214px; | ||||
|     height: 40px; | ||||
|     // 渐变色 | ||||
|     background: linear-gradient(90deg, #489552 0%, #3e6944 100%); | ||||
|     color: #fff; | ||||
|     border-radius: 20px; | ||||
|   } | ||||
| } | ||||
| /deep/ .u-toast__content{ | ||||
|   width: 85%; | ||||
|   transform: translateY(-291.75px) !important; | ||||
| } | ||||
| </style> | ||||
|  | ||||
| @ -559,12 +559,9 @@ page { | ||||
| 			width: 75%; | ||||
| 			color: #000000; | ||||
| 			font-size: 34rpx; | ||||
| 			// 超出一行显示省略号 | ||||
| 			overflow: hidden; | ||||
| 			text-overflow: ellipsis; | ||||
| 			display: -webkit-box; | ||||
| 			-webkit-line-clamp: 1; | ||||
| 			-webkit-box-orient: vertical; | ||||
| 			white-space: nowrap; | ||||
| 		} | ||||
| 
 | ||||
| 		.blockchain { | ||||
| @ -572,12 +569,9 @@ page { | ||||
| 			font-size: 20rpx; | ||||
| 			margin-top: 10rpx; | ||||
| 			width: 75%; | ||||
| 			// 超出一行显示省略号 | ||||
| 			overflow: hidden; | ||||
| 			text-overflow: ellipsis; | ||||
| 			display: -webkit-box; | ||||
| 			-webkit-line-clamp: 1; | ||||
| 			-webkit-box-orient: vertical; | ||||
| 			white-space: nowrap; | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| @ -1,706 +0,0 @@ | ||||
| <template> | ||||
|   <view> | ||||
|     <view class="logo"> | ||||
|       <image | ||||
|         src="../../../static/image/home/fontree.png" | ||||
|         mode="" | ||||
|         class="img" | ||||
|       ></image> | ||||
|     </view> | ||||
| 
 | ||||
|     <view class="user-box"> | ||||
|       <u-avatar | ||||
|         src="https://cdns.fontree.cn/fonchain-main/prod/image/3734/avatar/44f417f8-ea14-45f6-a114-2bb2fee54713.png" | ||||
|         class="avatar" | ||||
|         size="75" | ||||
|         fontSize="18" | ||||
|         bg-color="#558BF2" | ||||
|       ></u-avatar> | ||||
|       <view class="info"> | ||||
|         <view class="blockchain" | ||||
|           >{{ $t("usa.adress") }}:<a>{{ seriesData.seriesAddress }}</a></view | ||||
|         > | ||||
|         <view class="username" | ||||
|           >{{ $t("usa.remember") }}:{{ seriesData.seriesMem }} | ||||
|           <view class="check" @click="checkWord">{{ | ||||
|             $t("usa.check") | ||||
|           }}</view></view | ||||
|         > | ||||
|       </view> | ||||
|     </view> | ||||
|     <view class="his-title-text"> | ||||
|       <view>{{ $t("usa.hasGet") }}</view> | ||||
|       <view class="line"></view> | ||||
|     </view> | ||||
|     <view class="collectionList" v-if="collectionList"> | ||||
|       <view | ||||
|         v-for="(item, index) in collectionList" | ||||
|         :key="index" | ||||
|         class="list-item" | ||||
|       > | ||||
|         <view class="listbox" @click="goDetail(item)"> | ||||
|           <image class="coverImg" :src="item.coverImg"></image> | ||||
|           <view class="info"> | ||||
|             <view class="name">{{ item.name }}</view> | ||||
|             <view class="intro">{{ item.intro }}</view> | ||||
|           </view> | ||||
|         </view> | ||||
|       </view> | ||||
|     </view> | ||||
|     <u-popup | ||||
|       :show="show" | ||||
|       mode="center" | ||||
|       bgColor="#F5F5F5" | ||||
|       @close="close" | ||||
|       @open="open" | ||||
|       :closeOnClickOverlay="false" | ||||
|     > | ||||
|       <view class="content"> | ||||
|         <view class="title">{{ $t("usa.popTitle") }}</view> | ||||
|         <view class="input-box"> | ||||
|           <view v-if="!showSeriesMem">{{ $t("usa.Password") }}</view> | ||||
|           <u--input | ||||
|             v-if="!showSeriesMem" | ||||
|             style="width: 50%" | ||||
|             v-model="seriesPwd" | ||||
|             border="none" | ||||
|             :type="isShow ? 'text' : 'password'" | ||||
|             maxlength="6" | ||||
|             :placeholder="placeholder" | ||||
|             class="login-input" | ||||
|           > | ||||
|             <template slot="suffix"> | ||||
|               <u-icon | ||||
|                 :name="isShow ? 'eye' : 'eye-off'" | ||||
|                 @click="isShow = !isShow" | ||||
|               ></u-icon> </template | ||||
|           ></u--input> | ||||
|           <view v-if="showSeriesMem">{{ seriesMem }}</view> | ||||
|         </view> | ||||
|         <view class="btn-group" v-if="!showSeriesMem"> | ||||
|           <u-button | ||||
|             @click="cancel" | ||||
|             style=" | ||||
|               background-color: #fdfdfd; | ||||
|               color: #3e6944; | ||||
|               box-shadow: 0px 2px 2px 0px #b4b4b4; | ||||
|               font-weight: bold; | ||||
|             " | ||||
|             class="u-button" | ||||
|             shape="circle" | ||||
|           > | ||||
|             {{ $t("usa.cancel") }} | ||||
|           </u-button> | ||||
|           <u-button | ||||
|             @click="confirm" | ||||
|             style=" | ||||
|               background: linear-gradient(90deg, #489552 0%, #3e6944 100%); | ||||
|               color: #ffffff; | ||||
| 
 | ||||
|               font-weight: bold; | ||||
|             " | ||||
|             class="u-button" | ||||
|             shape="circle" | ||||
|             :loading="loading" | ||||
|           > | ||||
|             {{ $t("usa.confirm") }} | ||||
|           </u-button> | ||||
|         </view> | ||||
|         <view class="btn-group" v-else> | ||||
|           <u-button | ||||
|             @click="cancel" | ||||
|             style=" | ||||
|               background-color: #fdfdfd; | ||||
|               color: #3e6944; | ||||
|               box-shadow: 0px 2px 2px 0px #b4b4b4; | ||||
|               font-weight: bold; | ||||
|             " | ||||
|             class="u-button" | ||||
|             shape="circle" | ||||
|           > | ||||
|             {{ $t("usa.back") }} | ||||
|           </u-button> | ||||
|           <u-button | ||||
|             @click="backAndCopy" | ||||
|             style=" | ||||
|               background: linear-gradient(90deg, #489552 0%, #3e6944 100%); | ||||
|               color: #ffffff; | ||||
| 
 | ||||
|               font-weight: bold; | ||||
|             " | ||||
|             class="u-button" | ||||
|             shape="circle" | ||||
|             :loading="loading" | ||||
|           > | ||||
|             {{ $t("usa.backAndCopy") }} | ||||
|           </u-button> | ||||
|         </view> | ||||
|       </view> | ||||
|     </u-popup> | ||||
|     <u-toast ref="uToast"></u-toast> | ||||
|   </view> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| export default { | ||||
|   data() { | ||||
|     return { | ||||
|       collectionList: [], | ||||
|       seriesData: {}, | ||||
|       show: false, | ||||
|       placeholder: "", | ||||
|       isShow: false, | ||||
|       seriesPwd: "", | ||||
|       loading: false, | ||||
|       seriesMem: "", | ||||
|       showSeriesMem: false, | ||||
|     }; | ||||
|   }, | ||||
|   methods: { | ||||
|     open() { | ||||
|       // console.log('open'); | ||||
|     }, | ||||
|     close() { | ||||
|       this.show = false; | ||||
|       // console.log('close'); | ||||
|     }, | ||||
|     checkWord() { | ||||
|       this.show = true; | ||||
|     }, | ||||
|     cancel() { | ||||
|       this.show = false; | ||||
|       this.seriesPwd = ""; | ||||
|       this.showSeriesMem = false; | ||||
|     }, | ||||
|     backAndCopy() { | ||||
|       uni.setClipboardData({ | ||||
|         data: this.seriesMem, | ||||
|         success: function () { | ||||
|           uni.hideToast(); | ||||
|         }, | ||||
|       }); | ||||
|       this.$refs.uToast.show({ | ||||
|         type: "success", | ||||
|         position: "top", | ||||
|         message: this.$t("usa.copySuccess"), | ||||
|         duration: 2000, | ||||
|         iconUrl: "https://cdn.uviewui.com/uview/demo/toast/success.png", | ||||
|       }); | ||||
|       this.show = false; | ||||
|       this.seriesPwd = ""; | ||||
|       this.showSeriesMem = false; | ||||
|     }, | ||||
|     async confirm() { | ||||
|       if (!this.seriesPwd) { | ||||
|         this.$refs.uToast.show({ | ||||
|           type: "error", | ||||
|           position: "top", | ||||
|           message: this.$t("usa.warningPwd"), | ||||
|           duration: 2000, | ||||
|           iconUrl: "https://cdn.uviewui.com/uview/demo/toast/error.png", | ||||
|         }); | ||||
|         return; | ||||
|       } | ||||
|       this.loading = true; | ||||
|       let data = { | ||||
|         seriesUuid: this.seriesData.seriesUuid, | ||||
|         seriesPwd: this.seriesPwd, | ||||
|       }; | ||||
|       let res = await this.$api.usa.getSeriesMnemonic(data); | ||||
|       if (res.status === 0) { | ||||
|         this.loading = false; | ||||
|         this.seriesMem = res.data.seriesMem; | ||||
|         this.showSeriesMem = true; | ||||
|         console.log(this.seriesMem, this.showSeriesMem); | ||||
|       } else { | ||||
|         this.$refs.uToast.show({ | ||||
|           type: "error", | ||||
|           position: "top", | ||||
|           message: res.msg, | ||||
|           duration: 2000, | ||||
|           iconUrl: "https://cdn.uviewui.com/uview/demo/toast/error.png", | ||||
|         }); | ||||
|         this.loading = false; | ||||
|       } | ||||
|     }, | ||||
|     async getCollectionList() { | ||||
|       let data = { | ||||
|         seriesUID: this.seriesData.seriesUuid, | ||||
|       }; | ||||
|       let res = await this.$api.usa.getMyCollectionList(data); | ||||
|       if (res.status === 0) { | ||||
|         this.collectionList = res.data.data; | ||||
|       } else { | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|     // 跳转详情 | ||||
|     goDetail(item) { | ||||
|       uni.navigateTo({ | ||||
|         url: `/pages/index/detail/detail?collectionUID=${item.collectionUID}`, | ||||
|       }); | ||||
|     }, | ||||
|   }, | ||||
|   async onShow() { | ||||
|     this.seriesData = uni.getStorageSync("seriesData"); | ||||
|     this.getCollectionList(); | ||||
|     this.placeholder = this.$t("usa.inputPassword"); | ||||
|   }, | ||||
| }; | ||||
| </script> | ||||
| 
 | ||||
| <style lang="scss"> | ||||
| page { | ||||
|   background: url("@/static/image/start/new_bg.png") no-repeat; | ||||
|   background-size: 100% 100%; | ||||
|   background-attachment: fixed; | ||||
|   height: 100vh; | ||||
|   box-sizing: border-box; | ||||
|   // border: 1px solid red;696.1123 | ||||
| } | ||||
| .btn-group { | ||||
|   display: flex; | ||||
|   justify-content: space-between; | ||||
|   margin-top: 20px; | ||||
|   .u-button { | ||||
|     width: 40%; | ||||
|     height: 40px; | ||||
|     margin-bottom: 60rpx; | ||||
|   } | ||||
| } | ||||
| .collectionList { | ||||
|   margin-top: 15px; | ||||
|   padding: 0 16px; | ||||
|   overflow-y: scroll; | ||||
|   height: 55vh; | ||||
|   display: flex; | ||||
|   flex-wrap: wrap; | ||||
|   justify-content: space-between; | ||||
|   .list-item { | ||||
|     width: 100%; | ||||
|     height: 96px; | ||||
|     border-radius: 4px; | ||||
|     box-shadow: 0px 2px 4px 0px #e4e4e4; | ||||
|     margin-top: 10px; | ||||
|     background: #fff; | ||||
|     border-radius: 4px; | ||||
|     padding: 12px 16px; | ||||
|     box-sizing: border-box; | ||||
|     .listbox { | ||||
|       display: flex; | ||||
|       align-items: center; /* Add this line */ | ||||
|       .coverImg { | ||||
|         width: 72px; | ||||
|         height: 72px; | ||||
|         border-radius: 4px; | ||||
|       } | ||||
|       .info { | ||||
|         flex: 1; /* Add this line */ | ||||
|         margin-left: 8px; | ||||
|         .name { | ||||
|           font-size: 16px; | ||||
|           color: #000000; | ||||
|           // 超出一行显示省略号 | ||||
|           overflow: hidden; | ||||
|           text-overflow: ellipsis; | ||||
|           display: -webkit-box; | ||||
|           -webkit-line-clamp: 1; | ||||
|           -webkit-box-orient: vertical; | ||||
|         } | ||||
|         .intro { | ||||
|           font-size: 14px; | ||||
|           color: #999999; | ||||
|           margin-top: 4px; | ||||
|           // 超出两行显示省略号 | ||||
|           overflow: hidden; | ||||
|           text-overflow: ellipsis; | ||||
|           display: -webkit-box; | ||||
|           -webkit-line-clamp: 2; | ||||
|           -webkit-box-orient: vertical; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .logo { | ||||
|   width: 100vw; | ||||
|   height: 122rpx; | ||||
|   background: #ffffff; | ||||
|   overflow: hidden; | ||||
| 
 | ||||
|   .img { | ||||
|     width: 188rpx; | ||||
|     height: 56rpx; | ||||
|     margin-top: 36rpx; | ||||
|     margin-left: 48rpx; | ||||
|   } | ||||
| } | ||||
| .content { | ||||
|   width: 700rpx; | ||||
|   height: 500rpx; | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
|   flex-direction: column; | ||||
|   .title { | ||||
|     font-size: 40rpx; | ||||
|     text-align: center; | ||||
|     margin: 60rpx 0 0rpx 0; | ||||
|     color: #699a70; | ||||
|   } | ||||
| } | ||||
| .input-box { | ||||
|   margin: 80rpx 45rpx 40rpx 45rpx; | ||||
|   height: 100rpx; | ||||
|   width: auto; | ||||
|   box-sizing: border-box; | ||||
|   background-color: #ffffff; | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
|   align-items: center; | ||||
|   color: #000000; | ||||
|   border-radius: 8rpx; | ||||
|   view { | ||||
|     margin-left: 30rpx; | ||||
|     margin-right: 20rpx; | ||||
|   } | ||||
|   .login-input { | ||||
|     padding: 30rpx; | ||||
|     height: 88rpx; | ||||
|     background-color: rgba(255, 255, 255, 0.6); | ||||
|     padding: 0 20rpx; | ||||
|     /deep/ .uni-input-placeholder { | ||||
|       padding: 0 20rpx; | ||||
|     } | ||||
|     /deep/ .uni-input-input { | ||||
|       color: #000000; | ||||
|       padding: 0 20rpx; | ||||
|       width: auto; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| .user-box { | ||||
|   background: #ffffff; | ||||
|   border-radius: 20rpx; | ||||
|   height: 210rpx; | ||||
|   margin: 20rpx 28rpx 20rpx 28rpx; | ||||
|   padding: 22rpx 20rpx; | ||||
|   display: flex; | ||||
|   box-sizing: border-box; | ||||
|   align-items: center; | ||||
| 
 | ||||
|   .avatar { | ||||
|     margin-left: 20rpx; | ||||
|   } | ||||
| 
 | ||||
|   .info { | ||||
|     flex: 1; | ||||
|     display: flex; | ||||
|     flex-direction: column; | ||||
|     margin-left: 20rpx; | ||||
| 
 | ||||
|     .username { | ||||
|       color: #000000; | ||||
|       font-size: 24rpx; | ||||
|       margin-top: 20rpx; | ||||
| 
 | ||||
|       overflow: hidden; | ||||
|       text-overflow: ellipsis; | ||||
|       white-space: nowrap; | ||||
|       display: flex; | ||||
|       align-items: center; | ||||
|     } | ||||
| 
 | ||||
|     .blockchain { | ||||
|       color: #000000; | ||||
|       font-size: 24rpx; | ||||
|       margin-top: 10rpx; | ||||
| 	  display: flex; | ||||
|       a{ | ||||
| 		  // 超出一行显示省略号 | ||||
| 		  overflow: hidden; | ||||
| 		  text-overflow: ellipsis; | ||||
| width: 175px; | ||||
| 		  -webkit-box-orient: vertical; | ||||
| 	  } | ||||
|     } | ||||
|     .check { | ||||
|       color: #3e6944; | ||||
|       font-size: 24rpx; | ||||
|       margin-left: 10rpx; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .mine-icon { | ||||
|   background: #ffffff; | ||||
|   border-radius: 20rpx; | ||||
|   height: 130rpx; | ||||
|   margin: 0rpx 28rpx 40rpx 28rpx; | ||||
|   padding: 20rpx 20rpx; | ||||
|   display: flex; | ||||
|   box-sizing: border-box; | ||||
|   justify-content: space-around; | ||||
|   align-items: center; | ||||
| 
 | ||||
|   .value { | ||||
|     color: #000000; | ||||
|     font-size: 12px; | ||||
|   } | ||||
| 
 | ||||
|   .tag, | ||||
|   .message, | ||||
|   .scan, | ||||
|   .setting { | ||||
|     display: flex; | ||||
|     flex-direction: column; | ||||
|     justify-content: center; | ||||
|     align-items: center; | ||||
|   } | ||||
| 
 | ||||
|   .message { | ||||
|     position: relative; | ||||
| 
 | ||||
|     .point { | ||||
|       position: absolute; | ||||
|       z-index: 999; | ||||
|       left: 35rpx; | ||||
|       top: 0rpx; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // .scan { | ||||
| 
 | ||||
|   // 	width: 60rpx; | ||||
| 
 | ||||
|   // 	font-size: 20rpx; | ||||
|   // } | ||||
| } | ||||
| 
 | ||||
| .his-title-text { | ||||
|   font-size: 24rpx; | ||||
|   margin: 28rpx; | ||||
|   padding-bottom: 4upx; | ||||
|   color: #000000; | ||||
|   display: flex; | ||||
|   align-items: center; | ||||
| 
 | ||||
|   & > .line { | ||||
|     flex: 1; | ||||
|     height: 0.5rpx; | ||||
|     background: rgba(0, 0, 0, 0.5); | ||||
|     margin-left: 80rpx; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .his-box { | ||||
|   margin: 0 8rpx; | ||||
|   display: flex; | ||||
|   flex-wrap: wrap; | ||||
| 
 | ||||
|   .item { | ||||
|     width: 332rpx; | ||||
|     height: 418rpx; | ||||
|     // background: #000000; | ||||
|     // border-radius: 8rpx; | ||||
|     overflow: hidden; | ||||
|     position: relative; | ||||
|     margin: 20rpx 10rpx 0 18rpx; | ||||
|     box-sizing: border-box; | ||||
| 
 | ||||
|     .icon { | ||||
|       width: 28rpx; | ||||
|       height: 28rpx; | ||||
|       position: absolute; | ||||
|       top: 16rpx; | ||||
|       right: 18rpx; | ||||
|       z-index: 10; | ||||
|     } | ||||
| 
 | ||||
|     .img { | ||||
|       width: 100%; | ||||
|       height: 324rpx; | ||||
|     } | ||||
| 
 | ||||
|     .content { | ||||
|       height: 96rpx; | ||||
|       width: 100%; | ||||
|       position: absolute; | ||||
|       bottom: 0; | ||||
|       font-size: 32rpx; | ||||
|       text-align: center; | ||||
|       line-height: 96rpx; | ||||
|       background-position: center center; | ||||
|       background-size: cover !important; | ||||
|     } | ||||
| 
 | ||||
|     .contentD { | ||||
|       background: url("../../../static/image/mine/item-bg1.png") no-repeat; | ||||
|     } | ||||
| 
 | ||||
|     .contentC { | ||||
|       background: url("../../../static/image/mine/item-bg2.png") no-repeat; | ||||
|     } | ||||
| 
 | ||||
|     .contentB { | ||||
|       background: url("../../../static/image/mine/item-bg3.png") no-repeat; | ||||
|     } | ||||
| 
 | ||||
|     .contentA { | ||||
|       background: url("../../../static/image/mine/item-bg4.png") no-repeat; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .invite-box { | ||||
|   text-align: center; | ||||
| } | ||||
| 
 | ||||
| .popupLocale-box { | ||||
|   background: rgba(0, 0, 0, 0.8); | ||||
|   width: 582rpx; | ||||
|   overflow: hidden; | ||||
|   padding: 30rpx 42rpx; | ||||
| 
 | ||||
|   .content3 { | ||||
|     background: url("../../../static/image/mine/item-bg3.png") no-repeat; | ||||
|   } | ||||
| 
 | ||||
|   .content4 { | ||||
|     background: url("../../../static/image/mine/item-bg4.png") no-repeat; | ||||
|   } | ||||
| 
 | ||||
|   .content { | ||||
|     height: 96rpx; | ||||
|     width: 100%; | ||||
|     background-size: 100% 100%; | ||||
|     position: absolute; | ||||
|     bottom: 0; | ||||
|     font-size: 32rpx; | ||||
|     text-align: center; | ||||
|     line-height: 96rpx; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .popupLocale-box { | ||||
|   background: rgba(0, 0, 0, 0.8); | ||||
|   width: 582rpx; | ||||
|   overflow: hidden; | ||||
|   padding: 30rpx 42rpx 0 42rpx; | ||||
| 
 | ||||
|   .title { | ||||
|     font-size: 40rpx; | ||||
|     text-align: center; | ||||
|     margin-bottom: 40rpx; | ||||
|   } | ||||
| 
 | ||||
|   .u-button { | ||||
|     width: 260rpx; | ||||
|     height: 56rpx; | ||||
|     border-radius: 40rpx; | ||||
|   } | ||||
| 
 | ||||
|   .item { | ||||
|     display: flex; | ||||
|     justify-content: space-between; | ||||
|     padding: 34rpx 50rpx 38rpx 0; | ||||
|     // border-bottom: 1px solid #dedede; | ||||
|     align-items: center; | ||||
| 
 | ||||
|     .right { | ||||
|       font-size: 20rpx; | ||||
| 
 | ||||
|       .tag-btn { | ||||
|         width: 100rpx; | ||||
| 
 | ||||
|         /deep/ .u-tag { | ||||
|           justify-content: center; | ||||
|         } | ||||
| 
 | ||||
|         /deep/ .u-tag__text--medium { | ||||
|           font-size: 20rpx; | ||||
|           text-align: center; | ||||
|           height: 40rpx; | ||||
|           line-height: 40rpx; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| /deep/ .u-popup__content { | ||||
|   border-radius: 8rpx; | ||||
| } | ||||
| 
 | ||||
| .step-top { | ||||
|   width: 466rpx; | ||||
|   padding: 16rpx 40rpx; | ||||
|   background: #699a70; | ||||
|   margin: auto; | ||||
|   text-align: center; | ||||
| } | ||||
| 
 | ||||
| .step-box { | ||||
|   width: 100%; | ||||
|   margin-top: 26rpx; | ||||
|   background: #ffffff; | ||||
|   padding-bottom: 80rpx; | ||||
| 
 | ||||
|   .title { | ||||
|     font-size: 40rpx; | ||||
|     text-align: center; | ||||
|     margin: 46rpx 0 34rpx 0; | ||||
|     color: #434343; | ||||
|   } | ||||
| 
 | ||||
|   .step-pl { | ||||
|     text-align: center; | ||||
|     color: #878787; | ||||
|     font-size: 28rpx; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .verfy-box { | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
| 
 | ||||
|   .label { | ||||
|     font-size: 24rpx; | ||||
|     text-align: left; | ||||
|     margin-bottom: 20rpx; | ||||
|     margin-top: 90rpx; | ||||
|     color: #878787; | ||||
|   } | ||||
| 
 | ||||
|   /deep/ .u-code-input__item { | ||||
|     background: rgba(228, 228, 228, 0.7); | ||||
|     width: 60rpx !important; | ||||
|     height: 60rpx !important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .pass-box { | ||||
|   width: 582rpx; | ||||
|   height: 484rpx; | ||||
|   background: #ffffff; | ||||
| 
 | ||||
|   .title { | ||||
|     font-size: 40rpx; | ||||
|     text-align: center; | ||||
|     margin: 46rpx 0 34rpx 0; | ||||
|     color: #434343; | ||||
|   } | ||||
| 
 | ||||
|   .flex-end { | ||||
|     margin-top: 70rpx; | ||||
|     padding: 58rpx; | ||||
|     text-align: right; | ||||
|     font-size: 24rpx; | ||||
|     color: #878787; | ||||
|   } | ||||
| } | ||||
| /deep/ .u-toast__content { | ||||
|   width: 85%; | ||||
|   transform: translateY(-291.75px) !important; | ||||
| } | ||||
| </style> | ||||
| @ -1,131 +1,46 @@ | ||||
| <template> | ||||
|   <view class="main-box"> | ||||
|     <view class="loading-box"> | ||||
|       <view class="loader"></view> | ||||
|       <view class="word">{{ $t("start.title") }}</view> | ||||
|     </view> | ||||
|   </view> | ||||
| 	<view> | ||||
| 		<!-- <image src="../../static/image/start/logo.png" mode="" class="logo"></image> --> | ||||
| 		<!-- <image src="../../static/image/start/welcome.png" mode="" class="welcome"></image> --> | ||||
| 		<!-- <image src="../../static/image/start/bt-bg.png" mode="" class="btBg"></image> --> | ||||
| 		<!-- <view class="btn" @click="goHome"> | ||||
| 			点击进入 | ||||
| 		</view> --> | ||||
| 	 | ||||
| 	</view> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| export default { | ||||
|   data() { | ||||
|     return { | ||||
|       seriesUuid: "", | ||||
|     }; | ||||
|   }, | ||||
|   methods: { | ||||
|     // 获取礼包详情 | ||||
|     async getGiftDetail() { | ||||
|       let data = { | ||||
|         seriesUuid: this.seriesUuid, | ||||
|       }; | ||||
|       let res = await this.$api.usa.getList(data); | ||||
|       if (res.status === 0) { | ||||
|         let seriesData = res.data; | ||||
|         uni.setStorageSync("seriesData", seriesData); | ||||
|         this.getCollectionList(); | ||||
|       } else { | ||||
|         uni.removeStorageSync("seriesData"); | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|     // 获取藏品列表 | ||||
|     async getCollectionList() { | ||||
|       let data = { | ||||
|         seriesUID: this.seriesUuid, | ||||
|       }; | ||||
|       let res = await this.$api.usa.getCollectionList(data); | ||||
|       if (res.status === 0) { | ||||
|         let collectionList = res.data.data; | ||||
|         uni.setStorageSync("collectionList", collectionList); | ||||
|         uni.redirectTo({ | ||||
|           url: "/pages/index/index", | ||||
|         }); | ||||
|       } else { | ||||
|         uni.removeStorageSync("collectionList"); | ||||
|         uni.$u.toast(res.msg); | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   onLoad(item) { | ||||
|     console.log(navigator.language, 2222); | ||||
|     console.log(item); | ||||
|     this.seriesUuid = item.seriesUuid; | ||||
|     setTimeout(async () => { | ||||
|       //   uni.switchTab({ | ||||
|       //     url: "/pages/index/index", | ||||
|       //   }); | ||||
|       // 获取礼包详情 | ||||
|       await this.getGiftDetail(); | ||||
|     }, 2000); | ||||
|   }, | ||||
| }; | ||||
| 	export default { | ||||
| 		data() { | ||||
| 			return { | ||||
| 				 | ||||
| 			}; | ||||
| 		}, | ||||
| 		methods: { | ||||
| 			/* goHome() { | ||||
| 				console.log(1111); | ||||
| 				uni.switchTab({ | ||||
| 					url: '/pages/index/index' | ||||
| 				}) | ||||
| 			} */ | ||||
| 		}, | ||||
| 		onShow() { | ||||
| 			setTimeout(() => { | ||||
| 				uni.switchTab({ | ||||
| 					url: '/pages/index/index' | ||||
| 				}) | ||||
| 			},1000) | ||||
| 		} | ||||
| 	} | ||||
| </script> | ||||
| 
 | ||||
| <style lang="scss"> | ||||
| page { | ||||
|   height: 100vh; | ||||
|   background: url("../../static/image/start/new_bg.png") no-repeat center center | ||||
|     fixed; | ||||
|   background-size: cover; | ||||
|   box-sizing: border-box; | ||||
| } | ||||
| /* HTML: <div class="loader"></div> */ | ||||
| .loader { | ||||
|   width: 50px; | ||||
|   aspect-ratio: 1; | ||||
|   display: grid; | ||||
| } | ||||
| .loader::before, | ||||
| .loader::after { | ||||
|   content: ""; | ||||
|   grid-area: 1/1; | ||||
|   --c: no-repeat radial-gradient(farthest-side, #25b09b 92%, #0000); | ||||
|   background: var(--c) 50% 0, var(--c) 50% 100%, var(--c) 100% 50%, | ||||
|     var(--c) 0 50%; | ||||
|   background-size: 12px 12px; | ||||
|   animation: l12 1s infinite; | ||||
| } | ||||
| .loader::before { | ||||
|   margin: 4px; | ||||
|   filter: hue-rotate(45deg); | ||||
|   background-size: 8px 8px; | ||||
|   animation-timing-function: linear; | ||||
| page{ | ||||
| 	height: 100vh; | ||||
| 	background:url('../../static/image/start/new_bg.png')  no-repeat center center fixed; | ||||
| 	background-size: cover; | ||||
| 	box-sizing: border-box; | ||||
| } | ||||
| 
 | ||||
| @keyframes l12 { | ||||
|   100% { | ||||
|     transform: rotate(0.5turn); | ||||
|   } | ||||
| } | ||||
| @keyframes l27 { | ||||
|   100% { | ||||
|     transform: rotate(1turn); | ||||
|   } | ||||
| } | ||||
| .main-box { | ||||
|   width: 100%; | ||||
|   height: 100%; | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
|   align-items: center; | ||||
| } | ||||
| .loading-box { | ||||
|   //  上下左右居中 | ||||
|   background-color: #fff; | ||||
|   width: 234px; | ||||
|   height: 234px; | ||||
|   border-radius: 8px; | ||||
|   display: flex; | ||||
|   justify-content: center; | ||||
|   align-items: center; | ||||
|   flex-direction: column; | ||||
| } | ||||
| .word { | ||||
|   margin-top: 27px; | ||||
|   font-size: 16px; | ||||
|   color: #000000; | ||||
|   text-align: center; | ||||
| } | ||||
| </style> | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								static/3.jpg
									
									
									
									
									
								
							
							
						
						| Before Width: | Height: | Size: 166 KiB | 
| Before Width: | Height: | Size: 7.0 KiB | 
| Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 63 KiB | 
| Before Width: | Height: | Size: 2.3 KiB | 
| Before Width: | Height: | Size: 2.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/log.png
									
									
									
									
									
								
							
							
						
						| Before Width: | Height: | Size: 2.8 KiB |