赞
踩
目录
4、源码获取及技术文档展示
基于微信小程序的订餐平台以微信小程序为载体,以Java加Tomcat及部分微信云开发作为后端服务。使用MySQL数据库对菜品信息、订单信息、用户信息进行信息存储。其中前端采用Vue框架技术、HTML和CSS、JavaScript语言,后端技术采用Java、spring、微信云开发三种技术。
基本功能如下
后台部分:
用户管理:可以查看对应用户的电话、昵称等信息。
餐品管理:可以管理点餐系统发布的餐品信息,进行相应的数据增删改查操作。
订单管理:对前端用户的下单信息进行查看、确认上餐管理操作。
分类管理:主要实现对前端点餐显示的餐品分类管理、分为种类管理和菜品分类管理。
系统管理:主要可以实现对系统的相关基本信息的管理操作。
用户端
产品展示:查看商品细节,分类预览,商品浏览。
使用者管理:用户登录、用户注册、用户修改手机号等。
订货管理:用户取消订单,查看订单。
购物车:添加物品、删除物品、清空购物车、付款、修改(数量)等等。
功能架构图
整体E-R图
表4-1:wct_address
序号 | 列名 | 数据类型 | 长度 | 允许空 | 说明 |
1 | id | int | 11 | 否 | 主键 |
2 | title | varchar | 255 | 是 | |
3 | uid | int | 11 | 是 | |
4 | type | varchar | 255 | 是 | |
5 | ntime | varchar | 255 | 是 | |
6 | rtype | varchar | 255 | 是 | |
7 | note | varchar | 255 | 是 |
表4-2:wct_bill
序号 | 列名 | 数据类型 | 长度 | 允许空 | 说明 |
1 | id | int | 11 | 否 | 主键 |
2 | gids | varchar | 100 | 是 | |
3 | price | varchar | 100 | 是 | |
4 | user | varchar | 100 | 是 | |
5 | uid | varchar | 100 | 是 | |
6 | shop | varchar | 100 | 是 | |
7 | bill | varchar | 2000 | 是 | |
8 | openid | varchar | 255 | 是 | |
9 | ndate | varchar | 255 | 是 | |
10 | total | varchar | 255 | 是 | |
11 | way | varchar | 50 | 是 | |
12 | gnames | varchar | 500 | 是 | |
13 | sid | varchar | 10 | 是 | |
14 | tel | varchar | 50 | 是 | |
15 | address | varchar | 50 | 是 | |
16 | note | varchar | 200 | 是 | |
17 | state | varchar | 10 | 是 | |
18 | statecn | varchar | 50 | 是 | |
19 | cuidan | varchar | 255 | 是 | |
20 | todate | varchar | 255 | 是 | |
21 | totime | varchar | 255 | 是 |
var app = getApp();
login: function() {
const that = this;
const token = wx.getStorageSync('token');
//wx.getStorageSync(string key)从本地缓存中获取指定key内容
if (token) {
WXAPI.checkToken(token).then(function(res) {
//封装的方法checkToken向服务器发送get请求查询token
if (res.code != 0) {
wx.removeStorageSync('token')
that.login();
} else {
// 回到原来的地方放
app.navigateToLogin = false
wx.navigateBack();
}
})
return;
}
//登录函数
wx.login({
//wx.login(Object object)微信提供的登录方法
//success为回调函数,code为登录凭证
success: function(res) {
WXAPI.login(res.code).then(function(res) {
if (res.code == 10000) {
// 没有信息需要去注册
that.registerUser();
return;
}
if (res.code != 0) {
// 登录错误
wx.hideLoading();
wx.showModal({
title: '提示',
content: '无法登录,请重试',
})
return;
}
//如果登录成功则本地存储token以及uid
wx.setStorageSync('token', res.data.token)
wx.setStorageSync('uid', res.data.uid)
// 回到原来的地方放
app.navigateToLogin = false
wx.navigateBack();
})
}
})
},
registerUser: function() {
let that = this;
wx.login({
success: function(res) {
let code = res.code;
// 微信登录接口返回的 code 参数,下面注册接口需要用到
//获取微信用户信息如昵称、头像等
wx.getUserInfo({
success: function(res) {
let encryptedData = res.encryptedData;
// 下面开始调用注册接口
WXAPI.register( {
code: code,
encryptedData: encryptedData,
iv: iv,
}).then(function(res) {
wx.hideLoading();
that.login();
const WXAPI = require('../../wxapi/main')
Page({
* 页面的初始数据
*/
data: {
categories: [],
goodsWrap: [],
categorySelected: "",
goodsToView: "",
categoryToView: "",
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
this.initData();
},
initData() {
let that = this;
//在当前页面显示导航条加载动画
wx.showNavigationBarLoading();
//调用WXAPI中的goodsCategory函数获取数据库数据
WXAPI.goodsCategory().then(function(res) {
var categories = [];
if (res.code == 0) {
for (var i = 0; i < res.data.length; i++) {
let item = res.data[i];
item.scrollId = "s" + item.id;
categories.push(item);
if (i == 0) {
that.setData({
categorySelected: item.scrollId,
})
}
}
}
that.setData({
categories: categories,
});
console.log(categories);
that.getGoodsList(0);
}).catch((e) => {
//在当前页面隐藏导航条加载动画
wx.hideNavigationBarLoading();
});
},
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。