a2a6733aed6c48fde081156a4c3d6f72f56363aa.svn-base 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. package cn.com.goldenwater.dcproj.service.impl;
  2. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  3. import cn.com.goldenwater.dcproj.dao.*;
  4. import cn.com.goldenwater.dcproj.dto.BisInspHystRgstrDto;
  5. import cn.com.goldenwater.dcproj.dto.BisInspRgstrDto;
  6. import cn.com.goldenwater.dcproj.model.*;
  7. import cn.com.goldenwater.dcproj.param.*;
  8. import cn.com.goldenwater.dcproj.service.BisInspHystRgstrService;
  9. import cn.com.goldenwater.core.service.AbstractCrudService;
  10. import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
  11. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  12. import cn.com.goldenwater.dcproj.utils.InspPblmUtils;
  13. import cn.com.goldenwater.id.util.UuidUtil;
  14. import com.github.pagehelper.PageHelper;
  15. import com.github.pagehelper.PageInfo;
  16. import org.apache.commons.collections.CollectionUtils;
  17. import org.apache.commons.lang3.StringUtils;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.stereotype.Service;
  20. import org.springframework.transaction.annotation.Transactional;
  21. import javax.servlet.http.HttpServletResponse;
  22. import java.util.Date;
  23. import java.util.List;
  24. /**
  25. * @author lune
  26. * @date 2021-3-2
  27. */
  28. @Service
  29. @Transactional(rollbackFor = Exception.class)
  30. public class BisInspHystRgstrServiceImpl extends AbstractCrudService<BisInspHystRgstr, BisInspHystRgstrParam> implements BisInspHystRgstrService , BisInspObjStrategy {
  31. @Autowired
  32. private BisInspHystRgstrDao bisInspHystRgstrDao;
  33. @Autowired
  34. private AttAdXBaseDao attAdXBaseDao;
  35. @Autowired
  36. private BisInspPblmDao bisInspPblmDao;
  37. @Autowired
  38. private BisInspHystCoMngInfoDao bisInspHystCoMngInfoDao;
  39. @Autowired
  40. private BisInspHystInfoDao bisInspHystInfoDao;
  41. @Autowired
  42. private BisInspHystOocInfoDao bisInspHystOocInfoDao;
  43. @Autowired
  44. private BisInspHystRectInfoDao bisInspHystRectInfoDao;
  45. @Autowired
  46. private BisInspHystSfmngInfoDao bisInspHystSfmngInfoDao;
  47. @Autowired
  48. private BisInspAllObjDao bisInspAllObjDao;
  49. public BisInspHystRgstrServiceImpl(BisInspHystRgstrDao bisInspHystRgstrDao) {
  50. super(bisInspHystRgstrDao);
  51. this.bisInspHystRgstrDao = bisInspHystRgstrDao;
  52. }
  53. @Override
  54. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  55. AttAdXBase base = attAdXBaseDao.get(bisInspAllObj.getCode());
  56. BisInspHystRgstr rgstr = new BisInspHystRgstr();
  57. rgstr.setId(UuidUtil.uuid());
  58. rgstr.setObjId(bisInspAllObj.getObjId());
  59. rgstr.setAdCode(base.getAdCode());
  60. rgstr.setAdName(base.getAdName());
  61. rgstr.setAdFullName(base.getAdFullName());
  62. rgstr.setBaseState("0");
  63. rgstr.setRectState("0");
  64. rgstr.setOocState("0");
  65. rgstr.setSfmngState("0");
  66. rgstr.setCoMngState("0");
  67. rgstr.setState("0");
  68. String adCode = base.getAdCode();
  69. if(StringUtils.isNotBlank(adCode)&&adCode.length()>2){
  70. String sc = adCode.substring(0, 2);
  71. if(sc.equals("31") || sc.equals("32")|| sc.equals("33")|| sc.equals("34")
  72. ||sc.equals("36") || sc.equals("42")|| sc.equals("43")
  73. ||sc.equals("50") || sc.equals("51")|| sc.equals("52")|| sc.equals("53")){
  74. rgstr.setIsBeYreb("1");
  75. }else{
  76. rgstr.setIsBeYreb("2");
  77. }
  78. }
  79. rgstr.setPersId(persId);
  80. rgstr.setIntm(new Date());
  81. rgstr.setUptm(new Date());
  82. bisInspHystRgstrDao.insert(rgstr);
  83. }
  84. @Override
  85. public void cleanObjData(String objId) {
  86. BisInspHystRgstrParam hystRgstrParam = new BisInspHystRgstrParam();
  87. hystRgstrParam.setObjId(objId);
  88. List<BisInspHystRgstr> list = bisInspHystRgstrDao.findList(hystRgstrParam);
  89. if(CollectionUtils.isNotEmpty(list)){
  90. String rgstrId = list.get(0).getId();
  91. //删除问题
  92. BisInspPblmParam bisInspPblmParam = new BisInspPblmParam();
  93. bisInspPblmParam.setObjId(objId);
  94. bisInspPblmParam.setObjType("73");
  95. this.bisInspPblmDao.deleteBy(bisInspPblmParam);
  96. //删除对象名录表
  97. //1.县级表
  98. BisInspHystCoMngInfoParam coMngInfoParam = new BisInspHystCoMngInfoParam();
  99. coMngInfoParam.setRgstrId(rgstrId);
  100. bisInspHystCoMngInfoDao.deleteBy(coMngInfoParam);
  101. //删除当前小水电
  102. BisInspHystInfoParam bisInspHystInfoParam = new BisInspHystInfoParam();
  103. bisInspHystInfoParam.setRgstrId(rgstrId);
  104. List<BisInspHystInfo> listHystInfo = bisInspHystInfoDao.findList(bisInspHystInfoParam);
  105. if(listHystInfo !=null && listHystInfo.size()>0){
  106. for(BisInspHystInfo bean : listHystInfo){
  107. //删除小水电填报子表
  108. String id = bean.getId();
  109. if(StringUtils.isNotBlank(id)){
  110. BisInspHystOocInfoParam bisInspHystOocInfoParam = new BisInspHystOocInfoParam();
  111. bisInspHystOocInfoParam.setRgstrId(id);
  112. bisInspHystOocInfoDao.deleteBy(bisInspHystOocInfoParam);//退出类
  113. BisInspHystRectInfoParam bisInspHystRectInfoParam = new BisInspHystRectInfoParam();
  114. bisInspHystRectInfoParam.setRgstrId(id);
  115. bisInspHystRectInfoDao.deleteBy(bisInspHystRectInfoParam);//整改
  116. BisInspHystSfmngInfoParam bisInspHystSfmngInfoParam = new BisInspHystSfmngInfoParam();
  117. bisInspHystSfmngInfoParam.setRgstrId(id);
  118. bisInspHystSfmngInfoDao.deleteBy(bisInspHystSfmngInfoParam);//安全
  119. }
  120. }
  121. }
  122. bisInspHystInfoDao.deleteBy(bisInspHystInfoParam);
  123. BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
  124. bisInspAllObjParam.setObjId(objId);
  125. this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);
  126. bisInspHystRgstrDao.delete(rgstrId);
  127. }
  128. }
  129. @Override
  130. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  131. return this.findHystPage(typeParam);
  132. }
  133. @Override
  134. public Object findObjListByType(TypeParam typeParam) {
  135. List<BisInspHystRgstrDto> list = bisInspHystRgstrDao.findHystList(typeParam);
  136. if (list.size() > 0) {
  137. for (BisInspHystRgstrDto rgstrDto : list) {
  138. String adFullName = rgstrDto.getAdName();
  139. if (StringUtils.isBlank(adFullName)) {
  140. continue;
  141. }
  142. if (adFullName.contains(SplitValue.HENG_SPLIT)) {
  143. String[] split = adFullName.split(SplitValue.HENG_SPLIT);
  144. if (split.length == 3) {
  145. rgstrDto.setProvince(split[0]);
  146. rgstrDto.setCity(split[1]);
  147. rgstrDto.setCountry(split[2]);
  148. }
  149. if (split.length == 2) {
  150. rgstrDto.setProvince(split[0]);
  151. rgstrDto.setCity(split[1]);
  152. rgstrDto.setCountry("");
  153. }
  154. } else {
  155. rgstrDto.setProvince(adFullName);
  156. }
  157. }
  158. }
  159. return list;
  160. }
  161. @Override
  162. public String getType() {
  163. return "73";
  164. }
  165. @Override
  166. public PageInfo<BisInspHystRgstrDto> findHystPage(TypeParam param) {
  167. if (StringUtils.isNotBlank(param.getAdCode())) {
  168. param.setAdCode(String.valueOf(AdLevelUtil.SubAd(param.getAdCode()).get(SplitValue.SUBAD)));
  169. }
  170. if (StringUtils.isNotBlank(param.getAdCodes())) {
  171. param.setAdCodes(AdLevelUtil.getListAddvcd(param.getAdCodes()));
  172. }
  173. PageHelper.startPage(param);
  174. List<BisInspHystRgstrDto> list = bisInspHystRgstrDao.findHystList(param);
  175. if (list.size() > 0) {
  176. for (BisInspHystRgstrDto rgstrDto : list) {
  177. String adFullName = rgstrDto.getAdName();
  178. if (StringUtils.isBlank(adFullName)) {
  179. continue;
  180. }
  181. if (adFullName.contains(SplitValue.HENG_SPLIT)) {
  182. String[] split = adFullName.split(SplitValue.HENG_SPLIT);
  183. if (split.length == 3) {
  184. rgstrDto.setProvince(split[0]);
  185. rgstrDto.setCity(split[1]);
  186. rgstrDto.setCountry(split[2]);
  187. }
  188. if (split.length == 2) {
  189. rgstrDto.setProvince(split[0]);
  190. rgstrDto.setCity(split[1]);
  191. rgstrDto.setCountry("");
  192. }
  193. } else {
  194. rgstrDto.setProvince(adFullName);
  195. }
  196. }
  197. }
  198. return new PageInfo<>(list);
  199. }
  200. }