ZxNoticeServiceImpl.java 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. package com.ruoyi.system.service.impl;
  2. import com.ruoyi.common.core.domain.entity.SysUser;
  3. import com.ruoyi.common.utils.DateUtils;
  4. import com.ruoyi.common.utils.SecurityUtils;
  5. import com.ruoyi.system.domain.ZxFj;
  6. import com.ruoyi.system.domain.notice.ZxNotice;
  7. import com.ruoyi.system.domain.notice.ZxUserNotice;
  8. import com.ruoyi.system.mapper.SysUserMapper;
  9. import com.ruoyi.system.mapper.ZxFjMapper;
  10. import com.ruoyi.system.service.IZxNoticeService;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.stereotype.Service;
  13. import com.ruoyi.common.utils.StringUtils;
  14. import org.springframework.transaction.annotation.Transactional;
  15. import com.ruoyi.system.mapper.ZxNoticeMapper;
  16. import java.util.ArrayList;
  17. import java.util.List;
  18. import static com.ruoyi.common.constant.CommonConstants.THR;
  19. /**
  20. * 政协通知公告Service业务层处理
  21. *
  22. * @author boman
  23. * @date 2024-03-05
  24. */
  25. @Service
  26. public class ZxNoticeServiceImpl implements IZxNoticeService
  27. {
  28. @Autowired
  29. private ZxNoticeMapper zxNoticeMapper;
  30. @Autowired
  31. private ZxFjMapper zxFjMapper;
  32. @Autowired
  33. private SysUserMapper sysUserMapper;
  34. /**
  35. * 查询政协通知公告
  36. *
  37. * @param zxNoticeId 政协通知公告主键
  38. * @return 政协通知公告
  39. */
  40. @Override
  41. public ZxNotice selectZxNoticeByZxNoticeId(Long zxNoticeId)
  42. {
  43. ZxNotice zxNotice = zxNoticeMapper.selectZxNoticeByZxNoticeId(zxNoticeId);
  44. ZxUserNotice zxUserNotice = new ZxUserNotice();
  45. zxUserNotice.setUserId(SecurityUtils.getUserId());
  46. zxUserNotice.setZxNoticeId(zxNoticeId);
  47. zxUserNotice.setZxNoticeType("Y");
  48. zxNoticeMapper.updateZxNoticeUser(zxUserNotice);
  49. return zxNotice;
  50. }
  51. /**
  52. * 查询政协通知公告列表
  53. *
  54. * @param zxNotice 政协通知公告
  55. * @return 政协通知公告
  56. */
  57. @Override
  58. public List<ZxNotice> selectZxNoticeList(ZxNotice zxNotice)
  59. {
  60. zxNotice.setUserId(SecurityUtils.getUserId());
  61. return zxNoticeMapper.selectZxNoticeList(zxNotice);
  62. }
  63. /**
  64. * 新增政协通知公告
  65. *
  66. * @param zxNotice 政协通知公告
  67. * @return 结果
  68. */
  69. @Transactional(rollbackFor = Exception.class)
  70. @Override
  71. public int insertZxNotice(ZxNotice zxNotice)
  72. {
  73. zxNotice.setCreateTime(DateUtils.getNowDate());
  74. int rows = zxNoticeMapper.insertZxNotice(zxNotice);
  75. List<SysUser> sysUsers = sysUserMapper.selectUserList(new SysUser());
  76. if (sysUsers != null && sysUsers.size() >0){
  77. List<ZxUserNotice> list= new ArrayList<>();
  78. for (SysUser sysUser : sysUsers) {
  79. ZxUserNotice zxUserNotice = new ZxUserNotice();
  80. zxUserNotice.setUserId(sysUser.getUserId());
  81. zxUserNotice.setUserName(sysUser.getUserName());
  82. zxUserNotice.setZxNoticeId(zxNotice.getZxNoticeId());
  83. list.add(zxUserNotice);
  84. }
  85. zxNoticeMapper.batchZxUserNotice(list);
  86. }
  87. insertZxFj(zxNotice);
  88. insertZxUserNotice(zxNotice);
  89. return rows;
  90. }
  91. /**
  92. * 修改政协通知公告
  93. *
  94. * @param zxNotice 政协通知公告
  95. * @return 结果
  96. */
  97. @Transactional(rollbackFor = Exception.class)
  98. @Override
  99. public int updateZxNotice(ZxNotice zxNotice)
  100. {
  101. zxNotice.setUpdateTime(DateUtils.getNowDate());
  102. zxNoticeMapper.deleteZxUserNoticeByZxNoticeId(zxNotice.getZxNoticeId());
  103. zxFjMapper.deleteZxFjBySourceId(zxNotice.getZxNoticeId());
  104. insertZxUserNotice(zxNotice);
  105. insertZxFj(zxNotice);
  106. return zxNoticeMapper.updateZxNotice(zxNotice);
  107. }
  108. /**
  109. * 批量删除政协通知公告
  110. *
  111. * @param zxNoticeIds 需要删除的政协通知公告主键
  112. * @return 结果
  113. */
  114. @Transactional
  115. @Override
  116. public int deleteZxNoticeByZxNoticeIds(Long[] zxNoticeIds)
  117. {
  118. zxNoticeMapper.deleteZxUserNoticeByZxNoticeIds(zxNoticeIds);
  119. return zxNoticeMapper.deleteZxNoticeByZxNoticeIds(zxNoticeIds);
  120. }
  121. /**
  122. * 删除政协通知公告信息
  123. *
  124. * @param zxNoticeId 政协通知公告主键
  125. * @return 结果
  126. */
  127. @Transactional
  128. @Override
  129. public int deleteZxNoticeByZxNoticeId(Long zxNoticeId)
  130. {
  131. zxNoticeMapper.deleteZxUserNoticeByZxNoticeId(zxNoticeId);
  132. return zxNoticeMapper.deleteZxNoticeByZxNoticeId(zxNoticeId);
  133. }
  134. /**
  135. * 新增用户与政协通知公告关联信息
  136. *
  137. * @param zxNotice 政协通知公告对象
  138. */
  139. public void insertZxUserNotice(ZxNotice zxNotice)
  140. {
  141. List<ZxUserNotice> zxUserNoticeList = zxNotice.getZxUserNoticeList();
  142. Long zxNoticeId = zxNotice.getZxNoticeId();
  143. if (StringUtils.isNotNull(zxUserNoticeList))
  144. {
  145. List<ZxUserNotice> list = new ArrayList<ZxUserNotice>();
  146. for (ZxUserNotice zxUserNotice : zxUserNoticeList)
  147. {
  148. zxUserNotice.setZxNoticeId(zxNoticeId);
  149. list.add(zxUserNotice);
  150. }
  151. if (list.size() > 0)
  152. {
  153. zxNoticeMapper.batchZxUserNotice(list);
  154. }
  155. }
  156. }
  157. /**
  158. * 新增通知公告附件关联信息
  159. *
  160. * @param zxNotice 政协通知公告对象
  161. */
  162. public void insertZxFj(ZxNotice zxNotice)
  163. {
  164. List<ZxFj> zxFjListFj = zxNotice.getZxFjList();
  165. Long zxNoticeId = zxNotice.getZxNoticeId();
  166. if (StringUtils.isNotNull(zxFjListFj))
  167. {
  168. List<ZxFj> list = new ArrayList<ZxFj>();
  169. for (ZxFj zxFj : zxFjListFj)
  170. {
  171. zxFj.setType(THR);
  172. zxFj.setMainId(zxNoticeId);
  173. zxFj.setSourceId(zxNoticeId);
  174. list.add(zxFj);
  175. }
  176. if (list.size() > 0)
  177. {
  178. zxFjMapper.batchZxFj(list);
  179. }
  180. }
  181. }
  182. }