09df0778ff26bd09079039e7199d6a20d6ab533d.svn-base 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. package cn.com.goldenwater.dcproj.service.impl;
  2. import cn.com.goldenwater.core.service.AbstractCrudService;
  3. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  4. import cn.com.goldenwater.dcproj.dao.BisInspPblmDao;
  5. import cn.com.goldenwater.dcproj.dao.BisInspVillqhRgstrRelVillDao;
  6. import cn.com.goldenwater.dcproj.model.AttAdXBase;
  7. import cn.com.goldenwater.dcproj.model.BisInspVillqhRgstr;
  8. import cn.com.goldenwater.dcproj.model.BisInspVillqhRgstrRelVill;
  9. import cn.com.goldenwater.dcproj.param.*;
  10. import cn.com.goldenwater.dcproj.service.*;
  11. import cn.com.goldenwater.dcproj.utils.Builder;
  12. import cn.com.goldenwater.dcproj.utils.Constant;
  13. import cn.com.goldenwater.id.util.UuidUtil;
  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. import java.util.Date;
  19. import java.util.List;
  20. import static cn.com.goldenwater.dcproj.util.CheckUtil.check;
  21. import static cn.com.goldenwater.dcproj.util.CheckUtil.notNull;
  22. /**
  23. * @author lhc
  24. * @date 2021-2-1
  25. */
  26. @Service
  27. @Transactional
  28. public class BisInspVillqhRgstrRelVillServiceImpl extends AbstractCrudService<BisInspVillqhRgstrRelVill, BisInspVillqhRgstrRelVillParam> implements BisInspVillqhRgstrRelVillService {
  29. @Autowired
  30. private BisInspVillqhRgstrRelVillDao bisInspVillqhRgstrRelVillDao;
  31. @Autowired
  32. private BisInspVillqhRgstrService bisInspVillqhRgstrService;
  33. @Autowired
  34. private BisInspVillqhPoorService bisInspVillqhPoorService;
  35. @Autowired
  36. private BisInspVillqhFeeService bisInspVillqhFeeService;
  37. @Autowired
  38. private AttAdXBaseService attAdXBaseService;
  39. @Autowired
  40. private BisInspPblmDao bisInspPblmDao;
  41. public BisInspVillqhRgstrRelVillServiceImpl(BisInspVillqhRgstrRelVillDao bisInspVillqhRgstrRelVillDao) {
  42. super(bisInspVillqhRgstrRelVillDao);
  43. this.bisInspVillqhRgstrRelVillDao = bisInspVillqhRgstrRelVillDao;
  44. }
  45. @Override
  46. public int insert(BisInspVillqhRgstrRelVill bisInspVillqhRgstrRelVill) {
  47. String uuid = UuidUtil.uuid();
  48. bisInspVillqhRgstrRelVill.setId(uuid);
  49. bisInspVillqhRgstrRelVill.setIntm(new Date());
  50. bisInspVillqhRgstrRelVill.setUptm(new Date());
  51. bisInspVillqhRgstrRelVill.setDataStat(Constant.STRING_ZERO);
  52. return this.bisInspVillqhRgstrRelVillDao.insert(bisInspVillqhRgstrRelVill);
  53. }
  54. @Override
  55. public int update(BisInspVillqhRgstrRelVill bisInspVillqhRgstrRelVill) {
  56. bisInspVillqhRgstrRelVill.setUptm(new Date());
  57. return this.bisInspVillqhRgstrRelVillDao.update(bisInspVillqhRgstrRelVill);
  58. }
  59. @Override
  60. public int delete(String id) {
  61. BisInspVillqhRgstrRelVill relVill = get(id);
  62. notNull(relVill, "未查询到相应的行政村!", id);
  63. return deleteBy(Builder.of(BisInspVillqhRgstrRelVillParam::new)
  64. .with(BisInspVillqhRgstrRelVillParam::setRegstrId, relVill.getRegstrId())
  65. .with(BisInspVillqhRgstrRelVillParam::setVillCode, relVill.getVillCode())
  66. .build());
  67. }
  68. @Override
  69. public List<CountryParam> addbatch(List<CountryParam> countryParamList, String persId) {
  70. for (CountryParam countryParam : countryParamList) {
  71. if (StringUtils.isBlank(countryParam.getCodes())) {
  72. continue;
  73. }
  74. String[] arrays = countryParam.getCodes().split(SplitValue.FENHAO_SPLIT);
  75. for (String arr : arrays) {
  76. AttAdXBase attAdXBase = attAdXBaseService.getBy(Builder.of(AttAdXBaseParam::new)
  77. .with(AttAdXBaseParam::setAdCode, arr)
  78. .build());
  79. // 判断 adCode 对应的基础表是否 存在
  80. if (attAdXBase == null) {
  81. continue;
  82. }
  83. BisInspVillqhRgstrRelVillParam relVillParam = Builder.of(BisInspVillqhRgstrRelVillParam::new)
  84. .with(BisInspVillqhRgstrRelVillParam::setRegstrId, countryParam.getRegstrId())
  85. .with(BisInspVillqhRgstrRelVillParam::setAdCode, attAdXBase.getAdCode())
  86. .build();
  87. BisInspVillqhRgstrRelVill relVill = getBy(relVillParam);
  88. // 判断 村是否重复添加,已添加则跳过
  89. if (relVill != null) {
  90. continue;
  91. }
  92. relVill = new BisInspVillqhRgstrRelVill();
  93. relVill.setAdCode(attAdXBase.getAdCode().substring(0, 9) + "000");
  94. relVill.setVillCode(attAdXBase.getAdCode());
  95. relVill.setVillageNm(attAdXBase.getAdName());
  96. relVill.setTownName(countryParam.getTownName());
  97. relVill.setRegstrId(countryParam.getRegstrId());
  98. relVill.setStatus(Constant.STRING_ONE);
  99. relVill.setPersId(persId);
  100. insert(relVill);
  101. }
  102. }
  103. // 修改登记表状态
  104. updateRgstr(countryParamList.get(0).getRegstrId());
  105. return countryParamList;
  106. }
  107. private void updateRgstr(String rgstrId) {
  108. updateRgstr(rgstrId, Constant.STRING_ONE);
  109. }
  110. private void updateRgstr(String rgstrId, String state) {
  111. // 修改 登记表状态
  112. BisInspVillqhRgstr rgstr = bisInspVillqhRgstrService.get(rgstrId);
  113. // 如果状态为 1:督查中 2:已督查
  114. if (rgstr == null ||
  115. Constant.STRING_ONE.equals(rgstr.getState()) ||
  116. Constant.STRING_TWO.equals(rgstr.getState())) {
  117. return;
  118. }
  119. BisInspVillqhRgstr villqhRgstr = new BisInspVillqhRgstr();
  120. rgstr.setId(rgstrId);
  121. rgstr.setState(state);
  122. bisInspVillqhRgstrService.update(villqhRgstr);
  123. }
  124. @Override
  125. public int deleteBy(BisInspVillqhRgstrRelVillParam param) {
  126. check(StringUtils.isNotBlank(param.getRegstrId()), "regstrId.no");
  127. bisInspVillqhFeeService.deleteBy(Builder.of(BisInspVillqhFeeParam::new)
  128. .with(BisInspVillqhFeeParam::setRegstrId, param.getRegstrId())
  129. .with(BisInspVillqhFeeParam::setAdCode, param.getVillCode())
  130. .build());
  131. bisInspVillqhPoorService.deleteBy(Builder.of(BisInspVillqhPoorParam::new)
  132. .with(BisInspVillqhPoorParam::setRegstrId, param.getRegstrId())
  133. .with(BisInspVillqhPoorParam::setAdCode, param.getVillCode())
  134. .build());
  135. return super.deleteBy(param);
  136. }
  137. }