时间:4个小时左右
代码:300行左右
博客:2
学习内容:完成了简单的后台电影订票的增删改查。
以下是代码内容:
const mysql = require('mysql');
const conn = mysql.createConnection({
host: 'localhost', //数据库地址
user: 'root', //用户名
password: '789987', //密码
database: 'db_film' //数据库名
});
conn.connect();
module.exports = conn;
//获取当前页电影
router.get('/api/admin/getCurrentPageMovie',function(req,res){
let {
currentPage, pageSize,input
} = req.query;
let start = Number((currentPage-1)*pageSize);
pageSize = Number(pageSize);
let sqlStr = 'SELECT * FROM t_movie WHERE name LIKE ? ORDER BY movie_id';
let total;
conn.query(sqlStr,["%"+input+"%"],(error,result,field)=>{
if (error){
console.log(error);
} else{
result = JSON.parse(JSON.stringify(result));
total = result.length;
}
});
sqlStr = 'SELECT * FROM t_movie WHERE name LIKE ? ORDER BY movie_id LIMIT ?,?;';
conn.query(sqlStr,["%"+input+"%",start,pageSize],(error,result,field)=>{
if (error){
console.log(error);
} else{
result = JSON.parse(JSON.stringify(result));
res.json({success_code:200,data:result,total:total});
}
})
});
//更新电影信息
router.post('/api/admin/updateMovieInfo',function(req,res){
let {
movieId,
movieName,
poster,
director,
actor,
long,
type,
language,
publicDate,
intro
} = req.body;
let sqlStr = 'SELECT * FROM t_movie WHERE name = ? AND movie_id <> ? LIMIT 1;';
conn.query(sqlStr,[movieName,movieId],(error,result,field)=>{
if (error){
console.log(error);
} else{
result = JSON.parse(JSON.stringify(result));
if (result[0]){
res.json({error_code:1,message:'电影名已存在!'});
} else{
//更新数据库
let sqlStr = 'UPDATE t_movie SET name = ?,poster = ?,director = ?,actor = ? ,movie_long = ?,type = ?,language = ?,public_date = ?,intro = ? WHERE movie_id = ?;';
conn.query(sqlStr,[movieName,poster,director,actor,long,type,language,publicDate,intro,movieId],(error,result,field)=>{
if (error){
console.log(error);
} else{
res.json({success_code:200})
}
})
}
}
});
});
//添加电影信息
router.post('/api/admin/addMovieInfo',function(req,res){
let {
movieName,
poster,
director,
actor,
long,
type,
language,
publicDate,
intro
} = req.body;
let sqlStr = 'SELECT * FROM t_movie WHERE name = ? LIMIT 1;';
conn.query(sqlStr,[movieName],(error,result,field)=>{
if (error){
console.log(error);
} else{
result = JSON.parse(JSON.stringify(result));
if (result[0]){
res.json({error_code:1,message:'电影名已存在!'});
} else{
let sqlStr = 'INSERT INTO t_movie(name,poster,director,actor,movie_long,type,language,public_date,intro) VALUES(?,?,?,?,?,?,?,?,?);';
conn.query(sqlStr,[movieName,poster,director,actor,long,type,language,publicDate,intro],(error,result,field)=>{
if (error){
console.log(error);
} else{
res.json({success_code:200});
}
})
}
}
});
});
datatime = './public/images/movie/';
//将图片放到服务器
storage = multer.diskStorage({
// 如果你提供的 destination 是一个函数,你需要负责创建文件夹
destination: datatime,
// //给上传文件重命名,获取添加后缀名
filename: function (req, file, cb) {
cb(null, new Date().getTime()+'.jpg');
}
});
upload = multer({
storage: storage
});
router.post('/api/admin/upLoadMovieImg',upload.any(),function (req,res) {
res.json({success_code:200,data:req.files});
console.log(req.files);
});
//删除电影信息
router.post('/api/admin/deleteMovieInfo',function(req,res){
let {
movieId
} = req.body;
let sqlStr = 'DELETE FROM t_movie WHERE movie_id =?';
conn.query(sqlStr,[movieId],(error,result,field)=>{
if (error){
console.log(error);
} else {
res.json({success_code:200});
}
})
});