Commit 7b195970 by lixinming

no message

parent 4d1c5323
......@@ -30,19 +30,9 @@ import { sendPassNotice } from "../sms";
* @param shi 市
* @param pageNumber 当前页
*/
export async function pendingReviewList({name, memberType, documentId, phone, mail, sheng, shi, pageNumber}) {
export async function pendingReviewList({name, memberType, documentId, phone, mail, sheng, shi, pageNumber, examineState}) {
/**查询条件 */
let selectParam:any = {
// "$or":[
// {
// userRegisterState:{"$lt":USERREGISTERSTATE.驳回修改},
// registerFlow:{"$gt":REGISTERFLOW.完成第一步}
// },
// {
// userRegisterState:USERREGISTERSTATE.驳回修改,
// registerFlow:REGISTERFLOW.完成第一步
// }
// ],
isAdmin:STATE.
}; //审批列表展示状态除通过外的数据
if (name) {
......@@ -54,6 +44,13 @@ export async function pendingReviewList({name, memberType, documentId, phone, ma
]}
];
}
if (examineState) {
if (examineState == 1) {
selectParam.userRegisterState = {"$or":[USERREGISTERSTATE.待审核, USERREGISTERSTATE.重新提交]}
} else {
selectParam.userRegisterState = USERREGISTERSTATE.驳回修改
}
}
let memberTypeLen = Object.keys(MEMBERTYPEECCENUM).filter(key => isNaN(Number(key))).length;
if (memberType.length == 0 || memberType.length == memberTypeLen) {
......
......@@ -39,7 +39,7 @@ export async function unitMemberList({unitName, mail, phone, joinStartTime, join
userRegisterState : USERREGISTERSTATE.通过,
isBlackUser:STATE.
};
if (unitName) selectParam.unitName = unitName;
if (unitName) selectParam.unitName = {"$regex":unitName};
if (mail) selectParam.mail = mail;
if (phone) selectParam.phone = phone;
if (joinStartTime) {
......
......@@ -2,7 +2,7 @@
* 用户逻辑
*/
import { ADMINTYPE, CODETYPE, MEMBERSTATE, REGISTERSTART, STATE, USERREGISTERSTATE } from "../../config/enum";
import { ADMINTYPE, CODETYPE, MEMBERSTATE, MEMBERTYPE, REGISTERSTART, STATE, UNITMEMBERTYPE, USERREGISTERSTATE } from "../../config/enum";
import { ERRORENUM } from "../../config/errorEnum";
import { addOneData } from "../../data/add";
import { TABLEENUM } from "../../data/models/model";
......@@ -31,7 +31,8 @@ export async function login({loginId, pwd}) {
if (userInfo.isInput && !userInfo.inputUserChangePwd) {
return {
isInput:userInfo.isInput,
phone:userInfo.phone
phone:userInfo.phone,
userId:userInfo.userId
}
}
......@@ -81,28 +82,52 @@ export async function logout({userId}) {
* @param param0
* @returns
*/
export async function changePwd({phone, pwd, confirmation, code}) {
export async function changePwd({userId, phone, pwd, confirmation, code}) {
if (pwd.search(/^[A-Za-z0-9]{6,18}$/) < 0) throw new BizError(ERRORENUM.密码只能由618位字符和数字组成);
if (pwd != confirmation) throw new BizError(ERRORENUM.两次密码不一致);
let codeInfo = await findOnce(TABLEENUM.验证码表, {codeNum:code, phone, type:CODETYPE.修改密码, isUse:false});
if (!codeInfo || !codeInfo.codeNum) {
throw new BizError(ERRORENUM.验证码错误);
}
let userInfo = await findOnce(TABLEENUM.用户表, {phone}, ["userId", "isInput", "inputUserChangePwd"]);
if (!userInfo || !userInfo.userId) throw new BizError(ERRORENUM.手机号不正确);
// let pwdStr = generatePwd(userInfo.userId, pwd); todo
let pwdStr = pwd;
let updateInfo:any = {pwd:pwdStr};
if (userInfo.isInput && !userInfo.inputUserChangePwd) {
updateInfo.inputUserChangePwd = true;
if (!userId) {
let userInfo = await findOnce(TABLEENUM.用户表, {phone}, ["userId", "isInput", "inputUserChangePwd", "unitMemberType", "memberType"]);
if (!userInfo || !userInfo.userId) throw new BizError(ERRORENUM.手机号不正确);
if (userInfo.isInput && !userInfo.inputUserChangePwd && (userInfo.memberType == MEMBERTYPE.单位会员 && userInfo.unitMemberType == UNITMEMBERTYPE.院校)) {
throw new BizError(ERRORENUM.密码修改错误);
}
// let pwdStr = generatePwd(userInfo.userId, pwd); todo
let pwdStr = pwd;
let updateInfo:any = {pwd:pwdStr};
await updateOneData(TABLEENUM.用户表, {userId:userInfo.userId}, updateInfo);
await updateOneData(TABLEENUM.验证码表, {codeNum:code, phone, type:CODETYPE.修改密码, isUse:false}, {isUse:true});
} else {
//首次登录
let userInfo = await findOnce(TABLEENUM.用户表, {userId}, ["userId", "isInput" ,"inputUserChangePwd", "phone", "memberType", "unitMemberType"]);
if (!userInfo.userId) {
throw new BizError(ERRORENUM.账号不存在)
}
let checkUserInfo = await findOnce(TABLEENUM.用户表, {phone}, ["userId"]);
if (checkUserInfo && checkUserInfo.userId) throw new BizError(ERRORENUM.该手机号已被注册);
if (!userInfo.isInput ) {
throw new BizError(ERRORENUM.密码修改错误);
}else if ((userInfo.inputUserChangePwd == true) && (userInfo.memberType == MEMBERTYPE.单位会员 && userInfo.unitMemberType == UNITMEMBERTYPE.院校)) {
throw new BizError(ERRORENUM.密码修改错误);
} else {
let pwdStr = pwd;
let updateInfo:any = {pwd:pwdStr};
if (userInfo.isInput && !userInfo.inputUserChangePwd) {
updateInfo.phone = phone;
updateInfo.inputUserChangePwd = true;
}
await updateOneData(TABLEENUM.用户表, {userId:userInfo.userId}, updateInfo);
await updateOneData(TABLEENUM.验证码表, {codeNum:code, phone, type:CODETYPE.修改密码, isUse:false}, {isUse:true});
}
}
await updateOneData(TABLEENUM.用户表, {userId:userInfo.userId}, updateInfo);
await updateOneData(TABLEENUM.验证码表, {codeNum:code, phone, type:CODETYPE.修改密码, isUse:false}, {isUse:true});
return successResult();
}
......@@ -112,27 +137,70 @@ export async function changePwd({phone, pwd, confirmation, code}) {
* @param phone
* @returns
*/
export async function memberChangePwdSendCode({phone}) {
let userInfo = await findOnce(TABLEENUM.用户表, {phone}, ["userId"]);
if (!userInfo || !userInfo.userId) throw new BizError(ERRORENUM.不存在该手机号的账号);
const NowMs = new Date().valueOf();
let codeSelectParam = { phone, isUse:false, type:CODETYPE.修改密码, sendMs:{"$gt":getTodayMs()} }
let lastCodeInfo = await findOnceToSort(TABLEENUM.验证码表, codeSelectParam, {sendMs:-1});
if (lastCodeInfo && lastCodeInfo.codeNum) {
if ( (lastCodeInfo.sendMs + (60*1000)) > NowMs ) throw new BizError(ERRORENUM.频繁操作请稍后再试);
/**校验今日同类型验证码次数 */
let todayNotUseCount = await findCount(TABLEENUM.验证码表, codeSelectParam);
if (todayNotUseCount >= 4) throw new BizError(ERRORENUM.发送验证码次数超限制, `${phone} 注册验证码超过限制3`);
}
export async function memberChangePwdSendCode({userId, phone}) {
if (!userId) {
let userInfo = await findOnce(TABLEENUM.用户表, {phone}, ["userId"]);
if (!userInfo || !userInfo.userId) throw new BizError(ERRORENUM.不存在该手机号的账号);
const NowMs = new Date().valueOf();
let codeSelectParam = { phone, isUse:false, type:CODETYPE.修改密码, sendMs:{"$gt":getTodayMs()} }
let lastCodeInfo = await findOnceToSort(TABLEENUM.验证码表, codeSelectParam, {sendMs:-1});
if (lastCodeInfo && lastCodeInfo.codeNum) {
if ( (lastCodeInfo.sendMs + (60*1000)) > NowMs ) throw new BizError(ERRORENUM.频繁操作请稍后再试);
/**校验今日同类型验证码次数 */
let todayNotUseCount = await findCount(TABLEENUM.验证码表, codeSelectParam);
if (todayNotUseCount >= 4) throw new BizError(ERRORENUM.发送验证码次数超限制, `${phone} 注册验证码超过限制3`);
}
const Code = generateSMSCode();//生成短信验证码
const Code = generateSMSCode();//生成短信验证码
/**发送短信模块 */
await sendALSMS(Code, phone);
let addInfo = {codeNum:Code, phone, sendMs:NowMs, type:CODETYPE.修改密码, isUse:false};
await addOneData(TABLEENUM.验证码表, addInfo);
/**发送短信模块 */
await sendALSMS(Code, phone);
let addInfo = {codeNum:Code, phone, sendMs:NowMs, type:CODETYPE.修改密码, isUse:false};
await addOneData(TABLEENUM.验证码表, addInfo);
return {code:""};
return {code:""};
}
let userInfo = await findOnce(TABLEENUM.用户表, {userId}, ["userId", "isInput" ,"inputUserChangePwd", "phone", "memberType", "unitMemberType"]);
if (!userInfo.userId) {
throw new BizError(ERRORENUM.账号不存在)
}
if (userInfo.isInput && userInfo.inputUserChangePwd == false && userInfo.memberType == MEMBERTYPE.单位会员 && userInfo.unitMemberType == UNITMEMBERTYPE.院校) {
//首次修改密码
const NowMs = new Date().valueOf();
let codeSelectParam = { phone, isUse:false, type:CODETYPE.修改密码, sendMs:{"$gt":getTodayMs()} };
let lastCodeInfo = await findOnceToSort(TABLEENUM.验证码表, codeSelectParam, {sendMs:-1});
if (lastCodeInfo && lastCodeInfo.codeNum) {
if ( (lastCodeInfo.sendMs + (60*1000)) > NowMs ) throw new BizError(ERRORENUM.频繁操作请稍后再试);
/**校验今日同类型验证码次数 */
let todayNotUseCount = await findCount(TABLEENUM.验证码表, codeSelectParam);
if (todayNotUseCount >= 4) throw new BizError(ERRORENUM.发送验证码次数超限制, `${phone} 注册验证码超过限制3`);
}
const Code = generateSMSCode();//生成短信验证码
/**发送短信模块 */
await sendALSMS(Code, phone);
let addInfo = {codeNum:Code, phone, sendMs:NowMs, type:CODETYPE.修改密码, isUse:false};
await addOneData(TABLEENUM.验证码表, addInfo);
return {code:""};
} else {
//非导入用户
if (phone != userInfo.phone) throw new BizError(ERRORENUM.与预览手机号码不一致);
const NowMs = new Date().valueOf();
let codeSelectParam = { phone, isUse:false, type:CODETYPE.修改密码, sendMs:{"$gt":getTodayMs()} };
let lastCodeInfo = await findOnceToSort(TABLEENUM.验证码表, codeSelectParam, {sendMs:-1});
if (lastCodeInfo && lastCodeInfo.codeNum) {
if ( (lastCodeInfo.sendMs + (60*1000)) > NowMs ) throw new BizError(ERRORENUM.频繁操作请稍后再试);
/**校验今日同类型验证码次数 */
let todayNotUseCount = await findCount(TABLEENUM.验证码表, codeSelectParam);
if (todayNotUseCount >= 4) throw new BizError(ERRORENUM.发送验证码次数超限制, `${phone} 注册验证码超过限制3`);
}
const Code = generateSMSCode();//生成短信验证码
/**发送短信模块 */
await sendALSMS(Code, phone);
let addInfo = {codeNum:Code, phone, sendMs:NowMs, type:CODETYPE.修改密码, isUse:false};
await addOneData(TABLEENUM.验证码表, addInfo);
return {code:""};
}
}
......@@ -70,7 +70,10 @@ export enum ERRORENUM {
权限错误,
注册已暂时关闭,
不可以提前下载发票,
请先提供发票信息
请先提供发票信息,
与预览手机号码不一致,
账号不存在,
密码修改错误
}
export enum ERRORCODEENUM {
......
......@@ -343,6 +343,7 @@ export const Config = {
subUrl:'/changepwd',
notMiddleware:true,
param:[
{key:"userId", type:"String", desc:"userId", notMustHave:true},
{key:"phone", type:"String", desc:"绑定手机号"},
{key:"pwd", type:"String", desc:"密码"},
{key:"confirmation", type:"String", desc:"二次确认密码"},
......@@ -354,6 +355,7 @@ export const Config = {
subUrl:'/getchangepwdcode',
notMiddleware:true,
param:[
{key:"userId", type:"String", desc:"userId", notMustHave:true},
{key:"phone", type:"String", desc:"绑定手机号"}
],
bindBiz:userBiz.memberChangePwdSendCode
......@@ -554,7 +556,8 @@ export const Config = {
{key:"mail", type:"String", desc:"邮箱", isNull:true},
{key:"sheng", type:"String", desc:"省", isNull:true},
{key:"shi", type:"String", desc:"市", isNull:true},
{key:"pageNumber", type:"Number", desc:"当前页"}
{key:"pageNumber", type:"Number", desc:"当前页"},
{key:"examineState", type:"Number", desc:"审核状态", isNull:true},
],
bindBiz:examineBiz.pendingReviewList
},
......
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