Commit 01d1bdf4 by chenjinjing

no message

parent 7bafbdde
...@@ -168,28 +168,38 @@ export async function getPaid({name, memberType, documentId, phone, mail, joinSt ...@@ -168,28 +168,38 @@ export async function getPaid({name, memberType, documentId, phone, mail, joinSt
} }
if (memberLevel.length) selectParam.memberLevel = {"$in":memberLevel}; if (memberLevel.length) selectParam.memberLevel = {"$in":memberLevel};
const SelectFiles = ["userId", "memberState", "unitName", "name", "loginId", "phone", "joinTime", "memberType", "lifespanStartTime", "lifespanEndTime", "memberLevel"]; const SelectFiles = ["userId", "memberState", "unitName", "name", "joinTime", "memberLevel", "individualMemberType", "unitMemberType",
"lifespanStartTime", "lifespanEndTime"];
let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, SelectFiles, {joinTime:-1}, pageNumber); let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, SelectFiles, {joinTime:-1}, pageNumber);
let dataCount = await findCount(TABLEENUM.用户表, selectParam); let dataCount = await findCount(TABLEENUM.用户表, selectParam);
let dataList = []; let dataList = [];
const itemFiles = ["userId", "memberState", "unitName", "name", "loginId", "phone", "joinTime", "memberType", "individualMemberType", "unitMemberType"]; const itemFiles = ["userId", "memberState", "unitName", "name", "joinTime", "memberType", "memberLevel", "lifespanTime", "nextPayment", "money"];
dbList.forEach(info => { for (let i = 0; i < dbList.length; i++) {
let info = dbList[i];
let item:any = extractData(info, itemFiles); let item:any = extractData(info, itemFiles);
item.lifespanTime = `${moment(info.lifespanStartTime).format("YYYY-MM-DD")}${moment(info.lifespanEndTime).format("YYYY-MM-DD")}`; item.lifespanTime = `${moment(info.lifespanStartTime).format("YYYY-MM-DD")}${moment(info.lifespanEndTime).format("YYYY-MM-DD")}`; //会员有效期
item.nextLifespanTime = "大于90天"; item.nextPayment = moment(info.lifespanEndTime).format("YYYY-MM-DD"); //下次缴费时间
// item.nextLifespanTime = "大于90天";
item.joinTime = moment(item.joinTime).format("YYYY-MM-DD"); item.joinTime = moment(item.joinTime).format("YYYY-MM-DD");
item.memberState = changeEnumValue(MEMBERSTATE, item.memberState); item.memberState = changeEnumValue(MEMBERSTATE, item.memberState);
item.memberLevel = changeEnumValue(MEMBERLEVEL, memberLevel);
if(item.individualMemberType) { if(item.individualMemberType) {
item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.individualMemberType); item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.individualMemberType);
} }
if(item.unitMemberType) { if(item.unitMemberType) {
item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.unitMemberType); item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.unitMemberType);
} }
// item.memberType = changeEnumValue(MEMBERTYPE, item.memberType);
dataList.push(item); let orderDbList = await find(TABLEENUM.订单表, {userId:info.userId}, ["money"])
// state 缴费状态
orderDbList.forEach(orderItem => {
item.money = orderItem.money;
}); });
dataList.push(item);
};
return {dataList, dataCount}; return {dataList, dataCount};
} }
...@@ -247,7 +257,6 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi ...@@ -247,7 +257,6 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
if (mail) selectParam.mail = mail; if (mail) selectParam.mail = mail;
if (memberLevel.length) selectParam.memberLevel = {"$in":memberLevel}; if (memberLevel.length) selectParam.memberLevel = {"$in":memberLevel};
if (name) { if (name) {
if (!selectParam["$and"]) selectParam["$and"] = [];
selectParam["$or"] = [ selectParam["$or"] = [
{unitName:{"$regex":`${name}`}}, {unitName:{"$regex":`${name}`}},
{name:{"$regex":`${name}`}} {name:{"$regex":`${name}`}}
...@@ -268,8 +277,8 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi ...@@ -268,8 +277,8 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
} }
} }
const SelectFiles = ["userId", "memberState", "unitName", "loginId", "phone", "joinTime", "memberType", "lifespanStartTime", "lifespanEndTime", "individualMemberType",
const SelectFiles = ["userId", "memberState", "unitName", "loginId", "phone", "joinTime", "memberType", "lifespanStartTime", "lifespanEndTime"]; "unitMemberType"];
// let dbList = await findToPage(TABLEENUM.用户表, selectParam, SelectFiles, pageNumber, 10); // let dbList = await findToPage(TABLEENUM.用户表, selectParam, SelectFiles, pageNumber, 10);
let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, SelectFiles, {joinTime:-1}, pageNumber); let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, SelectFiles, {joinTime:-1}, pageNumber);
let dataCount = await findCount(TABLEENUM.用户表, selectParam); let dataCount = await findCount(TABLEENUM.用户表, selectParam);
...@@ -299,7 +308,7 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi ...@@ -299,7 +308,7 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
/** /**
* 会费管理-欠费 success * 会费管理-欠费 success 未缴费
* @param name 名称关键字:个人会员匹配真实姓名,单位会员匹配单位名称 * @param name 名称关键字:个人会员匹配真实姓名,单位会员匹配单位名称
* @param memberType 会员类别 unitMemberType、individualMemberType 多选 * @param memberType 会员类别 unitMemberType、individualMemberType 多选
* 会员类别:个人【个人会员、专业会员】单位【院校、机构、其他】返回前端枚举:MEMBERTYPEECCENUM * 会员类别:个人【个人会员、专业会员】单位【院校、机构、其他】返回前端枚举:MEMBERTYPEECCENUM
...@@ -357,34 +366,45 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai ...@@ -357,34 +366,45 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai
if (mail) selectParam.mail = mail; if (mail) selectParam.mail = mail;
if (memberLevel.length) selectParam.memberLevel = {"$in":memberLevel}; if (memberLevel.length) selectParam.memberLevel = {"$in":memberLevel};
const SelectFiles = ["userId", "memberState", "unitName", "loginId", "phone", "joinTime", "memberType", "lifespanStartTime", "lifespanEndTime", "name"]; // const SelectFiles = ["userId", "memberState", "unitName", "loginId", "phone", "joinTime", "memberType", "lifespanStartTime", "lifespanEndTime", "name", "individualMemberType", "unitMemberType"];
const SelectFiles = ["userId", "memberState", "individualMemberType", "unitMemberType", "unitName", "name", "memberLevel", "joinTime"];
let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, SelectFiles, {joinTime:-1}, pageNumber); let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, SelectFiles, {joinTime:-1}, pageNumber);
// let dbList = await findToPage(TABLEENUM.用户表, selectParam, SelectFiles, pageNumber, 10); // let dbList = await findToPage(TABLEENUM.用户表, selectParam, SelectFiles, pageNumber, 10);
let dataCount = await findCount(TABLEENUM.用户表, selectParam); let dataCount = await findCount(TABLEENUM.用户表, selectParam);
let dataList = []; let dataList = [];
const itemFiles = ["userId", "memberState", "unitName", "loginId", "phone", "joinTime", "name", "individualMemberType", "unitMemberType"]; const itemFiles = ["userId", "memberState", "individualMemberType", "unitMemberType", "unitName", "name", "memberLevel", "joinTime", "orderCycleStart", "money"];
dbList.forEach(info => { for (let i = 0; i < dbList.length; i++) {
let info = dbList[i];
let item:any = extractData(info, itemFiles); let item:any = extractData(info, itemFiles);
item.lifespanTime = `${moment(info.lifespanEndTime).format("YYYY-MM-DD")}`; // item.lifespanTime = `${moment(info.lifespanEndTime).format("YYYY-MM-DD")}`;
if (info.lifespanEndTime > ( NowMs - (30 * 24 * 3600 * 1000) ) ) item.nextLifespanTime = "过期30天内"; // if (info.lifespanEndTime > ( NowMs - (30 * 24 * 3600 * 1000) ) ) item.nextLifespanTime = "过期30天内";
else { // else {
item.nextLifespanTime = "过期1年及以上"; // item.nextLifespanTime = "过期1年及以上";
} // }
item.joinTime = moment(item.joinTime).format("YYYY-MM-DD"); item.joinTime = moment(item.joinTime).format("YYYY-MM-DD");
item.memberState = changeEnumValue(MEMBERSTATE, item.memberState); item.memberState = changeEnumValue(MEMBERSTATE, item.memberState);
item.memberLevel = changeEnumValue(MEMBERLEVEL, item.memberLevel);
if(item.individualMemberType) { if(item.individualMemberType) {
item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.individualMemberType); item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.individualMemberType);
} }
if(item.unitMemberType) { if(item.unitMemberType) {
item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.unitMemberType); item.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.unitMemberType);
} }
// item.memberType = changeEnumValue(MEMBERTYPE, item.memberType);
dataList.push(item); let orderDbList = await find(TABLEENUM.订单表, {userId:info.userId}, ["orderCycleStart", "money"])
if (!item.money) item.money = 0;
orderDbList.forEach(orderItem => {
item.money += orderItem.money;
if (!item.orderCycleStart) item.orderCycleStart = new Date(orderItem.orderCycleStart).getFullYear();
else item.orderCycleStart += ` ${new Date(orderItem.orderCycleStart).getFullYear()}`;
}); });
dataList.push(item);
};
return {dataList, dataCount}; return {dataList, dataCount};
} }
...@@ -520,7 +540,7 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail, ...@@ -520,7 +540,7 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail,
let dataList = []; let dataList = [];
// const itemFiles = ["userId", "memberState", "loginId", "phone", "joinTime", "memberType", "unitName"]; // const itemFiles = ["userId", "memberState", "loginId", "phone", "joinTime", "memberType", "unitName"];
dbList.forEach(info => { dbList.forEach(info => {
let dataInfo = { let dataInfo:any = {
userId:info.userId, userId:info.userId,
memberState:changeEnumValue(MEMBERSTATE, info.memberState), memberState:changeEnumValue(MEMBERSTATE, info.memberState),
loginId:info.loginId, loginId:info.loginId,
...@@ -533,10 +553,10 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail, ...@@ -533,10 +553,10 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail,
}; };
if(info.individualMemberType) { if(info.individualMemberType) {
info.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.individualMemberType); dataInfo.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.individualMemberType);
} }
if(info.unitMemberType) { if(info.unitMemberType) {
info.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.unitMemberType); dataInfo.memberType = changeEnumValue(MEMBERTYPEECCENUM, info.unitMemberType);
} }
dataList.push(dataInfo); dataList.push(dataInfo);
......
...@@ -429,18 +429,6 @@ export async function individualMemberDetails({id}) { ...@@ -429,18 +429,6 @@ export async function individualMemberDetails({id}) {
* @returns * @returns
*/ */
export async function unitMemberNotSaved({form, keyanForm, id}) { export async function unitMemberNotSaved({form, keyanForm, id}) {
const keyanFormItemConfig = {
startTime: {type:'Number'},
endTime: {type:'Number'},
describe: {type:'String'}
};
if (keyanForm) {
keyanForm.forEach(item => {
eccFormParam("注册单位会员第二步保存未提交", keyanFormItemConfig, item );
});
}
let selectUserFiles = ["userId", "registerFlow", "userRegisterState"]; let selectUserFiles = ["userId", "registerFlow", "userRegisterState"];
let oldInfo = await findOnce(TABLEENUM.用户表, {userId:id, memberType:MEMBERTYPE.单位会员, isAdmin:STATE.}, selectUserFiles); let oldInfo = await findOnce(TABLEENUM.用户表, {userId:id, memberType:MEMBERTYPE.单位会员, isAdmin:STATE.}, selectUserFiles);
if (!oldInfo || !oldInfo.userId) throw new BizError(ERRORENUM.目标数据不存在); if (!oldInfo || !oldInfo.userId) throw new BizError(ERRORENUM.目标数据不存在);
...@@ -458,6 +446,18 @@ export async function unitMemberNotSaved({form, keyanForm, id}) { ...@@ -458,6 +446,18 @@ export async function unitMemberNotSaved({form, keyanForm, id}) {
form.saveUnsubmitted = STATE.; form.saveUnsubmitted = STATE.;
await updateOneData(TABLEENUM.用户表, {userId:id, saveUnsubmitted:STATE.}, form); await updateOneData(TABLEENUM.用户表, {userId:id, saveUnsubmitted:STATE.}, form);
await deleteManyData(TABLEENUM.单位所获得科研成果表, {userId:id});
let addList = [];
for (let i = 0; i < keyanForm.length; i++) {
let {startTime, endTime, describe} = keyanForm[i];
addList.push({
id:sysTools.generateSystemId(TABLEENUM.单位所获得科研成果表, id),
userId:id,
startTime, endTime, describe
});
}
await addManyData(TABLEENUM.单位所获得科研成果表, addList);
return sysTools.successResult(); return sysTools.successResult();
} }
......
...@@ -259,8 +259,17 @@ export const Config = { ...@@ -259,8 +259,17 @@ export const Config = {
danWeiJianJie:{type:'String', desc:'单位简介', notMustHave:true}, danWeiJianJie:{type:'String', desc:'单位简介', notMustHave:true},
} }
}, },
// {
// key:"keyanForm", type:"[Object]", desc:"单位所获得科研成果表单", isNull:true
// },
{
key:"keyanForm", type:"[Object]", sub:
{ {
key:"keyanForm", type:"[Object]", desc:"单位所获得科研成果表单", isNull:true startTime:{type:'Number', desc:'开始时间', notMustHave:true},
endTime:{type:'Number', desc:'结束时间', notMustHave:true},
describe:{type:'String', desc:'科研描述', notMustHave:true},
},
desc:"单位所获得科研成果表单"
}, },
{ {
key:"id", type:"String", desc:"会员id" key:"id", type:"String", desc:"会员id"
...@@ -276,32 +285,32 @@ export const Config = { ...@@ -276,32 +285,32 @@ export const Config = {
{ {
key:"form", type:"Object", sub: key:"form", type:"Object", sub:
{ {
name:{type:'String', desc:'真实姓名'}, name:{type:'String', desc:'真实姓名', notMustHave:true},
sex:{type:'Number', desc:'性别'}, sex:{type:'Number', desc:'性别', notMustHave:true},
documentType:{type:'Number', desc:'证件类型'}, documentType:{type:'Number', desc:'证件类型', notMustHave:true},
documentId:{type:'String', desc:'证件号码'}, documentId:{type:'String', desc:'证件号码', notMustHave:true},
birth:{type:'Number', desc:'出生年月'}, birth:{type:'Number', desc:'出生年月', notMustHave:true},
nation:{type:'Number', desc:'民族'}, nation:{type:'Number', desc:'民族', notMustHave:true},
sheng:{type:'String', desc:'省'}, sheng:{type:'String', desc:'省', notMustHave:true},
shi:{type:'String', desc:'市'}, shi:{type:'String', desc:'市', notMustHave:true},
qu:{type:'String', desc:'区'}, qu:{type:'String', desc:'区', notMustHave:true},
addres:{type:'String', desc:'通信地址'}, addres:{type:'String', desc:'通信地址', notMustHave:true},
education:{type:'Number', desc:'学历'}, education:{type:'Number', desc:'学历', notMustHave:true},
photoUrl:{type:'String', desc:'蓝底证件照'}, photoUrl:{type:'String', desc:'蓝底证件照', notMustHave:true},
unitName:{type:'String', desc:'工作单位'}, unitName:{type:'String', desc:'工作单位', notMustHave:true},
duties:{type:'String', desc:'职务'}, duties:{type:'String', desc:'职务', notMustHave:true},
workTitle:{type:'String', desc:'职称'}, workTitle:{type:'String', desc:'职称', notMustHave:true},
profCategory:{type:'[Number]', desc:'专业类别'}, profCategory:{type:'[Number]', desc:'专业类别', notMustHave:true},
studyResume:{type:'String', desc:'学习简历'}, studyResume:{type:'String', desc:'学习简历', notMustHave:true},
workResume:{type:'String', desc:'工作简历'}, workResume:{type:'String', desc:'工作简历', notMustHave:true},
profAchievement:{type:'String', desc:'专业成果'}, profAchievement:{type:'String', desc:'专业成果', notMustHave:true},
otherEMP:{type:'String', desc:'在其他社会组织任职情况'}, otherEMP:{type:'String', desc:'在其他社会组织任职情况', notMustHave:true},
otherPROF:{type:'String', desc:'其他与本学会专业有关的情况'}, otherPROF:{type:'String', desc:'其他与本学会专业有关的情况', notMustHave:true},
cardUrlJust:{type:'String', desc:'个人身份证扫描件正面'}, cardUrlJust:{type:'String', desc:'个人身份证扫描件正面', notMustHave:true},
cardUrlBack:{type:'String', desc:'个人身份证扫描件反面'}, cardUrlBack:{type:'String', desc:'个人身份证扫描件反面', notMustHave:true},
academicCERTUrl:{type:'String', desc:'个人学历证明扫描件'}, academicCERTUrl:{type:'String', desc:'个人学历证明扫描件', notMustHave:true},
professionalCERTUrl:{type:'String', desc:'个人工作证明扫描件'}, professionalCERTUrl:{type:'String', desc:'个人工作证明扫描件', notMustHave:true},
auxiliaryMaterial:{type:'[String]', desc:'论文发表等证明工作成果或成绩的材料'}, auxiliaryMaterial:{type:'[String]', desc:'论文发表等证明工作成果或成绩的材料', notMustHave:true},
} }
}, },
{ {
......
...@@ -30,7 +30,7 @@ export async function setRouter(httpServer){ ...@@ -30,7 +30,7 @@ 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 initDoc(orderRouter.FirstName, orderRouter.Config, orderRouter.FirstRouter);//会费相关
......
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