助教管理接口全部完成

This commit is contained in:
zlm133588 2025-03-09 10:24:47 +08:00
parent fa40000378
commit dc02ed8eb4
10 changed files with 226 additions and 13 deletions

View File

@ -23,4 +23,7 @@ export default {
findAllClasses: (data) => request.post('/classes/findAllClasses', data),
getAssistantById: (data) => request.post('/adminusers/getAssistantById', data),
editAssistant: (data) => request.post('/adminusers/editAssistant', data),
editPassword: (data) => request.post('/adminusers/editPassword', data),
deleteAdminuser: (data) => request.post('/adminusers/deleteAdminuser', data),
addAssistant: (data) => request.post('/adminusers/addAssistant', data),
}

View File

@ -123,7 +123,8 @@ const queryByPage1 = async ()=>{
}
)
assistantInfoValue.value=res.data
const strArray = assistantInfoValue.value.classIds.split(',');
const strArray = assistantInfoValue.value.classIds.split(',')
assistantInfoValue.value.classId=strArray.map(Number);
} catch (err) {
} finally {
@ -132,8 +133,7 @@ const queryByPage1 = async ()=>{
}
onMounted(()=>{
queryByPage1()
queryByPage()
queryByPage1()
})
</script>

View File

@ -59,8 +59,7 @@ import { useRouter } from 'vue-router';
const userStore = useUserStore()
const router = useRouter()
const loading = ref(true)
const assistantList =
ref([{no:"2132312131",id:"1",account:"lisi",name:"李四",role:"助教",email:"2475525791@qq.com"}])
const assistantList = ref([])
const options=ref([])
const paginationReactive = reactive({
page: 1,

View File

@ -9,6 +9,7 @@ import com.example.aes.user.model.PMAdminusers;
import com.example.aes.user.model.UAdminusers;
import com.example.aes.user.service.AdminusersServiceI;
import com.example.aes.user.service.AssistantClassServiceI;
import org.hibernate.Query;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
@ -51,6 +52,38 @@ public class AdminusersController {
else
return RespBean.ok("无该账号信息");
}
@PostMapping("/deleteAdminuser")
public RespBean deleteAdminuser(@RequestBody PMAdminusers pmadminusers) // 删除教师
{
boolean result = adminusersServiceI.deleteAminuser(pmadminusers);
if (result == true) {
return RespBean.ok("删除用户成功");
} else {
return RespBean.error("删除用户失败");
}
}
@PostMapping("/addAssistant")
public RespBean addAssistant(@RequestBody PMAdminusers pmadminusers, HttpServletRequest request) // 添加助管
{
pmadminusers.setSessionId(pmadminusers.getSessionId().substring(64));
DecodeToken decodeToken = new DecodeToken(request);
int userId = Integer.parseInt(decodeToken.getUserId());
// 判断同一个学校是否有相同的助教学校
PMAdminusers ifPmAdminusers = adminusersServiceI.findAssistantByno(pmadminusers.getNo());
if(ifPmAdminusers!=null)
return RespBean.error("不能重复添加相同学号助教");
PMAdminusers pmAdminusers=adminusersServiceI.getAdminuserById(userId);
// pmadminusers.setSchoolId(pmAdminusers.getSchoolId());
boolean result = adminusersServiceI.addAssistant(pmadminusers);
if (result) {
PMAdminusers user = adminusersServiceI
.getAdminuserByAccount(pmadminusers.getAccount());
return RespBean.ok("添加助教成功", user);
} else {
return RespBean.error("添加助教失败");
}
}
@PostMapping("/findAdminuserByAccountInRePwInfo")
public RespBean findAdminuserByAccountInRePwInfo(@RequestBody PMAdminusers pmadminusers) {
PMAdminusers adminuser = adminusersServiceI
@ -129,7 +162,6 @@ public class AdminusersController {
int userId = Integer.parseInt(decodeToken.getUserId());
pmadminusers.setId(userId);
pmadminusers.setRole(decodeToken.getRole());
System.out.println(decodeToken.getRole());
// List<PMAdminusers> list = adminusersServiceI
// .findAllAssistant(pmadminusers);
DataGrid dataGrid = adminusersServiceI
@ -150,7 +182,35 @@ public class AdminusersController {
assistant.setClassIds(classIds);
return RespBean.ok("查询用户成功", assistant);
}
@PostMapping("/editAssistant")
public RespBean editAssistant(@RequestBody PMAdminusers pmadminusers, HttpServletRequest request) // 自该助教信息
{
DecodeToken decodeToken = new DecodeToken(request);
int teacherId = Integer.parseInt(decodeToken.getUserId());
pmadminusers.setTeacherId(teacherId);
boolean result = adminusersServiceI.editAssistant(pmadminusers);
assistantClassService.editAssistantClass(
pmadminusers.getTeacherId(), pmadminusers.getId(),
pmadminusers.getClassIds());
if (result == true) {
return RespBean.ok("修改信息成功");
} else {
return RespBean.error("修改信息失败");
}
}
@PostMapping("/editPassword")
public RespBean editPassword(@RequestBody PMAdminusers pmadminusers) // 修改教师密码
{
pmadminusers.setSessionId(pmadminusers.getSessionId().substring(64));
boolean result = adminusersServiceI.editPassword(pmadminusers);
if (result == true) {
return RespBean.ok("修改密码成功");
} else {
return RespBean.error("修改教师密码失败");
}
}
}

View File

@ -13,5 +13,10 @@ public interface AdminusersDaoI extends BaseDaoI<Adminusers> {
public Adminusers getAdminuserByAccount(String account);
public boolean addTeacher(PMAdminusers pmadminusers);
public List<PMAdminusers> findAllAssistant(PMAdminusers pmadminusers); // 查看所有助教信息
public boolean editAssistant(PMAdminusers pmadminusers); // 编辑助教信息
public boolean editPassword(PMAdminusers pmadminusers); // 修改密码
public boolean deleteAdminuser(PMAdminusers pmadminusers); // 删除教师
public boolean addAssistant(PMAdminusers pmadminusers); // 添加助教
public Adminusers findAssistantByno(String no);
}

View File

@ -143,5 +143,106 @@ public class AdminusersDaoImpl extends BaseDaoImpl<Adminusers> implements
return pmadminusersList;
}
@Override
public boolean editAssistant(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
String hql = "update Adminusers set name=:name,email=:email where id=:id";
Query q = this.getCurrentSession().createQuery(hql);
String name = pmadminusers.getName();
String role = pmadminusers.getRole();
String email = pmadminusers.getEmail();
int id = pmadminusers.getId();
q.setParameter("name", name);
q.setParameter("email", email);
q.setParameter("id", id);
int result = q.executeUpdate();
if (result > 0)
return true;
else
return false;
}
@Override
public boolean editPassword(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
String password = pmadminusers.getSessionId();
String pwd = pmadminusers.getPassword();
int id = pmadminusers.getId();
String hql = "update Adminusers set password=:password, pwd=:pwd where id=:id";
Query q = this.getCurrentSession().createQuery(hql);
q.setParameter("password", password);
q.setParameter("id", id);
q.setParameter("pwd", pwd);
int result = q.executeUpdate();
if (result > 0)
return true;
else
return false;
}
@Override
public boolean deleteAdminuser(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
int id = pmadminusers.getId();
Adminusers user = this.get(Adminusers.class, id);
String hql = "delete from Adminusers where id=" + id;
int result = this.executeHql(hql);
if (result > 0) {
if (user != null && user.getRole().equals("assistant")) // 如果输助教则删除AssistantClass表中的信息
{
hql = "delete from AssistantClass where assistantId="
+ pmadminusers.getId();
this.executeHql(hql);
}
return true;
} else
return false;
}
@Override
public boolean addAssistant(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
String hql = "from Adminusers where account=:account";
Query q = this.getCurrentSession().createQuery(hql);
q.setParameter("account", pmadminusers.getAccount());
List<Adminusers> list = q.list(); // 如果账号已经存在,则不能添加
if (list.size() == 0) {
Adminusers user = new Adminusers();
user.setAccount(pmadminusers.getAccount());
user.setPassword(pmadminusers.getSessionId());
user.setPwd(pmadminusers.getPassword());
user.setName(pmadminusers.getName());
user.setRole("assistant");
user.setEmail(pmadminusers.getEmail());
user.setActive(1);
// user.setSchoolId(pmadminusers.getSchoolId());
user.setNo(pmadminusers.getNo());
this.save(user);
if (user.getId() != null) {
int assistantId = user.getId().intValue();
String classIds = pmadminusers.getClassIds();
if (classIds != null && classIds.length() > 0) {
String classId[] = classIds.split(",");
for (int i = 0; i < classId.length; i++) {
boolean result = assistantClassDao.addAssistantClass(
assistantId, Integer.parseInt(classId[i]));
if (result == false)
return false;
}
}
return true;
} else
return false;
} else
return false;
}
@Override
public Adminusers findAssistantByno(String no){
String hql = "from Adminusers where no=" + " '" + no + "' and role='assistant'";
List<Adminusers> list = this.find(hql);
if (list != null && list.size() != 0) {
return list.get(0);
} else
return null;
}
}

View File

@ -74,6 +74,7 @@ public class AssistantClassImpl extends BaseDaoImpl<AssistantClass> implements
@Override
public boolean delAssistantClass(int assistantId, int classId) {
// TODO Auto-generated method stub
String hql = "delete from AssistantClass where assistantId="
+ assistantId + " and classId=" + classId;
int result = this.executeHql(hql);

View File

@ -15,7 +15,12 @@ public interface AdminusersServiceI {
public boolean addTeacher(PMAdminusers pmadminusers);// 注册教师
public boolean updatePasswordByAccount(PMAdminusers pmadminusers);
public DataGrid findAllAssistant(PMAdminusers pmadminusers); // 查看所有助教信息
public DataGrid findAllAssistant(PMAdminusers pmadminusers); // 查看所有助教信息
public PMAdminusers getAdminuserById(int id); // 根据id获取单个老师的信息
public boolean editAssistant(PMAdminusers pmadminusers); // 修改助教
public boolean editPassword(PMAdminusers pmadminusers); // 修改密码
public boolean deleteAminuser(PMAdminusers pmadminusers); // 删除教师
public PMAdminusers findAssistantByno(String no);//根据工号查找助教
public boolean addAssistant(PMAdminusers pmadminusers); // 添加助教
}

View File

@ -191,4 +191,43 @@ public class AdminusersServiceImpl implements AdminusersServiceI {
}
}
}
@Override
public boolean editAssistant(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
return adminusersDao.editAssistant(pmadminusers);
}
@Override
public boolean editPassword(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
return adminusersDao.editPassword(pmadminusers);
}
@Override
public boolean deleteAminuser(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
return adminusersDao.deleteAdminuser(pmadminusers);
}
@Override
public boolean addAssistant(PMAdminusers pmadminusers) {
// TODO Auto-generated method stub
return adminusersDao.addAssistant(pmadminusers);
}
@Override
public PMAdminusers findAssistantByno(String no){
Adminusers adminusers =
adminusersDao.findAssistantByno(no);
if(adminusers!=null){
PMAdminusers pmAdminusers = new PMAdminusers();
pmAdminusers.setId(adminusers.getId());
pmAdminusers.setName(adminusers.getName());
pmAdminusers.setAccount(adminusers.getAccount());
pmAdminusers.setRole(adminusers.getRole());
pmAdminusers.setEmail(adminusers.getEmail());
pmAdminusers.setStatus(adminusers.getStatus());
pmAdminusers.setNo(adminusers.getNo());
return pmAdminusers;
}
else
return null;
}
}

View File

@ -37,7 +37,8 @@ public class AssistantClassServiceImpl implements AssistantClassServiceI {
.getAssistantClassAndClassNotEnd(teacherId, assistantId); // 获取教师一年以内的班级
String classId[] = classIds.split(",");
boolean isExist = false;
for (int i = 0; i < classId.length; i++) {
int size=aelist.size();
for (int i = size; i < classId.length; i++) {
isExist = false;
for (int j = 0; j < aelist.size(); j++) {
if (Integer.parseInt(classId[i]) == aelist.get(j).getClassId()
@ -49,16 +50,15 @@ public class AssistantClassServiceImpl implements AssistantClassServiceI {
}
if (isExist == false) // 新增加的
{
{if(Integer.parseInt(classId[i])!=0)
assistantClassDao.addAssistantClass(assistantId,
Integer.parseInt(classId[i]));
}
}
for (int i = 0; i < aelist.size(); i++) // 去掉没有的
{
assistantClassDao.delAssistantClass(assistantId, aelist.get(i)
.getClassId().intValue());
if(aelist.get(i).getClassId()!=0)
assistantClassDao.delAssistantClass(assistantId, aelist.get(i).getClassId().intValue());
}
}