登录和请求功能 #3

Merged
pyia8e6p9 merged 2 commits from stu_login into master 2 years ago

@ -0,0 +1,6 @@
package com.example.common;
public enum RoleEnum {
ADMIN, // 管理员
STUDENT // 学生
}

@ -0,0 +1,4 @@
package com.example.controller;
public class StudentController {
}

@ -3,10 +3,12 @@ package com.example.controller;
import cn.hutool.core.util.ObjectUtil;
import com.example.common.Result;
import com.example.common.RoleEnum;
import com.example.entity.Account;
import com.example.entity.Admin;
import com.example.service.AdminService;
import com.example.service.StudentService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -20,7 +22,8 @@ public class WebController {
@Resource
private AdminService adminService;
@Resource
private StudentService studentService;
/**
*
@ -34,15 +37,26 @@ public class WebController {
*
*/
@PostMapping("/login")
public Result login(@RequestBody Admin admin) {
Admin dbAdmin= adminService.login(admin);
return Result.success(dbAdmin);
public Result login(@RequestBody Account account) {
Account dbAccount;
if (RoleEnum.ADMIN.name().equals(account.getRole())) { // 管理员登录
dbAccount = adminService.login(account);
} else if (RoleEnum.STUDENT.name().equals(account.getRole())) { // 学生登录
dbAccount = studentService.login(account);
} else {
return Result.error("角色错误");
}
return Result.success(dbAccount);
}
/**
*
*/
@PostMapping("/register")
public Result register(@RequestBody Account account) {
if (ObjectUtil.isEmpty(account.getUsername()) || ObjectUtil.isEmpty(account.getPassword())) {
return Result.error("账号或密码必填");
}
studentService.register(account);
return Result.success();
}
}

@ -0,0 +1,97 @@
package com.example.entity;
public class Student extends Account{
private Integer id;
private String username;
private String password;
private String name;
private String phone;
private String email;
private String sex;
private String birth;
private String avatar;
private String role;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getBirth() {
return birth;
}
public void setBirth(String birth) {
this.birth = birth;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
@Override
public String getRole() {
return role;
}
@Override
public void setRole(String role) {
this.role = role;
}
}

@ -0,0 +1,19 @@
package com.example.mapper;
import com.example.entity.Student;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface StudentMapper {
@Select("select * from student where username = #{username}")
Student selectByUsername(String username);
@Insert("insert into student (username, password, name, phone, email, sex, birth, avatar, role) " +
"values (#{username}, #{password}, #{name}, #{phone}, #{email}, #{sex}, #{birth}, #{avatar}, #{role})")
void insert(Student student);
}

@ -17,14 +17,14 @@ public class AdminService {
/**
*
*/
public Admin login(Admin admin)
public Account login(Account account)
{
Admin dbAdmin = adminMapper.selectByUsername(admin.getUsername());
Account dbAdmin = adminMapper.selectByUsername(account.getUsername());
if(dbAdmin==null)
{
throw new CustomException("账号或密码错误");
}
if (!admin.getPassword().equals(dbAdmin.getPassword()))
if (!account.getPassword().equals(dbAdmin.getPassword()))
{
throw new CustomException("账号或密码错误");
}

@ -0,0 +1,51 @@
package com.example.service;
import cn.hutool.core.util.ObjectUtil;
import com.example.common.RoleEnum;
import com.example.entity.Account;
import com.example.entity.Student;
import com.example.exception.CustomException;
import com.example.mapper.StudentMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class StudentService {
@Resource
private StudentMapper studentMapper;
public Account login(Account account)
{
Account dbStudent = studentMapper.selectByUsername(account.getUsername());
if(dbStudent==null)
{
throw new CustomException("账号或密码错误");
}
if (!account.getPassword().equals(dbStudent.getPassword()))
{
throw new CustomException("账号或密码错误");
}
return dbStudent;
}
public void register(Account account) {
Student student = new Student();
student.setUsername(account.getUsername()); // 账号
student.setPassword(account.getPassword()); // 密码
this.add(student);
}
public void add(Student student) {
Student dbStudent = studentMapper.selectByUsername(student.getUsername());
if (dbStudent != null) { // 已有同名账号 不允许插入
throw new CustomException("账号已存在");
}
if (ObjectUtil.isEmpty(student.getName())) {
student.setName(student.getUsername());
}
student.setRole(RoleEnum.STUDENT.name());
studentMapper.insert(student);
}
}

@ -1,141 +1,159 @@
{
"hash": "bb0d390d",
"browserHash": "ff48fe26",
"hash": "4d788c00",
"browserHash": "d44c108b",
"optimized": {
"@element-plus/icons-vue": {
"src": "../../@element-plus/icons-vue/dist/index.js",
"file": "@element-plus_icons-vue.js",
"fileHash": "a8e2157a",
"fileHash": "aac49d5a",
"needsInterop": false
},
"axios": {
"src": "../../axios/index.js",
"file": "axios.js",
"fileHash": "65a5d001",
"fileHash": "b597ee32",
"needsInterop": false
},
"element-plus": {
"src": "../../element-plus/es/index.mjs",
"file": "element-plus.js",
"fileHash": "f36c908b",
"fileHash": "189a99e8",
"needsInterop": false
},
"element-plus/dist/locale/zh-cn.mjs": {
"src": "../../element-plus/dist/locale/zh-cn.mjs",
"file": "element-plus_dist_locale_zh-cn__mjs.js",
"fileHash": "f064cca4",
"fileHash": "2808cc9a",
"needsInterop": false
},
"vue": {
"src": "../../vue/dist/vue.runtime.esm-bundler.js",
"file": "vue.js",
"fileHash": "3df4a5b7",
"fileHash": "1b68b33f",
"needsInterop": false
},
"vue-router": {
"src": "../../vue-router/dist/vue-router.mjs",
"file": "vue-router.js",
"fileHash": "97452d25",
"fileHash": "fa4c04ed",
"needsInterop": false
},
"element-plus/es": {
"src": "../../element-plus/es/index.mjs",
"file": "element-plus_es.js",
"fileHash": "68c72c11",
"fileHash": "9018f365",
"needsInterop": false
},
"element-plus/es/components/base/style/index": {
"src": "../../element-plus/es/components/base/style/index.mjs",
"file": "element-plus_es_components_base_style_index.js",
"fileHash": "cc1e7034",
"fileHash": "f07b5088",
"needsInterop": false
},
"element-plus/es/components/menu/style/index": {
"src": "../../element-plus/es/components/menu/style/index.mjs",
"file": "element-plus_es_components_menu_style_index.js",
"fileHash": "2933b18b",
"fileHash": "9ef9dfdc",
"needsInterop": false
},
"element-plus/es/components/sub-menu/style/index": {
"src": "../../element-plus/es/components/sub-menu/style/index.mjs",
"file": "element-plus_es_components_sub-menu_style_index.js",
"fileHash": "7eb24220",
"fileHash": "fede9499",
"needsInterop": false
},
"element-plus/es/components/menu-item/style/index": {
"src": "../../element-plus/es/components/menu-item/style/index.mjs",
"file": "element-plus_es_components_menu-item_style_index.js",
"fileHash": "0fc69fc3",
"fileHash": "3e6a6afc",
"needsInterop": false
},
"element-plus/es/components/icon/style/index": {
"src": "../../element-plus/es/components/icon/style/index.mjs",
"file": "element-plus_es_components_icon_style_index.js",
"fileHash": "32644466",
"fileHash": "8f6b7b18",
"needsInterop": false
},
"element-plus/es/components/message/style/index": {
"src": "../../element-plus/es/components/message/style/index.mjs",
"file": "element-plus_es_components_message_style_index.js",
"fileHash": "769b9c11",
"needsInterop": false
},
"element-plus/es/components/dialog/style/index": {
"src": "../../element-plus/es/components/dialog/style/index.mjs",
"file": "element-plus_es_components_dialog_style_index.js",
"fileHash": "a5ed6aa1",
"needsInterop": false
},
"element-plus/es/components/form/style/index": {
"src": "../../element-plus/es/components/form/style/index.mjs",
"file": "element-plus_es_components_form_style_index.js",
"fileHash": "959fbca7",
"needsInterop": false
},
"element-plus/es/components/form-item/style/index": {
"src": "../../element-plus/es/components/form-item/style/index.mjs",
"file": "element-plus_es_components_form-item_style_index.js",
"fileHash": "e0d5177d",
"fileHash": "9b547f9e",
"needsInterop": false
},
"element-plus/es/components/pagination/style/index": {
"src": "../../element-plus/es/components/pagination/style/index.mjs",
"file": "element-plus_es_components_pagination_style_index.js",
"fileHash": "79e110c3",
"fileHash": "06313df6",
"needsInterop": false
},
"element-plus/es/components/table/style/index": {
"src": "../../element-plus/es/components/table/style/index.mjs",
"file": "element-plus_es_components_table_style_index.js",
"fileHash": "45e0d221",
"fileHash": "eb0f1309",
"needsInterop": false
},
"element-plus/es/components/table-column/style/index": {
"src": "../../element-plus/es/components/table-column/style/index.mjs",
"file": "element-plus_es_components_table-column_style_index.js",
"fileHash": "7f49a9e8",
"fileHash": "2c2eafc5",
"needsInterop": false
},
"element-plus/es/components/button/style/index": {
"src": "../../element-plus/es/components/button/style/index.mjs",
"file": "element-plus_es_components_button_style_index.js",
"fileHash": "19ccb854",
"fileHash": "5f403b2d",
"needsInterop": false
},
"element-plus/es/components/input/style/index": {
"src": "../../element-plus/es/components/input/style/index.mjs",
"file": "element-plus_es_components_input_style_index.js",
"fileHash": "fa3a1e1e",
"fileHash": "1fdbfb81",
"needsInterop": false
},
"element-plus/es/components/form/style/index": {
"src": "../../element-plus/es/components/form/style/index.mjs",
"file": "element-plus_es_components_form_style_index.js",
"fileHash": "1577fe0a",
"needsInterop": false
},
"element-plus/es/components/form-item/style/index": {
"src": "../../element-plus/es/components/form-item/style/index.mjs",
"file": "element-plus_es_components_form-item_style_index.js",
"fileHash": "6dd256b4",
"needsInterop": false
},
"element-plus/es/components/message-box/style/index": {
"src": "../../element-plus/es/components/message-box/style/index.mjs",
"file": "element-plus_es_components_message-box_style_index.js",
"fileHash": "f2719567",
"element-plus/es/components/select/style/index": {
"src": "../../element-plus/es/components/select/style/index.mjs",
"file": "element-plus_es_components_select_style_index.js",
"fileHash": "b9f11662",
"needsInterop": false
},
"element-plus/es/components/option/style/index": {
"src": "../../element-plus/es/components/option/style/index.mjs",
"file": "element-plus_es_components_option_style_index.js",
"fileHash": "00e82736",
"needsInterop": false
}
},
"chunks": {
"chunk-22246I36": {
"file": "chunk-22246I36.js"
},
"chunk-EDNPP7CY": {
"file": "chunk-EDNPP7CY.js"
},
"chunk-5JKEUEZW": {
"file": "chunk-5JKEUEZW.js"
},
"chunk-YF6ER62I": {
"file": "chunk-YF6ER62I.js"
},
"chunk-IEXUXUIS": {
"file": "chunk-IEXUXUIS.js"
},
"chunk-6L6I4RPD": {
"file": "chunk-6L6I4RPD.js"
},
"chunk-MFXAVKGL": {
"file": "chunk-MFXAVKGL.js"
},
@ -148,32 +166,14 @@
"chunk-5WWUZCGV": {
"file": "chunk-5WWUZCGV.js"
},
"chunk-KR333NDQ": {
"file": "chunk-KR333NDQ.js"
},
"chunk-FJTOK54K": {
"file": "chunk-FJTOK54K.js"
},
"chunk-RSYYQNY4": {
"file": "chunk-RSYYQNY4.js"
},
"chunk-6XXACKVZ": {
"file": "chunk-6XXACKVZ.js"
},
"chunk-3TXWDNGO": {
"file": "chunk-3TXWDNGO.js"
},
"chunk-D3CWYFF3": {
"file": "chunk-D3CWYFF3.js"
},
"chunk-BJFB2CUW": {
"file": "chunk-BJFB2CUW.js"
"chunk-KZYH6XRM": {
"file": "chunk-KZYH6XRM.js"
},
"chunk-INT4LFCS": {
"file": "chunk-INT4LFCS.js"
"chunk-UFP42AXV": {
"file": "chunk-UFP42AXV.js"
},
"chunk-SHI5Q57K": {
"file": "chunk-SHI5Q57K.js"
"chunk-FGVA5UI6": {
"file": "chunk-FGVA5UI6.js"
}
}
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/checkbox/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/checkbox.scss";
//# sourceMappingURL=chunk-22246I36.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/checkbox/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/checkbox.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/input/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/input.scss";
//# sourceMappingURL=chunk-5JKEUEZW.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/input/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/input.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/option/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/option.scss";
//# sourceMappingURL=chunk-6L6I4RPD.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/option/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/option.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -0,0 +1,6 @@
// node_modules/element-plus/es/components/option-group/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/option-group.scss";
// node_modules/element-plus/es/components/select/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/select.scss";
//# sourceMappingURL=chunk-EDNPP7CY.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/option-group/style/index.mjs", "../../element-plus/es/components/select/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/option-group.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n", "import '../../base/style/index.mjs';\r\nimport '../../input/style/index.mjs';\r\nimport '../../tag/style/index.mjs';\r\nimport '../../option/style/index.mjs';\r\nimport '../../option-group/style/index.mjs';\r\nimport '../../scrollbar/style/index.mjs';\r\nimport '../../popper/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/select.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;;;ACMP,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/base/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/base.scss";
//# sourceMappingURL=chunk-FGVA5UI6.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/base/style/index.mjs"],
"sourcesContent": ["import 'element-plus/theme-chalk/src/base.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AAAA,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/tag/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/tag.scss";
//# sourceMappingURL=chunk-IEXUXUIS.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/tag/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/tag.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/tooltip/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/tooltip.scss";
//# sourceMappingURL=chunk-KZYH6XRM.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/tooltip/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/tooltip.scss';\r\nimport '../../popper/style/index.mjs';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/popper/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/popper.scss";
//# sourceMappingURL=chunk-UFP42AXV.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/popper/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/popper.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -0,0 +1,3 @@
// node_modules/element-plus/es/components/scrollbar/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/scrollbar.scss";
//# sourceMappingURL=chunk-YF6ER62I.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/scrollbar/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/scrollbar.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";AACA,OAAO;",
"names": []
}

@ -1,2 +1,2 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
//# sourceMappingURL=element-plus_es_components_base_style_index.js.map

@ -1,3 +1,5 @@
import "./chunk-BJFB2CUW.js";
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/button/style/index.mjs
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/button.scss";
//# sourceMappingURL=element-plus_es_components_button_style_index.js.map

@ -1,7 +1,7 @@
{
"version": 3,
"sources": [],
"sourcesContent": [],
"mappings": "",
"sources": ["../../element-plus/es/components/button/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/button.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";;;AACA,OAAO;",
"names": []
}

@ -1,6 +0,0 @@
import "./chunk-KR333NDQ.js";
import "./chunk-SHI5Q57K.js";
// node_modules/element-plus/es/components/dialog/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/dialog.scss";
//# sourceMappingURL=element-plus_es_components_dialog_style_index.js.map

@ -1,7 +0,0 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/dialog/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/dialog.scss';\r\nimport '../../overlay/style/index.mjs';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";;;;AACA,OAAO;",
"names": []
}

@ -1,5 +1,5 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/form-item/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/form-item.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/form-item.scss";
//# sourceMappingURL=element-plus_es_components_form-item_style_index.js.map

@ -1,5 +1,5 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/form/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/form.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/form.scss";
//# sourceMappingURL=element-plus_es_components_form_style_index.js.map

@ -1,5 +1,5 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/icon/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/icon.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/icon.scss";
//# sourceMappingURL=element-plus_es_components_icon_style_index.js.map

@ -1,3 +1,3 @@
import "./chunk-INT4LFCS.js";
import "./chunk-SHI5Q57K.js";
import "./chunk-5JKEUEZW.js";
import "./chunk-FGVA5UI6.js";
//# sourceMappingURL=element-plus_es_components_input_style_index.js.map

@ -1,5 +1,5 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/menu-item/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/menu-item.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/menu-item.scss";
//# sourceMappingURL=element-plus_es_components_menu-item_style_index.js.map

@ -1,7 +1,7 @@
import "./chunk-FJTOK54K.js";
import "./chunk-6XXACKVZ.js";
import "./chunk-SHI5Q57K.js";
import "./chunk-KZYH6XRM.js";
import "./chunk-UFP42AXV.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/menu/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/menu.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/menu.scss";
//# sourceMappingURL=element-plus_es_components_menu_style_index.js.map

@ -1,8 +0,0 @@
import "./chunk-KR333NDQ.js";
import "./chunk-BJFB2CUW.js";
import "./chunk-INT4LFCS.js";
import "./chunk-SHI5Q57K.js";
// node_modules/element-plus/es/components/message-box/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/message-box.scss";
//# sourceMappingURL=element-plus_es_components_message-box_style_index.js.map

@ -1,7 +0,0 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/message-box/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/message-box.scss';\r\nimport '../../button/style/index.mjs';\r\nimport '../../input/style/index.mjs';\r\nimport '../../overlay/style/index.mjs';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";;;;;;AACA,OAAO;",
"names": []
}

@ -1,8 +1,8 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/badge/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/badge.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/badge.scss";
// node_modules/element-plus/es/components/message/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/message.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/message.scss";
//# sourceMappingURL=element-plus_es_components_message_style_index.js.map

@ -0,0 +1,3 @@
import "./chunk-6L6I4RPD.js";
import "./chunk-FGVA5UI6.js";
//# sourceMappingURL=element-plus_es_components_option_style_index.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": [],
"sourcesContent": [],
"mappings": "",
"names": []
}

@ -1,18 +1,11 @@
import "./chunk-RSYYQNY4.js";
import "./chunk-6XXACKVZ.js";
import "./chunk-3TXWDNGO.js";
import "./chunk-INT4LFCS.js";
import "./chunk-SHI5Q57K.js";
import "./chunk-EDNPP7CY.js";
import "./chunk-5JKEUEZW.js";
import "./chunk-YF6ER62I.js";
import "./chunk-IEXUXUIS.js";
import "./chunk-6L6I4RPD.js";
import "./chunk-UFP42AXV.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/pagination/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/pagination.scss";
// node_modules/element-plus/es/components/option/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/option.scss";
// node_modules/element-plus/es/components/option-group/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/option-group.scss";
// node_modules/element-plus/es/components/select/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/select.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/pagination.scss";
//# sourceMappingURL=element-plus_es_components_pagination_style_index.js.map

@ -1,7 +1,7 @@
{
"version": 3,
"sources": ["../../element-plus/es/components/pagination/style/index.mjs", "../../element-plus/es/components/option/style/index.mjs", "../../element-plus/es/components/option-group/style/index.mjs", "../../element-plus/es/components/select/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/pagination.scss';\r\nimport '../../select/style/index.mjs';\r\n//# sourceMappingURL=index.mjs.map\r\n", "import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/option.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n", "import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/option-group.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n", "import '../../base/style/index.mjs';\r\nimport '../../input/style/index.mjs';\r\nimport '../../tag/style/index.mjs';\r\nimport '../../option/style/index.mjs';\r\nimport '../../option-group/style/index.mjs';\r\nimport '../../scrollbar/style/index.mjs';\r\nimport '../../popper/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/select.scss';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";;;;;;;AACA,OAAO;;;ACAP,OAAO;;;ACAP,OAAO;;;ACMP,OAAO;",
"sources": ["../../element-plus/es/components/pagination/style/index.mjs"],
"sourcesContent": ["import '../../base/style/index.mjs';\r\nimport 'element-plus/theme-chalk/src/pagination.scss';\r\nimport '../../select/style/index.mjs';\r\n//# sourceMappingURL=index.mjs.map\r\n"],
"mappings": ";;;;;;;;;AACA,OAAO;",
"names": []
}

@ -0,0 +1,8 @@
import "./chunk-EDNPP7CY.js";
import "./chunk-5JKEUEZW.js";
import "./chunk-YF6ER62I.js";
import "./chunk-IEXUXUIS.js";
import "./chunk-6L6I4RPD.js";
import "./chunk-UFP42AXV.js";
import "./chunk-FGVA5UI6.js";
//# sourceMappingURL=element-plus_es_components_select_style_index.js.map

@ -0,0 +1,7 @@
{
"version": 3,
"sources": [],
"sourcesContent": [],
"mappings": "",
"names": []
}

@ -1,5 +1,5 @@
import "./chunk-SHI5Q57K.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/sub-menu/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/sub-menu.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/sub-menu.scss";
//# sourceMappingURL=element-plus_es_components_sub-menu_style_index.js.map

@ -1,7 +1,7 @@
import "./chunk-3TXWDNGO.js";
import "./chunk-D3CWYFF3.js";
import "./chunk-SHI5Q57K.js";
import "./chunk-22246I36.js";
import "./chunk-IEXUXUIS.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/table-column/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/table-column.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/table-column.scss";
//# sourceMappingURL=element-plus_es_components_table-column_style_index.js.map

@ -1,9 +1,9 @@
import "./chunk-FJTOK54K.js";
import "./chunk-RSYYQNY4.js";
import "./chunk-6XXACKVZ.js";
import "./chunk-D3CWYFF3.js";
import "./chunk-SHI5Q57K.js";
import "./chunk-22246I36.js";
import "./chunk-YF6ER62I.js";
import "./chunk-KZYH6XRM.js";
import "./chunk-UFP42AXV.js";
import "./chunk-FGVA5UI6.js";
// node_modules/element-plus/es/components/table/style/index.mjs
import "C:/system of information/git/vue/node_modules/element-plus/theme-chalk/src/table.scss";
import "D:/learning/大二下/信息系统实践/student_system/vue/node_modules/element-plus/theme-chalk/src/table.scss";
//# sourceMappingURL=element-plus_es_components_table_style_index.js.map

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

@ -13,8 +13,8 @@ const router = createRouter({
{ path: 'course', name: 'Course', component: () => import('@/views/manager/Course.vue')},
]
},
{ path: '/login', name: 'Login', component: () => import('@/views/Login.vue'),
}
{ path: '/login', name: 'Login', component: () => import('@/views/Login.vue'),},
{ path: '/register', name: 'Register', component: () => import('@/views/Register.vue'),},
]
})

@ -1,8 +1,8 @@
<template>
<div>
<div class="login-container">
<div style="width:350px" class="login-box">
<div style="font-weight: bold; font-size: 24px; text-align: center; margin-bottom:30px" class="title"> </div>
<div style="width: 350px" class="login-box">
<div style="font-weight: bold; font-size: 24px; text-align: center; margin-bottom: 30px"> </div>
<el-form :model="data.form" ref="formRef" :rules="rules">
<el-form-item prop="username">
<el-input prefix-icon="User" v-model="data.form.username" placeholder="请输入账号" />
@ -10,12 +10,18 @@
<el-form-item prop="password">
<el-input show-password prefix-icon="Lock" v-model="data.form.password" placeholder="请输入密码" />
</el-form-item>
<el-form-item prop="role">
<el-select style="width: 100%" v-model="data.form.role">
<el-option value="ADMIN" label="管理员"></el-option>
<el-option value="STUDENT" label="学生"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" style="width:100%" @click="login"> </el-button>
<el-button type="primary" style="width: 100%" @click="login"> </el-button>
</el-form-item>
</el-form>
<div style="margin-top:30px ; text-align: right" >
还没有账号<a href="/register">注册</a>
<div style="margin-top: 30px; text-align: right">
还没有账号 <a href="/register">注册</a>
</div>
</div>
</div>
@ -29,7 +35,7 @@ import {ElMessage} from "element-plus";
import router from "@/router";
const data = reactive({
form: {}
form: { role: 'ADMIN' }
})
const rules = reactive({

@ -0,0 +1,81 @@
<template>
<div>
<div class="login-container">
<div style="width: 350px" class="login-box">
<div style="font-weight: bold; font-size: 24px; text-align: center; margin-bottom: 30px"> </div>
<el-form :model="data.form" ref="formRef" :rules="rules">
<el-form-item prop="username">
<el-input prefix-icon="User" v-model="data.form.username" placeholder="请输入账号" />
</el-form-item>
<el-form-item prop="password">
<el-input show-password prefix-icon="Lock" v-model="data.form.password" placeholder="请输入密码" />
</el-form-item>
<el-form-item>
<el-button type="primary" style="width: 100%" @click="register"> </el-button>
</el-form-item>
</el-form>
<div style="margin-top: 30px; text-align: right">
已有账号 <a href="/login">登录</a>
</div>
</div>
</div>
</div>
</template>
<script setup>
import {reactive, ref} from "vue"
import request from "@/utils/request";
import {ElMessage} from "element-plus";
import router from "@/router";
const data = reactive({
form: {}
})
const rules = reactive({
username: [
{ required: true, message: '请输入账号', trigger: 'blur' },
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
],
})
const formRef = ref()
const register = () => {
formRef.value.validate((valid) => {
if (valid) {
request.post('/register', data.form).then(res => {
if (res.code === '200') {
ElMessage.success('注册成功')
router.push('/login') //
} else {
ElMessage.error(res.msg)
}
})
}
})
}
</script>
<style scoped>
.login-container {
min-height: 100vh;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
background: url("@/assets/imgs/bg2.jpg") no-repeat center 0;
background-size: cover;
}
.login-box{
background-color: #fff;
box-shadow: 0px 0px 19px 5px rgba(0,0,0,0.2);
border-radius:20px;
padding: 30px;
}
</style>
Loading…
Cancel
Save