修改teacher/index页面

master
aiyadc 5 years ago
commit f5de8ccf26

@ -0,0 +1,54 @@
<template>
<div>
<el-row class="tac" style="margin-top: 30px">
<el-col :span="24">
<el-avatar shape="square" :size="250" fit="cover"
src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"></el-avatar>
<br>
<el-link type="primary">更换头像尚未开发</el-link>
<el-menu
style="text-align: left;margin-top: 30px"
default-active="2"
class="el-menu-vertical-demo"
@open="handleOpen"
@close="handleClose">
<el-menu-item index="2" route="message">
<i class="el-icon-user"></i>
<span slot="title">我的个人信息</span>
</el-menu-item>
<el-menu-item index="3" disabled>
<i class="el-icon-document"></i>
<span slot="title">站内信尚未开发</span>
</el-menu-item>
<el-menu-item index="4" disabled>
<i class="el-icon-setting"></i>
<span slot="title">系统设置尚未开发</span>
</el-menu-item>
</el-menu>
</el-col>
</el-row>
</div>
</template>
<script>
export default {
data() {
return {}
},
methods: {
handleOpen(key, keyPath) {
console.log(key, keyPath);
},
handleClose(key, keyPath) {
console.log(key, keyPath);
}
}
}
</script>
<style scoped>
.personal-message {
margin: 200px 20% 0 20%;
}
</style>

@ -12,45 +12,54 @@
<el-submenu index="2">
<template slot="title">实验室申请</template>
<el-menu-item index="2-1" route="book" @click="$router.push('/teacher/applyLab')"></el-menu-item>
<el-menu-item index="2-2" route="myBooking" @click="$router.push('/teacher/myApplyRecord')"></el-menu-item>
<el-menu-item index="2-2" route="myBooking" @click="$router.push('/teacher/myApplyRecord')">
</el-menu-item>
</el-submenu>
<el-menu-item index="3" route="course">课程管理</el-menu-item>
<el-menu-item index="4" route="schedule" @click="$router.push('/teacher/myCourse')"></el-menu-item>
<drop-down-user user="个人中心" @back="backLogin" @goPersonal="goPersonal"></drop-down-user>
<drop-down-user :user="nickname" @back="backLogin" @goPersonal="goPersonal"></drop-down-user>
</el-menu>
</div>
</template>
<script>
import dropDownUser from "~/components/dropDownUser";
import {get} from "~/utils";
import {showSuccess} from "~/utils/dialog";
export default {
data() {
return {
activeIndex: '1'
activeIndex: '1',
nickname: ''
};
},
methods: {
handleSelect(key, keyPath) {
console.log(key, keyPath);
},
backLogin:function () {
this.$router.push('/login')
async backLogin() {
await get('lb/user/logout')
await showSuccess("退出成功", this)
setTimeout(() => {
this.$router.push('/login')
}, 1000)
},
goPersonal:function () {
goPersonal: function () {
this.$router.push('/teacher/personal')
}
},
components:{
components: {
dropDownUser
},
mounted() {
async mounted() {
this.nickname = await get('lb/user/getUserName')
}
}
</script>
<style scoped>
.nav{
.nav {
width: 100%;
}
</style>

@ -1,6 +1,6 @@
<template>
<div>
<home :names="homePrarms" user="林大池" @back="backLogin" @goPersonal="goPersonal"></home>
<home :names="homePrarms" :user="nickname" @back="backLogin" @goPersonal="goPersonal"></home>
</div>
</template>
@ -13,35 +13,44 @@
components: {
home
},
data(){
return{
homePrarms:[
{ name:'个人中心',func:()=> {
console.log(this.$router)
this.$router.push('/teacher/personal')
}},
{name:'申请实验室' ,func:()=> {
this.$router.push('/teacher/applyLab')}},
{name:'我的课表',func:()=> {
this.$router.push('/teacher/myCourse')}}
]
}
data() {
return {
nickname: '未登录',
homeParams: [
{
name: '个人中心', func: () => {
console.log(this.$router)
this.$router.push('/teacher/personal')
}
},
{
name: '申请实验室', func: () => {
this.$router.push('/teacher/applyLab')
}
},
{
name: '我的课表', func: () => {
this.$router.push('/teacher/myCourse')
}
}
]
}
},
methods:{
methods: {
async backLogin() {
await get('lb/user/logout')
await showSuccess("退出成功",this)
setTimeout(()=>{
this.$router.push('/login')
},1000)
},
goPersonal:function () {
this.$router.push('/teacher/personal')
}
},
mounted() {
console.log(this.homePrarms)
async mounted() {
this.nickname = await get('lb/user/getUserName')
console.log(this.homeParams)
}
}
</script>

@ -5,33 +5,7 @@
</el-container>
<el-container>
<el-aside width="300px">
<el-row class="tac" style="margin-top: 30px">
<el-col :span="24">
<el-avatar shape="square" :size="250" fit="cover"
src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"></el-avatar>
<br>
<el-link type="primary">更换头像尚未开发</el-link>
<el-menu
style="text-align: left;margin-top: 30px"
default-active="2"
class="el-menu-vertical-demo"
@open="handleOpen"
@close="handleClose">
<el-menu-item index="2" route="message">
<i class="el-icon-user"></i>
<span slot="title">我的个人信息</span>
</el-menu-item>
<el-menu-item index="3" disabled>
<i class="el-icon-document"></i>
<span slot="title">站内信尚未开发</span>
</el-menu-item>
<el-menu-item index="4" disabled>
<i class="el-icon-setting"></i>
<span slot="title">系统设置尚未开发</span>
</el-menu-item>
</el-menu>
</el-col>
</el-row>
<personal-aside></personal-aside>
</el-aside>
<el-main>
<personal-message></personal-message>
@ -43,9 +17,10 @@
<script>
import navBar from "~/components/teacher/navBar";
import personalMessage from "~/components/personalMessage";
import personalAside from "~/components/personalAside";
export default {
components: {personalMessage,navBar},
components: {personalMessage,navBar, personalAside},
methods: {
handleOpen(key, keyPath) {
console.log(key, keyPath);

@ -21,7 +21,7 @@ Vue.use(VueRouter);
const routes = [
{
path: "/",
redirect: '/test'
redirect: '/login'
},
{
path:'/test',

@ -28,8 +28,9 @@ async function request(url, method, data, params, header = {}) {
// -2:没有登陆
if (res.data.code === 0) {
resolve(res.data.data)
} else if (res.data.code === -2) {
reject(res.data)
} else if (res.data.code === 401) {
alert(res.data.msg+" ("+res.data.code+")")
window.location.href="/"
} else {
reject(res.data)
}

@ -1,6 +1,7 @@
package com.hzu.bookingsystem.controller;
import com.hzu.bookingsystem.VO.ResultVO;
import com.hzu.bookingsystem.dto.UserDTO;
import com.hzu.bookingsystem.bean.UserBean;
import com.hzu.bookingsystem.service.UserService;
import com.hzu.bookingsystem.utils.CookieUtil;
@ -14,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
@ -31,9 +33,6 @@ public class UserController {
@PostMapping("/login")
public ResultVO login(@RequestBody UserBean user,
HttpServletResponse response) {
System.out.println(user);
//0.加密密码
user.setPassword(MD5Util.md5Encrypt32Upper(user.getPassword()));
//1. openid去和数据库里的数据匹配
UserBean user1 = userService.findByUnameAndPwd(user.getUsername(),user.getPassword());
@ -68,7 +67,7 @@ public class UserController {
}
// 查看个人信息
// 查看当前用户个人信息
@GetMapping(value = "/getUserInfo")
public ResultVO getUserInfo(HttpServletRequest request){
Integer uId = getUIdByCookie(request);
@ -77,16 +76,34 @@ public class UserController {
return ResultVOUtil.success(user);
}
// 获取当前用户名称
@GetMapping(value = "/getUserName")
public ResultVO getUserName(HttpServletRequest request){
Integer uId = getUIdByCookie(request);
UserBean user = userService.findById(uId);
return ResultVOUtil.success(user.getNickname());
}
//创建用户
@PostMapping(value = "/addUser", consumes = "application/json")
public ResultVO addUser(@RequestBody UserBean user) {
//0.加密密码
user.setPassword(MD5Util.md5Encrypt32Upper(user.getPassword()));
userService.add(user);
return ResultVOUtil.success();
}
// 通过UID删除用户
@PostMapping(value = "/deleteUser", consumes = "application/json")
public ResultVO deleteUser(@RequestBody UserBean user){
// 查找该用户看是否存在
UserBean user1 = userService.findById(user.getUId());
if (user1 == null){
return ResultVOUtil.error(-1,"用户不存在");
}
// 删除该用户
userService.deleteById(user1.getUId());
return ResultVOUtil.success();
}
//查找用户详情
@GetMapping(value = "/findById")
public ResultVO<Map<String, UserBean>> findById(@RequestParam("uId") Integer uId) {
@ -94,6 +111,13 @@ public class UserController {
return ResultVOUtil.success(user);
}
// 查找所有用户列表
@GetMapping(value = "/getUserList")
public ResultVO getUserList(){
List<UserDTO> userList = userService.findAllUserInfo();
return ResultVOUtil.success(userList);
}
/**
*
* @param user

@ -0,0 +1,22 @@
package com.hzu.bookingsystem.converter;
import com.hzu.bookingsystem.bean.UserBean;
import com.hzu.bookingsystem.dto.UserDTO;
import org.springframework.beans.BeanUtils;
import java.util.List;
import java.util.stream.Collectors;
public class UserBean2UserDTO {
public static UserDTO convert(UserBean user) {
UserDTO userDTO = new UserDTO();
BeanUtils.copyProperties(user, userDTO);
return userDTO;
}
public static List<UserDTO> convert(List<UserBean> userList) {
return userList.stream().map(UserBean2UserDTO::convert)
.collect(Collectors.toList());
}
}

@ -0,0 +1,35 @@
package com.hzu.bookingsystem.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.*;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity
@Table(name = "tb_user")
public class UserDTO {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
// 用户ID
private Integer uId;
// 用户姓名
private String nickname;
// 联系电弧
private String tel;
// email
private String email;
//用户名(工号)
private String username;
//办公室地点
private String office;
}

@ -16,6 +16,6 @@ public class GlobalExceptionHandler {
@ExceptionHandler(value = UserAuthorizeException.class)
@ResponseBody
public ResultVO handlerAuthorizeException(HttpServletRequest servletRequest,Exception e) {
return ResultVOUtil.error(403,e.getMessage());
return ResultVOUtil.error(401,e.getMessage());
}
}

@ -1,6 +1,7 @@
package com.hzu.bookingsystem.service;
import com.hzu.bookingsystem.dto.UserDTO;
import com.hzu.bookingsystem.bean.UserBean;
import java.util.List;
@ -51,4 +52,10 @@ public interface UserService {
* @return
*/
UserBean findByUnameAndPwd(String username, String password);
/**
*
* @return
*/
List<UserDTO> findAllUserInfo();
}

@ -1,8 +1,11 @@
package com.hzu.bookingsystem.service.impl;
import com.hzu.bookingsystem.converter.UserBean2UserDTO;
import com.hzu.bookingsystem.dto.UserDTO;
import com.hzu.bookingsystem.bean.UserBean;
import com.hzu.bookingsystem.repository.UserRepository;
import com.hzu.bookingsystem.service.UserService;
import com.hzu.bookingsystem.utils.MD5Util;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@ -18,7 +21,10 @@ public class UserServiceImpl implements UserService {
@Override
public UserBean add(UserBean user) {
// 1.保证ID为空
user.setUId(null);
// 2.加密密码
user.setPassword(MD5Util.md5Encrypt32Upper(user.getPassword()));
return userRepository.save(user);
}
@ -45,6 +51,15 @@ public class UserServiceImpl implements UserService {
@Override
public UserBean findByUnameAndPwd(String username, String password) {
// 加密密码
password = MD5Util.md5Encrypt32Upper(password);
return userRepository.findByUsernameAndPassword(username,password);
}
@Override
public List<UserDTO> findAllUserInfo() {
List<UserBean> userBeanList = userRepository.findAll();
return UserBean2UserDTO.convert(userBeanList);
}
}

@ -1,11 +1,15 @@
package com.hzu.bookingsystem;
import com.hzu.bookingsystem.bean.UserBean;
import com.hzu.bookingsystem.dto.UserDTO;
import com.hzu.bookingsystem.service.UserService;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class BookingsystemApplicationTests {
@ -20,13 +24,14 @@ class BookingsystemApplicationTests {
public void test(){
UserBean user = new UserBean();
user.setUsername("123456");
user.setNickname("吴志岳");
user.setEmail("274129947@qq.com");
user.setPassword("123456123weqwe");
user.setOffice("5#101qwe");
// System.out.println(userService.findAll());
user.setNickname("莫家豪");
user.setEmail("@qq.com");
user.setPassword("123456");
user.setOffice("18#");
userService.add(user);
// userService.save(user);
// userService.deleteById(1);
List<UserDTO> userDTOList = userService.findAllUserInfo();
System.out.println(userDTOList);
}
}

Loading…
Cancel
Save