ofo至今还没有微信小程序(很费解),每次用ofo都得去支付宝,很不方便,我用微信用的比较多,无意间在简书上面看到某人写了一个关于ofo的小程序,链接如下:给ofo小黄车撸一个微信小程序,不过数据都是模拟的,没有数据库,没有后台,这对于一个PHP(拍黄片)攻城狮来说,是可忍孰不可忍呀,刚刚学完七月老师的课程,受益匪浅,刚好自己动手做一个,说动手就动手,let's do it;
先献上一波效果图吧:
体验版页面
支付页面
计费页面
开锁页面
用车页面
开锁页面
充值页面
个人中心页面
我的钱包页面
首页页面
ofo小程序的架构体系:
小程序数据从服务器到前端交互总结:
数据库设计:
用户表:
**user | CREATE TABLE `user`(**`id`int(11)unsigned NOT NULL AUTO_INCREMENT,`openid` varchar(50) NOT NULL COMMENT '用户的唯一标识',`create_time`int(11) DEFAULT NULL,`delete_time`int(11) DEFAULT NULL,`balance`decimal(60,2) NOT NULL COMMENT '余额',`guarantee`decimal(60,2) NOT NULL COMMENT '保证金',`update_time`int(11) DEFAULT NULL,
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 |
小黄车表:
**| bike | CREATE TABLE `bike`(**`id`int(11)unsigned NOT NULL AUTO_INCREMENT,`latitude`float(11,6) NOT NULL COMMENT '经度',`is_show` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0未使用 1使用',`longitude`float(11,6) NOT NULL COMMENT '纬度',`password`int(11) NOT NULL COMMENT '单车密码',`type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0正常,1故障',`create_time`int(11) NOT NULL,`update_time`int(11) NOT NULL,
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 |
**| trouble_record | CREATE TABLE `trouble_record`(**`id`int(11)unsigned NOT NULL AUTO_INCREMENT,`user_id`int(11) NOT NULL COMMENT '用户ID',`bike_id`int(11) DEFAULT NULL COMMENT '单车ID',`longitude` varchar(50) NOT NULL COMMENT '经度',`latitude` varchar(50) NOT NULL COMMENT '纬度',`img` varchar(50) DEFAULT NULL COMMENT '上传的图片',`remark` varchar(50) DEFAULT NULL COMMENT '备注',`create_time`int(11) NOT NULL,`update_time`int(11) NOT NULL,
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8 |
充值表:
**| charge | CREATE TABLE `charge`(**`id`int(11)unsigned NOT NULL AUTO_INCREMENT,`user_id`int(11) NOT NULL COMMENT '用户ID',`price`decimal(60,2) NOT NULL COMMENT '费用',`type` tinyint(1) NOT NULL DEFAULT '1' COMMENT '0为保证金 1为余额',`create_time`int(11) NOT NULL,`update_time`int(11) NOT NULL,
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8 |
骑行记录表:
**| record | CREATE TABLE `record`(**`id`int(11)unsigned NOT NULL AUTO_INCREMENT,`bike_id`int(11) NOT NULL COMMENT '单车ID',`user_id`int(11) NOT NULL COMMENT '用户ID',`end_time`int(11) NOT NULL COMMENT '结束时间',`start_time`int(11) NOT NULL COMMENT '开始时间',`total_price`decimal(10,0) NOT NULL COMMENT '总价格',`start_long` varchar(50) NOT NULL COMMENT '开始经度',`start_lati` varchar(50) NOT NULL COMMENT '开始纬度',`end_long` varchar(50) NOT NULL COMMENT '结束经度',`end_lati` varchar(50) NOT NULL COMMENT '结束纬度',`create_time`int(11) NOT NULL,`update_time`int(11) NOT NULL,
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=47 DEFAULT CHARSET=utf8 |