mirror of
				https://github.com/pure-admin/vue-pure-admin.git
				synced 2025-11-03 13:44:47 +08:00 
			
		
		
		
	状态码、提示消息抽离,ts校验修改
This commit is contained in:
		
							parent
							
								
									95a964f000
								
							
						
					
					
						commit
						cf475e2dc0
					
				@ -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: {},
 | 
				
			||||||
 | 
				
			|||||||
@ -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 {
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										19
									
								
								backend/src/utils/infoEnum.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								backend/src/utils/infoEnum.ts
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					// 状态码
 | 
				
			||||||
 | 
					export const enum Code {
 | 
				
			||||||
 | 
					  failCode = -1,
 | 
				
			||||||
 | 
					  successCode = 0
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// 返回信息
 | 
				
			||||||
 | 
					export enum Info {
 | 
				
			||||||
 | 
					  "请输入正确的验证码",
 | 
				
			||||||
 | 
					  "账号尚未被注册",
 | 
				
			||||||
 | 
					  "登录成功",
 | 
				
			||||||
 | 
					  "密码错误",
 | 
				
			||||||
 | 
					  "密码长度不能小于6位",
 | 
				
			||||||
 | 
					  "账号已被注册",
 | 
				
			||||||
 | 
					  "账号注册成功",
 | 
				
			||||||
 | 
					  "修改成功",
 | 
				
			||||||
 | 
					  "删除成功",
 | 
				
			||||||
 | 
					  "搜索信息不能为空",
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -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": []
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user