Commit 56e4c19d by lixinming

no message

parent df22e792
......@@ -5,7 +5,7 @@
import { ADMINFIRSTDIR, ADMINLV, ADMINTYPE, MEMBERSTATE, STATE } from "../../config/enum";
import { ERRORENUM } from "../../config/errorEnum";
import { TABLEENUM } from "../../data/models/model";
import { findCount, findOnce, findToPage } from "../../data/select";
import { find, findCount, findOnce, findToPage } from "../../data/select";
import { BizError } from "../../util/bizError";
import { changeEnumValue, eccEnumValue } from "../../util/verificationEnum";
import * as sysTools from "../../tools/system";
......@@ -64,6 +64,22 @@ export async function addAdmin({userId, form}) {
return sysTools.successResult();
}
export async function initAdmin() {
let userInfo = await findOnce(TABLEENUM.用户表, {loginId:'admin'});
if (!userInfo || !userInfo.userId) {
let addInfo = {
userId:sysTools.generateUserId(),//系统生成唯一id
loginId:'admin',
pwd:'123456',
adminType:ADMINTYPE.管理员,
adminLv:[101,102,103,104,105,106,107, 201,202,203,304,205,206],
isAdmin:STATE.
};
await addOneData(TABLEENUM.用户表, addInfo);
}
console.log("初始化admin账号成功");
}
/**
* 修改密码
* @param userId 登录的用户id
......
......@@ -536,13 +536,13 @@ export enum ADMINLV {
党建工作,
分支机构,
通知公告,
内容管理,
内容管理= 107,
会员库 = 201,
审批管理,
会费管理,
发票管理,
会员管理,
管理设置
管理设置 = 206
}
/**
......
import { initAdmin } from "./biz/member/rightsMgmt";
import { initConfig, systemConfig} from "./config/serverConfig";
import { initDataBaseModel } from "./data/db/db";
import { httpServer } from "./net/http_server";
......@@ -12,6 +13,7 @@ async function lanuch() {
// await smsTask();
console.log('This indicates that the server is started successfully.');
await initAdmin();
}
lanuch();
......@@ -18,10 +18,26 @@ export async function checkUser(req, res, next) {
const reqToken = req.headers.token;
const userId = req.headers.userid || "";
if (!reqToken || !userId ) return next(new BizError(ERRORENUM.身份验证失败, `userId:${userId} token:${reqToken}`));
let userInfo = await findOnce(TABLEENUM.用户表, {userId});
if (!userInfo || !userInfo.userId) return next(new BizError(ERRORENUM.身份验证失败));
if (userInfo.token != reqToken) return next(new BizError(ERRORENUM.身份验证过期));
let checkToken = '';
//30分钟更新token
if ( (userInfo.tokenMs - new Date().valueOf()) >= (30 * 60 * 1000) ) {
return next(new BizError(ERRORENUM.身份验证过期));
} else {
checkToken = reqToken;
await updateOneData(TABLEENUM.用户表, {userId:userInfo.userId}, { tokenMs:new Date().valueOf()});
}
req.headers.userId = userId;
req.headers.userInfo = {
userId
userId,
isAdmin:userInfo.isAdmin
}
next();
}
......
......@@ -13,6 +13,7 @@ export const Config = {
"用户注册":[
{
apiName:"个人入会流程1",
notMiddleware:true,
subUrl:'/memberdb/memberregister1',
param:[
{
......@@ -171,6 +172,7 @@ export const Config = {
{
apiName:"登陆",
subUrl:'/login',
notMiddleware:true,
param:[
{key:"lolginId", type:"String", desc:"账号"},
{key:"pwd", type:"String", desc:"密码"}
......
......@@ -30,7 +30,7 @@ export async function setRouter(httpServer){
await initDoc(orderRouter.FirstName, orderRouter.Config, orderRouter.FirstRouter);//会费相关
await initDoc(costRouter.FirstName, costRouter.Config, costRouter.FirstRouter);//支付
}
await analysisRouter(httpServer, portalRouter.Config, portalRouter.FirstRouter, false);//网站编辑
await analysisRouter(httpServer, portalRouter.Config, portalRouter.FirstRouter, true);//网站编辑
await analysisRouter(httpServer, publicRouter.Config, publicRouter.FirstRouter, false);//公用组件
await analysisRouter(httpServer, memberRouter.Config, memberRouter.FirstRouter, false);//用户路由
await analysisRouter(httpServer, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter, false);//官网路由
......@@ -41,8 +41,12 @@ export async function setRouter(httpServer){
async function analysisRouter(httpServer, config, firstRouter, haveMiddleware) {
for (let modelKey in config) {
config[modelKey].forEach(info => {
let {apiName, defaultParam, subUrl, param, bindBiz} = info;
if (haveMiddleware) httpServer.post(firstRouter+subUrl, checkUser , allRouter(apiName, defaultParam, subUrl, param, bindBiz));
let {apiName, defaultParam, subUrl, param, bindBiz, notMiddleware} = info;
if (haveMiddleware) {
if (notMiddleware) {
httpServer.post(firstRouter+subUrl , allRouter(apiName, defaultParam, subUrl, param, bindBiz));
} else httpServer.post(firstRouter+subUrl, checkUser , allRouter(apiName, defaultParam, subUrl, param, bindBiz));
}
else httpServer.post(firstRouter+subUrl , allRouter(apiName, defaultParam, subUrl, param, bindBiz));
});
}
......
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