明树Git Lab
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
J
jt_backend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zengfanpei
jt_backend
Commits
04e32fa9
Commit
04e32fa9
authored
Oct 28, 2025
by
zfp1
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
3a3ea0d7
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
182 additions
and
27 deletions
+182
-27
userController.js
controller/userController.js
+132
-5
requestLog.js
db/model/requestLog.js
+1
-1
role.js
db/model/role.js
+9
-4
user.js
db/model/user.js
+10
-4
userModule.js
module/userModule.js
+14
-0
index.js
router/index.js
+2
-0
menuRouter.js
router/menuRouter.js
+9
-0
userRouter.js
router/userRouter.js
+5
-5
errorMessage.js
utils/errorMessage.js
+0
-8
No files found.
controller/userController.js
View file @
04e32fa9
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
db/model/requestLog.js
View file @
04e32fa9
...
@@ -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
:
{
...
...
db/model/role.js
View file @
04e32fa9
...
@@ -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'
,
// 指定表名(如果与模型名不同)
...
...
db/model/user.js
View file @
04e32fa9
...
@@ -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
:
tru
e
allowNull
:
fals
e
},
},
salt
:
{
salt
:
{
type
:
DataTypes
.
STRING
(
100
),
type
:
DataTypes
.
STRING
(
100
),
allowNull
:
tru
e
allowNull
:
fals
e
},
},
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 字段(覆盖全局设置)
...
...
module/userModule.js
View file @
04e32fa9
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
router/index.js
View file @
04e32fa9
...
@@ -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); // 菜单
...
...
router/menuRouter.js
0 → 100644
View file @
04e32fa9
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
router/userRouter.js
View file @
04e32fa9
...
@@ -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); // 删除
...
...
utils/errorMessage.js
View file @
04e32fa9
...
@@ -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
:
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment