Commit a0c994c3 by chenjinjing

20250227日修改上传

parent 7d47315d
......@@ -358,20 +358,30 @@ export async function outPutApply() {
//==========================资料变更
/**
* 列表 success
* @param userId
* 资料审批列表 success
* @param name 名称关键词
* @param changeState 审核状态
* @param unitMemberType 会员类别
* @param uscc 统一信用代码
* @param legalPerson 法人代表
* @param legalPersonPhone 法人联系电话
* @param legalPersonMail 法人邮箱
* @returns
*/
export async function infomationChangeList({name, changeState, pageSize, pageNumber}) {
export async function infomationChangeList({name, changeState, unitMemberType, uscc, legalPerson, legalPersonPhone, legalPersonMail, pageSize, pageNumber}) {
let selectParam:any = {memberType:MEMBERTYPE.单位会员, infoChangeId:{"$ne":null}};
let selectHistoryParam:any = {}
if (name) {
selectParam.unitName = {"$regex":name}
}
if (changeState) {
selectParam.infoChangeOptionType = changeState;
}
if (unitMemberType) {
selectParam
}
let dbList = await findToSortToPage(TABLEENUM.用户表, selectParam, ["userId", "memberType", "userId", "unitName", "infoChangeId", "uscc", "legalPerson", "unitMemberType", "yuanXiaoBanXueLeiXing"], {infoChangeMs:-1}, pageNumber, pageSize);
let dataCount = await findCount(TABLEENUM.用户表, selectParam);
......@@ -382,7 +392,7 @@ export async function infomationChangeList({name, changeState, pageSize, pageNum
let itemFileList = ["unitName","uscc", "legalPerson", "yuanXiaoBanXueLeiXing", "unitMemberType", "uusinessLicenseUrl", "applicationForm", "desc", "rejectRemarks", "infoChangeOptionType", "infoChangeId", "yuanXiaoBanXueLeiXing", "legalPersonMail", "legalPersonPhone"];
let logInfo = await findOnceToSort(TABLEENUM.资料变更审批历史表, {infoChangeId:info.infoChangeId}, {createTimeMs:-1}, itemFileList);
let yuanXiaoBanXueLeiXing= logInfo.yuanXiaoBanXueLeiXing || info.yuanXiaoBanXueLeiXing;
let item = {
let item = {
infoChangeOptionType:changeEnumValue(INFOCHANGEAPPLYTYPE, logInfo.infoChangeOptionType),
infoChangeId:info.infoChangeId,
unitName:logInfo.unitName,
......@@ -413,6 +423,7 @@ export async function infomationChangeList({name, changeState, pageSize, pageNum
if (logInfo.yuanXiaoBanXueLeiXing != info.yuanXiaoBanXueLeiXing) item.yuanXiaoBanXueLeiXingChange = true;
if (logInfo.legalPersonMail != info.legalPersonMail) item.legalPersonMailChange = true;
if (logInfo.legalPersonPhone != info.legalPersonPhone) item.legalPersonPhoneChange = true;
if (item.infoChangeOptionType == "驳回修改") item.infoChangeOptionType = "已驳回"; // 2025.02.25【驳回修改】文字修改为【已驳回】
dataList.push(item);
}
......@@ -478,8 +489,8 @@ export async function infomationChangeOut({infoChangeId, rejectRemarks}) {
let onceData = await findOnceToSort(TABLEENUM.资料变更审批历史表, selectParam, {createTimeMs:-1},fileList);
if (!onceData || !onceData.infoChangeId) throw new BizError(ERRORENUM.目标数据不存在);
let userInfo = await findOnce(TABLEENUM.用户表, {userId:onceData.userId}, ["infoChangeId", "infoChangeOptionType"]);
if (userInfo.infoChangeOptionType == INFOCHANGEAPPLYTYPE.驳回修改) {
// let userInfo = await findOnce(TABLEENUM.用户表, {userId:onceData.userId}, ["infoChangeId", "infoChangeOptionType"]);
if (onceData.infoChangeOptionType == INFOCHANGEAPPLYTYPE.驳回修改) {
throw new BizError(ERRORENUM.不可重复提交);
}
......@@ -543,15 +554,46 @@ export async function infomationChangeLog({infoChangeId}) {
infoChangeOptionType = "审核-通过";
}
let updateInfoStr = "修改了:";
if (info.unitName != userInfo.unitName) updateInfoStr += "单位名称";
if (info.uscc != userInfo.uscc) updateInfoStr += "统一信用代码";
if (info.unitMemberType != userInfo.unitMemberType) updateInfoStr += "单位类型";
if (info.legalPerson != userInfo.legalPerson) updateInfoStr += "法人代表";
if (info.yuanXiaoBanXueLeiXing != userInfo.yuanXiaoBanXueLeiXing) updateInfoStr += "办学类型";
if (info.legalPersonMail != userInfo.legalPersonMail) updateInfoStr += "法人联系邮箱";
if (info.legalPersonPhone != userInfo.legalPersonPhone) updateInfoStr += "法人联系电话";
// let updateInfoStr = "修改了:";
// if (info.unitName != userInfo.unitName) updateInfoStr += "单位名称";
// if (info.uscc != userInfo.uscc) updateInfoStr += "统一信用代码";
// if (info.unitMemberType != userInfo.unitMemberType) updateInfoStr += "单位类型";
// if (info.legalPerson != userInfo.legalPerson) updateInfoStr += "法人代表";
// if (info.yuanXiaoBanXueLeiXing != userInfo.yuanXiaoBanXueLeiXing) updateInfoStr += "办学类型";
// if (info.legalPersonMail != userInfo.legalPersonMail) updateInfoStr += "法人联系邮箱";
// if (info.legalPersonPhone != userInfo.legalPersonPhone) updateInfoStr += "法人联系电话";
let updateConf = {
"unitName":"单位名称",
"uscc":"统一信用代码",
"unitMemberType":"单位类型",
"legalPerson":"法人代表",
"yuanXiaoBanXueLeiXing":"办学类型",
"legalPersonMail":"法人联系邮箱",
"legalPersonPhone":"法人联系电话"
};
let updateAddress = "";
let updateInfo = []
for (let key in updateConf) {
/**修改前 */
let updateBeforeInfoStr = ""
/**修改后 */
let updateInfoStr = "";
if (info[key] != userInfo[key]) {
if (!userInfo[key]) updateBeforeInfoStr = "修改前:-";
else updateBeforeInfoStr = `修改后:${userInfo[key]}`;
if (!info[key]) updateInfoStr = "修改后:-";
else updateInfoStr = `修改后:${info[key]}`;
updateAddress += `${updateConf[key]}、`;
updateInfo.push({
updateBeforeInfoStr, //修改前
updateInfoStr, //修改后
updateAddress:updateConf[key] //修改位置
});
}
}
let item = {
infoChangeOptionType,
......@@ -565,11 +607,12 @@ export async function infomationChangeLog({infoChangeId}) {
yuanXiaoBanXueLeiXing:info.yuanXiaoBanXueLeiXing,
desc,
time:moment(info.createTimeMs).format("YYYY-MM-DD HH:mm:SS"),
updateInfoStr
updateAddress: updateAddress.replace(/、([^]*)$/, "$1"), //去除末尾的、
updateInfo
};
dataList.push(item);
}
return {dataList};
}
......
......@@ -66,12 +66,12 @@ export async function pendingReviewList({name, memberType, documentId, phone, ma
selectParam["$or"].push(
{"$or":[
{ memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.待审核, registerFlow:REGISTERFLOW.完成第二步 },
{ memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
// { memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
{ memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.重新提交, registerFlow:REGISTERFLOW.完成第二步 }
]},
{"$or":[
{ memberType:MEMBERTYPE.单位会员, userRegisterState:USERREGISTERSTATE.待审核, registerFlow:REGISTERFLOW.完成第三步 },
{ memberType:MEMBERTYPE.单位会员, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
// { memberType:MEMBERTYPE.单位会员, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
{ memberType:MEMBERTYPE.单位会员, userRegisterState:USERREGISTERSTATE.重新提交, registerFlow:REGISTERFLOW.完成第三步 },
]}
);
......@@ -81,7 +81,7 @@ export async function pendingReviewList({name, memberType, documentId, phone, ma
// selectParam.memberType = MEMBERTYPE.个人会员;
selectParam["$or"].push(
{ memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.待审核, registerFlow:REGISTERFLOW.完成第二步 },
{ memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
// { memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
{ memberType:MEMBERTYPE.个人会员, userRegisterState:USERREGISTERSTATE.重新提交, registerFlow:REGISTERFLOW.完成第二步 }
);
}
......@@ -89,7 +89,7 @@ export async function pendingReviewList({name, memberType, documentId, phone, ma
// selectParam.unitMemberType = {"$in":memberType};
selectParam["$or"].push(
{ unitMemberType:{"$in":memberType}, userRegisterState:USERREGISTERSTATE.待审核, registerFlow:REGISTERFLOW.完成第三步 },
{ unitMemberType:{"$in":memberType}, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
// { unitMemberType:{"$in":memberType}, userRegisterState:USERREGISTERSTATE.驳回修改, registerFlow:REGISTERFLOW.完成第一步 },
{ unitMemberType:{"$in":memberType}, userRegisterState:USERREGISTERSTATE.重新提交, registerFlow:REGISTERFLOW.完成第三步 },
);
}
......
......@@ -77,6 +77,7 @@ export async function getMemberData({userId}) {
if(topInfo.userRegisterState == USERREGISTERSTATE.通过) topInfo.userRegisterState = "已入会";
else topInfo.userRegisterState = "未入会";
// if(topInfo.memberLevel) topInfo.memberLevel = changeEnumValue(MEMBERLEVEL, topInfo.memberLevel);
// if(baseInfo.sex) baseInfo.sex = changeEnumValue(SEX, baseInfo.sex);
// if(baseInfo.documentType) baseInfo.documentType = changeEnumValue(DOCUMENTTYPE, baseInfo.documentType);
......@@ -84,6 +85,10 @@ export async function getMemberData({userId}) {
// if(majorInfo.profCategory) majorInfo.profCategory = changeEnumValue(PROFCATEGORY, majorInfo.profCategory);
// if(majorInfo.unitMemberType) majorInfo.unitMemberType = changeEnumValue(UNITMEMBERTYPE, majorInfo.unitMemberType);
// if(majorInfo.yuanXiaoBanXueLeiXing) majorInfo.yuanXiaoBanXueLeiXing = changeEnumValue(BANXUELEIXING, majorInfo.yuanXiaoBanXueLeiXing);
if(baseInfo.sheng) baseInfo.shengName = getCityNameByCode(baseInfo.sheng);
if(baseInfo.shi) baseInfo.shiName = getCityNameByCode(baseInfo.shi);
if(baseInfo.qu) baseInfo.quName = getCityNameByCode(baseInfo.qu);
return {topInfo, baseInfo, majorInfo, otherAttachment};
}
......@@ -424,6 +429,7 @@ export async function memberlevelUpdate({memberLevel, userId}) {
* 是否需要补充用户信息
* 判断注册资料是否完整,不完整返回false(需要补充用户信息)
* @param userId 登录的userid
* @param isChangeLevel 是否职务变更
*/
export async function isNeedSupplement({userId}) {
let oldInfo = await findOnce(TABLEENUM.用户表, {userId});
......@@ -434,9 +440,22 @@ export async function isNeedSupplement({userId}) {
"其他附件": ["cardUrlJust", "cardUrlBack", "academicCERTUrl"]
};
/**职务变更 */
// const ZyRequiredConf = {
// "资料变更填写字段":["unitName", "uscc", "legalPerson", "legalPersonPhone", "legalPersonMail", "unitMemberType", "yuanXiaoBanXueLeiXing", "uusinessLicenseUrl",
// "applicationForm"]
// }
// const DwRequiredConf = {
// "基本信息": ["sheng", "shi", "qu", "addres", "contactPerson", "contactPersonDuties", "contactPersonPhone"],
// "单位信息": ["yuanXiaoZhuGuanBuMen", "yuanXiaoFuZeRen", "yuanXiaoFuZeRenZhiWu",
// "yuanXiaoFuZeRenDianHua", "yuanXiaoBanGongFuZeRen", "yuanXiaoBanGongFuZeRenDianHua", "ZhuYaoFuZeRenYouXiang", "yuanXiaoKeYanFuZeRen",
// "yuanXiaoKeYanFuZeRenDianHua", "jiaoXueFuZeRenXinMing", "jiaoXueFuZeRenDianHua"]
// };
/**资料变更 */
const DwRequiredConf = {
"基本信息": ["unitName", "sheng", "shi", "qu", "addres", "uscc", "legalPerson", "legalPersonPhone", "legalPersonMail", "contactPerson",
"contactPersonDuties", "contactPersonPhone", "uusinessLicenseUrl"],
"contactPersonDuties", "contactPersonPhone", "uusinessLicenseUrl", "applicationForm"],
"单位信息": ["unitMemberType", "yuanXiaoBanXueLeiXing", "yuanXiaoZhuGuanBuMen", "yuanXiaoFuZeRen", "yuanXiaoFuZeRenZhiWu",
"yuanXiaoFuZeRenDianHua", "yuanXiaoBanGongFuZeRen", "yuanXiaoBanGongFuZeRenDianHua", "ZhuYaoFuZeRenYouXiang", "yuanXiaoKeYanFuZeRen",
"yuanXiaoKeYanFuZeRenDianHua", "jiaoXueFuZeRenXinMing", "jiaoXueFuZeRenDianHua"]
......@@ -449,6 +468,7 @@ export async function isNeedSupplement({userId}) {
let dwshzycjInfo = await findOnce(TABLEENUM.单位所获得科研成果表, {userId});
let infoCompleteData = {};
let isZwbgtxzd = {}; //职务变更判断资料变更重要字段是否填写完整,true:资料变更填写字段完整。false:资料变更填写字段不全。
let changeApplyType = CHANGEAPPLYTYPE.注册信息补充完成;
if (oldInfo.memberType == MEMBERTYPE.个人会员) {
for (let key in GrRequiredConf) {
......@@ -473,6 +493,7 @@ export async function isNeedSupplement({userId}) {
}
}
}
for (let i = 0; i < Dwshzycj.单位所获主要成绩及科研成果.length; i++) {
if (!dwshzycjInfo) {
infoCompleteData["单位所获主要成绩及科研成果"] = false;
......@@ -498,6 +519,37 @@ export async function isNeedSupplement({userId}) {
/**
* 职务变更-资料填写是否完整
* @param param0
* @returns
*/
export async function isZwbgtxzd({userId}) {
let oldInfo = await findOnce(TABLEENUM.用户表, {userId});
/**职务变更 */
const ZyRequiredConf = {
"资料变更填写字段":["unitName", "uscc", "legalPerson", "legalPersonPhone", "legalPersonMail", "unitMemberType", "yuanXiaoBanXueLeiXing", "uusinessLicenseUrl",
"applicationForm"]
}
let isZwbgtxzd = false; //职务变更判断资料变更重要字段是否填写完整,true:资料变更填写字段完整。false:资料变更填写字段不全。
let changeApplyType = CHANGEAPPLYTYPE.注册信息补充完成;
for (let key in ZyRequiredConf) {
for (let i = 0; i < ZyRequiredConf[key].length; i++) {
if(!oldInfo[ZyRequiredConf[key][i]]) {
isZwbgtxzd = false;
changeApplyType = CHANGEAPPLYTYPE.注册信息待补充
} else {
isZwbgtxzd = true;
}
}
}
return {isZwbgtxzd};
}
/**
* 个人会员用户注册信息补充
* @param userId 登录的userid
* @param form 补充的信息表单
......@@ -615,8 +667,10 @@ export async function infomationChangeUpdate({userId, unitName, uscc, legalPerso
let applyToSort = await findOnceToSort(TABLEENUM.资料变更审批历史表, {userId}, {createTimeMs:-1});
let infoChangeOptionType = INFOCHANGEAPPLYTYPE.待审批;
//新增了状态:驳回提交,当上次审批状态为驳回修改时,当前提交状态为驳回提交
if (applyToSort.infoChangeOptionType == INFOCHANGEAPPLYTYPE.驳回修改) infoChangeOptionType = INFOCHANGEAPPLYTYPE.驳回提交;
if (applyToSort) {
//新增了状态:驳回提交,当上次审批状态为驳回修改时,当前提交状态为驳回提交
if (applyToSort.infoChangeOptionType == INFOCHANGEAPPLYTYPE.驳回修改) infoChangeOptionType = INFOCHANGEAPPLYTYPE.驳回提交;
}
//添加日志
/**添加审批历史 */
......@@ -638,7 +692,7 @@ export async function infomationChangeUpdate({userId, unitName, uscc, legalPerso
createTimeMs:new Date().valueOf()
};
await updateOneData(TABLEENUM.用户表, {userId}, {infoChangeId:applyInfo.infoChangeId, infoChangeMs:new Date().valueOf(), infoChangeOptionType:INFOCHANGEAPPLYTYPE.待审批});
await updateOneData(TABLEENUM.用户表, {userId}, {infoChangeId:applyInfo.infoChangeId, infoChangeMs:new Date().valueOf(), infoChangeOptionType});
await addOneData(TABLEENUM.资料变更审批历史表, applyInfo);
return successResult();
......@@ -681,7 +735,7 @@ export async function infomationChangeInfo({userId}) {
legalPersonMail:infomationChangeHistoryInfo.legalPersonMail,
legalPersonPhone:infomationChangeHistoryInfo.legalPersonPhone,
};
if (infomationChangeHistoryInfo.infoChangeOptionType == INFOCHANGEAPPLYTYPE.待审批) {
if (infomationChangeHistoryInfo.infoChangeOptionType == INFOCHANGEAPPLYTYPE.待审批 || infomationChangeHistoryInfo.infoChangeOptionType == INFOCHANGEAPPLYTYPE.驳回提交) {
isUpdate = false;
}
else isUpdate = true;
......
......@@ -476,7 +476,7 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai
/**
* 线下付款 会费管理 success
* 后台上传 会费管理 success
* @param param0
*/
export async function offlinePayment({orderId, paymentNum, offlinePaymentUrl }) {
......
......@@ -416,7 +416,7 @@ export async function getInvoiceStatus({id}) {
paymentNum:weChartPR,
offlinePaymentUrl,
state:ORDERSTATE.已支付,
paymentMethod:PAYMENTTYPE.后台上传,
paymentMethod:PAYMENTTYPE.银行转账,
payTime:new Date().valueOf(),
confirmReceipt:RECEIPTCONFIRMATION.待确认,
invoiceMail,
......@@ -733,22 +733,23 @@ export async function refundOut({id, desc}) {
let { operationTime, operationBehavior, isReceiveMoney, remarks } = info;
let desc = "";
let operationBehaviorStr = "";
let operationBehaviorStr = changeEnumValue(ORDEREXAMINE, operationBehavior);
if (operationBehavior == ORDEREXAMINE.用户提交) desc = "未收到/已收到"; //线下付款
else {
if (isReceiveMoney) {
operationBehaviorStr = "不需退款";
desc = "未收到/已收到"
if (isReceiveMoney) { //判断是否收到款项
if (info.operationBehavior == ORDEREXAMINE.驳回) operationBehaviorStr = `${changeEnumValue(ORDEREXAMINE, info.operationBehavior)}"-需退款"`;
isReceiveMoney = "已收到"
} else {
operationBehaviorStr = "需退款";
desc = "已收到"
if (info.operationBehavior == ORDEREXAMINE.驳回) operationBehaviorStr = `${changeEnumValue(ORDEREXAMINE, info.operationBehavior)}"-不需退款"`;
isReceiveMoney = "未收到/已收到"
}
// desc = isReceiveMoney ? changeEnumValue(ISRECEIVE, ISRECEIVE.未收到款项_xg其他) : changeEnumValue(ISRECEIVE, ISRECEIVE.提供账户_zkh需退款_ykh)
}
}
let addInfo:any = {
operationTime,
// operationTime:moment(operationTime).format("YYYY-MM-DD HH:mm:SS"),
operationBehavior:operationBehaviorStr,
// operationBehavior:operationBehaviorStr,
operationBehavior:changeEnumValue(ORDEREXAMINE, operationBehavior),
desc,
other:remarks
};
......@@ -808,7 +809,7 @@ export async function reconfirm({id, weChartPR, offlinePaymentUrl, desc}) {
paymentNum:weChartPR,
offlinePaymentUrl,
state:ORDERSTATE.已支付,
paymentMethod:PAYMENTTYPE.后台上传,
paymentMethod:PAYMENTTYPE.银行转账, //后台上传改成银行转账
payTime:new Date().valueOf(),
confirmReceipt:RECEIPTCONFIRMATION.待确认,
desc
......
......@@ -3,13 +3,15 @@
*/
import moment = require("moment");
import { ARTICLEPOSITION, BANNERPOSITION, BRANCHPOSITION, CODPARTICIPANT, DANGJIANVIDEO, DONGTAIZIXUNSUBTYPE, IMGEDITFUNENUM, MEMBERTYPE, PARTYBUILDSUBTYPEENUM, PARTYBUILDTYPEENUM, STATE, TONGZHIGONGGAO, UNITMEMBERTYPE, XUEHUILINGDAOZHIWEI } from "../config/enum";
import { ARTICLEPOSITION, BANNERPOSITION, BRANCHPOSITION, CODPARTICIPANT, DANGJIANVIDEO, DONGTAIZIXUNSUBTYPE, IMGEDITFUNENUM, INDIVIDUALMEMBERTYPE, MEMBERTYPE, PARTYBUILDSUBTYPEENUM, PARTYBUILDTYPEENUM, PAYMENTSTATUS, STATE, TONGZHIGONGGAO, UNITMEMBERTYPE, USERREGISTERSTATE, XUEHUILINGDAOZHIWEI } from "../config/enum";
import { TABLEENUM } from "../data/models/model";
import { find, findCount, findOnce, findToPage, findToSort, findToSortToPage } from "../data/select";
import { extractData } from "../util/piecemeal";
import { changeEnumValue, eccEnumValue } from "../util/verificationEnum";
import { BizError } from "../util/bizError";
import { ERRORENUM } from "../config/errorEnum";
import { getCityNameByCode } from "../config/cityConfig";
import { getEdition } from "../tools/system";
export async function banner() {
let result = {
......@@ -763,22 +765,100 @@ export async function xueXiYuanDiShiPinType() {
return {dataList};
}
export async function zhengShuChaXun({memberType, name, carId }) {
/**原证书查询,跳出弹窗显示到期时间 */
// export async function zhengShuChaXun({memberType, name, carId }) {
// eccEnumValue("证书查询", "会员类型", MEMBERTYPE, memberType);
// let selectParam = {};
// if (memberType == MEMBERTYPE.个人会员) selectParam = {name, documentId:carId};
// else selectParam = {unitName:name, uscc:carId}
// let userInfo = await findOnce(TABLEENUM.用户表, selectParam, ["userId", "lifespanEndTime", "lifespanStartTime", "unitMemberType"]);
// if (!userInfo || !userInfo.userId) return {success:false, msg:"无法查询到该信息,请联系学会工作人员"};
// if (userInfo.unitMemberType == UNITMEMBERTYPE.院校) {
// let diffYearNum = moment().diff(moment(userInfo.lifespanStartTime), 'years');
// let startTimeStr = moment(userInfo.lifespanStartTime).add(diffYearNum, 'years').format("YYYY年MM月DD日");
// let endTimeStr = moment(userInfo.lifespanStartTime).add(diffYearNum+1, 'years').format("YYYY年MM月DD日");
// return {success:true, msg:`证书有效期至${endTimeStr}`};
// }
// if ( new Date().valueOf() > userInfo.lifespanEndTime ){
// return {success:true, msg:`会员到期,请续会员`};
// }
// return {success:true, msg:`证书有效期至${moment(userInfo.lifespanEndTime).format("YYYY年MM月DD日")}`};
// }
export async function zhengShuChaXun({memberType, name, carId}) {
eccEnumValue("证书查询", "会员类型", MEMBERTYPE, memberType);
let selectParam = {};
if (memberType == MEMBERTYPE.个人会员) selectParam = {name, documentId:carId};
else selectParam = {unitName:name, uscc:carId}
let userInfo = await findOnce(TABLEENUM.用户表, selectParam, ["userId", "lifespanEndTime", "lifespanStartTime", "unitMemberType"]);
let userInfo = await findOnce(TABLEENUM.用户表, selectParam, ["userId", "lifespanEndTime", "lifespanStartTime", "unitMemberType", "userRegisterState",
"paymentStatus", "memberLevel", "changeApplyType", "applyApplicationTime", "unitName", "name", "beforeChange", "memberType",
"individualMemberType", "sheng", "documentId", "memberNum", "shi","qu","addres", "session"]);
if (!userInfo || !userInfo.userId) return {success:false, msg:"无法查询到该信息,请联系学会工作人员"};
if (userInfo.unitMemberType == UNITMEMBERTYPE.院校) {
let diffYearNum = moment().diff(moment(userInfo.lifespanStartTime), 'years');
let startTimeStr = moment(userInfo.lifespanStartTime).add(diffYearNum, 'years').format("YYYY年MM月DD日");
let endTimeStr = moment(userInfo.lifespanStartTime).add(diffYearNum+1, 'years').format("YYYY年MM月DD日");
return {success:true, msg:`证书有效期至${endTimeStr}`};
}
if ( new Date().valueOf() > userInfo.lifespanEndTime ){
return {success:true, msg:`会员到期,请续会员`};
let certificate = false;//是否可以下载
let cefaInfo:any = {};
let msg = '会员注册尚未审核通过,无法下载证书';
//判断是否审批通过
if (userInfo.userRegisterState == USERREGISTERSTATE.通过) {
if(userInfo.memberType == MEMBERTYPE.个人会员) {
//个人会员已支付可下载
if (userInfo.individualMemberType == INDIVIDUALMEMBERTYPE.普通会员 && userInfo.paymentStatus != PAYMENTSTATUS.未支付) certificate = true;
//个人会员专家无需支付可下载
if (userInfo.individualMemberType == INDIVIDUALMEMBERTYPE.专家会员) certificate = true;
if (certificate) {
cefaInfo = {
name:userInfo.name,
area:getCityNameByCode(userInfo.sheng),
documentId:userInfo.documentId,
memberNum:userInfo.memberNum,
session:getEdition(Math.floor(userInfo.session/100), userInfo.session%100 ),
lifespanTime:`${moment(userInfo.lifespanStartTime).format("YYYY年MM月DD日")}${moment(userInfo.lifespanEndTime).format("YYYY年MM月DD日")}`
}
msg = ``;
} else {
msg = `会员注册尚未缴费,无法下载证书`;
}
} else if(userInfo.memberType == MEMBERTYPE.单位会员) {
//院校无需支付可下载
if (userInfo.unitMemberType == UNITMEMBERTYPE.院校) certificate = true;
//机构和其他已支付可下载
else if (userInfo.paymentStatus != PAYMENTSTATUS.未支付) {
certificate = true;
}
if (certificate) {
let addresStr = "";
if (getCityNameByCode(userInfo.sheng) == getCityNameByCode(userInfo.shi)) {
addresStr = `${getCityNameByCode(userInfo.shi)}${getCityNameByCode(userInfo.qu)}${userInfo.addres}`;
} else {
addresStr = `${getCityNameByCode(userInfo.sheng)}${getCityNameByCode(userInfo.shi)}${getCityNameByCode(userInfo.qu)}${userInfo.addres}`;
}
cefaInfo = {
unitName:userInfo.unitName,
addres:addresStr,
memberNum:userInfo.memberNum,
session:getEdition(Math.floor(userInfo.session/100), userInfo.session%100 ),
lifespanTime:`${moment(userInfo.lifespanStartTime).format("YYYY年MM月DD日")}${moment(userInfo.lifespanEndTime).format("YYYY年MM月DD日")}`
}
if (userInfo.unitMemberType == UNITMEMBERTYPE.院校) {
let diffYearNum = moment().diff(moment(userInfo.lifespanStartTime), 'years');
let startTimeStr = moment(userInfo.lifespanStartTime).add(diffYearNum, 'years').format("YYYY年MM月DD日");
let endTimeStr = moment(userInfo.lifespanStartTime).add(diffYearNum+1, 'years').format("YYYY年MM月DD日");
cefaInfo.lifespanTime = `${startTimeStr}${endTimeStr}`;
}
msg = ``;
} else {
msg = `会员注册尚未缴费,无法下载证书`;
}
}
}
return {success:true, msg:`证书有效期至${moment(userInfo.lifespanEndTime).format("YYYY年MM月DD日")}`};
}
\ No newline at end of file
return {certificate, cefaInfo, msg};
}
......@@ -368,7 +368,7 @@ const UnitBasicConfig = ["userId", "unitName", "sheng", "shi", "qu", "addres", "
"contactPerson", "contactPersonDuties", "contactPersonPhone", "uusinessLicenseUrl", "unitMail"];
const UnitConfig = ["unitMemberType", "yuanXiaoBanXueLeiXing", "yuanXiaoZhuGuanBuMen", "yuanXiaoFuZeRen", "yuanXiaoFuZeRenZhiWu", "yuanXiaoBanGongFuZeRenZhiWu",
"yuanXiaoFuZeRenDianHua", "yuanXiaoBanGongFuZeRen", "yuanXiaoBanGongFuZeRenDianHua", "ZhuYaoFuZeRenYouXiang", "yuanXiaoKeYanFuZeRen", "yuanXiaoKeYanFuZeRenDianHua",
"jiaoXueFuZeRenXinMing", "yuanXiaoXueShengZongRenShu", "yuanXiaoJiaoZhiGongZongRenShu", "jiaoXueFuZeRenDianHua", "kaishezhuanYe", "danWeiJianJie"];
"jiaoXueFuZeRenXinMing", "yuanXiaoXueShengZongRenShu", "yuanXiaoJiaoZhiGongZongRenShu", "jiaoXueFuZeRenDianHua", "kaishezhuanYe", "danWeiJianJie", "applicationForm"];
export async function unitMemberEcho2({id}) {
let oldInfo = await findOnce(TABLEENUM.用户表, {userId:id});
......
......@@ -600,12 +600,14 @@ export enum ADMINLV {
审批管理,
会费管理,
发票管理,
变更管理,
// 变更管理, 205
管理设置 = 206,
// 管理权限 = 206,
标签系统,
通知管理 = 208,
会员信息修改 = 209,
单位会员申请表 = 210
单位会员申请表 = 210,
会员权限 = 211,
}
......@@ -822,7 +824,16 @@ export enum INFOCHANGEAPPLYTYPE {
}
/**
* 资料变更审批-前端用
*/
export enum INFOCHANGEAPPLYTYPECLIENT {
全部 = 0,
通过 = 1,
待审批,
驳回修改,
驳回提交, //2025.02.24新增状态
}
/**
......
......@@ -730,7 +730,7 @@ export const Config = {
bindBiz:memberFeesBiz.memberArrearsList
},
{
apiName:"线下付款",
apiName:"后台上传",
subUrl:'/memberfees/offlinepayment',
param:[
{key:"orderId", type:"String", desc:"订单id", isNull:true},
......@@ -1093,10 +1093,18 @@ export const Config = {
apiName:"是否需要补充用户信息",
subUrl:'/homepage/isneedsupplement',
param:[
// {key:"isChangeLevel", type:"Number", desc:"是否职务变更"}
],
bindBiz:homePageBiz.isNeedSupplement
},
{
apiName:"职务变更是否前往资料变更补充信息",
subUrl:'/homepage/iszwbgtxzd',
param:[
],
bindBiz:homePageBiz.isZwbgtxzd
},
{
apiName:"个人会员用户注册信息补充",
subUrl:'/homepage/infosupplement',
param:[
......@@ -1158,6 +1166,7 @@ export const Config = {
contactPersonDuties:{type:'String', desc:'日常联系人职务', notMustHave:false},
contactPersonPhone:{type:'String', desc:'日常联系人手机', notMustHave:false},
uusinessLicenseUrl:{type:'String', desc:'营业执照复印件', notMustHave:false},
applicationForm:{type:'String', desc:'申请表', notMustHave:false}, //2025.2.26日加上
/**单位信息 */
unitMemberType:{type:'Number', desc:'单位信息类型,枚举', notMustHave:false},
yuanXiaoBanXueLeiXing:{type:'Number', desc:'院校办学类型,枚举', notMustHave:false},
......
......@@ -364,6 +364,13 @@ export const Config = {
param:[],
defaultParam:outPutConfig.CLIENTMAILTYPE,
bindBiz:publicBiz.setEnumInterface
},
{
apiName:"资料审批状态-前端用",
subUrl:'/infochangeoptiontype',
param:[],
defaultParam:enumConfig.INFOCHANGEAPPLYTYPECLIENT,
bindBiz:publicBiz.setEnumInterface
}
],
......
......@@ -75,7 +75,7 @@ let permissionConfig = {
"会员库":{adminPermission:true, lv:ADMINLV.会员库},
"审批管理":{adminPermission:true, lv:ADMINLV.审批管理},
"会费管理":{adminPermission:true, lv:ADMINLV.会费管理},
"会员管理":{adminPermission:true, lv:ADMINLV.变更管理},
// "会员管理":{adminPermission:true, lv:ADMINLV.变更管理},
"权限管理":{adminPermission:true, lv:ADMINLV.管理设置},
"个人首页展示":{adminPermission:false, lv:ADMINLV.会员库},
"oss授权":{adminPermission:false},
......
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