3d254c6fa952eac328b3a2082fdc811ac46bff97.svn-base 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. package cn.com.goldenwater.dcproj.service.impl.vill;
  2. import cn.com.goldenwater.core.service.AbstractCrudService;
  3. import cn.com.goldenwater.dcproj.dao.BisInspProSourceProtectDao;
  4. import cn.com.goldenwater.dcproj.dao.BisInspVillRgstrDao;
  5. import cn.com.goldenwater.dcproj.dao.WrGwsBDao;
  6. import cn.com.goldenwater.dcproj.dto.BisInspProSourceProtectDcdxDto;
  7. import cn.com.goldenwater.dcproj.dto.BisInspProSourceProtectDto;
  8. import cn.com.goldenwater.dcproj.dto.VillRgstrDto;
  9. import cn.com.goldenwater.dcproj.model.BisInspProSourceProtect;
  10. import cn.com.goldenwater.dcproj.model.BisInspVillRgstr;
  11. import cn.com.goldenwater.dcproj.model.WrGwsB;
  12. import cn.com.goldenwater.dcproj.param.AttCwsBaseListParam;
  13. import cn.com.goldenwater.dcproj.param.BisInspProSourceProtectParam;
  14. import cn.com.goldenwater.dcproj.param.GetVillPageByNodeIdParam;
  15. import cn.com.goldenwater.dcproj.param.WaterResourceListParam;
  16. import cn.com.goldenwater.dcproj.service.BisInspProSourceProtectService;
  17. import cn.com.goldenwater.dcproj.utils.DateUtils;
  18. import cn.com.goldenwater.dcproj.utils.GeoUtil;
  19. import cn.com.goldenwater.id.util.UuidUtil;
  20. import com.github.pagehelper.PageHelper;
  21. import com.github.pagehelper.PageInfo;
  22. import org.apache.commons.lang3.StringUtils;
  23. import org.springframework.beans.factory.annotation.Autowired;
  24. import org.springframework.stereotype.Service;
  25. import org.springframework.transaction.annotation.Transactional;
  26. import java.util.ArrayList;
  27. import java.util.List;
  28. import java.util.Map;
  29. /**
  30. * @author zhengdafei
  31. * @date 2019-2-19
  32. */
  33. @Service
  34. @Transactional
  35. public class BisInspProSourceProtectServiceImpl extends AbstractCrudService<BisInspProSourceProtect, BisInspProSourceProtectParam> implements BisInspProSourceProtectService {
  36. @Autowired
  37. private BisInspProSourceProtectDao bisInspProSourceProtectDao;
  38. @Autowired
  39. private BisInspVillRgstrDao bisInspVillRgstrDao;
  40. public BisInspProSourceProtectServiceImpl(BisInspProSourceProtectDao bisInspProSourceProtectDao) {
  41. super(bisInspProSourceProtectDao);
  42. this.bisInspProSourceProtectDao = bisInspProSourceProtectDao;
  43. }
  44. @Override
  45. public String add(BisInspProSourceProtect p) throws Exception {
  46. String uuid = UuidUtil.uuid();
  47. String now = DateUtils.getTodayYMDHMS();
  48. p.setCreateTime(now);
  49. p.setUpdateTime(now);
  50. p.setEngSurId(uuid);
  51. transferGeo(p);
  52. bisInspProSourceProtectDao.insert(p);
  53. BisInspVillRgstr rp = new BisInspVillRgstr();
  54. rp.setEngId(p.getEngId());
  55. rp.setState("1");
  56. bisInspVillRgstrDao.update(rp);
  57. return uuid;
  58. }
  59. @Override
  60. public int modify(BisInspProSourceProtect p) throws Exception {
  61. String now = DateUtils.getTodayYMDHMS();
  62. p.setUpdateTime(now);
  63. transferGeo(p);
  64. BisInspProSourceProtect bp = bisInspProSourceProtectDao.get(p.getEngSurId());
  65. String wsCode = bp.getWtsrCd();
  66. p.setWtsrCd(wsCode);
  67. int ret = bisInspProSourceProtectDao.update(p);
  68. return ret;
  69. }
  70. public void transferGeo(BisInspProSourceProtect p) {
  71. String src = p.getSrc();
  72. if (StringUtils.isNotBlank(src)) {
  73. if ("PC".equalsIgnoreCase(src)) {
  74. if (p.getLgtdpc() != null && p.getLttdpc() != null) {
  75. Map<String, Double> map = GeoUtil.wgs84togcj02(p.getLgtdpc(), p.getLttdpc());
  76. p.setLgtd(map.get("lon"));
  77. p.setLttd(map.get("lat"));
  78. }
  79. } else if ("MOBILE".equalsIgnoreCase(src)) {
  80. if (p.getLgtd() != null && p.getLttd() != null) {
  81. Map<String, Double> map = GeoUtil.gcj02towgs84(p.getLgtd(), p.getLttd());
  82. p.setLgtdpc(map.get("lon"));
  83. p.setLttdpc(map.get("lat"));
  84. }
  85. }
  86. } else {
  87. if (p.getLgtdpc() != null && p.getLttdpc() != null) {
  88. Map<String, Double> map = GeoUtil.wgs84togcj02(p.getLgtdpc(), p.getLttdpc());
  89. p.setLgtd(map.get("lon"));
  90. p.setLttd(map.get("lat"));
  91. } else if (p.getLgtd() != null && p.getLttd() != null) {
  92. Map<String, Double> map = GeoUtil.gcj02towgs84(p.getLgtd(), p.getLttd());
  93. p.setLgtdpc(map.get("lon"));
  94. p.setLttdpc(map.get("lat"));
  95. }
  96. }
  97. }
  98. @Override
  99. public PageInfo<BisInspProSourceProtect> queryListByPage(BisInspProSourceProtectParam p) throws Exception {
  100. PageHelper.startPage(p.getPageNum(), p.getPageSize());
  101. List<BisInspProSourceProtect> list = bisInspProSourceProtectDao.findList(p);
  102. return new PageInfo<BisInspProSourceProtect>(list);
  103. }
  104. @Autowired
  105. private WrGwsBDao wrGwsBDao;
  106. @Override
  107. public List<BisInspProSourceProtect> queryList(BisInspProSourceProtectParam p) throws Exception {
  108. List<BisInspProSourceProtect> list = bisInspProSourceProtectDao.findList(p);
  109. if (list == null || list.isEmpty()) {
  110. list = new ArrayList<>();
  111. WrGwsB wrGwsB = wrGwsBDao.get(p.getEngSurId());
  112. if (wrGwsB != null) {
  113. BisInspProSourceProtect proSourceProtect = new BisInspProSourceProtect();
  114. proSourceProtect.setCwsCode(p.getCwsCode());
  115. proSourceProtect.setWaterSourceNm(wrGwsB.getGwsNm());
  116. proSourceProtect.setEngId(p.getEngId());
  117. proSourceProtect.setLgtd(wrGwsB.getLgtd());
  118. proSourceProtect.setLttd(wrGwsB.getLttd());
  119. list.add(proSourceProtect);
  120. }
  121. }
  122. return list;
  123. }
  124. @Override
  125. public PageInfo<BisInspProSourceProtectDto> queryListByObjId(AttCwsBaseListParam p) throws Exception {
  126. String adCode = "";
  127. if (StringUtils.isNotBlank(p.getObjId())) {
  128. adCode = p.getObjId().substring(0, 6);
  129. }
  130. PageHelper.startPage(p.getPageNum(), p.getPageSize());
  131. List<BisInspProSourceProtectDto> list = bisInspProSourceProtectDao.queryListByObjId(adCode, p.getName(), p.getEngId());
  132. return new PageInfo<BisInspProSourceProtectDto>(list);
  133. }
  134. @Override
  135. public PageInfo<BisInspProSourceProtect> queryListByObjId(WaterResourceListParam p) throws Exception {
  136. List<BisInspProSourceProtect> list = new ArrayList<>();
  137. return new PageInfo<BisInspProSourceProtect>(list);
  138. }
  139. @Override
  140. public List<BisInspProSourceProtect> getListByCodeAndPerId(VillRgstrDto villRgstrDto) {
  141. return this.bisInspProSourceProtectDao.getListByCodeAndPerId(villRgstrDto);
  142. }
  143. @Override
  144. public PageInfo<BisInspProSourceProtect> getPageByCodeAndPerId(VillRgstrDto villRgstrDto) {
  145. PageHelper.startPage(villRgstrDto.getPageNum(), villRgstrDto.getPageSize());
  146. List<BisInspProSourceProtect> list = bisInspProSourceProtectDao.getListByCodeAndPerId(villRgstrDto);
  147. return new PageInfo<BisInspProSourceProtect>(list);
  148. }
  149. @Override
  150. public PageInfo<BisInspProSourceProtectDcdxDto> getPageByNodeId(GetVillPageByNodeIdParam p) throws Exception {
  151. if (StringUtils.isBlank(p.getNodeId())) {
  152. throw new Exception("nodeId 不能为空");
  153. }
  154. PageHelper.startPage(p.getPageNum(), p.getPageSize());
  155. List<BisInspProSourceProtectDcdxDto> list = bisInspProSourceProtectDao.getPageByNodeId(p);
  156. return new PageInfo<BisInspProSourceProtectDcdxDto>(list);
  157. }
  158. }