Commit f92dc309 by lixinming

no message

parent 8d7b9664
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
"sequelize": "^6.35.2", "sequelize": "^6.35.2",
"svg-captcha": "^1.3.12", "svg-captcha": "^1.3.12",
"tencentcloud-sdk-nodejs": "^4.0.562", "tencentcloud-sdk-nodejs": "^4.0.562",
"wechatpay-node-v3": "^2.1.8",
"ws": "^5.2.2", "ws": "^5.2.2",
"xml2js": "^0.4.23" "xml2js": "^0.4.23"
}, },
......
...@@ -2,13 +2,57 @@ ...@@ -2,13 +2,57 @@
* 收费 * 收费
*/ */
import moment = require("moment"); import { PAYMENTTYPE } from "../../config/enum";
import { MEMBERLEVEL, MEMBERTYPE, ORDERSTATE } from "../../config/enum";
import { generateOrderId } from "../../tools/system";
import { eccEnumValue } from "../../util/verificationEnum";
import { addOneData } from "../../data/add";
import { TABLEENUM } from "../../data/models/model"; import { TABLEENUM } from "../../data/models/model";
import { findOnce } from "../../data/select";
import { eccEnumValue } from "../../util/verificationEnum";
import { update } from "../portal/fenZhiJiGou/jiGouGuanLi";
const WxPay = require('wechatpay-node-v3');
import * as fs from 'fs';
const pay = new WxPay({
appid: 'wx96c0cf11b3babcf6',
mchid: '1614605859',
publicKey: fs.readFileSync('./apiclient_cert.pem'), // 公钥
privateKey: fs.readFileSync('./apiclient_key.pem'), // 秘钥
});
// var initConfig = {
// partnerKey: "<partnerkey>",
// appId: "<appid>",
// mchId: "<mchid>",
// notifyUrl: "<notifyurl>",
// pfx: fs.readFileSync("<location-of-your-apiclient-cert.p12>")
// };
// var payment = new Payment(initConfig);
// /**
// * 订单列表
// * @param param0
// */
// export async function orderList({userId}) {
// }
// /**发起支付接口 */
// /**支付状态更新接口 给微信用 */
// /**订单状态查询 */
/**
* 发起支付
* @param param0
*/
export async function initiationPay({userId, id, paymentType}) {
eccEnumValue("发起支付", "支付方式", PAYMENTTYPE, paymentType);
if (id == PAYMENTTYPE.线下支付) {
} else {//线上支付
let orderInfo = await findOnce(TABLEENUM.订单表, {id});
/**清除微信支付订单 */
// await update(TABLEENUM);
}
}
\ No newline at end of file
...@@ -2,13 +2,16 @@ ...@@ -2,13 +2,16 @@
* 订单相关 * 订单相关
*/ */
import moment = require("moment"); import moment = require("moment");
import { COSTTYPE, INVOICESTATUS, ISPAYENUM, MEMBERLEVEL, MEMBERTYPE, ORDERSTATE, PAYMENTTYPE } from "../../config/enum"; import { COSTTYPE, INVOICESTATUS, ISPAYENUM, MEMBERLEVEL, MEMBERTYPE, ORDERSTATE, PAYMENTTYPE, RECEIPTCONFIRMATION } from "../../config/enum";
import { generateOrderId } from "../../tools/system"; import { generateOrderId, successResult } from "../../tools/system";
import { changeEnumValue, eccEnumValue } from "../../util/verificationEnum"; import { changeEnumValue, eccEnumValue } from "../../util/verificationEnum";
import { addOneData } from "../../data/add"; import { addOneData } from "../../data/add";
import { TABLEENUM } from "../../data/models/model"; import { TABLEENUM } from "../../data/models/model";
import { findCount, findToPage } from "../../data/select"; import { find, findCount, findOnce, findToPage } from "../../data/select";
import { extractData } from "../../util/piecemeal"; import { extractData } from "../../util/piecemeal";
import { BizError } from "../../util/bizError";
import { ERRORENUM } from "../../config/errorEnum";
import { updateOneData } from "../../data/update";
/** /**
...@@ -116,7 +119,7 @@ export async function paidList({unitName, paymentType, costType, pageNumber }) { ...@@ -116,7 +119,7 @@ export async function paidList({unitName, paymentType, costType, pageNumber }) {
/** /**
* 待开发票和已开发票 * 待开发票和已开发票
*/ */
export async function nonBillable({unitName, paymentType, isPay, pageNumber, invoiceStatus}) { export async function billStateList({unitName, paymentType, isPay, pageNumber, invoiceStatus}) {
eccEnumValue("发票列表", "支付类型", PAYMENTTYPE, paymentType); eccEnumValue("发票列表", "支付类型", PAYMENTTYPE, paymentType);
eccEnumValue("发票列表", "是否支付", ISPAYENUM, isPay ); eccEnumValue("发票列表", "是否支付", ISPAYENUM, isPay );
eccEnumValue("发票列表", "发票类型", INVOICESTATUS, invoiceStatus ) eccEnumValue("发票列表", "发票类型", INVOICESTATUS, invoiceStatus )
...@@ -147,11 +150,76 @@ export async function nonBillable({unitName, paymentType, isPay, pageNumber, inv ...@@ -147,11 +150,76 @@ export async function nonBillable({unitName, paymentType, isPay, pageNumber, inv
/** /**
* 个人页待付款列表 * 待支付-通过审核
* @param param0 * @param param0
*/ */
export async function 待付款列表({userId, type}) { export async function checkOrder({id}) {
let orderInfo = await findOnce(TABLEENUM.订单表, {id});
if (!orderInfo || !orderInfo.id ) throw new BizError(ERRORENUM.目标数据不存在);
if (orderInfo.firstExamine) throw new BizError(ERRORENUM.重复提交);
await updateOneData(TABLEENUM.订单表, {id}, {firstExamine:true});
return successResult();
}
/**
* 收款确认通过
* @param param0
*/
export async function confirmReceiptPass({id}) {
let orderInfo = await findOnce(TABLEENUM.订单表, {id});
if (!orderInfo || !orderInfo.id ) throw new BizError(ERRORENUM.目标数据不存在);
if (orderInfo.confirmReceipt != RECEIPTCONFIRMATION.待确认) throw new BizError(ERRORENUM.重复提交, `收款确认通过时 状态处于${orderInfo.confirmReceipt}`);
await updateOneData(TABLEENUM.订单表, {id}, {confirmReceipt:RECEIPTCONFIRMATION.收款确认});
return successResult();
}
/**
* 收款确认失败
* @param param0
*/
export async function confirmReceiptOut({id}) {
let orderInfo = await findOnce(TABLEENUM.订单表, {id});
if (!orderInfo || !orderInfo.id ) throw new BizError(ERRORENUM.目标数据不存在);
if (orderInfo.confirmReceipt != RECEIPTCONFIRMATION.待确认) throw new BizError(ERRORENUM.重复提交, `收款确认通过时 状态处于${orderInfo.confirmReceipt}`);
await updateOneData(TABLEENUM.订单表, {id}, {confirmReceipt:RECEIPTCONFIRMATION.退回});
return successResult();
}
/**
* 个人页待订单列表
* @param param0
*/
export async function orderList({userId, type}) {
eccEnumValue("个人页待订单列表", "类型", ISPAYENUM, type);
let findParam:any = {}; let findParam:any = {};
// if (type == ) if (type == ORDERSTATE.已支付) findParam.state = ORDERSTATE.已支付;
// let dbList = await findToPage(TABLEENUM.订单表, findParam, selectFile, pageNumber); else if (type == ORDERSTATE.未支付) findParam.state = ORDERSTATE.未支付;
const SelectFile = ["orderCycleStart", "orderCycleEnd", "money", "state", "id"];
let dbList = await find(TABLEENUM.订单表, findParam, SelectFile);
let dataList = [];
dbList.forEach(info => {
let {orderCycleStart, orderCycleEnd, money, state, id} = info;
let moneyStr = state == ORDERSTATE.已支付 ? "已缴金额" : "待缴金额";
dataList.push({
cycle:`${moment(orderCycleStart).format("YYYY-MM-DD")}${moment(orderCycleEnd).format("YYYY-MM-DD")}`,
money:`${moneyStr}:${money}`,
id
});
});
return {dataList}
} }
\ No newline at end of file
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
*/ */
import moment = require("moment"); import moment = require("moment");
import { ARTICLEPOSITION, BANNERPOSITION, CODPARTICIPANT, DANGJIANVIDEO, DONGTAIZIXUNSUBTYPE, IMGEDITFUNENUM, PARTYBUILDSUBTYPEENUM, PARTYBUILDTYPEENUM, STATE, TONGZHIGONGGAO } from "../config/enum"; import { ARTICLEPOSITION, BANNERPOSITION, BRANCHPOSITION, CODPARTICIPANT, DANGJIANVIDEO, DONGTAIZIXUNSUBTYPE, IMGEDITFUNENUM, PARTYBUILDSUBTYPEENUM, PARTYBUILDTYPEENUM, STATE, TONGZHIGONGGAO } from "../config/enum";
import { TABLEENUM } from "../data/models/model"; import { TABLEENUM } from "../data/models/model";
import { find, findCount, findOnce, findToPage } from "../data/select"; import { find, findCount, findOnce, findToPage, findToSortToPage } from "../data/select";
import { extractData } from "../util/piecemeal"; import { extractData } from "../util/piecemeal";
import { changeEnumValue, eccEnumValue } from "../util/verificationEnum"; import { changeEnumValue, eccEnumValue } from "../util/verificationEnum";
import { BizError } from "../util/bizError"; import { BizError } from "../util/bizError";
...@@ -589,7 +589,6 @@ export async function fenHuiDongTai({agencyId, pageNumber}) { ...@@ -589,7 +589,6 @@ export async function fenHuiDongTai({agencyId, pageNumber}) {
export async function fenHuiDongTaiInfo({id}) { export async function fenHuiDongTaiInfo({id}) {
let result = { let result = {
jiGouXinXi:{}, jiGouXinXi:{},
weiYuanMingDan:[],
}; };
let dataInfo = await findOnce(TABLEENUM.机构管理, {id}); let dataInfo = await findOnce(TABLEENUM.机构管理, {id});
...@@ -600,6 +599,25 @@ export async function fenHuiDongTaiInfo({id}) { ...@@ -600,6 +599,25 @@ export async function fenHuiDongTaiInfo({id}) {
} }
/**
* 委员名单
*/
export async function weiYuanMingDanList({name, agencyId, pageNumber}) {
let selectParam:any = {agencyId};
if (name) selectParam.name = name;
let dataList = [];
let dbList = await findToSortToPage(TABLEENUM.委员名单, selectParam, ["name", "branchDuties", "unit", "unitDuties"], {branchDuties:1}, pageNumber, 20);
let dataCount = await findCount(TABLEENUM.委员名单, selectParam);
dbList.forEach(info => {
let addInfo:any = extractData(info, ["name", "unit", "unitDuties"]);
addInfo.branchDuties = changeEnumValue(BRANCHPOSITION, info.branchDuties);
dataList.push(addInfo);
});
return {dataList, dataCount}
}
export async function xueXiYuanDiWenZiType() { export async function xueXiYuanDiWenZiType() {
let typeList = await find(TABLEENUM.党建, {type:PARTYBUILDTYPEENUM.学习园地, subType:PARTYBUILDSUBTYPEENUM.文字资料, display:STATE.}); let typeList = await find(TABLEENUM.党建, {type:PARTYBUILDTYPEENUM.学习园地, subType:PARTYBUILDSUBTYPEENUM.文字资料, display:STATE.});
......
import { ARTICLEPOSITION, DONGTAIZIXUNSUBTYPE, PARTYBUILDSUBTYPEENUM, PARTYBUILDTYPEENUM } from "../config/enum";
import { TABLEENUM } from "../data/models/model";
import { find } from "../data/select";
export function setEnumInterface({defaultParam}) {
let dataList = [];
for (let key in defaultParam) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
let value = defaultParam[key];
if(/_dou/.test(keyStr)) keyStr = keyStr.replace(/_dou/, ",");
if(/_zyh/.test(keyStr)) keyStr = keyStr.replace(/_zyh/, "“");
if(/_yyh/.test(keyStr)) keyStr = keyStr.replace(/_yyh/, "”");
if(/_dun/.test(keyStr)) keyStr = keyStr.replace(/_dun/, "、");
if(/_ju/.test(keyStr)) keyStr = keyStr.replace(/_ju/, "。");
if(/_hgh/.test(keyStr)) keyStr = keyStr.replace(/_hgh/, "-");
if(/_kbh/.test(keyStr)) keyStr = keyStr.replace(/_kbh/, "");
dataList.push({key:keyStr, value});
}
}
return {dataList};
}
export function zhengCeZiXunLeiXing() {
let conf = {};
conf[DONGTAIZIXUNSUBTYPE.政策动向] = "Policy Tendence";
conf[DONGTAIZIXUNSUBTYPE.学会动态] = "Assoclation dynamics";
conf[DONGTAIZIXUNSUBTYPE.行业风采] = "Industry style";
let dataList = [];
for (let key in DONGTAIZIXUNSUBTYPE) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
let value = DONGTAIZIXUNSUBTYPE[key];
dataList.push({key:keyStr, value, keyEng:conf[value]});
}
}
return {dataList}
}
export async function filePosition() {
let dataList = [];
for (let key in ARTICLEPOSITION) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
let value = ARTICLEPOSITION[key];
dataList.push({key:keyStr, value});
}
}
let wenZiDBList = await find(TABLEENUM.党建, {type:PARTYBUILDTYPEENUM.学习园地, subType:PARTYBUILDSUBTYPEENUM.文字资料});
wenZiDBList.forEach(info => {
let {id, name} = info;
dataList.push({key:name, value:id});
});
return { dataList};
}
\ No newline at end of file
...@@ -269,7 +269,10 @@ export enum COMMITTEEMEMBER { ...@@ -269,7 +269,10 @@ export enum COMMITTEEMEMBER {
*/ */
export enum BRANCHPOSITION { export enum BRANCHPOSITION {
主任 = 1, 主任 = 1,
成员 副主任,
秘书长,
副秘书长,
委员
} }
...@@ -427,6 +430,16 @@ export enum REGISTERFLOW { ...@@ -427,6 +430,16 @@ export enum REGISTERFLOW {
/** /**
* 收款确认
*/
export enum RECEIPTCONFIRMATION {
待确认 = 1,
收款确认 = 2,
退回
}
/**
* 支付方式 * 支付方式
*/ */
export enum PAYMENTTYPE { export enum PAYMENTTYPE {
......
...@@ -24,7 +24,8 @@ export enum ERRORENUM { ...@@ -24,7 +24,8 @@ export enum ERRORENUM {
发送验证码频率过快, 发送验证码频率过快,
验证码错误, 验证码错误,
验证码失效, 验证码失效,
验证码过期 验证码过期,
重复提交
} }
export enum ERRORCODEENUM { export enum ERRORCODEENUM {
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
}, },
*/ */
import { MEMBERSTATE, REGISTERFLOW, USERREGISTERSTATE } from "../../config/enum"; import { MEMBERSTATE, RECEIPTCONFIRMATION, REGISTERFLOW, USERREGISTERSTATE } from "../../config/enum";
...@@ -440,11 +440,14 @@ const ModelArray = [ ...@@ -440,11 +440,14 @@ const ModelArray = [
paymentNum:'String',//支付单号(与订单号不一样) paymentNum:'String',//支付单号(与订单号不一样)
// membershipFeesType:'Number',//会费类别 枚举 // membershipFeesType:'Number',//会费类别 枚举
invoiceAdd:'String',//发票图片地址 invoiceAdd:'String',//发票图片地址
state:'Number',//状态 枚举 ORDERSTATE state:'Number',//状态 是否支付 枚举 ORDERSTATE
firstExamine:{type:'Boolean', default:false},//首次订单的审批开关
isFirst:{type:'Boolean', default:true},//首次订单 isFirst:{type:'Boolean', default:true},//首次订单
invoiceStatus:{type:'Number', index:true},//发票状态 枚举 INVOICESTATUS invoiceStatus:{type:'Number', index:true},//发票状态 枚举 INVOICESTATUS
paymentMethod:'Number',//付款方式 枚举 PAYMENTTYPE paymentMethod:'Number',//付款方式 枚举 PAYMENTTYPE
memberCategory:'Number',//会员类别 枚举 MEMBERTYPE memberCategory:'Number',//会员类别 枚举 MEMBERTYPE
confirmReceipt:{type:'Number', default:RECEIPTCONFIRMATION.待确认},//收款确认
weChartPR:"String",//微信订单号
} }
}, },
{ {
......
...@@ -10,6 +10,13 @@ export async function findToPage(tableEnumValue:string, param:object, files:obje ...@@ -10,6 +10,13 @@ export async function findToPage(tableEnumValue:string, param:object, files:obje
return data; return data;
} }
export async function findToSortToPage(tableEnumValue:string, param:object, files:object, sortParam, pageNumber:number, pageSize?) {
let data = await dataModels[tableEnumValue].find(param, files).sort(sortParam).skip((pageNumber - 1) *pageSize).limit(pageSize);
return data;
}
export async function findCount(tableEnumValue:string, param:object) { export async function findCount(tableEnumValue:string, param:object) {
let data = await dataModels[tableEnumValue].findCount(param); let data = await dataModels[tableEnumValue].findCount(param);
return data; return data;
......
...@@ -203,7 +203,16 @@ export const Config = { ...@@ -203,7 +203,16 @@ export const Config = {
{key:"id", type:"String", desc:"分会id"} {key:"id", type:"String", desc:"分会id"}
], ],
bindBiz:officialWebsiteBiz.fenHuiDongTaiInfo bindBiz:officialWebsiteBiz.fenHuiDongTaiInfo
},
{
apiName:"委员名单",
subUrl:'/weiyuanmingdan',
param:[
{key:"name", type:"String", desc:"成员名称"},
{key:"agencyId", type:"Number", desc:"分会id"},
{key:"pageNumber", type:"Number", desc:"分页-页数"}
],
bindBiz:officialWebsiteBiz.weiYuanMingDanList
} }
], ],
......
import * as orderBiz from "../../biz/member/order";
export const FirstName = '会费相关';
export const FirstRouter = '/manage/cost';
export const Config = {
"审批管理":[
{
apiName:"待支付列表",
subUrl:'/order/fist/list',
param:[
{key:"unitName", type:"String", desc:"单位名称", isNull:true},
{key:"joinTime", type:"Number", desc:"入会时间 时间戳", isNull:true},
{key:"memberType", type:"Number", desc:"会员类别 枚举参考公用组件", isNull:true},
{key:"orderState", type:"Number", desc:"支付状态", isNull:true},
{key:"pageNumber", type:"Number", desc:"分页-当前页面"}
],
bindBiz:orderBiz.firstOrderList
},
{
apiName:"确认待支付",
subUrl:'/order/fist/pass',
param:[
{key:"id", type:"String", desc:"订单标识"},
],
bindBiz:orderBiz.checkOrder
},
],
"发票管理":[
{
apiName:"财务核对",
subUrl:'/order/invoice/check/list',
param:[
{key:"unitName", type:"String", desc:"单位名称", isNull:true},
{key:"paymentType", type:"Number", desc:"支付方式", isNull:true},
{key:"costType", type:"Number", desc:"会费类别", isNull:true},
{key:"pageNumber", type:"Number", desc:"分页-当前页面"}
],
bindBiz:orderBiz.paidList
},
{
apiName:"待开发票和已开发票",
subUrl:'/order/invoice/list',
param:[
{key:"unitName", type:"String", desc:"单位名称", isNull:true},
{key:"paymentType", type:"Number", desc:"支付方式", isNull:true},
{key:"isPay", type:"Number", desc:"是否支付", isNull:true},
{key:"invoiceStatus", type:"Number", desc:"发票类型", isNull:true},
{key:"pageNumber", type:"Number", desc:"分页-当前页面"}
],
bindBiz:orderBiz.billStateList
},
{
apiName:"财务核对-收款确认",
subUrl:'/order/invoice/examine/pass',
param:[
{key:"id", type:"String", desc:"订单id"}
],
bindBiz:orderBiz.confirmReceiptPass
},
{
apiName:"财务核对-退回",
subUrl:'/order/invoice/examine/out',
param:[
{key:"id", type:"String", desc:"订单id"}
],
bindBiz:orderBiz.confirmReceiptOut
},
],
"会员个人页":[
{
apiName:"会员缴费列表",
subUrl:'/order/list',
param:[
{key:"type", type:"Number", desc:"会员类别 枚举参考公用组件[会员缴费列表类型]", isNull:true},
],
bindBiz:orderBiz.orderList
},
],
}
import * as publicBiz from '../../biz/public';
import * as enumConfig from '../../config/enum'; import * as enumConfig from '../../config/enum';
import { TABLEENUM } from '../../data/models/model';
import { find } from '../../data/select';
function setEnumInterface(enumConfig) { // function setEnumInterface(enumConfig) {
let dataList = []; // let dataList = [];
for (let key in enumConfig) { // for (let key in enumConfig) {
let anyKey:any = key; // let anyKey:any = key;
if (isNaN(anyKey)) { // if (isNaN(anyKey)) {
let keyStr = key; // let keyStr = key;
let value = enumConfig[key]; // let value = enumConfig[key];
if(/_dou/.test(keyStr)) keyStr = keyStr.replace(/_dou/, ","); // if(/_dou/.test(keyStr)) keyStr = keyStr.replace(/_dou/, ",");
if(/_zyh/.test(keyStr)) keyStr = keyStr.replace(/_zyh/, "“"); // if(/_zyh/.test(keyStr)) keyStr = keyStr.replace(/_zyh/, "“");
if(/_yyh/.test(keyStr)) keyStr = keyStr.replace(/_yyh/, "”"); // if(/_yyh/.test(keyStr)) keyStr = keyStr.replace(/_yyh/, "”");
if(/_dun/.test(keyStr)) keyStr = keyStr.replace(/_dun/, "、"); // if(/_dun/.test(keyStr)) keyStr = keyStr.replace(/_dun/, "、");
if(/_ju/.test(keyStr)) keyStr = keyStr.replace(/_ju/, "。"); // if(/_ju/.test(keyStr)) keyStr = keyStr.replace(/_ju/, "。");
if(/_hgh/.test(keyStr)) keyStr = keyStr.replace(/_hgh/, "-"); // if(/_hgh/.test(keyStr)) keyStr = keyStr.replace(/_hgh/, "-");
if(/_kbh/.test(keyStr)) keyStr = keyStr.replace(/_kbh/, ""); // if(/_kbh/.test(keyStr)) keyStr = keyStr.replace(/_kbh/, "");
dataList.push({key:keyStr, value}); // dataList.push({key:keyStr, value});
} // }
} // }
return {dataList}; // return {dataList};
} // }
export const FirstName = '公共接口'; export const FirstName = '公共接口';
export const FirstRouter = '/public'; export const FirstRouter = '/public';
...@@ -28,133 +31,154 @@ export const Config = { ...@@ -28,133 +31,154 @@ export const Config = {
apiName:"性别", apiName:"性别",
subUrl:'/sex', subUrl:'/sex',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.SEX) defaultParam:enumConfig.SEX,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"会员类型", apiName:"会员类型",
subUrl:'/membertype', subUrl:'/membertype',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.MEMBERTYPE) defaultParam:enumConfig.MEMBERTYPE,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"专业类别", apiName:"专业类别",
subUrl:'/profcategory', subUrl:'/profcategory',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.PROFCATEGORY) defaultParam:enumConfig.PROFCATEGORY,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"内容管理banner位置", apiName:"内容管理banner位置",
subUrl:'/position', subUrl:'/position',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.BANNERPOSITION) defaultParam:enumConfig.BANNERPOSITION,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"内容管理文章位置", apiName:"内容管理文章位置",
subUrl:'/articleposition', subUrl:'/articleposition',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.ARTICLEPOSITION)// bindBiz:publicBiz.filePosition
}, },
{ {
apiName:"内容管理视频位置", apiName:"内容管理视频位置",
subUrl:'/videoposition', subUrl:'/videoposition',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.VIDEOPOSITION) defaultParam:enumConfig.VIDEOPOSITION,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"年筛选", apiName:"年筛选",
subUrl:'/years', subUrl:'/years',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.YEARENUM) defaultParam:enumConfig.YEARENUM,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"作品类型", apiName:"作品类型",
subUrl:'/typeofworks', subUrl:'/typeofworks',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.TYPEOFWORKS) defaultParam:enumConfig.TYPEOFWORKS,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"参会人员", apiName:"参会人员",
subUrl:'/codparticipant', subUrl:'/codparticipant',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.CODPARTICIPANT) defaultParam:enumConfig.CODPARTICIPANT,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"分委会职务", apiName:"分委会职务",
subUrl:'/branchposition', subUrl:'/branchposition',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.BRANCHPOSITION) defaultParam:enumConfig.BRANCHPOSITION,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"下载专区分类", apiName:"下载专区分类",
subUrl:'/dwtype', subUrl:'/dwtype',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.DWTYPE) defaultParam:enumConfig.DWTYPE,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"民族", apiName:"民族",
subUrl:'/nation', subUrl:'/nation',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.NATION) defaultParam:enumConfig.NATION,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"证件类型", apiName:"证件类型",
subUrl:'/documenttype', subUrl:'/documenttype',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.DOCUMENTTYPE) defaultParam:enumConfig.DOCUMENTTYPE,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"单位信息类型", apiName:"单位信息类型",
subUrl:'/unitinfotype', subUrl:'/unitinfotype',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.UNITINFOTYPE) defaultParam:enumConfig.UNITINFOTYPE,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"动态资讯类型列表", apiName:"动态资讯类型列表",
subUrl:'/dongtaizixuntype', subUrl:'/dongtaizixuntype',
param:[], param:[],
bindBiz:zhengCeZiXunLeiXing() bindBiz:publicBiz.zhengCeZiXunLeiXing
}, },
{ {
apiName:"通知公告类型", apiName:"通知公告类型",
subUrl:'/tongzhigonggaotype', subUrl:'/tongzhigonggaotype',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.TONGZHIGONGGAO) defaultParam:enumConfig.TONGZHIGONGGAO,
bindBiz:publicBiz.setEnumInterface
}, },
{ {
apiName:"验证码类型", apiName:"验证码类型",
subUrl:'/codetype', subUrl:'/codetype',
param:[], param:[],
bindBiz:setEnumInterface(enumConfig.CODETYPE) defaultParam:enumConfig.CODETYPE,
bindBiz:publicBiz.setEnumInterface
}, },
], {
} apiName:"会员缴费列表类型",
subUrl:'/ispay',
function zhengCeZiXunLeiXing() { param:[],
let conf = {}; defaultParam:enumConfig.ISPAYENUM,
conf[enumConfig.DONGTAIZIXUNSUBTYPE.政策动向] = "Policy Tendence"; bindBiz:publicBiz.setEnumInterface
conf[enumConfig.DONGTAIZIXUNSUBTYPE.学会动态] = "Assoclation dynamics"; },
conf[enumConfig.DONGTAIZIXUNSUBTYPE.行业风采] = "Industry style"; {
let dataList = []; apiName:"支付方式",
for (let key in enumConfig.DONGTAIZIXUNSUBTYPE) { subUrl:'/paytype',
let anyKey:any = key; param:[],
if (isNaN(anyKey)) { defaultParam:enumConfig.PAYMENTTYPE,
let keyStr = key; bindBiz:publicBiz.setEnumInterface
let value = enumConfig.DONGTAIZIXUNSUBTYPE[key]; },
dataList.push({key:keyStr, value, keyEng:conf[value]}); {
} apiName:"发票状态",
subUrl:'/invoicestate',
param:[],
defaultParam:enumConfig.INVOICESTATUS,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"会费类别",
subUrl:'/costtype',
param:[],
defaultParam:enumConfig.COSTTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"订单状态",
subUrl:'/orderstate',
param:[],
defaultParam:enumConfig.ORDERSTATE,
bindBiz:publicBiz.setEnumInterface
} }
return {dataList} ],
} }
async function 文件位置() {
let dataList = [];
for (let key in enumConfig.ARTICLEPOSITION) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
let value = enumConfig.ARTICLEPOSITION[key];
// dataList.push({key:keyStr, value, keyEng:conf[value]});
}
}
}
\ No newline at end of file
...@@ -12,28 +12,31 @@ import * as portalRouter from "./portal/router"; ...@@ -12,28 +12,31 @@ import * as portalRouter from "./portal/router";
import * as publicRouter from "./public/router"; import * as publicRouter from "./public/router";
import * as memberRouter from "./member/router"; import * as memberRouter from "./member/router";
import * as officalWebsiteRouter from "./officalWebsite/router"; import * as officalWebsiteRouter from "./officalWebsite/router";
import * as orderRouter from "./order/router";
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
const Look = false;//true更新文档 const Look = true;//true更新文档
export async function setRouter(httpServer){ export async function setRouter(httpServer){
if (Look) { if (Look) {
await getDoc(); await getDoc();
await initDoc(portalRouter.FirstName, portalRouter.Config, portalRouter.FirstRouter);//网站编辑 // await initDoc(portalRouter.FirstName, portalRouter.Config, portalRouter.FirstRouter);//网站编辑
await initDoc(publicRouter.FirstName, publicRouter.Config, publicRouter.FirstRouter);//公用组件 await initDoc(publicRouter.FirstName, publicRouter.Config, publicRouter.FirstRouter);//公用组件
await initDoc(memberRouter.FirstName, memberRouter.Config, memberRouter.FirstRouter);//用户路由 // await initDoc(memberRouter.FirstName, memberRouter.Config, memberRouter.FirstRouter);//用户路由
await initDoc(officalWebsiteRouter.FirstName, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter);//官网路由 // await initDoc(officalWebsiteRouter.FirstName, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter);//官网路由
await initDoc(orderRouter.FirstName, orderRouter.Config, orderRouter.FirstRouter);//会费相关
} }
await analysisRouter(httpServer, portalRouter.Config, portalRouter.FirstRouter);//网站编辑 await analysisRouter(httpServer, portalRouter.Config, portalRouter.FirstRouter);//网站编辑
await analysisRouter(httpServer, publicRouter.Config, publicRouter.FirstRouter);//公用组件 await analysisRouter(httpServer, publicRouter.Config, publicRouter.FirstRouter);//公用组件
await analysisRouter(httpServer, memberRouter.Config, memberRouter.FirstRouter);//用户路由 await analysisRouter(httpServer, memberRouter.Config, memberRouter.FirstRouter);//用户路由
await analysisRouter(httpServer, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter);//官网路由 await analysisRouter(httpServer, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter);//官网路由
await analysisRouter(httpServer, orderRouter.Config, orderRouter.FirstRouter);//会费相关
} }
async function analysisRouter(httpServer, config, firstRouter) { async function analysisRouter(httpServer, config, firstRouter) {
for (let modelKey in config) { for (let modelKey in config) {
config[modelKey].forEach(info => { config[modelKey].forEach(info => {
let {apiName, subUrl, param, bindBiz} = info; let {apiName, defaultParam, subUrl, param, bindBiz} = info;
httpServer.post(firstRouter+subUrl, asyncHandler( async (req, res) => { httpServer.post(firstRouter+subUrl, asyncHandler( async (req, res) => {
let chackObjectList = []; let chackObjectList = [];
let checkStringMap = {}; let checkStringMap = {};
...@@ -66,10 +69,8 @@ async function analysisRouter(httpServer, config, firstRouter) { ...@@ -66,10 +69,8 @@ async function analysisRouter(httpServer, config, firstRouter) {
funcParam[key] = eccResult[key]; funcParam[key] = eccResult[key];
} }
} }
if (defaultParam) funcParam["defaultParam"] = defaultParam;
let result; let result = await bindBiz(funcParam);
if (firstRouter == '/public') result = await bindBiz;
else result = await bindBiz(funcParam);
res.success(result); res.success(result);
})); }));
......
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