1
0

GyjsydjfwscdjController.java 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. package com.siwei.apply.controller;
  2. import com.siwei.apply.domain.Fwmx;
  3. import com.siwei.apply.domain.NodeLand;
  4. import com.siwei.apply.domain.res.GyjsydjfwscdjRes;
  5. import com.siwei.apply.domain.res.GyjsydjfwscdjSinglRes;
  6. import com.siwei.apply.domain.vo.GyjsydjfwscdjUpdateVo;
  7. import com.siwei.apply.domain.vo.GyjsydjfwscdjVo;
  8. import com.siwei.apply.domain.vo.OnChainVo;
  9. import com.siwei.apply.service.GyjsydjfwscdjService;
  10. import com.siwei.apply.service.LandOneCodeService;
  11. import com.siwei.apply.service.NodeLandService;
  12. import com.siwei.apply.service.ProjectService;
  13. import com.siwei.common.core.domain.R;
  14. import com.siwei.common.core.web.controller.BaseController;
  15. import org.apache.commons.collections4.CollectionUtils;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.HashMap;
  19. import java.util.List;
  20. import java.util.Map;
  21. import java.util.Objects;
  22. /**
  23. * 国有建设用地使用权及房屋所有权首次登记 控制器
  24. * 单独选址第八步
  25. * 批次跑批第七步
  26. */
  27. @RestController
  28. @RequestMapping("/gyjsydjfwscdj")
  29. public class GyjsydjfwscdjController extends BaseController {
  30. @Autowired
  31. private GyjsydjfwscdjService gyjsydjfwscdjService;
  32. @Autowired
  33. NodeLandService nodeLandService;
  34. @Autowired
  35. ProjectService projectService;
  36. @Autowired
  37. LandOneCodeService landOneCodeService;
  38. /**
  39. * 添加国有建设用地使用权及房屋所有权首次登记
  40. */
  41. @PostMapping()
  42. public R<Map> Add(@RequestBody GyjsydjfwscdjVo gyjsydjfwscdjVo) {
  43. try {
  44. // Boolean b = gyjsydjfwscdjService.isExit(gyjsydjfwscdjVo.getProjectId());
  45. // if (b == true) {
  46. // return R.fail("此项目已添加国有建设用地使用权及房屋所有权首次登记");
  47. // }
  48. String id = gyjsydjfwscdjService.add(gyjsydjfwscdjVo);
  49. Map<String, String> map = new HashMap<>();
  50. map.put("id", id);
  51. return R.ok(map);
  52. } catch (Exception e) {
  53. return R.fail(e.getMessage());
  54. }
  55. }
  56. /**
  57. * 获取国有建设用地使用权及房屋所有权首次登记(返回结果对象,内含列表)
  58. *
  59. * @param projectId 项目ID
  60. * @return 结果对象
  61. */
  62. @GetMapping("/{projectId}")
  63. public R<GyjsydjfwscdjRes> Get(@PathVariable String projectId) {
  64. try {
  65. return R.ok(gyjsydjfwscdjService.get(projectId));
  66. } catch (Exception e) {
  67. return R.fail(e.getMessage());
  68. }
  69. }
  70. /**
  71. * 通过主键id获取单条记录,返回包含项目名称与代码的结构(与 GyjsydscdjController 风格一致)
  72. */
  73. @GetMapping("/id/{id}")
  74. public R<GyjsydjfwscdjSinglRes> GetById(@PathVariable String id) {
  75. try {
  76. return R.ok(gyjsydjfwscdjService.getById(id));
  77. } catch (Exception e) {
  78. return R.fail(e.getMessage());
  79. }
  80. }
  81. /**
  82. * 更新国有建设用地使用权及房屋所有权首次登记
  83. *
  84. * @param gyjsydjfwscdjUpdateVo 国有建设用地使用权及房屋所有权首次登记
  85. * @return 操作结果
  86. */
  87. @PutMapping()
  88. public R<Void> Update(@RequestBody GyjsydjfwscdjUpdateVo gyjsydjfwscdjUpdateVo) {
  89. try {
  90. gyjsydjfwscdjService.update(gyjsydjfwscdjUpdateVo);
  91. return R.ok();
  92. } catch (Exception e) {
  93. return R.fail(e.getMessage());
  94. }
  95. }
  96. /**
  97. * 更新国有建设用地使用权及房屋所有权首次登记的上链状态
  98. */
  99. @PutMapping("/onchain")
  100. public R<Void> updateHasOnchain(@RequestBody OnChainVo onChainVo) {
  101. try {
  102. if(CollectionUtils.isEmpty(onChainVo.getIds())){
  103. return R.fail(502,"节点为空,确保基本数据填写完毕");
  104. }
  105. for (String id : onChainVo.getIds()) {
  106. NodeLand nodeLand = nodeLandService.getNodeLandByNodeId(id);
  107. if(Objects.isNull(nodeLand)){
  108. return R.fail(502,"数据空间信息不存在,请检查先导入空间数据");
  109. }
  110. }
  111. for (String id : onChainVo.getIds()) {
  112. gyjsydjfwscdjService.updateHasOnchain(id, onChainVo.getHasOnchain());
  113. }
  114. // 更新项目表的上链数量
  115. projectService.countOnChinaNum(onChainVo.getProjectId());
  116. //这里生成资源吗
  117. for (String id : onChainVo.getIds()) {
  118. landOneCodeService.addOrUpdateLandOneCodeInfo(onChainVo.getProjectId(),id);
  119. }
  120. return R.ok();
  121. } catch (Exception e) {
  122. return R.fail(e.getMessage());
  123. }
  124. }
  125. //根据业务号获取房屋列表
  126. @GetMapping("/house/list")
  127. public R<?> supplyList(
  128. @RequestParam(value = "pageNum", required = false) Integer pageNum,
  129. @RequestParam(value = "pageSize", required = false) Integer pageSize,
  130. @RequestParam(value = "businessId", required = false) String businessId) {
  131. try {
  132. startPage();
  133. List<Fwmx> resList = gyjsydjfwscdjService.houseList(businessId);
  134. return R.ok(getDataTable(resList));
  135. } catch (Exception e) {
  136. e.printStackTrace();
  137. return R.fail(e.getMessage());
  138. }
  139. }
  140. }