diff --git a/api/modules/user.ts b/api/modules/user.ts index dc36bd1..99192bf 100644 --- a/api/modules/user.ts +++ b/api/modules/user.ts @@ -4,10 +4,10 @@ import { paymentClient } from '@/api/clients/payment' import type { IApiResponse } from '@/api/types' import type { IUserInfo, - IVipInfo, - IOrder, - IVipPackage, - ITransaction, + IVipInfo, + IOrder, + IVipPackage, + ITransaction, IFeedbackForm, IPageData } from '@/types/user' @@ -159,7 +159,7 @@ export function uploadImage(filePath: string): Promise { url: `${SERVICE_MAP.MAIN}oss/fileoss`, filePath, name: 'file', - success: (res) => { + success: (res: any) => { try { const data = JSON.parse(res.data) if (data.url) { @@ -304,9 +304,10 @@ export async function getPointsData(current : number, limit : number, userId : s * 迁移用户数据 * @param tel 旧账号 * @param code 迁移验证码 + * @param type 未迁移数据类型 * @return */ -export async function migrateUserData(data: { tel: string, code: string }) { +export async function migrateUserData(data: { tel: string, code: string, type: string }) { const res = await mainClient.request({ url: 'common/user/migrationWumenData', method: 'POST', @@ -315,6 +316,21 @@ export async function migrateUserData(data: { tel: string, code: string }) { return res } +/** + * 获取用户迁移信息 + * @return { + * alreadyMigration: 已迁移用户数 + * notMigration: 未迁移用户数 + * } + */ +export async function getUserMigrateInfo() { + const res = await mainClient.request({ + url: 'common/user/getMigrationList', + method: 'POST', + }) + return res +} + /** * 我的湖分 * @return diff --git a/components/order/GoodsSelector.vue b/components/order/GoodsSelector.vue index 58e57c0..86505c9 100644 --- a/components/order/GoodsSelector.vue +++ b/components/order/GoodsSelector.vue @@ -16,7 +16,7 @@ - {{ isFudu ? t('order.selectFuduScheme') : t('order.selectPurchaseScheme') }} + {{ t('order.goodsList') }} () diff --git a/locale/en.json b/locale/en.json index 0c7aff9..be5b387 100644 --- a/locale/en.json +++ b/locale/en.json @@ -1,518 +1,520 @@ { - "locale": { - "auto": "System", - "en": "English", - "zh-hans": "简体中文" - }, - "global": { - "ok": "OK", - "cancel": "Cancel", - "close": "Close", - "confirm": "Confirm", - "loading": "Loading", - "tips": "Tips", - "searchNoResult": "No search results found", - "more": "More", - "dataNull": "No data available", - "networkConnectionError": "Network connection error.", - "loginExpired": "Login expired. Please log in again.", - "requestException": "Request exception", - "coin": "Coin", - "days": "Days", - "and": "and", - "call": "Call" - }, - "tabar.course": "COURSE", - "tabar.book": "EBOOK", - "tabar.user": "My", - "index": { - "title": "Taimed International", - "schema": "Schema", - "demo": "uni-app globalization", - "demoDescription": "Include uni-framework, manifest.json, pages.json, tabbar, Page, Component, API, Schema", - "detail": "Detail", - "language": "Language", - "language-info": "Settings", - "system-language": "System language", - "application-language": "Application language", - "language-change-confirm": "Applying this setting will restart the app" - }, - "api": { - "message": "Message" - }, - "schema": { - "name": "Name", - "add": "Add", - "add-success": "Add success" - }, - "login": { - "title": "Hello! Welcome to Taimed International", - "codeLogin": "Verification Code Login/Registration", - "passwordLogin": "Password Login", - "email": "email", - "emailPlaceholder": "please enter your email address", - "emailError": "please enter a valid email address", - "code": "verification code", - "codePlaceholder": "please enter the verification code", - "sendCodeSuccess": "Verification code sent successfully", - "password": "password", - "passwordPlaceholder": "please input a password", - "getCode": "Get Code", - "agree": "I have agreed", - "userAgreement": "User Agreement", - "privacyPolicy": "Privacy Policy", - "goLogin": "Go Login", - "switchToPassword": "Password Login", - "switchToCode": "Verification Code Login", - "forgotPassword": "forgot password?", - "noLogin": "No login experience", - "agreeFirst": "Please agree to the User Agreement and Privacy Policy first", - "loginSuccess": "success", - "loginFailed": "failed" - }, - "forget": { - "title": "Forgot Password", - "password": "password", - "passwordPlaceholder": "enter your password", - "passwordAgain": "password again", - "passwordAgainPlaceholder": "enter your password again", - "passwordNotMatch": "Passwords do not match", - "submit": "Submit", - "getCode": "Get Code", - "passwordStrengthStrong": "Strong password strength.", - "passwordStrengthMedium": "Medium password strength.", - "passwordStrengthWeak": "please use a password consisting of at least two types: uppercase and lowercase letters, numbers, and symbols, with a length of 8-20 characters.", - "passwordChanged": "Password changed successfully" - }, - "common": { - "confirm": "Confirm", - "cancel": "Cancel", - "submit": "Submit", - "save": "Save", - "delete": "Delete", - "edit": "Edit", - "back": "Back", - "loadMore": "Load More", - "noMore": "No More Data", - "noData": "No Data", - "loading": "Loading...", - "success": "Success", - "failed": "Failed", - "networkError": "Network Error", - "pleaseInput": "Please Input", - "pleaseSelect": "Please Select", - "data_null": "No Data", - "submit_text": "Submit", - "cancel_text": "Cancel", - "confirm_text": "Confirm", - "limit_title": "Tips", - "justNow": "Just Now", - "minutesAgo": " mins ago", - "hoursAgo": " hours ago", - "daysAgo": " days ago" - }, - "user": { - "title": "My", - "myOrders": "My Orders", - "myBooklist": "My Booklist", - "profile": "Profile", - "about": "About Us", - "feedback": "Feedback", - "settings": "Settings", - "language": "Language", - "languageSelect": "Select Language", - "languageChangeSuccess": "Language changed successfully", - "languageChangeFailed": "Failed to change language", - "subscribe": "Subscribe", - "myAccount": "My Account", - "notSet": "Not Set", - "clickToSet": "Set", - "vip": "VIP Member", - "vipExpireTime": "Expire Time", - "nickname": "Nickname", - "name": "Name", - "email": "Email", - "phone": "Phone", - "age": "Age", - "sex": "Gender", - "male": "Male", - "female": "Female", - "secrecy": "Secrecy", - "avatar": "Avatar", - "changeAvatar": "Change Avatar", - "setAvatar": "Set Avatar", - "updateSuccess": "Update Success", - "updateFailed": "Update Failed", - "paymentMethod": "Payment Method", - "googlePay": "Google Pay", - "applePay": "Apple Pay", - "agreeText": "I have agreed", - "agreement": "Recharge Agreement", - "agreeFirst": "Please agree to the recharge agreement first", - "orderSn": "Order Number", - "createTime": "Create Time", - "amount": "Amount", - "paymentSuccess": "Payment Success", - "paymentFailed": "Payment Failed", - "paymentCanceled": "Payment Canceled", - "transactionType": "Transaction Type", - "recharge": "Recharge", - "consume": "Consume", - "remark": "Remark", - "hotline": "Hotline", - "customerEmail": "Customer Email", - "wechat": "WeChat", - "wechatTip": "Click on the image and long press to save it to your phone, or use WeChat to scan the QR code to add the customer service official WeChat.", - "checkVersion": "Check Version", - "version": "Version", - "logoff": "Delete Account", - "logout": "Logout", - "logoffConfirm": "Are you sure you want to delete your account? This action cannot be undone", - "logoffConfirmAgain": "The cancellation application has been submitted successfully, please contact customer service for follow-up operations: 022-24142321", - "logoutConfirm": "Are you sure you want to logout?", - "logoffSuccess": "Account Deleted", - "logoutSuccess": "Logout Success", - "copySuccess": "Copy Success", - "privacyPolicy": "Privacy Policy", - "appDescription": "An online ebook app offering a wide range of content, including medical literature, classical Chinese studies, literature, and ancient traditional Chinese medicine texts. It features 3D simulated page-flipping, eye-protection mode, and other advanced reading technologies for a comfortable reading experience. The app supports mixed text and image layouts, along with AI-powered voice narration for reading and listening. Some ebooks also have corresponding physical editions, providing users with more reading options.", - "issueType": "Issue Type", - "account": "Account", - "description": "Description", - "contactPhone": "Contact Phone", - "screenshots": "Screenshots", - "issueTypeAccount": "Account Issue", - "issueTypePayment": "Payment Issue", - "issueTypeOrder": "Order Related", - "issueTypeContent": "Content Issue", - "issueTypeSuggestion": "Feature Suggestion", - "issueTypeBug": "Bug Report", - "issueTypeOther": "Other", - "feedbackSuccess": "Feedback Submitted", - "feedbackFailed": "Feedback Failed", - "pleaseInputDescription": "Please enter description", - "pleaseInputPhone": "Please enter contact phone", - "pleaseInputOrderSn": "Please enter order number", - "uploadImageFailed": "Image upload failed", - "maxImagesCount": "Maximum 4 images", - "sendCodeSuccess": "Verification code sent", - "sendCodeFailed": "Failed to send code", - "countdown": "s to resend", - "emailFormat": "Please enter valid email", - "passwordFormat": "Invalid password format", - "passwordNotMatch": "Passwords do not match", - "pleaseInputCode": "Please enter verification code", - "pleaseInputPassword": "Please enter password", - "pleaseInputPasswordAgain": "Please enter password again", - "monthCard": "Monthly", - "seasonCard": "Quarterly", - "yearCard": "Yearly", - "days": "days", - "selectPackage": "Please select a package", + "locale": { + "auto": "System", + "en": "English", + "zh-hans": "简体中文" + }, + "global": { + "ok": "OK", + "cancel": "Cancel", + "close": "Close", + "confirm": "Confirm", + "loading": "Loading", + "tips": "Tips", + "searchNoResult": "No search results found", + "more": "More", + "dataNull": "No data available", + "networkConnectionError": "Network connection error.", + "loginExpired": "Login expired. Please log in again.", + "requestException": "Request exception", + "coin": "Coin", + "days": "Days", + "and": "and", + "call": "Call" + }, + "tabar.course": "COURSE", + "tabar.book": "EBOOK", + "tabar.user": "My", + "index": { + "title": "Taimed International", + "schema": "Schema", + "demo": "uni-app globalization", + "demoDescription": "Include uni-framework, manifest.json, pages.json, tabbar, Page, Component, API, Schema", + "detail": "Detail", + "language": "Language", + "language-info": "Settings", + "system-language": "System language", + "application-language": "Application language", + "language-change-confirm": "Applying this setting will restart the app" + }, + "api": { + "message": "Message" + }, + "schema": { + "name": "Name", + "add": "Add", + "add-success": "Add success" + }, + "login": { + "title": "Hello! Welcome to Taimed International", + "codeLogin": "Verification Code Login/Registration", + "passwordLogin": "Password Login", + "email": "email", + "emailPlaceholder": "please enter your email address", + "emailError": "please enter a valid email address", + "code": "verification code", + "codePlaceholder": "please enter the verification code", + "sendCodeSuccess": "Verification code sent successfully", + "password": "password", + "passwordPlaceholder": "please input a password", + "getCode": "Get Code", + "agree": "I have agreed", + "userAgreement": "User Agreement", + "privacyPolicy": "Privacy Policy", + "goLogin": "Go Login", + "switchToPassword": "Password Login", + "switchToCode": "Verification Code Login", + "forgotPassword": "forgot password?", + "noLogin": "No login experience", + "agreeFirst": "Please agree to the User Agreement and Privacy Policy first", + "loginSuccess": "success", + "loginFailed": "failed" + }, + "forget": { + "title": "Forgot Password", + "password": "password", + "passwordPlaceholder": "enter your password", + "passwordAgain": "password again", + "passwordAgainPlaceholder": "enter your password again", + "passwordNotMatch": "Passwords do not match", + "submit": "Submit", + "getCode": "Get Code", + "passwordStrengthStrong": "Strong password strength.", + "passwordStrengthMedium": "Medium password strength.", + "passwordStrengthWeak": "please use a password consisting of at least two types: uppercase and lowercase letters, numbers, and symbols, with a length of 8-20 characters.", + "passwordChanged": "Password changed successfully" + }, + "common": { + "confirm": "Confirm", + "cancel": "Cancel", + "submit": "Submit", + "save": "Save", + "delete": "Delete", + "edit": "Edit", + "back": "Back", + "loadMore": "Load More", + "noMore": "No More Data", + "noData": "No Data", + "loading": "Loading...", + "success": "Success", + "failed": "Failed", + "networkError": "Network Error", + "pleaseInput": "Please Input", + "pleaseSelect": "Please Select", + "data_null": "No Data", + "submit_text": "Submit", + "cancel_text": "Cancel", + "confirm_text": "Confirm", + "limit_title": "Tips", + "justNow": "Just Now", + "minutesAgo": " mins ago", + "hoursAgo": " hours ago", + "daysAgo": " days ago" + }, + "user": { + "title": "My", + "myOrders": "My Orders", + "myBooklist": "My Booklist", + "profile": "Profile", + "about": "About Us", + "feedback": "Feedback", + "settings": "Settings", + "language": "Language", + "languageSelect": "Select Language", + "languageChangeSuccess": "Language changed successfully", + "languageChangeFailed": "Failed to change language", + "subscribe": "Subscribe", + "myAccount": "My Account", + "notSet": "Not Set", + "clickToSet": "Set", + "vip": "VIP Member", + "vipExpireTime": "Expire Time", + "nickname": "Nickname", + "name": "Name", + "email": "Email", + "phone": "Phone", + "age": "Age", + "sex": "Gender", + "male": "Male", + "female": "Female", + "secrecy": "Secrecy", + "avatar": "Avatar", + "changeAvatar": "Change Avatar", + "setAvatar": "Set Avatar", + "updateSuccess": "Update Success", + "updateFailed": "Update Failed", + "paymentMethod": "Payment Method", + "googlePay": "Google Pay", + "applePay": "Apple Pay", + "agreeText": "I have agreed", + "agreement": "Recharge Agreement", + "agreeFirst": "Please agree to the recharge agreement first", + "orderSn": "Order Number", + "createTime": "Create Time", + "amount": "Amount", + "paymentSuccess": "Payment Success", + "paymentFailed": "Payment Failed", + "paymentCanceled": "Payment Canceled", + "transactionType": "Transaction Type", + "recharge": "Recharge", + "consume": "Consume", + "remark": "Remark", + "hotline": "Hotline", + "customerEmail": "Customer Email", + "wechat": "WeChat", + "wechatTip": "Click on the image and long press to save it to your phone, or use WeChat to scan the QR code to add the customer service official WeChat.", + "checkVersion": "Check Version", + "version": "Version", + "logoff": "Delete Account", + "logout": "Logout", + "logoffConfirm": "Are you sure you want to delete your account? This action cannot be undone", + "logoffConfirmAgain": "The cancellation application has been submitted successfully, please contact customer service for follow-up operations: 022-24142321", + "logoutConfirm": "Are you sure you want to logout?", + "logoffSuccess": "Account Deleted", + "logoutSuccess": "Logout Success", + "copySuccess": "Copy Success", + "privacyPolicy": "Privacy Policy", + "appDescription": "An online ebook app offering a wide range of content, including medical literature, classical Chinese studies, literature, and ancient traditional Chinese medicine texts. It features 3D simulated page-flipping, eye-protection mode, and other advanced reading technologies for a comfortable reading experience. The app supports mixed text and image layouts, along with AI-powered voice narration for reading and listening. Some ebooks also have corresponding physical editions, providing users with more reading options.", + "issueType": "Issue Type", + "account": "Account", + "description": "Description", + "contactPhone": "Contact Phone", + "screenshots": "Screenshots", + "issueTypeAccount": "Account Issue", + "issueTypePayment": "Payment Issue", + "issueTypeOrder": "Order Related", + "issueTypeContent": "Content Issue", + "issueTypeSuggestion": "Feature Suggestion", + "issueTypeBug": "Bug Report", + "issueTypeOther": "Other", + "feedbackSuccess": "Feedback Submitted", + "feedbackFailed": "Feedback Failed", + "pleaseInputDescription": "Please enter description", + "pleaseInputPhone": "Please enter contact phone", + "pleaseInputOrderSn": "Please enter order number", + "uploadImageFailed": "Image upload failed", + "maxImagesCount": "Maximum 4 images", + "sendCodeSuccess": "Verification code sent", + "sendCodeFailed": "Failed to send code", + "countdown": "s to resend", + "emailFormat": "Please enter valid email", + "passwordFormat": "Invalid password format", + "passwordNotMatch": "Passwords do not match", + "pleaseInputCode": "Please enter verification code", + "pleaseInputPassword": "Please enter password", + "pleaseInputPasswordAgain": "Please enter password again", + "monthCard": "Monthly", + "seasonCard": "Quarterly", + "yearCard": "Yearly", + "days": "days", + "selectPackage": "Please select a package", "consumptionRecord": "Consumption record", "returnMine": "I'm about to return to my page", - "dataMigrate": "Data Migration", - "pointsRecord": "Points consumption record", - "migrateSubtitle": "Migrate data from Chinese account to current account", - "oldAccount": "Chinese Account", - "migrateCode": "Migration Code", - "confirmMigrate": "Confirm Migration", - "migrateSuccess": "Migration Successful", - "migrateFailed": "Migration failed, please check if the information is correct", - "pleaseCompleteInfo": "Please complete all information", - "oldAccountPlaceholder": "The chinese account to migrate", - "migrateCodePlaceholder": "The code obtained from chinese account", - "migrateWarning": "Migration is irreversible, please proceed with caution!", - "migrateInstructions": "Migration Instructions", - "instruction1": "Please obtain the migration code from your chinese account, get it by going to 【我的】-【数据迁移】-【获取迁移验证码】.", - "instruction2": "After data migration is complete, the chinese account data will be cleared, and all purchased Tianyi Coins, points, courses, E-book, VIP, certificate, and User Contribution will be transferred to the current account", - "instruction3": "The migration process may take a few minutes, please be patient.", - "instruction4": "If you encounter any issues, please contact customer service for assistance.", + "dataMigrate": "Data Migration", + "pointsRecord": "Points consumption record", + "migrateSubtitle": "Migrate data from Chinese account to current account", + "oldAccount": "Chinese Account", + "migrateCode": "Migration Code", + "confirmMigrate": "Confirm Migration", + "migrateSuccess": "Migration Successful", + "migrateFailed": "Migration failed, please check if the information is correct", + "pleaseCompleteInfo": "Please complete all information", + "oldAccountPlaceholder": "The chinese account to migrate", + "migrateCodePlaceholder": "The code obtained from chinese account", + "migrateWarning": "Migration is irreversible, please proceed with caution!", + "migrateInstructions": "Migration Instructions", + "instruction1": "Please obtain the migration code from your chinese account, get it by going to 【我的】-【数据迁移】-【获取迁移验证码】.", + "instruction2": "After data migration is complete, the chinese account data will be cleared, and all purchased Tianyi Coins, points, courses, E-book, VIP, certificate, and User Contribution will be transferred to the current account", + "instruction3": "The migration process may take a few minutes, please be patient.", + "instruction4": "If you encounter any issues, please contact customer service for assistance.", + "alreadyMigrated": "You have already migrated:", + "notMigration": "This migration:", + "migratedCompleted": "You have completed all migrations:", "closeWindow": "Close the payment pop-up window", "certificate": "My certificate", "iHufen": "My lake", "hufenRecord": "Lake division record", "hufen": "Hufen" - }, - "book": { - "title": "My Books", - "myBook": "My Books", - "read": "Read", - "listen": "Listen", - "comment": "Review", - "choose": "Browse Books", - "nullText": "No books yet, go shopping~", - "afterPurchase": "Purchase to read", - "contents": "Contents", - "zjContents": "Chapter List", - "set": "Settings", - "font": "Font Size", - "bgColor": "Background", - "type": "Reading Mode", - "type_1": "Scroll", - "type_2": "Page Turn", - "voices_null": "No audio available", - "endText": "Trial ended, purchase to continue", - "language": "Book language", - "readAudio": "Loading audio..." - }, - "bookOrder": { - "title": "Order Confirmation", - "bookInfo": "Book Information", - "amount": "Amount", - "paymentMethod": "Payment Method", - "googlePay": "Google Pay", - "balance": "Balance", - "confirm": "Confirm Order", - "creating": "Creating order...", - "processing": "Processing payment...", - "paymentSuccess": "Payment successful", - "paymentFailed": "Payment failed", - "paymentCancelled": "Payment cancelled", - "insufficientBalance": "Insufficient virtual coin balance", - "invalidPaymentAmount": "Final amount calculation incomplete", - "googlePayNotAvailable": "Google Pay not available", - "productNotFound": "Product not found", - "orderCreateFailed": "Failed to create order", - "verificationFailed": "Payment verification failed", - "pleaseWait": "Please wait...", - "doNotRepeat": "Please do not submit repeatedly", - "notMuch": "Insufficient balance", - "orderTitle": "Order Confirmation" - }, - "bookDetails": { - "title": "Book Details", - "title_comment": "Reviews", - "authorName": "Author: ", - "introduction": "Introduction", - "message": "Reviews", - "more": "More", - "relatedBooks": "Related Books", - "startReading": "Start Reading", - "startListening": "Start Listening", - "tryRead": "Try Reading", - "tryListen": "Try Listening", - "buy": "Buy Now", - "buttonText1": "Buy Now", - "buttonText2": "Purchased", - "list": "Select", - "makeComment": "Write Review", - "reply": "Reply to ", - "dpl": "'s comment", - "enterText": "Enter your comment", - "replyText": "Reply to ", - "supportSuccess": "Liked", - "supportCancel": "Unliked", - "deleteText": "Delete this comment?", - "deleteSuccess": "Deleted" - }, - "bookHome": { - "block1": "My Books", - "block2": "Recommended", - "more": "More", - "activityTitle": "Featured Books", - "readingCount": " reads", - "listenCount": " listens", - "purchased": " purchased", - "searchPlaceholder": "Search books..." - }, - "listen": { - "title": "Audio Book", - "speed": "Playback Speed", - "chapterList": "Chapter List", - "isLast": "Last Chapter", - "isFirst": "First Chapter" - }, - "workOrder": { - "submit_success": "Submitted successfully" - }, - "courseHome": { - "title": "Course", - "watchHistory": "Watch History", - "tryListen": "Try Listening", - "moreTryListen": "More Trials", - "buy": "Buy", - "searchPlaceholder": "Search courses..." - }, - "courseSearch": { - "title": "Search", - "placeholder": "Search courses and products...", - "historyTitle": "Search History", - "productTitle": "Products", - "courseTitle": "Courses", - "pleaseInputKeyword": "Please enter keyword", - "noData": "No data", - "vipDiscount": "VIP Discount", - "free": "Free", - "levelBeginner": "Beginner", - "levelAdvanced": "Advanced", - "required": "Required", - "elective": "Elective", - "each": "Each" - }, - "courseDetails": { - "detail": "Course Details", - "chapter": "Chapter Content", - "catalogue": "Catalogue", - "chapterList": "Chapters", - "trial": "Trial", - "learned": "Learned", - "notLearned": "Not Learned", - "locked": "Locked", - "purchase": "Buy Now", - "renew": "Renew", - "relearn": "Relearn", - "free": "Get Free", - "vipOnly": "VIP Only", - "openVip": "Get VIP", - "progress": "Learning Progress", - "relatedBooks": "Related Books", - "comments": "Comments", - "publishComment": "Post Comment", - "reply": "Reply", - "like": "Like", - "chapterIntro": "Chapter Introduction", - "thinkingQuestion": "Thinking Question", - "noQuestion": "No question available", - "videoTeaching": "Video Teaching", - "autoPlayNext": "s to auto play next", - "cancelAutoPlay": "Cancel Auto Play", - "vipTip": "Get VIP to enjoy more exclusive benefits", - "vipExpireTime": "VIP expires on", - "courseExpireTime": "Course expires on", - "notStarted": "Not started yet", - "unpurchasedTip": "You haven't purchased this catalogue or it has expired. Purchase or get VIP to access", - "pleaseGetCourse": "Please get the course first", - "pleasePurchase": "Please purchase first", - "getSuccess": "Get successfully", - "noChapters": "No chapters available", - "totalChapters": "Total {count} catalogues", - "expand": "Expand", - "collapse": "Collapse", - "selectPlan": "Select Plan", - "selectRenewPlan": "Select Renew Plan", - "noPurchaseOption": "No purchase option available", - "noRenewOption": "No renew option available", - "purchaseAgreement": "Notice", - "agreementContent": "Dear user, this software only allows one device to log in with one username and password. Using the same username on multiple devices is a violation. A warning will be issued for the first violation, and your account will be banned for repeated violations. We apologize for any inconvenience.", - "agree": "Agree", - "disagree": "Disagree", - "commentPlaceholder": "~ Be friendly and respectful ~", - "commentSubmit": "Submit", - "commentCancel": "Cancel", - "replyTo": "Reply to @", - "addEmoji": "Emoji", - "addImage": "Image", - "maxImages": "Maximum 3 images", - "publishSuccess": "Published successfully", - "publishFailed": "Failed to publish", - "pleaseInputContent": "Please enter content", - "loadMoreComments": "Load More", - "allLoaded": "All Loaded", - "noComments": "No comments yet", - "viewMoreReplies": "View more replies", - "copyright": "Copyright © Tianjin Zhongmiao Zhimen Technology Co., Ltd. All rights reserved!", - "courseInfo": "Course", - "chapterInfo": "Chapter", - "videoLoadFailed": "Video load failed", - "vipBenefit": "VIP benefit active", - "audio": "Audio", - "video": "Video" - }, - "courseOrder": { - "orderTitle": "Order Confirmation", - "goodsInfo": "Product Information", - "shippingAddress": "Shipping Address", - "addAddress": "Add Address", - "goodsAmount": "Subtotal", - "freight": "Shipping", - "availablePoints": "Available Points", - "pointsDiscount": " points (deduct", - "orderTotal": "Total", - "total": "Total", - "submitOrder": "Submit Order", - "submitting": "Submitting...", - "quantity": "Quantity", - "vipPrice": "VIP Price", - "activityPrice": "Sale Price", - "pleaseSelectAddress": "Please select address", - "orderCreateSuccess": "Order created successfully", - "orderCreateFailed": "Failed to create order" - }, - "order": { - "selectFuduScheme": "Select Fudu Scheme", - "selectPurchaseScheme": "Select Purchase Scheme", - "confirmTitle": "Confirm Order", - "goodsInfo": "Product Information", - "priceDetail": "Price Details", - "totalPrice": "Subtotal", - "coupon": "Coupon", - "points": "Points", - "vipDiscount": "VIP Exclusive Discount", - "promotionDiscounted": "Promotion Discount", - "actualPayment": "Total", - "paymentMethod": "Payment Method", - "balance": "Balance", - "recharge": "Recharge Now", - "remark": "Order Remark", - "remarkPlaceholder": "Optional: Leave a message", - "remarkTitle": "Order Remark", - "submit": "Pay Now", - "submitting": "Submitting...", - "total": "Total", - "noCoupon": "No coupons available", - "unavailable": "Unavailable", - "selectCoupon": "Please select a coupon", - "notUseCoupon": "Don't use coupon", - "reselect": "Reselect", - "selected": "Confirm", - "maxPoints": "Available Points (max pts)", - "pointsPlaceholder": "Enter points", - "allPoints": "Total Points", - "insufficientBalance": "Insufficient virtual coin balance", - "orderCreating": "Creating order", - "orderSuccess": "Purchase successful", - "orderFailed": "Failed, please try again", - "tooFrequent": "Too frequent, please wait", - "duplicateOrder": "You have a similar order recently. Continue?", - "duplicateConfirm": "Continue", - "duplicateCancel": "Cancel", - "customerService": "Customer Service", - "paymentTipTitle": "Notes", - "paymentTip1": "1.1 points = 1 Tianyi coin", - "paymentTip2-1": "2.1 For assistance, please contact our customer service on WeChat", - "paymentTip2-2": "or by email at", - "ensureBalance": "Ensure sufficient Tianyi coin balance", - "vipLabel": "VIP Discount", - "activityLabel": "Activity Price", - "vipPriceLabel": "VIP Price", - "quantity": "Quantity", - "couponUseLevel": "Min. {level} CNY", - "couponExpiry": "Valid until", - "couponForever": "Permanent", - "couponReason": "Reason", - "couponUsage": "Usage", - "couponType0": "All Products", - "couponType1": "Specific Courses", - "couponType2": "Course Categories", - "couponCount": "{count} coupons", + }, + "book": { + "title": "My Books", + "myBook": "My Books", + "read": "Read", + "listen": "Listen", + "comment": "Review", + "choose": "Browse Books", + "nullText": "No books yet, go shopping~", + "afterPurchase": "Purchase to read", + "contents": "Contents", + "zjContents": "Chapter List", + "set": "Settings", + "font": "Font Size", + "bgColor": "Background", + "type": "Reading Mode", + "type_1": "Scroll", + "type_2": "Page Turn", + "voices_null": "No audio available", + "endText": "Trial ended, purchase to continue", + "language": "Book language", + "readAudio": "Loading audio..." + }, + "bookOrder": { + "title": "Order Confirmation", + "bookInfo": "Book Information", + "amount": "Amount", + "paymentMethod": "Payment Method", + "googlePay": "Google Pay", + "balance": "Balance", + "confirm": "Confirm Order", + "creating": "Creating order...", + "processing": "Processing payment...", + "paymentSuccess": "Payment successful", + "paymentFailed": "Payment failed", + "paymentCancelled": "Payment cancelled", + "insufficientBalance": "Insufficient virtual coin balance", + "invalidPaymentAmount": "Final amount calculation incomplete", + "googlePayNotAvailable": "Google Pay not available", + "productNotFound": "Product not found", + "orderCreateFailed": "Failed to create order", + "verificationFailed": "Payment verification failed", + "pleaseWait": "Please wait...", + "doNotRepeat": "Please do not submit repeatedly", + "notMuch": "Insufficient balance", + "orderTitle": "Order Confirmation" + }, + "bookDetails": { + "title": "Book Details", + "title_comment": "Reviews", + "authorName": "Author: ", + "introduction": "Introduction", + "message": "Reviews", + "more": "More", + "relatedBooks": "Related Books", + "startReading": "Start Reading", + "startListening": "Start Listening", + "tryRead": "Try Reading", + "tryListen": "Try Listening", + "buy": "Buy Now", + "buttonText1": "Buy Now", + "buttonText2": "Purchased", + "list": "Select", + "makeComment": "Write Review", + "reply": "Reply to ", + "dpl": "'s comment", + "enterText": "Enter your comment", + "replyText": "Reply to ", + "supportSuccess": "Liked", + "supportCancel": "Unliked", + "deleteText": "Delete this comment?", + "deleteSuccess": "Deleted" + }, + "bookHome": { + "block1": "My Books", + "block2": "Recommended", + "more": "More", + "activityTitle": "Featured Books", + "readingCount": " reads", + "listenCount": " listens", + "purchased": " purchased", + "searchPlaceholder": "Search books..." + }, + "listen": { + "title": "Audio Book", + "speed": "Playback Speed", + "chapterList": "Chapter List", + "isLast": "Last Chapter", + "isFirst": "First Chapter" + }, + "workOrder": { + "submit_success": "Submitted successfully" + }, + "courseHome": { + "title": "Course", + "watchHistory": "Watch History", + "tryListen": "Try Listening", + "moreTryListen": "More Trials", + "buy": "Buy", + "searchPlaceholder": "Search courses..." + }, + "courseSearch": { + "title": "Search", + "placeholder": "Search courses and products...", + "historyTitle": "Search History", + "productTitle": "Products", + "courseTitle": "Courses", + "pleaseInputKeyword": "Please enter keyword", + "noData": "No data", + "vipDiscount": "VIP Discount", + "free": "Free", + "levelBeginner": "Beginner", + "levelAdvanced": "Advanced", + "required": "Required", + "elective": "Elective", + "each": "Each" + }, + "courseDetails": { + "detail": "Course Details", + "chapter": "Chapter Content", + "catalogue": "Catalogue", + "chapterList": "Chapters", + "trial": "Trial", + "learned": "Learned", + "notLearned": "Not Learned", + "locked": "Locked", + "purchase": "Buy Now", + "renew": "Renew", + "relearn": "Relearn", + "free": "Get Free", + "vipOnly": "VIP Only", + "openVip": "Get VIP", + "progress": "Learning Progress", + "relatedBooks": "Related Books", + "comments": "Comments", + "publishComment": "Post Comment", + "reply": "Reply", + "like": "Like", + "chapterIntro": "Chapter Introduction", + "thinkingQuestion": "Thinking Question", + "noQuestion": "No question available", + "videoTeaching": "Video Teaching", + "autoPlayNext": "s to auto play next", + "cancelAutoPlay": "Cancel Auto Play", + "vipTip": "Get VIP to enjoy more exclusive benefits", + "vipExpireTime": "VIP expires on", + "courseExpireTime": "Course expires on", + "notStarted": "Not started yet", + "unpurchasedTip": "You haven't purchased this catalogue or it has expired. Purchase or get VIP to access", + "pleaseGetCourse": "Please get the course first", + "pleasePurchase": "Please purchase first", + "getSuccess": "Get successfully", + "noChapters": "No chapters available", + "totalChapters": "Total {count} catalogues", + "expand": "Expand", + "collapse": "Collapse", + "selectPlan": "Select Plan", + "selectRenewPlan": "Select Renew Plan", + "noPurchaseOption": "No purchase option available", + "noRenewOption": "No renew option available", + "purchaseAgreement": "Notice", + "agreementContent": "Dear user, this software only allows one device to log in with one username and password. Using the same username on multiple devices is a violation. A warning will be issued for the first violation, and your account will be banned for repeated violations. We apologize for any inconvenience.", + "agree": "Agree", + "disagree": "Disagree", + "commentPlaceholder": "~ Be friendly and respectful ~", + "commentSubmit": "Submit", + "commentCancel": "Cancel", + "replyTo": "Reply to @", + "addEmoji": "Emoji", + "addImage": "Image", + "maxImages": "Maximum 3 images", + "publishSuccess": "Published successfully", + "publishFailed": "Failed to publish", + "pleaseInputContent": "Please enter content", + "loadMoreComments": "Load More", + "allLoaded": "All Loaded", + "noComments": "No comments yet", + "viewMoreReplies": "View more replies", + "copyright": "Copyright © Tianjin Zhongmiao Zhimen Technology Co., Ltd. All rights reserved!", + "courseInfo": "Course", + "chapterInfo": "Chapter", + "videoLoadFailed": "Video load failed", + "vipBenefit": "VIP benefit active", + "audio": "Audio", + "video": "Video" + }, + "courseOrder": { + "orderTitle": "Order Confirmation", + "goodsInfo": "Product Information", + "shippingAddress": "Shipping Address", + "addAddress": "Add Address", + "goodsAmount": "Subtotal", + "freight": "Shipping", + "availablePoints": "Available Points", + "pointsDiscount": " points (deduct", + "orderTotal": "Total", + "total": "Total", + "submitOrder": "Submit Order", + "submitting": "Submitting...", + "quantity": "Quantity", + "vipPrice": "VIP Price", + "activityPrice": "Sale Price", + "pleaseSelectAddress": "Please select address", + "orderCreateSuccess": "Order created successfully", + "orderCreateFailed": "Failed to create order" + }, + "order": { + "goodsList": "Product List", + "confirmTitle": "Confirm Order", + "goodsInfo": "Product Information", + "priceDetail": "Price Details", + "totalPrice": "Subtotal", + "coupon": "Coupon", + "points": "Points", + "vipDiscount": "VIP Exclusive Discount", + "promotionDiscounted": "Promotion Discount", + "actualPayment": "Total", + "paymentMethod": "Payment Method", + "balance": "Balance", + "recharge": "Recharge Now", + "remark": "Order Remark", + "remarkPlaceholder": "Optional: Leave a message", + "remarkTitle": "Order Remark", + "submit": "Pay Now", + "submitting": "Submitting...", + "total": "Total", + "noCoupon": "No coupons available", + "unavailable": "Unavailable", + "selectCoupon": "Please select a coupon", + "notUseCoupon": "Don't use coupon", + "reselect": "Reselect", + "selected": "Confirm", + "maxPoints": "Available Points (max pts)", + "pointsPlaceholder": "Enter points", + "allPoints": "Total Points", + "insufficientBalance": "Insufficient virtual coin balance", + "orderCreating": "Creating order", + "orderSuccess": "Purchase successful", + "orderFailed": "Failed, please try again", + "tooFrequent": "Too frequent, please wait", + "duplicateOrder": "You have a similar order recently. Continue?", + "duplicateConfirm": "Continue", + "duplicateCancel": "Cancel", + "customerService": "Customer Service", + "paymentTipTitle": "Notes", + "paymentTip1": "1.1 points = 1 Tianyi coin", + "paymentTip2-1": "2.1 For assistance, please contact our customer service on WeChat", + "paymentTip2-2": "or by email at", + "ensureBalance": "Ensure sufficient Tianyi coin balance", + "vipLabel": "VIP Discount", + "activityLabel": "Activity Price", + "vipPriceLabel": "VIP Price", + "quantity": "Quantity", + "couponUseLevel": "Min. {level} CNY", + "couponExpiry": "Valid until", + "couponForever": "Permanent", + "couponReason": "Reason", + "couponUsage": "Usage", + "couponType0": "All Products", + "couponType1": "Specific Courses", + "couponType2": "Course Categories", + "couponCount": "{count} coupons", "rechargeConsumptionList": "Recharge and consumption records", "rechargeAmount": "Recharge amount", "valueAddedServices": "Value-added services", "readAgree": "I have read and agreed", "readAgreeServices": "Please read and agree to the value-added services first", - "orderDetails": "Order Details", + "orderDetails": "Order Details", "pointsRecord": "Points consumption record", "unusable": "The billing service cannot be used", "give": "give" - }, - "vip": { - "courseVip": "Course VIP", - "bookVip": "E-Book VIP", - "openVip": "Open Now", - "renewal": "Renewal", - "daily": "Daily" - }, - "news": { - "newsDetail": "News Detail" - } -} + }, + "vip": { + "courseVip": "Course VIP", + "bookVip": "E-Book VIP", + "openVip": "Open Now", + "renewal": "Renewal", + "daily": "Daily" + }, + "news": { + "newsDetail": "News Detail" + } +} \ No newline at end of file diff --git a/locale/zh-Hans.json b/locale/zh-Hans.json index 20e4798..91a9b24 100644 --- a/locale/zh-Hans.json +++ b/locale/zh-Hans.json @@ -1,519 +1,521 @@ { - "locale": { - "auto": "系统", - "en": "English", - "zh-hans": "简体中文" - }, - "global": { - "ok": "确定", - "cancel": "取消", - "close": "关闭", - "confirm": "确认", - "loading": "加载中", - "tips": "提示", - "searchNoResult": "暂无搜索结果", - "more": "更多", - "dataNull": "暂无数据", - "networkConnectionError": "网络连接错误。", - "loginExpired": "登录失效,请重新登录。", - "requestException": "请求异常", - "coin": "天医币", - "days": "天", - "and": "和", - "call": "拨打电话" - }, - "tabar.course": "课程", - "tabar.book": "图书", - "tabar.user": "我的", - "index": { - "title": "太湖国际", - "schema": "Schema", - "demo": "uni-app 国际化演示", - "demoDescription": "包含 uni-framework、manifest.json、pages.json、tabbar、页面、组件、API、Schema", - "detail": "详情", - "language": "语言", - "language-info": "语言信息", - "system-language": "系统语言", - "application-language": "应用语言", - "language-change-confirm": "应用此设置将重启App" - }, - "api": { - "message": "提示" - }, - "schema": { - "name": "姓名", - "add": "新增", - "add-success": "新增成功" - }, - "login": { - "title": "你好!欢迎来到 太湖国际", - "codeLogin": "验证码登录/注册", - "passwordLogin": "密码登录", - "email": "邮箱", - "emailPlaceholder": "请输入您的邮箱地址", - "emailError": "请输入正确的邮箱地址", - "code": "验证码", - "codePlaceholder": "请输入验证码", - "sendCodeSuccess": "验证码发送成功", - "password": "密码", - "passwordPlaceholder": "请输入密码", - "getCode": "获取验证码", - "agree": "我已同意", - "userAgreement": "用户协议", - "privacyPolicy": "隐私政策", - "goLogin": "登录", - "switchToPassword": "密码登录", - "switchToCode": "验证码登录", - "forgotPassword": "忘记密码?", - "noLogin": "游客体验", - "agreeFirst": "请先同意用户协议和隐私政策", - "loginSuccess": "登录成功", - "loginFailed": "登录失败" - }, - "forget": { - "title": "忘记密码", - "email": "邮箱", - "password": "密码", - "passwordPlaceholder": "请输入密码", - "passwordAgain": "再次输入密码", - "passwordAgainPlaceholder": "请再次输入密码", - "passwordNotMatch": "两次密码不一致", - "submit": "提交", - "getCode": "获取验证码", - "passwordStrengthStrong": "密码强度强", - "passwordStrengthMedium": "密码强度中等", - "passwordStrengthWeak": "请使用至少包含大小写字母、数字、符号中的两种类型,长度为8-20个字符的密码", - "passwordChanged": "密码修改成功" - }, - "common": { - "confirm": "确认", - "cancel": "取消", - "submit": "提交", - "save": "保存", - "delete": "删除", - "edit": "编辑", - "back": "返回", - "loadMore": "加载更多", - "noMore": "没有更多数据", - "noData": "暂无数据", - "loading": "加载中...", - "success": "操作成功", - "failed": "操作失败", - "networkError": "网络连接失败", - "pleaseInput": "请输入", - "pleaseSelect": "请选择", - "data_null": "暂无数据", - "submit_text": "提交", - "cancel_text": "取消", - "confirm_text": "确定", - "limit_title": "提示", - "justNow": "刚刚", - "minutesAgo": "分钟前", - "hoursAgo": "小时前", - "daysAgo": "天前" - }, - "user": { - "title": "我的", - "myOrders": "我的订单", - "myBooklist": "我的书单", - "profile": "个人资料", - "about": "关于我们", - "feedback": "问题反馈", - "settings": "设置", - "language": "语言", - "languageSelect": "选择语言", - "languageChangeSuccess": "语言切换成功", - "languageChangeFailed": "语言切换失败", - "subscribe": "订阅", - "myAccount": "我的账户", - "notSet": "未设置", - "clickToSet": "设置", - "vip": "VIP会员", - "vipExpireTime": "到期时间", - "nickname": "昵称", - "name": "姓名", - "email": "邮箱", - "phone": "手机号", - "age": "年龄", - "sex": "性别", - "male": "男", - "female": "女", - "secrecy": "保密", - "avatar": "头像", - "changeAvatar": "更换头像", - "setAvatar": "设置头像", - "updateSuccess": "更新成功", - "updateFailed": "更新失败", - "paymentMethod": "支付方式", - "googlePay": "Google Pay", - "applePay": "Apple Pay", - "agreeText": "我已同意", - "agreement": "充值协议", - "agreeFirst": "请先同意充值协议", - "orderSn": "订单编号", - "createTime": "创建时间", - "amount": "金额", - "paymentSuccess": "支付成功", - "paymentFailed": "支付失败", - "paymentCanceled": "支付已取消", - "transactionType": "交易类型", - "recharge": "充值", - "consume": "消费", - "remark": "备注", - "hotline": "客服热线", - "customerEmail": "客服邮箱", - "wechat": "微信号", - "wechatTip": "点击图片并长按保存到手机,或使用微信扫描二维码添加客服官方微信。", - "checkVersion": "检查版本", - "version": "版本", - "logoff": "注销账户", - "logout": "退出登录", - "logoffConfirm": "确定要注销账户吗?此操作不可恢复", - "logoffConfirmAgain": "注销申请已提交成功,请联系客服进行后续操作:022-24142321", - "logoutConfirm": "确定要退出登录吗?", - "logoffSuccess": "注销成功", - "logoutSuccess": "退出成功", - "copySuccess": "复制成功", - "privacyPolicy": "隐私政策", - "appDescription": "一款线上电子书APP,包含医学类、国学类、文学类、中医古籍等各种类型。3D仿真翻页、护眼模式等阅读技术,打造舒适阅读体验。图文混排,AI人声读书听书。部分电子书也有对应的纸质书,给予用户更多的阅读选择。", - "issueType": "问题类型", - "account": "账号", - "description": "问题描述", - "contactPhone": "联系电话", - "screenshots": "截图", - "issueTypeAccount": "账号问题", - "issueTypePayment": "支付问题", - "issueTypeOrder": "订单相关", - "issueTypeContent": "内容问题", - "issueTypeSuggestion": "功能建议", - "issueTypeBug": "BUG反馈", - "issueTypeOther": "其他", - "feedbackSuccess": "反馈提交成功", - "feedbackFailed": "反馈提交失败", - "pleaseInputDescription": "请输入问题描述", - "pleaseInputPhone": "请输入联系电话", - "pleaseInputOrderSn": "请输入订单编号", - "uploadImageFailed": "图片上传失败", - "maxImagesCount": "最多上传4张图片", - "sendCodeSuccess": "验证码发送成功", - "sendCodeFailed": "验证码发送失败", - "countdown": "秒后重新发送", - "emailFormat": "请输入正确的邮箱格式", - "passwordFormat": "密码格式不正确", - "passwordNotMatch": "两次密码不一致", - "pleaseInputCode": "请输入验证码", - "pleaseInputPassword": "请输入密码", - "pleaseInputPasswordAgain": "请再次输入密码", - "monthCard": "月卡", - "seasonCard": "季卡", - "yearCard": "年卡", - "days": "天", - "selectPackage": "请选择套餐", + "locale": { + "auto": "系统", + "en": "English", + "zh-hans": "简体中文" + }, + "global": { + "ok": "确定", + "cancel": "取消", + "close": "关闭", + "confirm": "确认", + "loading": "加载中", + "tips": "提示", + "searchNoResult": "暂无搜索结果", + "more": "更多", + "dataNull": "暂无数据", + "networkConnectionError": "网络连接错误。", + "loginExpired": "登录失效,请重新登录。", + "requestException": "请求异常", + "coin": "天医币", + "days": "天", + "and": "和", + "call": "拨打电话" + }, + "tabar.course": "课程", + "tabar.book": "图书", + "tabar.user": "我的", + "index": { + "title": "太湖国际", + "schema": "Schema", + "demo": "uni-app 国际化演示", + "demoDescription": "包含 uni-framework、manifest.json、pages.json、tabbar、页面、组件、API、Schema", + "detail": "详情", + "language": "语言", + "language-info": "语言信息", + "system-language": "系统语言", + "application-language": "应用语言", + "language-change-confirm": "应用此设置将重启App" + }, + "api": { + "message": "提示" + }, + "schema": { + "name": "姓名", + "add": "新增", + "add-success": "新增成功" + }, + "login": { + "title": "你好!欢迎来到 太湖国际", + "codeLogin": "验证码登录/注册", + "passwordLogin": "密码登录", + "email": "邮箱", + "emailPlaceholder": "请输入您的邮箱地址", + "emailError": "请输入正确的邮箱地址", + "code": "验证码", + "codePlaceholder": "请输入验证码", + "sendCodeSuccess": "验证码发送成功", + "password": "密码", + "passwordPlaceholder": "请输入密码", + "getCode": "获取验证码", + "agree": "我已同意", + "userAgreement": "用户协议", + "privacyPolicy": "隐私政策", + "goLogin": "登录", + "switchToPassword": "密码登录", + "switchToCode": "验证码登录", + "forgotPassword": "忘记密码?", + "noLogin": "游客体验", + "agreeFirst": "请先同意用户协议和隐私政策", + "loginSuccess": "登录成功", + "loginFailed": "登录失败" + }, + "forget": { + "title": "忘记密码", + "email": "邮箱", + "password": "密码", + "passwordPlaceholder": "请输入密码", + "passwordAgain": "再次输入密码", + "passwordAgainPlaceholder": "请再次输入密码", + "passwordNotMatch": "两次密码不一致", + "submit": "提交", + "getCode": "获取验证码", + "passwordStrengthStrong": "密码强度强", + "passwordStrengthMedium": "密码强度中等", + "passwordStrengthWeak": "请使用至少包含大小写字母、数字、符号中的两种类型,长度为8-20个字符的密码", + "passwordChanged": "密码修改成功" + }, + "common": { + "confirm": "确认", + "cancel": "取消", + "submit": "提交", + "save": "保存", + "delete": "删除", + "edit": "编辑", + "back": "返回", + "loadMore": "加载更多", + "noMore": "没有更多数据", + "noData": "暂无数据", + "loading": "加载中...", + "success": "操作成功", + "failed": "操作失败", + "networkError": "网络连接失败", + "pleaseInput": "请输入", + "pleaseSelect": "请选择", + "data_null": "暂无数据", + "submit_text": "提交", + "cancel_text": "取消", + "confirm_text": "确定", + "limit_title": "提示", + "justNow": "刚刚", + "minutesAgo": "分钟前", + "hoursAgo": "小时前", + "daysAgo": "天前" + }, + "user": { + "title": "我的", + "myOrders": "我的订单", + "myBooklist": "我的书单", + "profile": "个人资料", + "about": "关于我们", + "feedback": "问题反馈", + "settings": "设置", + "language": "语言", + "languageSelect": "选择语言", + "languageChangeSuccess": "语言切换成功", + "languageChangeFailed": "语言切换失败", + "subscribe": "订阅", + "myAccount": "我的账户", + "notSet": "未设置", + "clickToSet": "设置", + "vip": "VIP会员", + "vipExpireTime": "到期时间", + "nickname": "昵称", + "name": "姓名", + "email": "邮箱", + "phone": "手机号", + "age": "年龄", + "sex": "性别", + "male": "男", + "female": "女", + "secrecy": "保密", + "avatar": "头像", + "changeAvatar": "更换头像", + "setAvatar": "设置头像", + "updateSuccess": "更新成功", + "updateFailed": "更新失败", + "paymentMethod": "支付方式", + "googlePay": "Google Pay", + "applePay": "Apple Pay", + "agreeText": "我已同意", + "agreement": "充值协议", + "agreeFirst": "请先同意充值协议", + "orderSn": "订单编号", + "createTime": "创建时间", + "amount": "金额", + "paymentSuccess": "支付成功", + "paymentFailed": "支付失败", + "paymentCanceled": "支付已取消", + "transactionType": "交易类型", + "recharge": "充值", + "consume": "消费", + "remark": "备注", + "hotline": "客服热线", + "customerEmail": "客服邮箱", + "wechat": "微信号", + "wechatTip": "点击图片并长按保存到手机,或使用微信扫描二维码添加客服官方微信。", + "checkVersion": "检查版本", + "version": "版本", + "logoff": "注销账户", + "logout": "退出登录", + "logoffConfirm": "确定要注销账户吗?此操作不可恢复", + "logoffConfirmAgain": "注销申请已提交成功,请联系客服进行后续操作:022-24142321", + "logoutConfirm": "确定要退出登录吗?", + "logoffSuccess": "注销成功", + "logoutSuccess": "退出成功", + "copySuccess": "复制成功", + "privacyPolicy": "隐私政策", + "appDescription": "一款线上电子书APP,包含医学类、国学类、文学类、中医古籍等各种类型。3D仿真翻页、护眼模式等阅读技术,打造舒适阅读体验。图文混排,AI人声读书听书。部分电子书也有对应的纸质书,给予用户更多的阅读选择。", + "issueType": "问题类型", + "account": "账号", + "description": "问题描述", + "contactPhone": "联系电话", + "screenshots": "截图", + "issueTypeAccount": "账号问题", + "issueTypePayment": "支付问题", + "issueTypeOrder": "订单相关", + "issueTypeContent": "内容问题", + "issueTypeSuggestion": "功能建议", + "issueTypeBug": "BUG反馈", + "issueTypeOther": "其他", + "feedbackSuccess": "反馈提交成功", + "feedbackFailed": "反馈提交失败", + "pleaseInputDescription": "请输入问题描述", + "pleaseInputPhone": "请输入联系电话", + "pleaseInputOrderSn": "请输入订单编号", + "uploadImageFailed": "图片上传失败", + "maxImagesCount": "最多上传4张图片", + "sendCodeSuccess": "验证码发送成功", + "sendCodeFailed": "验证码发送失败", + "countdown": "秒后重新发送", + "emailFormat": "请输入正确的邮箱格式", + "passwordFormat": "密码格式不正确", + "passwordNotMatch": "两次密码不一致", + "pleaseInputCode": "请输入验证码", + "pleaseInputPassword": "请输入密码", + "pleaseInputPasswordAgain": "请再次输入密码", + "monthCard": "月卡", + "seasonCard": "季卡", + "yearCard": "年卡", + "days": "天", + "selectPackage": "请选择套餐", "consumptionRecord": "消费记录", "returnMine": "即将返回我的页面", - "pointsRecord": "积分记录", - "dataMigrate": "数据迁移", - "migrateSubtitle": "迁移国内账号数据到本账号", - "oldAccount": "国内版账号", - "migrateCode": "迁移验证码", - "confirmMigrate": "确定迁移", - "migrateSuccess": "迁移成功", - "migrateFailed": "迁移失败,请检查信息是否正确", - "pleaseCompleteInfo": "请填写完整信息", - "oldAccountPlaceholder": "需要迁移的国内版账号", - "migrateCodePlaceholder": "国内版账号获取的迁移验证码", - "migrateWarning": "迁移后不可恢复,请谨慎操作!", - "migrateInstructions": "迁移说明", - "instruction1": "请在吴门医述、心灵空间、众妙之门、疯子读书任意APP中获取迁移验证码,获取方式【我的】-【数据迁移】-【获取迁移验证码】。", - "instruction2": "数据迁移完成后,旧账号数据将被清空,已购买的天医币、积分、课程、电子书、VIP、证书、湖分将转移到当前账号。", - "instruction3": "迁移过程可能需要几分钟时间,请耐心等待。", - "instruction4": "如遇到问题,请联系客服获取帮助。", + "pointsRecord": "积分记录", + "dataMigrate": "数据迁移", + "migrateSubtitle": "迁移国内账号数据到本账号", + "oldAccount": "国内版账号", + "migrateCode": "迁移验证码", + "confirmMigrate": "确定迁移", + "migrateSuccess": "迁移成功", + "migrateFailed": "迁移失败,请检查信息是否正确", + "pleaseCompleteInfo": "请填写完整信息", + "oldAccountPlaceholder": "需要迁移的国内版账号", + "migrateCodePlaceholder": "国内版账号获取的迁移验证码", + "migrateWarning": "迁移后不可恢复,请谨慎操作!", + "migrateInstructions": "迁移说明", + "instruction1": "请在吴门医述、心灵空间、众妙之门、疯子读书任意APP中获取迁移验证码,获取方式【我的】-【数据迁移】-【获取迁移验证码】。", + "instruction2": "数据迁移完成后,旧账号数据将被清空,已购买的天医币、积分、课程、电子书、VIP、证书、湖分将转移到当前账号。", + "instruction3": "迁移过程可能需要几分钟时间,请耐心等待。", + "instruction4": "如遇到问题,请联系客服获取帮助。", + "alreadyMigrated": "您已迁移过:", + "notMigration": "本次迁移:", + "migratedCompleted": "您已迁移过所有可迁移数据:", "closeWindow": "关闭支付弹窗", "certificate": "我的证书", "iHufen": "我的湖分", "hufenRecord": "湖分记录", "hufen": "湖分" - }, - "book": { - "title": "我的书单", - "myBook": "我的书单", - "read": "阅读", - "listen": "听书", - "comment": "书评", - "choose": "去选书", - "nullText": "暂无书籍,快去选购吧~", - "afterPurchase": "购买后即可阅读此章节", - "contents": "目录", - "zjContents": "章节目录", - "set": "设置", - "font": "字体大小", - "bgColor": "背景颜色", - "type": "阅读模式", - "type_1": "上下滚动", - "type_2": "左右翻页", - "voices_null": "暂无音频文件", - "endText": "试读已结束,购买后继续阅读", - "language": "书籍语言", - "readAudio": "音频加载中..." - }, - "bookDetails": { - "title": "书籍详情", - "title_comment": "书评", - "authorName": "作者:", - "introduction": "内容简介", - "message": "书评", - "more": "更多", - "relatedBooks": "相关推荐", - "startReading": "开始阅读", - "startListening": "开始听书", - "tryRead": "试读", - "tryListen": "试听", - "buy": "立即购买", - "buttonText1": "立即购买", - "buttonText2": "已购买", - "list": "选择规格", - "makeComment": "发表评论", - "reply": "回复", - "dpl": "的评论", - "enterText": "请输入评论内容", - "replyText": "回复", - "supportSuccess": "点赞成功", - "supportCancel": "取消点赞", - "deleteText": "确定删除此评论吗?", - "deleteSuccess": "删除成功" - }, - "bookOrder": { - "title": "订单确认", - "bookInfo": "图书信息", - "amount": "金额", - "paymentMethod": "支付方式", - "googlePay": "Google Pay", - "balance": "余额", - "confirm": "确认下单", - "creating": "创建订单中...", - "processing": "支付处理中...", - "paymentSuccess": "支付成功", - "paymentFailed": "支付失败", - "paymentCancelled": "支付已取消", - "insufficientBalance": "虚拟币余额不足", - "googlePayNotAvailable": "Google Pay 不可用", - "productNotFound": "商品未找到", - "orderCreateFailed": "订单创建失败", - "verificationFailed": "支付验证失败", - "pleaseWait": "请稍候...", - "doNotRepeat": "请勿重复提交", - "notMuch": "虚拟币余额不足", - "orderTitle": "订单确认" - }, - "bookHome": { - "block1": "我的书单", - "block2": "推荐图书", - "more": "更多", - "activityTitle": "活动图书", - "readingCount": "次阅读", - "listenCount": "次听书", - "purchased": "人购买", - "searchPlaceholder": "搜索图书..." - }, - "listen": { - "title": "听书", - "speed": "播放速度", - "chapterList": "章节列表", - "isLast": "已到最后一章", - "isFirst": "已到第一章" - }, - "workOrder": { - "submit_success": "提交成功" - }, - "courseHome": { - "title": "课程", - "watchHistory": "观看记录", - "tryListen": "精彩试听", - "moreTryListen": "更多试听", - "buy": "购买", - "searchPlaceholder": "搜索课程..." - }, - "courseSearch": { - "title": "搜索", - "placeholder": "搜索课程和商品...", - "historyTitle": "历史搜索", - "productTitle": "实物商品", - "courseTitle": "课程信息", - "pleaseInputKeyword": "请输入关键字", - "noData": "暂无数据", - "vipDiscount": "VIP优惠", - "free": "免费", - "levelBeginner": "初级", - "levelAdvanced": "高级", - "required": "必修", - "elective": "选修", - "each": "各" - }, - "courseDetails": { - "detail": "课程介绍", - "chapter": "教学内容", - "catalogue": "目录", - "chapterList": "章节", - "trial": "试听", - "learned": "已学", - "notLearned": "未学", - "locked": "未购买", - "purchase": "立即购买", - "renew": "续费", - "relearn": "复读", - "free": "领取课程", - "vipOnly": "VIP专享", - "openVip": "开通VIP", - "progress": "学习进度", - "relatedBooks": "相关书籍", - "comments": "留言板", - "publishComment": "发布留言", - "reply": "回复", - "like": "点赞", - "chapterIntro": "章节介绍", - "thinkingQuestion": "思考题", - "noQuestion": "暂无思考题", - "videoTeaching": "视频教学", - "autoPlayNext": "秒后自动播放下一个", - "cancelAutoPlay": "取消自动播放", - "vipTip": "购买VIP,即可畅享更多专属权益", - "vipExpireTime": "VIP畅学权益有效期截止到", - "courseExpireTime": "课程有效期截止到", - "notStarted": "当前目录还未开始学习", - "unpurchasedTip": "您未购买此目录课程或已到期,购买后或开通VIP即可学习本目录课程", - "pleaseGetCourse": "请先领取课程", - "pleasePurchase": "请先购买课程", - "getSuccess": "领取成功", - "noChapters": "暂无章节内容", - "totalChapters": "共{count}个目录", - "expand": "展开", - "collapse": "收起", - "selectPlan": "选择购买方案", - "selectRenewPlan": "选择复读方案", - "noPurchaseOption": "此课程暂无购买方式", - "noRenewOption": "暂无复读方案", - "purchaseAgreement": "温馨提示", - "agreementContent": "用户您好,本软件对于一个用户名及密码仅允许一部电子设备登陆,多部设备使用同一用户名操作软件的行为属于违规操作,发现违规一次将提出警告,再次违规您的用户名将被封号,无法正常登陆,如因此对您使用带来不便,敬请谅解。", - "agree": "同意", - "disagree": "不同意", - "commentPlaceholder": "~ 和谐社会 友善发言 ~", - "commentSubmit": "发 布", - "commentCancel": "取 消", - "replyTo": "回复@", - "addEmoji": "表情", - "addImage": "图片", - "maxImages": "最多可上传3张图片", - "publishSuccess": "发布成功", - "publishFailed": "发布失败", - "pleaseInputContent": "请输入内容", - "loadMoreComments": "加载更多", - "allLoaded": "已加载全部", - "noComments": "暂无留言数据", - "viewMoreReplies": "查看更多回复", - "copyright": "本课程版权归天津众妙之门科技有限公司所有,翻版必究!", - "courseInfo": "课程", - "chapterInfo": "章节", - "videoLoadFailed": "视频加载失败", - "vipBenefit": "VIP畅学权益生效中", - "audio": "音频", - "video": "视频" - }, - "courseOrder": { - "orderTitle": "确认订单", - "goodsInfo": "商品信息", - "shippingAddress": "收货地址", - "addAddress": "添加收货地址", - "goodsAmount": "商品金额", - "freight": "运费", - "availablePoints": "可用积分", - "pointsDiscount": "分(可抵扣", - "orderTotal": "订单总价", - "total": "合计", - "submitOrder": "提交订单", - "submitting": "提交中...", - "quantity": "数量", - "vipPrice": "VIP到手价", - "activityPrice": "活动价", - "pleaseSelectAddress": "请选择收货地址", - "orderCreateSuccess": "订单创建成功", - "orderCreateFailed": "订单创建失败" - }, - "order": { - "selectFuduScheme": "选择复读方案", - "selectPurchaseScheme": "选择购买方案", - "confirmTitle": "确认订单", - "goodsInfo": "商品信息", - "priceDetail": "价格明细", - "totalPrice": "商品总价", - "coupon": "优惠券", - "points": "积分", - "vipDiscount": "VIP专享立减", - "promotionDiscounted": "活动立减", - "actualPayment": "实付款", - "paymentMethod": "支付方式", - "balance": "余额", - "recharge": "立即充值", - "remark": "订单备注", - "remarkPlaceholder": "选填:给商家留言", - "remarkTitle": "订单备注", - "submit": "立即支付", - "submitting": "提交中...", - "total": "合计", - "noCoupon": "暂无可用优惠券", - "unavailable": "不可用", - "selectCoupon": "请选择优惠券", - "notUseCoupon": "不使用优惠券", - "reselect": "重新选择", - "selected": "选好了", - "maxPoints": "可用积分(max分)", - "pointsPlaceholder": "请输入积分", - "allPoints": "全部积分", - "insufficientBalance": "天医币余额不足", - "invalidPaymentAmount": "实付金额计算未完成", - "orderCreating": "正在请求订单", - "orderSuccess": "购买成功", - "orderFailed": "失败,请重新下单", - "tooFrequent": "操作太频繁了,休息下吧", - "duplicateOrder": "您短时间内有一笔相同金额的订单,是否确定继续下单?", - "duplicateConfirm": "继续操作", - "duplicateCancel": "点错了", - "customerService": "客服", - "paymentTipTitle": "说明", - "paymentTip1": "1. 1积分=1天医币", - "paymentTip2-1": "2. 若有疑问请加客服微信:", - "paymentTip2-2": "或邮箱联系", - "ensureBalance": "确保您的天医币足够支付", - "vipLabel": "VIP优惠", - "activityLabel": "活动价", - "vipPriceLabel": "VIP到手价", - "quantity": "数量", - "couponUseLevel": "满{level}元可用", - "couponExpiry": "有效期至", - "couponForever": "永久有效", - "couponReason": "不可用原因", - "couponUsage": "使用说明", - "couponType0": "全场通用", - "couponType1": "指定课程可用", - "couponType2": "指定课程品类可用", - "couponCount": "共 {count} 张", + }, + "book": { + "title": "我的书单", + "myBook": "我的书单", + "read": "阅读", + "listen": "听书", + "comment": "书评", + "choose": "去选书", + "nullText": "暂无书籍,快去选购吧~", + "afterPurchase": "购买后即可阅读此章节", + "contents": "目录", + "zjContents": "章节目录", + "set": "设置", + "font": "字体大小", + "bgColor": "背景颜色", + "type": "阅读模式", + "type_1": "上下滚动", + "type_2": "左右翻页", + "voices_null": "暂无音频文件", + "endText": "试读已结束,购买后继续阅读", + "language": "书籍语言", + "readAudio": "音频加载中..." + }, + "bookDetails": { + "title": "书籍详情", + "title_comment": "书评", + "authorName": "作者:", + "introduction": "内容简介", + "message": "书评", + "more": "更多", + "relatedBooks": "相关推荐", + "startReading": "开始阅读", + "startListening": "开始听书", + "tryRead": "试读", + "tryListen": "试听", + "buy": "立即购买", + "buttonText1": "立即购买", + "buttonText2": "已购买", + "list": "选择规格", + "makeComment": "发表评论", + "reply": "回复", + "dpl": "的评论", + "enterText": "请输入评论内容", + "replyText": "回复", + "supportSuccess": "点赞成功", + "supportCancel": "取消点赞", + "deleteText": "确定删除此评论吗?", + "deleteSuccess": "删除成功" + }, + "bookOrder": { + "title": "订单确认", + "bookInfo": "图书信息", + "amount": "金额", + "paymentMethod": "支付方式", + "googlePay": "Google Pay", + "balance": "余额", + "confirm": "确认下单", + "creating": "创建订单中...", + "processing": "支付处理中...", + "paymentSuccess": "支付成功", + "paymentFailed": "支付失败", + "paymentCancelled": "支付已取消", + "insufficientBalance": "虚拟币余额不足", + "googlePayNotAvailable": "Google Pay 不可用", + "productNotFound": "商品未找到", + "orderCreateFailed": "订单创建失败", + "verificationFailed": "支付验证失败", + "pleaseWait": "请稍候...", + "doNotRepeat": "请勿重复提交", + "notMuch": "虚拟币余额不足", + "orderTitle": "订单确认" + }, + "bookHome": { + "block1": "我的书单", + "block2": "推荐图书", + "more": "更多", + "activityTitle": "活动图书", + "readingCount": "次阅读", + "listenCount": "次听书", + "purchased": "人购买", + "searchPlaceholder": "搜索图书..." + }, + "listen": { + "title": "听书", + "speed": "播放速度", + "chapterList": "章节列表", + "isLast": "已到最后一章", + "isFirst": "已到第一章" + }, + "workOrder": { + "submit_success": "提交成功" + }, + "courseHome": { + "title": "课程", + "watchHistory": "观看记录", + "tryListen": "精彩试听", + "moreTryListen": "更多试听", + "buy": "购买", + "searchPlaceholder": "搜索课程..." + }, + "courseSearch": { + "title": "搜索", + "placeholder": "搜索课程和商品...", + "historyTitle": "历史搜索", + "productTitle": "实物商品", + "courseTitle": "课程信息", + "pleaseInputKeyword": "请输入关键字", + "noData": "暂无数据", + "vipDiscount": "VIP优惠", + "free": "免费", + "levelBeginner": "初级", + "levelAdvanced": "高级", + "required": "必修", + "elective": "选修", + "each": "各" + }, + "courseDetails": { + "detail": "课程介绍", + "chapter": "教学内容", + "catalogue": "目录", + "chapterList": "章节", + "trial": "试听", + "learned": "已学", + "notLearned": "未学", + "locked": "未购买", + "purchase": "立即购买", + "renew": "续费", + "relearn": "复读", + "free": "领取课程", + "vipOnly": "VIP专享", + "openVip": "开通VIP", + "progress": "学习进度", + "relatedBooks": "相关书籍", + "comments": "留言板", + "publishComment": "发布留言", + "reply": "回复", + "like": "点赞", + "chapterIntro": "章节介绍", + "thinkingQuestion": "思考题", + "noQuestion": "暂无思考题", + "videoTeaching": "视频教学", + "autoPlayNext": "秒后自动播放下一个", + "cancelAutoPlay": "取消自动播放", + "vipTip": "购买VIP,即可畅享更多专属权益", + "vipExpireTime": "VIP畅学权益有效期截止到", + "courseExpireTime": "课程有效期截止到", + "notStarted": "当前目录还未开始学习", + "unpurchasedTip": "您未购买此目录课程或已到期,购买后或开通VIP即可学习本目录课程", + "pleaseGetCourse": "请先领取课程", + "pleasePurchase": "请先购买课程", + "getSuccess": "领取成功", + "noChapters": "暂无章节内容", + "totalChapters": "共{count}个目录", + "expand": "展开", + "collapse": "收起", + "selectPlan": "选择购买方案", + "selectRenewPlan": "选择复读方案", + "noPurchaseOption": "此课程暂无购买方式", + "noRenewOption": "暂无复读方案", + "purchaseAgreement": "温馨提示", + "agreementContent": "用户您好,本软件对于一个用户名及密码仅允许一部电子设备登陆,多部设备使用同一用户名操作软件的行为属于违规操作,发现违规一次将提出警告,再次违规您的用户名将被封号,无法正常登陆,如因此对您使用带来不便,敬请谅解。", + "agree": "同意", + "disagree": "不同意", + "commentPlaceholder": "~ 和谐社会 友善发言 ~", + "commentSubmit": "发 布", + "commentCancel": "取 消", + "replyTo": "回复@", + "addEmoji": "表情", + "addImage": "图片", + "maxImages": "最多可上传3张图片", + "publishSuccess": "发布成功", + "publishFailed": "发布失败", + "pleaseInputContent": "请输入内容", + "loadMoreComments": "加载更多", + "allLoaded": "已加载全部", + "noComments": "暂无留言数据", + "viewMoreReplies": "查看更多回复", + "copyright": "本课程版权归天津众妙之门科技有限公司所有,翻版必究!", + "courseInfo": "课程", + "chapterInfo": "章节", + "videoLoadFailed": "视频加载失败", + "vipBenefit": "VIP畅学权益生效中", + "audio": "音频", + "video": "视频" + }, + "courseOrder": { + "orderTitle": "确认订单", + "goodsInfo": "商品信息", + "shippingAddress": "收货地址", + "addAddress": "添加收货地址", + "goodsAmount": "商品金额", + "freight": "运费", + "availablePoints": "可用积分", + "pointsDiscount": "分(可抵扣", + "orderTotal": "订单总价", + "total": "合计", + "submitOrder": "提交订单", + "submitting": "提交中...", + "quantity": "数量", + "vipPrice": "VIP到手价", + "activityPrice": "活动价", + "pleaseSelectAddress": "请选择收货地址", + "orderCreateSuccess": "订单创建成功", + "orderCreateFailed": "订单创建失败" + }, + "order": { + "goodsList": "商品列表", + "confirmTitle": "确认订单", + "goodsInfo": "商品信息", + "priceDetail": "价格明细", + "totalPrice": "商品总价", + "coupon": "优惠券", + "points": "积分", + "vipDiscount": "VIP专享立减", + "promotionDiscounted": "活动立减", + "actualPayment": "实付款", + "paymentMethod": "支付方式", + "balance": "余额", + "recharge": "立即充值", + "remark": "订单备注", + "remarkPlaceholder": "选填:给商家留言", + "remarkTitle": "订单备注", + "submit": "立即支付", + "submitting": "提交中...", + "total": "合计", + "noCoupon": "暂无可用优惠券", + "unavailable": "不可用", + "selectCoupon": "请选择优惠券", + "notUseCoupon": "不使用优惠券", + "reselect": "重新选择", + "selected": "选好了", + "maxPoints": "可用积分(max分)", + "pointsPlaceholder": "请输入积分", + "allPoints": "全部积分", + "insufficientBalance": "天医币余额不足", + "invalidPaymentAmount": "实付金额计算未完成", + "orderCreating": "正在请求订单", + "orderSuccess": "购买成功", + "orderFailed": "失败,请重新下单", + "tooFrequent": "操作太频繁了,休息下吧", + "duplicateOrder": "您短时间内有一笔相同金额的订单,是否确定继续下单?", + "duplicateConfirm": "继续操作", + "duplicateCancel": "点错了", + "customerService": "客服", + "paymentTipTitle": "说明", + "paymentTip1": "1. 1积分=1天医币", + "paymentTip2-1": "2. 若有疑问请加客服微信:", + "paymentTip2-2": "或邮箱联系", + "ensureBalance": "确保您的天医币足够支付", + "vipLabel": "VIP优惠", + "activityLabel": "活动价", + "vipPriceLabel": "VIP到手价", + "quantity": "数量", + "couponUseLevel": "满{level}元可用", + "couponExpiry": "有效期至", + "couponForever": "永久有效", + "couponReason": "不可用原因", + "couponUsage": "使用说明", + "couponType0": "全场通用", + "couponType1": "指定课程可用", + "couponType2": "指定课程品类可用", + "couponCount": "共 {count} 张", "rechargeConsumptionList": "充值消费记录", "rechargeAmount": "充值金额", "valueAddedServices": "增值服务", "readAgree": "我已阅读并同意", "readAgreeServices": "请先阅读并同意增值服务", - "orderDetails": "订单详情", + "orderDetails": "订单详情", "pointsRecord": "积分消费记录", "unusable": "无法用计费服务", "give": "赠" - }, - "vip": { - "courseVip": "课程VIP", - "bookVip": "电子书VIP", - "openVip": "立即开通", - "renewal": "续费", - "daily": "日均" - }, - "news": { - "newsDetail": "新闻详情" - } -} + }, + "vip": { + "courseVip": "课程VIP", + "bookVip": "电子书VIP", + "openVip": "立即开通", + "renewal": "续费", + "daily": "日均" + }, + "news": { + "newsDetail": "新闻详情" + } +} \ No newline at end of file diff --git a/package.json b/package.json index 2c41b17..e3f9f59 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "id": "uni-taimed-international-app", - "name": "TaimedInternationalApp", + "id": "uni-wumen-international-app", + "name": "wumen-international-app", "displayName": "太湖国际", "version": "1.0.3", "description": "太湖国际", diff --git a/pages/course/details/components/CatalogueList.vue b/pages/course/details/components/CatalogueList.vue index 24d0648..a9161a5 100644 --- a/pages/course/details/components/CatalogueList.vue +++ b/pages/course/details/components/CatalogueList.vue @@ -55,12 +55,8 @@ {{ $t('courseDetails.purchase') }} - + + {{ $t('courseDetails.relearn') }} @@ -134,28 +130,42 @@ 暂无章节内容 + + + + + + + + \ No newline at end of file diff --git a/pages/course/details/course.vue b/pages/course/details/course.vue index 067cd5d..4ec91c9 100644 --- a/pages/course/details/course.vue +++ b/pages/course/details/course.vue @@ -20,10 +20,8 @@ v-if="catalogueList.length > 0" :catalogues="catalogueList" :userVip="userVip" - @getFreeCourse="handleGetFreeCourse" - @purchase="handlePurchase" @toVip="goToVip" - @renew="handleRenew" + @loadPageData="loadPageData" @toDetail="handleToDetail" /> @@ -89,55 +87,14 @@ /> --> - - - - - - - 温馨提示 - - - 用户您好,本软件对于一个用户名及密码仅允许一部电子设备登陆,多部设备使用同一用户名操作软件的行为属于违规操作,发现违规一次将提出警告,再次违规您的用户名将被封号,无法正常登陆,如因此对您使用带来不便,敬请谅解。 - - - 课程购买之后一年内不打开,此一年内不会计算有效学习时间,一年后会自动开始计算有效学习时间。 - - - 本课程一经购买,暂不支持退款,敬请谅解。 - - 注: - - 1.手机、pad、电脑均为可登陆电子设备,均有唯一标识码,一个用户名仅允许在一个手机或一个ipad或一个电脑登陆,请根据您的使用习惯自行选择。
- 2.如若申请变更登陆设备请联系客服,
- 客服电话:021-08371305
- 客服微信号:yilujiankangkefu
- 3.如因违反上述使用规定...概不退款,本公司保留追究用户相关法律责任的权利。
- 4.点击“同意”按钮即表示您同意遵守以上条款。 -
-
- - 不同意 - 同意 - -
-
- - + /> --> @@ -153,7 +110,6 @@ import { useUserStore } from '@/stores/user' import { courseApi } from '@/api/modules/course' import CourseInfo from './components/CourseInfo.vue' import CatalogueList from './components/CatalogueList.vue' -import GoodsSelector from '@/components/order/GoodsSelector.vue' import CommentList from '@/components/comment/CommentList.vue' import CommentEditor from '@/components/comment/CommentEditor.vue' import type { ICourseDetail, ICatalogue, IChapter, IVipInfo } from '@/types/course' @@ -172,14 +128,6 @@ const vipModuleList = ref([]) const learningProgress = ref(0) const relatedBooks = ref([]) -// 商品选择 -const showGoodsSelector = ref(false) -const goodsList = ref([]) -const selectedGoods = ref(null) -const showProtocol = ref(false) -const isFudu = ref(false) -const fuduCatalogueId = ref(0) - // 评论相关 const commentList = ref([]) const commentsLoading = ref(false) @@ -301,92 +249,6 @@ const goToVip = () => { }) } -/** - * 领取免费课程 - */ -const handleGetFreeCourse = async (catalogue: ICatalogue) => { - if (!catalogue) return - - const res = await courseApi.startStudyForMF(catalogue.id) - if (res.code === 0) { - uni.showToast({ title: '领取成功', icon: 'success' }) - // 刷新页面数据 - loadPageData() - } else { - uni.showToast({ title: res.msg || '领取失败', icon: 'none' }) - } -} - -/** - * 购买课程 - */ -const handlePurchase = async (catalogue: ICatalogue) => { - if (!catalogue) return - - isFudu.value = false - const res = await courseApi.getProductListForCourse(catalogue.id) - if (res.code === 0 && res.productList.length > 0) { - goodsList.value = res.productList - showGoodsSelector.value = true - } else { - uni.showToast({ title: '此课程暂无购买方式', icon: 'none' }) - } -} - -/** - * 续费/复读 - */ -const handleRenew = async () => { - // if (!currentCatalogue.value) return - - // isFudu.value = true - // fuduCatalogueId.value = currentCatalogue.value.id - // const res = await courseApi.getRenewProductList(currentCatalogue.value.id) - // if (res.code === 0 && res.productList.length > 0) { - // goodsList.value = res.productList - // showGoodsSelector.value = true - // } else { - // uni.showToast({ title: '暂无复读方案', icon: 'none' }) - // } -} - -/** - * 选择商品 - */ -const handleGoodsSelect = (goods: IGoods) => { - selectedGoods.value = goods -} - -/** - * 确认购买 - */ -const handleGoodsConfirm = () => { - showGoodsSelector.value = false - showProtocol.value = true -} - -/** - * 关闭商品选择器 - */ -const closeGoodsSelector = () => { - showGoodsSelector.value = false -} - -/** - * 确认购买协议 - */ -const confirmPurchase = () => { - showProtocol.value = false - if (!selectedGoods.value) return - - showProtocol.value = false - - // 跳转到确认订单页 - uni.navigateTo({ - url: `/pages/order/goodsConfirm?goods=${selectedGoods.value.productId}` - }) -} - /** * 跳转到书籍详情 */ @@ -740,40 +602,6 @@ onReachBottom(() => { } } -.protocol-popup { - width: 600rpx; - padding: 40rpx; - background-color: #fff; - border-radius: 12rpx; - - .protocol-title { - font-size: 32rpx; - font-weight: 500; - color: #333; - text-align: center; - margin-bottom: 30rpx; - } - - .protocol-content { - max-height: 60vh; - overflow-y: auto; - font-size: 26rpx; - line-height: 1.8; - color: #666; - margin-bottom: 30rpx; - - text { - display: block; - margin-bottom: 20rpx; - } - } - - .protocol-actions { - display: flex; - gap: 20rpx; - } -} - :deep(.back-top) { background-color: #fff !important; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1); diff --git a/pages/order/goodsConfirm.vue b/pages/order/goodsConfirm.vue index 8d5d702..325e14d 100644 --- a/pages/order/goodsConfirm.vue +++ b/pages/order/goodsConfirm.vue @@ -91,22 +91,29 @@ const orderType = computed(() => { * 页面加载 */ onLoad(async (options: any) => { - if (options.goods) { - try { + try { + if (options.isRelearn == 1) { + uni.$on('selectedGoods', async (data: IOrderGoods) => { + // 获取用户信息 + await getUserInfo() + + // 处理商品数据 + console.log('监听到传入的商品数据:', data) + goodsList.value = [ data ] + }) + } else if (options.goods) { // 获取用户信息 await getUserInfo() - // 根据商品ID获取商品详细信息 goodsIds.value = options.goods || '' - isRelearn.value = options.isRelearn == '1' getGoodsList() - } catch (error) { - console.error('解析商品数据失败:', error) - uni.showToast({ - title: '商品数据错误', - icon: 'none' - }) } + } catch (error) { + console.error('解析商品数据失败:', error) + uni.showToast({ + title: '商品数据错误', + icon: 'none' + }) } }) diff --git a/pages/order/vipConfirm.vue b/pages/order/vipConfirm.vue index b4d1081..1a2ab47 100644 --- a/pages/order/vipConfirm.vue +++ b/pages/order/vipConfirm.vue @@ -56,10 +56,10 @@ const orderType = ref('') /** * 页面加载 */ -onLoad(async () => { +onLoad(() => { try { // 获取商品列表 - await uni.$on('selectedGoods', async (data: IOrderGoods) => { + uni.$on('selectedGoods', async (data: IOrderGoods) => { // 获取用户信息 await getUserInfo() diff --git a/pages/user/index.vue b/pages/user/index.vue index 3afa085..da89343 100644 --- a/pages/user/index.vue +++ b/pages/user/index.vue @@ -297,7 +297,7 @@ $theme-color: #54a966; .user-page { - min-height: 100vh; + min-height: calc(100vh - 50px); background-color: #f7faf9; } diff --git a/pages/user/migrate/index.vue b/pages/user/migrate/index.vue index 387c28d..b3b1503 100644 --- a/pages/user/migrate/index.vue +++ b/pages/user/migrate/index.vue @@ -3,10 +3,20 @@ - {{ $t('user.migrateWarning') }} + + {{ $t('user.alreadyMigrated') }}{{ migrateInfo.alreadyMigration }} + {{ $t('user.notMigration') }}{{ migrateInfo.notMigration }} + + + + + + + + {{ $t('user.migrateWarning') }} - +