程序汪6万接的旅游小程序,需要跟人脸闸机对接
本项目来自程序汪背后的私活小团队,开发了一个旅游小程序,给粉丝分享一下解决方案,希望给想接私活的朋友一些经验参考
视频版本 在 B站【我是程序汪】
目录
一、项目构成
二、开发人员
三、项目背景
四、小程序端
五、后端系统
最后 源码资料分享
项目构成
系统基本构成:uniapp小程序+ TPshop后台
安装命令
开发人员以及费用情况
开发周期60天 (注意这是给甲方报的时间哦)
开发人数 1人
整体费用是6万(不包含维护费,一期的费用哦)
走的公司合同
阿里云服务器1台
维护费用:项目总款的10% 一年
项目背景
旅游区都有网上购买门票的需求,购买完后去景区核销门票,当然景区有些非常大需要导航,景点历史介绍等等辅助功能,我们这个小程序就是为了解决这些业务场景而生
小程序端
本小程序是用uniapp开发的,这种外包小项目肯定要选择性价比高的开发方式(程序汪知道原生的好,但开发成本也高哦),一期只有小程序,二期说不定就需要APP,利用uniapp可以让多端开发成本降到最低
优点
uni-app是一套可以适用多端的开源框架,一套代码可以同时生成ios,Android,H5,微信小程序,支付宝小程序,百度小程序等。
缺点
uni-app问世的时间还比较短,有很多地方还不是完善,坑很多,如果不喜欢爬坑的朋友那就少用uni-app吧
导览
这块比较费时吧,下面景区点需要一个个添加标记点(添加描点),然后加事件,如 【到这里】 【语音播报】这个景区的介绍 等等
人脸闸机
人脸识别核销门票
以前程序汪接的一个智慧酒店项目也用到了人脸识别,只不过那个是酒店房门上的人脸识别,这个是旅游景区入口的 人脸闸机,其实有些火车站已经用上了这种人脸识别的闸机,我们这个项目用的是百度AI的产品,具体地址最下方会分享
数据流
购买门票会输入身份证号的,游客到景点刷脸,人脸闸机后端会调用人脸库(政府的人脸库,跟酒店登记身份证会用人脸识别一样的)
(闸机摄像头)照片-->(转换)base64格式->上传服务器端->调用百度AI接口识别>(返还识别是否成功)并返还对于的身份信息 >通过身份信息查询对应订单核销
下图是百度AI文档的数据流图可以参考
传送门如下
程序汪接的酒店在线开房项目,另外一个好听的名字叫智慧酒店
下面截图来自百度AI 人脸闸机接口文档
后端系统(TPshop)
电商二开,这次PHP的,其实Java版本的也有很多
这些功能都是现成的,主要是联调工作量
系统设置
权限管理
会员管理
商品管理
订单管理
店铺管理
广告管理
活动管理
内容管理
微信管理
模板管理
插件工具
财务统计
统计报表
DB的设计我分享一个订单表出来
-- ----------------------------
-- Table structure for tp_order
-- ----------------------------
DROP TABLE IF EXISTS `tp_order`;
CREATE TABLE `tp_order` (
`order_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT '订单id',
`order_sn` varchar(20) NOT NULL DEFAULT '' COMMENT '订单编号',
`master_order_sn` varchar(20) DEFAULT '' COMMENT '主订单号',
`user_id` mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
`order_status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '订单状态',
`shipping_status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '发货状态',
`pay_status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '支付状态',
`consignee` varchar(60) NOT NULL DEFAULT '' COMMENT '收货人',
`country` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '国家',
`province` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '省份',
`city` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '城市',
`district` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '县区',
`twon` int(11) DEFAULT '0' COMMENT '乡镇',
`address` varchar(255) NOT NULL DEFAULT '' COMMENT '地址',
`zipcode` varchar(60) NOT NULL DEFAULT '' COMMENT '邮政编码',
`mobile` varchar(60) NOT NULL DEFAULT '' COMMENT '手机',
`email` varchar(60) NOT NULL DEFAULT '' COMMENT '邮件',
`shipping_code` varchar(32) NOT NULL DEFAULT '0' COMMENT '物流code',
`shipping_name` varchar(120) NOT NULL DEFAULT '' COMMENT '物流名称',
`pay_code` varchar(32) NOT NULL DEFAULT '' COMMENT '支付code',
`pay_name` varchar(120) NOT NULL DEFAULT '' COMMENT '支付方式名称',
`invoice_title` varchar(256) DEFAULT '' COMMENT '发票抬头',
`goods_price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '商品总价',
`shipping_price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '邮费',
`user_money` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '使用余额',
`coupon_price` decimal(10,2) DEFAULT '0.00' COMMENT '优惠了多少',
`integral` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用积分',
`integral_money` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '使用积分抵多少钱',
`order_amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '应付款金额',
`total_amount` decimal(10,2) DEFAULT '0.00' COMMENT '订单总价',
`add_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '下单时间',
`confirm_time` int(10) DEFAULT '0' COMMENT '收货确认时间',
`pay_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '支付时间',
`shipping_time` int(11) DEFAULT '0' COMMENT '最新发货时间',
`order_prom_id` smallint(6) NOT NULL DEFAULT '0' COMMENT '订单活动id',
`order_prom_amount` decimal(8,2) NOT NULL DEFAULT '0.00' COMMENT '订单活动优惠金额',
`discount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '价格调整',
`user_note` varchar(255) NOT NULL DEFAULT '' COMMENT '用户备注',
`admin_note` varchar(255) DEFAULT '' COMMENT '管理员备注',
`parent_sn` varchar(100) DEFAULT NULL COMMENT '父单单号',
`store_id` int(10) DEFAULT '0' COMMENT '店铺ID',
`is_comment` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否评价(0:未评价;1:已评价)',
`deleted` tinyint(1) unsigned zerofill NOT NULL,
`is_checkout` tinyint(1) DEFAULT '0' COMMENT '0未结算1已结算',
PRIMARY KEY (`order_id`),
UNIQUE KEY `order_sn` (`order_sn`) USING BTREE,
KEY `user_id` (`user_id`) USING BTREE,
KEY `order_status` (`order_status`) USING BTREE,
KEY `shipping_status` (`shipping_status`) USING BTREE,
KEY `pay_status` (`pay_status`) USING BTREE,
KEY `shipping_id` (`shipping_code`) USING BTREE,
KEY `pay_id` (`pay_code`) USING BTREE
) ENGINE=MyISAM AUTO_INCREMENT=345 DEFAULT CHARSET=utf8;
程序汪这里有很多私活团队,其实都是我的粉丝变成朋友的,大家有其他私活的项目需要合作共赢的 欢迎加我微信 itwang007 备用微信 itwang008 itwang009
参考文档:
uniapp各种插件 https://ext.dcloud.net.cn/search?fePlatform=1&fePlatform2=2
人脸识别
https://blog.csdn.net/hh_2018/article/details/80576290
uniapp地图标记
https://blog.csdn.net/qq_34227291/article/details/103840555
人脸闸机
https://aim.baidu.com/product/84ade4ff-35f9-4d69-91d3-e3d6f73d2fa0
人脸闸机的文档
https://ai.baidu.com/ai-doc/FACE/lk37c1lej
点下方原文链接观看B站视频版本