66 lines
1023 B
JavaScript
66 lines
1023 B
JavaScript
const message = require('./message')
|
|
/**
|
|
* api response message util
|
|
* @param {String} key
|
|
* @param {String} msg
|
|
*/
|
|
const resObject = function (key = '', msg = null) {
|
|
if (!key || !(key in message)) {
|
|
// default message
|
|
return
|
|
}
|
|
|
|
let obj = Object.assign({}, message[key])
|
|
|
|
if (typeof msg === 'string' && msg.length > 0) obj.obj.message = msg
|
|
if (msg !== null && typeof msg === 'object') obj.obj = msg
|
|
|
|
return obj
|
|
}
|
|
|
|
const genError = function (type, msg = '') {
|
|
let err = new MError()
|
|
err.mtype = type
|
|
err.msg = msg
|
|
return err
|
|
}
|
|
|
|
class MError extends Error {
|
|
/**
|
|
* @param {String} str
|
|
*/
|
|
constructor (str) {
|
|
super(str)
|
|
this._mtype = ''
|
|
this._msg = ''
|
|
}
|
|
|
|
/**
|
|
* @param {String} type
|
|
*/
|
|
set mtype (type = '') {
|
|
this._mtype = type
|
|
}
|
|
|
|
get mtype () {
|
|
return this._mtype
|
|
}
|
|
|
|
/**
|
|
* @param {String} s
|
|
*/
|
|
set msg (s = '') {
|
|
this._msg = s
|
|
}
|
|
|
|
get msg () {
|
|
return this._msg
|
|
}
|
|
}
|
|
|
|
module.exports = {
|
|
resObject,
|
|
MError,
|
|
genError
|
|
}
|