VnoticeUserServiceImpl.java 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.hssx.cloudmodel.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.github.pagehelper.PageHelper;
  4. import com.github.pagehelper.PageInfo;
  5. import com.hssx.cloudmodel.constant.Constant;
  6. import com.hssx.cloudmodel.entity.NewsNoticeUser;
  7. import com.hssx.cloudmodel.entity.User;
  8. import com.hssx.cloudmodel.entity.VnoticeUser;
  9. import com.hssx.cloudmodel.mapper.NewsNoticeUserMapper;
  10. import com.hssx.cloudmodel.mapper.UserMapper;
  11. import com.hssx.cloudmodel.mapper.VnoticeUserMapper;
  12. import com.hssx.cloudmodel.service.VnoticeUserService;
  13. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  14. import com.hssx.cloudmodel.util.HttpRespMsg;
  15. import com.hssx.cloudmodel.util.PageUtil;
  16. import org.springframework.stereotype.Service;
  17. import javax.annotation.Resource;
  18. import java.util.ArrayList;
  19. import java.util.HashMap;
  20. import java.util.List;
  21. import java.util.Map;
  22. /**
  23. * <p>
  24. * VIEW 服务实现类
  25. * </p>
  26. *
  27. * @author 吴涛涛
  28. * @since 2019-08-10
  29. */
  30. @Service
  31. public class VnoticeUserServiceImpl extends ServiceImpl<VnoticeUserMapper, VnoticeUser> implements VnoticeUserService {
  32. @Resource
  33. VnoticeUserMapper vnoticeUserMapper;
  34. @Resource
  35. NewsNoticeUserMapper newsNoticeUserMapper;
  36. @Resource
  37. UserMapper userMapper;
  38. @Override
  39. public HttpRespMsg pageList(PageUtil page, String token) {
  40. HttpRespMsg msg = new HttpRespMsg();
  41. List<VnoticeUser> list = new ArrayList<>();
  42. User user = userMapper.selectOne(new QueryWrapper<User>().eq("head_imgurl", token));
  43. List<Map<String, Object>> mapList = new ArrayList<>();
  44. if (user != null) {
  45. Map<String, Object> map = new HashMap<>();
  46. //加载全部
  47. System.out.println(page.getPageNum()+" "+page.getPageSize());
  48. PageHelper.startPage(page.getPageNum(), page.getPageSize());
  49. list = vnoticeUserMapper.selectList(new QueryWrapper<VnoticeUser>().eq("user_id", user.getId()).eq("notice_type", Constant.APPROVEL_TYPE).orderByDesc("id"));
  50. long count = list.stream().filter(x -> x.getIsRead() == 0).count();
  51. PageInfo<VnoticeUser> pageInfo = new PageInfo<VnoticeUser>(list);
  52. map.put("approvelList", pageInfo);
  53. map.put("isNotReadCount", count);
  54. mapList.add(map);
  55. List<VnoticeUser> list1 = vnoticeUserMapper.selectList(new QueryWrapper<VnoticeUser>().eq("user_id", user.getId()).eq("notice_type",Constant.MAINTAIN_TYPE).orderByDesc("id"));
  56. count = list.stream().filter(x -> x.getIsRead() == 0).count();
  57. PageInfo<VnoticeUser> pageInfo1 = new PageInfo<VnoticeUser>(list1);
  58. Map<String, Object> map1 = new HashMap<>();
  59. map1.put("matainList", pageInfo1);
  60. map1.put("isNotReadCount", count);
  61. mapList.add(map1);
  62. List<VnoticeUser> list2 = vnoticeUserMapper.selectList(new QueryWrapper<VnoticeUser>().eq("user_id", user.getId()).eq("notice_type",Constant.EMERGENCY_TYPE).orderByDesc("id"));
  63. count = list.stream().filter(x -> x.getIsRead() == 0).count();
  64. PageInfo<VnoticeUser> pageInfo2 = new PageInfo<VnoticeUser>(list2);
  65. Map<String, Object> map2 = new HashMap<>();
  66. map2.put("emergencyList", pageInfo2);
  67. map2.put("isNotReadCount", count);
  68. mapList.add(map2);
  69. msg.data = mapList;
  70. } else {
  71. msg.setError("用户不存在或者未登录");
  72. }
  73. return msg;
  74. }
  75. @Override
  76. public HttpRespMsg read(Integer id) {
  77. HttpRespMsg msg = new HttpRespMsg();
  78. NewsNoticeUser item = new NewsNoticeUser();
  79. item.setId(id);
  80. item.setIsRead(1);
  81. newsNoticeUserMapper.updateById(item);
  82. msg.data = vnoticeUserMapper.selectById(id);
  83. return msg;
  84. }
  85. }