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 @@
"sequelize": "^6.35.2",
"svg-captcha": "^1.3.12",
"tencentcloud-sdk-nodejs": "^4.0.562",
"wechatpay-node-v3": "^2.1.8",
"ws": "^5.2.2",
"xml2js": "^0.4.23"
},
......
......@@ -2,13 +2,57 @@
* 收费
*/
import moment = require("moment");
import { MEMBERLEVEL, MEMBERTYPE, ORDERSTATE } from "../../config/enum";
import { generateOrderId } from "../../tools/system";
import { eccEnumValue } from "../../util/verificationEnum";
import { addOneData } from "../../data/add";
import { PAYMENTTYPE } from "../../config/enum";
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 @@
* 订单相关
*/
import moment = require("moment");
import { COSTTYPE, INVOICESTATUS, ISPAYENUM, MEMBERLEVEL, MEMBERTYPE, ORDERSTATE, PAYMENTTYPE } from "../../config/enum";
import { generateOrderId } from "../../tools/system";
import { COSTTYPE, INVOICESTATUS, ISPAYENUM, MEMBERLEVEL, MEMBERTYPE, ORDERSTATE, PAYMENTTYPE, RECEIPTCONFIRMATION } from "../../config/enum";
import { generateOrderId, successResult } from "../../tools/system";
import { changeEnumValue, eccEnumValue } from "../../util/verificationEnum";
import { addOneData } from "../../data/add";
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 { 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 }) {
/**
* 待开发票和已开发票
*/
export async function nonBillable({unitName, paymentType, isPay, pageNumber, invoiceStatus}) {
export async function billStateList({unitName, paymentType, isPay, pageNumber, invoiceStatus}) {
eccEnumValue("发票列表", "支付类型", PAYMENTTYPE, paymentType);
eccEnumValue("发票列表", "是否支付", ISPAYENUM, isPay );
eccEnumValue("发票列表", "发票类型", INVOICESTATUS, invoiceStatus )
......@@ -147,11 +150,76 @@ export async function nonBillable({unitName, paymentType, isPay, pageNumber, inv
/**
* 个人页待付款列表
* 待支付-通过审核
* @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 = {};
// if (type == )
// let dbList = await findToPage(TABLEENUM.订单表, findParam, selectFile, pageNumber);
if (type == ORDERSTATE.已支付) findParam.state = ORDERSTATE.已支付;
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 @@
*/
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 { find, findCount, findOnce, findToPage } from "../data/select";
import { find, findCount, findOnce, findToPage, findToSortToPage } from "../data/select";
import { extractData } from "../util/piecemeal";
import { changeEnumValue, eccEnumValue } from "../util/verificationEnum";
import { BizError } from "../util/bizError";
......@@ -589,7 +589,6 @@ export async function fenHuiDongTai({agencyId, pageNumber}) {
export async function fenHuiDongTaiInfo({id}) {
let result = {
jiGouXinXi:{},
weiYuanMingDan:[],
};
let dataInfo = await findOnce(TABLEENUM.机构管理, {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() {
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 {
*/
export enum BRANCHPOSITION {
主任 = 1,
成员
副主任,
秘书长,
副秘书长,
委员
}
......@@ -427,6 +430,16 @@ export enum REGISTERFLOW {
/**
* 收款确认
*/
export enum RECEIPTCONFIRMATION {
待确认 = 1,
收款确认 = 2,
退回
}
/**
* 支付方式
*/
export enum PAYMENTTYPE {
......
......@@ -24,7 +24,8 @@ export enum ERRORENUM {
发送验证码频率过快,
验证码错误,
验证码失效,
验证码过期
验证码过期,
重复提交
}
export enum ERRORCODEENUM {
......
......@@ -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 = [
paymentNum:'String',//支付单号(与订单号不一样)
// membershipFeesType:'Number',//会费类别 枚举
invoiceAdd:'String',//发票图片地址
state:'Number',//状态 枚举 ORDERSTATE
state:'Number',//状态 是否支付 枚举 ORDERSTATE
firstExamine:{type:'Boolean', default:false},//首次订单的审批开关
isFirst:{type:'Boolean', default:true},//首次订单
invoiceStatus:{type:'Number', index:true},//发票状态 枚举 INVOICESTATUS
paymentMethod:'Number',//付款方式 枚举 PAYMENTTYPE
memberCategory:'Number',//会员类别 枚举 MEMBERTYPE
confirmReceipt:{type:'Number', default:RECEIPTCONFIRMATION.待确认},//收款确认
weChartPR:"String",//微信订单号
}
},
{
......
......@@ -10,6 +10,13 @@ export async function findToPage(tableEnumValue:string, param:object, files:obje
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) {
let data = await dataModels[tableEnumValue].findCount(param);
return data;
......
......@@ -203,7 +203,16 @@ export const Config = {
{key:"id", type:"String", desc:"分会id"}
],
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 { TABLEENUM } from '../../data/models/model';
import { find } from '../../data/select';
function setEnumInterface(enumConfig) {
let dataList = [];
for (let key in enumConfig) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
let value = enumConfig[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};
}
// function setEnumInterface(enumConfig) {
// let dataList = [];
// for (let key in enumConfig) {
// let anyKey:any = key;
// if (isNaN(anyKey)) {
// let keyStr = key;
// let value = enumConfig[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 const FirstName = '公共接口';
export const FirstRouter = '/public';
......@@ -28,133 +31,154 @@ export const Config = {
apiName:"性别",
subUrl:'/sex',
param:[],
bindBiz:setEnumInterface(enumConfig.SEX)
defaultParam:enumConfig.SEX,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"会员类型",
subUrl:'/membertype',
param:[],
bindBiz:setEnumInterface(enumConfig.MEMBERTYPE)
defaultParam:enumConfig.MEMBERTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"专业类别",
subUrl:'/profcategory',
param:[],
bindBiz:setEnumInterface(enumConfig.PROFCATEGORY)
defaultParam:enumConfig.PROFCATEGORY,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"内容管理banner位置",
subUrl:'/position',
param:[],
bindBiz:setEnumInterface(enumConfig.BANNERPOSITION)
defaultParam:enumConfig.BANNERPOSITION,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"内容管理文章位置",
subUrl:'/articleposition',
param:[],
bindBiz:setEnumInterface(enumConfig.ARTICLEPOSITION)//
bindBiz:publicBiz.filePosition
},
{
apiName:"内容管理视频位置",
subUrl:'/videoposition',
param:[],
bindBiz:setEnumInterface(enumConfig.VIDEOPOSITION)
defaultParam:enumConfig.VIDEOPOSITION,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"年筛选",
subUrl:'/years',
param:[],
bindBiz:setEnumInterface(enumConfig.YEARENUM)
defaultParam:enumConfig.YEARENUM,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"作品类型",
subUrl:'/typeofworks',
param:[],
bindBiz:setEnumInterface(enumConfig.TYPEOFWORKS)
defaultParam:enumConfig.TYPEOFWORKS,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"参会人员",
subUrl:'/codparticipant',
param:[],
bindBiz:setEnumInterface(enumConfig.CODPARTICIPANT)
defaultParam:enumConfig.CODPARTICIPANT,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"分委会职务",
subUrl:'/branchposition',
param:[],
bindBiz:setEnumInterface(enumConfig.BRANCHPOSITION)
defaultParam:enumConfig.BRANCHPOSITION,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"下载专区分类",
subUrl:'/dwtype',
param:[],
bindBiz:setEnumInterface(enumConfig.DWTYPE)
defaultParam:enumConfig.DWTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"民族",
subUrl:'/nation',
param:[],
bindBiz:setEnumInterface(enumConfig.NATION)
defaultParam:enumConfig.NATION,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"证件类型",
subUrl:'/documenttype',
param:[],
bindBiz:setEnumInterface(enumConfig.DOCUMENTTYPE)
defaultParam:enumConfig.DOCUMENTTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"单位信息类型",
subUrl:'/unitinfotype',
param:[],
bindBiz:setEnumInterface(enumConfig.UNITINFOTYPE)
defaultParam:enumConfig.UNITINFOTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"动态资讯类型列表",
subUrl:'/dongtaizixuntype',
param:[],
bindBiz:zhengCeZiXunLeiXing()
bindBiz:publicBiz.zhengCeZiXunLeiXing
},
{
apiName:"通知公告类型",
subUrl:'/tongzhigonggaotype',
param:[],
bindBiz:setEnumInterface(enumConfig.TONGZHIGONGGAO)
defaultParam:enumConfig.TONGZHIGONGGAO,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"验证码类型",
subUrl:'/codetype',
param:[],
bindBiz:setEnumInterface(enumConfig.CODETYPE)
defaultParam:enumConfig.CODETYPE,
bindBiz:publicBiz.setEnumInterface
},
],
}
function zhengCeZiXunLeiXing() {
let conf = {};
conf[enumConfig.DONGTAIZIXUNSUBTYPE.政策动向] = "Policy Tendence";
conf[enumConfig.DONGTAIZIXUNSUBTYPE.学会动态] = "Assoclation dynamics";
conf[enumConfig.DONGTAIZIXUNSUBTYPE.行业风采] = "Industry style";
let dataList = [];
for (let key in enumConfig.DONGTAIZIXUNSUBTYPE) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
let value = enumConfig.DONGTAIZIXUNSUBTYPE[key];
dataList.push({key:keyStr, value, keyEng:conf[value]});
}
{
apiName:"会员缴费列表类型",
subUrl:'/ispay',
param:[],
defaultParam:enumConfig.ISPAYENUM,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"支付方式",
subUrl:'/paytype',
param:[],
defaultParam:enumConfig.PAYMENTTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
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";
import * as publicRouter from "./public/router";
import * as memberRouter from "./member/router";
import * as officalWebsiteRouter from "./officalWebsite/router";
import * as orderRouter from "./order/router";
import * as asyncHandler from 'express-async-handler';
const Look = false;//true更新文档
const Look = true;//true更新文档
export async function setRouter(httpServer){
if (Look) {
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(memberRouter.FirstName, memberRouter.Config, memberRouter.FirstRouter);//用户路由
await initDoc(officalWebsiteRouter.FirstName, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter);//官网路由
// await initDoc(memberRouter.FirstName, memberRouter.Config, memberRouter.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, publicRouter.Config, publicRouter.FirstRouter);//公用组件
await analysisRouter(httpServer, memberRouter.Config, memberRouter.FirstRouter);//用户路由
await analysisRouter(httpServer, officalWebsiteRouter.Config, officalWebsiteRouter.FirstRouter);//官网路由
await analysisRouter(httpServer, orderRouter.Config, orderRouter.FirstRouter);//会费相关
}
async function analysisRouter(httpServer, config, firstRouter) {
for (let modelKey in config) {
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) => {
let chackObjectList = [];
let checkStringMap = {};
......@@ -66,10 +69,8 @@ async function analysisRouter(httpServer, config, firstRouter) {
funcParam[key] = eccResult[key];
}
}
let result;
if (firstRouter == '/public') result = await bindBiz;
else result = await bindBiz(funcParam);
if (defaultParam) funcParam["defaultParam"] = defaultParam;
let result = await bindBiz(funcParam);
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