Share a set of SpringBoot + Vue course scheduling/selection management system for free, which is very beautiful

Hello everyone, I'm Brother Feng. I saw a good SpringBoot + Vue course scheduling/selection management system. Share it with me.

Project Introduction

In recent years, with the gradual increase in the scale of online schools, manual writing data has been unable to handle such a huge amount of data. In order to better adapt to the efficiency of the information age, a system that uses computers to manage student information will inevitably be born. Based on this, a student information management system is designed.

Based on the above understanding, we collected relevant materials and data, consulted relevant literature and technical parameters, conducted research on the actual needs of student files, and found that the current manual recording method has the following drawbacks: The range of objects is wide, and data storage is not easy; there are many data filled in, the content filled in is quite complicated, and a large amount of data is repeated; it is not easy to archive, thousands of information and piles of documents are a burden for managers, requiring a lot of documentation. In view of the above reasons, the management of student files urgently needs a software to replace manual operations to manage data.

The application of computer technology in modern management makes computer an important tool for leaders and managers to apply modern technology. Computer-assisted student archives activities can greatly enhance the ability of managers to collect and process information, which is conducive to timely decision-making by managers. The computer system can process and save the original data and materials according to the changes in the management process. When the management personnel need information and materials to solve specific problems, they can search and query at any time, understand the dynamic situation of the entire student information management system, and carry out dynamic Management, so as to effectively handle the management of student files, realize the automation of student file information management, and improve efficiency.

System display

  

part of the code

package com.rainng.coursesystem.controller;

import com.rainng.coursesystem.model.vo.request.LoginVO;
import com.rainng.coursesystem.model.vo.response.ResultVO;
import com.rainng.coursesystem.service.UserService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/user")
@RestController
public class UserController extends BaseController {
    private final UserService service;

    public UserController(UserService service) {
        this.service = service;
    }

    @PostMapping("/login")
    public ResultVO login(@Validated @RequestBody LoginVO loginVO) {
        String username = loginVO.getUsername();
        String password = loginVO.getPassword();
        Integer userType = loginVO.getUserType();
        return service.login(username, password, userType);
    }

    @RequestMapping("/login/status")
    public ResultVO getLoginStatus() {
        return service.getLoginStatus();
    }

    @RequestMapping("/logout")
    public ResultVO logout() {
        return service.logout();
    }
}
<template>
  <div class="login-wrap">
    <div class="login-form">
      <div class="form-title">课程管理系统</div>
      <el-form
        :model="formData"
        :rules="rules"
        class="form-content"
        label-width="0px"
        ref="form"
      >
        <el-form-item prop="username">
          <el-input placeholder="学号/工号/用户名" v-model="formData.username">
            <span slot="prepend"><i class="el-icon-user"></i></span>
          </el-input>
        </el-form-item>

        <el-form-item prop="password">
          <el-input
            @keyup.enter.native="submit()"
            placeholder="密码"
            type="password"
            v-model="formData.password"
          >
            <span slot="prepend"><i class="el-icon-edit"></i></span>
          </el-input>
        </el-form-item>

        <el-form-item prop="userType">
          <el-radio-group v-model="formData.userType">
            <el-radio label="1">学生</el-radio>
            <el-radio label="2">教师</el-radio>
            <el-radio label="3">教务管理员</el-radio>
          </el-radio-group>
        </el-form-item>

        <div class="login-btn" v-loading="this.$store.state.loading">
          <el-button @click="submit()" type="primary">登录</el-button>
        </div>
      </el-form>
      <div style="text-align: center;padding-bottom: 10px">
        <a href="http://www.java1234.com/a/bysj/javaweb/" target="_blank">Java1234收藏整理</a>
      </div>
    </div>

  </div>

</template>

<script>
import { login } from "../api/user";

export default {
  data: function() {
    return {
      formData: {
        username: "",
        password: "",
        userType: "1"
      },
      rules: {
        username: [
          { required: true, message: "请输入用户名", trigger: "blur" }
        ],
        password: [{ required: true, message: "请输入密码", trigger: "blur" }],
        userType: [
          { required: true, message: "请选择用户类型", trigger: "blur" }
        ]
      }
    };
  },
  methods: {
    submit() {
      this.$refs.form.validate(valid => {
        if (valid) {
          login(
            this.formData.username,
            this.formData.password,
            this.formData.userType
          ).then(res => {
            this.$message.success("登录成功: " + res.username);
            this.$store.commit("login", res);
            this.$router.push({ name: "container" });
          });
        }
      });
    }
  }
};
</script>

<style scoped>
.login-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  background-image: url("../assets/login-background.jpg");
  background-size: 100% 100%;
}

.form-title {
  width: 100%;
  line-height: 50px;
  text-align: center;
  font-size: 20px;
  color: #fff;
  border-bottom: 1px solid #ddd;
}

.login-form {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 350px;
  margin: -190px 0 0 -175px;
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.6);
  overflow: hidden;
}

.form-content {
  padding: 30px 30px;
}

.login-btn {
  text-align: center;
}

.login-btn button {
  width: 100%;
  height: 36px;
}

.el-radio {
  color: #fff;
}
</style>

Source code download

(CSDN 1 point download): https://download.csdn.net/download/caofeng891102/87857237
(Free access to Jiafeng brother V: java9266)

popular recommendation

Share a set of SpringBoot + Vue campus community management system for free, which is very beautiful_java1234_Xiaofeng's Blog-CSDN Blog

Share a SpringBoot flower mall management system for free, very beautiful_java1234_Xiaofeng's Blog-CSDN Blog



I wrote a set of SpringBoot+SpringSecurity+Vue permission system practical courses, and shared it with CSDN friends for free Course

, free to share with CSDN friends

Share a springboot+vue campus dormitory management system, which is very beautiful_java1234_Xiaofeng's Blog-CSDN Blog

Guess you like

Origin blog.csdn.net/caoli201314/article/details/131014351