import _ from 'lodash' /** * 按钮报错信息处理 * * @author fengjiansheng * @date 2022-02-09 */ export default { saveAction: { commonMessage: "保存失败,请联系系统管理员。", customMessageList: [ { preMessage: "More than one row with the given identifier was found", convertMessage: "multiBaseDataError" }, { preMessage: "formulaError:", convertMessage: "backFormulaError", } ], getErrorBaseDataName(a) { if (!a || !_.isString(a)) { return ""; } let reg = /(?<=datamodel\.).*?(?=;)/; let targetString = a.match(reg); return targetString ? targetString[0] : ""; }, getErrorMessage(a) { if (!a || !_.isString(a)) { return this.commonMessage; } let errorPreMessage = ""; for (let i = 0; i < this.customMessageList.length; i++) { if (a.indexOf(this.customMessageList[i].preMessage) > -1) { errorPreMessage = this.customMessageList[i].convertMessage; break; } } return this.doDealWithErrorMessage(errorPreMessage, a); }, getCommonMessage(){ return this.commonMessage; }, doDealWithErrorMessage(type,sourceMessage){ if (!type || !_.isString(type)) { return sourceMessage?sourceMessage:this.commonMessage; } if (type === ""){ return sourceMessage?sourceMessage:this.commonMessage; } if (type === "backFormulaError") { return sourceMessage.substring("formulaError:".length) } if (type === "multiBaseDataError") { return "保存失败,基础数据存在多条相同记录,基础数据标识:" + this.getErrorBaseDataName(sourceMessage); } } }, tempSaveAction: { commonMessage: "暂存失败,请联系系统管理员。", customMessageList: [ { preMessage: "More than one row with the given identifier was found", convertMessage: "multiBaseDataError" }, { preMessage: "formulaError:", convertMessage: "backFormulaError", } ], getErrorBaseDataName(a) { if (!a || !_.isString(a)) { return ""; } let reg = /(?<=datamodel\.).*?(?=;)/; let targetString = a.match(reg); return targetString ? targetString[0] : ""; }, getErrorMessage(a) { if (!a || !_.isString(a)) { return this.commonMessage; } let errorPreMessage = ""; for (let i = 0; i < this.customMessageList.length; i++) { if (a.indexOf(this.customMessageList[i].preMessage) > -1) { errorPreMessage = this.customMessageList[i].convertMessage; break; } } return errorPreMessage === "" ? (a?a:this.commonMessage) : errorPreMessage + this.getErrorBaseDataName(a); }, getCommonMessage(){ return this.commonMessage; } }, submitAction: { commonMessage: "提交失败,请联系系统管理员。", customMessageList: [ { preMessage: "No participant founds for user task", convertMessage: "提交失败,没有找到下一步审批人", }, { preMessage: "单据已提交,不能再次提交", convertMessage: "单据已提交,不能再次提交", } ], getErrorMessage(a) { if (!a || !_.isString(a)) { return this.commonMessage } let errorPreMessage = ""; for (let i = 0; i < this.customMessageList.length; i++) { if (a.indexOf(this.customMessageList[i].preMessage) > -1) { errorPreMessage = this.customMessageList[i].convertMessage break } } return errorPreMessage === "" ? (a?a:this.commonMessage) : errorPreMessage } } }