Browse Source

调整不动产字段信息

chenendian 1 month ago
parent
commit
d266ffc57c

+ 19 - 8
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/controller/third/OfferDataController.java

@@ -3,6 +3,7 @@ package com.siwei.apply.controller.third;
 import com.siwei.apply.domain.LandOneCode;
 import com.siwei.apply.domain.NodeAttachment;
 import com.siwei.apply.domain.vo.AttachmentParamVo;
+import com.siwei.apply.domain.vo.HouseFirstParamVo;
 import com.siwei.apply.domain.vo.LandFirstParamVo;
 import com.siwei.apply.service.third.OfferDataService;
 import com.siwei.apply.utils.ServiceUtil;
@@ -48,7 +49,7 @@ public class OfferDataController extends BaseController {
 
 
     /**
-     *
+     *  国有建设用地使用权首次登记
      * 不动产土地登记完成后入参使用
      */
     @PostMapping("/third/landFirstRegistration")
@@ -65,13 +66,23 @@ public class OfferDataController extends BaseController {
     }
 
 
-
-
-
-
-
-
-
+    /**
+     *
+     *    国有建设用地使用权及房屋所有权首次登记
+     *    landFirstParamVo
+     *    houseFirstParamVo
+     *    不动产土地登记完成后入参使用
+     */
+    @PostMapping("/third/houseFirstRegistration")
+    public R<Map<String, Object>> houseFirstRegistration(@RequestBody HouseFirstParamVo body) {
+        try {
+                Map<String, Object> map = offerDataService.houseFirstRegistration(body);
+                map.put("id", map.get("id"));
+                return R.ok(map);
+        } catch (Exception e) {
+            return R.fail(e.getMessage());
+        }
+    }
 
 
 

+ 132 - 0
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/domain/vo/HouseFirstParamVo.java

@@ -0,0 +1,132 @@
+package com.siwei.apply.domain.vo;
+
+import lombok.Data;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 一码管地首次录数据参数 Vo
+ */
+@Data
+public class HouseFirstParamVo {
+
+    /**
+     * 预赋不动产单元号(注:一码管地首次录数据根据地块等信息,从不动产系统获取此码)
+     * 必选: 是
+     * 业务类型: 系统
+     */
+    private String yfbdcdyh;
+
+    /**
+     * 业务编号(业务唯一标识,例:20251023145655)
+     * 必选: 是
+     * 业务类型: 系统
+     */
+    private String ywbh;
+
+    /**
+     * 项目编号(示例:c0d565ca-1f11-411f-a150-0fe1623b8104)
+     * 必选: 否
+     * 业务类型: 系统
+     */
+    private String xmbh;
+
+    /**
+     * 正式不动产单元号(不动产单元号有变动需传此参数)
+     * 必选: 否
+     * 业务类型: 业务
+     */
+    private String bdcdyh;
+
+    /**
+     * 权利人
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String qlr;
+
+    /**
+     * 坐落位置
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String zl;
+
+    /**
+     * 共有情况(如:共同共有)
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String gyqk;
+
+    /**
+     * 权利类型(如:国有建设用地使用权)
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String qllx;
+
+    /**
+     * 权利性质(出让/划拨)
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String qlxz;
+
+    /**
+     * 土地用途
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String tdyt;
+
+    /**
+     * 土地面积
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String tdmj;
+
+    /**
+     * 土地面积单位
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String tdmjdw;
+
+    /**
+     * 不动产证件号
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String bdczh;
+
+    /**
+     * 登记机构
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String djjg;
+
+    /**
+     * 登记日期(如:2025-10-09)
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private String djrq;
+
+    /**
+     * 空间地块矢量图数据(EWKT格式)
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private List<String> geoms;
+
+    /**
+     * 附件材料信息(zip或文档结构待定)
+     * 必选: 是
+     * 业务类型: 业务
+     */
+    private Map<String, Object> attachment;
+}

+ 2 - 2
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/third/OfferDataService.java

@@ -1,6 +1,7 @@
 package com.siwei.apply.service.third;
 
 import com.siwei.apply.domain.NodeAttachment;
+import com.siwei.apply.domain.vo.HouseFirstParamVo;
 import com.siwei.apply.domain.vo.LandFirstParamVo;
 
 import java.util.Map;
@@ -19,7 +20,6 @@ public interface OfferDataService {
     Map<String,String> get(String projectId);
 
 
-
     /**
      *
      */
@@ -29,8 +29,8 @@ public interface OfferDataService {
 
     NodeAttachment getThirdNodeAttachment(String immobileCode, String projectId, String dqjd) throws Exception;
 
-
     Map<String, Object> landFirstRegistration(LandFirstParamVo body);
 
+    Map<String, Object> houseFirstRegistration(HouseFirstParamVo body);
 
 }

+ 61 - 1
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/third/impl/OfferDataServiceImpl.java

@@ -2,10 +2,13 @@ package com.siwei.apply.service.third.impl;
 
 import com.siwei.apply.domain.NodeAttachment;
 import com.siwei.apply.domain.ProjectWorkflow;
+import com.siwei.apply.domain.vo.GyjsydjfwscdjVo;
 import com.siwei.apply.domain.vo.GyjsydscdjVo;
+import com.siwei.apply.domain.vo.HouseFirstParamVo;
 import com.siwei.apply.domain.vo.LandFirstParamVo;
 import com.siwei.apply.enums.AloneWorkFlowEnum;
 import com.siwei.apply.mapper.ProjectWorkflowMapper;
+import com.siwei.apply.service.GyjsydjfwscdjService;
 import com.siwei.apply.service.GyjsydscdjService;
 import com.siwei.apply.service.NodeAttachmentService;
 import com.siwei.apply.service.NodeLandService;
@@ -41,13 +44,16 @@ public class OfferDataServiceImpl implements OfferDataService {
     @Autowired
     private GyjsydscdjService gyjsydscdjService;
 
+    @Autowired
+    private GyjsydjfwscdjService gyjsydjfwscdjService;
+
+
     @Autowired
     private RemoteSpatialFilesDbService remoteSpatialFilesDbService;
 
     @Autowired
     private NodeLandService nodeLandService;
 
-
     @Override
     public Map<String, String> get(String projectId) {
         return Map.of();
@@ -111,6 +117,60 @@ public class OfferDataServiceImpl implements OfferDataService {
     }
 
 
+    @Override
+    public Map<String, Object> houseFirstRegistration(HouseFirstParamVo body) {
+        String yfbdcdyh = body.getYfbdcdyh();
+        if(StringUtils.isBlank(yfbdcdyh)){
+            throw new ServiceException("预分不动产单元号为空");
+        }
+        String ywbh = body.getYwbh();
+        if(StringUtils.isBlank(ywbh)){
+            throw new ServiceException("业务编号为空");
+        }
+        List<String> geomsList = body.getGeoms();
+        if(CollectionUtils.isEmpty(geomsList)){
+            throw new ServiceException("geom信息为空");
+        }
+        //todo 这里进行文件下载入库:
+
+        try {
+            GyjsydjfwscdjVo gyjsydjfwscdjVo = new GyjsydjfwscdjVo();
+            gyjsydjfwscdjVo.setProjectId(body.getXmbh());
+            gyjsydjfwscdjVo.setQlr(body.getQlr());
+            gyjsydjfwscdjVo.setGyqk(body.getGyqk());
+            gyjsydjfwscdjVo.setZl(body.getZl());
+            gyjsydjfwscdjVo.setQllx(body.getQllx());
+            gyjsydjfwscdjVo.setQlxz(body.getQlxz());
+            gyjsydjfwscdjVo.setTdyt(body.getTdyt());
+            if (StringUtils.isNotBlank(body.getTdmj())) {
+                gyjsydjfwscdjVo.setArea(body.getTdmj());
+            }
+            gyjsydjfwscdjVo.setAreaUnit(body.getTdmjdw());
+            gyjsydjfwscdjVo.setBdcdyh(StringUtils.isNotBlank(body.getBdcdyh()) ? body.getBdcdyh() : body.getYfbdcdyh());
+            gyjsydjfwscdjVo.setBdczh(body.getBdczh());
+            gyjsydjfwscdjVo.setDjjg(body.getDjjg());
+            gyjsydjfwscdjVo.setDjDate(body.getDjrq());
+
+            String nodeId = gyjsydjfwscdjService.add(gyjsydjfwscdjVo);
+            Map<String, Object> map1 = new HashMap<>();
+            map1.put("geomData", geomsList);
+            //todo 这里进行矢量文件的保存及其传输。
+            R<TGeomDb> res = remoteSpatialFilesDbService.saveGeom(map1);
+            TGeomDb tGeomDb = res.getData();
+            //这里保存geom映射关系
+            nodeLandService.createNodeLand(nodeId, tGeomDb.getId());
+            Map<String, Object> map = new HashMap<>();
+            map.put("id", nodeId);
+            return map;
+        } catch (Exception e) {
+            log.error("调用矢量保存文件错误,业务编号:{}: ",ywbh);
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+
+
 
     @Override
     public String getTheFile(String attachmentId, String dirName, String fileName) {