7.路由规则
在对index.js进行完善后,就可以在他同级下创建文件,完成相应的路由规则。
1.login.js
login.js代码如下:
var express = require('express');
var router = express.Router();
var db = require('../model/db');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('cookie-session');
const querystring=require('querystring');
router.get('/login', function(req, res,next) {
res.render('login', {});
});
router.post('/login', function(req, res, next) {
if(req.body.boss){
var queryString = "select * from boss where bossid='" + req.body.username +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
if (rows.length == 0){
res.send("用户名不存在");
}else if (rows[0].bosspassword == req.body.password) {
console.log(req.session);
req.session.username=req.body.username;
res.redirect('bossindex');
console.log(req.session); //登录成功,返回用户的全部信息
}else {
res.send('密码错误');
}
}
})}
else{
var queryString = "select * from admin where id='" + req.body.username +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
if (rows.length == 0){
res.send("用户名不存在");
}else if (rows[0].password == req.body.password) {
req.session.username=req.body.username;;
res.redirect('adindex', 302); //登录成功,返回用户的全部信息
}else {
res.send('密码错误');
}
}
})}
});
module.exports = router;
在我的登录页有管理员登录和经理登录,所以设置相应的session,只要判断哪个session存在,就可以判断是管理员还是经理登录。
2.bossindex.js
代码如下:
var express = require('express');
var router = express.Router();
router.get('/bossindex', function(req, res) {
if(req.session.username!=null){
var name=req.session.username;
res.render('bossindex', {title: name});
console.log(name);
}else{
res.redirect('../login',302);
}
});
module.exports = router;
3.bossadd.js
代码如下:
var express = require('express');
var router = express.Router();
var db = require('../model/db');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('cookie-session');
const querystring=require('querystring');
//添加管理员
router.get('/bossindex/useradd', function(req, res) {
if(req.session.username!=null){
var name=req.session.username;
res.render('bossadd', {title: name});
console.log(name);
}else{
res.redirect('../login',302);
}
});
router.post('/bossindex/useradd', function(req, res) {
var queryString = "select * from admin where id='" + req.body.userId +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send("404");
}else {
if (rows.length != 0) {
res.send("用户名已存在,注册失败");
}
else{
queryString = "insert into admin(id,name, password,sex,age,photo) values('" + req.body.userId + "', '" + req.body.userName + "','" + req.body.userpassword + "','" + req.body.sex + "','" + req.body.userAge + "','" + req.body.userphone + "')";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
res.send("成功");
}
});
}
}
});
});
//查询账单
router.get('/bossindex/bill', function(req, res) {
if(req.session.username!=null){
var name=req.session.username;
res.render('bill', {title: name});
console.log(name);
}else{
res.redirect('../login',302);
}
});
router.post('/bossindex/bill', function(req, res) {
var data=req.body.data;
var queryString = "select pd.*,s.* from played pd,seat s where time='" + data +"'and pd.playid=s.playid";
db.query(queryString, function(err, rows){
if (err) {
res.send("404");
}else {
res.json(rows);
}
});
});
module.exports = router;
4.adindex.js
代码如下:
var express = require('express');
var router = express.Router();
router.get('/adindex', function(req, res) {
if(req.session.username!=null){
var name=req.session.username;
res.render('adindex', {title: name});
console.log(name);
}else{
res.redirect('login',302);
}
});
router.post('/adindex', function(req, res) {
res.render('adindex', {title: '后台登录'});
});
module.exports = router;
5.movieadd.js
var express = require('express');
var router = express.Router();
var db = require('../model/db');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('cookie-session');
const querystring=require('querystring');
//添加电影
router.get('/adindex/movieadd', function(req, res, next) {
if(req.session.username!=null){
var name=req.session.username;
res.render('movieadd', {title: name});
console.log(name);
}else{
res.redirect('../login',302);
}
});
router.post('/adindex/movieadd', function(req, res) {
var name=req.session.username;
var queryString = "select * from movies where moviename='" + req.body.moviename +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send("1");
}
else {
if (rows.length != 0) {
res.send("电影已存在");
}
else
{
queryString = "insert into movies(moviename,moviestyle,movieimage,movieintroduction,movielenth,movietime) values('" + req.body.moviename + "', '" + req.body.moviestyle+ "','" + req.body.movieimage + "','" + req.body.movieintroduction + "','" + req.body.movielenth + "','" + req.body.movietime + "')";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
db.query('SELECT * FROM movies', function(err, rows){
if (err) {
res.send("读取失败");
}
else {
var data = [];
data = rows;
res.render('movielist', {title:name,data});
}
});
}
});
}
}
});
});
//添加演出厅
router.get('/adindex/playadd', function(req, res, next) {
if(req.session.username!=null){
var name=req.session.username;
res.render('playadd', {title: name});
}else{
res.redirect('../login',302);
}
});
router.post('/adindex/playadd', function(req, res, next) {
var name=req.session.username;
var queryString = "select * from play where playname='" + req.body.playname +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send("1");
}
else {
if (rows.length != 0) {
res.send("演出厅已存在");
}
else
{
queryString = "insert into play(playname,playrow,playcol) values('" + req.body.playname + "','" + req.body.playrow + "','" + req.body.playcol + "')";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
db.query('SELECT * FROM play', function(err, rows){
if (err) {
res.send("读取失败");
}
else {
var data = [];
data = rows;
console.log("添加成功!");
res.render('playlist',{title:name,data});
}
});
}
});
}
}
});
});
//演出厅信息
router.get('/adindex/playlist', function(req, res, next) {
if(req.session.username!=null){
var name=req.session.username;
db.query('SELECT * FROM play ', function(err, rows){
if (err) {
res.send("读取失败");
}else {
var data = [];
data = rows;
res.render('playlist', {title:name,data});
}
});
}else{
res.redirect('../login',302);
}
});
//添加剧目
router.get('/adindex/playmovie', function(req, res, next) {
if(req.session.username!=null){
var name=req.session.username;
db.query('SELECT * FROM movies', function(err, rows){
if (err) {
res.send("读取失败");
}else {
data1=[];
data1=rows;
}
});
db.query('SELECT * FROM play', function(err, rows){
if (err) {
res.send("读取失败");
}else {
var data = [];
data = rows;
res.render('playmovie', {title:name,data,data1});
}
});
console.log(name);
}else{
res.redirect('../login',302);
}
});
router.post('/adindex/playmovie', function(req, res, next) {
var name=req.session.username;
var time = req.body.time;
var playname = req.body.playname;
var playtime = req.body.playtime;
var s=[];
var c="";
s=playtime.split(':');
s[0]= parseInt(s[0])+2;
for(var i=0;i<=2;i++)
{
if(i!=2)
{
c+=s[i]+":";
}
else{
c+=s[i];
}
}
var query ="select * from played where time='"+time+"' and playname='"+ playname+"' and( playtime between '"+ playtime+"' and '"+ c +" ' )";
db.query(query,function(err,rows){
if(err){
console.log("1");
}
else{
if(rows.length===0){
queryString = "insert into played(playname,moviename,playtime,price,time,type) values('" + req.body.playname + "','" + req.body.moviename + "','" + req.body.playtime + "','" + req.body.price + "','" + req.body.time + "','1')";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
db.query('SELECT * FROM played', function(err, rows){
if (err) {
res.send("读取失败");
}
else {
var data = [];
data = rows;
console.log("添加成功!");
res.render('played',{title:name,data});
}
});
}
});
}
else{
res.send("该时间段内已存在计划!");
}
}
});
});
//添加演出计划
router.get('/adindex/played', function(req, res, next) {
if(req.session.username!=null){
var name=req.session.username;
db.query('SELECT * FROM played where type=1', function(err, rows){
if (err) {
res.send("读取失败");
}else {
var data = [];
data = rows;
res.render('played', {title:name,data});
}
});
console.log(name);
}else{
res.redirect('../login',302);
}
});
router.post('/adindex/played', function(req, res, next) {
var queryString="SELECT * FROM played where playname='"+ req.body.td+"' and playtime='"+ req.body.pt+"'";
db.query( queryString, function(err, rows){
if (err) {
console.log("1");
}else {
var id = rows[0].playid;
var queryString="update played set type='0' where playid='"+ id+"' ";
db.query( queryString, function(err, rows){
if (err) {
console.log("2");
}else {
res.json({success:1});
}
});
}
});
});
module.exports = router;
6.user.js
代码如下:
var express = require('express');
var router = express.Router();
var db = require('../model/db');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('cookie-session');
const querystring=require('querystring');
router.post('/user', function(req, res) {
//注册
console.log(req.body.new);
console.log(req.body.phone);
console.log(req.body.password);
var queryString = "select * from user where phone='" + req.body.phone +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send("404");
}else {
if (rows.length != 0) {
res.send("用户名已存在,注册失败");
}
else{
queryString = "insert into user(phone,password,name) values('" + req.body.phone + "','" + req.body.password + "','" + req.body.password + "')";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
res.send("成功");
}
});
}
}
});
});
module.exports = router;
7.movie.js
代码如下:
var express = require('express');
var router = express.Router();
var db = require('../model/db');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('cookie-session');
const querystring=require('querystring');
router.get('/movie/:id', function(req, res) {
if(req.session.name!=null){
var myDate = new Date();
myDate.getDate();
var mytime=myDate.toLocaleTimeString();
var moviename = req.params.id.split('=')[1];
var querytring = "select * from played where moviename='" + moviename +"' and time='" + myDate.toLocaleDateString() +"'and playtime > '" + mytime +"'";
var data2=[];
db.query(querytring, function(err, rows){
if (err) {
res.send("读取失败");
}else {
data2 = rows;
var a=[];
console.log(rows);
for(var i=0;i<data2.length;i++){
if(a.indexOf(data2[i].playname) === -1){
console.log(data2[i].playname);
a.push(data2[i].playname);
}
}
m = new Map();
for(var k=0;k<a.length;k++){
var temp = [];
for(var j=0;j<data2.length;j++){
if(data2[j].playname === a[k] ){
temp.push(data2[j].playtime); } }
if(temp !== null){ console.log(a[k],temp); m.set(a[k],temp); } }
}
});
console.log(data2);
var queryString = "select * from movies where moviename='" + moviename +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send("读取失败");
}else {
var data1 = [];
data1 = rows;
res.render('movie', {name:req.session.name,test:'退出',data:"#1",data1,m,data2}); console.log(req.session.name);
}
});
}else{
res.redirect('../',302);
}
});
module.exports = router;
8.users.js
代码如下:
var express = require('express');
var router = express.Router();
var db = require('../model/db');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('cookie-session');
const querystring=require('querystring');
router.get('/users', function(req, res, next) {
// var myDate = new Date();
// myDate.getDate();
// var mytime=myDate.toLocaleTimeString();
// var moviename = req.params.id.split('=')[1];
// var querytring = "select * from played where moviename='" + moviename +"' and time='" + myDate.toLocaleDateString() +"'and playtime > '" + mytime +"'";
// var data2=[];
var myDate = new Date();
myDate.getDate();
var mytime=myDate.toLocaleTimeString();
console.log(myDate.toLocaleDateString(),mytime);
phone = req.session.phone;
var query = "select s.*,p.* from seat s,played p where s.name='" + phone +"' and s.playid=p.playid and p.time='" + myDate.toLocaleDateString() +"'and p.playtime > '" + mytime +"'" ;
db.query(query,function(err,rows){
if (err) {
res.send("202");
} else {
res.json(rows);
}
});
});
/* GET users listing. */
router.post('/users', function(req, res, next) {
db.query('SELECT * FROM movies', function(err, rows){
if (err) {
res.send("读取失败");
}else {
data1 = [];
data1 = rows;
}
});
var queryString = "select * from user where phone='" + req.body.phone +"'";
db.query(queryString, function(err, rows){
if (err) {
res.send(err);
}else {
if (rows.length == 0){
res.send("用户名不存在");
}else if (rows[0].password == req.body.password) {
req.session.name=rows[0].name;
req.session.phone=rows[0].phone;
res.render('index',{name :req.session.name,test:"退出",data:"#1",data1});
console.log("登录成功");
console.log(req.session.name); //登录成功,返回用户的全部信息
}else {
res.send('密码错误');
console.log(req.body.password);
}
}
})
});
module.exports = router;
路由规则创建完成。