北京经济技术开发区经开区虚拟城市项目-【后端】-服务,Poi,企业,地块等定制接口
13693261870
2023-10-07 a3e257a2868b89ae918dc992214a735dca085fbd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package com.smartearth.poiexcel.service;
 
import com.alibaba.fastjson.JSONObject;
import com.smartearth.poiexcel.entity.DkEntity;
import com.smartearth.poiexcel.utils.RestHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
 
/**
 * 地块服务类
 * @author WWW
 * @date 2023-10-05
 */
@Service
@SuppressWarnings("ALL")
public class DkService {
    @Value("${dk.host}")
    String host;
 
    private final static Log log = LogFactory.getLog(DkService.class);
 
    private final static String GET_INFO_URL = "%s/poisearch/guihuacon/getInfo?ydbm=%s";
 
    private final static String GET_ENT_BASE_INFO = "%s/yqfwg/api/project/getEntBaseInfoForOtherSysListPage?ctoken=%s&showCount=%d&currentPage=%d";
 
    /**
     * 根据编号更新
     */
    public boolean updateByBh(DkEntity dk) {
        try {
            String url = String.format(GET_INFO_URL, host, dk.getDikuaibianhao());
 
            RestTemplate rest = RestHelper.getRestTemplate();
            JSONObject obj = rest.getForObject(url, JSONObject.class);
            if (null == obj || !"200".equals(obj.get("code").toString()) || null == obj.getJSONObject("data")) {
                return false;
            }
 
            JSONObject data = obj.getJSONObject("data");
            JSONObject cr = data.getJSONObject("churangxinxi");
            JSONObject yd = data.getJSONObject("yongdishuju");
            if (null == cr && null == yd) {
                return false;
            }
 
            if (null != cr) {
                dk.setYdbh(cr.getString("ydbh"));
                dk.setXmmc(cr.getString("xmmc"));
                dk.setYdlx(cr.getString("ydlx"));
                dk.setCyfx(cr.getString("cyfx"));
                dk.setYdmj(getDouble(cr, "ydmj"));
                dk.setXmdz(cr.getString("xmdz"));
                dk.setCrnx(getInteger(cr, "crnx"));
                dk.setCrnf(getInteger(cr, "crnf"));
            }
            if (null != yd) {
                dk.setYdbh(yd.getString("ydbh"));
                dk.setXmmc(yd.getString("xmmc"));
                dk.setYdlx(yd.getString("ydlx"));
                dk.setYdmj(getDouble(yd,"ydmj"));
                dk.setXmdz(yd.getString("xmdz"));
                dk.setRjl(getDouble(yd,"rjl"));
                dk.setYdlxmc(yd.getString("ydlxmc"));
                dk.setCyfx(yd.getString("cyfx"));
                dk.setJzxg(getDouble(yd,"jzxg"));
            }
 
            return true;
        } catch (Exception ex) {
            log.error(ex.getMessage(), ex);
            return false;
        }
  }
 
    private Integer getInteger(JSONObject obj, String key) {
        try {
            return obj.getInteger(key);
        } catch (Exception ex) {
            return null;
        }
    }
 
    private Double getDouble(JSONObject obj, String key) {
        try {
            return obj.getDouble(key);
        } catch (Exception ex) {
            return null;
        }
    }
 
    /**
     * 根据坐标更新
     */
    public boolean updateByCoord(DkEntity dk) {
        try {
            //
 
            return true;
        } catch (Exception ex) {
            log.error(ex.getMessage(), ex);
            return false;
        }
    }
}