相关接口:TeacherNoticeService
//获取公告列表
public List<Map<String, Object>> getNoticesList();
//查询公告
public List<Map<String, Object>> searchNoticeInfo(String noticeContent, String teaName);
//公告是否存在
public boolean noticeContentIsExist(String noticeContent);
//插入公告
public int insertNoticeInfo(TeacherNotice teacherNotice);
//更新公告
public int updateNoticeInfo(TeacherNotice teacherNotice);
//删除公告
public int deleteNotice(Integer noticeId);
接口实现:TeacherNoticeService
获取公告列表 getNoticesList
public List<Map<String, Object>> getNoticesList() {
List<Map<String, Object>> resultList = new ArrayList<>();
TeacherNoticeExample teacherNoticeExample = new TeacherNoticeExample();
teacherNoticeExample.setOrderByClause("notice_id asc");
List<TeacherNotice> teacherNoticeList = teacherNoticeMapper.selectByExample(teacherNoticeExample);
for (TeacherNotice teacherNotice : teacherNoticeList){
Map<String, Object> map = new HashMap<>();
map.put("id", teacherNoticeList.indexOf(teacherNotice) + 1);
map.put("noticeId", teacherNotice.getNoticeId());
map.put("noticeContent", teacherNotice.getNoticeContent());
map.put("noticeCreateTime", teacherNotice.getNoticeCreateTime());
map.put("teaName", teacherNotice.getTeaName());
map.put("tno", teacherNotice.getTno());
resultList.add(map);
}
return resultList;
}
查询公告 searchNoticeInfo
public List<Map<String, Object>> searchNoticeInfo(String noticeContent, String teaName) {
List<Map<String, Object>> resultList = new ArrayList<>();
TeacherNoticeExample teacherNoticeExample = new TeacherNoticeExample();
TeacherNoticeExample.Criteria criteria = teacherNoticeExample.createCriteria();
if(!noticeContent.equals("undefined")) {
criteria.andNoticeContentLike("%" + noticeContent + "%");
}
if(!teaName.equals("undefined")) {
criteria.andTeaNameLike("%" + teaName + "%");
}
teacherNoticeExample.setOrderByClause("notice_id asc");
List<TeacherNotice> teacherNoticeList = teacherNoticeMapper.selectByExample(teacherNoticeExample);
for (TeacherNotice teacherNotice : teacherNoticeList){
Map<String, Object> map = new HashMap<>();
map.put("id", teacherNoticeList.indexOf(teacherNotice) + 1);
map.put("noticeId", teacherNotice.getNoticeId());
map.put("noticeContent", teacherNotice.getNoticeContent());
map.put("tno", teacherNotice.getTno());
map.put("noticeCreateTime", teacherNotice.getNoticeCreateTime());
map.put("teaName", teacherNotice.getTeaName());
resultList.add(map);
}
return resultList;
}
公告是否存在 noticeContentIsExist
public boolean noticeContentIsExist(String noticeContent) {
TeacherNoticeExample teacherNoticeExample = new TeacherNoticeExample();
TeacherNoticeExample.Criteria criteria = teacherNoticeExample.createCriteria();
criteria.andNoticeContentEqualTo(noticeContent);
List<TeacherNotice> resultList = teacherNoticeMapper.selectByExample(teacherNoticeExample);
if(resultList.size() > 0){
return true;
} else {
return false;
}
}
插入公告 insertNoticeInfo
public int insertNoticeInfo(TeacherNotice teacherNotice) {
int result = teacherNoticeMapper.insertSelective(teacherNotice);
return result;
}
更新公告 updateNoticeInfo
public int updateNoticeInfo(TeacherNotice teacherNotice) {
int result = teacherNoticeMapper.updateByPrimaryKeySelective(teacherNotice);
return result;
}
删除公告 deleteNotice
public int deleteNotice(Integer noticeId) {
int result = teacherNoticeMapper.deleteByPrimaryKey(noticeId);
return result;
}
Controller实现:TeacherNoticeController
父路径:/api/teacher
1、获取公告列表信息
// 获取公告列表信息
@RequestMapping("/getNoticesList")
public ServerResponse getNoticesList(){
List<Map<String, Object>> resultList = teacherNoticeService.getNoticesList();
return ServerResponse.createBySuccess("获取全部公告信息成功",resultList);
}
2、获取搜索公告列表信息
// 获取搜索公告列表信息
@RequestMapping("/searchNoticesList")
public ServerResponse searchNoticesList(@RequestParam("noticeContent")String noticeContent,
@RequestParam("teaName")String teaName){
List<Map<String, Object>> resultList = teacherNoticeService.searchNoticeInfo(noticeContent, teaName);
return ServerResponse.createBySuccess("获取搜索公告信息成功",resultList);
}
3、更新公告信息
// 更新公告信息
@RequestMapping(value = "/updateNoticeInfo",method = RequestMethod.POST)
public ServerResponse updateNoticeInfo(@RequestBody(required = false)TeacherNotice teacherNotice){
int result = teacherNoticeService.updateNoticeInfo(teacherNotice);
if (result > 0){
return ServerResponse.createBySuccess("更新公告信息成功",null);
}
else {
return ServerResponse.createByError("数据库错误,更新公告信息失败");
}
}
4、添加公告信息
// 添加公告信息
@RequestMapping(value = "/insertNoticeInfo",method = RequestMethod.POST)
public ServerResponse insertNoticeInfo(@RequestBody(required = false)TeacherNotice teacherNotice) throws IOException {
boolean noticeContentIsExist = teacherNoticeService.noticeContentIsExist(teacherNotice.getNoticeContent());
if(noticeContentIsExist){
return ServerResponse.createByError("此公告内容已存在,请创新新的公告内容");
}
teacherNotice.setNoticeCreateTime(new Date());
int result = teacherNoticeService.insertNoticeInfo(teacherNotice);
if (result > 0){
// 插入公告时向学生推送消息
ConcurrentHashMap<String, WebSocketDemo> webSocketSet = WebSocketDemo.getWebSocketDemo();
for (String key : webSocketSet.keySet()) {
if (key.length() == 12) {
webSocketSet.get(key).sendMessage("公告");
}
}
return ServerResponse.createBySuccess("插入公告信息成功",null);
}
else {
return ServerResponse.createByError("数据库错误,插入公告信息失败");
}
}
5、删除公告信息
// 删除公告信息
@RequestMapping(value = "/deleteNotice",method = RequestMethod.POST)
public ServerResponse deleteScore(@RequestBody Map<String, Object> obj) throws IOException {
Integer noticeId = (Integer) obj.get("noticeId");
int result = teacherNoticeService.deleteNotice(noticeId);
if(result > 0){
// 删除公告时向学生推送消息
ConcurrentHashMap<String, WebSocketDemo> webSocketSet = WebSocketDemo.getWebSocketDemo();
for (String key : webSocketSet.keySet()) {
if (key.length() == 12) {
webSocketSet.get(key).sendMessage("公告");
}
}
return ServerResponse.createBySuccess("删除成功",null);
} else {
return ServerResponse.createByError("数据库错误,删除失败");
}
}