20260227-1

This commit is contained in:
cyh666666
2026-02-27 16:51:56 +08:00
1526 changed files with 2457 additions and 38509 deletions

View File

@@ -1 +0,0 @@
{"version":3,"sources":["pages/user/bind-email.uvue","pages/user/change-password.uvue","pages/user/terms.uvue","uni_modules/ak-req/ak-req.uts"],"sourcesContent":["<template>\r\n <view class=\"page-container\">\r\n <view class=\"form-group\">\r\n <view class=\"input-item\">\r\n <text class=\"label\">邮箱</text>\r\n <input class=\"input\" type=\"text\" placeholder=\"请输入邮箱地址\" v-model=\"email\" />\r\n </view>\r\n <view class=\"input-item\">\r\n <text class=\"label\">验证码</text>\r\n <input class=\"input\" type=\"number\" placeholder=\"请输入验证码\" v-model=\"code\" maxlength=\"6\" />\r\n <text class=\"code-btn\" @click=\"sendCode\">{{ counting ? `${count}s` : '获取验证码' }}</text>\r\n </view>\r\n </view>\r\n \r\n <button class=\"submit-btn\" @click=\"handleSubmit\">确认绑定</button>\r\n </view>\r\n</template>\r\n\r\n<script setup lang=\"uts\">\r\nimport { ref } from 'vue'\r\n\r\nconst email = ref<string>('')\r\nconst code = ref<string>('')\r\nconst counting = ref<boolean>(false)\r\nconst count = ref<number>(60)\r\nlet timer: number = 0\r\n\r\nconst sendCode = async (): Promise<void> => {\r\n if (counting.value) return\r\n if (email.value == '' || email.value.includes('@') == false) {\r\n uni.showToast({\r\n title: '请输入正确的邮箱',\r\n icon: 'none'\r\n })\r\n return\r\n }\r\n \r\n uni.showLoading({ title: '发送中...' })\r\n \r\n uni.hideLoading()\r\n \r\n counting.value = true\r\n count.value = 60\r\n \r\n timer = setInterval(() => {\r\n count.value--\r\n if (count.value <= 0) {\r\n clearInterval(timer)\r\n counting.value = false\r\n }\r\n }, 1000)\r\n \r\n uni.showToast({\r\n title: '验证码已发送',\r\n icon: 'none'\r\n })\r\n}\r\n\r\nconst handleSubmit = async (): Promise<void> => {\r\n if (email.value == '' || code.value == '') {\r\n uni.showToast({\r\n title: '请填写完整信息',\r\n icon: 'none'\r\n })\r\n return\r\n }\r\n \r\n uni.showLoading({ title: '绑定中...' })\r\n \r\n uni.hideLoading()\r\n \r\n uni.showToast({\r\n title: '绑定成功',\r\n icon: 'success'\r\n })\r\n \r\n setTimeout(() => {\r\n uni.navigateBack()\r\n }, 1500)\r\n}\r\n</script>\r\n\r\n<style scoped>\r\n.page-container {\r\n padding: 20px;\r\n background-color: #f5f5f5;\r\n flex: 1;\r\n}\r\n\r\n.form-group {\r\n background-color: #fff;\r\n border-radius: 8px;\r\n margin-bottom: 20px;\r\n}\r\n\r\n.input-item {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n padding: 15px;\r\n border-bottom: 1px solid #eee;\r\n}\r\n\r\n.input-item:last-child {\r\n border-bottom: none;\r\n}\r\n\r\n.label {\r\n width: 70px;\r\n font-size: 14px;\r\n color: #333;\r\n}\r\n\r\n.input {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #333;\r\n}\r\n\r\n.code-btn {\r\n font-size: 12px;\r\n color: #ff4444;\r\n padding: 5px 10px;\r\n border: 1px solid #ff4444;\r\n border-radius: 4px;\r\n}\r\n\r\n.submit-btn {\r\n background-color: #ff4444;\r\n color: white;\r\n font-size: 16px;\r\n padding: 12px;\r\n border-radius: 8px;\r\n text-align: center;\r\n}\r\n</style>\r\n",null,null,null],"names":[],"mappings":";;;;;;;;;;;;;;+BA4CE,eAAA;;+BAFA,eAAA;;;;;;;;;;YArBF,IAAM,QAAQ,IAAI,MAAM,EAAE;YAC1B,IAAM,OAAO,IAAI,MAAM,EAAE;YACzB,IAAM,WAAW,IAAI,OAAO,EAAE,KAAK;YACnC,IAAM,QAAQ,IAAI,MAAM,EAAE,EAAE;YAC5B,IAAI,OAAO,MAAM,GAAG,CAAC;YAErB,IAAM,WAAW,OAAU,WAAQ,IAAI,EAAI;gBAAA,OAAA,eAAA;wBACzC,IAAI,SAAS,KAAK;4BAAE;;wBACpB,IAAI,MAAM,KAAK,CAAA,EAAA,CAAI,GAAE,EAAA,CAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAI,EAAA,CAAI,KAAK,EAAE;2DAEzD,QAAO,YACP,OAAM;4BAER;;wBAQF,mCALkB,QAAO;wBAOzB;wBAHA,SAAS,KAAK,GAAG,IAAI;wBACrB,MAAM,KAAK,GAAG,EAAE;wBAEhB,QAAQ,YAAY,KAAK;4BACvB,MAAM,KAAK;4BACX,IAAI,MAAM,KAAK,CAAA,EAAA,CAAI,CAAC,EAAE;gCACpB,cAAc;gCACd,SAAS,KAAK,GAAG,KAAK;;wBAE1B;0BAAG,IAAI;uDAGL,QAAO,UACP,OAAM;iBAET;YAAD;YAEA,IAAM,eAAe,OAAU,WAAQ,IAAI,EAAI;gBAAA,OAAA,eAAA;wBAC7C,IAAI,MAAM,KAAK,CAAA,EAAA,CAAI,GAAE,EAAA,CAAI,KAAK,KAAK,CAAA,EAAA,CAAI,IAAI;2DAEvC,QAAO,WACP,OAAM;4BAER;;wBAtBF,mCAyBkB,QAAO;wBAvBzB;uDA4BE,QAAO,QACP,OAAM;wBAGR,WAAW,KAAK;;wBAEhB;0BAAG,IAAI;iBACR;YAAD;;uBA9EE,IAcO,QAAA,IAdD,WAAM,mBAAgB;oBAC1B,IAUO,QAAA,IAVD,WAAM,eAAY;wBACtB,IAGO,QAAA,IAHD,WAAM,eAAY;4BACtB,IAA6B,QAAA,IAAvB,WAAM,UAAQ;4BACpB,IAAyE,SAAA,IAAlE,WAAM,SAAQ,UAAK,QAAO,iBAAY,2BAAmB,MAAA,KAAK;gCAAL,MAAK,KAAA,GAAA,SAAA,MAAA,CAAA,KAAA;4BAAA;;;;;;wBAEvE,IAIO,QAAA,IAJD,WAAM,eAAY;4BACtB,IAA8B,QAAA,IAAxB,WAAM,UAAQ;4BACpB,IAAuF,SAAA,IAAhF,WAAM,SAAQ,UAAK,UAAS,iBAAY,0BAAkB,KAAA,KAAI;gCAAJ,KAAI,KAAA,GAAA,SAAA,MAAA,CAAA,KAAA;4BAAA;8BAAE,eAAU;;;;4BACjF,IAAsF,QAAA,IAAhF,WAAM,YAAY,aAAO,eAAa,IAAA,SAAA,KAAQ,EAAA;gCAAA,KAAM,MAAA,KAAK,GAAA;4BAAA,EAAA,IAAA,CAAA;gCAAA;4BAAA;4BAAA,GAAA,CAAA;;;oBAInE,IAA8D,UAAA,IAAtD,WAAM,cAAc,aAAO,eAAc"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
{"version":3,"sources":["pages/user/change-password.uvue","pages/user/terms.uvue","uni_modules/ak-req/ak-req.uts"],"sourcesContent":["<template>\r\n <view class=\"page-container\">\r\n <view class=\"form-group\">\r\n <view class=\"input-item\">\r\n <text class=\"label\">旧密码</text>\r\n <input class=\"input\" type=\"password\" placeholder=\"请输入旧密码\" v-model=\"oldPassword\" />\r\n </view>\r\n <view class=\"input-item\">\r\n <text class=\"label\">新密码</text>\r\n <input class=\"input\" type=\"password\" placeholder=\"请输入新密码\" v-model=\"newPassword\" />\r\n </view>\r\n <view class=\"input-item\">\r\n <text class=\"label\">确认密码</text>\r\n <input class=\"input\" type=\"password\" placeholder=\"请再次输入新密码\" v-model=\"confirmPassword\" />\r\n </view>\r\n </view>\r\n \r\n <button class=\"submit-btn\" @click=\"handleSubmit\">确认修改</button>\r\n </view>\r\n</template>\r\n\r\n<script setup lang=\"uts\">\r\nimport { ref } from 'vue'\r\n\r\nconst oldPassword = ref<string>('')\r\nconst newPassword = ref<string>('')\r\nconst confirmPassword = ref<string>('')\r\n\r\nconst handleSubmit = async (): Promise<void> => {\r\n if (oldPassword.value == '' || newPassword.value == '' || confirmPassword.value == '') {\r\n uni.showToast({\r\n title: '请填写完整信息',\r\n icon: 'none'\r\n })\r\n return\r\n }\r\n \r\n if (newPassword.value != confirmPassword.value) {\r\n uni.showToast({\r\n title: '两次输入的密码不一致',\r\n icon: 'none'\r\n })\r\n return\r\n }\r\n \r\n uni.showLoading({ title: '提交中...' })\r\n \r\n uni.hideLoading()\r\n \r\n uni.showToast({\r\n title: '修改成功',\r\n icon: 'success'\r\n })\r\n \r\n setTimeout(() => {\r\n uni.navigateBack()\r\n }, 1500)\r\n}\r\n</script>\r\n\r\n<style>\r\n.page-container {\r\n padding: 20px;\r\n background-color: #f5f5f5;\r\n flex: 1;\r\n}\r\n\r\n.form-group {\r\n background-color: #fff;\r\n border-radius: 8px;\r\n padding: 0 15px;\r\n margin-bottom: 30px;\r\n}\r\n\r\n.input-item {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n height: 50px;\r\n border-bottom: 1px solid #eee;\r\n}\r\n\r\n.input-item:last-child {\r\n border-bottom: none;\r\n}\r\n\r\n.label {\r\n width: 80px;\r\n font-size: 14px;\r\n color: #333;\r\n}\r\n\r\n.input {\r\n flex: 1;\r\n font-size: 14px;\r\n}\r\n\r\n.submit-btn {\r\n background-color: #007aff;\r\n color: #fff;\r\n border-radius: 25px;\r\n font-size: 16px;\r\n padding: 12px;\r\n text-align: center;\r\n}\r\n</style>\r\n",null,null],"names":[],"mappings":";;;;;;;;;;;;;;+BA+CM,eAAA;;+BAFA,eAAA;;;;;;;;;;YArBN,IAAM,cAAc,IAAI,MAAM,EAAE;YAChC,IAAM,cAAc,IAAI,MAAM,EAAE;YAChC,IAAM,kBAAkB,IAAI,MAAM,EAAE;YAEpC,IAAM,eAAe,OAAU,WAAQ,IAAI,EAAI;gBAAA,OAAA,eAAA;wBAC7C,IAAI,YAAY,KAAK,CAAA,EAAA,CAAI,GAAE,EAAA,CAAI,YAAY,KAAK,CAAA,EAAA,CAAI,GAAE,EAAA,CAAI,gBAAgB,KAAK,CAAA,EAAA,CAAI,IAAI;2DAEnF,QAAO,WACP,OAAM;4BAER;;wBAGF,IAAI,YAAY,KAAK,CAAA,EAAA,CAAI,gBAAgB,KAAK,EAAE;2DAE5C,QAAO,cACP,OAAM;4BAER;;wBAGE,mCAAc,QAAO;wBAErB;uDAGF,QAAO,QACP,OAAM;wBAGR,WAAW,KAAK;;wBAEhB;0BAAG,IAAI;iBACR;YAAD;;uBAxDE,IAiBO,QAAA,IAjBD,WAAM,mBAAgB;oBAC1B,IAaO,QAAA,IAbD,WAAM,eAAY;wBACtB,IAGO,QAAA,IAHD,WAAM,eAAY;4BACtB,IAA8B,QAAA,IAAxB,WAAM,UAAQ;4BACpB,IAAkF,SAAA,IAA3E,WAAM,SAAQ,UAAK,YAAW,iBAAY,0BAAkB,YAAA,KAAW;gCAAX,YAAW,KAAA,GAAA,SAAA,MAAA,CAAA,KAAA;4BAAA;;;;;;wBAEhF,IAGO,QAAA,IAHD,WAAM,eAAY;4BACtB,IAA8B,QAAA,IAAxB,WAAM,UAAQ;4BACpB,IAAkF,SAAA,IAA3E,WAAM,SAAQ,UAAK,YAAW,iBAAY,0BAAkB,YAAA,KAAW;gCAAX,YAAW,KAAA,GAAA,SAAA,MAAA,CAAA,KAAA;4BAAA;;;;;;wBAEhF,IAGO,QAAA,IAHD,WAAM,eAAY;4BACtB,IAA+B,QAAA,IAAzB,WAAM,UAAQ;4BACpB,IAAwF,SAAA,IAAjF,WAAM,SAAQ,UAAK,YAAW,iBAAY,4BAAoB,gBAAA,KAAe;gCAAf,gBAAe,KAAA,GAAA,SAAA,MAAA,CAAA,KAAA;4BAAA;;;;;;;oBAIxF,IAA8D,UAAA,IAAtD,WAAM,cAAc,aAAO,eAAc"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
{"version":3,"sources":["pages/user/terms.uvue"],"sourcesContent":["<template>\r\n\t<view class=\"page\">\r\n\t\t<view class=\"topbar\">\r\n\t\t\t<text class=\"back\" @click=\"goBack\">返回</text>\r\n\t\t\t<text class=\"title\">用户协议与隐私政策</text>\r\n\t\t\t<text class=\"ghost\"> </text>\r\n\t\t</view>\r\n\r\n\t\t<scroll-view class=\"content\" scroll-y=\"true\" show-scrollbar=\"false\">\r\n\t\t\t<view class=\"card\">\r\n\t\t\t\t<text class=\"h1\">用户协议</text>\r\n\t\t\t\t<text class=\"p\">1. 本应用为商城系统示例/项目使用。\r\n\t\t\t\t</text>\r\n\t\t\t\t<text class=\"p\">2. 你在使用本应用服务时,应遵守法律法规与平台规则。\r\n\t\t\t\t</text>\r\n\t\t\t\t<text class=\"p\">3. 账号与密码由你自行保管,因泄露造成的损失由你自行承担。\r\n\t\t\t\t</text>\r\n\r\n\t\t\t\t<view class=\"divider\"></view>\r\n\r\n\t\t\t\t<text class=\"h1\">隐私政策</text>\r\n\t\t\t\t<text class=\"p\">1. 我们可能会收集你提供的邮箱等信息,用于账号注册与登录。\r\n\t\t\t\t</text>\r\n\t\t\t\t<text class=\"p\">2. 我们会采取合理的安全措施保护你的信息安全。\r\n\t\t\t\t</text>\r\n\t\t\t\t<text class=\"p\">3. 你可以在账号相关页面申请修改或删除个人信息(以实际功能为准)。\r\n\t\t\t\t</text>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"footer\">\r\n\t\t\t\t<button class=\"primary\" @click=\"goBack\">我已阅读并同意</button>\r\n\t\t\t</view>\r\n\t\t</scroll-view>\r\n\t</view>\r\n</template>\r\n\r\n<script lang=\"uts\">\r\n\texport default {\r\n\t\tmethods: {\r\n\t\t\tgoBack() {\r\n\t\t\t\tuni.navigateBack();\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style>\r\n\t.page {\r\n\t\tflex: 1;\r\n\t\tbackground: #f7f8fa;\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t}\r\n\r\n\t.topbar {\r\n\t\theight: 96rpx;\r\n\t\tpadding: 0 24rpx;\r\n\t\tbackground: rgba(255, 255, 255, 0.96);\r\n\t\tborder-bottom: 1rpx solid rgba(0, 0, 0, 0.06);\r\n\t\tdisplay: flex;\r\n\t\talign-items: center;\r\n\t\tjustify-content: space-between;\r\n\t}\r\n\r\n\t.back {\r\n\t\tfont-size: 26rpx;\r\n\t\tcolor: #ff4d4f;\r\n\t\twidth: 120rpx;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 30rpx;\r\n\t\tfont-weight: 700;\r\n\t\tcolor: #111;\r\n\t}\r\n\r\n\t.ghost {\r\n\t\twidth: 120rpx;\r\n\t}\r\n\r\n\t.content {\r\n\t\tflex: 1;\r\n\t\tpadding: 18rpx 24rpx 24rpx;\r\n\t\tbox-sizing: border-box;\r\n\t}\r\n\r\n\t.card {\r\n\t\tbackground: rgba(255, 255, 255, 0.96);\r\n\t\tborder: 1rpx solid rgba(0, 0, 0, 0.06);\r\n\t\tborder-radius: 20rpx;\r\n\t\tpadding: 24rpx 22rpx;\r\n\t\tbox-shadow: 0 16rpx 36rpx rgba(0, 0, 0, 0.06);\r\n\t}\r\n\r\n\t.h1 {\r\n\t\tfont-size: 32rpx;\r\n\t\tfont-weight: 700;\r\n\t\tcolor: #111;\r\n\t\tmargin-bottom: 12rpx;\r\n\t}\r\n\r\n\t.p {\r\n\t\tfont-size: 26rpx;\r\n\t\tcolor: rgba(0, 0, 0, 0.65);\r\n\t\tline-height: 44rpx;\r\n\t\tmargin-bottom: 12rpx;\r\n\t}\r\n\r\n\t.divider {\r\n\t\theight: 1rpx;\r\n\t\tbackground: rgba(0, 0, 0, 0.08);\r\n\t\tmargin: 18rpx 0;\r\n\t}\r\n\r\n\t.footer {\r\n\t\tmargin-top: 18rpx;\r\n\t}\r\n\r\n\t.primary {\r\n\t\twidth: 100%;\r\n\t\theight: 92rpx;\r\n\t\tborder-radius: 18rpx;\r\n\t\tbackground: linear-gradient(135deg, #ff4d4f 0%, #ff7a45 100%);\r\n\t\tcolor: #fff;\r\n\t\tfont-size: 30rpx;\r\n\t\tfont-weight: 700;\r\n\t\tbox-shadow: 0 16rpx 32rpx rgba(255, 77, 79, 0.24);\r\n\t}\r\n</style>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;+BAwCQ,gBAAA;AAHF;;;;;;eApCL,IAgCO,QAAA,IAhCD,WAAM,SAAM;YACjB,IAIO,QAAA,IAJD,WAAM,WAAQ;gBACnB,IAA4C,QAAA,IAAtC,WAAM,QAAQ,aAAO,KAAA,MAAM,GAAE,MAAE,CAAA,EAAA;oBAAA;iBAAA;gBACrC,IAAoC,QAAA,IAA9B,WAAM,UAAQ;gBACpB,IAA4B,QAAA,IAAtB,WAAM;;YAGb,IAwBc,eAAA,IAxBD,WAAM,WAAU,cAAS,QAAO,oBAAe;gBAC3D,IAkBO,QAAA,IAlBD,WAAM,SAAM;oBACjB,IAA4B,QAAA,IAAtB,WAAM,OAAK;oBACjB,IACO,QAAA,IADD,WAAM,MAAI;oBAEhB,IACO,QAAA,IADD,WAAM,MAAI;oBAEhB,IACO,QAAA,IADD,WAAM,MAAI;oBAGhB,IAA6B,QAAA,IAAvB,WAAM;oBAEZ,IAA4B,QAAA,IAAtB,WAAM,OAAK;oBACjB,IACO,QAAA,IADD,WAAM,MAAI;oBAEhB,IACO,QAAA,IADD,WAAM,MAAI;oBAEhB,IACO,QAAA,IADD,WAAM,MAAI;;gBAIjB,IAEO,QAAA,IAFD,WAAM,WAAQ;oBACnB,IAAwD,UAAA,IAAhD,WAAM,WAAW,aAAO,KAAA,MAAM,GAAE,WAAO,CAAA,EAAA;wBAAA;qBAAA;;;;;aAShD;aAAA,gBAAM;QACD;IACL;;;;;;;;;;;;;;;;;;;;AAED"}