oak-general-business/es/types/Exception.js

188 lines
6.5 KiB
JavaScript

import { OakUserException, OakException } from "oak-domain/lib/types";
export class OakDistinguishUserException extends OakUserException {
userId;
usePassword;
useIdCard;
useWechatUser;
useEmail;
useMobile;
constructor(userId, usePassword, useIdCard, useWechatUser, useEmail, useMobile, message, _module, params) {
super(message || 'error::distinguishUser', _module || 'oak-general-business', params);
this.userId = userId;
this.useIdCard = useIdCard;
this.usePassword = usePassword;
this.useWechatUser = useWechatUser;
this.useEmail = useEmail;
this.useMobile = useMobile;
}
toString() {
const data = super.getSerialData();
return JSON.stringify({
...data,
userId: this.userId,
useIdCard: this.useIdCard,
usePassword: this.usePassword,
useWechatUser: this.useWechatUser,
useEmail: this.useEmail,
useMobile: this.useMobile,
});
}
}
;
export class OakChangeLoginWayException extends OakUserException {
userId;
useIdCard;
useWechatUser;
useEmail;
useMobile;
constructor(userId, useIdCard, useWechatUser, useEmail, useMobile, message, _module, params) {
super(message || 'error::changeLoginWay', _module || 'oak-general-business', params);
this.userId = userId;
this.useIdCard = useIdCard;
this.useMobile = useMobile;
this.useWechatUser = useWechatUser;
this.useEmail = useEmail;
}
toString() {
const data = super.getSerialData();
return JSON.stringify({
...data,
userId: this.userId,
useIdCard: this.useIdCard,
useWechatUser: this.useWechatUser,
useEmail: this.useEmail,
useMobile: this.useMobile,
});
}
}
export class OakMobileUnsetException extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::mobileUnset', _module || 'oak-general-business', params);
}
}
export class OakAuthenticationException extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::needAuthentication', _module || 'oak-general-business', params);
}
}
export class OakUserInfoUncompletedException extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::userInfoUncompleted', _module || 'oak-general-business', params);
}
}
export class OakUserDisabledException extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::userDisabled', _module || 'oak-general-business', params);
}
}
export class OakTokenExpiredException extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::tokenExpired', _module || 'oak-general-business', params);
}
}
export class OakMpHaveToSubscribeMessage extends OakUserException {
rejectedMessageType;
constructor(rejectedMessageType, message, _module, params) {
super(message || 'error::mpHaveToSubscribe', _module || 'oak-general-business', params);
this.rejectedMessageType = rejectedMessageType;
}
}
/**
* 前端用户信息还没加载完整
*/
export class OakUserInfoLoadingException extends OakException {
constructor(message, _module, params) {
super(message || 'error::userInfoLoading', _module || 'oak-general-business', params);
}
}
;
/**
* 前端application信息还没加载完整
*/
export class OakApplicationLoadingException extends OakException {
constructor(message, _module, params) {
super(message || 'error::applicationLoading', _module || 'oak-general-business', params);
}
}
;
export class OakUploadException extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::uploadFailed', _module || 'oak-general-business', params);
}
}
;
export class OakPasswordUnset extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::user.hasToSetPassword', _module || 'oak-general-business', params);
}
}
;
export class OakHasToVerifyPassword extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::user.hasToVerifyPassword', _module || 'oak-general-business', params);
}
}
;
export class OakCantChangeVerifiedUser extends OakUserException {
constructor(message, _module, params) {
super(message || 'error::user.cantChangeVerifiedUser', _module || 'oak-general-business', params);
}
}
;
export function makeException(data) {
const { name, message, opRecords, _module, params } = data;
let e;
switch (name) {
case 'OakDistinguishUserException': {
e = new OakDistinguishUserException(data.userId, data.usePassword, data.useIdCard, data.useWechatUser, data.useEmail, data.useMobile, message, _module, params);
break;
}
case 'OakChangeLoginWayException': {
e = new OakChangeLoginWayException(data.userId, data.useIdCard, data.useWechatUser, data.useEmail, data.useMobile, message, _module, params);
break;
}
case 'OakUserDisabledException': {
e = new OakUserDisabledException(message, _module, params);
break;
}
case 'OakTokenExpiredException': {
e = new OakTokenExpiredException(message, _module, params);
break;
}
case 'OakMobileUnsetException': {
e = new OakMobileUnsetException(message, _module, params);
break;
}
case 'OakAuthenticationException': {
e = new OakAuthenticationException(message, _module, params);
break;
}
case 'OakUserInfoUncompletedException': {
e = new OakUserInfoUncompletedException(message, _module, params);
break;
}
case 'OakUploadException': {
e = new OakUploadException(message, _module, params);
break;
}
case 'OakPasswordUnset': {
e = new OakPasswordUnset(message, _module, params);
break;
}
case 'OakHasToVerifyPassword': {
e = new OakHasToVerifyPassword(message, _module, params);
break;
}
case 'OakCantChangeVerifiedUser': {
e = new OakCantChangeVerifiedUser(message, _module, params);
break;
}
default: {
}
}
if (e) {
e.setOpRecords(opRecords);
return e;
}
}