This commit is contained in:
@@ -110,7 +110,13 @@ todo: remove widget now? Back and front (comment out obvs not remove entirely)
|
|||||||
|
|
||||||
## SERVER MISC ITEMS
|
## SERVER MISC ITEMS
|
||||||
|
|
||||||
|
todo: errors are inconsistent some use "error" some use "code" to mean the same thing
|
||||||
|
this is likely becuase "code" is used in the outer wrapper and "error" is used in the individual "details" validation errors
|
||||||
|
however it would be much cleaner if it was the same thing at all levels
|
||||||
|
Settle on "Code" only, change "error" to "code"
|
||||||
|
some things are producing {message:"blah",target:"blah",error:"blah"}
|
||||||
|
controller apierror
|
||||||
|
and validation errors are : {message:"blah", target:"blah", code:"blah"}
|
||||||
todo: server boot log should show exact .net framework version in use, currently shows nothing so if there is a bug fix release or something we'd not know for support
|
todo: server boot log should show exact .net framework version in use, currently shows nothing so if there is a bug fix release or something we'd not know for support
|
||||||
|
|
||||||
todo: reconsider "DispatchFull" and "DispatchLimited" roles should be renamed to "ServiceFull" and "ServiceLimited" to match other roles and intent
|
todo: reconsider "DispatchFull" and "DispatchLimited" roles should be renamed to "ServiceFull" and "ServiceLimited" to match other roles and intent
|
||||||
|
|||||||
@@ -862,52 +862,66 @@ function handleSaveError(e) {
|
|||||||
this.saveResult.errors.push(e);
|
this.saveResult.errors.push(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function errorTargetFromSaveResult(r, t) {
|
||||||
|
//no particular target
|
||||||
|
//or not a woitem tree error (header)
|
||||||
|
if (r.itemUid == null || t == null || t == "generalerror") {
|
||||||
|
return t;
|
||||||
|
}
|
||||||
|
|
||||||
|
let woitemindex = this.obj.items.findIndex(z => z.uid == r.itemUid);
|
||||||
|
if (woitemindex == -1) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (r.childKey == null || r.childUid == null) {
|
||||||
|
return `Items[${woitemindex}].${t}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
let childindex = this.obj.items[woitemindex][r.childKey].findIndex(
|
||||||
|
z => z.uid == r.childUid
|
||||||
|
);
|
||||||
|
if (childindex == -1) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return `Items[${woitemindex}].${r.childKey}[${childindex}].${t}`;
|
||||||
|
}
|
||||||
|
|
||||||
function formErrorFromSaveResult() {
|
function formErrorFromSaveResult() {
|
||||||
//digest saveresult and compile into standard form error and return
|
//digest saveresult and compile into standard form error and return
|
||||||
|
/**
|
||||||
|
* {
|
||||||
|
error: res.error,
|
||||||
|
itemUid: item.uid, //uid of item
|
||||||
|
childKey: "scheduledUsers",
|
||||||
|
childUid: i //uid of child item will be located later as index
|
||||||
|
}
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
let ret = {
|
||||||
|
error: {
|
||||||
|
code: "2200", //todo: maybe an alternate error code and message indicating a package of errors (envelope?)
|
||||||
|
details: [],
|
||||||
|
message: "ErrorAPI2200"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
this.saveResult.errors.forEach(z => {
|
||||||
|
z.error.details.forEach(x => {
|
||||||
|
let target = errorTargetFromSaveResult(z, x.target);
|
||||||
|
if (target != null) {
|
||||||
|
ret.error.details.push({
|
||||||
|
message: x.message,
|
||||||
|
error: x.error,
|
||||||
|
target: target
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
`Items[${activeWoItemIndex}].scheduledUsers[${activeItemIndex}].estimatedQuantity`
|
`Items[${activeWoItemIndex}].scheduledUsers[${activeItemIndex}].estimatedQuantity`
|
||||||
{
|
|
||||||
"fatal": false,
|
|
||||||
"error": true,
|
|
||||||
"header": null,
|
|
||||||
"states": [],
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"e": {
|
|
||||||
"code": "2200",
|
|
||||||
"details": [
|
|
||||||
{
|
|
||||||
"message": "SAVE TEST ERROR",
|
|
||||||
"target": "Notes",
|
|
||||||
"error": "2203"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"message": "ErrorAPI2200"
|
|
||||||
},
|
|
||||||
"objectIndex": 2
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"scheduledUsers": [
|
|
||||||
{
|
|
||||||
"e": {
|
|
||||||
"code": "2200",
|
|
||||||
"details": [
|
|
||||||
{
|
|
||||||
"message": "◈◈ TEST SAVE ERROR ◈◈",
|
|
||||||
"target": "EstimatedQuantity",
|
|
||||||
"error": "2203"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"message": "ErrorAPI2200"
|
|
||||||
},
|
|
||||||
"objectIndex": 0,
|
|
||||||
"woItemIndex": 3
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
DESTINATION FORMAT EXAMPLE:
|
DESTINATION FORMAT EXAMPLE:
|
||||||
@@ -979,7 +993,6 @@ function formErrorFromSaveResult() {
|
|||||||
//iterate saveresult errors and hydrate into a displayable error as expected
|
//iterate saveresult errors and hydrate into a displayable error as expected
|
||||||
//(deal with translate uid's to woitem indexes that still exist)
|
//(deal with translate uid's to woitem indexes that still exist)
|
||||||
////set Target properly as requried and push error into the error collection
|
////set Target properly as requried and push error into the error collection
|
||||||
// this.saveResult.errors;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
|
|||||||
Reference in New Issue
Block a user