85072f324246cb153df3472ed43f6f8271bad0a3.svn-base 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. package cn.com.goldenwater.dcproj.service.impl.wiu;
  2. import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
  3. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  4. import cn.com.goldenwater.dcproj.dao.*;
  5. import cn.com.goldenwater.dcproj.dto.BisInspRgstrDto;
  6. import cn.com.goldenwater.dcproj.model.AttWiuBase;
  7. import cn.com.goldenwater.dcproj.model.BisInspAllObj;
  8. import cn.com.goldenwater.dcproj.model.BisInspWiuRgstr;
  9. import cn.com.goldenwater.dcproj.param.*;
  10. import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
  11. import cn.com.goldenwater.dcproj.service.BisInspWiuRgstrService;
  12. import cn.com.goldenwater.core.service.AbstractCrudService;
  13. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  14. import cn.com.goldenwater.dcproj.utils.BeanUtil;
  15. import cn.com.goldenwater.dcproj.utils.expExcel.ExportUtil;
  16. import cn.com.goldenwater.id.util.UuidUtil;
  17. import com.github.pagehelper.PageHelper;
  18. import com.github.pagehelper.PageInfo;
  19. import org.apache.commons.lang3.StringUtils;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.stereotype.Service;
  22. import org.springframework.transaction.annotation.Transactional;
  23. import javax.servlet.http.HttpServletResponse;
  24. import java.util.Date;
  25. import java.util.List;
  26. /**
  27. * @author lune
  28. * @date 2019-8-9
  29. */
  30. @Service
  31. @Transactional
  32. public class BisInspWiuRgstrServiceImpl extends AbstractCrudService<BisInspWiuRgstr, BisInspWiuRgstrParam> implements BisInspWiuRgstrService,BisInspObjStrategy {
  33. @Autowired
  34. private BisInspWiuRgstrDao bisInspWiuRgstrDao;
  35. @Autowired
  36. private AttWiuBaseDao wiuBaseDao;
  37. @Autowired
  38. private BisInspPblmDao bisInspPblmDao;
  39. @Autowired
  40. private BisInspWiuRgstrIntInfoDao wiuRgstrIntInfoDao;
  41. @Autowired
  42. private BisInspWiuRgstrApprInfoDao wiuRgstrApprInfoDao;
  43. @Autowired
  44. private BisInspAllObjDao bisInspAllObjDao;
  45. public BisInspWiuRgstrServiceImpl(BisInspWiuRgstrDao bisInspWiuRgstrDao) {
  46. super(bisInspWiuRgstrDao);
  47. this.bisInspWiuRgstrDao = bisInspWiuRgstrDao;
  48. }
  49. @Override
  50. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  51. AttWiuBase base = wiuBaseDao.get(bisInspAllObj.getCode());
  52. BisInspWiuRgstr rgstr = new BisInspWiuRgstr();
  53. BeanUtil.copyObject1(base, rgstr);
  54. rgstr.setWiuId(base.getId());
  55. rgstr.setId(UuidUtil.uuid());
  56. rgstr.setObjId(bisInspAllObj.getObjId());
  57. rgstr.setState("0");
  58. rgstr.setDataStat("0");
  59. rgstr.setGroupId(bisInspAllObj.getId());
  60. rgstr.setProvince(bisInspAllObj.getProvince());
  61. rgstr.setPersId(persId);
  62. rgstr.setInTm(new Date());
  63. rgstr.setUpTm(new Date());
  64. bisInspWiuRgstrDao.insert(rgstr);
  65. }
  66. @Override
  67. public String getType() {
  68. return BisInspEnum.WIU.getValue();
  69. }
  70. @Override
  71. public void cleanObjData(String objId) {
  72. BisInspWiuRgstrParam wiuRgstrParam = new BisInspWiuRgstrParam();
  73. wiuRgstrParam.setObjId(objId);
  74. List<BisInspWiuRgstr> list = bisInspWiuRgstrDao.findList(wiuRgstrParam);
  75. if (list.size() > 0) {
  76. String id = list.get(0).getId();
  77. BisInspPblmParam bisInspPblmParam = new BisInspPblmParam();
  78. bisInspPblmParam.setRegid(id);
  79. bisInspPblmParam.setObjType(BisInspEnum.WIU.getValue());
  80. this.bisInspPblmDao.deleteBy(bisInspPblmParam);
  81. //删除取水单位取用水情况
  82. BisInspWiuRgstrIntInfoParam param = new BisInspWiuRgstrIntInfoParam();
  83. param.setRgstrId(id);
  84. wiuRgstrIntInfoDao.deleteBy(param);
  85. //删除取水许可审批监管情况
  86. BisInspWiuRgstrApprInfoParam apprInfoParam = new BisInspWiuRgstrApprInfoParam();
  87. apprInfoParam.setRgstrId(id);
  88. wiuRgstrApprInfoDao.deleteBy(apprInfoParam);
  89. BisInspWiuRgstr rgstr = bisInspWiuRgstrDao.get(id);
  90. bisInspWiuRgstrDao.delete(id);
  91. if (rgstr != null) {
  92. //删除督查对象
  93. BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
  94. bisInspAllObjParam.setObjId(objId);
  95. this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);
  96. }
  97. }
  98. }
  99. @Override
  100. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  101. return findWiuPage(typeParam,response);
  102. }
  103. @Override
  104. public Object findObjListByType(TypeParam typeParam) {
  105. return findWiuList(typeParam,null);
  106. }
  107. @Override
  108. public PageInfo<BisInspRgstrDto> findWiuPage(TypeParam typeParam, HttpServletResponse response) {
  109. if (StringUtils.isNotBlank(typeParam.getAdCode())) {
  110. typeParam.setAdCode(String.valueOf(AdLevelUtil.SubAd(typeParam.getAdCode()).get(SplitValue.SUBAD)));
  111. }
  112. PageHelper.startPage(typeParam.getPageNum(),typeParam.getPageSize());
  113. List<BisInspRgstrDto> list = changeList(this.bisInspWiuRgstrDao.findWiuList(typeParam));
  114. ExportUtil.exportExcel(typeParam.getIsExport(), list, response);
  115. PageInfo<BisInspRgstrDto> pageInfo = new PageInfo<>(list);
  116. return pageInfo;
  117. }
  118. @Override
  119. public List findWiuList(TypeParam typeParam, HttpServletResponse response) {
  120. List<BisInspRgstrDto> list = changeList(this.bisInspWiuRgstrDao.findWiuList(typeParam));
  121. ExportUtil.exportExcel(typeParam.getIsExport(), list, response);
  122. return list;
  123. }
  124. private List<BisInspRgstrDto> changeList(List<BisInspRgstrDto> list){
  125. for (BisInspRgstrDto rgstrDto : list ) {
  126. if (StringUtils.isNotBlank(rgstrDto.getAdName())) {
  127. String[] adFullNames = rgstrDto.getAdName().split(SplitValue.HENG_SPLIT);
  128. rgstrDto.setProvince(adFullNames[0]);
  129. if (adFullNames.length > 1) {
  130. rgstrDto.setCity(adFullNames[1]);
  131. }
  132. if (adFullNames.length > 2) {
  133. rgstrDto.setCountry(adFullNames[2]);
  134. }
  135. }
  136. }
  137. return list;
  138. }
  139. }