Compare commits
No commits in common. 'WHY_branch' and 'master' have entirely different histories.
WHY_branch
...
master
@ -1 +0,0 @@
|
||||
Subproject commit 55dbf15bfa54f6acec84bbda291eea39ba2c5451
|
@ -1 +0,0 @@
|
||||
模组
|
@ -1,2 +0,0 @@
|
||||
其他
|
||||
|
@ -0,0 +1,14 @@
|
||||
# Windows
|
||||
[Dd]esktop.ini
|
||||
Thumbs.db
|
||||
$RECYCLE.BIN/
|
||||
|
||||
# macOS
|
||||
.DS_Store
|
||||
.fseventsd
|
||||
.Spotlight-V100
|
||||
.TemporaryItems
|
||||
.Trashes
|
||||
|
||||
# Node.js
|
||||
node_modules/
|
@ -1,5 +0,0 @@
|
||||
#include<stdio.h>
|
||||
|
||||
typedef struct {
|
||||
|
||||
};
|
@ -0,0 +1,7 @@
|
||||
{
|
||||
"permissions": {
|
||||
"openapi": [
|
||||
"wxacode.get"
|
||||
]
|
||||
}
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
const cloud = require('wx-server-sdk');
|
||||
|
||||
cloud.init({
|
||||
env: cloud.DYNAMIC_CURRENT_ENV
|
||||
});
|
||||
|
||||
// 获取小程序二维码云函数入口函数
|
||||
exports.main = async (event, context) => {
|
||||
// 获取小程序二维码的buffer
|
||||
const resp = await cloud.openapi.wxacode.get({
|
||||
path: 'pages/index/index'
|
||||
});
|
||||
const { buffer } = resp;
|
||||
// 将图片上传云存储空间
|
||||
const upload = await cloud.uploadFile({
|
||||
cloudPath: 'code.png',
|
||||
fileContent: buffer
|
||||
});
|
||||
return upload.fileID;
|
||||
};
|
@ -0,0 +1,17 @@
|
||||
const cloud = require('wx-server-sdk');
|
||||
|
||||
cloud.init({
|
||||
env: cloud.DYNAMIC_CURRENT_ENV
|
||||
});
|
||||
|
||||
// 获取openId云函数入口函数
|
||||
exports.main = async (event, context) => {
|
||||
// 获取基础信息
|
||||
const wxContext = cloud.getWXContext();
|
||||
|
||||
return {
|
||||
openid: wxContext.OPENID,
|
||||
appid: wxContext.APPID,
|
||||
unionid: wxContext.UNIONID,
|
||||
};
|
||||
};
|
@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "quickstartFunctions",
|
||||
"version": "1.0.0",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"wx-server-sdk": "~2.4.0"
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
const cloud = require('wx-server-sdk');
|
||||
|
||||
cloud.init({
|
||||
env: cloud.DYNAMIC_CURRENT_ENV
|
||||
});
|
||||
const db = cloud.database();
|
||||
|
||||
// 查询数据库集合云函数入口函数
|
||||
exports.main = async (event, context) => {
|
||||
// 返回数据库查询结果
|
||||
return await db.collection('sales').get();
|
||||
};
|
@ -0,0 +1,18 @@
|
||||
const cloud = require('wx-server-sdk');
|
||||
|
||||
cloud.init({
|
||||
env: cloud.DYNAMIC_CURRENT_ENV
|
||||
});
|
||||
const db = cloud.database();
|
||||
const $ = db.command.aggregate;
|
||||
|
||||
// 聚合记录云函数入口函数
|
||||
exports.main = async (event, context) => {
|
||||
// 返回数据库聚合结果
|
||||
return db.collection('sales').aggregate()
|
||||
.group({
|
||||
_id: '$region',
|
||||
sum: $.sum('$sales')
|
||||
})
|
||||
.end();
|
||||
};
|
@ -0,0 +1,32 @@
|
||||
const cloud = require('wx-server-sdk');
|
||||
|
||||
cloud.init({
|
||||
env: cloud.DYNAMIC_CURRENT_ENV
|
||||
});
|
||||
const db = cloud.database();
|
||||
|
||||
// 修改数据库信息云函数入口函数
|
||||
exports.main = async (event, context) => {
|
||||
try {
|
||||
// 遍历修改数据库信息
|
||||
for (let i = 0; i < event.data.length; i++) {
|
||||
await db.collection('sales').where({
|
||||
_id: event.data[i]._id
|
||||
})
|
||||
.update({
|
||||
data: {
|
||||
sales: event.data[i].sales
|
||||
},
|
||||
});
|
||||
}
|
||||
return {
|
||||
success: true,
|
||||
data: event.data
|
||||
};
|
||||
} catch (e) {
|
||||
return {
|
||||
success: false,
|
||||
errMsg: e
|
||||
};
|
||||
}
|
||||
};
|
@ -0,0 +1,2 @@
|
||||
project.config.json
|
||||
config.js
|
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2018 莞香广科
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
@ -0,0 +1,38 @@
|
||||
{
|
||||
"pages": [
|
||||
"pages/login",
|
||||
"pages/log/log",
|
||||
"pages/checklog/checklog",
|
||||
"pages/user/user",
|
||||
"pages/manager/manager",
|
||||
"pages/managerlogin/managerlogin",
|
||||
"pages/register/register",
|
||||
|
||||
"pages/canteen/canteen",
|
||||
"pages/index",
|
||||
"pages/map/index",
|
||||
"pages/map/details",
|
||||
"pages/map/polyline",
|
||||
"pages/map/search",
|
||||
"pages/web-views/web-views",
|
||||
"pages/map/test"
|
||||
],
|
||||
"permission": {
|
||||
"scope.userLocation": {
|
||||
"desc": "你的位置信息将用于辅助规划路线"
|
||||
}
|
||||
},
|
||||
"requiredPrivateInfos":[
|
||||
"getLocation"
|
||||
],
|
||||
"window": {
|
||||
"backgroundTextStyle": "light",
|
||||
"navigationBarBackgroundColor": "#079df2",
|
||||
"navigationBarTitleText": "校园导览",
|
||||
"navigationBarTextStyle": "white"
|
||||
},
|
||||
"sitemapLocation": "sitemap.json",
|
||||
"navigateToMiniProgramAppIdList": [
|
||||
"wx98d60f2aee3668c3"
|
||||
]
|
||||
}
|
@ -1,4 +1,8 @@
|
||||
/**app.wxss**/
|
||||
page{
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.container {
|
||||
height: 100%;
|
||||
display: flex;
|
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 18 KiB |
@ -0,0 +1,72 @@
|
||||
// pages/checklog/checklog.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
},
|
||||
goToLog:function(options){
|
||||
wx.navigateTo({
|
||||
url: '../../pages/log/log'
|
||||
})
|
||||
}
|
||||
|
||||
})
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
@ -0,0 +1 @@
|
||||
<button bindtap="goToLog" type="primary">查看日志</button>
|
@ -0,0 +1 @@
|
||||
/* pages/checklog/checklog.wxss */
|
@ -0,0 +1,32 @@
|
||||
//获取应用实例
|
||||
var app = getApp();
|
||||
Page({
|
||||
data: {
|
||||
images: app.globalData.introduce.images,
|
||||
shortName: app.globalData.introduce.shortName,
|
||||
mapCopyright: app.globalData.introduce.mapCopyright,
|
||||
imgCDN: app.imgCDN
|
||||
},
|
||||
onLoad: function (options) {
|
||||
wx.setNavigationBarTitle({
|
||||
title: app.globalData.introduce.name
|
||||
})
|
||||
},
|
||||
onShareAppMessage: function (res) {
|
||||
if (res.from === 'button') {
|
||||
// 来自页面内转发按钮
|
||||
console.log(res.target)
|
||||
}
|
||||
return {
|
||||
title: app.globalData.introduce.name + ' - 校园导览',
|
||||
path: '/pages/index',
|
||||
imageUrl: app.imgCDN + app.globalData.introduce.share,
|
||||
success: function (res) {
|
||||
// 转发成功
|
||||
},
|
||||
fail: function (res) {
|
||||
// 转发失败
|
||||
}
|
||||
}
|
||||
},
|
||||
})
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"navigationBarBackgroundColor": "#0c101b"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
<view class="page" style="background: url('{{imgCDN}}{{images}}'); background-size: 100% 100%;">
|
||||
<view class="button_container">
|
||||
<navigator class="button" url="map/details">
|
||||
<text>{{shortName}}简介</text>
|
||||
</navigator>
|
||||
<navigator class="button" url="map/index">
|
||||
<text>逛逛{{shortName}}</text>
|
||||
</navigator>
|
||||
</view>
|
||||
<view class="copyright">
|
||||
<navigator target="miniProgram" app-id="wx8afedfde046e5916">
|
||||
<text>© cauc软工</text>
|
||||
</navigator>
|
||||
<navigator url="web-views/web-views?url={{mapCopyright.url}}">
|
||||
<text>{{mapCopyright?"数据版权:"+mapCopyright.name:""}}</text>
|
||||
</navigator>
|
||||
</view>
|
||||
</view>
|
@ -0,0 +1,44 @@
|
||||
.page {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.button_container {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: row;
|
||||
margin-top: 120px;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.button {
|
||||
width: 145rpx;
|
||||
height: 145rpx;
|
||||
margin: 20px;
|
||||
background-color: rgba(255, 224, 115, 0.9);
|
||||
border-radius: 80rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.button text {
|
||||
width: 55%;
|
||||
align-self: center;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.copyright {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
height: 55vh;
|
||||
font-size: 27rpx;
|
||||
text-align: center;
|
||||
line-height: 150%;
|
||||
text-shadow:#000 1rpx 0 0,#000 0 1rpx 0,#000 -1rpx 0 0,#000 0 -1rpx 0;
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
// pages/selectusers/index.js
|
||||
Page({
|
||||
inputgetID:function(e){
|
||||
this.setData({
|
||||
getUser_ID:e.detail.value
|
||||
})
|
||||
},
|
||||
searchDataNameFn:function(){
|
||||
wx.cloud.callFunction({
|
||||
name: 'useroption',
|
||||
data: {
|
||||
option: 'getcomments1',
|
||||
getUser_ID:this.data.getUser_ID
|
||||
},
|
||||
success: res => {
|
||||
this.setData({
|
||||
array: res.result.data
|
||||
})
|
||||
wx.showToast({
|
||||
title: '日志查询成功',
|
||||
})
|
||||
console.log(res.result.data)
|
||||
},
|
||||
fail: err => {
|
||||
wx.showToast({
|
||||
title: '日志查询失败',
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
getback:function(){
|
||||
wx.navigateBack({
|
||||
delta:2,
|
||||
})
|
||||
}
|
||||
})
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
<view class="getID">
|
||||
<input
|
||||
value="{{getUser_ID}}"
|
||||
placeholder="请输入要查询的日志的id"
|
||||
bindblur="inputgetID"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view>
|
||||
<view wx:if="{{array}}" class="code_box">
|
||||
<view class="code_box_title">日志</view>
|
||||
<view class="code_box_record">
|
||||
<view class="code_box_record_title">id</view>
|
||||
<view class="code_box_record_title">key</view>
|
||||
</view>
|
||||
<view class="line"></view>
|
||||
<view class="code_box_record" wx:for="{{array}}" wx:key="_id">
|
||||
<view class="code_box_record_detail">{{item.User_comments}}</view>
|
||||
<view class="code_box_record_detail">{{item.User_ID}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<button class="button" type="primary" bindtap="searchDataNameFn">查询</button>
|
||||
|
||||
<button class="button" type="primary" bindtap="getback">返回</button>
|
@ -0,0 +1,145 @@
|
||||
/* pages/selectusers/index.wxss */
|
||||
/* pages/selectusers(college)/index.wxss */
|
||||
|
||||
page {
|
||||
padding-top: 54rpx;
|
||||
background-color: #f6f6f6;
|
||||
padding-bottom: 60rpx;
|
||||
}
|
||||
|
||||
.button {
|
||||
margin-top: 50px;
|
||||
margin-left: 50px;
|
||||
margin-right: 50px;
|
||||
}
|
||||
|
||||
|
||||
.title {
|
||||
font-family: PingFang SC;
|
||||
font-weight: 500;
|
||||
color: #000000;
|
||||
font-size: 44rpx;
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
|
||||
.top_tip {
|
||||
font-size: 28rpx;
|
||||
color: rgba(0, 0, 0, 0.5);
|
||||
width: 90%;
|
||||
text-align: left;
|
||||
margin-top: 30rpx;
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
|
||||
.power {
|
||||
margin-top: 30rpx;
|
||||
border-radius: 5px;
|
||||
background-color: white;
|
||||
width: 93%;
|
||||
padding-bottom: 1rpx;
|
||||
}
|
||||
|
||||
.power_info {
|
||||
display: flex;
|
||||
padding: 30rpx 25rpx;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.power_info_more {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
.power_info_less {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
transform: rotate(270deg);
|
||||
}
|
||||
|
||||
.power_info_text {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.power_info_text_title {
|
||||
margin-bottom: 10rpx;
|
||||
font-weight: 400;
|
||||
font-size: 35rpx;
|
||||
}
|
||||
|
||||
.power_info_text_tip {
|
||||
color: rgba(0, 0, 0, 0.4);
|
||||
font-size: 25rpx;
|
||||
}
|
||||
|
||||
.power_item {
|
||||
padding: 30rpx 25rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.power_item_title {
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
.power_item_icon {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
}
|
||||
|
||||
.line {
|
||||
width: 95%;
|
||||
margin: 0 auto;
|
||||
height: 2rpx;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.environment {
|
||||
color: rgba(0, 0, 0, 0.4);
|
||||
font-size: 24rpx;
|
||||
margin-top: 25%;
|
||||
}
|
||||
|
||||
.code_box {
|
||||
text-align: center;
|
||||
background-color: white;
|
||||
margin-top: 30rpx;
|
||||
padding: 17rpx;
|
||||
}
|
||||
|
||||
.code_box_title {
|
||||
color: rgba(0, 0, 0, 0.5);
|
||||
font-size: 26rpx;
|
||||
margin-bottom: 20rpx;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.code_box_record {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.code_box_record_title {
|
||||
width: 33%;
|
||||
font-size: 26rpx;
|
||||
color: rgba(0, 0, 0, 0.5);
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
|
||||
.code_box_record_detail {
|
||||
width: 33%;
|
||||
font-size: 26rpx;
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
|
||||
.button {
|
||||
width: 300rpx;
|
||||
text-align: center;
|
||||
margin: 20% auto 0 auto;
|
||||
height: 80rpx;
|
||||
color: white;
|
||||
border-radius: 5px;
|
||||
line-height: 80rpx;
|
||||
background-color: #07c160;
|
||||
}
|
@ -0,0 +1,112 @@
|
||||
// pages/login/login.js
|
||||
var that;
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
userInfo:null,
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad:function(options) {
|
||||
that = this;
|
||||
wx.getStorage({
|
||||
key:'userInfo',
|
||||
success(res){
|
||||
// console.log('get storage success',JSON.parse(res.data))
|
||||
that.setData({
|
||||
userInfo:JSON.parse(res.data)
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow(){
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
},
|
||||
bindGetUserInfo: function(e){
|
||||
that = this;
|
||||
if(e.detail.userInfo){
|
||||
wx.setStorage({
|
||||
data:JSON.stringify(e.detail.userInfo),
|
||||
key:'userInfo',
|
||||
success(res){
|
||||
// console.log('set storage success:',res)
|
||||
that.setData({
|
||||
userInfo:JSON.parse(res.data)
|
||||
})
|
||||
}
|
||||
})
|
||||
wx.getStorage({
|
||||
key:'userInfo',
|
||||
success(res){
|
||||
// console.log('get storage success',JSON.parse(res.data))
|
||||
that.setData({
|
||||
userInfo:JSON.parse(res.data)
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
goToUser:function(options){
|
||||
|
||||
wx.navigateTo({
|
||||
url: '../pages/user/user'
|
||||
})
|
||||
},
|
||||
goToManager:function(options){
|
||||
wx.navigateTo({
|
||||
url: '../pages/manager/manager'
|
||||
})
|
||||
}
|
||||
})
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
<!--pages/login/login.wxml-->
|
||||
<view wx:if="{{userInfo != null}}">
|
||||
|
||||
<view class="logo">
|
||||
<open-data type="userAvatarUrl" class="userinfo" id="userinfo"></open-data>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view wx:if="{{userInfo != null}}">
|
||||
<text class="nickname_type">欢迎您! {{userInfo.nickName}}</text>
|
||||
<button size="default" type="primary"class="tapbtn1" bindtap="goToUser">用户登录</button>
|
||||
<button size="default" type="primary"class="tapbtn2" bindtap="goToManager">管理员登录</button>
|
||||
</view>
|
||||
<view wx:else="">
|
||||
<view class="text_style"> <text> 微信登陆</text></view>
|
||||
<view class="text_desc_style"><text>将获取您的信息,如头像、昵称等</text></view>
|
||||
<button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo"type="primary" size="default">授权登录</button>
|
||||
|
||||
</view>
|
@ -0,0 +1,49 @@
|
||||
/* pages/login/login.wxss */
|
||||
page {
|
||||
background-color: rgb(255, 255, 255);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
.text_style{
|
||||
margin-top: 40rpx;
|
||||
height: 140rpx;
|
||||
width: 100%;
|
||||
background: #ffffff;
|
||||
text-align: center;
|
||||
font-size: 40rpx;
|
||||
color: rgb(18, 18, 224);
|
||||
}
|
||||
.text_desc_style{
|
||||
/* margin-top: 40rpx; */
|
||||
height: 100rpx;
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
text-align: center;
|
||||
font-size: 30rpx;
|
||||
color: blue;
|
||||
}
|
||||
#userinfo{
|
||||
width: 260rpx;
|
||||
height:260rpx;
|
||||
border-radius:50%;
|
||||
display: flex;
|
||||
overflow:hidden;
|
||||
/* text-align: center; */
|
||||
/* justify-content: center; */
|
||||
margin-top: 50px;
|
||||
margin-left: 120px;
|
||||
}
|
||||
.nickname_type{
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
display: flex;
|
||||
/* align-items: center; */
|
||||
justify-content: center;
|
||||
}
|
||||
.tapbtn1{
|
||||
margin-top: 1%;
|
||||
}
|
||||
.tapbtn2{
|
||||
margin-top: 5%;
|
||||
}
|
@ -0,0 +1 @@
|
||||
/* pages/index/index.wxss */
|
@ -0,0 +1,89 @@
|
||||
// pages/index/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
goto() {
|
||||
wx.navigateTo({
|
||||
url: '/pages/test2/test2',
|
||||
})
|
||||
},
|
||||
|
||||
//管理员跳转登录页
|
||||
guanliyuandenglu() {
|
||||
wx.navigateTo({
|
||||
url: '/pages/managerlogin/managerlogin',
|
||||
})
|
||||
},
|
||||
|
||||
zhuce1() {
|
||||
wx.navigateTo({
|
||||
url: '/pages/register/register',
|
||||
})
|
||||
},
|
||||
exit() {
|
||||
wx.navigateTo({
|
||||
url: '../login',
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
<!--pages/index/index.wxml-->
|
||||
<!-- 未登录 -->
|
||||
<button type="primary" id="button2" bindtap="guanliyuandenglu">登录</button>
|
||||
<button type="primary" id="button3" bindtap="zhuce1">注册</button>
|
||||
<button type="warn" id = "button4" bindtap = "exit">退出</button>
|
||||
|
@ -0,0 +1 @@
|
||||
/* pages/manager/manager.wxss */
|
@ -0,0 +1,81 @@
|
||||
// pages/adlogin/adlogin.js
|
||||
Page({
|
||||
data: {
|
||||
account:'',
|
||||
password:''
|
||||
},
|
||||
|
||||
//获取输入的账号
|
||||
getAccount(evt) {
|
||||
//console.log('账号', evt.detail.value)
|
||||
this.setData({
|
||||
account: evt.detail.value
|
||||
})
|
||||
},
|
||||
|
||||
//获取管理员输入的密码
|
||||
getPassword(event) {
|
||||
// console.log('密码', event.detail.value)
|
||||
this.setData({
|
||||
password: event.detail.value
|
||||
})
|
||||
},
|
||||
|
||||
//点击管理员登陆
|
||||
guanliyuanlogin() {
|
||||
|
||||
let account = this.data.account
|
||||
let password = this.data.password
|
||||
console.log('管理员账号', account, '管理员密码', password)
|
||||
if (account.length < 4) {
|
||||
wx.showToast({
|
||||
icon: 'none',
|
||||
title: '账号至少4位',
|
||||
})
|
||||
return
|
||||
}
|
||||
if (password.length < 4) {
|
||||
wx.showToast({
|
||||
icon: 'none',
|
||||
title: '密码至少4位',
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
//管理员登陆
|
||||
wx.cloud.database().collection('user').where({
|
||||
account: account
|
||||
}).get({
|
||||
success(res) {
|
||||
console.log("获取数据成功", res)
|
||||
let manager = res.data[0]
|
||||
console.log("manager", manager)
|
||||
if (password == manager.password) {
|
||||
console.log('登陆成功')
|
||||
wx.showToast({
|
||||
title: '登陆成功',
|
||||
})
|
||||
wx.navigateTo({
|
||||
url: '../../pages/checklog/checklog',
|
||||
})
|
||||
wx.navigateTo({
|
||||
url: '/pages/me1/me1',
|
||||
})
|
||||
//保存管理员登陆状态
|
||||
wx.setStorageSync('manager', manager)
|
||||
} else {
|
||||
console.log('登陆失败')
|
||||
wx.showToast({
|
||||
icon: 'none',
|
||||
title: '账号或密码不正确',
|
||||
})
|
||||
}
|
||||
},
|
||||
fail(res) {
|
||||
console.log("获取数据失败", res)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
})
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
<!--pages/adlogin/adlogin.wxml-->
|
||||
输入管理员账号
|
||||
<input class="input" bindinput="getAccount"></input>
|
||||
输入管理员密码
|
||||
<input class="input" bindinput="getPassword"></input>
|
||||
<button bindtap="guanliyuanlogin" type="primary">登录</button>
|
@ -0,0 +1,6 @@
|
||||
/* pages/adlogin/adlogin.wxss */
|
||||
/* pages/adlogin/adlogin.wxss */
|
||||
.input{
|
||||
border: 1px solid gainsboro;
|
||||
margin: 20rpx;
|
||||
}
|