状态码、提示消息抽离,ts校验修改

This commit is contained in:
xiaoxian521 2020-12-02 21:12:19 +08:00
parent 95a964f000
commit cf475e2dc0
6 changed files with 69 additions and 32 deletions

View File

@ -52,7 +52,7 @@ export default {
host: 'localhost', host: 'localhost',
charset: 'utf8_general_ci', charset: 'utf8_general_ci',
user: 'root', user: 'root',
password: 'admin' password: '123456789'
}, },
mongodb: {}, mongodb: {},
sqlite: {}, sqlite: {},

View File

@ -6,7 +6,9 @@ import Logger from "../../loaders/logger"
import { Request, Response } from "express" import { Request, Response } from "express"
import { createMathExpr } from "svg-captcha" import { createMathExpr } from "svg-captcha"
import getFormatDate from "../../utils/date" import getFormatDate from "../../utils/date"
import { Code, Info } from "../../utils/infoEnum"
import { connection } from "../../utils/initMysql" import { connection } from "../../utils/initMysql"
export interface dataModel { export interface dataModel {
length: number length: number
} }
@ -48,15 +50,15 @@ let generateVerify: number
const login = async (req: Request, res: Response) => { const login = async (req: Request, res: Response) => {
const { username, password, verify } = req.body const { username, password, verify } = req.body
if (generateVerify !== verify) return res.json({ if (generateVerify !== verify) return res.json({
code: -1, code: Code.failCode,
info: "请输入正确的验证码" info: Info[0]
}) })
let sql: string = 'select * from users where username=' + "'" + username + "'" let sql: string = 'select * from users where username=' + "'" + username + "'"
connection.query(sql, async function (err, data: dataModel) { connection.query(sql, async function (err, data: dataModel) {
if (data.length == 0) { if (data.length == 0) {
await res.json({ await res.json({
code: -1, code: Code.failCode,
info: "账号尚未被注册" info: Info[1]
}) })
} else { } else {
if (createHash('md5').update(password).digest('hex') == data[0].password) { if (createHash('md5').update(password).digest('hex') == data[0].password) {
@ -64,14 +66,14 @@ const login = async (req: Request, res: Response) => {
accountId: data[0].id accountId: data[0].id
}, secret.jwtSecret, { expiresIn: 3600 }) }, secret.jwtSecret, { expiresIn: 3600 })
await res.json({ await res.json({
code: 0, code: Code.successCode,
info: "登录成功", info: Info[2],
accessToken accessToken
}) })
} else { } else {
await res.json({ await res.json({
code: -1, code: Code.failCode,
info: "密码错误" info: Info[3]
}) })
} }
} }
@ -102,19 +104,19 @@ const login = async (req: Request, res: Response) => {
const register = async (req: Request, res: Response) => { const register = async (req: Request, res: Response) => {
const { username, password, verify } = req.body const { username, password, verify } = req.body
if (generateVerify !== verify) return res.json({ if (generateVerify !== verify) return res.json({
code: -1, code: Code.failCode,
info: "请输入正确的验证码" info: Info[0]
}) })
if (password.length < 6) return res.json({ if (password.length < 6) return res.json({
code: -1, code: Code.failCode,
info: "密码长度不能小于6位" info: Info[4]
}) })
let sql: string = 'select * from users where username=' + "'" + username + "'" let sql: string = 'select * from users where username=' + "'" + username + "'"
connection.query(sql, async (err, data: dataModel) => { connection.query(sql, async (err, data: dataModel) => {
if (data.length > 0) { if (data.length > 0) {
await res.json({ await res.json({
code: -1, code: Code.failCode,
info: "账号已被注册" info: Info[5]
}) })
} else { } else {
let time = await getFormatDate() let time = await getFormatDate()
@ -125,8 +127,8 @@ const register = async (req: Request, res: Response) => {
Logger.error(err) Logger.error(err)
} else { } else {
await res.json({ await res.json({
code: 0, code: Code.successCode,
info: "账号注册成功" info: Info[6]
}) })
} }
}) })
@ -175,8 +177,8 @@ const updateList = async (req: Request, res: Response) => {
Logger.error(err) Logger.error(err)
} else { } else {
await res.json({ await res.json({
code: 0, code: Code.successCode,
info: '修改成功' info: Info[7]
}) })
} }
}) })
@ -216,8 +218,8 @@ const deleteList = async (req: Request, res: Response) => {
console.log(err) console.log(err)
} else { } else {
await res.json({ await res.json({
code: 0, code: Code.successCode,
info: '删除成功' info: Info[8]
}) })
} }
}) })
@ -259,7 +261,7 @@ const searchPage = async (req: Request, res: Response) => {
Logger.error(err) Logger.error(err)
} else { } else {
await res.json({ await res.json({
code: 0, code: Code.successCode,
info: data info: data
}) })
} }
@ -296,8 +298,8 @@ const searchVague = async (req: Request, res: Response) => {
return res.status(401).end() return res.status(401).end()
} }
if (username === "" || username === null) return res.json({ if (username === "" || username === null) return res.json({
code: -1, code: Code.failCode,
info: "搜索信息不能为空" info: Info[9]
}) })
let sql: string = 'select * from users' let sql: string = 'select * from users'
sql += " WHERE username LIKE " + mysql.escape("%" + username + "%") sql += " WHERE username LIKE " + mysql.escape("%" + username + "%")
@ -307,7 +309,7 @@ const searchVague = async (req: Request, res: Response) => {
Logger.error(err) Logger.error(err)
} else { } else {
await res.json({ await res.json({
code: 0, code: Code.successCode,
info: data info: data
}) })
} }
@ -331,7 +333,7 @@ const captcha = async (req: Request, res: Response) => {
}) })
generateVerify = Number(create.text) generateVerify = Number(create.text)
res.type('svg') // 响应的类型 res.type('svg') // 响应的类型
res.json({ code: 1, info: create.text, svg: create.data }) res.json({ code: Code.successCode, info: create.text, svg: create.data })
} }
export { export {

View File

@ -0,0 +1,19 @@
// 状态码
export const enum Code {
failCode = -1,
successCode = 0
}
// 返回信息
export enum Info {
"请输入正确的验证码",
"账号尚未被注册",
"登录成功",
"密码错误",
"密码长度不能小于6位",
"账号已被注册",
"账号注册成功",
"修改成功",
"删除成功",
"搜索信息不能为空",
}

View File

@ -5,9 +5,25 @@
], ],
"jsRules": {}, "jsRules": {},
"rules": { "rules": {
"interface-name": [false], "interface-name": [
"no-console": [false], true,
"quotemark": [true, "single"] "never-prefix"
],
"no-console": [
false
],
"semicolon": [
false
],
"quotemark": [
false
],
"object-literal-sor t-keys": [
false
],
"max-classes-per-file": [
false
]
}, },
"rulesDirectory": [] "rulesDirectory": []
} }