1296d8ff61bb1e382166d034556acdd30df88341.svn-base 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. package cn.com.goldenwater.dcproj.service.impl.vill2020;
  2. import cn.com.goldenwater.core.service.AbstractCrudService;
  3. import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
  4. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  5. import cn.com.goldenwater.dcproj.constValue.StateEnum;
  6. import cn.com.goldenwater.dcproj.dao.*;
  7. import cn.com.goldenwater.dcproj.dto.AttCountryDto;
  8. import cn.com.goldenwater.dcproj.dto.BisNewVillRgstrDto;
  9. import cn.com.goldenwater.dcproj.dto.SumNewVillNumDto;
  10. import cn.com.goldenwater.dcproj.model.*;
  11. import cn.com.goldenwater.dcproj.param.*;
  12. import cn.com.goldenwater.dcproj.service.*;
  13. import cn.com.goldenwater.dcproj.utils.InspUtils;
  14. import cn.com.goldenwater.id.util.UuidUtil;
  15. import com.github.pagehelper.PageHelper;
  16. import com.github.pagehelper.PageInfo;
  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.ArrayList;
  23. import java.util.Date;
  24. import java.util.List;
  25. /**
  26. * @author lune
  27. * @date 2020-3-27
  28. */
  29. @Service
  30. @Transactional
  31. public class BisNewVillRgstrServiceImpl extends AbstractCrudService<BisNewVillRgstr, BisNewVillRgstrParam> implements BisNewVillRgstrService, BisInspObjStrategy {
  32. @Autowired
  33. private BisNewVillRgstrDao bisNewVillRgstrDao;
  34. @Autowired
  35. private AttAdXBaseDao attAdXBaseDao;
  36. @Autowired
  37. private BisInspPblmDao bisInspPblmDao;
  38. @Autowired
  39. private BisNewCountryFeeService bisNewCountryFeeService;
  40. @Autowired
  41. private BisNewDcuserRelVillService bisNewDcuserRelVillService;
  42. @Autowired
  43. private BisNewWateruserInfoService bisNewWateruserInfoService;
  44. @Autowired
  45. private BisNewVillRgstrService bisNewVillRgstrService;
  46. @Autowired
  47. private BisNewCountryFeeDao bisNewCountryFeeDao;
  48. @Autowired
  49. private BisInspAllObjDao inspAllObjDao;
  50. @Autowired
  51. private BisNewWateruserInfoDao bisNewWateruserInfoDao;
  52. public BisNewVillRgstrServiceImpl(BisNewVillRgstrDao bisNewVillRgstrDao) {
  53. super(bisNewVillRgstrDao);
  54. this.bisNewVillRgstrDao = bisNewVillRgstrDao;
  55. }
  56. @Override
  57. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  58. BisNewVillRgstr bisNewVillRgstr = new BisNewVillRgstr();
  59. bisNewVillRgstr.setId(UuidUtil.uuid());
  60. AttAdXBase attAdXBase = attAdXBaseDao.get(bisInspAllObj.getCode());
  61. if (attAdXBase != null) {
  62. bisNewVillRgstr.setIsPkx(attAdXBase.getIsPoveryt());
  63. bisNewVillRgstr.setRegsNm(attAdXBase.getAdName());
  64. bisNewVillRgstr.setLttdpc(attAdXBase.getLttdpc());
  65. bisNewVillRgstr.setLgtdpc(attAdXBase.getLgtdpc());
  66. bisNewVillRgstr.setLgtd(attAdXBase.getLgtd());
  67. bisNewVillRgstr.setLttd(attAdXBase.getLttd());
  68. bisNewVillRgstr.setAdFullName(attAdXBase.getAdFullName());
  69. bisNewVillRgstr.setAdCode(attAdXBase.getAdCode());
  70. }
  71. bisNewVillRgstr.setPersId(persId);
  72. bisNewVillRgstr.setObjId(bisInspAllObj.getObjId());
  73. bisNewVillRgstr.setState("0");
  74. bisNewVillRgstr.setUptm(new Date());
  75. bisNewVillRgstr.setIntm(new Date());
  76. bisNewVillRgstr.setWaterPriceIsMade("0");
  77. bisNewVillRgstrDao.insert(bisNewVillRgstr);
  78. }
  79. @Override
  80. public void cleanObjData(String objId) {
  81. BisNewVillRgstrParam bisInspVillRgstrParam = new BisNewVillRgstrParam();
  82. bisInspVillRgstrParam.setObjId(objId);
  83. BisInspAllObjParam inspAllObjParam = new BisInspAllObjParam();
  84. inspAllObjParam.setObjId(objId);
  85. inspAllObjDao.deleteBy(inspAllObjParam);
  86. List<BisNewVillRgstr> list = this.bisNewVillRgstrDao.findList(bisInspVillRgstrParam);
  87. if (list.size() > 0) {
  88. String id = list.get(0).getId();
  89. BisInspPblmParam bisInspPblmParam = new BisInspPblmParam();
  90. bisInspPblmParam.setRegid(id);
  91. bisInspPblmParam.setObjType(BisInspEnum.VILL2020.getValue());
  92. this.bisInspPblmDao.deleteBy(bisInspPblmParam);//ɾ������
  93. BisNewVillRgstrParam villRgstrParam = new BisNewVillRgstrParam();
  94. villRgstrParam.setId(id);
  95. BisNewVillRgstr villRgstr = bisNewVillRgstrService.get(id);
  96. if (villRgstr != null) {
  97. bisNewVillRgstrService.delete(id);
  98. BisNewDcuserRelVillParam newDcuserRelVillParam = new BisNewDcuserRelVillParam();
  99. newDcuserRelVillParam.setRegstrId(villRgstr.getId());
  100. bisNewDcuserRelVillService.deleteBy(newDcuserRelVillParam);
  101. BisNewWateruserInfoParam newWateruserInfoParam = new BisNewWateruserInfoParam();
  102. newWateruserInfoParam.setRegstrId(villRgstr.getId());
  103. bisNewWateruserInfoService.deleteBy(newWateruserInfoParam);
  104. BisNewCountryFeeParam newCountryFeeParam = new BisNewCountryFeeParam();
  105. newCountryFeeParam.setRegstrId(villRgstr.getId());
  106. bisNewCountryFeeService.deleteBy(newCountryFeeParam);
  107. }
  108. }
  109. }
  110. @Override
  111. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  112. return this.findPageByType(typeParam);
  113. }
  114. @Override
  115. public Object findObjListByType(TypeParam typeParam) {
  116. return this.findNewVillListByType(typeParam);
  117. }
  118. @Override
  119. public String getType() {
  120. return BisInspEnum.VILL2020.getValue();
  121. }
  122. @Override
  123. public PageInfo<BisNewVillRgstrDto> findNewVillPageByType(TypeParam typeParam) {
  124. PageHelper.startPage(typeParam);
  125. List<BisNewVillRgstrDto> list = bisNewVillRgstrDao.findNewVillPageByType(typeParam);
  126. setCountType(list);
  127. return new PageInfo<>(list);
  128. }
  129. private void setCountType(List<BisNewVillRgstrDto> list) {
  130. for (BisNewVillRgstrDto dto : list) {
  131. if (StringUtils.isBlank(dto.getCode())) {
  132. continue;
  133. }
  134. if (dto.getVillNum() != 0) {
  135. continue;
  136. }
  137. String code = dto.getCode().replace("00", "");
  138. if (code.length() < 6) {
  139. continue;
  140. }
  141. SumNewVillNumDto villNUm = bisNewVillRgstrDao.sumNewVillNumAdd(dto.getRegstrId(), code);
  142. dto.setVillNum(villNUm.getVillNum());
  143. dto.setProNum(villNUm.getProNum());
  144. dto.setWaterNum(villNUm.getWaterNum());
  145. BisNewVillRgstr bisNewVillRgstr = new BisNewVillRgstr();
  146. bisNewVillRgstr.setId(dto.getRegstrId());
  147. bisNewVillRgstr.setWaterNum(villNUm.getWaterNum());
  148. bisNewVillRgstr.setVillNum(villNUm.getVillNum());
  149. bisNewVillRgstr.setProNum(villNUm.getProNum());
  150. bisNewVillRgstrDao.updateAllNum(bisNewVillRgstr);
  151. }
  152. }
  153. @Override
  154. public List<BisNewVillRgstrDto> findNewVillListByType(TypeParam typeParam) {
  155. List<BisNewVillRgstrDto> list = bisNewVillRgstrDao.findNewVillPageByType(typeParam);
  156. if (list == null) {
  157. return new ArrayList<>();
  158. }
  159. return list;
  160. }
  161. @Override
  162. public PageInfo<AttCountryDto> pageNotAddRegstr(CommonParam commonParam) {
  163. PageHelper.startPage(commonParam);
  164. List<AttCountryDto> list = bisNewVillRgstrDao.pageNotAddRegstr(commonParam);
  165. return new PageInfo<>(list);
  166. }
  167. @Override
  168. public PageInfo<BisInspPblm> findPageList(PlbmParam pblmParam) {
  169. PageHelper.startPage(pblmParam);
  170. String orgIds = InspUtils.setOrgIds(pblmParam.getOrgIds());
  171. pblmParam.setOrgIds(orgIds);
  172. pblmParam.setCodes(InspUtils.setOrgIds(pblmParam.getCodes()));
  173. List<BisInspPblm> list = bisNewVillRgstrDao.findPageList(pblmParam);
  174. if (list.size() > 0) {
  175. for (BisInspPblm b : list) {
  176. if (b.getAdFullName() != null) {
  177. if (b.getAdFullName().contains(SplitValue.HENG_SPLIT)) {
  178. String[] split = b.getAdFullName().split(SplitValue.HENG_SPLIT);
  179. if (split.length == 3) {
  180. b.setProvince(split[0]);
  181. b.setCity(split[1]);
  182. b.setCountry(split[2]);
  183. }
  184. if (split.length == 2) {
  185. b.setProvince(split[0]);
  186. b.setCity(split[1]);
  187. b.setCountry("");
  188. }
  189. } else {
  190. b.setProvince(b.getAdFullName());
  191. }
  192. }
  193. }
  194. }
  195. return new PageInfo<>(list);
  196. }
  197. @Override
  198. public PageInfo<BisNewVillRgstrDto> findPageByType(TypeParam typeParam) {
  199. PageHelper.startPage(typeParam);
  200. List<BisNewVillRgstrDto> list = bisNewVillRgstrDao.findPageByType(typeParam);
  201. setCountType(list);
  202. if (list.size() > 0) {
  203. for (BisNewVillRgstrDto b : list) {
  204. if (b.getAdFullName() != null) {
  205. if (b.getAdFullName().contains(SplitValue.HENG_SPLIT)) {
  206. String[] split = b.getAdFullName().split(SplitValue.HENG_SPLIT);
  207. if (split.length == 3) {
  208. b.setProvince(split[0]);
  209. b.setCity(split[1]);
  210. b.setCounty(split[2]);
  211. }
  212. if (split.length == 2) {
  213. b.setProvince(split[0]);
  214. b.setCity(split[1]);
  215. b.setCounty("");
  216. }
  217. } else {
  218. b.setProvince(b.getAdFullName());
  219. }
  220. }
  221. }
  222. }
  223. return new PageInfo<>(list);
  224. }
  225. @Override
  226. public void updateWaterOrPay(String regstrId) {
  227. if (StringUtils.isBlank(regstrId)) {
  228. return;
  229. }
  230. BisNewCountryFeeParam countryFeeParam = new BisNewCountryFeeParam();
  231. countryFeeParam.setRegstrId(regstrId);
  232. countryFeeParam.setStatus(StateEnum.COMASTSTATE.getKey());
  233. BisNewVillRgstr bisNewVillRgstr = new BisNewVillRgstr();
  234. List<BisNewCountryFee> countryFeeList = bisNewCountryFeeDao.findList(countryFeeParam);
  235. BisNewWateruserInfoParam newWateruserInfoParam = new BisNewWateruserInfoParam();
  236. newWateruserInfoParam.setRegstrId(regstrId);
  237. newWateruserInfoParam.setStatus(StateEnum.COMASTSTATE.getKey());
  238. List<BisNewWateruserInfo> wateruserInfoList = bisNewWateruserInfoDao.findList(newWateruserInfoParam);
  239. if (!countryFeeList.isEmpty() && !wateruserInfoList.isEmpty()) {
  240. bisNewVillRgstr.setId(regstrId);
  241. bisNewVillRgstr.setWaterSafeOrPay(StateEnum.COMASTSTATE.getKey());
  242. bisNewVillRgstrDao.update(bisNewVillRgstr);
  243. }
  244. }
  245. @Override
  246. public void updateVillSum(BisNewVillRgstr bisNewVillRgstr) {
  247. bisNewVillRgstrDao.updateVillSum(bisNewVillRgstr);
  248. }
  249. @Override
  250. public void updateProSum(BisNewVillRgstr bisNewVillRgstr) {
  251. bisNewVillRgstrDao.updateProSum(bisNewVillRgstr);
  252. }
  253. @Override
  254. public void updateWaterSum(BisNewVillRgstr bisNewVillRgstr) {
  255. bisNewVillRgstrDao.updateWaterSum(bisNewVillRgstr);
  256. }
  257. @Override
  258. public void updateAllNum(BisNewVillRgstr bisNewVillRgstr) {
  259. bisNewVillRgstrDao.updateAllNum(bisNewVillRgstr);
  260. }
  261. }