管理员小程序端登录
This commit is contained in:
parent
663c07276f
commit
1c3cb8ab7f
|
@ -31,7 +31,9 @@
|
|||
"pages/qtest/form",
|
||||
"pages/main/start",
|
||||
"pages/exam/index",
|
||||
"pages/exam/note"
|
||||
"pages/exam/note",
|
||||
"pages/admin/index",
|
||||
"pages/admin/login"
|
||||
],
|
||||
"window": {
|
||||
"backgroundTextStyle": "light",
|
||||
|
@ -88,7 +90,7 @@
|
|||
},
|
||||
"plugins": {
|
||||
"tencentvideo": {
|
||||
"version": "1.3.15",
|
||||
"version": "1.3.31",
|
||||
"provider": "wxa75efa648b60994b"
|
||||
}
|
||||
},
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
// pages/admin/index.js
|
||||
const api = require("../../utils/request.js");
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad: function (options) {
|
||||
api.requesta('/rbac/user/info/', 'GET').then(res => {
|
||||
getApp().globalData.admininfo = res.data
|
||||
this.setData({
|
||||
admininfo:res.data
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage: function () {
|
||||
|
||||
}
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"usingComponents": {},
|
||||
"navigationBarTitleText": "管理员控制台"
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
<!--pages/admin/index.wxml-->
|
||||
<view class="page">
|
||||
<view class="page__bd">
|
||||
<view class="weui-cells weui-cells_after-title" style="margin-top:0px">
|
||||
<view class="weui-panel__bd">
|
||||
<view class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active">
|
||||
<view class="weui-media-box__bd weui-media-box__bd_in-appmsg">
|
||||
<view class="weui-media-box__title">
|
||||
<span>账号:</span>
|
||||
<span style="font-weight:bold;">{{admininfo.username}}</span>
|
||||
</view>
|
||||
<view class="weui-media-box__desc">昵称:
|
||||
<span >{{ admininfo.name }}</span>
|
||||
</view>
|
||||
<view class="weui-media-box__desc">角色:
|
||||
<span >{{ admininfo.roles }}</span>
|
||||
</view>
|
||||
<view class="weui-media-box__desc">
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -0,0 +1 @@
|
|||
/* pages/admin/index.wxss */
|
|
@ -0,0 +1,84 @@
|
|||
// pages/admin/login.js
|
||||
const api = require("../../utils/request.js");
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
form:{
|
||||
username:'',
|
||||
password:''
|
||||
}
|
||||
},
|
||||
usernameChange: function (e) {
|
||||
this.data.form.username = e.detail.value
|
||||
},
|
||||
passwordChange: function (e) {
|
||||
this.data.form.password = e.detail.value
|
||||
},
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad: function (options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage: function () {
|
||||
|
||||
},
|
||||
denglu: function ( ) {
|
||||
var form = this.data.form
|
||||
api.requesta('/token/', 'POST', form).then(res => {
|
||||
getApp().globalData.admintoken = res.data.token
|
||||
wx.redirectTo({
|
||||
url: '/pages/admin/index',
|
||||
})
|
||||
})
|
||||
},
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"usingComponents": {},
|
||||
"navigationBarTitleText": "管理员登录"
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
<!--pages/admin/login.wxml-->
|
||||
<view class="page">
|
||||
<view class="page__hd" >
|
||||
<view class="page__title" style="text-align:center">中科辐射学堂</view>
|
||||
<view class="page__desc" style="text-align:center">管理员登录</view>
|
||||
</view>
|
||||
<view class="page__bd">
|
||||
<view class="weui-cells weui-cells_after-title">
|
||||
<view class="weui-cell weui-cell_input">
|
||||
<view class="weui-cell__hd">
|
||||
<view class="weui-label">账号</view>
|
||||
</view>
|
||||
<view class="weui-cell__bd">
|
||||
<input class="weui-input" placeholder="请输入管理员账号" bindinput="usernameChange" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="weui-cell weui-cell_input">
|
||||
<view class="weui-cell__hd">
|
||||
<view class="weui-label">密码</view>
|
||||
</view>
|
||||
<view class="weui-cell__bd">
|
||||
<input class="weui-input" placeholder="请输入密码" bindinput="passwordChange" type="password"/>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<button class="weui-btn" type="primary" bindtap="denglu">登陆</button>
|
||||
</view>
|
||||
<view class="weui-footer weui-footer_fixed-bottom">
|
||||
<!-- <view class="weui-footer__text" bindtap="intro">点击下载系统/小程序文档介绍</view> -->
|
||||
<view class="weui-footer__text">Copyright © 2018-2021 国检集团</view>
|
||||
<view class="weui-footer__text">中存大数据提供技术支持</view>
|
||||
</view>
|
|
@ -0,0 +1 @@
|
|||
/* pages/admin/login.wxss */
|
|
@ -33,6 +33,6 @@
|
|||
</view>
|
||||
<view class="weui-footer weui-footer_fixed-bottom">
|
||||
<!-- <view class="weui-footer__text" bindtap="intro">点击下载系统/小程序文档介绍</view> -->
|
||||
<view class="weui-footer__text">Copyright © 2018-2020 国检集团</view>
|
||||
<view class="weui-footer__text">Copyright © 2018-2021 国检集团</view>
|
||||
<view class="weui-footer__text">中存大数据提供技术支持</view>
|
||||
</view>
|
|
@ -72,6 +72,13 @@
|
|||
<view class="weui-cell__ft weui-cell__ft_in-access" style="color:red"></view>
|
||||
</navigator>
|
||||
</view>
|
||||
<view class="weui-cells__title">管理员操作台</view>
|
||||
<view class="weui-cells weui-cells_after-title">
|
||||
<navigator url="/pages/admin/login" class="weui-cell weui-cell_access">
|
||||
<view class="weui-cell__bd">管理员入口</view>
|
||||
<view class="weui-cell__ft weui-cell__ft_in-access" style="color:red"></view>
|
||||
</navigator>
|
||||
</view>
|
||||
<view class="weui-footer weui-footer_fixed-bottom">
|
||||
<!-- <view class="weui-footer__text" bindtap="intro">点击下载系统/小程序文档介绍</view> -->
|
||||
<view class="weui-footer__text">更多服务请联系课程顾问</view>
|
||||
|
|
|
@ -21,13 +21,15 @@
|
|||
"checkSiteMap": true,
|
||||
"uploadWithSourceMap": true,
|
||||
"compileHotReLoad": false,
|
||||
"useMultiFrameRuntime": false,
|
||||
"useMultiFrameRuntime": true,
|
||||
"useApiHook": true,
|
||||
"useApiHostProcess": false,
|
||||
"babelSetting": {
|
||||
"ignore": [],
|
||||
"disablePlugins": [],
|
||||
"outputPath": ""
|
||||
},
|
||||
"enableEngineNative": false,
|
||||
"bundle": false,
|
||||
"useIsolateContext": true,
|
||||
"useCompilerModule": true,
|
||||
|
@ -38,7 +40,7 @@
|
|||
"minifyWXSS": true
|
||||
},
|
||||
"compileType": "miniprogram",
|
||||
"libVersion": "2.14.1",
|
||||
"libVersion": "2.16.1",
|
||||
"appid": "wxf1e9471c93f05ad6",
|
||||
"projectname": "test_mini",
|
||||
"debugOptions": {
|
||||
|
|
|
@ -51,6 +51,57 @@ function request(url, method, data) {
|
|||
return promise;
|
||||
}
|
||||
|
||||
function requesta(url, method, data) {
|
||||
let promise = new Promise((resolve, reject) => {
|
||||
wx.showNavigationBarLoading();
|
||||
wx.request({
|
||||
url: getApp().globalData.host + url,
|
||||
method: method,
|
||||
data: data,
|
||||
header:{
|
||||
'Authorization': 'JWT ' + getApp().globalData.admintoken
|
||||
},
|
||||
success: (res => {
|
||||
if (res.data.code >= 200 && res.data.code < 400) {
|
||||
resolve(res.data);
|
||||
}else if(res.data.code == 401){
|
||||
|
||||
}
|
||||
else {
|
||||
var msg = '请求错误'
|
||||
if(res.data.msg){
|
||||
msg = res.data.msg
|
||||
}
|
||||
if (msg.indexOf('该操作的权限')!=-1){
|
||||
msg = '权限不足或账户过期,请联系课程顾问'
|
||||
}
|
||||
wx.showToast({
|
||||
title: msg,
|
||||
icon: 'none',
|
||||
duration: 1000
|
||||
})
|
||||
}
|
||||
|
||||
}),
|
||||
fail: (res => {
|
||||
wx.showToast({
|
||||
title: '请求出错',
|
||||
icon: 'none',
|
||||
duration: 1500
|
||||
})
|
||||
console.log(res)
|
||||
reject('网络出错');
|
||||
}),
|
||||
complete: function () {
|
||||
wx.hideNavigationBarLoading();
|
||||
}
|
||||
|
||||
})
|
||||
})
|
||||
return promise;
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
request: request
|
||||
request: request,
|
||||
requesta: requesta
|
||||
}
|
|
@ -47,6 +47,7 @@ class UserInfoView(APIView):
|
|||
# 'avatar': request._request._current_scheme_host + '/media/' + str(user.image),
|
||||
'avatar': user.avatar,
|
||||
'perms': perms,
|
||||
'roles':user.roles.values_list('name', flat=True)
|
||||
}
|
||||
|
||||
return Response(data)
|
||||
|
|
|
@ -45,7 +45,11 @@ class FitJSONRenderer(JSONRenderer):
|
|||
response = renderer_context.get("response")
|
||||
response_body.code = response.status_code
|
||||
if response_body.code >= 400: # drf异常
|
||||
response_body.msg = data['detail'] if 'detail' in data else data
|
||||
if isinstance(data, dict):
|
||||
data = data[list(data.keys())[0]]
|
||||
if isinstance(data, list):
|
||||
data = data[0]
|
||||
response_body.msg = data
|
||||
elif data and 'error' in data and data['error']:# 自传异常,key为error
|
||||
response_body.code = data.get("code",400)
|
||||
response_body.msg = data.get("error", "")
|
||||
|
|
Loading…
Reference in New Issue