import { ErrorCodeList } from '@/services/dataCenter/interafce/error';
import { localStorageUtil } from '@/utils/storage';

/**
 * 通过错误码找到对应的错误信息
 * @param code 错误码
 */
export function getErrorInfoByCode(code: string): string {
    const errList = localStorageUtil.getItem('errorCodeInfos');
    const findResult = errList.find((e: ErrorCodeList) => String(e.errorcode) === String(code));
    return findResult ? findResult.description : '';
}

/**
 * 将retCode转化为对应的错误信息
 *   {Number} retCode
 * @returns {*}
 */
function getRetCodeString(retCode: number) {
    switch (retCode) {
        case -90007:
            return '当前未登录';
        case -60601:
            return '商品列表为空';
        case -60037:
            return '回应码错误';
        case -60036:
            return '数据装箱失败';
        case -60035:
            return '返回消息数据回应报文错误';
        case -60034:
            return '您有提货后在途的货品，请在收到货品后继续办理销户业务';
        case -60033:
            return '请先上传图片';
        case -60032:
            return '您的资金账户未清零，请处理完成后继续办理销户业务';
        case -60031:
            return '您的账户存在持仓，请处理完成后继续办理销户业务';
        case -60030:
            return '您的积分未清零，请处理完成后继续办理销户业务';
        case -60029:
            return '您的提货券未清零，请处理完成后继续办理销户业务';
        case -60028:
            return '您的资金账户仍未解约，请处理完成后继续办理销户业务';
        case -60027:
            return '解析回应包失败';
        case -60026:
            return '构建请求包失败';
        case -60025:
            return '密钥缺失';
        case -60024:
            return 'BankPWD加密异常';
        case -60023:
            return 'BankPWD不能为空';
        case -60022:
            return '入金请求返回状态异常';
        case -60021:
            return '签约请求返回状态异常';
        case -60020:
            return '历史数据查询回复报文错误';
        case -60019:
            return '当前未获取商品信息';
        case -60018:
            return '实时行情订阅回复报文错误';
        case -60017:
            return '行情Token校验失败';
        case -60016:
            return '行情数据或盘面查询回复报文错误';
        case -60015:
            return '发生断网重连引发重置业务'; // 此信息不需要弹出提示框
        case -60014:
            return '连接发生错误';
        case -60013:
            return '当前未登录交易账户';
        case -60012:
            return '数据异常'; // proto数据组装失败
        case -60011:
            return '数据错误';
        case -60010:
            return '盘面返回';
        case -60009:
            return '行情订阅成功';
        case -60008:
            return '行情连接成功';
        case -60007:
            return '持仓单应答';
        case -60006:
            return '资金账户应答';
        case -60005:
            return '交易规则应答';
        case -60004:
            return '连接行情失败';
        case -60003:
            return '行情订阅失败';
        case -60002:
            return '连接状态错误';
        case -60001:
            return '发送的数据错误';
        case -60000:
            return '请求超时';
        case -16:
            return '结算服务理财产品结算状态';
        case -15:
            return '意外的获取到多条记录(条件不精确)';
        case -14:
            return '构建统计记录数SQL语句失败';
        case -13:
            return 'SQL语句为空';
        case -12:
            return '无效的SQL语句';
        case -11:
            return '请求数据库连接失败';
        case -10:
            return '响应消息打包失败';
        case -9:
            return '获取单条纪录失败';
        case -8:
            return '获取多条纪录失败';
        case -7:
            return '分页处理失败';
        case -6:
            return '构建sql语句失败';
        case -5:
            return '执行SQL失败';
        case -4:
            return '请求消息业务检验失败';
        case -3:
            return '请求消息proto协议检查失败(调函数check_proto失败)';
        case -2:
            return '请求消息解析失败(调函数ParseFromArray失败)';
        case -1:
            return '操作失败,无可确认收货数据';
        case 0:
            return '正确处理';
        case 1:
            return '数据类型错误，表示proto buffer数据解析失败';
        case 2:
            return '无效的证件类型';
        case 3:
            return '无效的性别';
        case 4:
            return '无效的会员类型';
        case 5:
            return '错误的订单类型';
        case 6:
            return '持仓汇总不足';
        case 7:
            return '错误的买卖方向';
        case 8:
            return '行情服务异常';
        case 9:
            return '实时价格超出委托价格和允许成交偏移范围';
        case 10:
            return '错误的偏移点差';
        case 11:
            return '错误的委托状态';
        case 12:
            return '当前时间不支持撤单';
        case 13:
            return '委托未成交';
        case 14:
            return '撤单失败';
        case 15:
            return '订单ID已存在';
        case 16:
            return '加载xml文件失败';
        case 17:
            return '参数不存在';
        case 18:
            return 'SqlStatement 不存在';
        case 19:
            return '参数为空 ';
        case 20:
            return '配置值非法';
        case 21:
            return '数据库连接异常';
        case 22:
            return '数据库DataSet操作异常';
        case 23:
            return '数据库绑定参数异常';
        case 24:
            return '数据库执行操作异常 ';
        case 25:
            return '数据库提交事务失败 ';
        case 26:
            return '数据库回滚事务失败 ';
        case 27:
            return '不支持的数据库类型';
        case 28:
            return '数据库设置隔离等级异常';
        case 29:
            return '数据库设置自动提交异常';
        case 30:
            return '断开连接异常';
        case 31:
            return '结果集体字段序号越界';
        case 32:
            return '错误的数据库类型';
        case 33:
            return '数据源配置错误';
        case 34:
            return 'SqlStatement非法 ';
        case 35:
            return '获取基本sql语句错误 ';
        case 36:
            return 'SqlStatement没有找到 ';
        case 37:
            return '分页参数非法 ';
        case 38:
            return '不支持的数据类型 ';
        case 39:
            return '取数据库记录失败 ';
        case 40:
            return '空指针异常 ';
        case 41:
            return '达到最大连接数量 ';
        case 42:
            return '不受管理的连接 ';
        case 43:
            return '字段类型非法 ';
        case 44:
            return '不支持批量执行 ';
        case 45:
            return '创建statement失败 ';
        case 46:
            return '参数类型不一至(批量处理绑定参数时) ';
        case 47:
            return '超过最大的批量执行记录数 ';
        case 48:
            return '内存数据序列化到Protobuf失败(调函数SerializeToArray失败)';
        case 49:
            return '收到不希望收到的FUNCTIONCODE';
        case 50:
            return '没有用户账号记录';
        case 51:
            return '没有用户信息记录';
        case 52:
            return '没有登录账号信息';
        case 53:
            return '没有帐户签约记录';
        case 400:
            return '登录密码错误';
        case 1001:
            return '会话超时';
        case 1002:
            return '资金密码错误';
        case 1003:
            return '账号或密码不匹配';
        case 1004:
            return '无效账号';
        case 1005:
            return '账号类型不匹配';
        case 1006:
            return '账号不在线';
        case 1007:
            return '操作权限不够';
        case 1008:
            return '会员无账户在线';
        case 1009:
            return '账户在别处登录';
        case 1010:
            return '值为空';
        case 1011:
            return '登录账户已经存在';
        case 1012:
            return '软件版本过低不能登陆';
        case 1013:
            return 'IP地址不在允许范围内';
        case 1014:
            return '短信模版为空';
        case 1015:
            return '接收手机号码为空';
        case 1016:
            return '模板参数不匹配';
        case 1017:
            return '短信发送失败';
        case 1018:
            return '密码被修改，请重新登录，如有异常请联系管理员';
        case 1019:
            return '无效令牌';
        case 1020:
            return '账号被锁定';
        case 2001:
            return '消息通知模式为空';
        case 2002:
            return '消息通知帐号为空';
        case 3001:
            return '委托订单类型不存在';
        case 3002:
            return '委托账户状态不对';
        case 3003:
            return '账号为空';
        case 3004:
            return '二级委托单号无效';
        case 3005:
            return '操作员为空';
        case 3006:
            return '错误的校验类型';
        case 3007:
            return '有效时间为空';
        case 3008:
            return '有效时间错误';
        case 3009:
            return '会员编号为空';
        case 3010:
            return '会员编号错误';
        case 3011:
            return '特别会员编号为空';
        case 3012:
            return '买卖方向无效';
        case 3013:
            return '关联单号无效';
        case 3014:
            return '止盈或止损价格无效';
        case 3015:
            return '委托账户没有交易权限';
        case 3016:
            return '该商品不在做市委托状态';
        case 3017:
            return '内容权限不存在';
        case 3018:
            return '委托没有改单据类型权限';
        case 3019:
            return '该商品不在竞价委托状态';
        case 3020:
            return '该商品当前状态不能撤单';
        case 3021:
            return '委托错误单据数量';
        case 3022:
            return '委托账号保证金不足';
        case 3023:
            return '委托解冻资金失败';
        case 3024:
            return '委托订单不存在';
        case 3025:
            return '委托单保存失败';
        case 3026:
            return '委托撮合失败';
        case 3027:
            return '当前行情价无效';
        case 3028:
            return '委托账号不存在';
        case 3029:
            return '账号对应的资金账户不存在';
        case 3030:
            return '委托账户未激活';
        case 3031:
            return '委托账户冻结';
        case 3032:
            return '委托账户受限';
        case 3033:
            return '委托账户注销';
        case 3034:
            return '委托商品不存在';
        case 3035:
            return '委托权限定义不存在';
        case 3036:
            return '委托账户无下单权限';
        case 3037:
            return '商品参数无该订单类型权限';
        case 3038:
            return '商品无该订单类型权限';
        case 3039:
            return '委托下单商品不存在';
        case 3040:
            return '委托商品代码为空';
        case 3041:
            return '委托下单商品不在开市状态';
        case 3042:
            return '委托商品未包含对应订单类型';
        case 3043:
            return '委托数量小于等于零';
        case 3044:
            return '委托数量小于此商品单笔最小建仓数量';
        case 3045:
            return '委托数量大于此商品单笔最大建仓数量';
        case 3046:
            return '委托订单价格不正确';
        case 3047:
            return '止盈或止损价格为空';
        case 3048:
            return '委托账号没有头寸';
        case 3049:
            return '委托持仓商品不存在';
        case 3050:
            return '委托超出最大买持仓数量';
        case 3051:
            return '委托超出最大卖持仓数量';
        case 3052:
            return '委托订单价格不正确';
        case 3053:
            return '止盈或止损价格为空';
        case 3054:
            return '委托账号没有持仓汇总';
        case 3055:
            return '委托持仓商品不存在';
        case 3056:
            return '委托超出最大买持仓数量';
        case 3057:
            return '委托超出最大卖持仓数量';
        case 3058:
            return '委托超出持仓数量';
        case 3059:
            return '委托关联委托单无效';
        case 3060:
            return '委托关联持仓单无效';
        case 3061:
            return '关联持仓单数量为零';
        case 3062:
            return '不允许双边持仓';
        case 3063:
            return '行情超时';
        case 3064:
            return '错误的买卖点差';
        case 3065:
            return '劵金额为零';
        case 3066:
            return '不支持买卖点差';
        case 3067:
            return '当前阶段不支持撤单';
        case 3068:
            return '会员不支持投资者建仓';
        case 3069:
            return '会员不支持投资者平仓';
        case 3070:
            return '会员处于对冲状态';
        case 3071:
            return '账号处于人工冻结状态';
        case 3072:
            return '该商品不在理财委托状态';
        case 3073:
            return '委托数不是最小建仓数量或申购单位的整数倍';
        case 3074:
            return '委托数不是最小平仓数量的整数倍';
        case 3075:
            return '交收权限规则未找到';
        case 3076:
            return '商品不允许卖建仓';
        case 3077:
            return '超出用户最大可申购数量';
        case 3078:
            return '平仓成功但是反手建仓失败';
        case 3079:
            return '会员交易员开平方向有误';
        case 3080:
            return '会员当前不允许创建订单增加头寸';
        case 3081:
            return '无委托消息头';
        case 3082:
            return '错误的委托类型';
        case 3083:
            return '无客户端流水号';
        case 3084:
            return '无商品ID';
        case 3085:
            return '错误的客户端时间格式';
        case 3086:
            return '错误的客户端标志';
        case 3087:
            return '重复的客户端流水号';
        case 3088:
            return '买卖值错误';
        case 3089:
            return '下单类型错误';
        case 3090:
            return '取价方式错误';
        case 3091:
            return '关联持仓单方向错误';
        case 3092:
            return '关联持仓单持仓手数小于平仓手数';
        case 3093:
            return '委托账号头寸数量小于平仓手数';
        case 3094:
            return '委托消息头无关联单号';
        case 3095:
            return '数据库中无最小建仓数或申购单位参数';
        case 3096:
            return '数据库中无最大建仓数参数';
        case 3097:
            return '账户无此商品交易权限';
        case 3098:
            return '委托关联委托单状态无效';
        case 3099:
            return '委托消息无反手建仓标志';
        case 3100:
            return '数据库缺少账户状态或运行阶段的交易规则';
        case 3101:
            return '数据库中无买最大持仓数参数';
        case 3102:
            return '数据库中无卖最大持仓数参数';
        case 3103:
            return '错误的会员账户类型';
        case 3104:
            return '限价平仓暂不支持部分平仓';
        case 3105:
            return '当前账户不能平其他账户的单据';
        case 3106:
            return '错误的委托账户类型';
        case 3107:
            return '无可用做市关系，确定对手失败';
        case 3108:
            return '运行阶段不是申购中';
        case 3109:
            return '运行阶段不是待发售';
        case 3110:
            return '发售账户受限';
        case 3111:
            return '当前账户不能撤其他账户的单据';
        case 3112:
            return '改单数量不为0且不能与原单据数量相同';
        case 3113:
            return '数据库中无最大申购持仓数量';
        case 3114:
            return '申购数量超过最大申购持仓数量';
        case 3115:
            return '触发类型值错误';
        case 3116:
            return '触发价格值错误';
        case 3117:
            return '消息头无UUID';
        case 3118:
            return '数据库无此预埋单';
        case 3119:
            return '撤单时，预埋单不在订单在市状态';
        case 3120:
            return '买方向，委托价格高于涨停价';
        case 3121:
            return '卖方向，委托价格底于跌停价';
        case 3122:
            return '未查询到此商品的涨跌停价';
        case 3123:
            return '委托价格不在此商品涨跌停价区间';
        case 3124:
            return '竞价市场受限状态只允许平仓';
        case 3125:
            return '交易模式错误';
        case 3126:
            return '账户类型不是投资者';
        case 3127:
            return '下单类型不是改单';
        case 3128:
            return '止盈止损单不在在市状态';
        case 3129:
            return '止盈止损主单不在已成状态';
        case 3130:
            return '商品不在连续交易阶段，不允许下市价单';
        case 3131:
            return '当前反方向持仓有冻结数量，不允许下先平后建单';
        case 3132:
            return '数据库无最大持仓量参数';
        case 3133:
            return '下单数量不允许超过最大持仓量';
        case 3134:
            return '最小买入数量或申购单位值不能为0';
        case 3135:
            return '没有找到可接单的结算会员';
        case 3136:
            return '下单数量不允许超过当前商品组最大持仓量';
        case 3137:
            return '未找到可用对手关系';
        case 3138:
            return '竞价全额模式只允许买建仓，卖平仓';
        case 3139:
            return '数据库中无商品持仓天数限制参数';
        case 3140:
            return '持仓单持仓天数小于限制天数';
        case 3141:
            return '平仓数量必须是单笔最小交易数量整数倍，如果不是，则平仓数量必须等于可平数量';
        case 3142:
            return '市场ID为空';
        case 3143:
            return '请求市场ID非法';
        case 3144:
            return '市场ID不匹配';
        case 3145:
            return '未选定摘牌类型';
        case 3146:
            return '不允许摘相同账号的挂牌单据';
        case 3147:
            return '请求账户ID非法';
        case 3148:
            return '库位真实数量超过偏差范围';
        case 3149:
            return '委托用户ID为空';
        case 3150:
            return '委托用户无账户权限';
        case 3151:
            return '关联用户账户状态不支持委托类型';
        case 3152:
            return '小于最小建仓数量';
        case 3153:
            return '大于最大建仓数量';
        case 3154:
            return '市场未开市';
        case 3155:
            return '目标挂牌单据已失效';
        case 3200:
            return '冻结持仓汇总失败';
        case 3201:
            return '冻结持仓失败';
        case 3202:
            return '解冻持仓汇总失败';
        case 3203:
            return '解冻持仓失败';
        case 3204:
            return '成交数量大于冻结数量';
        case 3205:
            return '成交数量大于持仓数量';
        case 3206:
            return '商品不是开市状态';
        case 3207:
            return '没有找到对应的持仓单';
        case 3208:
            return '持仓单有部分数量被冻结';
        case 3209:
            return '持仓汇总可用数量不足';
        case 3210:
            return '查找投资者对应的交易会员失败';
        case 3211:
            return '没有设置混合模式下会员报价';
        case 3212:
            return '撤单失败，同一张单据不允许被重复撤单';
        case 3213:
            return '交收请求数据无效';
        case 3300:
            return '获取斩仓对应的持仓失败';
        case 3301:
            return '计算斩仓手续费失败';
        case 3302:
            return '账户委托回应失败';
        case 3303:
            return '账户成交回应失败';
        case 3304:
            return '冻结会员头寸失败';
        case 3305:
            return '获取会员头寸失败';
        case 3400:
            return '没有市场信息';
        case 3401:
            return '没有结算计划';
        case 3402:
            return '获取结算价TIK失败';
        case 3403:
            return '不是所有商品都有行情TIK ';
        case 3404:
            return '找不到上次商品结算信息';
        case 3405:
            return '更新涨跌停价到商品属性表失败';
        case 3406:
            return '协议转让失败';
        case 3407:
            return '到期单撤单失败';
        case 3408:
            return '等待资金响应超时';
        case 3409:
            return '资金请求失败';
        case 3410:
            return '费用分成创建源单据失败';
        case 3411:
            return '费用分成创建目标失败';
        case 3412:
            return '费用分成加载目标失败';
        case 3413:
            return '费用分成没有目标账号';
        case 3414:
            return '费用分成插入账号分成日志失败';
        case 3415:
            return '费用分成查询分成类型失败';
        case 3416:
            return '费用分成没有分成类型';
        case 3417:
            return '费用分成账号数据在分成之前';
        case 3418:
            return '费用分成检查节点失败';
        case 3419:
            return '费用分成找不到源单据';
        case 3420:
            return '费用分成找不到目标账号';
        case 3421:
            return '费用分成插入目标单据失败';
        case 3422:
            return '费用分成加载账号日志失败';
        case 3423:
            return '费用分成没有目标单据产生';
        case 3424:
            return '费用分成未创建目标';
        case 3425:
            return '费用分成源单据金额与目标单据金额不匹配';
        case 3426:
            return '费用分成目标单据金额与目标账户金额不匹配';
        case 3427:
            return '费用分成没有账号分配';
        case 3428:
            return '费用分成资金响应超时';
        case 3429:
            return '费用分成未知错误';
        case 3430:
            return '费用分成资金返回错误';
        case 3431:
            return '导到历史表失败';
        case 3432:
            return '没有可结算的商品';
        case 3433:
            return '商品发行价没有配置';
        case 3434:
            return '商品上市日不是下个交易日不能结算';
        case 3435:
            return '结算撤销预买单失败';
        case 3436:
            return '结算请求与结算工作模式不一致';
        case 3437:
            return '到期强平撤单失败';
        case 3438:
            return '到期强平失败';
        case 3439:
            return '无效的分成金额';
        case 3440:
            return '无效的分成目标账号';
        case 3441:
            return '分成比例超出100%';
        case 3442:
            return '分成比例不足100%';
        case 3443:
            return '获取涨跌停交易规则失败';
        case 3444:
            return '首次结算但发行日期不是下一个交易日';
        case 3445:
            return '商品没有配置到期处理方式';
        case 3446:
            return '到期无效交易服务返回失败';
        case 3447:
            return '此交易日已经结算过';
        case 3448:
            return '下一个交易日比当前交易日小';
        case 3449:
            return '有部分单据在交易过程中存在错误';
        case 3450:
            return '结算单据试算平衡处理失败';
        case 3451:
            return '结算委托单撤单处理失败';
        case 3452:
            return '结算预埋单撤单处理失败';
        case 3453:
            return '结算结算价节点处理失败';
        case 3454:
            return '结算持仓单备份处理失败';
        case 3455:
            return '结算持仓单到期解冻处理失败';
        case 4001:
            return '内存不足';
        case 4002:
            return '没有协议头';
        case 4003:
            return '没有账户ID';
        case 4004:
            return '账户不存在';
        case 4005:
            return '没有业务编码';
        case 4006:
            return '没有关联委托单号';
        case 4007:
            return '没有命令码';
        case 4008:
            return '解析子命令失败';
        case 4009:
            return '没有操作类型';
        case 4010:
            return '无效操作类型';
        case 4011:
            return '资金不足';
        case 4012:
            return '没有商品ID';
        case 4013:
            return '没有买卖方向';
        case 4014:
            return '不存在商品';
        case 4015:
            return '库存不足';
        case 4016:
            return '交易参数不存在';
        case 4017:
            return '没有变更类型';
        case 4018:
            return '无效变更类型';
        case 4019:
            return '没有查询掩码';
        case 4020:
            return '无效买卖方向';
        case 4021:
            return '无效交易模式';
        case 4022:
            return '无效交易属性';
        case 4023:
            return '违反唯一性';
        case 4024:
            return '没有交易日';
        case 4025:
            return '无效交易日';
        case 4026:
            return '格式化交易日失败';
        case 4027:
            return '没有市场运行状态';
        case 4028:
            return '查询数据库失败';
        case 4029:
            return '记录不存在';
        case 4030:
            return '校验资金失败';
        case 4031:
            return '校验头寸失败';
        case 4032:
            return '获取浮动盈亏失败';
        case 4033:
            return '数据库事务失败';
        case 4034:
            return '缺少必要字段';
        case 4035:
            return '没有用户ID';
        case 4036:
            return '用户不存在错误';
        case 4037:
            return '超过最大持仓量';
        case 4038:
            return '没有市场ID';
        case 4039:
            return '预结算成功';
        case 4040:
            return '数量正负号错误';
        case 4041:
            return '金额正负号错误';
        case 4042:
            return '手数变负异常';
        case 4043:
            return '金额变负异常';
        case 4044:
            return '没有保证金配置';
        case 4045:
            return '更新占用保证金失败';
        case 4506:
            return '行情未找到';
        case 5001:
            return '无效的查询参数';
        case 6001:
            return '业务处理中';
        case 6002:
            return '获取托管银签到签退信息失败';
        case 6003:
            return '托管银行没有签到';
        case 6004:
            return '获取公共配置失败';
        case 6005:
            return '币种校验失败（与托管银行币种不一致）';
        case 6006:
            return '该银行禁止发起签约';
        case 6007:
            return '等待审核';
        case 6008:
            return '错误码转换失败';
        case 6009:
            return '获取缓存失败';
        case 6010:
            return '业务重复';
        case 6011:
            return '解析报文失败';
        case 6012:
            return '账户服务冻结资金失败';
        case 6013:
            return '获取msg表的记录失败';
        case 6014:
            return '无法反序列化MSG表记录的对象内容';
        case 6015:
            return '获取数据库记录失败';
        case 6016:
            return '系统错误';
        case 6017:
            return '账户服务解冻资金失败';
        case 6018:
            return '账户服务扣款（出金）失败';
        case 6019:
            return '客户签约状态不在业务允许范围内';
        case 6020:
            return '系统禁止出金';
        case 6021:
            return '出金金额太小';
        case 6022:
            return '出金金额太大';
        case 6023:
            return '出金次数超限制';
        case 6024:
            return '出金总金额超限制';
        case 6025:
            return '计算手续费失败';
        case 6026:
            return '资金密码错误';
        case 6027:
            return '金额太大，需要审核';
        case 6028:
            return '解冻扣款中';
        case 6029:
            return '账户服务扣款中';
        case 6030:
            return '账户服务入金中';
        case 6031:
            return '账户服务解冻中';
        case 6032:
            return '系统禁止入金';
        case 6033:
            return '入金金额太小';
        case 6034:
            return '入金金额太大';
        case 6035:
            return '入金次数超限制';
        case 6036:
            return '入金总金额超限制';
        case 6037:
            return '入金处理中';
        case 6038:
            return '系统找不到这样的流水号';
        case 6039:
            return '账户服务操作失败';
        case 6040:
            return '客户已经处于已签约状态';
        case 6041:
            return '客户当前的签约状态不允许再发起签约';
        case 6042:
            return '系统禁止解约';
        case 6043:
            return '客户已经处于解约状态';
        case 6044:
            return '客户不是签约状态，不能解约';
        case 6045:
            return '客户当前状态不能解约';
        case 6046:
            return '账户服务冻结资金中';
        case 6047:
            return '读取文件失败';
        case 6048:
            return '写入文件失败';
        case 6049:
            return '审核已拒绝次申请';
        case 6050:
            return '对账结果：成功';
        case 6051:
            return '对账结果：平台成功，金额不一致';
        case 6052:
            return '对账结果：平台缺失（银行存在系统不存在）';
        case 6053:
            return '对账结果：银行成功，平台失败';
        case 6054:
            return '对账结果：银行成功，平台处理中';
        case 6055:
            return '对账结果：平台成功，银行不成功';
        case 6056:
            return '对账结果：平台处理中，银行不成功';
        case 6057:
            return '对账结果：平台处理中，金额不一致';
        case 6058:
            return '对账结果：平台失败，金额不一致';
        case 6059:
            return '对账结果：平台成功，账户服务操作失败';
        case 6060:
            return '对账结果：平台失败，账户服务解冻资金失败';
        case 7001:
            return '行情中断';
        case 8001:
            return '没找到投资者账户信息';
        case 8002:
            return '没找到交收关系';
        case 8003:
            return '交收申请日期不在允许范围内';
        case 8004:
            return '交收申请数量小于最小交收手数';
        case 8005:
            return '创建交收委托处理对象失败';
        case 8006:
            return '未提供主商品ID';
        case 8007:
            return '未提供主商品市场ID';
        case 8008:
            return '未提供主商品手数';
        case 8009:
            return '未提供交收商品ID';
        case 8010:
            return '未提供交收手数';
        case 8011:
            return '未提供交收仓单明细';
        case 8012:
            return '未提供仓单账号';
        case 8013:
            return '未提供仓单手数';
        case 8014:
            return '没找到交收主商品市场';
        case 8015:
            return '主商品状态异常';
        case 8016:
            return '交收商品状态异常';
        case 8017:
            return '账户状态异常';
        case 8018:
            return '商品交收关系不匹配';
        case 8019:
            return '主副商品不符合合约系数';
        case 8020:
            return '仓单校验失败';
        case 8021:
            return '未知命令';
        case 8022:
            return '获取主商品交收价失败';
        case 8023:
            return '找不到交收申报单号';
        case 8024:
            return '找不到交收成交单号';
        case 8025:
            return '子命令解析失败';
        case 8026:
            return '交收审核消息解析失败';
        case 8027:
            return '未提供审核状态';
        case 8028:
            return '未提供审核日期';
        case 8029:
            return '未提供操作人';
        case 8030:
            return '未提供仓单手数';
        case 8031:
            return '未提供品牌ID';
        case 8032:
            return '未提供品质ID';
        case 8033:
            return '未提供规格ID';
        case 8034:
            return '未提供仓单ID';
        case 8035:
            return '未提供月份ID';
        case 8036:
            return '交收市场未开市';
        case 8037:
            return '交收数量大于关联持仓单持仓数量';
        case 8038:
            return '交易会员不允许发起交收';
        case 8039:
            return '获取辅商品交收价失败';
        case 8040:
            return '不是即期仓单';
        case 9001:
            return '没找到市场信息';
        case 9002:
            return '系统状态错误';
        case 9003:
            return '市场状态错误';
        case 10001:
            return '无法找到履约计划模板';
        case 10002:
            return '计划模板没有对应的步骤';
        case 10003:
            return '支付比例和不为100%';
        case 10004:
            return '收款比例和不为100%';
        case 10005:
            return '无法找到履约计划仓单';
        case 10006:
            return '无法找到履约计划';
        case 10007:
            return '无法找到履约计划步骤';
        case 10008:
            return '违约审核校验失败';
        case 10009:
            return '违约申请校验失败';
        case 10010:
            return '延期申请校验失败';
        case 10011:
            return '延期审核校验失败';
        case 10012:
            return '履约计划状态不正常';
        case 10013:
            return '履约计划步骤已经处理完成';
        case 10014:
            return '没有找到总线主题';
        case 10015:
            return '没有找到相关仓单信息';
        case 21001:
            return '没有找到相关业务数据';
        case 21002:
            return '没有找到相关业务数据';
        case 21003:
            return '没有找到相关业务数据';
        case 21004:
            return '未找到相应库位';
        case 21005:
            return '库位状态更新失败';
        case 21006:
            return '无法计算交收申报数量仓单转订单';
        case 21007:
            return '无法计算交收申报数量订单转仓单';
        case 21008:
            return '无法获取仓单转订单业务数据';
        case 21009:
            return '仓单服务异常';
        case 21010:
            return '更新库位属主用户失败';
        case 21011:
            return '更新仓单属主用户失败';
        case 21012:
            return '库位状态错误';
        case 21013:
            return '业务编号校验失败';
        case 21014:
            return '无法提货申请业务数据';
        default:
            return '未定义错误码:' + retCode;
    }
}
