Commit 0c9f1af1 by chenjinjing

no message

parent 9e9ce195
......@@ -145,6 +145,7 @@ function getModel(name, type) {
* @returns
*/
export async function sendMail({id, type}) {
return;
eccEnumValue("发送邮件", "邮件类型", CLIENTMAILTYPE, type);
let userInfo = await findOnce(TABLEENUM.用户表, {userId:id}, ["userId", "name", "unitName", "memberType", "mail"]);
......
......@@ -507,8 +507,8 @@ export async function batchAdopt({idList, session}) {
userRegisterState:USERREGISTERSTATE.通过,
session:session,
paymentStatus:PAYMENTSTATUS.未支付,
lifespanStartTime:NowMs,
lifespanEndTime:NowMs + 1000,
lifespanStartTime:joinTime,
lifespanEndTime:joinTime + 1000,
memberLevel:MEMBERLEVEL.普通会员,
memberState:MEMBERSTATE.异常,
memberNum
......
......@@ -32,7 +32,7 @@ import { systemSendMail } from "../../mail";
* @param costType 会费类别
* @param pageNumber 当前页
*/
export async function paidList({name, memberType, documentId, phone, mail, joinStartTime, session, joinEndTime, memberLevel, payType, paymentNum,pageSize, pageNumber, examineState}) {
export async function paidList({name, memberType, documentId, phone, mail, joinStartTime, session, joinEndTime, memberLevel, payType, paymentNum,pageSize, pageNumber, examineState, backgroundUpload}) {
if (payType != 1 && payType != 2 && payType != 3) throw new BizError(ERRORENUM.参数错误);
// eccEnumValue("财务核对列表", "会费类别", COSTTYPE, costType );
......@@ -40,11 +40,15 @@ export async function paidList({name, memberType, documentId, phone, mail, joinS
state:ORDERSTATE.已支付
};
if (payType == 1) {
findParam.paymentMethod = PAYMENTTYPE.微信支付;
} else if (payType == 2) {
if (backgroundUpload == null) {
findParam.paymentMethod = {"$ne":PAYMENTTYPE.微信支付};
} else {
if (backgroundUpload == STATE.) findParam.paymentMethod = PAYMENTTYPE.后台上传;
else if (backgroundUpload == STATE.) findParam.paymentMethod = PAYMENTTYPE.银行转账;
}
}
if (examineState) {
......@@ -132,7 +136,13 @@ export async function paidList({name, memberType, documentId, phone, mail, joinS
itemData.joinTime = moment(info.orderCycleStart).format("YYYY-MM-DD");
itemData.operationTime = moment(info.payTime).format("YYYY-MM-DD");
itemData.memberType = changeEnumValue(MEMBERTYPE, info.memberCategory);
itemData.paymentMethod = changeEnumValue(PAYMENTTYPE, info.paymentMethod);
if (payType == 2) {
if (info.paymentMethod == PAYMENTTYPE.后台上传) itemData.backgroundUpload = "是";
if (info.paymentMethod == PAYMENTTYPE.银行转账) itemData.backgroundUpload = "否";
}
itemData.costType = info.isFirst == COSTTYPE.首次 ? "首次" : "续费";
itemData.cycle = `${moment(info.orderCycleStart).format("YYYY")}${moment(info.orderCycleEnd).format("YYYY")}`
......@@ -155,7 +165,6 @@ export async function paidList({name, memberType, documentId, phone, mail, joinS
itemData.session = getEdition(parseInt(`${userInfo.session/100}`), parseInt(`${userInfo.session%100}`) );
itemData.state = info.confirmReceipt == RECEIPTCONFIRMATION.收款确认 ? "已审批" : "待审批";
itemData.invoiceStatus = info.invoiceStatus == INVOICESTATUS.已开发票 ? "已开" : "未开";
dataList.push(itemData);
}
......
......@@ -264,6 +264,25 @@ export async function getSheng ({userId}) {
let msg = '会员注册尚未审核通过,无法下载证书';
//判断是否审批通过
if (userInfo.userRegisterState == USERREGISTERSTATE.通过) {
let addresStr = "";
if (getCityNameByCode(userInfo.sheng)) {
addresStr += `${getCityNameByCode(userInfo.sheng)}`;
if (getCityNameByCode(userInfo.shi)) {
if (getCityNameByCode(userInfo.sheng) != getCityNameByCode(userInfo.shi)) {
addresStr += `${getCityNameByCode(userInfo.shi)}`;
}
if (getCityNameByCode(userInfo.qu)) {
addresStr += `${getCityNameByCode(userInfo.qu)}`;
}
}
}
// if (getCityNameByCode(userInfo.sheng) == getCityNameByCode(userInfo.shi)) {
// addresStr = `${getCityNameByCode(userInfo.shi)}${getCityNameByCode(userInfo.qu)}`;
// } else {
// addresStr = `${getCityNameByCode(userInfo.sheng)}${getCityNameByCode(userInfo.shi)}${getCityNameByCode(userInfo.qu)}`;
// }
if(userInfo.memberType == MEMBERTYPE.个人会员) {
//个人会员已支付可下载
if (userInfo.individualMemberType == INDIVIDUALMEMBERTYPE.普通会员 && userInfo.paymentStatus != PAYMENTSTATUS.未支付) certificate = true;
......@@ -272,7 +291,7 @@ export async function getSheng ({userId}) {
if (certificate) {
cefaInfo = {
name:userInfo.name,
area:getCityNameByCode(userInfo.sheng),
area:addresStr,
documentId:userInfo.documentId,
memberNum:userInfo.memberNum,
session:getEdition(Math.floor(userInfo.session/100), userInfo.session%100 ),
......@@ -290,12 +309,11 @@ export async function getSheng ({userId}) {
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}`;
}
// 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,
......@@ -430,6 +448,25 @@ export async function getApply({userId}) {
/**
* 职务申请是否审批中
* @param param0
* @returns
*/
export async function getChangeApplyType({userId}) {
let oldInfo = await findOnce(TABLEENUM.用户表, {userId});
if (!oldInfo || !oldInfo.userId) throw new BizError(ERRORENUM.目标数据不存在);
let userInfo = await findOnce(TABLEENUM.用户表, {userId}, ["changeApplyType"]);
let changeApplyType = false;
if (userInfo.changeApplyType == CHANGEAPPLYTYPE.待审批) changeApplyType = false;
else changeApplyType = true;
return {changeApplyType};
}
/**
* 变更理事申请,职位未发生变更不需要走当前流程
* @param memberLevel 变更理事
* @param userId 登录的userid
......@@ -483,10 +520,16 @@ export async function isNeedSupplement({userId}) {
// };
/**资料变更 */
// const DwRequiredConf = {
// "基本信息": ["unitName", "sheng", "shi", "qu", "addres", "uscc", "legalPerson", "legalPersonPhone", "legalPersonMail", "contactPerson",
// "contactPersonDuties", "phone", "uusinessLicenseUrl", "applicationForm"],
// "单位信息": ["unitMemberType", "yuanXiaoBanXueLeiXing", "yuanXiaoZhuGuanBuMen", "yuanXiaoFuZeRen", "yuanXiaoFuZeRenZhiWu",
// "yuanXiaoFuZeRenDianHua", "yuanXiaoBanGongFuZeRen", "yuanXiaoBanGongFuZeRenDianHua", "ZhuYaoFuZeRenYouXiang", "yuanXiaoKeYanFuZeRen",
// "yuanXiaoKeYanFuZeRenDianHua", "jiaoXueFuZeRenXinMing", "jiaoXueFuZeRenDianHua"]
// };
const DwRequiredConf = {
"基本信息": ["unitName", "sheng", "shi", "qu", "addres", "uscc", "legalPerson", "legalPersonPhone", "legalPersonMail", "contactPerson",
"contactPersonDuties", "phone", "uusinessLicenseUrl", "applicationForm"],
"单位信息": ["unitMemberType", "yuanXiaoBanXueLeiXing", "yuanXiaoZhuGuanBuMen", "yuanXiaoFuZeRen", "yuanXiaoFuZeRenZhiWu",
"基本信息": ["sheng", "shi", "qu", "addres", "contactPerson", "contactPersonDuties", "phone", "applicationForm"],
"单位信息": ["yuanXiaoZhuGuanBuMen", "yuanXiaoFuZeRen", "yuanXiaoFuZeRenZhiWu",
"yuanXiaoFuZeRenDianHua", "yuanXiaoBanGongFuZeRen", "yuanXiaoBanGongFuZeRenDianHua", "ZhuYaoFuZeRenYouXiang", "yuanXiaoKeYanFuZeRen",
"yuanXiaoKeYanFuZeRenDianHua", "jiaoXueFuZeRenXinMing", "jiaoXueFuZeRenDianHua"]
};
......@@ -494,6 +537,10 @@ export async function isNeedSupplement({userId}) {
const Dwshzycj = {
"单位所获主要成绩及科研成果": ["startTime", "endTime", "describe"]
};
// const Gzsqb = {
// "盖章申请表": ["applicationForm"]
// };
let dwshzycjInfo = await findOnce(TABLEENUM.单位所获得科研成果表, {userId});
......@@ -539,8 +586,17 @@ export async function isNeedSupplement({userId}) {
infoCompleteData["单位所获主要成绩及科研成果"] = true;
}
}
}
// for (let i = 0; i < Gzsqb["盖章申请表"].length; i++) {
// if(!oldInfo[Gzsqb["盖章申请表"][i]]) {
// infoCompleteData["盖章申请表"] = false;
// changeApplyType = CHANGEAPPLYTYPE.注册信息待补充;
// break;
// } else {
// infoCompleteData["盖章申请表"] = true;
// }
// }
}
let infoComplete = [];
......@@ -573,6 +629,7 @@ export async function isZwbgtxzd({userId}) {
if(!oldInfo[ZyRequiredConf[key][i]]) {
isZwbgtxzd = false;
changeApplyType = CHANGEAPPLYTYPE.注册信息待补充
break;
} else {
isZwbgtxzd = true;
}
......@@ -695,6 +752,48 @@ export async function applyReason({applyStr, userId}) {
/**
* 变更理事申请理由-单位会员 2025-04-22 单位会员新增理事申请字段需要与个人会员区分方法
* @param applyStr 变更申请理由
* @param userId 登录的userid
* @returns
*/
export async function applyReasonMember({applyName, applySex, applyDuties, applyPhone, applyStr, userId}) {
let oldInfo = await findOnce(TABLEENUM.用户表, {userId});
if (!oldInfo || !oldInfo.userId) throw new BizError(ERRORENUM.目标数据不存在);
const Now = new Date().valueOf();
let applyId = generateSystemId(TABLEENUM.理事变更审批历史表, userId);
let param = {
applyStr,
changeApplyType:CHANGEAPPLYTYPE.待审批,
applyApplicationTime:Now,
applyId,
}
await updateOneData(TABLEENUM.用户表, {userId}, param);
/**添加审批历史 */
let applyInfo:any = {
applyId,
userId,
applyMemberLevel:oldInfo.applyMemberLevel,
beforeChange:oldInfo.beforeChange,
changeApplyType:CHANGEAPPLYTYPE.待审批,
applyApplicationTime:Now,
applyName,
applySex,
applyDuties,
applyPhone,
applyStr,
};
await addOneData(TABLEENUM.理事变更审批历史表, applyInfo);
return successResult();
}
/**
* 资料变更
* @param param0
* @returns
......
......@@ -40,8 +40,19 @@ export async function unitMemberList({unitName, mail, phone, joinStartTime, join
isBlackUser:STATE.
};
if (unitName) selectParam.unitName = {"$regex":unitName};
if (mail) selectParam.mail = mail;
if (phone) selectParam.phone = phone;
if (mail) {
selectParam.mail = mail;
selectParam.legalPersonMail = mail; //法人邮箱
selectParam.ZhuYaoFuZeRenYouXiang = mail; //主要负责人邮箱
}
if (phone) {
selectParam.phone = phone;
selectParam.legalPersonPhone = phone; //法人联系电话
selectParam.yuanXiaoFuZeRenDianHua = phone; //院校主要负责人电话
selectParam.yuanXiaoBanGongFuZeRenDianHua = phone; //院校办公负责人电话
selectParam.yuanXiaoKeYanFuZeRenDianHua = phone; //院校科研负责人电话
selectParam.jiaoXueFuZeRenDianHua = phone; //教学负责人电话
}
if (joinStartTime) {
selectParam["joinTime"] = {"$gt":joinStartTime};
}
......@@ -166,14 +177,14 @@ export async function unitMemberDetails({userId, id}) {
* @returns
*/
export async function unitMemberUpdate({form, keyanForm, id}) {
const keyanFormItemConfig = {
startTime: 'Number',
endTime: 'Number',
describe: 'String'
};
keyanForm.forEach(item => {
eccFormParam("单位会员修改", keyanFormItemConfig, item );
});
// const keyanFormItemConfig = {
// startTime: 'Number',
// endTime: 'Number',
// describe: 'String'
// };
// keyanForm.forEach(item => {
// eccFormParam("单位会员修改", keyanFormItemConfig, item );
// });
let oldInfo = await findOnce(TABLEENUM.用户表, {userId:id});
if (!oldInfo || !oldInfo.userId) throw new BizError(ERRORENUM.目标数据不存在);
......@@ -181,15 +192,17 @@ export async function unitMemberUpdate({form, keyanForm, id}) {
/**校验枚举 */
const EccFuncName = '单位会员修改';
/**校验入参 */
eccCityCode(form.sheng, form.shi, form.qu);
eccEnumValue(EccFuncName, '性别', SEX, form.sex);
eccEnumValue(EccFuncName, '证件类型', DOCUMENTTYPE, form.documentType);
eccEnumValue(EccFuncName, '民族', NATION, form.nation);
eccEnumValue(EccFuncName, '专业类别', PROFCATEGORY, form.profCategory);
if (form.sheng && form.shi && form.qu) eccCityCode(form.sheng, form.shi, form.qu);
if (form.sex) eccEnumValue(EccFuncName, '性别', SEX, form.sex);
if (form.documentType) eccEnumValue(EccFuncName, '证件类型', DOCUMENTTYPE, form.documentType);
if (form.nation) eccEnumValue(EccFuncName, '民族', NATION, form.nation);
if (form.profCategory) eccEnumValue(EccFuncName, '专业类别', PROFCATEGORY, form.profCategory);
/**修改会员用户信息 */
let distinctMailInfo = await findOnce(TABLEENUM.用户表, {mail:form.mail}, ["userId"]);
if (distinctMailInfo && distinctMailInfo.userId && distinctMailInfo.userId != oldInfo.userId) throw new BizError(ERRORENUM.邮箱重复, oldInfo.loginId, oldInfo.mail );
if (distinctMailInfo && distinctMailInfo.userId && distinctMailInfo.userId != oldInfo.userId) {
// throw new BizError(ERRORENUM.邮箱重复, oldInfo.loginId, oldInfo.mail );
}
form.mail = form.mail;
await updateOneData(TABLEENUM.用户表, {userId:id}, form);
......@@ -369,12 +382,12 @@ export async function individualMemberDetails({userId, id}) {
if (!oldInfo || !oldInfo.userId) throw new BizError(ERRORENUM.目标数据不存在);
/**校验入参 */
eccCityCode(form.sheng, form.shi, form.qu);
let EccFuncName = "个人会员修改";
eccEnumValue(EccFuncName, '性别', SEX, form.sex);
eccEnumValue(EccFuncName, '证件类型', DOCUMENTTYPE, form.documentType);
eccEnumValue(EccFuncName, '民族', NATION, form.nation);
eccEnumValue(EccFuncName, '专业类别', PROFCATEGORY, form.profCategory);
if (form.sheng && form.shi && form.qu) eccCityCode(form.sheng, form.shi, form.qu);
if (form.sex) eccEnumValue(EccFuncName, '性别', SEX, form.sex);
if (form.documentType) eccEnumValue(EccFuncName, '证件类型', DOCUMENTTYPE, form.documentType);
if (form.nation) eccEnumValue(EccFuncName, '民族', NATION, form.nation);
if (form.profCategory) eccEnumValue(EccFuncName, '专业类别', PROFCATEGORY, form.profCategory);
await updateOneData(TABLEENUM.用户表, {userId:id}, form);
return successResult();
......
......@@ -55,6 +55,8 @@ export async function login({loginId, pwd}) {
if (userInfo.memberState >= MEMBERSTATE.冻结 ) {
throw new BizError(ERRORENUM.该账号已被冻结);
}
let isPass = false;
if (userInfo.userRegisterState == USERREGISTERSTATE.通过) isPass = true;
let dataInfo = {
isAdmin:userInfo.isAdmin == STATE.,
......@@ -63,7 +65,7 @@ export async function login({loginId, pwd}) {
token:token,
adminLv:userInfo.adminLv,
timeMs:Now,
isPass:userInfo.userRegisterState == USERREGISTERSTATE.通过,
isPass,
memberType:userInfo.memberType,
isInput:(userInfo.isInput && !userInfo.inputUserChangePwd),
phone:userInfo.phone
......
......@@ -3,7 +3,7 @@
*/
import moment = require("moment");
import { ARTICLEPOSITION, BANNERPOSITION, BRANCHPOSITION, CODPARTICIPANT, DANGJIANVIDEO, DONGTAIZIXUNSUBTYPE, IMGEDITFUNENUM, INDIVIDUALMEMBERTYPE, MEMBERTYPE, PARTYBUILDSUBTYPEENUM, PARTYBUILDTYPEENUM, PAYMENTSTATUS, STATE, TONGZHIGONGGAO, UNITMEMBERTYPE, USERREGISTERSTATE, XUEHUILINGDAOZHIWEI } from "../config/enum";
import { ARTICLEPOSITION, BANNERPOSITION, BRANCHPOSITION, CODPARTICIPANT, DANGJIANVIDEO, DONGTAIZIXUNSUBTYPE, IMGEDITFUNENUM, INDIVIDUALMEMBERTYPE, MEMBERLEVEL, 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";
......@@ -856,7 +856,11 @@ export async function xueXiYuanDiShiPinType() {
// }
/**
* 证书查询
* @param param0
* @returns
*/
export async function zhengShuChaXun({memberType, name, carId}) {
eccEnumValue("证书查询", "会员类型", MEMBERTYPE, memberType);
let selectParam = {};
......@@ -872,19 +876,40 @@ export async function zhengShuChaXun({memberType, name, carId}) {
let msg = '会员注册尚未审核通过,无法下载证书';
//判断是否审批通过
if (userInfo.userRegisterState == USERREGISTERSTATE.通过) {
let addresStr = ``;
if (getCityNameByCode(userInfo.sheng)) {
addresStr += `${getCityNameByCode(userInfo.sheng)}`;
if (getCityNameByCode(userInfo.shi)) {
if (getCityNameByCode(userInfo.sheng) != getCityNameByCode(userInfo.shi)) {
addresStr += `${getCityNameByCode(userInfo.shi)}`;
}
if (getCityNameByCode(userInfo.qu)) {
addresStr += `${getCityNameByCode(userInfo.qu)}`;
}
}
}
// if (getCityNameByCode(userInfo.sheng) == getCityNameByCode(userInfo.shi) || !getCityNameByCode(userInfo.qu)) {
// addresStr = `${getCityNameByCode(userInfo.shi)}${getCityNameByCode(userInfo.qu)}`;
// } else {
// addresStr = `${getCityNameByCode(userInfo.sheng)}${getCityNameByCode(userInfo.shi)}${getCityNameByCode(userInfo.qu)}`;
// }
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),
area:addresStr,
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日")}`
lifespanTime:`${moment(userInfo.lifespanStartTime).format("YYYY年MM月DD日")}${moment(userInfo.lifespanEndTime).format("YYYY年MM月DD日")}`,
memberLevel:userInfo.memberLevel,
memberLevelStr:changeEnumValue(MEMBERLEVEL, userInfo.memberLevel),
}
msg = ``;
} else {
......@@ -898,18 +923,19 @@ export async function zhengShuChaXun({memberType, name, carId}) {
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}`;
}
// 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日")}`
lifespanTime:`${moment(userInfo.lifespanStartTime).format("YYYY年MM月DD日")}${moment(userInfo.lifespanEndTime).format("YYYY年MM月DD日")}`,
memberLevel:userInfo.memberLevel,
memberLevelStr:changeEnumValue(MEMBERLEVEL, userInfo.memberLevel),
}
if (userInfo.unitMemberType == UNITMEMBERTYPE.院校) {
let diffYearNum = moment().diff(moment(userInfo.lifespanStartTime), 'years');
......
......@@ -333,7 +333,7 @@ export async function registerFlowType({id}) {
* @param phone
* @returns
*/
export async function memberRegisterSendCode({phone}) {
export async function memberRegisterSendCode({phone, verifyType}) {
let userInfo = await findOnce(TABLEENUM.用户表, {phone}, ["userId"]);
if (userInfo && userInfo.userId) throw new BizError(ERRORENUM.该手机号已被注册);
const NowMs = new Date().valueOf();
......@@ -460,7 +460,11 @@ export async function unitMemberNotSaved({form, keyanForm, id}) {
// await updateOneData(TABLEENUM.用户表, {userId:id, saveUnsubmitted:STATE.否}, form);
await updateOneData(TABLEENUM.用户表, {userId:id}, form);
/**删除对应userId科研成果 */
let oldKeYanList= await find(TABLEENUM.单位所获得科研成果表, {userId:id});
if (oldKeYanList && oldKeYanList.length) {
await deleteManyData(TABLEENUM.单位所获得科研成果表, {userId:id});
}
let addList = [];
for (let i = 0; i < keyanForm.length; i++) {
let {startTime, endTime, describe} = keyanForm[i];
......
......@@ -26,7 +26,8 @@ export const SessionTimeMsConfig = {
"6_10":{activTime:'2022-12-27 08:00:00', timeMs:new Date('2022-12-27 08:00:00').valueOf()},
"7_1":{activTime:'2023-6-10 08:00:00', timeMs:new Date('2023-6-10 08:00:00').valueOf()},
"7_2":{activTime:'2023-11-13 08:00:00', timeMs:new Date('2023-11-13 08:00:00').valueOf()},
"7_3":{activTime:'2024-5-11 08:00:00', timeMs:new Date('2024-5-11 08:00:00').valueOf()}
"7_3":{activTime:'2024-5-22 08:00:00', timeMs:new Date('2024-5-22 08:00:00').valueOf()}, //2025年4月15日 高老师说要统一7届3次的入会时间为2024年5月22日
"7_4":{activTime:'2024-12-11 08:00:00', timeMs:new Date('2024-12-11 08:00:00').valueOf()},
}
const ConfigName = "serverConfig.xml";
......
......@@ -650,11 +650,17 @@ const ModelArray = [
userId:{type:'String', index:true},//用户id 外键
applyMemberLevel:'Number',//申请变更的职位
beforeChange:'Number',//会员等级、职务 枚举 MEMBERLEVEL 【变更申请前的职位】
applyStr:'String',//变更理事申请理由
changeApplyType:'Number',//变更审批状态
applyApplicationTime:'Number',//变更理事申请时间
applyReviewTime:'Number',//变更理事审核时间
rejectRemarks:'String',//变更理事驳回理由
/**2025-04-18新增字段 -start */
applyName:'String',//变更理事负责人姓名
applySex:'Number',//变更理事负责人性别
applyDuties:'String',//变更理事负责人职务
applyPhone:'String',//变更理事负责人电话
/**-------------------end */
applyStr:'String',//变更理事申请理由
}
},
{
......@@ -695,7 +701,6 @@ const ModelArray = [
session:'Number',//届次【规则:五年一届半年一次(10次一届)】 数据库保存格式:200801【年月(YYYYMM)】
joinTime:'Number',//入会时间 届次绑定入会时间,旧的时间线对应届次按照之前的配置来,新届次对应入会时间按照新届次第一次被审核时间
}
}
];
......
......@@ -173,7 +173,8 @@ export const Config = {
notMiddleware:true,
subUrl:'/memberdb/registersendcode',
param:[
{key:"phone", type:"String", desc:"联系人手机号"}
{key:"phone", type:"String", desc:"联系人手机号"},
// {key:"verifyType", type:"Number", desc:"接收验证码类型:1:手机号码、2:邮箱"}
],
bindBiz:registerBiz.memberRegisterSendCode
},
......@@ -469,6 +470,12 @@ export const Config = {
{key:"phone", type:"String", desc:"绑定手机号"}
],
bindBiz:userBiz.memberChangePwdSendCode
},
{
apiName:"获取个人基础信息",
subUrl:'/memberdb/systembase',
param:[],
bindBiz:memberBiz.systemBase
}
],
"会员库":[
......@@ -544,33 +551,33 @@ export const Config = {
key:"form", type:"Object", sub:
{
/**基本信息 */
unitName:{type:'String', desc:'单位名称'},
addres:{type:'String', desc:'通信地址'},
legalPerson:{type:'String', desc:'法人代表'},
legalPersonPhone:{type:'String', desc:'法人联系电话'},
legalPersonMail:{type:'String', desc:'法人邮箱'},
mail:{type:'String', desc:'单位电子邮箱'},
contactPerson:{type:'String', desc:'日常联系人'},
contactPersonDuties:{type:'String', desc:'日常联系人职务'},
phone:{type:'String', desc:'日常联系人电话'},
sheng:{type:'String', desc:'省'},
shi:{type:'String', desc:'市'},
qu:{type:'String', desc:'区'},
uusinessLicenseUrl:{type:'String', desc:'营业执照'},
unitName:{type:'String', desc:'单位名称', notMustHave:true},
addres:{type:'String', desc:'通信地址', notMustHave:true},
legalPerson:{type:'String', desc:'法人代表', notMustHave:true},
legalPersonPhone:{type:'String', desc:'法人联系电话', notMustHave:true},
legalPersonMail:{type:'String', desc:'法人邮箱', notMustHave:true},
mail:{type:'String', desc:'单位电子邮箱', notMustHave:true},
contactPerson:{type:'String', desc:'日常联系人', notMustHave:true},
contactPersonDuties:{type:'String', desc:'日常联系人职务', notMustHave:true},
phone:{type:'String', desc:'日常联系人电话', notMustHave:true},
sheng:{type:'String', desc:'省', notMustHave:true},
shi:{type:'String', desc:'市', notMustHave:true},
qu:{type:'String', desc:'区', notMustHave:true},
uusinessLicenseUrl:{type:'String', desc:'营业执照', notMustHave:true},
/**单位信息 */
unitMemberType:{type:'Number', desc:'单位类型'},
yuanXiaoBanXueLeiXing:{type:'Number', desc:'办学类型'},
yuanXiaoZhuGuanBuMen:{type:'String', desc:'主管部门'},
yuanXiaoFuZeRen:{type:'String', desc:'主要负责人姓名'},
yuanXiaoFuZeRenZhiWu:{type:'String', desc:'主要负责人职位'},
yuanXiaoFuZeRenDianHua:{type:'String', desc:'主要负责人电话'},
ZhuYaoFuZeRenYouXiang:{type:'String', desc:'主要负责人邮箱'},
yuanXiaoBanGongFuZeRen:{type:'String', desc:'办公负责人姓名'},
yuanXiaoBanGongFuZeRenDianHua:{type:'String', desc:'办公负责人电话'},
yuanXiaoKeYanFuZeRen:{type:'String', desc:'科研负责人姓名'},
yuanXiaoKeYanFuZeRenDianHua:{type:'String', desc:'科研负责人电话'},
jiaoXueFuZeRenXinMing:{type:'String', desc:'教学负责人姓名'},
jiaoXueFuZeRenDianHua:{type:'String', desc:'教学负责人电话'},
unitMemberType:{type:'Number', desc:'单位类型', notMustHave:true},
yuanXiaoBanXueLeiXing:{type:'Number', desc:'办学类型', notMustHave:true},
yuanXiaoZhuGuanBuMen:{type:'String', desc:'主管部门', notMustHave:true},
yuanXiaoFuZeRen:{type:'String', desc:'主要负责人姓名', notMustHave:true},
yuanXiaoFuZeRenZhiWu:{type:'String', desc:'主要负责人职位', notMustHave:true},
yuanXiaoFuZeRenDianHua:{type:'String', desc:'主要负责人电话', notMustHave:true},
ZhuYaoFuZeRenYouXiang:{type:'String', desc:'主要负责人邮箱', notMustHave:true},
yuanXiaoBanGongFuZeRen:{type:'String', desc:'办公负责人姓名', notMustHave:true},
yuanXiaoBanGongFuZeRenDianHua:{type:'String', desc:'办公负责人电话', notMustHave:true},
yuanXiaoKeYanFuZeRen:{type:'String', desc:'科研负责人姓名', notMustHave:true},
yuanXiaoKeYanFuZeRenDianHua:{type:'String', desc:'科研负责人电话', notMustHave:true},
jiaoXueFuZeRenXinMing:{type:'String', desc:'教学负责人姓名', notMustHave:true},
jiaoXueFuZeRenDianHua:{type:'String', desc:'教学负责人电话', notMustHave:true},
kaishezhuanYe:{type:'String', desc:'开设专业', notMustHave:true},
danWeiJianJie:{type:'String', desc:'单位简介', notMustHave:true}
},
......@@ -579,9 +586,9 @@ export const Config = {
{
key:"keyanForm", type:"[Object]", sub:
{
startTime:{type:'Number', desc:'开始时间'},
endTime:{type:'Number', desc:'结束时间'},
describe:{type:'String', desc:'科研描述'},
startTime:{type:'Number', desc:'开始时间', notMustHave:true},
endTime:{type:'Number', desc:'结束时间', notMustHave:true},
describe:{type:'String', desc:'科研描述', notMustHave:true},
},
desc:"单位所获得科研成果表单"
},
......@@ -599,36 +606,36 @@ export const Config = {
key:"form", type:"Object", sub:
{
/**基本信息 */
name:{type:'String', desc:'真实姓名'},
sex:{type:'Number', desc:'性别'},
nation:{type:'Number', desc:'民族'},
birth:{type:'Number', desc:'出身年月'},
documentType:{type:'Number', desc:'证件类型'},
documentId:{type:'String', desc:'证件号码'},
sheng:{type:'String', desc:'省'},
shi:{type:'String', desc:'市'},
qu:{type:'String', desc:'区'},
phone:{type:'String', desc:'手机号码'},
mail:{type:'String', desc:'电子邮箱'},
addres:{type:'String', desc:'通信地址'},
photoUrl:{type:'String', desc:'蓝底证件照'},
education:{type:'Number', desc:'学历'},
name:{type:'String', desc:'真实姓名', notMustHave:true},
sex:{type:'Number', desc:'性别', notMustHave:true},
nation:{type:'Number', desc:'民族', notMustHave:true},
birth:{type:'Number', desc:'出身年月', notMustHave:true},
documentType:{type:'Number', desc:'证件类型', notMustHave:true},
documentId:{type:'String', desc:'证件号码', notMustHave:true},
sheng:{type:'String', desc:'省', notMustHave:true},
shi:{type:'String', desc:'市', notMustHave:true},
qu:{type:'String', desc:'区', notMustHave:true},
phone:{type:'String', desc:'手机号码', notMustHave:true},
mail:{type:'String', desc:'电子邮箱', notMustHave:true},
addres:{type:'String', desc:'通信地址', notMustHave:true},
photoUrl:{type:'String', desc:'蓝底证件照', notMustHave:true},
education:{type:'Number', desc:'学历', notMustHave:true},
/**专业信息 */
unitName:{type:'String', desc:'工作单位'},
duties:{type:'String', desc:'职务'},
workTitle:{type:'String', desc:'职称'},
profCategory:{type:'[Number]', desc:'专业类别'},
studyResume:{type:'String', desc:'学习简历'},
workResume:{type:'String', desc:'工作简历'},
profAchievement:{type:'String', desc:'教研成果'},
otherEMP:{type:'String', desc:'其他组织任职情况'},
otherPROF:{type:'String', desc:'其他情况'},
unitName:{type:'String', desc:'工作单位', notMustHave:true},
duties:{type:'String', desc:'职务', notMustHave:true},
workTitle:{type:'String', desc:'职称', notMustHave:true},
profCategory:{type:'[Number]', desc:'专业类别', notMustHave:true},
studyResume:{type:'String', desc:'学习简历', notMustHave:true},
workResume:{type:'String', desc:'工作简历', notMustHave:true},
profAchievement:{type:'String', desc:'教研成果', notMustHave:true},
otherEMP:{type:'String', desc:'其他组织任职情况', notMustHave:true},
otherPROF:{type:'String', desc:'其他情况', notMustHave:true},
/**其他附件 */
cardUrlJust:{type:'String', desc:'个人身份证扫描件正面'},
cardUrlBack:{type:'String', desc:'个人身份证扫描件反面'},
academicCERTUrl:{type:'String', desc:'个人学历证明扫描件'},
professionalCERTUrl:{type:'String', desc:'个人工作证明扫描件'},
auxiliaryMaterial:{type:'[String]', desc:'论文发表或成绩材料'},
cardUrlJust:{type:'String', desc:'个人身份证扫描件正面', notMustHave:true},
cardUrlBack:{type:'String', desc:'个人身份证扫描件反面', notMustHave:true},
academicCERTUrl:{type:'String', desc:'个人学历证明扫描件', notMustHave:true},
professionalCERTUrl:{type:'String', desc:'个人工作证明扫描件', notMustHave:true},
auxiliaryMaterial:{type:'[String]', desc:'论文发表或成绩材料', notMustHave:true},
}
},
{
......@@ -637,12 +644,12 @@ export const Config = {
],
bindBiz:memberBiz.individualMemberUpdate
},
{
apiName:"获取个人基础信息",
subUrl:'/memberdb/systembase',
param:[],
bindBiz:memberBiz.systemBase
}
// {
// apiName:"获取个人基础信息",
// subUrl:'/memberdb/systembase',
// param:[],
// bindBiz:memberBiz.systemBase
// }
],
"审批管理":[
{
......@@ -1102,8 +1109,8 @@ export const Config = {
sheng:{type:'String', desc:'省'},
shi:{type:'String', desc:'市'},
qu:{type:'String', desc:'区'},
// phone:{type:'String', desc:'手机号码'},
// mail:{type:'String', desc:'电子邮箱'},
phone:{type:'String', desc:'手机号码', notMustHave:true}, //页面这个字段已去除
mail:{type:'String', desc:'电子邮箱', notMustHave:true}, //页面这个字段已去除
addres:{type:'String', desc:'通信地址'},
photoUrl:{type:'String', desc:'蓝底证件照'},
education:{type:'Number', desc:'学历'},
......@@ -1121,8 +1128,8 @@ export const Config = {
cardUrlJust:{type:'String', desc:'个人身份证扫描件正面'},
cardUrlBack:{type:'String', desc:'个人身份证扫描件反面'},
academicCERTUrl:{type:'String', desc:'个人学历证明扫描件'},
professionalCERTUrl:{type:'String', desc:'个人工作证明扫描件'},
auxiliaryMaterial:{type:'[String]', desc:'论文发表或成绩材料'},
professionalCERTUrl:{type:'String', desc:'个人工作证明扫描件', notMustHave:true},
auxiliaryMaterial:{type:'[String]', desc:'论文发表或成绩材料', notMustHave:true},
}
}
],
......@@ -1176,6 +1183,13 @@ export const Config = {
bindBiz:homePageBiz.getApply
},
{
apiName:"职务申请是否审批中",
subUrl:'/homepage/getchangeapplytype',
param:[
],
bindBiz:homePageBiz.getChangeApplyType
},
{
apiName:"变更职位",
subUrl:'/homepage/memberlevelupdate',
param:[
......@@ -1274,20 +1288,19 @@ export const Config = {
shi:{type:'String', desc:'市', notMustHave:false},
qu:{type:'String', desc:'区', notMustHave:false},
addres:{type:'String', desc:'通信地址', notMustHave:false},
uscc:{type:'String', desc:'单位信用代码', notMustHave:false},
legalPerson:{type:'String', desc:'法人代表', notMustHave:false},
legalPersonPhone:{type:'String', desc:'法人联系电话', notMustHave:false},
legalPersonMail:{type:'String', desc:'法人邮箱', notMustHave:false},
// uscc:{type:'String', desc:'单位信用代码', notMustHave:false},
// legalPerson:{type:'String', desc:'法人代表', notMustHave:false},
// legalPersonPhone:{type:'String', desc:'法人联系电话', notMustHave:false},
// legalPersonMail:{type:'String', desc:'法人邮箱', notMustHave:false},
// unitMail:{type:'String', desc:'单位电子邮箱', notMustHave:false}, 2024.4.22日的需求 去掉
contactPerson:{type:'String', desc:'日常联系人', notMustHave:false},
contactPersonDuties:{type:'String', desc:'日常联系人职务', notMustHave:false},
phone:{type:'String', desc:'日常联系人手机', notMustHave:false},
mail:{type:'String', desc:'日常联系人邮箱', notMustHave:false},
uusinessLicenseUrl:{type:'String', desc:'营业执照复印件', notMustHave:false},
applicationForm:{type:'String', desc:'申请表', notMustHave:false}, //2025.2.26日加上
// uusinessLicenseUrl:{type:'String', desc:'营业执照复印件', notMustHave:false},
/**单位信息 */
unitMemberType:{type:'Number', desc:'单位信息类型,枚举', notMustHave:false},
yuanXiaoBanXueLeiXing:{type:'Number', desc:'院校办学类型,枚举', notMustHave:false},
// unitMemberType:{type:'Number', desc:'单位信息类型,枚举', notMustHave:false},
// yuanXiaoBanXueLeiXing:{type:'Number', desc:'院校办学类型,枚举', notMustHave:false},
yuanXiaoZhuGuanBuMen:{type:'String', desc:'院校主管部门', notMustHave:false},
yuanXiaoFuZeRen:{type:'String', desc:'院校主要负责人', notMustHave:false},
yuanXiaoFuZeRenZhiWu:{type:'String', desc:'院校主要负责人职务', notMustHave:false},
......@@ -1303,6 +1316,7 @@ export const Config = {
jiaoXueFuZeRenDianHua:{type:'String', desc:'教学负责人电话', notMustHave:false},
kaishezhuanYe:{type:'String', desc:'开设专业', notMustHave:true},
danWeiJianJie:{type:'String', desc:'单位简介', notMustHave:true},
// applicationForm:{type:'String', desc:'申请表', notMustHave:false}, //2025.2.26日加上
},
desc:"表单"
},
......@@ -1326,6 +1340,18 @@ export const Config = {
],
bindBiz:homePageBiz.applyReason
},
{
apiName:"变更申请理由",
subUrl:'/homepage/applyreasonmember',
param:[
{key:"applyName", type:"String", desc:"变更申请负责人"},
{key:"applySex", type:"Number", desc:"变更申请人性别"},
{key:"applyDuties", type:"String", desc:"变更申请人职务"},
{key:"applyPhone", type:"String", desc:"变更申请人电话"},
{key:"applyStr", type:"String", desc:"变更申请理由"}
],
bindBiz:homePageBiz.applyReasonMember
},
],
"oss授权":[
{
......
......@@ -57,6 +57,7 @@ export const Config = {
{key:"pageNumber", type:"Number", desc:"分页-当前页面"},
{key:"pageSize", type:"Number", desc:"分页-当前页大小"},
{key:"session", type:"Number", desc:"届次", isNull:true},
{key:"backgroundUpload", type:"Number", desc:"是否后台上传", isNull:true},
],
bindBiz:costVerificationBiz.paidList
},
......
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