基于Google地图房地产评估行业数据库系统的研究与开发(修改)

 

基于Google地图房地产评估行业数据库系统的研究与开发

                                   

(作者单位:江苏苏地仁合土地房地产评估咨询有限公司)

摘要:针对国内房地产评估行业缺少独有行业数据库的现状,为有效管理评估项目、出具准确的评估报告及缩短出具报告的时间周期,本文探讨应用Google地图应用程序编程接口技术建立评估行业数据库查询管理系统,系统服务器端基于Apache+PHP+MySQL架构,操作简便,调试及维护方便。

关键字:Google地图应用程序编程接口技术  评估  数据库

正文

目前,计算机技术已经在各个行业中得到了广泛的应用,在评估工作中,笔者借助计算机软件,试探性的建设评估行业数据库查询管理系统,以达到直观、方便的查询及了解评估项目、期望使用者能够全局把握市场、为准确预测市场变化提供帮助。

第一,系统的设计

(一)设计思路

1、将评估单位所拥有的信息(比如项目的名称、位置、价格等)输入并建立数据库,形成管理系统的基础。运用数据库语言,设置常用查询条件。

数据库我们采用MySQLMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司,是一个真正的多用户,多线程数据库服务器。我们选用PHPMyAdmin可视化的数据库管理工具对数据库进行增加、删除记录等操作。

2、运用超文本标记语言及Google地图应用程序编程接口技术,在网页上嵌入Google地图,再结合PHP等编程语言将查询的结果呈现在Google电子地图上。

Google地图应用程序编程接口技术是Google公司为开发者提供的地图应用程序编程接口技术。它允许开发者在不必建立自己的地图服务器的情况下,将Google地图数据嵌入到网页之中,从而实现嵌入 Google的地图服务应用,并借助Google的地图数据为用户提供位置服务,结合估价行业实际的需求,对评估项目及信息实现有效、直观的管理。

HTML为超文本标记语言,编辑页面使用的WWW描述语言。

PHP是一种在服务器端执行的嵌入HTML文档的脚本语言,执行效率高,功能强大,而且支持几乎所有流行的数据库以及操作系统。

3、采用OpenFlashChart报表组件,把查询的结果形成图表,能够直观的了解目标数据的走势。

(二)系统主体设计

系统主体架构为浏览器/服务器架构,数据库和应用程序代码均安装于服务器端,便于集中管理,服务器端为Apache+PHP+MySQL

对于服务器端,我们采用AppServ软件,软件作者将一些资源整合成单一的安装程序,以方便操作者快速架设服务器,AppServ所包含的软件有:ApacheApache MonitorPHPMySQL等。

Apache是世界有名的网站服务器软件。它可以运行在几乎所有的计算机平台上,其优点为简单、速度快、性能稳定,并可做代理服务器来使用。

第二、系统功能及实现

(一)基础条件的完备

1、基础数据库的建立。

首先,数据库的数据来源有两种,一是从各个渠道收集的不动产成交信息,经过核实之后可以作为估价报告的比较案例使用;二是评估公司日常的评估报告,前提是评估结果符合正常的市场价值。

根据数据的来源,基础数据库将建有评估信息表及案例信息表,两种表根据不动产的类型分为房地产信息表和土地信息表,评估信息表主要字段包括序号、估价报告编号、估价时点、物业类型、物业名称、物业地址、所在板块、面积、评估单价、总价、估价人员等;案例信息表主要字段包括序号、交易日期、物业类型、物业名称、物业地址、所在板块、成交单价、成交总价等。

另外,对于基础数据数据量较大、行业内普遍缺少相应的数据录入人员的状况,可采用PHPmyadmin将数据整体导入MySQL数据库中。

2、加载Google地图

为使Google地图加载到网页上,需先申请一个Google地图的密匙(http: //www.google.com/apis/maps/signup.html),在页面提示的网址文本框内输入服务器所在的网址并确认 Google的约束条款后,Google会直接显示一个分配的密匙,该密匙由字母数字组成与Google帐户和服务网址相关。

在编辑的网页文件内加入以下代码:<script src=http://ditu.google.cn/maps?file =api&amp;v=2&amp;key=******&sensor=true_or_false"

type=”text/javascript “></script>

http://ditu.google.cn/maps?file=api&v=2&key=abcdefg网址指向包含使用Google地图应用程序编程接口所需所有符号和定义的JavaScript文件的位置。必须包含指向此网址的script标签,使用注册API时收到的密钥(即key=******)。同时,要使地图在网页上显示,必须为其留出位置,通常通过创建名为div的元素,并在浏览器的文档对象模型中获取此元素的引用执行此操作。如:

<div id= map_canvas style= width 500px height 300px ></div>

div名为map_canvas,地图的尺寸使用样式属性设置,地图会自动使用容器尺寸调整自身的尺寸。以上步骤即实现了在网页中Google地图的加载。

(二)详细参数的设置

Google地图应用程序编程接口由Javascript 构成,可以在向用户提供信息的同时,使用API显示地图图片。

1、地图主要参数

地图初始设置参数如下(以南京市为例):

1.1  map.setCenter(new GLatLng(32.042559,118.778172), 13);

初始化是通过地图的setCenter()方法完成。setCenter()方法要求有GLatLng坐标和缩放级别,而且必须先发送此方法,然后再在地图上执行其他任何操作,包括设置地图本身的其他任何属性。

2.2  map.addControl(new GSmallMapControl());

map.addControl(new GMapTypeControl());

可以用addControl()向地图添加控件,第一条语句是将 Google 地图上显示的平移/缩放控件添加到地图中,第二条语句是提供切换“地图”与“卫星”这两种类型的功能。

此外,可以采用Google地图应用程序编程接口技术提供的其他方法在地图上放置其他的控件。

2、在地图中叠加数据层

在我们创建的MySQL数据库中,采用PHP查询语句,筛选符合查询条件的记录,再将这些记录反映到上面加载的地图上。

Google地图应用程序编程接口的脚本语言为Javascript,本系统应用的为PHPMySQL数据库,需将从服务器端数据库中列出的记录内容通过PHPJavascript混合编码。

2.1筛选符合条件的记录

首先,采用PHP语句链接到目标数据库,语句如下:

MySQL_connect(<address>, <username>, <password>);

在这里,<address>MySQL服务软件在其上运行的计算机的IP地址或主机名(如果这与运行网站服务软件的计算机是同一台,可以使用"localhost"),<username><password>是用来连接到MySQL服务器的用户名及口令。

其次,选择目标数据库,语句如下:

MySQL_select_db(database_name)

采用PHP函数MySQL_select_db()选择需要进行操作的数据库(database_name是数据库的名字)。

再次,对当前活动的数据库进行查询操作。

PHP中,MySQL_query()向与指定的连接标识符关联的服务器中的当前活动数据库发送查询命令。比如,

语句:MySQL_query ("select * from table_name where name='金轮大厦'");

在确定连接数据库之后,运用MySQL_query()函数在table_name数据表中筛选字段name为金轮大厦的记录。

这里,可以根据字段进行精确筛选,比如可以筛选数据库中金轮大厦的记录;也可以进行模糊筛选,比如可以筛选出汉中路的记录。

语句:MySQL_query ("select * from table_name where address like '汉中路'");

2.2将筛选的记录叠加在地图上

Google地图应用程序编程接口技术引进了叠加层的概念,叠加层是地图上绑定到经度/纬度坐标的对象,会随着拖动或缩放地图而移动,叠加层用于反映“添加”到地图上以指明点、线或区域的对象。

标记是GMarker类型的对象,并且可以利用GIcon类型的对象来自定义图标。可以使用 GMap2.addOverlay()方法向地图添加叠加层。

语句:map.addOverlay(new GMarker(point));

这样,就将一个筛选出来的记录作为叠加层叠加在地图上。

2.3创建信息窗口显示点的信息

调用openInfoWindow方法,并向其传递位置和要显示的DOM元素。

语句:map.openInfoWindow (point,document.createTextNode());

至此,MySQL数据库筛选出来的记录反映到了地图上,可以直观得管理评估项目、整理了解价格信息。

(三)统计功能的实现

我们可以采用OpenFlashChart报表组件对我们筛选出来的数据形成报表分析图形,比如可以在基础数据库筛选出玄武区2010.1.12010.7.1住宅物业的价格信息,采用报表组件形成管家桥板块商业物业在此时间段的价格走势图。

第三,评估行业应该具备的其他数据库

只有基础数据库对于评估单位的发展是不够的,笔者觉得评估单位应该具备法律法规数据库、估价参数数据库、典型报告数据库及客户信息数据库等,以供操作者查询使用。

1 法律法规数据库

可收集与不动产评估相关的法律法规,形成数据库,主要字段包括序号、名称、文件号、发布单位、发布时间、关键字等。

2、估价参数数据库

估价参数包括还原利率、基准地价资料、土地开发程度等,由于地区不同,估价参数也不尽相同,因此可按区域结合估价经验,收集估价参数,估价参数数据库数据表主要字段包括序号、参数名称、所属地区、参数值等。

3、典型报告数据库

典型报告系评估单位日常工作中完成的典型评估报告,根据不同的估价目的、不同的估价类型,可以选取1-2个典型的报告,填充进数据库,以备查调。

4、客户信息数据库

客户信息数据库是由日常的评估业务中,接触的客户信息,汇集成数据库,方便以后调用查看,亦可在节日或生日时发送祝福短信,以便维护客户关系。

第四,系统的应用

基于以上思路,笔者试着搭建查询管理系统,总体界面如图,首先选择查询的目标数据库,查询方式分为条件查询及关键字查询,查询结果出现在地图的右侧,点击某一结果(项目),其相应的位置会呈现在地图上,项目信息会呈现在弹出的信息窗口上。另外,搜索的结果也可导出到excel文件,以满足统计及分析的需要。

 

1  系统主页面展示

  


2 项目统计页面展示

  

3 价格走势页面展示

 

                                                                                                                          

4 导出execl文件页面展示

 



 

 




 

第五,结论

评估行业数据库查询管理系统采用的Google地图应用程序编程接口可通过各种方法向地图中添加内容,能够满足直观反映位置信息的需求,与国内使用较多的 ESRIArcIMSArcSDE美国MapInfo公司的MapXtremeSpatialWare等商业WebGIS软件相比,无需用户另外收集地理数据,而且可自由发布。结合OpenFlashChart报表组件,可以完成简单的数据统计分析。值得注意的是,本文提到的关于创建评估行业数据库查询管理系统所需的软件均为开源免费软件,有效的降低了开发成本。

当然,也可以采用其他的地图应用程序编程接口技术进行开发,本文旨在阐述笔者关于创建评估行业数据库查询管理系统的思路,不足之处,敬请斧正。