Commit 989ff822 by lixinming

优化请求参数校验

parent f527f0f8
...@@ -149,3 +149,51 @@ export enum FINANCINGROUNDS { ...@@ -149,3 +149,51 @@ export enum FINANCINGROUNDS {
C, C,
C轮以上, C轮以上,
} }
/**
* 孵化状态
*/
export enum FUHUASTATE {
实体孵化 = 1,
虚拟孵化,
迁出
}
/**
* 虚拟孵化原因
*/
export enum VIRTUALCAUSE{
政策服务 = 1,
融资服务,
研发服务,
市场对接,
技术对接,
其他,
}
/**
* 迁出类型
*/
export enum MOVEOUTTYPE{
企业注销 = 1,
迁出孵化器_仍在张江,
迁出张江_仍在浦东,
迁出浦东_仍在上海,
迁出上海,
}
/**
* 迁出原因
*/
export enum MOVEOUTCAUSE{
政策不给力 = 1,
人才需求不足,
经营成本过高_场地成本或人员成本_,
办公空间拓展_无合适办公空间_,
产业环境不足,
其他
}
/**
* 评分表
* 用于存储评分规则
*
*/
import {Schema} from 'mongoose';
import { baseDB } from '../../db/mongo/dbInit';
const gradeSchema = new Schema({
});
var gradeModel;
export function initModel(){
gradeModel = baseDB.model('grade', gradeSchema);
gradeModel.selectOnceData = async function (paramater:object) {
let selectInfo = await gradeModel.findOne(paramater).exec();
if (selectInfo) {
if (!selectInfo.runSave) {
selectInfo.runSave = selectInfo.save;
selectInfo.save = save.bind(selectInfo)
}
}
return selectInfo;
}
}
export async function save(throwError=false) {
if (!this.isModified()) return;
await this.runSave({validateBeforeSave:false}).catch(err=>{
console.log(err);
});
}
\ No newline at end of file
...@@ -9,7 +9,7 @@ import * as enterpriseBiz from '../../biz/enterprise/enterprise'; ...@@ -9,7 +9,7 @@ import * as enterpriseBiz from '../../biz/enterprise/enterprise';
import * as financingBiz from '../../biz/enterprise/financing'; import * as financingBiz from '../../biz/enterprise/financing';
import { getTimeKey } from '../../tools/system'; import { getTimeKey } from '../../tools/system';
import { checkGuanWeiHuiToken } from '../../middleware/user'; import { checkGuanWeiHuiToken } from '../../middleware/user';
import { eccReqNotMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
export function setRouter(httpServer) { export function setRouter(httpServer) {
...@@ -28,7 +28,8 @@ export function setRouter(httpServer) { ...@@ -28,7 +28,8 @@ export function setRouter(httpServer) {
*/ */
async function getEnterpriseList(req, res) { async function getEnterpriseList(req, res) {
let reqConf = {createType: 'Number', fuHuaQiUscc: 'String', industry: '[Number]', isNaturalPersonHolding: 'Number', page: 'Number' }; let reqConf = {createType: 'Number', fuHuaQiUscc: 'String', industry: '[Number]', isNaturalPersonHolding: 'Number', page: 'Number' };
let { createType, fuHuaQiUscc, industry, isNaturalPersonHolding, page } = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["createType", "fuHuaQiUscc", "industry", "isNaturalPersonHolding" ];
let { createType, fuHuaQiUscc, industry, isNaturalPersonHolding, page } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let result = await enterpriseBiz.enterpriseList(createType, fuHuaQiUscc, industry, isNaturalPersonHolding, page); let result = await enterpriseBiz.enterpriseList(createType, fuHuaQiUscc, industry, isNaturalPersonHolding, page);
res.success(result); res.success(result);
...@@ -42,7 +43,8 @@ async function getEnterpriseList(req, res) { ...@@ -42,7 +43,8 @@ async function getEnterpriseList(req, res) {
*/ */
async function getFinancingList(req, res) { async function getFinancingList(req, res) {
let reqConf = {monthData: 'String', fuHuaQiName: 'String', fuHuaQiInvestment: 'Number', industry: '[Number]', page: 'Number' }; let reqConf = {monthData: 'String', fuHuaQiName: 'String', fuHuaQiInvestment: 'Number', industry: '[Number]', page: 'Number' };
let {monthData, fuHuaQiName, industry, fuHuaQiInvestment, page} = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["monthData", "fuHuaQiName", "fuHuaQiInvestment", "industry" ];
let {monthData, fuHuaQiName, industry, fuHuaQiInvestment, page} = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let result = await financingBiz.financingList(monthData, fuHuaQiName, industry, fuHuaQiInvestment, page); let result = await financingBiz.financingList(monthData, fuHuaQiName, industry, fuHuaQiInvestment, page);
res.success(result); res.success(result);
...@@ -68,7 +70,9 @@ async function affiliationFuHuaQi(req, res) { ...@@ -68,7 +70,9 @@ async function affiliationFuHuaQi(req, res) {
*/ */
async function outPutEnterpriseData(req, res) { async function outPutEnterpriseData(req, res) {
let reqConf = {createType: 'Number', fuHuaQiUscc: 'String', industry: '[Number]', isNaturalPersonHolding: 'Number', type:'Number' }; let reqConf = {createType: 'Number', fuHuaQiUscc: 'String', industry: '[Number]', isNaturalPersonHolding: 'Number', type:'Number' };
let { createType, fuHuaQiUscc, industry, isNaturalPersonHolding, type } = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["createType", "fuHuaQiUscc", "industry", "isNaturalPersonHolding" ];
let { createType, fuHuaQiUscc, industry, isNaturalPersonHolding, type } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let dataList = await enterpriseBiz.outPutEnterpriseData(createType, fuHuaQiUscc, industry, isNaturalPersonHolding, type); let dataList = await enterpriseBiz.outPutEnterpriseData(createType, fuHuaQiUscc, industry, isNaturalPersonHolding, type);
...@@ -85,7 +89,8 @@ async function outPutEnterpriseData(req, res) { ...@@ -85,7 +89,8 @@ async function outPutEnterpriseData(req, res) {
*/ */
async function outPutFinancingData(req, res) { async function outPutFinancingData(req, res) {
let reqConf = {monthData: 'String', fuHuaQiName: 'String', fuHuaQiInvestment: 'Number', industry: '[Number]', type:'Number' }; let reqConf = {monthData: 'String', fuHuaQiName: 'String', fuHuaQiInvestment: 'Number', industry: '[Number]', type:'Number' };
let {monthData, fuHuaQiName, industry, fuHuaQiInvestment, type} = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["monthData", "fuHuaQiName", "fuHuaQiInvestment", "industry" ];
let {monthData, fuHuaQiName, industry, fuHuaQiInvestment, type} = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let dataList = await financingBiz.outPutFinancingList(monthData, fuHuaQiName, industry, fuHuaQiInvestment, type); let dataList = await financingBiz.outPutFinancingList(monthData, fuHuaQiName, industry, fuHuaQiInvestment, type);
......
...@@ -9,7 +9,7 @@ import { getTimeKey } from '../../tools/system'; ...@@ -9,7 +9,7 @@ import { getTimeKey } from '../../tools/system';
import { monthTableList } from '../../biz/fuHuqQi/month'; import { monthTableList } from '../../biz/fuHuqQi/month';
import { checkGuanWeiHuiToken } from '../../middleware/user'; import { checkGuanWeiHuiToken } from '../../middleware/user';
import * as monthBiz from '../../biz/fuHuqQi/month'; import * as monthBiz from '../../biz/fuHuqQi/month';
import { eccReqNotMustHaveParam, eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
export function setRouter(httpServer) { export function setRouter(httpServer) {
...@@ -37,7 +37,8 @@ async function fuHuaQiBaseList(req, res) { ...@@ -37,7 +37,8 @@ async function fuHuaQiBaseList(req, res) {
industry: 'Number', industry: 'Number',
page: 'Number' page: 'Number'
}; };
let {lv, institutionalNature, industry, operationModel, foundingTeam, page} = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["lv", "institutionalNature", "operationModel", "foundingTeam" , "industry"];
let {lv, institutionalNature, industry, operationModel, foundingTeam, page} = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let result = await baseBiz.fuHuaQiBaseList(lv, institutionalNature, industry, operationModel, foundingTeam, page); let result = await baseBiz.fuHuaQiBaseList(lv, institutionalNature, industry, operationModel, foundingTeam, page);
...@@ -52,7 +53,8 @@ async function fuHuaQiBaseList(req, res) { ...@@ -52,7 +53,8 @@ async function fuHuaQiBaseList(req, res) {
*/ */
async function getMonthList(req, res) { async function getMonthList(req, res) {
let reqConf = {state: 'Number', year: 'Number', month: 'Number', page: 'Number'}; let reqConf = {state: 'Number', year: 'Number', month: 'Number', page: 'Number'};
let { state, year, month, page } = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["state", "year", "month"];
let { state, year, month, page } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let result = await monthTableList(state, year, month, page); let result = await monthTableList(state, year, month, page);
res.success(result); res.success(result);
...@@ -66,7 +68,8 @@ async function getMonthList(req, res) { ...@@ -66,7 +68,8 @@ async function getMonthList(req, res) {
*/ */
async function getFuHuaQiUserList(req, res) { async function getFuHuaQiUserList(req, res) {
let reqConf = {operationName: 'String', page: 'Number' }; let reqConf = {operationName: 'String', page: 'Number' };
let { operationName, page } = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["operationName" ];
let { operationName, page } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let result = await userBiz.fuHuaQiUserList(operationName, page); let result = await userBiz.fuHuaQiUserList(operationName, page);
res.success(result); res.success(result);
...@@ -80,7 +83,7 @@ async function getMonthList(req, res) { ...@@ -80,7 +83,7 @@ async function getMonthList(req, res) {
*/ */
async function updateState(req, res) { async function updateState(req, res) {
let reqConf = {userState: 'Boolean', uscc: 'String' }; let reqConf = {userState: 'Boolean', uscc: 'String' };
let { userState, uscc } = eccReqMustHaveParam(reqConf, req.body); let { userState, uscc } = eccReqParamater(reqConf, req.body);
let result = await userBiz.updateState(uscc, userState); let result = await userBiz.updateState(uscc, userState);
res.success(result); res.success(result);
...@@ -94,7 +97,7 @@ async function getMonthList(req, res) { ...@@ -94,7 +97,7 @@ async function getMonthList(req, res) {
*/ */
async function addUser(req, res) { async function addUser(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
let result = await userBiz.addUser(form); let result = await userBiz.addUser(form);
res.success(result); res.success(result);
...@@ -104,7 +107,8 @@ async function addUser(req, res) { ...@@ -104,7 +107,8 @@ async function addUser(req, res) {
async function outPutFuHuaQiData(req, res) { async function outPutFuHuaQiData(req, res) {
let reqConf = { lv: 'Number', institutionalNature: 'Number', industry: 'Number', type:'Number', operationModel:"Number", foundingTeam:"Number" }; let reqConf = { lv: 'Number', institutionalNature: 'Number', industry: 'Number', type:'Number', operationModel:"Number", foundingTeam:"Number" };
let { lv, institutionalNature, industry, type, operationModel, foundingTeam } = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["lv", "institutionalNature", "industry", "operationModel", "foundingTeam"];
let { lv, institutionalNature, industry, type, operationModel, foundingTeam } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let dataList = await baseBiz.outPutFuHuaQiBaseData(lv, institutionalNature, industry, operationModel, foundingTeam, type); let dataList = await baseBiz.outPutFuHuaQiBaseData(lv, institutionalNature, industry, operationModel, foundingTeam, type);
...@@ -118,7 +122,8 @@ async function outPutFuHuaQiData(req, res) { ...@@ -118,7 +122,8 @@ async function outPutFuHuaQiData(req, res) {
async function outPutMonthData(req, res) { async function outPutMonthData(req, res) {
let reqConf = {state: 'Number', year: 'Number', month: 'Number', type:'Number'}; let reqConf = {state: 'Number', year: 'Number', month: 'Number', type:'Number'};
let { state, year, month, type } = eccReqNotMustHaveParam(reqConf, req.body); const NotMustHaveKeys = ["state", "year", "month"];
let { state, year, month, type } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
let dataList = await monthBiz.outPutMonthTableList(state, year, month, type); let dataList = await monthBiz.outPutMonthTableList(state, year, month, type);
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
import * as guanWeiHuiBiz from '../../biz/guanWeiHui/user'; import * as guanWeiHuiBiz from '../../biz/guanWeiHui/user';
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import { eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
export function setRouter(httpServer) { export function setRouter(httpServer) {
httpServer.post('/admin/login', asyncHandler(login)); httpServer.post('/admin/login', asyncHandler(login));
...@@ -18,7 +18,7 @@ export function setRouter(httpServer) { ...@@ -18,7 +18,7 @@ export function setRouter(httpServer) {
*/ */
async function login(req, res) { async function login(req, res) {
let reqConf = {loginId:'String', pwd:'String'}; let reqConf = {loginId:'String', pwd:'String'};
let {loginId, pwd} = eccReqMustHaveParam(reqConf, req.body); let {loginId, pwd} = eccReqParamater(reqConf, req.body);
let userInfo = await guanWeiHuiBiz.login(loginId, pwd); let userInfo = await guanWeiHuiBiz.login(loginId, pwd);
res.success(userInfo); res.success(userInfo);
......
...@@ -5,26 +5,32 @@ ...@@ -5,26 +5,32 @@
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import * as enterpriseBiz from '../../biz/enterprise/enterprise'; import * as enterpriseBiz from '../../biz/enterprise/enterprise';
import { checkFuHuaQiToken } from '../../middleware/user'; import { checkFuHuaQiToken } from '../../middleware/user';
import { eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
export function setRouter(httpServer) { export function setRouter(httpServer) {
/**新注册企业 或 新迁入企业 */
httpServer.post('/fuhuaqi/enterprise/register', checkFuHuaQiToken, asyncHandler(registerEnterprise)); httpServer.post('/fuhuaqi/enterprise/register', checkFuHuaQiToken, asyncHandler(registerEnterprise));
httpServer.post('/fuhuaqi/enterprise/updateregister', checkFuHuaQiToken, asyncHandler(updateRegisterEnterprise)); httpServer.post('/fuhuaqi/enterprise/updateregister', checkFuHuaQiToken, asyncHandler(updateRegisterEnterprise));
httpServer.post('/fuhuaqi/enterprise/move', checkFuHuaQiToken, asyncHandler(moveInEnterprise)); httpServer.post('/fuhuaqi/enterprise/move', checkFuHuaQiToken, asyncHandler(moveInEnterprise));
httpServer.post('/fuhuaqi/enterprise/updatemove', checkFuHuaQiToken, asyncHandler(updateMoveInEnterprise)); httpServer.post('/fuhuaqi/enterprise/updatemove', checkFuHuaQiToken, asyncHandler(updateMoveInEnterprise));
httpServer.post('/fuhuaqi/enterprise/select', checkFuHuaQiToken, asyncHandler(selectEnterpriseInfo)); httpServer.post('/fuhuaqi/enterprise/select', checkFuHuaQiToken, asyncHandler(selectEnterpriseInfo));
httpServer.post('/fuhuaqi/enterprise/delete', checkFuHuaQiToken, asyncHandler(delEnterpriseInfo)); httpServer.post('/fuhuaqi/enterprise/delete', checkFuHuaQiToken, asyncHandler(delEnterpriseInfo));
/**我的企业 */
httpServer.post('/fuhuaqi/myenterprise/list', checkFuHuaQiToken, asyncHandler(myEnterpriseList));//todo 新加
httpServer.post('/fuhuaqi/myenterprise/info', checkFuHuaQiToken, asyncHandler(myEnterpriseInfo));//todo 新加
httpServer.post('/fuhuaqi/myenterprise/info', checkFuHuaQiToken, asyncHandler(myEnterpriseInfo));//todo 新加
} }
/** /**
* 添加新注册的企业信息 * 添加新注册的企业信息
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function registerEnterprise(req, res) { async function registerEnterprise(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await enterpriseBiz.registerEnterprise(Uscc, form); let result = await enterpriseBiz.registerEnterprise(Uscc, form);
...@@ -34,12 +40,13 @@ async function registerEnterprise(req, res) { ...@@ -34,12 +40,13 @@ async function registerEnterprise(req, res) {
/** /**
* 修改新注册的企业信息 * 修改新注册的企业信息
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function updateRegisterEnterprise(req, res) { async function updateRegisterEnterprise(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await enterpriseBiz.updateRegisterEnterprise(Uscc, form); let result = await enterpriseBiz.updateRegisterEnterprise(Uscc, form);
...@@ -49,12 +56,13 @@ async function updateRegisterEnterprise(req, res) { ...@@ -49,12 +56,13 @@ async function updateRegisterEnterprise(req, res) {
/** /**
* 添加迁入的企业信息 * 添加迁入的企业信息
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function moveInEnterprise(req, res) { async function moveInEnterprise(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await enterpriseBiz.moveInEnterprise(Uscc, form); let result = await enterpriseBiz.moveInEnterprise(Uscc, form);
...@@ -64,12 +72,13 @@ async function updateRegisterEnterprise(req, res) { ...@@ -64,12 +72,13 @@ async function updateRegisterEnterprise(req, res) {
/** /**
* 修改迁入企业登记信息 * 修改迁入企业登记信息
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function updateMoveInEnterprise(req, res) { async function updateMoveInEnterprise(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await enterpriseBiz.updateMoveInEnterprise(Uscc, form); let result = await enterpriseBiz.updateMoveInEnterprise(Uscc, form);
...@@ -79,6 +88,7 @@ async function updateMoveInEnterprise(req, res) { ...@@ -79,6 +88,7 @@ async function updateMoveInEnterprise(req, res) {
/** /**
* 查询迁入企业登记信息或新建企业登录信息 * 查询迁入企业登记信息或新建企业登录信息
* 1.0
* 回显 * 回显
* @param req * @param req
* @param res * @param res
...@@ -86,7 +96,7 @@ async function updateMoveInEnterprise(req, res) { ...@@ -86,7 +96,7 @@ async function updateMoveInEnterprise(req, res) {
async function selectEnterpriseInfo(req, res) { async function selectEnterpriseInfo(req, res) {
/*这里改成了用DraftId,为了不改前端 依然使用uscc这个参数名称*/ /*这里改成了用DraftId,为了不改前端 依然使用uscc这个参数名称*/
let reqConf = {uscc: 'String' }; let reqConf = {uscc: 'String' };
let { uscc } = eccReqMustHaveParam(reqConf, req.body); let { uscc } = eccReqParamater(reqConf, req.body);
let result = await enterpriseBiz.getEnterpriseByDraftId(uscc); let result = await enterpriseBiz.getEnterpriseByDraftId(uscc);
res.success(result); res.success(result);
...@@ -94,15 +104,38 @@ async function updateMoveInEnterprise(req, res) { ...@@ -94,15 +104,38 @@ async function updateMoveInEnterprise(req, res) {
/** /**
* 删除迁入企业登记信息或新建企业登录信息 * 删除迁入企业登记信息或新建企业登录信息
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function delEnterpriseInfo(req, res) { async function delEnterpriseInfo(req, res) {
/*这里改成了用DraftId,为了不改前端 依然使用uscc这个参数名称*/ /*这里改成了用DraftId,为了不改前端 依然使用uscc这个参数名称*/
let reqConf = {uscc: 'String' }; let reqConf = {uscc: 'String' };
let { uscc } = eccReqMustHaveParam(reqConf, req.body); let { uscc } = eccReqParamater(reqConf, req.body);
let result = await enterpriseBiz.deleteEnterpriseByDraftId(uscc); let result = await enterpriseBiz.deleteEnterpriseByDraftId(uscc);
res.success(result); res.success(result);
}
/**
* 我的企业列表
* 2.0
* @param req
* @param res
*/
async function myEnterpriseList(req, res) {
}
/**
* 企业基本信息 我的企业列表中按钮点开
* 2.0
* @param req
* @param res
*/
async function myEnterpriseInfo(req, res) {
} }
\ No newline at end of file
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import * as financingBiz from '../../biz/enterprise/financing'; import * as financingBiz from '../../biz/enterprise/financing';
import { checkFuHuaQiToken } from '../../middleware/user'; import { checkFuHuaQiToken } from '../../middleware/user';
import { eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
export function setRouter(httpServer) { export function setRouter(httpServer) {
httpServer.post('/fuhuaqi/financing/create', checkFuHuaQiToken, asyncHandler(createFinancingInfo)); httpServer.post('/fuhuaqi/financing/create', checkFuHuaQiToken, asyncHandler(createFinancingInfo));
...@@ -23,7 +23,7 @@ export function setRouter(httpServer) { ...@@ -23,7 +23,7 @@ export function setRouter(httpServer) {
*/ */
async function createFinancingInfo(req, res) { async function createFinancingInfo(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await financingBiz.createFinancingInfo(Uscc, form); let result = await financingBiz.createFinancingInfo(Uscc, form);
...@@ -38,7 +38,7 @@ async function createFinancingInfo(req, res) { ...@@ -38,7 +38,7 @@ async function createFinancingInfo(req, res) {
*/ */
async function updateFinancingInfo(req, res) { async function updateFinancingInfo(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await financingBiz.updateFinancingInfo(Uscc, form); let result = await financingBiz.updateFinancingInfo(Uscc, form);
...@@ -54,7 +54,7 @@ async function createFinancingInfo(req, res) { ...@@ -54,7 +54,7 @@ async function createFinancingInfo(req, res) {
*/ */
async function selectEnterpriseFinancingInfo(req, res) { async function selectEnterpriseFinancingInfo(req, res) {
let reqConf = {uscc: 'String' }; let reqConf = {uscc: 'String' };
let { uscc } = eccReqMustHaveParam(reqConf, req.body); let { uscc } = eccReqParamater(reqConf, req.body);
const FHQUscc = req.headers.uscc; const FHQUscc = req.headers.uscc;
let result = await financingBiz.getEnterpriseFinancingByUscc(FHQUscc, uscc); let result = await financingBiz.getEnterpriseFinancingByUscc(FHQUscc, uscc);
...@@ -69,7 +69,7 @@ async function selectEnterpriseFinancingInfo(req, res) { ...@@ -69,7 +69,7 @@ async function selectEnterpriseFinancingInfo(req, res) {
*/ */
async function delEnterpriseFinancingInfo(req, res) { async function delEnterpriseFinancingInfo(req, res) {
let reqConf = {uscc: 'String' }; let reqConf = {uscc: 'String' };
let { uscc } = eccReqMustHaveParam(reqConf, req.body); let { uscc } = eccReqParamater(reqConf, req.body);
const FHQUscc = req.headers.uscc; const FHQUscc = req.headers.uscc;
let result = await financingBiz.deleteEnterpriseFinancingByUscc(FHQUscc, uscc); let result = await financingBiz.deleteEnterpriseFinancingByUscc(FHQUscc, uscc);
......
...@@ -7,24 +7,30 @@ ...@@ -7,24 +7,30 @@
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import * as baseBiz from '../../biz/fuHuqQi/base'; import * as baseBiz from '../../biz/fuHuqQi/base';
import * as taskBiz from '../../biz/fuHuqQi/task'; import * as taskBiz from '../../biz/fuHuqQi/task';
import { eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
import { checkFuHuaQiToken } from '../../middleware/user'; import { checkFuHuaQiToken } from '../../middleware/user';
export function setRouter(httpServer) { export function setRouter(httpServer) {
httpServer.post('/fuhuaqi/base', checkFuHuaQiToken, asyncHandler(baseInfo)); httpServer.post('/fuhuaqi/base', checkFuHuaQiToken, asyncHandler(baseInfo));
httpServer.post('/fuhuaqi/mydata', checkFuHuaQiToken, asyncHandler(myDataInfo)); /**我的数据 */
httpServer.post('/fuhuaqi/mydata', checkFuHuaQiToken, asyncHandler(myDataInfo));//todo 后续这里的路由要改成 /fuhuaqi/base/mydata 改了要通知前端更改
httpServer.post('/fuhuaqi/base/update', checkFuHuaQiToken, asyncHandler(updateMyDataInfo)); httpServer.post('/fuhuaqi/base/update', checkFuHuaQiToken, asyncHandler(updateMyDataInfo));
/**机构信息(我的信息) */
httpServer.post('/fuhuaqi/organization/info', checkFuHuaQiToken, asyncHandler(organizationInfo)); httpServer.post('/fuhuaqi/organization/info', checkFuHuaQiToken, asyncHandler(organizationInfo));
httpServer.post('/fuhuaqi/organization/update', checkFuHuaQiToken, asyncHandler(updateOrganizationInfo)); httpServer.post('/fuhuaqi/organization/update', checkFuHuaQiToken, asyncHandler(updateOrganizationInfo));
/** 任务 */ /** 任务 */
httpServer.post('/fuhuaqi/task/list', checkFuHuaQiToken, asyncHandler(taskList)); httpServer.post('/fuhuaqi/task/list', checkFuHuaQiToken, asyncHandler(taskList));//待办任务
httpServer.post('/fuhuaqi/task/submit', checkFuHuaQiToken, asyncHandler(submitTask)); httpServer.post('/fuhuaqi/task/submit', checkFuHuaQiToken, asyncHandler(submitTask));//提交待办任务
httpServer.post('/fuhuaqi/task/completedlist', checkFuHuaQiToken, asyncHandler(completedList));//todo 已办任务
httpServer.post('/fuhuaqi/task/pastduelist', checkFuHuaQiToken, asyncHandler(pastDueList));//todo 已办任务
} }
/** /**
* 主界面信息 * 主界面信息
* 包括首页的 我的数据 评分明细 * 首页的几个孵化器数据和评分明细
* 登录进来会调用
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
...@@ -37,7 +43,8 @@ async function baseInfo(req, res) { ...@@ -37,7 +43,8 @@ async function baseInfo(req, res) {
/** /**
* 我的数据 * 我的数据
* 小程序点击 详细数据 * 小程序点击 我的数据
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
...@@ -50,12 +57,13 @@ async function myDataInfo(req, res) { ...@@ -50,12 +57,13 @@ async function myDataInfo(req, res) {
/** /**
* 更新基础数据 * 更新基础数据
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function updateMyDataInfo(req, res) { async function updateMyDataInfo(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await baseBiz.updateFuHuaQiBaseData(Uscc, form); let result = await baseBiz.updateFuHuaQiBaseData(Uscc, form);
...@@ -64,7 +72,11 @@ async function updateMyDataInfo(req, res) { ...@@ -64,7 +72,11 @@ async function updateMyDataInfo(req, res) {
/** /**
* 机构信息 * 机构信息
* 改成了我的信息(2.23日修改)
* 1.0
* @param req
* @param res
*/ */
async function organizationInfo(req, res) { async function organizationInfo(req, res) {
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
...@@ -75,10 +87,13 @@ async function organizationInfo(req, res) { ...@@ -75,10 +87,13 @@ async function organizationInfo(req, res) {
/** /**
* 修改机构信息 * 修改机构信息
* 1.0
* @param req
* @param res
*/ */
async function updateOrganizationInfo(req, res) { async function updateOrganizationInfo(req, res) {
let reqConf = {form: 'Object' }; let reqConf = {form: 'Object' };
let { form } = eccReqMustHaveParam(reqConf, req.body); let { form } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await baseBiz.updateOrganizationData(Uscc, form); let result = await baseBiz.updateOrganizationData(Uscc, form);
...@@ -88,6 +103,7 @@ async function updateOrganizationInfo(req, res) { ...@@ -88,6 +103,7 @@ async function updateOrganizationInfo(req, res) {
/** /**
* 任务列表 * 任务列表
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
...@@ -100,14 +116,47 @@ async function taskList(req, res) { ...@@ -100,14 +116,47 @@ async function taskList(req, res) {
/** /**
* 提交任务 * 提交任务
* 1.0
* @param req * @param req
* @param res * @param res
*/ */
async function submitTask(req, res) { async function submitTask(req, res) {
let reqConf = {taskType:'Number'}; let reqConf = {taskType:'Number'};
let { taskType } = eccReqMustHaveParam(reqConf, req.body); let { taskType } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let result = await taskBiz.checkTask(Uscc, taskType); let result = await taskBiz.checkTask(Uscc, taskType);
res.success(result); res.success(result);
}
/**
* 已办任务
* 2.0
* @param req
* @param res
*/
async function completedList(req, res) {
let reqConf = {selectTime:'Number'};
const NotMustHaveKeys = ["selectTime"];
let { selectTime } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
const Uscc = req.headers.uscc;
res.success({});
}
/**
* 过期任务
* 2.0
* @param req
* @param res
*/
async function pastDueList(req, res) {
let reqConf = {taskType:'Number'};
const NotMustHaveKeys = ["selectTime"];
let { selectTime } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
const Uscc = req.headers.uscc;
res.success({});
} }
\ No newline at end of file
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import * as monthBiz from '../../biz/fuHuqQi/month'; import * as monthBiz from '../../biz/fuHuqQi/month';
import { eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
import { checkFuHuaQiToken } from '../../middleware/user'; import { checkFuHuaQiToken } from '../../middleware/user';
export function setRouter(httpServer) { export function setRouter(httpServer) {
...@@ -22,7 +22,7 @@ export function setRouter(httpServer) { ...@@ -22,7 +22,7 @@ export function setRouter(httpServer) {
*/ */
async function addReport(req, res) { async function addReport(req, res) {
let reqConf = {occupancyRate: 'Number' }; let reqConf = {occupancyRate: 'Number' };
let { occupancyRate } = eccReqMustHaveParam(reqConf, req.body); let { occupancyRate } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let monthInfo = monthBiz.createReport(Uscc, occupancyRate); let monthInfo = monthBiz.createReport(Uscc, occupancyRate);
...@@ -63,7 +63,7 @@ async function deleteReport(req, res) { ...@@ -63,7 +63,7 @@ async function deleteReport(req, res) {
*/ */
async function updateReport(req, res) { async function updateReport(req, res) {
let reqConf = {occupancyRate: 'Number' }; let reqConf = {occupancyRate: 'Number' };
let { occupancyRate } = eccReqMustHaveParam(reqConf, req.body); let { occupancyRate } = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
let monthInfo = monthBiz.updateReport(Uscc, occupancyRate); let monthInfo = monthBiz.updateReport(Uscc, occupancyRate);
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import * as userBiz from '../../biz/fuHuqQi/user'; import * as userBiz from '../../biz/fuHuqQi/user';
import { eccReqMustHaveParam } from '../../util/verificationParam'; import { eccReqParamater } from '../../util/verificationParam';
import { checkFuHuaQiToken } from '../../middleware/user'; import { checkFuHuaQiToken } from '../../middleware/user';
export function setRouter(httpServer) { export function setRouter(httpServer) {
...@@ -21,7 +21,7 @@ export function setRouter(httpServer) { ...@@ -21,7 +21,7 @@ export function setRouter(httpServer) {
*/ */
async function login(req, res) { async function login(req, res) {
let reqConf = {uscc:'String', pwd:'String'}; let reqConf = {uscc:'String', pwd:'String'};
let {uscc, pwd} = eccReqMustHaveParam(reqConf, req.body); let {uscc, pwd} = eccReqParamater(reqConf, req.body);
let result = await userBiz.login(uscc, pwd); let result = await userBiz.login(uscc, pwd);
...@@ -48,7 +48,7 @@ async function logout(req, res) { ...@@ -48,7 +48,7 @@ async function logout(req, res) {
*/ */
async function firstUpdatePwd(req, res) { async function firstUpdatePwd(req, res) {
let reqConf = {confirmPwd:'String', pwd:'String', }; let reqConf = {confirmPwd:'String', pwd:'String', };
let {confirmPwd, pwd} = eccReqMustHaveParam(reqConf, req.body); let {confirmPwd, pwd} = eccReqParamater(reqConf, req.body);
const Uscc = req.headers.uscc; const Uscc = req.headers.uscc;
......
...@@ -78,96 +78,65 @@ export function eccFormParam(name:string, keyTypeConf:object, param:object) { ...@@ -78,96 +78,65 @@ export function eccFormParam(name:string, keyTypeConf:object, param:object) {
/** /**
* 根据conf配置校验请求参数 * 根据conf配置校验请求参数
* 参数为必填
* @param conf 配置 * @param conf 配置
* @param param 待校验对象 * @param param 表单
* @returns 原有表单数据 * @param skipKeys []不必填的字段
*/ */
export function eccReqMustHaveParam(conf:object, param) { export function eccReqParamater(conf:object, param, skipKeys?) {
for (let key in conf ) { skipKeys = skipKeys || [];
if ( typeof param[key] != 'boolean' && !param[key] ) throw new BizError(ERRORENUM.参数错误, `缺失${key}字段`); for (let key in conf) {
let type = typeof param[key]; let type = conf[key];
switch(conf[key]) { let value = param[type];
case 'Number':
if ( type != 'number' ) throw new BizError(ERRORENUM.参数错误, `${key}应是number型 而不是${type}`);
break;
case 'String':
if ( type != 'string' ) throw new BizError(ERRORENUM.参数错误, `${key}应是string型 而不是${type}`);
break;
case 'Boolean':
if ( type != 'boolean' ) throw new BizError(ERRORENUM.参数错误, `${key}应是boolean型 而不是${type}`);
break;
case '[Number]':
if ( !Array.isArray(param[key]) ) throw new BizError(ERRORENUM.参数错误, `${key}应是数组型 而不是${type}`);
for (let i =0; i < param[key].length; i++) {
let item = param[key][i];
if ( typeof item != 'number' ) {
throw new BizError(ERRORENUM.参数错误, `${key}应是number型数组其中下标${i}${typeof item}`);
}
}
break;
case 'Object':
if ( type != 'object' ) throw new BizError(ERRORENUM.参数错误, `${key}应是Object型 而不是${type}`);
if ( Array.isArray(param[key]) ) throw new BizError(ERRORENUM.参数错误, `${key}应是Object型 而不是array`);
try {
JSON.stringify(param[key]);
} catch(err) {
throw new BizError(ERRORENUM.参数错误, `${key}应是Object型 转换JSON时失败`);
}
break;
}
}
for (let key in param) {
if (!conf[key]) throw new BizError(ERRORENUM.表单校验失败, `多余${key}字段`);
}
return param;
}
/** let isError = false; //校验是否异常
* 校验请求参数 let errorStr = "";//异常说明
* 参数为非必填
* @param conf 配置 if ( (typeof value != 'boolean') && !value ) {
* @param param 待校验对象 if (skipKeys.indexOf(key) < 0 ) {
* @returns 原有表单数据 isError = true;
*/ errorStr = `缺少 ${key} 字段`;
export function eccReqNotMustHaveParam(conf, param) { }
for (let key in conf ) { } else if(param[key]) {
if (!param[key]) continue; let paramType = typeof param[key];
let type = typeof param[key]; switch(conf[key]) {
switch(conf[key]) { case 'Number':
case 'Number': if ( paramType != 'number' ) isError = true;
if ( type != 'number' ) throw new BizError(ERRORENUM.参数错误, `${key}应是number型 而不是${type}`); break;
break; case 'String':
case 'String': if ( paramType != 'string' ) isError = true;
if ( type != 'string' ) throw new BizError(ERRORENUM.参数错误, `${key}应是string型 而不是${type}`); break;
break; case 'Boolean':
case 'Boolean': if ( paramType != 'boolean' ) isError = true;
if ( type != 'boolean' ) throw new BizError(ERRORENUM.参数错误, `${key}应是boolean型 而不是${type}`); break;
break; case '[Number]':
case '[Number]': if ( !Array.isArray(param[key]) ) isError = true;
if ( !Array.isArray(param[key]) ) throw new BizError(ERRORENUM.参数错误, `${key}应是数组型 而不是${type}`); for (let i =0; i < param[key].length; i++) {
for (let i =0; i < param[key].length; i++) { let item = param[key][i];
let item = param[key][i]; if ( typeof item != 'number' ) {
if ( typeof item != 'number' ) { isError = true;
throw new BizError(ERRORENUM.参数错误, `${key}应是number型数组其中下标${i}${typeof item}`); errorStr = `${key}应是number型数组其中下标${i}${typeof item}`;
}
} }
} break;
break; case '[Object]':
case 'Object': if ( !Array.isArray(param[key]) ) isError = true;
if ( type != 'object' ) throw new BizError(ERRORENUM.参数错误, `${key}应是Object型 而不是${type}`); for (let i =0; i < param[key].length; i++) {
if ( Array.isArray(param[key]) ) throw new BizError(ERRORENUM.参数错误, `${key}应是Object型 而不是array`); let item = param[key][i];
try { if ( typeof item != 'object' ) {
JSON.stringify(param[key]); isError = true;
} catch(err) { errorStr = `${key}应是object型数组其中下标${i}${typeof item}`;
throw new BizError(ERRORENUM.参数错误, `${key}应是Object型 转换JSON时失败`); }
} }
break;
break; }
errorStr = isError && errorStr == "" ? `${key}应该是${type}型 而不是${paramType}`: errorStr;
} }
if (isError) throw new BizError(ERRORENUM.参数错误, errorStr);
} }
for (let key in param) { for (let key in param) {
if (!conf[key]) throw new BizError(ERRORENUM.表单校验失败, `多余${key}字段`); if (!conf[key]) throw new BizError(ERRORENUM.参数错误, `多余${key}字段`);
} }
return param; return param;
} }
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