This commit is contained in:
@@ -5,10 +5,13 @@
|
||||
|
||||
MISC ITEMS THAT CAME UP
|
||||
|
||||
|
||||
|
||||
todo: TWEAK Init menu code
|
||||
tweaked but not quite right, need to go through as each user role and make sure it's correct
|
||||
right now sales can see admin translations because everyone has read access to translations for themselves I think
|
||||
but it should be canChange for that particular one and possibly others
|
||||
SubContractorFull && SubContractorLimited has no rights to anything outside their own ?!
|
||||
|
||||
|
||||
todo: sample headoffice user can't login
|
||||
|
||||
todo: No roles defined Users can login
|
||||
Customer user with no roles can login and gets a CSR list screen
|
||||
@@ -36,7 +39,6 @@ todo: customer users and regular users really need to reconsider not using a sta
|
||||
Also roles could then show on the customer-user grid which would be handy for some
|
||||
AT LEAST put a wait spinner on that page
|
||||
|
||||
todo: server unreachable error box on login form, show as a warning, not an error, it's not necessarily an unusual condition
|
||||
|
||||
|
||||
todo: deleting customer must attempt to delete the following as they are entered "in" form and not selected externally so they are part of Customer and should delete with it:
|
||||
@@ -65,6 +67,9 @@ todo: Case 3595 Mass delete extension
|
||||
Do this early as it will be copied over and over again
|
||||
|
||||
|
||||
todo: BizRoles.cs at server:
|
||||
Change so that workorder structure just copies from top workorder item and similar for others
|
||||
Ideally we want a central spot for all workorder roles and then just tweak as necessary below it
|
||||
|
||||
............................................................
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@ export default {
|
||||
Contract: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
HeadOffice: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
LoanUnit: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
Part: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
Part: { Change: 98, ReadFullRecord: 98717, Select: 131071 },
|
||||
PurchaseOrder: { Change: 98, ReadFullRecord: 98717, Select: 131071 },
|
||||
PM: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
PMItem: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
PMTemplate: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
PMTemplateItem: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
Project: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
PurchaseOrder: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
Quote: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
QuoteItem: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
QuoteTemplate: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
@@ -24,29 +24,25 @@ export default {
|
||||
Unit: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
UnitModel: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
Vendor: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrder: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItem: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItemExpense: {
|
||||
Change: 33098,
|
||||
ReadFullRecord: 65669,
|
||||
Select: 131071
|
||||
},
|
||||
WorkOrderItemLabor: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItemLoan: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItemPart: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrder: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItem: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemExpense: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemLabor: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemLoan: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemPart: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemPartRequest: {
|
||||
Change: 33098,
|
||||
ReadFullRecord: 65669,
|
||||
Change: 330,
|
||||
ReadFullRecord: 98437,
|
||||
Select: 131071
|
||||
},
|
||||
WorkOrderItemScheduledUser: {
|
||||
Change: 33098,
|
||||
ReadFullRecord: 65669,
|
||||
Change: 330,
|
||||
ReadFullRecord: 98437,
|
||||
Select: 131071
|
||||
},
|
||||
WorkOrderItemTask: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItemTravel: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItemUnit: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderItemTask: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemTravel: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderItemUnit: { Change: 330, ReadFullRecord: 98437, Select: 131071 },
|
||||
WorkOrderTemplate: { Change: 33098, ReadFullRecord: 65669, Select: 131071 },
|
||||
WorkOrderTemplateItem: {
|
||||
Change: 33098,
|
||||
|
||||
@@ -47,7 +47,7 @@ export default {
|
||||
vm.appBar.title = ctx.title;
|
||||
vm.appBar.readOnly = ctx.readOnly;
|
||||
|
||||
//:color="appBar.isMain ? 'primary' : 'secondary'"
|
||||
|
||||
if (ctx.readOnly === true) {
|
||||
vm.appBar.color = "readonlybanner";
|
||||
} else {
|
||||
|
||||
@@ -254,6 +254,7 @@ function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: null,
|
||||
title: "GlobalLogo",
|
||||
helpUrl: "form-adm-global-logo",
|
||||
|
||||
@@ -399,6 +399,7 @@ function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: null,
|
||||
title: "PickListTemplates",
|
||||
helpUrl: "form-adm-global-select-templates",
|
||||
|
||||
@@ -569,6 +569,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiLanguage",
|
||||
title: "Translation",
|
||||
helpUrl: "form-adm-translation",
|
||||
|
||||
@@ -952,6 +952,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiUser",
|
||||
title: "User",
|
||||
helpUrl: "form-adm-user",
|
||||
|
||||
@@ -275,6 +275,7 @@ function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiCustomize",
|
||||
title: "Customize",
|
||||
helpUrl: "form-ay-customize",
|
||||
|
||||
@@ -903,6 +903,7 @@ function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiFilter",
|
||||
title: "DataListView",
|
||||
helpUrl: "form-ay-data-list-view",
|
||||
|
||||
@@ -1010,6 +1010,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiDraftingCompass",
|
||||
title: "ReportDesignReport",
|
||||
helpUrl: "form-ay-report-edit",
|
||||
|
||||
@@ -436,6 +436,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiClipboard",
|
||||
title: "CustomerNoteNotes",
|
||||
helpUrl: "form-customer-note",
|
||||
|
||||
@@ -144,6 +144,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiClipboard",
|
||||
title: "CustomerNoteList",
|
||||
helpUrl: "form-customer-notes",
|
||||
|
||||
@@ -962,6 +962,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiUser",
|
||||
title: "Contact",
|
||||
helpUrl: "form-cust-contact",
|
||||
|
||||
@@ -628,6 +628,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiBullhorn",
|
||||
title: "NotifySubscription",
|
||||
helpUrl: "form-home-notify-subscriptions",
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
data-cy="backupTable"
|
||||
>
|
||||
<template v-slot:[`item.actions`]="{ item }">
|
||||
<v-btn icon :href="item.url">
|
||||
<v-btn icon :href="item.url" v-if="item.url">
|
||||
<v-icon small class="mr-2">
|
||||
$ayiFileDownload
|
||||
</v-icon>
|
||||
@@ -105,7 +105,7 @@ export default {
|
||||
try {
|
||||
await initForm(vm);
|
||||
|
||||
vm.rights = window.$gz.role.getRights(window.$gz.type.GlobalOps);
|
||||
vm.rights = window.$gz.role.getRights(window.$gz.type.Backup);
|
||||
vm.formState.readOnly = !vm.rights.change;
|
||||
vm.formState.ready = true;
|
||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||
@@ -362,6 +362,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: true,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiFileArchive",
|
||||
title: "Backup",
|
||||
helpUrl: "form-ops-backup",
|
||||
|
||||
@@ -172,6 +172,7 @@ export default {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: true,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiRobot",
|
||||
title: "ServerJobs",
|
||||
helpUrl: "form-ops-jobs",
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
/* Xeslint-disable */
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
const FORM_KEY = "ops-backup";
|
||||
const FORM_KEY = "ops-notification-settings";
|
||||
|
||||
export default {
|
||||
async created() {
|
||||
@@ -175,7 +175,9 @@ export default {
|
||||
try {
|
||||
await initForm(vm);
|
||||
|
||||
vm.rights = window.$gz.role.getRights(window.$gz.type.GlobalOps);
|
||||
vm.rights = window.$gz.role.getRights(
|
||||
window.$gz.type.OpsNotificationSettings
|
||||
);
|
||||
vm.formState.readOnly = !vm.rights.change;
|
||||
vm.formState.ready = true;
|
||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||
@@ -380,6 +382,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: true,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiBullhorn",
|
||||
title: "NotificationSettings",
|
||||
helpUrl: "form-ops-notification-settings",
|
||||
|
||||
@@ -183,6 +183,7 @@ export default {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: true,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiBullhorn",
|
||||
title: "NotifyQueue",
|
||||
helpUrl: "form-ops-notify-queue",
|
||||
|
||||
@@ -248,6 +248,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: true,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiDoorOpen",
|
||||
title: "ServerState",
|
||||
helpUrl: "form-ops-server-state",
|
||||
|
||||
@@ -650,6 +650,7 @@ async function clickHandler(menuItem) {
|
||||
function generateMenu(vm) {
|
||||
let menuOptions = {
|
||||
isMain: false,
|
||||
readOnly: vm.formState.readOnly,
|
||||
icon: "$ayiSplotch",
|
||||
title: "Widget",
|
||||
helpUrl: "form-widget",
|
||||
|
||||
Reference in New Issue
Block a user