ZdcxService.java 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. package com.ruoyi.zzb.zdcx.service;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.ruoyi.common.annotation.DataSource;
  7. import com.ruoyi.common.core.domain.entity.SysDept;
  8. import com.ruoyi.common.core.domain.entity.SysUser;
  9. import com.ruoyi.common.enums.DataSourceType;
  10. import com.ruoyi.common.utils.DateUtils;
  11. import com.ruoyi.zzb.zdcx.domain.Zdcx;
  12. import com.ruoyi.zzb.zdcx.mapper.ZdcxMapper;
  13. import lombok.extern.slf4j.Slf4j;
  14. import org.apache.commons.lang3.StringUtils;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.stereotype.Service;
  17. import org.springframework.transaction.annotation.Transactional;
  18. @Slf4j
  19. @Service
  20. @DataSource(value = DataSourceType.SLAVE)
  21. public class ZdcxService {
  22. @Autowired
  23. private ZdcxMapper zdcxMapper;
  24. /**
  25. * 根据条件分页查询制度信息
  26. * @param reqBody
  27. * @return
  28. */
  29. public Page<Zdcx> getDataByPage(JSONObject reqBody){
  30. String docId = reqBody.getString("docId");
  31. String title = reqBody.getString("title");
  32. String publishDept = reqBody.getString("publishDept");
  33. String content = reqBody.getString("content");
  34. // 前端传入时间范围查询的 起始时间、结束时间
  35. String startTime = reqBody.getString("startTime");
  36. String endTime = reqBody.getString("endTime");
  37. // 查询标志 0:and,1:or
  38. Integer queryFlag = reqBody.getInteger("queryFlag");
  39. Integer pageIndex = reqBody.getInteger("pageIndex") == null? 1:reqBody.getInteger("pageIndex");
  40. Integer pageSize = reqBody.getInteger("pageSize") == null? 10:reqBody.getInteger("pageSize");
  41. // 构造查询条件
  42. QueryWrapper<Zdcx> queryWrapper = new QueryWrapper<>();
  43. // queryWrapper.eq("FLAG", 1);
  44. // queryWrapper.eq("1", 1);
  45. if(StringUtils.isNotBlank(docId)){
  46. if (queryFlag != 0){ // or
  47. queryWrapper.or();
  48. }
  49. queryWrapper.like("DOC_ID", docId);
  50. }
  51. if(StringUtils.isNotBlank(title)){
  52. if (queryFlag != 0){
  53. queryWrapper.or();
  54. }
  55. queryWrapper.like("TITLE", title);
  56. }
  57. if(StringUtils.isNotBlank(publishDept)){
  58. if (queryFlag != 0){
  59. queryWrapper.or();
  60. }
  61. queryWrapper.like("PUBLISH_DEPT", publishDept);
  62. }
  63. if(StringUtils.isNotBlank(content)){
  64. if (queryFlag != 0){
  65. queryWrapper.or();
  66. }
  67. queryWrapper.like("CONTENT", content);
  68. }
  69. if(StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)){
  70. if (queryFlag != 0){
  71. queryWrapper.or();
  72. }
  73. queryWrapper.between("CREATE_TIME", DateUtils.parseDate(startTime), DateUtils.parseDate(endTime));
  74. }
  75. Page<Zdcx> page = new Page<>(pageIndex, pageSize);
  76. return zdcxMapper.selectPage(page, queryWrapper);
  77. }
  78. /**
  79. * 根据参数保存一条制度规范信息
  80. * @param
  81. * @param basePersonInfo
  82. * @return
  83. *//*
  84. public boolean insertStandardInfo(Zdcx zdcx, BasePersonInfo basePersonInfo){
  85. // 制度信息
  86. *//*zdcx.setDocId(reqBody.getString("docId"));
  87. zdcx.setTitle(reqBody.getString("title"));
  88. zdcx.setPublishDept(reqBody.getString("publishDept"));
  89. zdcx.setContent(reqBody.getString("content"));*//*
  90. // 录入人信息
  91. zdcx.setCreateUserId(basePersonInfo.getUserId());
  92. zdcx.setCreateUserName(basePersonInfo.getName());
  93. zdcx.setCreateUserPoliceNo(basePersonInfo.getPoliceNo());
  94. zdcx.setCreateDeptName(basePersonInfo.getDeptName());
  95. zdcx.setCreateDeptCode(basePersonInfo.getDeptCode());
  96. zdcx.setCreateParentDeptName(basePersonInfo.getParentDeptName());
  97. zdcx.setCreateParentDeptCode(basePersonInfo.getParentDeptCode());
  98. if (zdcxMapper.insert(zdcx) > 0) {
  99. log.info("制度规范信息保存成功");
  100. return true;
  101. }
  102. log.error("制度规范信息保存失败");
  103. return false;
  104. }*/
  105. /**
  106. * 根据参数保存一条制度规范信息
  107. * @param
  108. * @param
  109. * @return
  110. */
  111. @Transactional
  112. public boolean insertStandardInfo(Zdcx zdcx, SysUser user){
  113. // 录入人信息
  114. zdcx.setCreateUserId(String.valueOf(user.getUserId()));
  115. zdcx.setCreateUserName(user.getNickName());
  116. zdcx.setCreateUserPoliceNo(user.getPoliceNo());
  117. SysDept dept = user.getDept();
  118. zdcx.setCreateDeptName(dept.getDeptName());
  119. zdcx.setCreateDeptCode(String.valueOf(user.getDeptId()));
  120. zdcx.setCreateParentDeptName(dept.getParentName());
  121. zdcx.setCreateParentDeptCode(String.valueOf(dept.getParentId()));
  122. int insertRows = zdcxMapper.insert(zdcx);
  123. if (insertRows > 0) {
  124. log.info("【制度查询】制度规范信息保存成功");
  125. return true;
  126. }else {
  127. throw new RuntimeException("数据库【制度查询】制度规范信息记录未插入");
  128. }
  129. }
  130. /**
  131. * 根据docId(文书号)条件查询制度规范信息
  132. * @param docId
  133. * @return
  134. */
  135. public Zdcx getDataByDocId(String docId){
  136. if(StringUtils.isNotBlank(docId)){
  137. QueryWrapper<Zdcx> queryWrapper = new QueryWrapper<>();
  138. queryWrapper.eq("DOC_ID", docId);
  139. return zdcxMapper.selectOne(queryWrapper);
  140. }
  141. return null;
  142. }
  143. /**
  144. * 根据参数修改一条制度规范信息
  145. * @param
  146. * @param
  147. * @return
  148. */
  149. @Transactional
  150. public boolean updateStandardInfo(Zdcx zdcx){
  151. String docId = zdcx.getDocId();
  152. UpdateWrapper<Zdcx> updateWrapper = new UpdateWrapper<>();
  153. updateWrapper.eq("DOC_ID", docId);
  154. int updateRows = zdcxMapper.update(zdcx, updateWrapper);
  155. if(updateRows > 0){
  156. log.info("【制度查询】制度规范信息修改成功 文书号:{}", docId);
  157. return true;
  158. } else {
  159. throw new RuntimeException("数据库【制度查询】制度规范信息记录未修改 文书号:" + docId);
  160. }
  161. }
  162. /**
  163. * 根据docIds(文书号数组)删除一/多条制度规范信息
  164. * @param docIds
  165. * @return
  166. */
  167. @Transactional
  168. public boolean delDataByDocId(String[] docIds){
  169. int delRowsCount = 0;
  170. for (String docId : docIds) {
  171. QueryWrapper<Zdcx> queryWrapper = new QueryWrapper<>();
  172. queryWrapper.eq("DOC_ID", docId);
  173. int delRows = zdcxMapper.delete(queryWrapper);
  174. delRowsCount += delRows;
  175. }
  176. if(delRowsCount == docIds.length){
  177. log.info("制度规范信息删除成功 已删除的文书号:{},删除的数据条数:{}", docIds.toString(), delRowsCount);
  178. return true;
  179. } else {
  180. throw new RuntimeException("数据库制度规范信息记录未删除或不存在 删除失败的文书号:" + docIds.toString());
  181. }
  182. }
  183. }