SqmyInfoServiceImpl.java 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. package com.ruoyi.system.service.impl;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6. import com.ruoyi.common.core.domain.AjaxResult;
  7. import com.ruoyi.common.core.domain.entity.SysUser;
  8. import com.ruoyi.common.utils.DateUtils;
  9. import com.ruoyi.common.utils.SecurityUtils;
  10. import com.ruoyi.system.domain.ProposalInfo;
  11. import com.ruoyi.system.domain.ProposalUnitReply;
  12. import com.ruoyi.system.domain.ZxFj;
  13. import com.ruoyi.system.domain.sqmy.SqmyInfo;
  14. import com.ruoyi.system.domain.sqmy.SqmyUnitReply;
  15. import com.ruoyi.system.mapper.SqmyUnitReplyMapper;
  16. import com.ruoyi.system.mapper.ZxFjMapper;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.stereotype.Service;
  19. import com.ruoyi.system.mapper.SqmyInfoMapper;
  20. import com.ruoyi.system.service.ISqmyInfoService;
  21. /**
  22. * 社情民意信息Service业务层处理
  23. *
  24. * @author boman
  25. * @date 2024-03-14
  26. */
  27. @Service
  28. public class SqmyInfoServiceImpl implements ISqmyInfoService
  29. {
  30. @Autowired
  31. private SqmyInfoMapper sqmyInfoMapper;
  32. @Autowired
  33. private ZxFjMapper zxFjMapper;
  34. @Autowired
  35. private SqmyUnitReplyMapper sqmyUnitReplyMapper;
  36. /**
  37. * 查询社情民意信息
  38. *
  39. * @param sqmyId 社情民意信息主键
  40. * @return 社情民意信息
  41. */
  42. @Override
  43. public SqmyInfo selectSqmyInfoBySqmyId(Long sqmyId)
  44. {
  45. SqmyInfo sqmyInfo = sqmyInfoMapper.selectSqmyInfoBySqmyId(sqmyId);
  46. //查询附件
  47. ZxFj zxFj = new ZxFj();
  48. zxFj.setMainId(sqmyId);
  49. List<ZxFj> zxFjList = zxFjMapper.selectZxFjList(zxFj);
  50. if(zxFjList!=null && zxFjList.size()>0){
  51. sqmyInfo.setZxFjList(zxFjList);
  52. }
  53. //查询答复
  54. SqmyUnitReply sqmyUnitReply = new SqmyUnitReply();
  55. sqmyUnitReply.setSqmyId(sqmyId);
  56. List<SqmyUnitReply> sqmyUnitReplyList = sqmyUnitReplyMapper.selectSqmyUnitReplyList(sqmyUnitReply);
  57. if(sqmyUnitReplyList!=null && sqmyUnitReplyList.size()>0){
  58. for (SqmyUnitReply unitReply : sqmyUnitReplyList) {
  59. List<ZxFj> dfFjList = new ArrayList<>();
  60. //查询答复附件
  61. if(zxFjList!=null && zxFjList.size()>0){
  62. for (ZxFj fj : zxFjList) {
  63. if(fj.getStytle().equals(unitReply.getType())){
  64. dfFjList.add(fj);
  65. }
  66. }
  67. }
  68. unitReply.setZxFjList(dfFjList);
  69. }
  70. sqmyInfo.setSqmyUnitReplyList(sqmyUnitReplyList);
  71. }
  72. return sqmyInfo;
  73. }
  74. /**
  75. * 查询社情民意信息列表
  76. *
  77. * @param sqmyInfo 社情民意信息
  78. * @return 社情民意信息
  79. */
  80. @Override
  81. public List<SqmyInfo> selectSqmyInfoList(SqmyInfo sqmyInfo)
  82. {
  83. return sqmyInfoMapper.selectSqmyInfoList(sqmyInfo);
  84. }
  85. /**
  86. * 列表页统计
  87. */
  88. @Override
  89. public AjaxResult statistics(SqmyInfo sqmyInfo) {
  90. Map<String,Object> map = new HashMap<>();
  91. List<SqmyInfo> sqmyInfos = sqmyInfoMapper.selectSqmyInfoList(sqmyInfo);
  92. int totle = sqmyInfos.size();
  93. int dsh = 0;
  94. int ysh = 0;
  95. for (SqmyInfo info : sqmyInfos) {
  96. if("1".equals(info.getSqmyProgress())){
  97. dsh++;
  98. }else {
  99. ysh++;
  100. }
  101. }
  102. map.put("totle",totle);
  103. map.put("dsh",dsh);
  104. map.put("ysh",ysh);
  105. return AjaxResult.success(map);
  106. }
  107. /**
  108. * 新增社情民意信息
  109. *
  110. * @param sqmyInfo 社情民意信息
  111. * @return 结果
  112. */
  113. @Override
  114. public int insertSqmyInfo(SqmyInfo sqmyInfo)
  115. {
  116. SysUser user = SecurityUtils.getLoginUser().getUser();
  117. sqmyInfo.setSqmyUserId(user.getUserId());
  118. sqmyInfo.setSqmyProgress("1");
  119. sqmyInfo.setCreateTime(DateUtils.getNowDate());
  120. int i = sqmyInfoMapper.insertSqmyInfo(sqmyInfo);
  121. if(sqmyInfo.getZxFjList()!=null && sqmyInfo.getZxFjList().size()>0){
  122. for (ZxFj zxFj : sqmyInfo.getZxFjList()) {
  123. zxFj.setMainId(sqmyInfo.getSqmyId());
  124. zxFj.setSourceId(sqmyInfo.getSqmyId());
  125. zxFj.setType("2");
  126. zxFj.setStytle("4");
  127. zxFjMapper.insertZxFj(zxFj);
  128. }
  129. }
  130. return i;
  131. }
  132. /**
  133. * 修改社情民意信息
  134. *
  135. * @param sqmyInfo 社情民意信息
  136. * @return 结果
  137. */
  138. @Override
  139. public int updateSqmyInfo(SqmyInfo sqmyInfo)
  140. {
  141. //删除附件
  142. zxFjMapper.deleteZxFjBySourceId(sqmyInfo.getSqmyId());
  143. if(sqmyInfo.getZxFjList()!=null && sqmyInfo.getZxFjList().size()>0){
  144. for (ZxFj zxFj : sqmyInfo.getZxFjList()) {
  145. zxFj.setMainId(sqmyInfo.getSqmyId());
  146. zxFj.setSourceId(sqmyInfo.getSqmyId());
  147. zxFj.setType("2");
  148. zxFj.setStytle("4");
  149. zxFjMapper.insertZxFj(zxFj);
  150. }
  151. }
  152. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  153. return sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  154. }
  155. /**
  156. * 批量删除社情民意信息
  157. *
  158. * @param sqmyIds 需要删除的社情民意信息主键
  159. * @return 结果
  160. */
  161. @Override
  162. public int deleteSqmyInfoBySqmyIds(Long[] sqmyIds)
  163. {
  164. return sqmyInfoMapper.deleteSqmyInfoBySqmyIds(sqmyIds);
  165. }
  166. /**
  167. * 删除社情民意信息信息
  168. *
  169. * @param sqmyId 社情民意信息主键
  170. * @return 结果
  171. */
  172. @Override
  173. public int deleteSqmyInfoBySqmyId(Long sqmyId)
  174. {
  175. return sqmyInfoMapper.deleteSqmyInfoBySqmyId(sqmyId);
  176. }
  177. /***
  178. * 是否立案
  179. */
  180. @Override
  181. public AjaxResult isRecord(SqmyInfo sqmyInfo) {
  182. //不立案,指定答复单位
  183. if("1".equals(sqmyInfo.getIsRecord())){
  184. sqmyInfo.setSqmyProgress("1");
  185. List<SqmyUnitReply> sqmyUnitReplyList = sqmyInfo.getSqmyUnitReplyList();
  186. for (SqmyUnitReply sqmyUnitReply : sqmyUnitReplyList) {
  187. sqmyUnitReply.setSqmyId(sqmyInfo.getSqmyId());
  188. sqmyUnitReply.setType("1");
  189. sqmyUnitReply.setStartTime(DateUtils.getNowDate());
  190. sqmyUnitReplyMapper.insertSqmyUnitReply(sqmyUnitReply);
  191. }
  192. }else{
  193. sqmyInfo.setSqmyProgress("2");
  194. }
  195. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  196. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  197. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  198. }
  199. /***
  200. * 交办
  201. */
  202. @Override
  203. public AjaxResult assign(SqmyInfo sqmyInfo) {
  204. List<SqmyUnitReply> sqmyUnitReplyList = sqmyInfo.getSqmyUnitReplyList();
  205. SqmyUnitReply zbUnitReply = sqmyInfo.getZbUnitReply();
  206. if(sqmyUnitReplyList!=null && sqmyUnitReplyList.size()>0){
  207. for (SqmyUnitReply sqmyUnitReply : sqmyUnitReplyList) {
  208. sqmyUnitReply.setType("2");
  209. sqmyUnitReply.setSqmyId(sqmyInfo.getSqmyId());
  210. sqmyUnitReply.setStartTime(DateUtils.getNowDate());
  211. sqmyUnitReplyMapper.insertSqmyUnitReply(sqmyUnitReply);
  212. }
  213. }
  214. zbUnitReply.setSqmyId(sqmyInfo.getSqmyId());
  215. zbUnitReply.setType("1");
  216. zbUnitReply.setStartTime(DateUtils.getNowDate());
  217. sqmyUnitReplyMapper.insertSqmyUnitReply(zbUnitReply);
  218. sqmyInfo.setSqmyProgress("3");
  219. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  220. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  221. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  222. }
  223. /***
  224. * 委员意见
  225. */
  226. @Override
  227. public AjaxResult idea(SqmyInfo sqmyInfo) {
  228. sqmyInfo.setSqmyProgress("5");
  229. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  230. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  231. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  232. }
  233. /***
  234. * 政协意见
  235. */
  236. @Override
  237. public AjaxResult zxIdea(SqmyInfo sqmyInfo) {
  238. sqmyInfo.setSqmyProgress("5");
  239. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  240. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  241. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  242. }
  243. /***
  244. * 推荐重点
  245. */
  246. @Override
  247. public AjaxResult keyPoint(SqmyInfo sqmyInfo) {
  248. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  249. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  250. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  251. }
  252. /***
  253. * 推荐优秀
  254. */
  255. @Override
  256. public AjaxResult outstanding(SqmyInfo sqmyInfo) {
  257. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  258. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  259. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  260. }
  261. /***
  262. * 交办审核
  263. */
  264. @Override
  265. public AjaxResult assignsh(SqmyInfo sqmyInfo) {
  266. sqmyInfo.setUpdateTime(DateUtils.getNowDate());
  267. int i = sqmyInfoMapper.updateSqmyInfo(sqmyInfo);
  268. return i > 0 ? AjaxResult.success() : AjaxResult.error();
  269. }
  270. @Override
  271. public List<SqmyInfo> unitList(SqmyInfo sqmyInfo) {
  272. SysUser user = SecurityUtils.getLoginUser().getUser();
  273. sqmyInfo.setDeptId(user.getDeptId());
  274. return sqmyInfoMapper.selectSqmyInfoListByUnit(sqmyInfo);
  275. }
  276. }