You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
10 KiB
1 line
10 KiB
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-login-index"],{"109e":function(t,a,e){"use strict";var i=e("3a0a"),n=e.n(i);n.a},"1a61":function(t,a,e){"use strict";e.d(a,"b",(function(){return i})),e.d(a,"c",(function(){return n})),e.d(a,"a",(function(){}));var i=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("v-uni-view",{staticClass:"login-container"},[e("v-uni-image",{staticClass:"background-image",attrs:{src:"/static/cancel_bg.png",mode:"aspectFill"}}),e("v-uni-view",{staticClass:"login-header"},[e("v-uni-view",{staticClass:"header-content"},[e("v-uni-image",{staticClass:"header-logo",attrs:{src:"/static/logo-index.png",mode:"aspectFit"}}),e("v-uni-view",{staticClass:"header-text"},[e("v-uni-text",{staticClass:"welcome-title"},[t._v("Hello!")]),e("v-uni-text",{staticClass:"welcome-subtitle"},[t._v("欢迎登录访客管理系统")])],1)],1)],1),e("v-uni-view",{staticClass:"login-form"},[e("v-uni-view",{staticClass:"form-item"},[e("v-uni-view",{staticClass:"input-wrapper"},[e("v-uni-image",{staticClass:"input-icon",attrs:{src:"/static/username.png",mode:"aspectFit"}}),e("v-uni-view",{staticClass:"input-divider"}),e("v-uni-input",{staticClass:"form-input",attrs:{placeholder:"请输入用户名",disabled:t.loading},on:{input:function(a){arguments[0]=a=t.$handleEvent(a),t.clearError.apply(void 0,arguments)}},model:{value:t.form.username,callback:function(a){t.$set(t.form,"username",a)},expression:"form.username"}})],1)],1),e("v-uni-view",{staticClass:"form-item"},[e("v-uni-view",{staticClass:"input-wrapper"},[e("v-uni-image",{staticClass:"input-icon",attrs:{src:"/static/pwd.png",mode:"aspectFit"}}),e("v-uni-view",{staticClass:"input-divider"}),e("v-uni-input",{staticClass:"form-input",attrs:{placeholder:"请输入密码",password:!0,disabled:t.loading},on:{input:function(a){arguments[0]=a=t.$handleEvent(a),t.clearError.apply(void 0,arguments)},confirm:function(a){arguments[0]=a=t.$handleEvent(a),t.handleLogin.apply(void 0,arguments)}},model:{value:t.form.password,callback:function(a){t.$set(t.form,"password",a)},expression:"form.password"}})],1)],1),t.errorMsg?e("v-uni-view",{staticClass:"error-message"},[e("v-uni-text",[t._v(t._s(t.errorMsg))])],1):t._e()],1),e("v-uni-view",{staticClass:"login-actions"},[e("v-uni-button",{staticClass:"login-btn",class:{loading:t.loading},attrs:{disabled:t.loading},on:{click:function(a){arguments[0]=a=t.$handleEvent(a),t.handleLogin.apply(void 0,arguments)}}},[t._v(" "+t._s(t.loading?"登录中...":"立即登录")+" ")])],1),e("v-uni-view",{staticClass:"footer"},[e("v-uni-text",{staticClass:"copyright"},[t._v("© 2025 访客管理系统")])],1)],1)},n=[]},"2dd9":function(t,a,e){"use strict";e.r(a);var i=e("1a61"),n=e("31b8");for(var r in n)["default"].indexOf(r)<0&&function(t){e.d(a,t,(function(){return n[t]}))}(r);e("109e");var o=e("828b"),s=Object(o["a"])(n["default"],i["b"],i["c"],!1,null,"3b3c90ba",null,!1,i["a"],void 0);a["default"]=s.exports},"31b8":function(t,a,e){"use strict";e.r(a);var i=e("9449"),n=e.n(i);for(var r in i)["default"].indexOf(r)<0&&function(t){e.d(a,t,(function(){return i[t]}))}(r);a["default"]=n.a},"3a0a":function(t,a,e){var i=e("79af");i.__esModule&&(i=i.default),"string"===typeof i&&(i=[[t.i,i,""]]),i.locals&&(t.exports=i.locals);var n=e("967d").default;n("a5998880",i,!0,{sourceMap:!1,shadowMode:!1})},"79af":function(t,a,e){var i=e("c86c");a=i(!1),a.push([t.i,'@charset "UTF-8";\n/* 颜色变量 */\n/* 行为相关颜色 */\n/* 文字基本颜色 */\n/* 背景颜色 */\n/* 边框颜色 */\n/* 尺寸变量 */\n/* 文字尺寸 */\n/* 图片尺寸 */\n/* Border Radius */\n/* 水平间距 */\n/* 垂直间距 */\n/* 透明度 */\n/* 文章场景相关 */\n/* uni.scss */.login-container[data-v-3b3c90ba]{min-height:100vh;position:relative;width:100%;padding:%?40?%;box-sizing:border-box}.background-image[data-v-3b3c90ba]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;object-fit:cover}.login-header[data-v-3b3c90ba]{position:absolute;top:10%;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:1}.login-header .header-content[data-v-3b3c90ba]{display:flex;align-items:center}.login-header .header-content .header-logo[data-v-3b3c90ba]{width:%?80?%;height:%?80?%;margin-right:%?24?%}@media (max-width:750px){.login-header .header-content .header-logo[data-v-3b3c90ba]{width:%?64?%;height:%?64?%;margin-right:%?20?%}}.login-header .header-content .header-text[data-v-3b3c90ba]{display:flex;flex-direction:column}.login-header .header-content .header-text .welcome-title[data-v-3b3c90ba]{font-size:%?64?%;font-weight:700;color:#333;margin-bottom:%?8?%;line-height:1}@media (max-width:750px){.login-header .header-content .header-text .welcome-title[data-v-3b3c90ba]{font-size:%?48?%;color:#fff}}.login-header .header-content .header-text .welcome-subtitle[data-v-3b3c90ba]{font-size:%?32?%;color:#333;line-height:1}@media (max-width:750px){.login-header .header-content .header-text .welcome-subtitle[data-v-3b3c90ba]{font-size:%?28?%;color:#fff}}.login-form[data-v-3b3c90ba]{width:100%;max-width:%?600?%;position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:1}.login-form .form-item[data-v-3b3c90ba]{margin-bottom:%?40?%}.login-form .form-item[data-v-3b3c90ba]:last-child{margin-bottom:0}.input-wrapper[data-v-3b3c90ba]{display:flex;align-items:center;background:#f0f0f0;border-radius:%?44?%;padding:0 %?24?%;border:none;transition:all .3s ease}.input-wrapper[data-v-3b3c90ba]:focus-within{background:#fff;box-shadow:0 %?4?% %?12?% rgba(0,0,0,.1)}.input-wrapper .input-icon[data-v-3b3c90ba]{width:%?36?%;height:%?36?%;margin-right:%?20?%;opacity:.7}@media (max-width:750px){.input-wrapper .input-icon[data-v-3b3c90ba]{width:%?32?%;height:%?32?%;margin-right:%?16?%}}.input-wrapper .input-divider[data-v-3b3c90ba]{width:%?2?%;height:%?60?%;background-color:#d0d0d0;margin-right:%?20?%}@media (max-width:750px){.input-wrapper .input-divider[data-v-3b3c90ba]{height:%?50?%;margin-right:%?16?%}}@media (max-width:750px){.input-wrapper[data-v-3b3c90ba]{border-radius:%?40?%}}.input-wrapper .form-input[data-v-3b3c90ba]{flex:1;height:%?88?%;font-size:%?32?%;color:#333;background:transparent;border:none}@media (max-width:750px){.input-wrapper .form-input[data-v-3b3c90ba]{height:%?80?%;font-size:%?28?%}}@media (min-width:768px){.input-wrapper .form-input[data-v-3b3c90ba]{height:%?100?%;font-size:%?36?%}}.error-message[data-v-3b3c90ba]{background:#fef0f0;border:%?1?% solid #fcdcdc;border-radius:%?8?%;padding:%?20?% %?24?%;margin-bottom:%?30?%}.error-message uni-text[data-v-3b3c90ba]{color:#f56c6c;font-size:%?26?%}@media (max-width:750px){.error-message uni-text[data-v-3b3c90ba]{font-size:%?24?%}}.login-actions[data-v-3b3c90ba]{position:absolute;top:75%;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:1;width:100%;max-width:%?600?%}.login-actions .login-btn[data-v-3b3c90ba]{width:100%;height:%?88?%;background:#18284b;color:#fff;border:none;border-radius:%?44?%;font-size:%?32?%;font-weight:600;transition:all .3s ease}@media (max-width:750px){.login-actions .login-btn[data-v-3b3c90ba]{height:%?80?%;font-size:%?28?%;border-radius:%?40?%}}@media (min-width:768px){.login-actions .login-btn[data-v-3b3c90ba]{height:%?100?%;font-size:%?36?%}}.login-actions .login-btn[data-v-3b3c90ba]:not(:disabled):active{-webkit-transform:translateY(%?2?%);transform:translateY(%?2?%);box-shadow:0 %?4?% %?12?% rgba(0,69,147,.3)}.login-actions .login-btn[data-v-3b3c90ba]:disabled{opacity:.6;cursor:not-allowed}.login-actions .login-btn.loading[data-v-3b3c90ba]{background:#c0c4cc}.footer[data-v-3b3c90ba]{text-align:center;position:absolute;bottom:8%;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:1;width:100%}.footer .copyright[data-v-3b3c90ba]{font-size:%?24?%;color:#666}@media (max-width:750px){.footer .copyright[data-v-3b3c90ba]{font-size:%?22?%}}\n/* 响应式优化 */@media (max-width:750px){.login-container[data-v-3b3c90ba]{padding:%?20?%}.login-card[data-v-3b3c90ba]{padding:%?40?% %?30?%}.login-header[data-v-3b3c90ba]{margin-bottom:%?40?%}.login-actions[data-v-3b3c90ba]{margin-top:%?40?%}}',""]),t.exports=a},9449:function(t,a,e){"use strict";e("6a54");var i=e("f5bd").default;Object.defineProperty(a,"__esModule",{value:!0}),a.default=void 0;var n=i(e("2634")),r=i(e("2fdc"));e("0c26");var o={data:function(){return{form:{username:"",password:""},loading:!1,errorMsg:""}},onLoad:function(){this.checkLoginStatus()},methods:{checkLoginStatus:function(){try{var t=uni.getStorageSync("mkwcancel_lifeData");t&&t.vuex_token&&uni.reLaunch({url:"/pages/index/index"})}catch(a){console.error("检查登录状态失败:",a)}},clearError:function(){this.errorMsg=""},validateForm:function(){return this.form.username.trim()?this.form.password.trim()?this.form.username.length<2?(this.errorMsg="用户名至少2个字符",!1):!(this.form.password.length<4)||(this.errorMsg="密码至少4个字符",!1):(this.errorMsg="请输入密码",!1):(this.errorMsg="请输入用户名",!1)},handleLogin:function(){var t=this;return(0,r.default)((0,n.default)().mark((function a(){var e,i,r;return(0,n.default)().wrap((function(a){while(1)switch(a.prev=a.next){case 0:if(!t.loading){a.next=2;break}return a.abrupt("return");case 2:if(t.validateForm()){a.next=4;break}return a.abrupt("return");case 4:return t.loading=!0,t.errorMsg="",a.prev=6,a.next=9,t.$u.api.login({username:t.form.username,password:t.form.password});case 9:if(e=a.sent,console.log("登录结果:",e),!e||!e.access_token){a.next=29;break}return i=e.access_token,t.$u.vuex("vuex_token",i),a.prev=14,a.next=17,t.$u.api.user();case 17:r=a.sent,console.log("用户信息:",r),r&&r?(t.$u.vuex("vuex_user",r),uni.showToast({title:"登录成功",icon:"success"}),setTimeout((function(){uni.reLaunch({url:"/pages/index/index"})}),1500)):(t.errorMsg=(null===r||void 0===r?void 0:r.errmsg)||"获取用户信息失败",t.$u.vuex("vuex_token","")),a.next=27;break;case 22:a.prev=22,a.t0=a["catch"](14),console.error("获取用户信息失败:",a.t0),t.errorMsg="获取用户信息失败,请重试",t.$u.vuex("vuex_token","");case 27:a.next=30;break;case 29:t.errorMsg=(null===e||void 0===e?void 0:e.errmsg)||"登录失败,请检查用户名和密码";case 30:a.next=36;break;case 32:a.prev=32,a.t1=a["catch"](6),console.error("登录失败:",a.t1),t.errorMsg="网络错误,请检查网络连接后重试";case 36:return a.prev=36,t.loading=!1,a.finish(36);case 39:case"end":return a.stop()}}),a,null,[[6,32,36,39],[14,22]])})))()}}};a.default=o}}]); |