first commit

This commit is contained in:
编码猿
2024-09-27 02:06:13 +08:00
commit 852d94fbb9
36760 changed files with 3274413 additions and 0 deletions

View File

@@ -0,0 +1,255 @@
const _ = require("../import");
/**
* @api {post} /user/login login
* @apiDescription 用户登录的接口注意用户登录成功后会在result中包含token参数请前端本地保存token。
* @apiName login
* @apiGroup user
* @apiParam {string} name 用户名
* @apiParam {string} pwd 用户密码
* @apiSuccessExample {json} 请求成功的返回:
* {
* "status" : 200,
* "message" : "请求成功"
* "result" : "asjXzXxmnSp8TZGWiTSlJF8Gb...5LhYoHs86SEI2LBXrTZ9e/a4frZOWHZ"
* }
* @apiErrorExample {json} 请求失败的返回
* {
* "status": 404,
* "message" : "请求错误"
* "result": null
* }
* @apiSampleRequest http://127.0.0.1:9090/user/login
* @apiVersion 1.0.0
*/
_.router.post('/login', async function (req, res, next) {
var username = req.headers.data.name,
userpwd = req.headers.data.pwd;
console.log("username: ", username);
console.log("userpwd: ", userpwd);
var data = await _.db.query({
sql: _.config.sql.userLogin,
data: [username,_.utils.Md5Password(userpwd)]
})
if (data.length != 0 ){
var token = _.jwt.sign({
id: data[0].user_id,
username: data[0].user_name
}, _.config.jwt, { expiresIn: '3h' }); // 1m
res.json({
status: 200,
message: '登录成功',
result: _.rsa.PrivateKeyEncryption({
token: token
})
});
} else {
res.json({
status: 404,
message: '账户名或密码有误',
result: null
});
}
});
/**
* @api {post} /user/add add
* @apiDescription 用户注册的接口
* @apiName add
* @apiGroup user
* @apiParam {string} name 用户名
* @apiParam {string} pwd 用户密码
* @apiParam {string} phone 用户手机号
* @apiSuccessExample {json} 请求成功的返回:
* {
* "status" : 200,
* "message" : "注册成功"
* "result" : "asjXzXxmnSp8TZGWiTSlJF8Gb...5LhYoHs86SEI2LBXrTZ9e/a4frZOWHZ"
* }
* @apiErrorExample {json} 请求失败的返回
* {
* "status": 404,
* "message" : "注册失败"
* "result": null
* }
* @apiSampleRequest http://127.0.0.1:9090/user/add
* @apiVersion 1.0.0
*/
_.router.post('/add', async function (req, res, next) {
var username = req.headers.data.name,
userpwd = req.headers.data.pwd,
userphone = req.headers.data.phone;
var data = await _.db.query({
sql: _.config.sql.addUser,
data: [username,_.utils.Md5Password(userpwd),userphone, _.utils.getTime()]
})
if(data.hasOwnProperty('insertId')) {
res.json({
status: 200,
message: '注册成功',
result: _.rsa.PrivateKeyEncryption({})
});
} else {
res.json({
status: 404,
message: '注册失败',
result: null
});
}
});
/**
* @api {post} /user/like like
* @apiDescription 用户在详情页收藏商品使用的接口
* @apiName like
* @apiGroup user
* @apiParam {number} shopid 需要被收藏商品的id这里是商品的 wares_id 字段
* @apiSuccessExample {json} 请求成功的返回:
* {
* "status" : 200,
* "message" : "收藏成功"
* "result" : "asjXzXxmnSp8TZGWiTSlJF8Gb...5LhYoHs86SEI2LBXrTZ9e/a4frZOWHZ"
* }
* @apiErrorExample {json} 请求失败的返回
* {
* "status": 404,
* "message" : "抱歉,请勿重复收藏"
* "result": null
* }
* @apiSampleRequest http://127.0.0.1:9090/user/like
* @apiVersion 1.0.0
*/
_.router.post('/like', async function (req, res, next) {
var like_shop = req.headers.data.shopid;
var IsLike = await _.db.query({
sql: _.config.sql.selectLike,
data: [like_shop,_.jwt.decode(req.headers.token).id]
});
if(IsLike.length != 0) {
res.json({
status: 404,
message: '抱歉,请勿重复收藏',
result: _.rsa.PrivateKeyEncryption({})
});
} else {
var data = await _.db.query({
sql: _.config.sql.likeShop,
data: [like_shop, _.jwt.decode(req.headers.token).id]
});
if(data.hasOwnProperty('insertId')) {
res.json({
status: 200,
message: '收藏成功',
result: _.rsa.PrivateKeyEncryption({})
});
} else {
res.json({
status: 404,
message: '收藏失败',
result: null
});
}
}
});
/**
* @api {post} /user/likeList likeList
* @apiDescription 获取用户收藏的商品不需要参数后端会解密请求头token获取user_id
* @apiName likeList
* @apiGroup user
* @apiSuccessExample {json} 请求成功的返回:
* {
* "status" : 200,
* "message" : "请求成功"
* "result" : "asjXzXxmnSp8TZGWiTSlJF8Gb...5LhYoHs86SEI2LBXrTZ9e/a4frZOWHZ"
* }
* @apiErrorExample {json} 请求失败的返回
* {
* "status": 404,
* "message" : "请求失败"
* "result": null
* }
* @apiSampleRequest http://127.0.0.1:9090/user/likeList
* @apiVersion 1.0.0
*/
_.router.post('/likeList', async function(req, res, next) {
var data = await _.db.query({
sql: _.config.sql.getLikeList,
data: [ _.jwt.decode(req.headers.token).id ]
});
res.json({
status: 200,
message: '请求成功',
result: _.rsa.PrivateKeyEncryption(data)
});
});
/**
* @api {post} /user/getUserAddress getUserAddress
* @apiDescription 获取用户的收货地址(不需要参数,传空对象 {} 即可
* @apiName getUserAddress
* @apiGroup user
* @apiSuccessExample {json} 请求成功的返回:
* {
* "status" : 200,
* "message" : "请求成功"
* "result" : "asjXzXxmnSp8TZGWiTSlJF8Gb...5LhYoHs86SEI2LBXrTZ9e/a4frZOWHZ"
* }
* @apiErrorExample {json} 请求失败的返回
* {
* "status": 200,
* "message" : "没有收货地址"
* "result": null
* }
* @apiSampleRequest http://127.0.0.1:9090/user/getUserAddress
* @apiVersion 1.0.0
*/
_.router.post('/getUserAddress', async function(req, res, next) {
var data = await _.db.query({
sql: _.config.sql.getUserAddress,
data: [ _.jwt.decode(req.headers.token).id ]
});
if (data[0].user_address == null || data[0].user_address.length == 0) {
res.json({
status: 200,
message: '没有收货地址',
result: _.rsa.PrivateKeyEncryption({})
});
} else {
res.json({
status: 200,
message: '请求成功',
result: _.rsa.PrivateKeyEncryption(data)
});
}
});
module.exports = _.router;