明树Git Lab

Commit 04e32fa9 authored by zfp1's avatar zfp1

update

parent 3a3ea0d7
const crypto = require('crypto'); const crypto = require('crypto');
const _ = require('lodash'); const _ = require('lodash');
const CryptoJS = require('crypto-js'); const CryptoJS = require('crypto-js');
const { Op } = require('sequelize');
const userModule = require('../module/userModule'); const userModule = require('../module/userModule');
...@@ -23,15 +23,15 @@ async function regist(req, res, next) { ...@@ -23,15 +23,15 @@ async function regist(req, res, next) {
async function login(req, res, next) { async function login(req, res, next) {
try { try {
if(req.body.encryptLogStr){ if (req.body.encryptLogStr) {
//避免差异 选用跟前端一样的包 //避免差异 选用跟前端一样的包
let encryptLogStr = CryptoJS.AES.decrypt(req.body.encryptLogStr, "GFG5w5AP0Ja2rNaa").toString(CryptoJS.enc.Utf8); let encryptLogStr = CryptoJS.AES.decrypt(req.body.encryptLogStr, "GFG5w5AP0Ja2rNaa").toString(CryptoJS.enc.Utf8);
let encArr = encryptLogStr.split(","); let encArr = encryptLogStr.split(",");
req.body.mobile = encArr[0].trim(); req.body.mobile = encArr[0].trim();
req.body.password = encArr[1]; req.body.password = encArr[1];
} }
const { mobile, password } = req.body; const { mobile, password } = req.body;
const user = await userModule.findOne({mobile}); const user = await userModule.findOne({ mobile });
console.log("----------------------", user) console.log("----------------------", user)
if (!user) { if (!user) {
return res.sendError(errorMessage.loginError); return res.sendError(errorMessage.loginError);
...@@ -43,7 +43,7 @@ async function login(req, res, next) { ...@@ -43,7 +43,7 @@ async function login(req, res, next) {
userPw: user.password, userPw: user.password,
}); });
if (!check) { if (!check) {
return res.sendError(errorMessage.loginError) return res.sendError(errorMessage.loginError)
} }
// 生成一个串 返回前端 // 生成一个串 返回前端
let token = crypto.randomUUID(); let token = crypto.randomUUID();
...@@ -61,7 +61,134 @@ async function login(req, res, next) { ...@@ -61,7 +61,134 @@ async function login(req, res, next) {
} }
/**
* 管理端功能
*/
async function addUser(req, res, next) {
try {
const body = req.body;
const ret = await userModule.create(body);
return res.sendData(ret);
} catch (error) {
next(error);
}
}
async function getUser(req, res, next) {
try {
let query = {};
const { id, mobile } = req.body;
if (id) {
query.id = id;
}
if (mobile) {
query.mobile = mobile;
}
const ret = await userModule.findOne(query);
return res.sendData(ret);
} catch (error) {
next(error);
}
}
async function updateUser(req, res, next) {
try {
let body = req.body;
if (!body.id) {
return res.sendError(errorMessage.resourceNotFound)
}
const ret = await userModule.updateOne({ id: body.id }, body);
return res.sendData(ret);
} catch (error) {
next(error);
}
}
async function listUser(req, res, next) {
try {
let search = { del: 0 };
let page = req.body.page || 1;
let limit = req.body.pageSize || 10;
let offset = (page - 1) * pageSize;
if(req.body.name) {
search.where = {[Op.or]: [{name: {[Op.like]: req.body.name}, mobile: {[Op.like]: req.body.name}}]}
}
search.limit = limit;
search.offset = offset;
let ret = await userModule.findAndCountAll(condition);
return res.sendData(ret);
} catch (error) {
next(error);
}
}
async function deleteUser(req, res, next) {
try {
} catch (error) {
next(error);
}
}
async function getRole(req, res, next) {
try {
} catch (error) {
next(error);
}
}
async function createRole(req, res, next) {
try {
} catch (error) {
next(error);
}
}
async function updateRole(req, res, next) {
try {
} catch (error) {
next(error);
}
}
async function deleteRole(req, res, next) {
try {
} catch (error) {
next(error);
}
}
async function listRole(req, res, next) {
try {
} catch (error) {
next(error);
}
}
module.exports = { module.exports = {
regist, regist,
login, login,
listUser,
addUser,
getUser,
updateUser,
deleteUser,
// checkUserToken,
// changePassword,
// changePwd,
getRole,
createRole,
listRole,
updateRole,
deleteRole
} }
\ No newline at end of file
...@@ -18,7 +18,7 @@ const RequestLog = sequelize.define('User', { ...@@ -18,7 +18,7 @@ const RequestLog = sequelize.define('User', {
comment:"关联查询用" comment:"关联查询用"
}, },
user: { user: {
type: DataTypes.STRING, type: DataTypes.TEXT,
comment: "记录用户姓名等可见信息" comment: "记录用户姓名等可见信息"
}, },
url: { url: {
......
...@@ -17,10 +17,15 @@ const Role = sequelize.define('Role', { ...@@ -17,10 +17,15 @@ const Role = sequelize.define('Role', {
type: DataTypes.STRING, type: DataTypes.STRING,
commnet: "角色标识", commnet: "角色标识",
}, },
enable: { // enable: {
type: DataTypes.BOOLEAN, // type: DataTypes.BOOLEAN,
defaultValue: true, // defaultValue: true,
comment: "true: 启用, false: 不启用" // comment: "true: 启用, false: 不启用"
// },
del: {
type: DataTypes.INTEGER,
defaultValue: 0,
comment: "0 正常 1 删除"
}, },
}, { }, {
tableName: 'system_role', // 指定表名(如果与模型名不同) tableName: 'system_role', // 指定表名(如果与模型名不同)
......
...@@ -10,16 +10,17 @@ const User = sequelize.define('User', { ...@@ -10,16 +10,17 @@ const User = sequelize.define('User', {
autoIncrement: true autoIncrement: true
}, },
mobile: { mobile: {
type: DataTypes.STRING(50), type: DataTypes.STRING(11),
allowNull: true allowNull: false,
unique: true,
}, },
password: { password: {
type: DataTypes.STRING(200), type: DataTypes.STRING(200),
allowNull: true allowNull: false
}, },
salt: { salt: {
type: DataTypes.STRING(100), type: DataTypes.STRING(100),
allowNull: true allowNull: false
}, },
name: { name: {
type: DataTypes.STRING(50), type: DataTypes.STRING(50),
...@@ -30,6 +31,11 @@ const User = sequelize.define('User', { ...@@ -30,6 +31,11 @@ const User = sequelize.define('User', {
defaultValue: true, defaultValue: true,
comment: "true: 启用, false: 不启用" comment: "true: 启用, false: 不启用"
}, },
del: {
type: DataTypes.INTEGER,
defaultValue: 0,
comment: "0 正常 1 删除"
},
}, { }, {
tableName: 'system_user', // 指定表名(如果与模型名不同) tableName: 'system_user', // 指定表名(如果与模型名不同)
timestamps: true, // 是否自动添加 createdAt 和 updatedAt 字段(覆盖全局设置) timestamps: true, // 是否自动添加 createdAt 和 updatedAt 字段(覆盖全局设置)
......
const _ = require("lodash"); const _ = require("lodash");
const { where } = require("sequelize");
...@@ -29,6 +30,17 @@ async function findOne(params) { ...@@ -29,6 +30,17 @@ async function findOne(params) {
); );
} }
async function updateOne(condition, params) {
if(_.isEmpty(condition)) {
return null;
}
return DB.User.update(params, {where: condition});
}
async function findAndCountAll(condition) {
return DB.User.findAndCountAll(condition);
}
...@@ -37,4 +49,6 @@ async function findOne(params) { ...@@ -37,4 +49,6 @@ async function findOne(params) {
module.exports = { module.exports = {
create, create,
findOne, findOne,
updateOne,
findAndCountAll,
} }
\ No newline at end of file
...@@ -3,9 +3,11 @@ const router = express.Router(); ...@@ -3,9 +3,11 @@ const router = express.Router();
const userRouter = require("./userRouter"); const userRouter = require("./userRouter");
// const menuRouter = require("./menuRouter");
router.use('/user', userRouter); // 用户 角色 router.use('/user', userRouter); // 用户 角色
// router.use('/menu', menuRouter); // 菜单
......
const express = require('express');
const router = express.Router();
const userController = require('../controller/userController');
router.post('/regist', userController.regist);
router.post('/login', userController.login);
\ No newline at end of file
...@@ -12,11 +12,11 @@ router.post('/login', userController.login); ...@@ -12,11 +12,11 @@ router.post('/login', userController.login);
// router.post('/checkUserToken', userController.checkUserToken); // router.post('/checkUserToken', userController.checkUserToken);
// router.post('/changePassword', userController.changePassword); // router.post('/changePassword', userController.changePassword);
// router.post('/manage/list', userController.listUser); router.post('/manage/list', userController.listUser);
// router.post('/manage/create', userController.addUser); router.post('/manage/create', userController.addUser);
// router.post('/manage/update', userController.updateUser); //更新 router.post('/manage/update', userController.updateUser); //更新
// router.post('/manage/info', userController.getUser); router.post('/manage/info', userController.getUser);
// router.post('/manage/delete', userController.deleteUser); // 删除 router.post('/manage/delete', userController.deleteUser); // 删除
// router.post('/manage/changePwd', userController.changePwd); // 删除 // router.post('/manage/changePwd', userController.changePwd); // 删除
......
...@@ -11,14 +11,6 @@ module.exports = { ...@@ -11,14 +11,6 @@ module.exports = {
code: 40003, code: 40003,
message: "名称重复" message: "名称重复"
}, },
agrMatDuplicated: {
code: 40004,
message: "入库物品种类重复,请检查!"
},
agrMatHaveFlow: {
code: 40005,
message: "入库物品种类重复,请检查!"
},
databaseQueryError: { databaseQueryError: {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment