diff --git a/ayanova/devdocs/todo.txt b/ayanova/devdocs/todo.txt index 3ca7f292..f143f04b 100644 --- a/ayanova/devdocs/todo.txt +++ b/ayanova/devdocs/todo.txt @@ -61,18 +61,25 @@ Coded by importance ## CLIENT MISC ITEMS +todo: 1 inventory transactions show untranslated text in source column + also possibly attachments + This is an ongoing problem, maybe the report data code at server can do translations if it knows the language in advance and that a column will need translations + this would be helpful in many cases, though I didnt want any presentation code in server it keeps creeping in but judicious use of this may be what is required here + Or, the data table precaches any translations as in intermediate step BEFORE it actually does the regular list pre-processing so that it doesn't need to be async in there but rather in the getdata area?? + --2 hyperlinks in memos sb clickable to open in new tab or window or whatever - this supports help links in migrate and also user links like "take a look at workorder 55" with a link to it in the UI - recognize urls and make them actionable somehow - --2 case 3864 Joyce misc item - part unit of measure auto suggest +-1 case 3864 Joyce misc item - part unit of measure auto suggest You changed this which is great! -> Unit Charge (for labor and travel Rates) - now offers auto-suggest from prior entries to save typing. ************************************************************* OUTSTANDING ISSUE **************************************************************** COULD YOU ALSO do similar for a Part's Unit of Measure field? in addition to saves typing PLUS allows user to select existing unit of measure so don'thave 10 different ways entered of "each", "ea", EAC", "per" etc ****************************************************************************************************************** +todo:1 custom required rules only apply to new records!! + +-2 hyperlinks in memos sb clickable to open in new tab or window or whatever + this supports help links in migrate and also user links like "take a look at workorder 55" with a link to it in the UI + recognize urls and make them actionable somehow todo:2 notifications screen add delete all menu item that will just remove all the notifications present @@ -100,7 +107,6 @@ todo:2 grid position not preserved when open a record then track back this is very important that it work correctly -todo:1 custom required rules only apply to new records!! todo:2 inventory and other lists shows LT: because namefetcher postgres function returns it when it's not a named item expects UI to translate it but UI doesn't so need a way to deal with that @@ -117,7 +123,7 @@ todo:2 Contract override by TAGS reason for this is that they can do a more fine grained selection of multiple tags like "onsite" + "merville" whereas if it was an any match then there would be no finer level of control, only one term to choose for each. -todo: 1 inventory transactions show untranslated text in source column + todo:2 Not in love with the "Error api2200" as the only error text in the box diff --git a/ayanova/src/components/data-table.vue b/ayanova/src/components/data-table.vue index bcaf0bfa..85676f25 100644 --- a/ayanova/src/components/data-table.vue +++ b/ayanova/src/components/data-table.vue @@ -934,7 +934,7 @@ export default { vm.setSortIndicatorsFromDataListResponse(res.sortBy); //Post process data here and then set vm.records - vm.records = buildRecords( + vm.records = await buildRecords( res.data, res.columns, vm.ridColumnOpenable @@ -1006,7 +1006,7 @@ function buildHeaders(columnData) { ///////////////////////////////////////////////////////////////// //Called by getDataFromApi on retrieval of list with columnData // -function buildRecords(listData, columndefinitions, ridColumnOpenable) { +async function buildRecords(listData, columndefinitions, ridColumnOpenable) { //iterate data, build each object keyed with index name and display set to correct translated filter and then return let ret = []; @@ -1039,6 +1039,7 @@ function buildRecords(listData, columndefinitions, ridColumnOpenable) { if (column.rid) { o.id = column.i; } + //console.log("build records column: ", column); let dataType = columndefinitions[iColumn].dt; let display = column.v; @@ -1100,9 +1101,13 @@ function buildRecords(listData, columndefinitions, ridColumnOpenable) { ); break; case 4: //text - // if (display.length > MAX_TEXT_COLUMN_LENGTH) { - // display = display.substring(0, MAX_TEXT_COLUMN_LENGTH) + "..."; - // } + //is a translate column? + if (columndefinitions[iColumn].tra) { + console.log("COLUMN.TRA for: ", display); + display = await window.$gz.translation.translateStringWithMultipleKeysAsync( + display + ); + } display = window.$gz.util.truncateString( display, MAX_TEXT_COLUMN_LENGTH diff --git a/ayanova/src/components/work-order-item-outside-services.vue b/ayanova/src/components/work-order-item-outside-services.vue index 7d75f5da..b81db346 100644 --- a/ayanova/src/components/work-order-item-outside-services.vue +++ b/ayanova/src/components/work-order-item-outside-services.vue @@ -688,7 +688,7 @@ export default { sentDate: window.$gz.locale.nowUTC8601String(), etaDate: null, returnDate: null, - taxCodeId: null, //Is it labor or parts tax code? wasn't in v7 leaving empty for now + taxCodeId: null, //Is it labor or parts tax code? wasn't in v7 leaving empty for now isDirty: true, workOrderItemId: this.value.items[this.activeWoItemIndex].id, uid: Date.now(),