Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
付智勇
/
koa2_Sequelize_project
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
付智勇
8 years ago
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
ab3b4221998766f171a7fece4ba9e97c80f06af5
ab3b4221
1 parent
8323d75a
1、鉴权完善 2、创建课堂
隐藏空白字符变更
内嵌
并排对比
正在显示
8 个修改的文件
包含
78 行增加
和
12 行删除
app.js
controller/meetingController.js
controller/userController.js
model/meetingModel.js
routes/meeting.js
services/meetingService.js
services/userService.js
util/tokenUtil.js
app.js
查看文件 @
ab3b422
...
...
@@ -10,6 +10,7 @@ const cors = require('koa-cors');
const
index
=
require
(
'./routes/index'
)
const
users
=
require
(
'./routes/users'
)
const
meeting
=
require
(
'./routes/meeting'
)
const
filterUrl
=
require
(
__dirname
+
'/util/filterUrl'
)
var
tokenUtil
=
require
(
'./util/tokenUtil'
);
const
_
=
require
(
'lodash'
);
...
...
@@ -41,6 +42,9 @@ app.use(async (ctx, next) => {
status
.
catchError
(
ctx
,
400
,
'请登录'
);
}
else
{
let
isToken
=
await
tokenUtil
.
prverifySession
(
ctx
.
header
.
token
);
ctx
.
request
.
userID
=
isToken
.
id
;
ctx
.
request
.
userName
=
isToken
.
userName
;
ctx
.
request
.
userRole
=
isToken
.
userRole
;
await
next
();
}
const
ms
=
new
Date
()
-
start
;
...
...
@@ -53,5 +57,7 @@ app.use(async (ctx, next) => {
// routes
app
.
use
(
index
.
routes
(),
index
.
allowedMethods
())
app
.
use
(
users
.
routes
(),
users
.
allowedMethods
())
app
.
use
(
meeting
.
routes
(),
meeting
.
allowedMethods
())
module
.
exports
=
app
...
...
controller/meetingController.js
查看文件 @
ab3b422
var
userModel
=
require
(
'../model/userModel'
);
var
saitMd5
=
require
(
'../util/saltMD5'
)
var
status
=
require
(
'../util/resTemplate'
)
const
meetingService
=
require
(
'../services/meetingService'
)
const
uuid
=
require
(
'../util/UuidUtil'
)
...
...
@@ -11,8 +12,47 @@ const uuid = require('../util/UuidUtil')
meetingController
.
prototype
.
createMeeting
=
async
(
ctx
,
next
)
=>
{
try
{
let
meetingbody
=
ctx
.
request
.
body
;
if
(
!
meetingbody
.
presenterPassword
){
return
status
.
paramError
(
'meetingName'
);
}
else
if
(
!
meetingbody
.
meetingName
){
return
status
.
paramError
(
'meetingName'
,
'不能为空'
);
}
let
num
=
JSON
.
stringify
(
Math
.
floor
(
Math
.
random
()
*
99999
)
+
1000
)
let
meeting
=
{
meetingNumber
:
num
,
//课堂序号
meetingName
:
meetingbody
.
meetingName
,
//课堂名字
meetingContent
:
meetingbody
.
meetingContent
,
//课堂描述
create_user
:
ctx
.
request
.
userName
,
//创建用户名
presenterPassword
:
meetingbody
.
presenterPassword
,
//主讲人密码
beginTime
:
new
Date
(
meetingbody
.
beginTime
),
//开始时间
endTime
:
new
Date
(
meetingbody
.
endTime
),
// 结束时间
isPublic
:
meetingbody
.
isPublic
,
//是否公开课
repeatmode
:
meetingbody
.
repeatmode
,
//是否重复周期
meetingType
:
meetingbody
.
meetingType
,
//课堂类型
h5Module
:
meetingbody
.
h5Module
,
// 是否支持H5
attendeePassword
:
meetingbody
.
attendeePassword
,
//学生密码
videoModule
:
meetingbody
.
videoModule
,
//视频是否启用
chatInterval
:
meetingbody
.
chatInterval
,
//聊天延时时间
aheadTime
:
meetingbody
.
aheadTime
,
// 提前进入课堂时间
maxVideoChannels
:
meetingbody
.
maxVideoChannels
,
//最大视频路数
max_audioChannels
:
meetingbody
.
max_audioChannels
,
// 最大音频路数
video_quality
:
meetingbody
.
video_quality
,
//视频画质
pagenaviUserprivilege
:
meetingbody
.
pagenaviUserprivilege
,
//换页权限是否开启
markerUserprivilege
:
meetingbody
.
markerUserprivilege
,
// 批注权限是否开启
chatToNormalUserprivilege
:
meetingbody
.
chatToNormalUserprivilege
,
//与参会者聊天权限是否开启
chatToHostUserprivilege
:
meetingbody
.
chatToHostUserprivilege
,
//与主持人聊天权限是否开启
docModule
:
meetingbody
.
docModule
,
//文档共享是否开启
screenModule
:
meetingbody
.
screenModule
,
//屏幕共享是否开启
mediaModule
:
meetingbody
.
mediaModule
,
//媒体共享是否开启
whiteboardModule
:
meetingbody
.
whiteboardModule
,
//白板共享是否开启
recordModule
:
meetingbody
.
recordModule
,
//录制是否启用
chatModule
:
meetingbody
.
chatModule
,
//聊天模式是否启用
}
let
backMeeting
=
await
meetingService
.
createMeeting
(
meeting
);
return
backMeeting
;
}
catch
(
error
)
{
throw
error
;
}
}
...
...
controller/userController.js
查看文件 @
ab3b422
...
...
@@ -25,7 +25,7 @@ userController.prototype.addUser = async(ctx, next) =>{
return
status
.
paramError
(
'loginName'
);
}
else
if
(
!
params
.
password
){
return
status
.
paramError
(
'password'
,
'不能为空'
);
}
if
(
params
.
password
.
length
<
6
){
}
else
if
(
params
.
password
.
length
<
6
){
return
status
.
paramError
(
'password'
,
'不得小于6位'
);
}
...
...
model/meetingModel.js
查看文件 @
ab3b422
...
...
@@ -35,7 +35,6 @@ var user = sequelize.define('3m_meeting', {
},
beginTime
:{
type
:
Sequelize
.
DATE
,
defaultValue
:
Sequelize
.
NOW
,
field
:
"begin_time"
},
endTime
:{
...
...
routes/meeting.js
查看文件 @
ab3b422
const
router
=
require
(
'koa-router'
)()
var
userModel
=
require
(
'../model/userModel'
);
var
saitMd5
=
require
(
'../util/saltMD5'
)
var
meetingContoller
=
require
(
'../controller/meetingController'
)
var
status
=
require
(
'../util/resTemplate'
)
...
...
@@ -11,10 +9,9 @@ router.prefix('/meeting')
router
.
post
(
'/createMeeting'
,
async
(
ctx
,
next
)
=>
{
try
{
var
data
=
await
meetingContoller
.
createMeeting
(
ctx
,
next
);
status
.
successTemp
(
200
,
data
);
status
.
successTemp
(
ctx
,
200
,
data
);
}
catch
(
e
){
const
err
=
{
code
:
0
,
msg
:
e
.
message
}
status
.
catchError
(
400
,
e
.
message
);
status
.
catchError
(
ctx
,
400
,
e
.
message
);
}
})
...
...
services/meetingService.js
0 → 100644
查看文件 @
ab3b422
var
meetingModel
=
require
(
'../model/meetingModel'
);
var
status
=
require
(
'../util/resTemplate'
);
var
saitMd5
=
require
(
'../util/saltMD5'
);
var
sequelize
=
require
(
'../config'
);
var
tokenUtil
=
require
(
'../util/tokenUtil'
);
var
co
=
require
(
'co'
);
function
meetingService
(){
}
meetingService
.
prototype
.
createMeeting
=
async
(
meetingInfo
)
=>
{
try
{
let
backMeeting
=
meetingModel
.
create
(
meetingInfo
);
return
backMeeting
}
catch
(
error
)
{
throw
error
}
}
module
.
exports
=
new
meetingService
();
\ No newline at end of file
...
...
services/userService.js
查看文件 @
ab3b422
...
...
@@ -46,7 +46,7 @@ userService.prototype.login = async(name,pw) => {
userService
.
prototype
.
getStu
=
async
(
type
)
=>
{
try
{
let
sql
=
`
SELECT
u
.
*
,
ug
.
name
u
.
*
,
ug
.
name
groupName
FROM
3
m_user
u
LEFT
JOIN
3
m_user_group
ug
ON
ug
.
id
=
u
.
group_id
`
...
...
util/tokenUtil.js
查看文件 @
ab3b422
...
...
@@ -15,11 +15,12 @@ module.exports = new JwtSession() ;
* @param cb
*/
JwtSession
.
prototype
.
getSession
=
(
users
)
=>
{
var
expiresIn
=
60
*
60
*
2
;
console
.
log
(
users
)
var
expiresIn
=
60
*
60
*
1000
;
var
payload
=
{};
payload
.
id
=
users
.
id
;
payload
.
name
=
users
.
loginName
;
payload
.
code
=
users
.
userType
;
payload
.
name
=
users
.
userName
;
payload
.
userRole
=
users
.
userRole
;
var
options
=
{
"expiresIn"
:
expiresIn
};
...
...
@@ -39,6 +40,7 @@ JwtSession.prototype.getSession = (users) =>{
JwtSession
.
prototype
.
prverifySession
=
async
(
token
)
=>
{
try
{
let
back
=
jwt
.
verify
(
token
,
'3mang'
);
return
back
;
}
catch
(
error
)
{
throw
new
Error
(
error
)
}
...
...
请
注册
或
登录
后发表评论