@Override public StudentManagerDTO saveStudent(String name, String classId, String schoolId) { UserDTO userDTO = new UserDTO(); userDTO.setRealName(name); userDTO.setIdentityId(IdentityIdConstants.STUDENT); userDTO.setIdentityDescription("学生"); userDTO.setSchoolId(schoolId); userDTO.setArea(mSchoolMapper.selectByPrimaryKey(schoolId).getArea()); UserDTO users = userService.saveUser(userDTO); MClass mclass = classMapper.selectByPrimaryKey(classId, schoolId); StudentDTO studentDTO = new StudentDTO(); studentDTO.setUserId(users.getUserId()); studentDTO.setSchoolId(mclass.getSchoolId()); studentDTO.setSchoolName(mclass.getSchoolName()); studentDTO.setClassName(mclass.getName()); studentDTO.setClassId(classId); studentDTO.setClassAliasName(mclass.getAliasName()); studentDTO.setJoinClass(new Date()); MStudent mStudent = new MStudent(); BeanUtils.copyProperties(studentDTO, mStudent); studentMapper.insert(mStudent); MStudentManager studentManager = studentMapper.selectStudentByUserId(mStudent.getUserId(), schoolId); StudentManagerDTO studentManagerDTO = new StudentManagerDTO(); BeanUtils.copyProperties(studentManager, studentManagerDTO); studentManagerDTO.setClassAliasName( ClassNameUtil.getFullName(studentManager.getYears(), studentManager.getClassAliasName())); return studentManagerDTO; }
/** 查询学生信息分页 */ @Override public PageResponse<StudentManagerDTO> queryStudentPage(StudentPageRequest studentPageRequest) { String schoolId = studentPageRequest.getSchoolId(); if (schoolId == null) { schoolId = userService.getSchoolId(studentPageRequest.getUserId()); studentPageRequest.setSchoolId(schoolId); } // 获取学生信息的总条数 MStudentManager studentManager = new MStudentManager(); BeanUtils.copyProperties(studentPageRequest, studentManager); long count = studentMapper.selectCount(studentManager); // 获取当前页的信息 Page page = PageUtils.buildPage(studentPageRequest); List<MStudentManager> mStudentList = studentMapper.selectMStudentManagerPage(page, studentManager); /* 给返回接口赋值 */ List<StudentManagerDTO> studentManagerDTOs = new ArrayList<>(); for (MStudentManager mstudents : mStudentList) { StudentManagerDTO studentManagerDTO = new StudentManagerDTO(); BeanUtils.copyProperties(mstudents, studentManagerDTO); studentManagerDTO.setLastLoginDate( mstudents.getLastLoginDate() == null ? "从未登录" : DateFormatUtils.format(mstudents.getLastLoginDate(), "yyyy-MM-dd HH:mm")); if (mstudents.getYears() != null) { studentManagerDTO.setClassAliasName( getGrade(mstudents.getYears()) + studentManagerDTO.getClassAliasName()); } else { studentManagerDTO.setClassAliasName("无班级"); } studentManagerDTOs.add(studentManagerDTO); } // 返回对象 PageResponse<StudentManagerDTO> pageResponse = new PageResponse<>(); PageUtils.buldPageResponse(studentPageRequest, pageResponse); pageResponse.setRows(studentManagerDTOs); pageResponse.setRecords(count); return pageResponse; }
/** 修改学生信息 */ @Override public StudentManagerDTO updateStudentInfo(String userId, String realName, String classId) { String schoolId = userService.getSchoolId(userId); // 更换用户名称 usersMapper.updateUserName(userId, realName, schoolId); // 更换班级 MClass mClass = classMapper.selectByPrimaryKey(classId, schoolId); studentMapper.updateStudentMessage(userId, mClass); // 修改家庭关系表中用户名称 familyRelationService.updateName(userId, realName); MStudentManager studentManager = studentMapper.selectStudentByUserId(userId, schoolId); StudentManagerDTO studentManagerDTO = new StudentManagerDTO(); BeanUtils.copyProperties(studentManager, studentManagerDTO); studentManagerDTO.setClassAliasName( getGrade(mClass.getYears()) + studentManagerDTO.getClassAliasName()); // 修改孩子名称,班级信息,删除缓存数据 deleteRedisOfParent(userId, schoolId); cacheService.delete(MessageFormat.format(CacheConstants.KEY_USER, userId)); return studentManagerDTO; }