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
17 KiB

{"remainingRequest":"D:\\code\\vue\\front\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\code\\vue\\front\\src\\pages\\login\\login.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\code\\vue\\front\\src\\pages\\login\\login.vue","mtime":1749055175349},{"path":"D:\\code\\vue\\front\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\code\\vue\\front\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\code\\vue\\front\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\code\\vue\\front\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQppbXBvcnQgbWVudSBmcm9tICdAL2NvbmZpZy9tZW51Jw0KZXhwb3J0IGRlZmF1bHQgew0KCS8v5pWw5o2u6ZuG5ZCIDQoJZGF0YSgpIHsNCgkJcmV0dXJuIHsNCiAgICAgICAgICAgIGJhc2VVcmw6IHRoaXMuJGNvbmZpZy5iYXNlVXJsLA0KICAgICAgICAgICAgbG9naW5UeXBlOiAxLA0KCQkJcm9sZU1lbnVzOiBbXSwNCgkJCWxvZ2luRm9ybTogew0KCQkJCXVzZXJuYW1lOiAnJywNCgkJCQlwYXNzd29yZDogJycsDQoJCQkJdGFibGVOYW1lOiAnJywNCgkJCQljb2RlOiAnJywNCgkJCX0sDQoJCQlyb2xlOiAnJywNCiAgICAgICAgICAgIHJvbGVzOiBbXSwNCgkJCXJ1bGVzOiB7DQoJCQkJdXNlcm5hbWU6IFsNCgkJCQkJeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogJ+ivt+i+k+WFpei0puaItycsIHRyaWdnZXI6ICdibHVyJyB9DQoJCQkJXSwNCgkJCQlwYXNzd29yZDogWw0KCQkJCQl7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAn6K+36L6T5YWl5a+G56CBJywgdHJpZ2dlcjogJ2JsdXInIH0NCgkJCQldDQoJCQl9LA0KCQkJY29kZXM6IFt7DQoJCQkJbnVtOiAxLA0KCQkJCWNvbG9yOiAnIzAwMCcsDQoJCQkJcm90YXRlOiAnMTBkZWcnLA0KCQkJCXNpemU6ICcxNnB4Jw0KCQkJfSwgew0KCQkJCW51bTogMiwNCgkJCQljb2xvcjogJyMwMDAnLA0KCQkJCXJvdGF0ZTogJzEwZGVnJywNCgkJCQlzaXplOiAnMTZweCcNCgkJCX0sIHsNCgkJCQludW06IDMsDQoJCQkJY29sb3I6ICcjMDAwJywNCgkJCQlyb3RhdGU6ICcxMGRlZycsDQoJCQkJc2l6ZTogJzE2cHgnDQoJCQl9LCB7DQoJCQkJbnVtOiA0LA0KCQkJCWNvbG9yOiAnIzAwMCcsDQoJCQkJcm90YXRlOiAnMTBkZWcnLA0KCQkJCXNpemU6ICcxNnB4Jw0KCQkJfV0sDQoJCQlmbGFnOiBmYWxzZSwNCgkJCXZlcmlmeUNoZWNrMjogZmFsc2UsDQoJCX0NCgl9LA0KICBjb21wb25lbnRzOiB7DQogIH0sDQoJY3JlYXRlZCgpIHsNCgkJdGhpcy5yb2xlTWVudXMgPSBtZW51Lmxpc3QoKQ0KCQlmb3IobGV0IGl0ZW0gaW4gdGhpcy5yb2xlTWVudXMpIHsNCgkJICAgIGlmKHRoaXMucm9sZU1lbnVzW2l0ZW1dLmhhc0Zyb250TG9naW49PSfmmK8nKSB7DQoJCSAgICAgICAgdGhpcy5yb2xlcy5wdXNoKHRoaXMucm9sZU1lbnVzW2l0ZW1dKTsNCgkJICAgIH0NCgkJfQ0KCQkNCgl9LA0KCW1vdW50ZWQoKSB7DQoJfSwNCiAgICAvL+aWueazlembhuWQiA0KICAgIG1ldGhvZHM6IHsNCgkJcmFuZG9tU3RyaW5nKCkgew0KCQkJdmFyIGxlbiA9IDQ7DQoJCQl2YXIgY2hhcnMgPSBbDQoJCQkgICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicsICdnJywgJ2gnLCAnaScsICdqJywgJ2snLA0KCQkJICAnbCcsICdtJywgJ24nLCAnbycsICdwJywgJ3EnLCAncicsICdzJywgJ3QnLCAndScsICd2JywNCgkJCSAgJ3cnLCAneCcsICd5JywgJ3onLCAnQScsICdCJywgJ0MnLCAnRCcsICdFJywgJ0YnLCAnRycsDQoJCQkgICdIJywgJ0knLCAnSicsICdLJywgJ0wnLCAnTScsICdOJywgJ08nLCAnUCcsICdRJywgJ1InLA0KCQkJICAnUycsICdUJywgJ1UnLCAnVicsICdXJywgJ1gnLCAnWScsICdaJywgJzAnLCAnMScsICcyJywNCgkJCSAgJzMnLCAnNCcsICc1JywgJzYnLCAnNycsICc4JywgJzknDQoJCQldDQoJCQl2YXIgY29sb3JzID0gWycwJywgJzEnLCAnMicsICczJywgJzQnLCAnNScsICc2JywgJzcnLCAnOCcsICc5JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJ10NCgkJCXZhciBzaXplcyA9IFsnMTQnLCAnMTUnLCAnMTYnLCAnMTcnLCAnMTgnXQ0KCQkJDQoJCQl2YXIgb3V0cHV0ID0gW10NCgkJCWZvciAodmFyIGkgPSAwOyBpIDwgbGVuOyBpKyspIHsNCgkJCSAgLy8g6ZqP5py66aqM6K+B56CBDQoJCQkgIHZhciBrZXkgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFycy5sZW5ndGgpDQoJCQkgIHRoaXMuY29kZXNbaV0ubnVtID0gY2hhcnNba2V5XQ0KCQkJICAvLyDpmo/mnLrpqozor4HnoIHpopzoibINCgkJCSAgdmFyIGNvZGUgPSAnIycNCgkJCSAgZm9yICh2YXIgaiA9IDA7IGogPCA2OyBqKyspIHsNCgkJCSAgICB2YXIga2V5ID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY29sb3JzLmxlbmd0aCkNCgkJCSAgICBjb2RlICs9IGNvbG9yc1trZXldDQoJCQkgIH0NCgkJCSAgdGhpcy5jb2Rlc1tpXS5jb2xvciA9IGNvZGUNCgkJCSAgLy8g6ZqP5py66aqM6K+B56CB5pa55ZCRDQoJCQkgIHZhciByb3RhdGUgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiA0NSkNCgkJCSAgdmFyIHBsdXMgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAyKQ0KCQkJICBpZiAocGx1cyA9PSAxKSByb3RhdGUgPSAnLScgKyByb3RhdGUNCgkJCSAgdGhpcy5jb2Rlc1tpXS5yb3RhdGUgPSAncm90YXRlKCcgKyByb3RhdGUgKyAnZGVnKScNCgkJCSAgLy8g6ZqP5py66aqM6K+B56CB5a2X5L2T5aSn5bCPDQoJCQkgIHZhciBzaXplID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogc2l6ZXMubGVuZ3RoKQ0KCQkJICB0aGlzLmNvZGVzW2ldLnNpemUgPSBzaXplc1tzaXplXSArICdweCcNCgkJCX0NCgkJfSwNCgkgIHNlbGVjdENoYW5nZShlKXsNCgkJICB0aGlzLnJvbGUgPSBlDQoJICB9LA0KICAgICAgc3VibWl0Rm9ybShmb3JtTmFtZSkgew0KICAgICAgICBpZiAodGhpcy5yb2xlcy5sZW5ndGghPTEpIHsNCiAgICAgICAgICAgIGlmICghdGhpcy5yb2xlKSB7DQogICAgICAgICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcigi6K+36YCJ5oup55m75b2V55So5oi357G75Z6LIik7DQogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgdGhpcy5yb2xlID0gdGhpcy5yb2xlc1swXS5yb2xlTmFtZTsNCiAgICAgICAgICAgIHRoaXMubG9naW5Gb3JtLnRhYmxlTmFtZSA9IHRoaXMucm9sZXNbMF0udGFibGVOYW1lOw0KICAgICAgICB9DQoNCgkJdGhpcy5sb2dpblBvc3QoZm9ybU5hbWUpDQogICAgICB9LA0KICAgICAgcmVzZXRGb3JtKGZvcm1OYW1lKSB7DQogICAgICAgIHRoaXMuJHJlZnNbZm9ybU5hbWVdLnJlc2V0RmllbGRzKCk7DQogICAgICB9LA0KCSAgbG9naW5Qb3N0KGZvcm1OYW1lKSB7DQoJCXRoaXMuJHJlZnNbZm9ybU5hbWVdLnZhbGlkYXRlKCh2YWxpZCkgPT4gew0KCQkgIGlmICh2YWxpZCkgew0KCQkgICAgdGhpcy4kaHR0cC5nZXQoYCR7dGhpcy5sb2dpbkZvcm0udGFibGVOYW1lfS9sb2dpbmAsIHtwYXJhbXM6IHRoaXMubG9naW5Gb3JtfSkudGhlbihyZXMgPT4gew0KCQkgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PT0gMCkgew0KCQkgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdmcm9udFRva2VuJywgcmVzLmRhdGEudG9rZW4pOw0KCQkgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdVc2VyVGFibGVOYW1lJywgdGhpcy5sb2dpbkZvcm0udGFibGVOYW1lKTsNCgkJICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgndXNlcm5hbWUnLCB0aGlzLmxvZ2luRm9ybS51c2VybmFtZSk7DQoJCSAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2FkbWluTmFtZScsIHRoaXMubG9naW5Gb3JtLnVzZXJuYW1lKTsNCgkJICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnZnJvbnRTZXNzaW9uVGFibGUnLCB0aGlzLmxvZ2luRm9ybS50YWJsZU5hbWUpOw0KCQkgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdmcm9udFJvbGUnLCB0aGlzLnJvbGUpOw0KCQkgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdrZXlQYXRoJywgMCk7DQoJCSAgICAgICAgdGhpcy4kcm91dGVyLnB1c2goJy8nKTsNCgkJICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCgkJICAgICAgICAgIG1lc3NhZ2U6ICfnmbvlvZXmiJDlip8nLA0KCQkgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnLA0KCQkgICAgICAgICAgZHVyYXRpb246IDE1MDAsDQoJCSAgICAgICAgfSk7DQoJCSAgICAgIH0gZWxzZSB7DQoJCSAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMuZGF0YS5tc2cpOw0KCQkgICAgICB9DQoJCSAgICB9KTsNCgkJICB9IGVsc2Ugew0KCQkgICAgcmV0dXJuIGZhbHNlOw0KCQkgIH0NCgkJfSk7DQoJICB9LA0KICAgIH0NCiAgfQ0K"},{"version":3,"sources":["login.vue"],"names":[],"mappings":";AAqCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"login.vue","sourceRoot":"src/pages/login","sourcesContent":["<template>\r\n<div>\r\n\t<div class=\"container\" :style='{\"minHeight\":\"100vh\",\"alignItems\":\"center\",\"background\":\"url(http://codegen.caihongy.cn/20230918/e4c3de45e8454be08468ba32acc9108f.jpg)\",\"display\":\"flex\",\"width\":\"100%\",\"backgroundSize\":\"cover\",\"backgroundPosition\":\"center center\",\"backgroundRepeat\":\"no-repeat\",\"justifyContent\":\"center\"}'>\r\n\t\t<el-form ref=\"loginForm\" :model=\"loginForm\" :style='{\"width\":\"30vw\",\"padding\":\"0px\",\"margin\":\"0 0 0 50vw\",\"borderRadius\":\"0px\",\"background\":\"#fff\",\"height\":\"auto\"}' :rules=\"rules\">\r\n\t\t\t<div v-if=\"false\" :style='{\"width\":\"100%\",\"margin\":\"0 0 10px 0\",\"lineHeight\":\"44px\",\"fontSize\":\"20px\",\"color\":\"rgba(64, 158, 255, 1)\",\"textAlign\":\"center\"}'>USER / LOGIN</div>\r\n\t\t\t<div v-if=\"true\" :style='{\"width\":\"80%\",\"margin\":\"0 auto 10px\",\"lineHeight\":\"44px\",\"fontSize\":\"28px\",\"color\":\"#333\",\"textAlign\":\"left\"}'>启熹LearnLume登录</div>\r\n\t\t\t<el-form-item v-if=\"loginType==1\" class=\"list-item\" :style='{\"width\":\"80%\",\"margin\":\"0 auto 10px\"}' prop=\"username\">\r\n\t\t\t\t<div v-if=\"true\" :style='{\"width\":\"100%\",\"lineHeight\":\"36px\",\"fontSize\":\"14px\",\"color\":\"#333\"}'>账号:</div>\r\n\t\t\t\t<input :style='{\"border\":\"1px solid #ddd\",\"padding\":\"0 10px\",\"color\":\"#666\",\"borderRadius\":\"4px\",\"width\":\"100%\",\"fontSize\":\"14px\",\"height\":\"40px\"}' v-model=\"loginForm.username\" placeholder=\"请输入账户\">\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item v-if=\"loginType==1\" class=\"list-item\" :style='{\"width\":\"80%\",\"margin\":\"0 auto 10px\"}' prop=\"password\">\r\n\t\t\t\t<div v-if=\"true\" :style='{\"width\":\"100%\",\"lineHeight\":\"36px\",\"fontSize\":\"14px\",\"color\":\"#333\"}'>密码:</div>\r\n\t\t\t\t<input :style='{\"border\":\"1px solid #ddd\",\"padding\":\"0 10px\",\"color\":\"#666\",\"borderRadius\":\"4px\",\"width\":\"100%\",\"fontSize\":\"14px\",\"height\":\"40px\"}' v-model=\"loginForm.password\" placeholder=\"请输入密码\" type=\"password\">\r\n\t\t\t</el-form-item>\r\n\r\n\t\t\t<el-form-item class=\"list-type select\" :style='{\"width\":\"80%\",\"margin\":\"0 auto 10px\"}' v-if=\"roles.length>1\">\r\n\t\t\t <el-select v-model=\"loginForm.tableName\" placeholder=\"请选择角色\" @change=\"selectChange\">\r\n\t\t\t\t<el-option v-for=\"item,index in roles\" :key=\"index\" :label=\"item.roleName\" :value=\"item.tableName\" />\r\n\t\t\t </el-select>\r\n\t\t\t</el-form-item>\r\n\r\n\t\t\t\r\n\t\t\t<el-form-item class=\"list-btn\" :style='{\"width\":\"80%\",\"margin\":\"20px auto\"}'>\r\n\t\t\t\t<el-button v-if=\"loginType==1\" :style='{\"border\":\"0\",\"cursor\":\"pointer\",\"padding\":\"0 24px\",\"margin\":\"0 5px\",\"outline\":\"none\",\"color\":\"#fff\",\"borderRadius\":\"4px\",\"background\":\"#ffc000\",\"width\":\"100%\",\"fontSize\":\"16px\",\"height\":\"44px\"}' @click=\"submitForm('loginForm')\">登录</el-button>\r\n\t\t\t\t<el-button v-if=\"loginType==1\" :style='{\"border\":\"0\",\"cursor\":\"pointer\",\"padding\":\"0 24px\",\"margin\":\"0 5px\",\"outline\":\"none\",\"color\":\"#666\",\"borderRadius\":\"4px\",\"textAlign\":\"right\",\"background\":\"none\",\"width\":\"100%\",\"fontSize\":\"14px\",\"height\":\"44px\"}' @click=\"resetForm('loginForm')\">重置</el-button>\r\n\t\t\t</el-form-item>\r\n\t\t\t<div :style='{\"width\":\"80%\",\"margin\":\"20px auto\"}'>\r\n\t\t\t<router-link :style='{\"cursor\":\"pointer\",\"margin\":\"0 5px\",\"fontSize\":\"14px\",\"textDecoration\":\"none\",\"color\":\"#F5BB00\",\"background\":\"#fff\"}' :to=\"{path: '/register', query: {role: item.tableName,pageFlag:'register'}}\" v-if=\"item.hasFrontRegister=='是'\" v-for=\"(item, index) in roles\" :key=\"index\">注册{{item.roleName.replace('注册','')}}</router-link>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"idea1\" :style='{\"width\":\"100%\",\"background\":\"red\",\"display\":\"none\",\"height\":\"40px\"}'></div>\r\n\t\t\t<div class=\"idea2\" :style='{\"width\":\"100%\",\"background\":\"blue\",\"display\":\"none\",\"height\":\"40px\"}'></div>\r\n\t\t</el-form>\r\n </div>\r\n</div>\r\n</template>\r\n\r\n<script>\r\nimport menu from '@/config/menu'\r\nexport default {\r\n\t//数据集合\r\n\tdata() {\r\n\t\treturn {\r\n baseUrl: this.$config.baseUrl,\r\n loginType: 1,\r\n\t\t\troleMenus: [],\r\n\t\t\tloginForm: {\r\n\t\t\t\tusername: '',\r\n\t\t\t\tpassword: '',\r\n\t\t\t\ttableName: '',\r\n\t\t\t\tcode: '',\r\n\t\t\t},\r\n\t\t\trole: '',\r\n roles: [],\r\n\t\t\trules: {\r\n\t\t\t\tusername: [\r\n\t\t\t\t\t{ required: true, message: '请输入账户', trigger: 'blur' }\r\n\t\t\t\t],\r\n\t\t\t\tpassword: [\r\n\t\t\t\t\t{ required: true, message: '请输入密码', trigger: 'blur' }\r\n\t\t\t\t]\r\n\t\t\t},\r\n\t\t\tcodes: [{\r\n\t\t\t\tnum: 1,\r\n\t\t\t\tcolor: '#000',\r\n\t\t\t\trotate: '10deg',\r\n\t\t\t\tsize: '16px'\r\n\t\t\t}, {\r\n\t\t\t\tnum: 2,\r\n\t\t\t\tcolor: '#000',\r\n\t\t\t\trotate: '10deg',\r\n\t\t\t\tsize: '16px'\r\n\t\t\t}, {\r\n\t\t\t\tnum: 3,\r\n\t\t\t\tcolor: '#000',\r\n\t\t\t\trotate: '10deg',\r\n\t\t\t\tsize: '16px'\r\n\t\t\t}, {\r\n\t\t\t\tnum: 4,\r\n\t\t\t\tcolor: '#000',\r\n\t\t\t\trotate: '10deg',\r\n\t\t\t\tsize: '16px'\r\n\t\t\t}],\r\n\t\t\tflag: false,\r\n\t\t\tverifyCheck2: false,\r\n\t\t}\r\n\t},\r\n components: {\r\n },\r\n\tcreated() {\r\n\t\tthis.roleMenus = menu.list()\r\n\t\tfor(let item in this.roleMenus) {\r\n\t\t if(this.roleMenus[item].hasFrontLogin=='是') {\r\n\t\t this.roles.push(this.roleMenus[item]);\r\n\t\t }\r\n\t\t}\r\n\t\t\r\n\t},\r\n\tmounted() {\r\n\t},\r\n //方法集合\r\n methods: {\r\n\t\trandomString() {\r\n\t\t\tvar len = 4;\r\n\t\t\tvar chars = [\r\n\t\t\t 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k',\r\n\t\t\t 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',\r\n\t\t\t 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G',\r\n\t\t\t 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',\r\n\t\t\t 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2',\r\n\t\t\t '3', '4', '5', '6', '7', '8', '9'\r\n\t\t\t]\r\n\t\t\tvar colors = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f']\r\n\t\t\tvar sizes = ['14', '15', '16', '17', '18']\r\n\t\t\t\r\n\t\t\tvar output = []\r\n\t\t\tfor (var i = 0; i < len; i++) {\r\n\t\t\t // 随机验证码\r\n\t\t\t var key = Math.floor(Math.random() * chars.length)\r\n\t\t\t this.codes[i].num = chars[key]\r\n\t\t\t // 随机验证码颜色\r\n\t\t\t var code = '#'\r\n\t\t\t for (var j = 0; j < 6; j++) {\r\n\t\t\t var key = Math.floor(Math.random() * colors.length)\r\n\t\t\t code += colors[key]\r\n\t\t\t }\r\n\t\t\t this.codes[i].color = code\r\n\t\t\t // 随机验证码方向\r\n\t\t\t var rotate = Math.floor(Math.random() * 45)\r\n\t\t\t var plus = Math.floor(Math.random() * 2)\r\n\t\t\t if (plus == 1) rotate = '-' + rotate\r\n\t\t\t this.codes[i].rotate = 'rotate(' + rotate + 'deg)'\r\n\t\t\t // 随机验证码字体大小\r\n\t\t\t var size = Math.floor(Math.random() * sizes.length)\r\n\t\t\t this.codes[i].size = sizes[size] + 'px'\r\n\t\t\t}\r\n\t\t},\r\n\t selectChange(e){\r\n\t\t this.role = e\r\n\t },\r\n submitForm(formName) {\r\n if (this.roles.length!=1) {\r\n if (!this.role) {\r\n this.$message.error(\"请选择登录用户类型\");\r\n return false;\r\n }\r\n } else {\r\n this.role = this.roles[0].roleName;\r\n this.loginForm.tableName = this.roles[0].tableName;\r\n }\r\n\r\n\t\tthis.loginPost(formName)\r\n },\r\n resetForm(formName) {\r\n this.$refs[formName].resetFields();\r\n },\r\n\t loginPost(formName) {\r\n\t\tthis.$refs[formName].validate((valid) => {\r\n\t\t if (valid) {\r\n\t\t this.$http.get(`${this.loginForm.tableName}/login`, {params: this.loginForm}).then(res => {\r\n\t\t if (res.data.code === 0) {\r\n\t\t localStorage.setItem('frontToken', res.data.token);\r\n\t\t localStorage.setItem('UserTableName', this.loginForm.tableName);\r\n\t\t localStorage.setItem('username', this.loginForm.username);\r\n\t\t localStorage.setItem('adminName', this.loginForm.username);\r\n\t\t localStorage.setItem('frontSessionTable', this.loginForm.tableName);\r\n\t\t localStorage.setItem('frontRole', this.role);\r\n\t\t localStorage.setItem('keyPath', 0);\r\n\t\t this.$router.push('/');\r\n\t\t this.$message({\r\n\t\t message: '登录成功',\r\n\t\t type: 'success',\r\n\t\t duration: 1500,\r\n\t\t });\r\n\t\t } else {\r\n\t\t this.$message.error(res.data.msg);\r\n\t\t }\r\n\t\t });\r\n\t\t } else {\r\n\t\t return false;\r\n\t\t }\r\n\t\t});\r\n\t },\r\n }\r\n }\r\n</script>\r\n\r\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\r\n\t.container {\r\n\t\tposition: relative;\r\n\t\tbackground: url(http://codegen.caihongy.cn/20230918/e4c3de45e8454be08468ba32acc9108f.jpg);\r\n\t\t\r\n\t\t.el-form-item {\r\n\t\t & /deep/ .el-form-item__content {\r\n\t\t width: 100%;\r\n\t\t }\r\n\t\t}\r\n\t\t\r\n\t\t.list-item /deep/ .el-form-item__content {\r\n\t\t\tdisplay: block;\r\n\t\t}\r\n\r\n\t\t.list-code /deep/ .el-form-item__content {\r\n\t\t\tdisplay: block;\r\n\t\t}\r\n\r\n\t\t.list-type /deep/ .el-form-item__content {\r\n\t\t\tmargin: 10px 0 0;\r\n\t\t\tdisplay: flex;\r\n\t\t}\r\n\r\n\t\t.list-btn /deep/ .el-form-item__content {\r\n\t\t\tdisplay: flex;\r\n\t\t\tjustify-content: center;\r\n\t\t\tflex-wrap: wrap;\r\n\t\t}\r\n\t\t\r\n\t\t.list-item /deep/ .el-input .el-input__inner {\r\n\t\t\tborder: 1px solid #ddd;\r\n\t\t\tborder-radius: 4px;\r\n\t\t\tpadding: 0 10px;\r\n\t\t\tcolor: #666;\r\n\t\t\twidth: 100%;\r\n\t\t\tfont-size: 14px;\r\n\t\t\theight: 40px;\r\n\t\t}\r\n\t\t\r\n\t\t.list-code /deep/ .el-input .el-input__inner {\r\n\t\t\tborder: 1px solid #ddd;\r\n\t\t\tborder-radius: 4px;\r\n\t\t\tpadding: 0 10px;\r\n\t\t\toutline: none;\r\n\t\t\tcolor: #666;\r\n\t\t\tdisplay: inline-block;\r\n\t\t\tvertical-align: middle;\r\n\t\t\twidth: 144px;\r\n\t\t\tfont-size: 14px;\r\n\t\t\theight: 40px;\r\n\t\t}\r\n\r\n\t\t// select\r\n\t\t.list-type.select .el-select /deep/ .el-input__inner {\r\n\t\t\tborder: 1px solid #ddd;\r\n\t\t\tborder-radius: 4px;\r\n\t\t\tpadding: 0 10px;\r\n\t\t\tcolor: #666;\r\n\t\t\twidth: 288px;\r\n\t\t\tfont-size: 14px;\r\n\t\t\theight: 40px;\r\n\t\t}\r\n\t}\r\n\r\n</style>\r\n"]}]}