Blame view

service-community/src/main/java/com/java110/community/smo/impl/NoticeInnerServiceSMOImpl.java 3.62 KB
88e030b7   王彪总   init project
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
  package com.java110.community.smo.impl;
  
  
  import com.java110.community.dao.INoticeServiceDao;
  import com.java110.core.base.smo.BaseServiceSMO;
  import com.java110.dto.PageDto;
  import com.java110.dto.notice.NoticeDto;
  import com.java110.dto.user.UserDto;
  import com.java110.intf.community.INoticeInnerServiceSMO;
  import com.java110.intf.user.IUserInnerServiceSMO;
  import com.java110.utils.util.BeanConvertUtil;
  import org.springframework.beans.factory.annotation.Autowired;
  import org.springframework.web.bind.annotation.RequestBody;
  import org.springframework.web.bind.annotation.RestController;
  
  import java.util.ArrayList;
  import java.util.List;
  
  /**
   * @ClassName FloorInnerServiceSMOImpl
   * @Description 通知内部服务实现类
   * @Author wuxw
   * @Date 2019/4/24 9:20
   * @Version 1.0
   * add by wuxw 2019/4/24
   **/
  @RestController
  public class NoticeInnerServiceSMOImpl extends BaseServiceSMO implements INoticeInnerServiceSMO {
  
      @Autowired
      private INoticeServiceDao noticeServiceDaoImpl;
  
      @Autowired
      private IUserInnerServiceSMO userInnerServiceSMOImpl;
  
      @Override
      public List<NoticeDto> queryNotices(@RequestBody NoticeDto noticeDto) {
  
          //校验是否传了 分页信息
  
          int page = noticeDto.getPage();
  
          if (page != PageDto.DEFAULT_PAGE) {
              noticeDto.setPage((page - 1) * noticeDto.getRow());
          }
  
          List<NoticeDto> notices = BeanConvertUtil.covertBeanList(noticeServiceDaoImpl.getNoticeInfo(BeanConvertUtil.beanCovertMap(noticeDto)), NoticeDto.class);
  
          if (notices == null || notices.size() == 0) {
              return notices;
          }
  
          String[] userIds = getUserIds(notices);
          //根据 userId 查询用户信息
          List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
  
          for (NoticeDto notice : notices) {
              refreshNotice(notice, users);
          }
          return notices;
      }
  
      /**
       * 从用户列表中查询用户,将用户中的信息 刷新到 floor对象中
       *
9750b443   王彪总   fix(config): 更新配置...
66
       * @param notice 项目通知信息
88e030b7   王彪总   init project
67
68
69
70
71
72
73
74
75
76
77
78
79
       * @param users  用户列表
       */
      private void refreshNotice(NoticeDto notice, List<UserDto> users) {
          for (UserDto user : users) {
              if (notice.getUserId().equals(user.getUserId())) {
                  BeanConvertUtil.covertBean(user, notice);
              }
          }
      }
  
      /**
       * 获取批量userId
       *
9750b443   王彪总   fix(config): 更新配置...
80
       * @param notices 项目楼信息
88e030b7   王彪总   init project
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
       * @return 批量userIds 信息
       */
      private String[] getUserIds(List<NoticeDto> notices) {
          List<String> userIds = new ArrayList<String>();
          for (NoticeDto notice : notices) {
              userIds.add(notice.getUserId());
          }
  
          return userIds.toArray(new String[userIds.size()]);
      }
  
      @Override
      public int queryNoticesCount(@RequestBody NoticeDto noticeDto) {
          return noticeServiceDaoImpl.queryNoticesCount(BeanConvertUtil.beanCovertMap(noticeDto));
      }
  
      @Override
      public int updateNotice(@RequestBody NoticeDto noticeDto) {
          int flag = 1;
          noticeServiceDaoImpl.updateNoticeInfoInstance(BeanConvertUtil.beanCovertMap(noticeDto));
          return flag;
      }
  
      public INoticeServiceDao getNoticeServiceDaoImpl() {
          return noticeServiceDaoImpl;
      }
  
      public void setNoticeServiceDaoImpl(INoticeServiceDao noticeServiceDaoImpl) {
          this.noticeServiceDaoImpl = noticeServiceDaoImpl;
      }
  
      public IUserInnerServiceSMO getUserInnerServiceSMOImpl() {
          return userInnerServiceSMOImpl;
      }
  
      public void setUserInnerServiceSMOImpl(IUserInnerServiceSMO userInnerServiceSMOImpl) {
          this.userInnerServiceSMOImpl = userInnerServiceSMOImpl;
      }
  }