完善教师模块和超级管理员的新增组件

master
aiyadc 5 years ago
commit 0323574b37

@ -6,19 +6,20 @@
<div class="personal-message">
<!-- 未编辑状态-->
<el-form :model="data" label-width="100px" class="demo-ruleForm">
<el-form-item label="工号" prop="name">
<el-form-item label="工号" prop="username">
<el-input v-model="data.username" disabled></el-input>
</el-form-item>
<el-form-item label="姓名" prop="name">
<el-form-item label="姓名" prop="nickname" :rules="[{ required: true, message: '请输入姓名', trigger: 'blur' }]">
<el-input v-model="data.nickname" :disabled="!edit"></el-input>
</el-form-item>
<el-form-item label="联系电话" prop="name">
<el-form-item label="联系电话" prop="tel" :rules="[{ required: true, message: '请输入联系电话', trigger: 'blur' }]">
<el-input v-model="data.tel" :disabled="!edit"></el-input>
</el-form-item>
<el-form-item label="办公室" prop="name">
<el-form-item label="办公室" prop="office" :rules="[{ required: true, message: '请输入办公室', trigger: 'blur' }]">
<el-input v-model="data.office" :disabled="!edit"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="name">
<el-form-item label="邮箱" prop="email" :rules="[{ required: true, message: '', trigger: 'blur' },
{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }]">
<el-input v-model="data.email" :disabled="!edit"></el-input>
</el-form-item>
<el-form-item v-if="edit">

@ -0,0 +1,133 @@
<template>
<div>
<el-dialog
:visible.sync="addLabDialog"
width="48%">
<div style="width: 100%;height: 120% ">
<el-form :model="form">
<el-row>
<el-col style="width:45%">
<el-form-item label="位置" style="">
<el-input v-model="form.position" placeholder="位置" class="position" style="width:70%;border-style: outset "></el-input>
</el-form-item>
</el-col>
<el-col style="width:45% ;">
<el-form-item label="地址" style="">
<el-input v-model="form.status" placeholder="地址id" style="width:60% ;left:10%;border-style: outset" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col style="width:45%">
<el-form-item label="实验室id" style="">
<el-input v-model="form.labId" placeholder="请输入id" style="width:70%;left: -5%;border-style: outset"></el-input>
</el-form-item>
</el-col>
<el-col style="width:45%">
<el-form-item label="实验室名称" style="">
<el-select v-model="form.name" style="border-style: outset;width: 60%;left: 3%" >
<el-option value="509"></el-option>
<el-option value="2"></el-option>
<el-option value="3"></el-option>
<el-option value="4"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col style="width:45%">
<el-form-item label="状态"style="">
<el-select v-model="form.status" style="border-style: outset;" >
<el-option label="可预约" value="0"></el-option>
<el-option label="不可预约" value="1"></el-option>
<el-option label="故障" value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col style="width:45%">
<el-form-item label="可容量认人数"style="">
<el-input v-model="form.capacity" placeholder="输入数量" style="width:60%;border-style: outset"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col style="width:45%">
<el-form-item label="管理员"style="">
<el-input v-model="form.manager" placeholder="管理员" style="width:70%;left: -1%;;border-style: outset"></el-input>
</el-form-item>
</el-col>
<el-col style="width:45%">
<el-form-item label="管理员id"style="">
<el-input v-model="form.managerId" placeholder="管理员id" style="width:60%;left:6%;border-style: outset"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="可申请时间段"style="">
<el-input v-model="form.managerId" placeholder="点击编辑" style="width:80%" @focus="detailTime"></el-input>
</el-form-item>
<el-button type="success" style="width: 120px;text-align: left" icon="el-icon-circle-plus-outline"
@click="showAddLab">新增
</el-button>
</el-form>
</div>
</el-dialog>
<el-dialog :visible="setLabTimeDialog" >
<set-lab-time ref="setLabTime"></set-lab-time>
<span slot="footer" class="dialog-footer">
<el-button @click="cancleSetTime"> </el-button>
<el-button type="primary" @click="setTime"> </el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import setLabTime from "~/components/supManager/setLabTime";
export default {
name:"addLab",
components:{
setLabTime
},
data(){
return{
setLabTimeDialog:false,
addLabDialog:false,
form:{
position:'',
address:'',
labId:'',
name:'509',
status:'0',
capacity:'',
manager:'',
managerId:'',
schedule:[] //
},
}
},
methods:{
showAddLab(){
this.addLabDialog=false
},
detailTime(){
this.setLabTimeDialog=true
this.form.schedule=[]
},
cancleSetTime(){
this.setLabTimeDialog=false
this.$refs.setLabTime.allWeeksValue=[]
},
setTime(){
this.setLabTimeDialog=false
var st=this.$refs.setLabTime
this.form.schedule.push(st.form.year,st.form.semester,st.allWeeksValue)
console.log(this.form.schedule)
}
}
}
</script>
<style>
</style>

@ -0,0 +1,15 @@
<template>
<div>
这是审核页面
</div>
</template>
<script>
export default {
name:'check'
}
</script>
<style>
</style>

@ -0,0 +1,218 @@
<template>
<div style="width: 100%" >
<el-form :model="form" :inline="true">
<el-form-item label="类型" style="width: 20% ">
<el-select v-model="form.type" style="border-style: outset;" >
<el-option label="安卓实验室" value="0"></el-option>
<el-option label="window实验室" value="1"></el-option>
<el-option label="ios实验室" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="位置" style="width: 20% ;">
<el-select v-model="form.position" style="border-style: outset;" >
<el-option label="旭日楼" value="0"></el-option>
<el-option label="电子楼" value="1"></el-option>
<el-option label="实训楼" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="状态" style="width: 20%">
<el-select v-model="form.status" style="border-style: outset;" >
<el-option label="可预约" value="0"></el-option>
<el-option label="不可预约" value="1"></el-option>
<el-option label="故障" value="2"></el-option>
</el-select>
</el-form-item >
<el-input v-model="search" placeholder="输入关键字搜索" suffix-icon="el-icon-search" style="width: 20%;border-style: outset;"/>
<el-button type="success" style="width: 6%;text-align: left" icon="el-icon-circle-plus-outline"
@click="showAddLab" >新增
</el-button>
<el-button type="success" style="width: 8%;text-align: left" icon="el-icon-circle-plus-outline" @click="showAddLab" >批量操作
</el-button>
</el-form>
<el-form :model="time" :inline="true" style="width: 100%">
<span style="width: 10% ;:-20px">可预约时间段:
</span>
<el-form-item label="学年" style="width: 20% ;">
<el-select v-model="time.year" style="border-style: outset;" >
<el-option label="2017-2018" value="0"></el-option>
<el-option label="2018-2019" value="1"></el-option>
<el-option label="2019-2020" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="学期" style="width: 20%">
<el-select v-model="time.semester" style="border-style: outset;" >
<el-option label="第一学期" value="0"></el-option>
<el-option label="第二学期" value="1"></el-option>
</el-select>
</el-form-item >
<el-form-item label="周次" style="width: 5%">
</el-form-item >
<el-select v-model="time.day1" style="border-style: outset;;width:5%" >
<el-option label="1" value="0"></el-option>
<el-option label="2" value="1"></el-option>
<el-option label="3" value="0"></el-option>
<el-option label="4" value="1"></el-option>
<el-option label="5" value="0"></el-option>
<el-option label="6" value="1"></el-option>
<el-option label="7" value="0"></el-option>
</el-select>
<span></span>
<el-select v-model="time.day2" style="border-style: outset;;width: 5%" >
<el-option label="1" value="0"></el-option>
<el-option label="2" value="1"></el-option>
<el-option label="3" value="0"></el-option>
<el-option label="4" value="1"></el-option>
<el-option label="5" value="0"></el-option>
<el-option label="6" value="1"></el-option>
<el-option label="7" value="0"></el-option>
</el-select>
<el-form-item label="星期几" style="width: 5%">
</el-form-item >
<el-select v-model="time.day1" style="border-style: outset;;width: 10%" >
<el-option label="星期一" value="0"></el-option>
<el-option label="星期二" value="1"></el-option>
<el-option label="星期三" value="0"></el-option>
<el-option label="星期四" value="1"></el-option>
<el-option label="星期五" value="0"></el-option>
<el-option label="星期六" value="1"></el-option>
<el-option label="星期七" value="0"></el-option>
</el-select>
<el-button type="success" style="width: 6%;text-align: left" icon="el-icon-circle-plus-outline"
@click="showAddLab" >检索
</el-button>
</el-form>
<el-table
:data="tableData"
border
>
<el-table-column
prop="name"
label="实验室名称"
>
</el-table-column>
<el-table-column
prop="address"
label="地点"
>
</el-table-column>
<el-table-column
prop="status"
label="状态"
>
</el-table-column>
<el-table-column
prop="week"
label="可申请周次"
>
</el-table-column>
<el-table-column
prop="manage"
label="管理员"
>
</el-table-column>
<el-table-column
label="操作"
width="300px"
>
<template slot-scope="scope">
<el-button @click="" style="border: lightpink solid 1px " size="small">查看申请详情</el-button>
<el-button @click="" size="small">详细信息</el-button>
<el-button @click="" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
<add-lab ref="addLab"></add-lab>
</div>
</template>
<script>
import addLab from "~/components/supManager/addLab" ;
import {get, post} from "~/utils";
import {showDialog, showFail, showSuccess} from "~/utils/dialog";
export default {
components:{addLab},
data(){
return{
edit:"",
form:{
type:'0',
position:'0',
status:'0',
},
time:{
year:'0',
week:'0',
day1:"0",
day2:"16",
semester:'0'
},
search:'',
tableData:[
{ name:"aaaa" , address:"509"}
],
}
},
methods:{
showAddLab(){
console.log(this.$refs.addLab)
this.$refs.addLab.addLabDialog=true
this.$router.push('/supManager/index/labManager')
},
//
// async editLab(item) {
// //
// this.edit = !!item
// this.userForm = item ? item : {
// nickname: "",
// tel: "",
// email: "",
// username: "",
// office: "",
// position: ''
// }
// //
// this.dialogFormVisible = true
// },
},
computed: {
// tableDataComputed() {
// return this.tableData.filter(data => !this.search
// || data.username.toLowerCase().includes(this.search.toLowerCase())
// || data.tel.toLowerCase().includes(this.search.toLowerCase())
// || data.nickname.toLowerCase().includes(this.search.toLowerCase())
// || data.office.toLowerCase().includes(this.search.toLowerCase())
// || data.email.toLowerCase().includes(this.search.toLowerCase())
// )
// },
},
mounted() {
// this.tableData=get('/url')
}
}
</script>
<style>
</style>

@ -1,10 +1,8 @@
<template>
<div>
<el-dialog :visible="setLabTimeDialog" title="设置时间段" width="40rem">
<el-form :model="form">
<el-form-item label="学年:">
<el-select v-model="form.year" size="small">
<el-select v-model="form.year" size="small" >
<el-option
v-for="item in selectOptions1"
:key="item.value"
@ -15,7 +13,7 @@
</el-select>
</el-form-item>
<el-form-item label="学期:">
<el-select v-model="form.semester" size="small">
<el-select v-model="form.semester" size="small" >
<el-option
v-for="item in selectOptions2"
:key="item.value"
@ -30,7 +28,7 @@
<el-input v-model="form.time" @focus="showCourseDialog" placeholder="点我设置" style="width: 200px" >点击设置</el-input>
</el-form-item>
</el-form>
</el-dialog>
<!-- 表格节数选择-->
<el-dialog :visible.sync="courseDialog" append-to-body :close-on-click-modal="false" v-if="tableAlive" >
<tb_course :cClick="cellClick" :cStyle="cellStyle" table-label="" ref="times"></tb_course>
@ -40,7 +38,7 @@
</span>
</el-dialog>
<!-- checkbox:周次选择-->
<el-dialog :visible.sync="weekDialog" title="请选择周数" width="400px" :close-on-click-modal="false" >
<el-dialog :visible.sync="weekDialog" title="请选择周数" width="400px" :close-on-click-modal="false" append-to-body>
<week-selection @add="addWeek" @cancel="cancelSelection" ref="weekSelection" ></week-selection>
</el-dialog>
</div>
@ -57,27 +55,26 @@
data(){
return{
form:{
year:'',
semester:'',
year:2019,
semester:2,
time:"",
},
allWeeksValue:[],
aWeekValue:[],
courseDialog:false,
tableAlive:false, //
setLabTimeDialog:true,
weekDialog:false,
selectOptions1: [
{
value: '1718',
value: 2017,
label: '2017-2018年'
},
{
value: '1819',
value: 2018,
label: '2018-2019年'
},
{
value: '1920',
value: 2019,
label: '2019-2020年'
}
],
@ -177,7 +174,7 @@
this.formDialog=true
console.log(this.allWeeksValue)
this.tableAlive=false //
},
}
}
}
</script>

@ -41,15 +41,15 @@
semester: 2,
selectOptions1: [
{
value: '1718',
value: '2017',
label: '2017-2018年'
},
{
value: '1819',
value: '2018',
label: '2018-2019年'
},
{
value: '1920',
value: '2019',
label: '2019-2020年'
}
],
@ -70,7 +70,7 @@
this.$emit('selectYear')
},
selectSemester() {
this.$emit('semester')
this.$emit('selectSemester')
},
}
}

@ -311,7 +311,7 @@
}
},
//mouted
mounted() {
async mounted() {
this.courseOption = get('',this.u_id) //id
//
this.courseOption=[{
@ -329,7 +329,7 @@
console.log('this is mouted')
console.log(this.$refs.weekSelection)
var d = new Date()
this.tableData = await get('/lb/lab/getLabList')
}
}
</script>

@ -1,7 +1,7 @@
<template>
<div>
<nav-bar></nav-bar>
<time-select style="margin-top: 20px" ref="timeSelect" @selectYear="selectYear" @selectSemester="selectSemester"></time-select>
<time-select style="margin-top: 20px" ref="timeSelect" @selectYear="load" @selectSemester="load"></time-select>
<div style="margin-bottom: 10px">
<el-row :gutter="20">
<el-col :span="2">
@ -22,7 +22,14 @@
<el-table-column label="软件名称" prop="software"></el-table-column>
<el-table-column label="授课班级" prop="classes"></el-table-column>
<el-table-column label="授课人数" prop="population"></el-table-column>
<el-table-column label="是否有课件" prop="isHaveDocuments"></el-table-column>
<el-table-column label="是否有课件" prop="ishavedocuments" align="center">
<template slot-scope="scope">
<el-tag
:type="scope.row.ishavedocuments === 0 ? 'danger' : 'success'"
disable-transitions>{{scope.row.ishavedocuments === 1 ? '有课件' : '无课件'}}
</el-tag>
</template>
</el-table-column>
<el-table-column label="备注" prop="remind"></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
@ -65,7 +72,6 @@
:key="item.value"
:label="item.label"
:value="item.value"
@click.native="selectSemester"
>
</el-option>
</el-select>
@ -87,14 +93,14 @@
:rules="{ required: true, message: '此处不可为空', trigger: 'blur' }">
<el-input v-model="courseForm.population"></el-input>
</el-form-item>
<el-form-item label="是否有课件" prop="isHaveDocuments"
<el-form-item label="是否有课件" prop="ishavedocuments"
:rules="{ required: true, message: '此处不可为空', trigger: 'blur' }">
<el-select v-model="courseForm.isHaveDocuments">
<el-option label="是" value='1'></el-option>
<el-option label="否" value='0'></el-option>
<el-select v-model="courseForm.ishavedocuments">
<el-option label="是" :value=1></el-option>
<el-option label="否" :value=0></el-option>
</el-select>
</el-form-item>
<el-form-item label="备注" prop="remind" :rules="{ required: true, message: '此处不可为空', trigger: 'blur' }">
<el-form-item label="备注" prop="remind"">
<el-input v-model="courseForm.remind"></el-input>
</el-form-item>
</el-form>
@ -129,7 +135,7 @@
software: 'Webstorm',
classes: '6班',
population: '41',
isHaveDocuments: '1',
ishavedocuments: 1,
remind: '无',
}],
courseForm: {
@ -140,7 +146,7 @@
software: '',
classes: '',
population: '',
isHaveDocuments: '',
ishavedocuments: 0,
remind: '',
},
selectOptions1: [
@ -174,12 +180,6 @@
async load() {
this.tableData = await get('lb/usercourse/findbyyearandsemester/'+this.$refs.timeSelect.year+'/'+this.$refs.timeSelect.semester)
},
selectYear(){
this.tableData = get('lb/course/selectYear',this.$refs.timeSelect.year)
},
selectSemester(){
this.tableData = get('lb/course/selectSemester',this.$refs.timeSelect.semester)
},
//
addCourse() {
this.edit = 0
@ -221,7 +221,7 @@
classes: this.courseForm.classes,
population: parseInt(this.courseForm.population),
remind: this.courseForm.remind,
isHaveDocuments: this.courseForm.isHaveDocuments
ishavedocuments: this.courseForm.ishavedocuments
}).catch(async e => {
await showFail(e.msg, this)
await stop()
@ -240,7 +240,7 @@
classes: this.courseForm.classes,
population: parseInt(this.courseForm.population),
remind: this.courseForm.remind,
isHaveDocuments: this.courseForm.isHaveDocuments
ishavedocuments: this.courseForm.ishavedocuments
}).catch(async e => {
await showFail(e.msg, this)
await stop()

@ -1,6 +1,7 @@
import Vue from "vue";
import VueRouter from "vue-router";
// 引入组件
import test from "~/pages/test";
import teacher from "~/pages/teacher/index";
@ -20,7 +21,8 @@ import supIndex from "~/components/supManager/index";
import globalPersonal from "~/components/personal";
import userManage from "~/components/supManager/userManage";
import setLabTime from "~/components/supManager/setLabTime";
import labManager from "~/components/supManager/labManage";
import check from "~/components/supManager/check";
// 要告诉 vue 使用 vueRouter
Vue.use(VueRouter);
@ -96,6 +98,14 @@ const routes = [
{
path: 'userManage',
component: userManage
},
{
path:'labManager',
component:labManager
},
{
path:'check',
component:check
}
]
}

@ -63,6 +63,12 @@
<artifactId>gson</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>1.1.2-beta5</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>

@ -1,6 +1,9 @@
package com.hzu.bookingsystem.bean;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.*;
import java.util.Date;
@ -9,6 +12,9 @@ import java.util.Date;
*/
@Data
@Entity
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Table(name = "tb_lab_time")
public class LabTimeBean {
@Id
@ -25,19 +31,19 @@ public class LabTimeBean {
private String year;
// 学期
private String semester;
private Integer semester;
// 几周
private String week;
private Integer week;
// 周几
private String day;
private Integer day;
// 第几节课
private String time;
private Integer time;
// 状态
private String status;
private Integer status;
//备注
private String remind;
@ -78,43 +84,43 @@ public class LabTimeBean {
this.year = year;
}
public String getSemester() {
public Integer getSemester() {
return semester;
}
public void setSemester(String semester) {
public void setSemester(Integer semester) {
this.semester = semester;
}
public String getWeek() {
public Integer getWeek() {
return week;
}
public void setWeek(String week) {
public void setWeek(Integer week) {
this.week = week;
}
public String getDay() {
public Integer getDay() {
return day;
}
public void setDay(String day) {
public void setDay(Integer day) {
this.day = day;
}
public String getTime() {
public Integer getTime() {
return time;
}
public void setTime(String time) {
public void setTime(Integer time) {
this.time = time;
}
public String getStatus() {
public Integer getStatus() {
return status;
}
public void setStatus(String status) {
public void setStatus(Integer status) {
this.status = status;
}

@ -10,6 +10,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -20,27 +22,29 @@ public class LabTimeController {
@Autowired
private LabTimeService labTimeService;
@Autowired
private UserController userController;
//创建实验室可预约时间段
@PostMapping(value = "/addLabTime" , consumes = "application/json")
public ResultVO addLabTime(@RequestBody Map<String,Object> map){
@PostMapping(value = "/addLabTime", consumes = "application/json")
public ResultVO addLabTime(@RequestBody Map<String, Object> map) {
//转换对象
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map,LabTimeBean.class);
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
System.out.println(labTime1);
//查重
if(labTimeService.findByTime(labTime1.getTime()) != null)
{
return ResultVOUtil.error(-1,"该时间段已存在");
if (labTimeService.findByTime(labTime1.getTime()) != null) {
return ResultVOUtil.error(-1, "该时间段已存在");
}
labTimeService.add(labTime1);
return ResultVOUtil.success();
}
//通过ltId删除实验室可预约时间段
@PostMapping(value = "/deleteLabTime" , consumes = "application/json")
public ResultVO deleteLabTime(@RequestBody LabTimeBean labTime){
@PostMapping(value = "/deleteLabTime")
public ResultVO deleteLabTime(@RequestBody LabTimeBean labTime) {
//查找实验室是否存在
LabTimeBean labTime1 = labTimeService.findByLtId(labTime.getLtId());
if(labTime1 == null) {
if (labTime1 == null) {
return ResultVOUtil.error(-1, "该时间段不存在");
} else {
labTimeService.deleteByLtId(labTime1.getLabId());
@ -49,31 +53,109 @@ public class LabTimeController {
}
//修改实验室可预约时间段
@PostMapping(value = "/updateLabTime" , consumes = "application/json")
public ResultVO updateLabTime(@RequestBody Map<String,Object> map , HttpServletRequest request){
@PostMapping(value = "/updateLabTimeOld", consumes = "application/json")
public ResultVO updateLabTimeOld(@RequestBody Map<String, Object> map, HttpServletRequest request) {
//转换对象
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map,LabTimeBean.class);
if(labTime1.getLtId() == null){
return ResultVOUtil.error(-1,"该实验室不存在,无法修改");
LabTimeBean labTime1 = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
if (labTime1.getLtId() == null) {
return ResultVOUtil.error(-1, "该实验室不存在,无法修改");
} else {
labTimeService.update(labTime1);
}
return ResultVOUtil.success();
}
//查找实验室
@GetMapping(value = "/findByLabIdTime" , consumes = "application/json")
public ResultVO<Map<String,Object>> findByLabTimeId(@RequestParam("LabTimeId") Integer labTimeId){
LabTimeBean labTime1 = labTimeService.findByLtId(labTimeId);
//通过ltId查找实验室预约时间段
@GetMapping(value = "/findLabTimeById")
public ResultVO<Map<String, Object>> findLabTimeById(@RequestParam("ltId") Integer lt_id) {
LabTimeBean labTime1 = labTimeService.findByLtId(lt_id);
System.out.println(labTime1);
return ResultVOUtil.success(labTime1);
}
//查找所有实验室列表
@GetMapping(value = "/getLabListTime")
public ResultVO getLabTimeList(){
List<LabTimeDTO> labTimeList = labTimeService.findAllLabInfo();
return ResultVOUtil.success(labTimeList);
//查找实验室预约周次(包含已预约)
// author 吴志岳
@GetMapping(value = "/getWeeks")
public ResultVO findLabTimeByLabIdAndYearAndSemester(@RequestParam("labId") Integer lab_id,
@RequestParam("year") String year,
@RequestParam("semester") Integer semester,
@RequestParam("day") Integer day,
@RequestParam("time") Integer time) {
List<Integer> weeks = labTimeService.findWeeks(lab_id, year, semester, day, time);
return ResultVOUtil.success(weeks);
}
//查找实验室可预约周次(不包含已预约)
// author 吴志岳
@GetMapping(value = "/getWeeksAbleBook")
public ResultVO findLabTimeByLabIdAndYearAndSemesterAbleBook(@RequestParam("labId") Integer lab_id,
@RequestParam("year") String year,
@RequestParam("semester") Integer semester,
@RequestParam("day") Integer day,
@RequestParam("time") Integer time) {
List<Integer> weeks = labTimeService.findWeeksAble(lab_id, year, semester, day, time);
return ResultVOUtil.success(weeks);
}
//修改实验室可预约时间段
@PostMapping(value = "/updateLabTime", consumes = "application/json")
public ResultVO updateLabTime(@RequestBody Map<String, Object> map, HttpServletRequest request) {
//1. 转换对象,初始化对象,定义时间段
LabTimeBean labTime = (LabTimeBean) Map2Object.map2Object(map, LabTimeBean.class);
labTime.setCreatorId(userController.getUIdByCookie(request));
labTime.setCreateTime(new Date());
labTime.setStatus(0);
// 用户发起的修改请求
List<Integer> weeks = (List<Integer>)map.get("weeks");
// 实验室预约时间段
List<Integer> weeksAll = labTimeService.findWeeks(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime());
// 实验室可预约时间段
List<Integer> weeksAble = labTimeService.findWeeksAble(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime());
// 实验室不可变换或不可选取的时间段
List<Integer> weeksDisable = new ArrayList<>(weeksAll);
weeksDisable.removeAll(weeksAble);
// 如果请求weeks中不包含不可选取的时间段报错
if (!weeks.containsAll(weeksDisable)){
return ResultVOUtil.error(-1,"已被预约的时间段无法去除");
}
// 2. 数据处理
// 需要insert的weeks
List<Integer> weekInsert = new ArrayList<>(weeks);
weekInsert.removeAll(weeksAll);
// 需要delete的weeks
List<Integer> weekDelete = new ArrayList<>(weeksAll);
weekDelete.removeAll(weeks);
// 3.批量删除
List<LabTimeBean> labTimeBeans = labTimeService.findTimes(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime());
labTimeBeans.removeIf(labTimeBean -> !weekDelete.contains(labTimeBean.getWeek()));
for (LabTimeBean labTimeBean : labTimeBeans){
labTimeService.deleteByLtId(labTimeBean.getLtId());
}
// 4.批量插入
for (int i : weekInsert){
LabTimeBean temp = LabTimeBean.builder().labId(labTime.getLabId())
.year(labTime.getYear())
.semester(labTime.getSemester())
.week(i)
.day(labTime.getDay())
.time(labTime.getTime())
.createTime(labTime.getCreateTime())
.creatorId(labTime.getCreatorId())
.status(labTime.getStatus())
.build();
labTimeService.add(temp);
}
System.out.println("用户请求"+weeks);
System.out.println("原来有的"+weeksAll);
System.out.println("要插入的"+weekInsert);
System.out.println("要删除的"+weekDelete);
return ResultVOUtil.success(labTimeService.findWeeks(labTime.getLabId(),labTime.getYear(),labTime.getSemester(),labTime.getDay(),labTime.getTime()));
}
}

@ -22,6 +22,7 @@ import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
@RestController
@CrossOrigin
@RequestMapping("/user")
@ -35,13 +36,13 @@ public class UserController {
// 登录
@PostMapping("/login")
public ResultVO login(@RequestBody UserBean user,
HttpServletResponse response) {
HttpServletResponse response) {
//1. openid去和数据库里的数据匹配
UserBean user1 = userService.findByUnameAndPwd(user.getUsername(),user.getPassword());
UserBean user1 = userService.findByUnameAndPwd(user.getUsername(), user.getPassword());
System.out.println(user1);
if (user1 == null) {
return ResultVOUtil.error(-2,"账号或密码不正确");
return ResultVOUtil.error(-2, "账号或密码不正确");
}
//2. 设置token至redis
@ -57,13 +58,13 @@ public class UserController {
// 登出
@GetMapping("/logout")
public ResultVO logout(HttpServletRequest request,
HttpServletResponse response) {
HttpServletResponse response) {
//1. 从cookie里查询
Cookie cookie = CookieUtil.get(request, "token");
if (cookie != null) {
//2. 清除redis
//2. 清除redis
redisTemplate.opsForValue().getOperations().delete(cookie.getValue());
//3. 清除cookie
//3. 清除cookie
CookieUtil.set(response, "token", null, 0);
}
return ResultVOUtil.success();
@ -72,7 +73,7 @@ public class UserController {
// 查看当前用户个人信息
@GetMapping(value = "/getUserInfo")
public ResultVO getUserInfo(HttpServletRequest request){
public ResultVO getUserInfo(HttpServletRequest request) {
Integer uId = getUIdByCookie(request);
UserBean user = userService.findById(uId);
user.setPassword(null);
@ -81,7 +82,7 @@ public class UserController {
// 获取当前用户名称
@GetMapping(value = "/getUserName")
public ResultVO getUserName(HttpServletRequest request){
public ResultVO getUserName(HttpServletRequest request) {
Integer uId = getUIdByCookie(request);
UserBean user = userService.findById(uId);
return ResultVOUtil.success(user.getNickname());
@ -89,24 +90,24 @@ public class UserController {
//创建用户
@PostMapping(value = "/addUser", consumes = "application/json")
public ResultVO addUser(@RequestBody Map<String,Object> map) {
public ResultVO addUser(@RequestBody Map<String, Object> map) {
// 0.转换对象
UserBean user = (UserBean) Map2Object.map2Object(map,UserBean.class);
UserBean user = (UserBean) Map2Object.map2Object(map, UserBean.class);
// 1.查重
if (userService.findByUserame(user.getUsername()) != null)
return ResultVOUtil.error(-1,"该工号已存在!");
return ResultVOUtil.error(-1, "该工号已存在!");
// 2.插入
userService.add(user,(Integer)map.get("position"));
userService.add(user, (Integer) map.get("position"));
return ResultVOUtil.success();
}
// 通过UID删除用户
@PostMapping(value = "/deleteUser", consumes = "application/json")
public ResultVO deleteUser(@RequestBody UserBean user){
public ResultVO deleteUser(@RequestBody UserBean user) {
// 查找该用户看是否存在
UserBean user1 = userService.findById(user.getUId());
if (user1 == null){
return ResultVOUtil.error(-1,"用户不存在");
if (user1 == null) {
return ResultVOUtil.error(-1, "用户不存在");
}
// 删除该用户
userService.deleteById(user1.getUId());
@ -122,23 +123,24 @@ public class UserController {
// 查找所有用户列表
@GetMapping(value = "/getUserList")
public ResultVO getUserList(){
public ResultVO getUserList() {
List<UserDTO> userList = userService.findAllUserInfo();
return ResultVOUtil.success(userList);
}
/**
*
*
* @param user
* @param request
* @return
*/
@PostMapping(value = "/updateBySelf", consumes = "application/json")
public ResultVO updateBySelf(@RequestBody UserBean user,
HttpServletRequest request){
HttpServletRequest request) {
Integer uId = getUIdByCookie(request);
if (uId == null){
return ResultVOUtil.error(-1,"未找到该用户ID");
if (uId == null) {
return ResultVOUtil.error(-1, "未找到该用户ID");
}
UserBean old = userService.findById(uId);
user.setUId(uId);
@ -150,28 +152,30 @@ public class UserController {
/**
*
*
* @param map
* @param request
* @return
*/
@PostMapping(value = "/updateUser", consumes = "application/json")
public ResultVO updateUser(@RequestBody Map<String,Object> map,
HttpServletRequest request){
public ResultVO updateUser(@RequestBody Map<String, Object> map,
HttpServletRequest request) {
// 转换对象
UserBean user = (UserBean) Map2Object.map2Object(map,UserBean.class);
if (user.getUId() == null){
return ResultVOUtil.error(-1,"未找到该用户ID");
UserBean user = (UserBean) Map2Object.map2Object(map, UserBean.class);
if (user.getUId() == null) {
return ResultVOUtil.error(-1, "未找到该用户ID");
}
UserBean old = userService.findById(user.getUId());
user.setUId(user.getUId());
user.setPassword(old.getPassword());
user.setUsername(old.getUsername());
userService.update(user,(Integer) map.get("position"));
userService.update(user, (Integer) map.get("position"));
return ResultVOUtil.success();
}
/**
* cookieUid
*
* @param request
* @return
*/

@ -6,9 +6,15 @@ import java.util.Date;
@Data
public class LabDTO {
private Integer labId;
private Integer lab_id;
// 管理员uID
private Integer managerId;
private Integer manager_id;
// 管理员姓名
private String nickname;
// 管理员联系电话
private String tel;
// 实验室名称
private String name;
@ -21,8 +27,4 @@ public class LabDTO {
// 实验室含有的软件(逗号隔开)
private String software;
private Date createTime;
private Date updateTime;
}

@ -18,19 +18,19 @@ public class LabTimeDTO {
private String year;
// 学期
private String semester;
private Integer semester;
// 几周
private String week;
private Integer week;
// 周几
private String day;
private Integer day;
// 第几节课
private String time;
private Integer time;
// 状态
private String status;
private Integer status;
//备注
private String remind;

@ -24,11 +24,11 @@ public class UserAuthorizeAspect {
@Autowired
private StringRedisTemplate redisTemplate;
// @Pointcut("execution(public * com.hzu.bookingsystem.controller.*.*(..))" +
// "&& !execution(public * com.hzu.bookingsystem.controller.UserController.login(..))" +
// "&& !execution(public * com.hzu.bookingsystem.controller.UserController.logout(..))")
@Pointcut(
"execution(public * com.hzu.bookingsystem.controller.UserController.getUserList(..))")
@Pointcut("execution(public * com.hzu.bookingsystem.controller.*.*(..))" +
"&& !execution(public * com.hzu.bookingsystem.controller.UserController.login(..))" +
"&& !execution(public * com.hzu.bookingsystem.controller.UserController.logout(..))")
// @Pointcut(
// "execution(public * com.hzu.bookingsystem.controller.UserController.getUserList(..))")
public void verify() {}
@Before("verify()")

@ -24,6 +24,7 @@ public interface LabRecordRepository extends JpaRepository<LabRecordBean,String>
void deleteBylrId(Integer lt_id);
List<LabRecordBean> findByUcIdAndStatus(Integer uc_id , Integer status);

@ -3,6 +3,7 @@ package com.hzu.bookingsystem.repository;
import com.hzu.bookingsystem.bean.LabTimeBean;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
@ -44,14 +45,44 @@ public interface LabTimeRepository extends JpaRepository<LabTimeBean,String> {
* @param time
* @return
*/
LabTimeBean findByTime(String time);
LabTimeBean findByTime(Integer time);
/**
*
*
* @param lab_idyearsemester
* @return
*/
@Query(value = "SELECT " +
" tb_lab_time.* " +
"FROM " +
"tb_lab_time LEFT JOIN tb_lab_record ON tb_lab_time.lt_id=tb_lab_record.lt_id " +
"WHERE " +
" tb_lab_time.lab_id = ?1 AND " +
" tb_lab_time.`year` = ?2 AND " +
" tb_lab_time.semester = ?3 AND " +
" tb_lab_time.`day` = ?4 AND " +
" tb_lab_time.time = ?5 AND " +
"tb_lab_time.lt_id not in (select lt_id from tb_lab_record where status = 1)", nativeQuery = true)
List<LabTimeBean> findByLabIdAndYearAndSemesterAndDayAndTime(Integer lab_id,String year,Integer semester, Integer day,Integer time) ;
/**
*
*
* @param yearweeksdaytime
* @param lab_idyearsemester
* @return
*/
LabTimeBean findByYear(String year);
@Query(value = "SELECT " +
" tb_lab_time.* " +
"FROM " +
"tb_lab_time LEFT JOIN tb_lab_record ON tb_lab_time.lt_id=tb_lab_record.lt_id " +
"WHERE " +
" tb_lab_time.lab_id = ?1 AND " +
" tb_lab_time.`year` = ?2 AND " +
" tb_lab_time.semester = ?3 AND " +
" tb_lab_time.`day` = ?4 AND " +
" tb_lab_time.time = ?5 AND " +
" tb_lab_time.lt_id not in (select lt_id from tb_lab_record where status is not null)" , nativeQuery = true)
List<LabTimeBean> findWeeksAbleBook(Integer lab_id, String year, Integer semester, Integer day, Integer time) ;
}

@ -9,4 +9,6 @@ import org.springframework.data.jpa.repository.JpaRepository;
*/
public interface UserAuthRepository extends JpaRepository<UserAuthBean,String> {
UserAuthBean findByUId(Integer uId);
void deleteByUId(Integer uId);
}

@ -48,7 +48,21 @@ public interface LabRecordService {
*/
void deleteById(Integer lr_id);
/**
* ucid
* @param uc_id
* @return
*/
List<LabRecordBean> findByUcIdAndStatus(Integer uc_id,Integer status);
/**
* id
* @param u_id
* @param year
* @param semester
* @return
*/
String[][] getcourseByuser(Integer u_id , String year ,Integer semester ) ;

@ -67,4 +67,12 @@ public interface LabService {
*/
List<LabDTO> findAllLabInfo();
/**
* author
* IDDTO
*/
LabDTO findDTOById(Integer lab_id);
}

@ -59,20 +59,32 @@ public interface LabTimeService {
* @param time
* @return
*/
LabTimeBean findByTime(String time);
LabTimeBean findByTime(Integer time);
/**
*
*
* @param yearweeksdaytime
*
* @return
*/
LabTimeBean findByYear(String year);
List<LabTimeDTO> findAllLabInfo();
/**
*
* @return
*
*author
* @param lab_idyearsemester
* @return List<Integer>
*/
List<LabTimeDTO> findAllLabInfo();
List<Integer> findWeeks(Integer lab_id,String year,Integer semester, Integer day,Integer time) ;
/**
*
*author
* @param lab_idyearsemester
* @return List<Integer>
*/
List<Integer> findWeeksAble(Integer lab_id,String year,Integer semester, Integer day,Integer time) ;
/**
*
*/
List<LabTimeBean> findTimes(Integer lab_id,String year,Integer semester, Integer day,Integer time);
}

@ -7,7 +7,7 @@ public interface UserAuthService {
UserAuthBean update(Integer uId, Integer groupId);
void delete(Integer uId, Integer groupId);
void delete(Integer uId);
UserAuthBean findByUId(Integer uId);
}

@ -1,8 +1,14 @@
package com.hzu.bookingsystem.service.impl;
import com.hzu.bookingsystem.bean.LabRecordBean;
import com.hzu.bookingsystem.bean.LabTimeBean;
import com.hzu.bookingsystem.bean.UserBean;
import com.hzu.bookingsystem.bean.UserCourseBean;
import com.hzu.bookingsystem.repository.LabRecordRepository;
import com.hzu.bookingsystem.service.LabRecordService;
import com.hzu.bookingsystem.service.LabTimeService;
import com.hzu.bookingsystem.service.UserCourseService;
import com.hzu.bookingsystem.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -14,6 +20,12 @@ import java.util.List;
public class LabRecordServiceImpl implements LabRecordService{
@Resource
private LabRecordRepository labrecordRepository;
@Resource
private UserCourseService usercourseservice ;
@Resource
private LabTimeService labtimeservice ;
@Resource
private UserService userservice ;
@Override
public LabRecordBean add(LabRecordBean labrcecord) {
@ -23,10 +35,12 @@ public class LabRecordServiceImpl implements LabRecordService{
@Override
public List<LabRecordBean> findAll() {
return labrecordRepository.findAll();
}
@Override
public List<LabRecordBean> findByStatus(Integer status) {
return labrecordRepository.findByStatus(status);
}
@ -46,4 +60,91 @@ public class LabRecordServiceImpl implements LabRecordService{
labrecordRepository.deleteBylrId(lr_id);
}
@Override
public List<LabRecordBean> findByUcIdAndStatus(Integer uc_id , Integer status) {
return labrecordRepository.findByUcIdAndStatus(uc_id , status);
}
@Override
public String[][] getcourseByuser(Integer u_id , String year ,Integer semester ) {
String value[][][] = new String[7][5][20] ;
String value_name[][] = new String[7][5] ;
List<UserCourseBean> usercourses=usercourseservice.findAllByUidAndYearAndSemester(u_id,year,semester) ;
for ( UserCourseBean uc : usercourses)
{
List<LabRecordBean> labrecordlist = findByUcIdAndStatus(uc.getUcId(),2) ;
UserBean user= userservice.findById(uc.getUId());
// System.out.println(uc.getUcId() +"\t"+labrecord.getLtId()+uc.getUId());
for ( LabRecordBean labrecord:labrecordlist) {
LabTimeBean labtime = labtimeservice.findByLtId(labrecord.getLtId( ));
Integer day = Integer.valueOf(labtime.getDay( )) - 1;
Integer time = Integer.valueOf(labtime.getTime( )) - 1;
Integer week = Integer.valueOf(labtime.getWeek( )) - 1;
System.out.println("我是测试下");
System.out.println(labtime.toString());
String val = uc.getName( ) + " " + user.getNickname( ) + "\n" + uc.getClasses( ) + " " + uc.getPopulation( ) + "\n";
value[day][time][week] = val;
}
}
// for (int i = 0 ; i < 7 ; ++ i ) {
//
// for (int j = 0; j < 5; ++j) {
// for (int k = 0; k < 19; ++k) {
// if (value[i][j][k]!= null)
// System.out.println("第"+(k+1)+"周的第"+(i+1)+"天的第"+(j+1)+"节"+value[i][j][k]+"\t");
// }
// }
// }
for (int i = 0 ; i < 7 ; ++ i ){
for ( int j = 0 ; j < 5 ; ++ j ){
for ( int k = 0 ; k < 19 ; ++ k ){
int start=1 ;
int end=16;
if ( value[i][j][k]!=null && k != 18 && !value[i][j][k].equals(value[i][j][k+1]))
{
if (value_name[i][j] == null) value_name[i][j] = "";
value_name[i][j] =value_name[i][j] +value[i][j][k] ;
value_name[i][j]= value_name[i][j] +"第"+ (k+1)+"周\n";
}
if ( value[i][j][k]!= null&&value[i][j][k].equals(value[i][j][k+1])) {
if (value_name[i][j] == null) value_name[i][j] = "";
value_name[i][j] = value_name[i][j] + value[i][j][k];
start = k;
end = k;
while (k < 19 && value[i][j][k].equals(value[i][j][k + 1])) {
end++;
k++;
value_name[i][j] = value_name[i][j] + "第"+(start + 1) + "-" + (end + 1) + "周\n";
}
}
if (k==18 && value[i][j][18]!=null&& value[i][j][19]!=null&& !value[i][j][18].equals(value[i][j][19]) )
{
if (value_name[i][j] == null) value_name[i][j] = "";
value_name[i][j] =value_name[i][j] +value[i][j][19] ;
value_name[i][j]= value_name[i][j] + "第20周\n";
}
}
}
}
return value_name ;
}
}

@ -64,18 +64,48 @@ public class LabServiceImpl implements LabService {
@Override
public List<LabDTO> findAllLabInfo() {
String sql = "SELECT tb_lab.lab_id as LabId," +
"tb_lab.manager_id as managerId," +
"tb_lab.name," +
"tb_lab.position," +
"tb_lab.capacity," +
"tb_lab.software " +
String sql = "SELECT " +
" tb_lab.lab_id, " +
" tb_lab.name, " +
" tb_lab.position, " +
" tb_lab.capacity, " +
" tb_lab.software, " +
" tb_lab.manager_id, " +
" tb_user.nickname, " +
" tb_user.tel " +
"FROM " +
"tb_lab ";
" tb_lab, " +
" tb_user " +
"WHERE " +
" tb_lab.manager_id = tb_user.u_id";
Query query = entityManager.createNativeQuery(sql);
query.unwrap(SQLQuery.class).setResultTransformer(Transformers.aliasToBean(LabDTO.class));
List<LabDTO> LabDTOList = query.getResultList();
return LabDTOList;
List<LabDTO> labDTOList = query.getResultList();
return labDTOList;
}
@Override
public LabDTO findDTOById(Integer lab_id) {
String sql = "SELECT " +
" tb_lab.lab_id, " +
" tb_lab.name, " +
" tb_lab.position, " +
" tb_lab.capacity, " +
" tb_lab.software, " +
" tb_lab.manager_id, " +
" tb_user.nickname, " +
" tb_user.tel " +
"FROM " +
" tb_lab, " +
" tb_user " +
"WHERE " +
" tb_lab.manager_id = tb_user.u_id AND tb_lab.lab_id = "+ lab_id;
Query query = entityManager.createNativeQuery(sql);
query.unwrap(SQLQuery.class).setResultTransformer(Transformers.aliasToBean(LabDTO.class));
List<LabDTO> labDTOList = query.getResultList();
LabDTO labDTO = labDTOList.get(0);
return labDTO;
}
}

@ -7,13 +7,15 @@ import com.hzu.bookingsystem.service.LabTimeService;
import org.hibernate.SQLQuery;
import org.hibernate.transform.Transformers;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import javax.transaction.Transactional;
import java.util.ArrayList;
import java.util.List;
/**
* author
*/
@ -33,12 +35,12 @@ public class LabTimeServiceImpl implements LabTimeService {
@Override
@Transactional
public void deleteByLtId(Integer ltId){
public void deleteByLtId(Integer ltId) {
labTimeRepository.deleteByLtId(ltId);
}
@Override
public LabTimeBean update(LabTimeBean labTime){
public LabTimeBean update(LabTimeBean labTime) {
return labTimeRepository.save(labTime);
}
@ -48,7 +50,7 @@ public class LabTimeServiceImpl implements LabTimeService {
}
@Override
public LabTimeBean findByLtId(Integer ltId){
public LabTimeBean findByLtId(Integer ltId) {
return labTimeRepository.findByLtId(ltId);
}
@ -58,17 +60,13 @@ public class LabTimeServiceImpl implements LabTimeService {
}
@Override
public LabTimeBean findByTime(String time){
public LabTimeBean findByTime(Integer time) {
return labTimeRepository.findByTime(time);
}
@Override
public LabTimeBean findByYear(String year){
return labTimeRepository.findByYear(year);
}
@Override
public List<LabTimeDTO> findAllLabInfo(){
public List<LabTimeDTO> findAllLabInfo() {
String sql = "SELECT tb_lab_time.lt_id as LtId," +
"tb_lab_time.year," +
"tb_lab_time.semester," +
@ -85,4 +83,45 @@ public class LabTimeServiceImpl implements LabTimeService {
return LabTimeDTOList;
}
/**
* author
*
* @param lab_idyearsemester
* @param year
* @param semester
* @return
*/
@Override
public List<Integer> findWeeks(Integer lab_id, String year, Integer semester, Integer day, Integer time) {
List<LabTimeBean> list = labTimeRepository.findByLabIdAndYearAndSemesterAndDayAndTime(lab_id, year, semester, day, time);
List<Integer> weeks = new ArrayList<>();
for (LabTimeBean labtime : list) {
weeks.add(labtime.getWeek());
}
return weeks;
}
/**
* author
*
* @param lab_idyearsemester
* @param year
* @param semester
* @return
*/
@Override
public List<Integer> findWeeksAble(Integer lab_id, String year, Integer semester, Integer day, Integer time) {
List<LabTimeBean> list = labTimeRepository.findWeeksAbleBook(lab_id, year, semester, day, time);
List<Integer> weeks = new ArrayList<>();
for (LabTimeBean labtime : list) {
weeks.add(labtime.getWeek());
}
return weeks;
}
@Override
public List<LabTimeBean> findTimes(Integer lab_id, String year, Integer semester, Integer day, Integer time) {
return labTimeRepository.findByLabIdAndYearAndSemesterAndDayAndTime(lab_id, year, semester, day, time);
}
}

@ -24,9 +24,8 @@ public class UserAuthServiceImpl implements UserAuthService {
}
@Override
public void delete(Integer uId, Integer groupId) {
UserAuthBean userAuth = new UserAuthBean(uId,groupId);
userAuthRepository.delete(userAuth);
public void delete(Integer uId) {
userAuthRepository.deleteByUId(uId);
}
@Override

@ -74,6 +74,9 @@ public class UserServiceImpl implements UserService {
@Override
@Transactional
public void deleteById(Integer uId) {
//清除用户组中的用户信息
userAuthService.delete(uId);
//清除用户
userRepository.deleteByUId(uId);
}

@ -32,6 +32,9 @@ class BookingsystemApplicationTests {
@Autowired
private LabTimeService labTimeService;
@Autowired
private LabRecordService labrecordervice;
@Test
// public void test(){
@ -48,12 +51,27 @@ class BookingsystemApplicationTests {
// labService.deleteById(1);
//
// }
public void test(){
LabTimeBean lab = new LabTimeBean();
System.out.println(labTimeService.findAll());
// public void test() {
// LabTimeBean lab = new LabTimeBean();
// System.out.println(labTimeService.findAll());
//
// }
//}
public void test_course() {
String value[][] = labrecordervice.getcourseByuser(13, "2019", 2);
for (int i = 0; i < 7; ++i)
for (int j = 0; j < 5; ++j) {
if (value[i][j] != null)
System.out.println("第" + (i + 1) + "天的第" + (j + 1) + "节:\n" + value[i][j]);
}
}
}
/*
@Autowired
private UserService userService;
@Autowired
@ -117,3 +135,4 @@ class BookingsystemApplicationTests {
// userCourseService.add(userCourseBean);
}
}
*/

Loading…
Cancel
Save