1

ESMap-Indoor-navigation

ESMap+Html5+SpringBoot+FastDFS实现导航导购App

github链接:https://github.com/ShimmerPig...

项目实现的简要概述

服务器部分

测试阶段使用的是双系统的开发模式,在Linux服务器上部署了轻量级分布式文件系统fastdfs,且整合了高性能的HTTP和反向代理服务器nginx;在本地的服务器上使用Spring Boot框架,使用其内置的tomcat作为web服务器。两者的结合通过Spring Boot中的组件以及依赖实现。在项目正式上线后会将本地服务器的内容打包成jar包发布到Linux服务器中。
项目的开发使用的是领域模型中的贫血模型,可以将整个项目分为controller,service,mapper三层,POJO作为载体,mapper作为数据持久层,service作逻辑处理,controller作请求处理。向前端提供了扫码定位,获取商品类目列表,通过商品类目查询对应商品,通过商品名称查询商品信息等接口。

数据库部分

数据库使用关系型数据库管理系统mySQL,在其中建立了店铺,商品,商品类目三个表,通过其中的特定字段使两表关联,从而实现了简单的联表查询。

前端部分

App前端的开发使用的是轻量级的HBuilder编辑器,解决了碎片化的语法定义和传统App开发的臃肿性问题,在本App中融合了html5,css,JavaScript,jQuery等语言,主要功能为地图的展示,以及适时地向服务器发送请求。

地图部分

地图的绘制使用的是ESMap提供的地图编辑器进行绘制的,实现了对地图的房间,POI,路径,楼层,主题的自定义,使地图开发过程变得高效而灵活,可以充分考虑业主与开发商的需求。



功能介绍

(1)搜索定位
(2)扫码定位
(3)图像识别店铺商标定位
(4)导航
(5)导购


数据库

图片描述

区域表

这里的room表示商店中的一个店铺,或者是超市中的一个区域
图片描述

商品表

图片描述

商品类目表

图片描述


后端结构与接口

图片描述

controller包提供如下接口:

(1)searchRoom —— 扫描店铺二维码后传给后端id,后端从数据库中查询对应的店铺,并返回给前端
(2)searchProduct —— 扫描商品二维码后传给后端id,后端从数据库中查询对应的商品,并返回给前端
(3)productCategoryList —— 取商品类目列表
(4)productList —— 传入商品类目,查询该类目的所有商品
(5)productInfo —— 通过商品的名称查询商品的所有信息



测试效果

导航模块地图预览[以华发一角为例]

图片描述

导航功能

图片描述

搜索功能

图片描述

扫码定位功能

图片描述

导购模块地图预览

图片描述

商品搜索功能

图片描述
图片描述
图片描述

导购功能

图片描述
图片描述


App更多功能仍在完善...


Shimmer
105 声望30 粉丝

A Pig.