This commit is contained in:
2021-08-20 23:12:37 +00:00
parent f2a0f12bcc
commit 1c6b6716dc
7 changed files with 128 additions and 63 deletions

View File

@@ -24,16 +24,7 @@ Aug
notification of multiple however the fuck that works
test notification
migrate woitem loan not tagging loan units??
migrate users not tagged with vendorid if subcontractor or ho/custid if customer type user?
migrate region and global wiki specifically:
### Global Wiki
v8 does not have a Global Wiki page (the Wiki page formerly accessible from the opening screen in AyaNova 7), the export will move the Wiki and any embedded files to a User account created just to contain it's Wiki and attached files named "V7_EXPORT_GLOBAL_REPOSITORY".
### Region Wiki
v8 does not have Regions, all functionality previously in Regions will be split out into several new and changed objects.
The Region Wiki if found will be exported to a User account created just to hold the Wiki and files named ""V7_REGION_WIKI_REPOSITORY_region name"
po workorderitempart request selection dialog missing stubbed out as todo where you select part requests that are open to order
Update all dependencies here
@@ -87,49 +78,17 @@ TODO: Need stress test for client that can generate workorders in parallel for
## V8MIGRATE
migrate woitem loan not tagging loan units??
migrate users not tagged with vendorid if subcontractor or ho/custid if customer type user?
migrate region and global wiki specifically:
### Global Wiki
v8 does not have a Global Wiki page (the Wiki page formerly accessible from the opening screen in AyaNova 7), the export will move the Wiki and any embedded files to a User account created just to contain it's Wiki and attached files named "V7_EXPORT_GLOBAL_REPOSITORY".
note: Inventory Migration plan
Turn off inventory, import all closed workorders
Turn on inventory
import all open workorders and inventory to cover at same time
adjust inventory to match v7
migrate inventory added to v8migrate as final step of export; code it based on balances and also insert serials etc
it checks the balances in v8 then compares to v7 then issues an adjustment to bring into sync
this way (last thing) we are always covered no matter what happens with wo import etc
### Region Wiki
v8 does not have Regions, all functionality previously in Regions will be split out into several new and changed objects.
The Region Wiki if found will be exported to a User account created just to hold the Wiki and files named ""V7_REGION_WIKI_REPOSITORY_region name"
todo:1 IMPORT workorders FROM V7 needs to be coded once the cases are completed so it can be tested thoroughly and ongoing
note that v7 wostatus needs to be dual imported into both new wostate and new woitemstatus separately
todo: Import pm switched to negative generate day of week collection from v7 single chosen dow so flip that on import and block out all days but the selected day and they can adjust if they wish
new format is a string of up to 7 characters indicating weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
or since it's not written yet it might also be a postgres array, not going to be queried as it's c# code that uses it so it's really down to storage and ui factors
todo:1 Need a way to diagnose fail to migrate for remote user's db, there will be a lot of initial issues importing for people until we hit all the edge cases so...
any fail of migration of an item of any kind needs to log the full object being attempted to save
we need enough info to figure out what went wrong without needing to see the entire db
exception handler should log full object being sent over the wire on fail
Also a separate plan is to have it log to v8 so we can then login to v8 remotely and see what the error was
but that's a future possibility thing, probably not as important as just logging to the same error log
todo:1 custom fields field names are not coming across, still show "Custom 1" when shoudl show whatever is set
todo:1 assigned doc not found text has too many newlines in it, should just sit on one line in exported notes
todo:2 dirty big test again with contracts etc
todo:1 v8 migrate additions
Erase DB warning must be very distinctive like bright yellow and red with crossbones etc
Report sent *to* the new server upon completion (any state) via MEMO to superuser
should send the entire contents of the output screen error or not as it will contain useful info like dupes not exported etc
Duplicate id not exported
found this in the wild with 4a database 4 workorders not exported due to this
message doesn't clearly say that number was exported already
is there a way to still export them?
Is it possible to login during migrate to the v8 server?
Need a running count per item, I have the total at the start so it should show what item it is currently processing of that count like 50/1000 or something
todo:1 workorders - need to set billing and service address from customers on migrate
@@ -900,6 +859,12 @@ BUILD CHANGES OF NOTE
BUILD 124
- Customer form implemented menu links to quotes and pms
- Unit form implemented menu links to quotes and pms
- Loan unit form added links to quotes and pms and implemented all
- Part form implemented menu links to quotes and pms
- Project form implemented menu links to quotes and pms
- fixed incorrect icon for Project type when filtered by Project on workorder/quote/pm lists
- Unit meter reading implemented
Accessed from Unit form as well as work order item Unit area of work order form
Unit report data has last meter reading and last meter reading date and last meter reading notes viz fields added

View File

@@ -470,7 +470,7 @@ export default {
case window.$gz.type.PMTemplateItem:
return "$ayiStamp";
case window.$gz.type.Project:
return "$ayiLayerGroup";
return "$ayiProjectDiagram";
case window.$gz.type.PurchaseOrder:
return "$ayiTruckLoading";
case window.$gz.type.Quote:

View File

@@ -1405,6 +1405,26 @@ async function clickHandler(menuItem) {
}
});
break;
case "QuoteList":
m.vm.$router.push({
name: "svc-quotes",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.name
}
});
break;
case "PMList":
m.vm.$router.push({
name: "svc-pms",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.name
}
});
break;
case "UnitList":
m.vm.$router.push({
name: "svc-units",

View File

@@ -738,6 +738,26 @@ async function clickHandler(menuItem) {
}
});
break;
case "QuoteList":
m.vm.$router.push({
name: "svc-quote-item-parts",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.partNumber
}
});
break;
case "PMList":
m.vm.$router.push({
name: "svc-pm-item-parts",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.partNumber
}
});
break;
default:
window.$gz.eventBus.$emit(
"notify-warning",

View File

@@ -822,6 +822,26 @@ async function clickHandler(menuItem) {
}
});
break;
case "QuoteList":
m.vm.$router.push({
name: "svc-quote-item-units",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.name
}
});
break;
case "PMList":
m.vm.$router.push({
name: "svc-pm-item-units",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.name
}
});
break;
default:
window.$gz.eventBus.$emit(
"notify-warning",
@@ -920,19 +940,19 @@ function generateMenu(vm) {
vm: vm
});
// menuOptions.menuItems.push({
// title: "QuoteList",
// icon: "$ayiPencilAlt",
// key: FORM_KEY + ":QuoteList",
// vm: vm
// });
menuOptions.menuItems.push({
title: "QuoteList",
icon: "$ayiPencilAlt",
key: FORM_KEY + ":QuoteList",
vm: vm
});
// menuOptions.menuItems.push({
// title: "PMList",
// icon: "$ayiBusinessTime",
// key: FORM_KEY + ":PMList",
// vm: vm
// });
menuOptions.menuItems.push({
title: "PMList",
icon: "$ayiBusinessTime",
key: FORM_KEY + ":PMList",
vm: vm
});
//--- /show all ---
menuOptions.menuItems.push({ divider: true, inset: false });

View File

@@ -557,6 +557,26 @@ async function clickHandler(menuItem) {
}
});
break;
case "QuoteList":
m.vm.$router.push({
name: "svc-quotes",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.name
}
});
break;
case "PMList":
m.vm.$router.push({
name: "svc-pms",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.name
}
});
break;
default:
window.$gz.eventBus.$emit(
"notify-warning",

View File

@@ -1281,6 +1281,26 @@ async function clickHandler(menuItem) {
}
});
break;
case "QuoteList":
m.vm.$router.push({
name: "svc-quote-item-units",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.serial
}
});
break;
case "PMList":
m.vm.$router.push({
name: "svc-pm-item-units",
params: {
aType: m.vm.ayaType,
objectId: m.vm.obj.id,
name: m.vm.obj.serial
}
});
break;
default:
window.$gz.eventBus.$emit(
"notify-warning",