This commit is contained in:
2020-07-31 21:54:06 +00:00
parent ecc931dfc0
commit b5278f511c
5 changed files with 45 additions and 25 deletions

View File

@@ -49,7 +49,7 @@ export default {
});
} else {
vm.$router.push({
name: "customer-user",
name: "cust-user",
params: { recordid: tid.id }
});
}

View File

@@ -21,9 +21,21 @@
export default {
async created() {
await window.$gz.enums.fetchEnumList("AuthorizationRoles");
this.availableRoles = window.$gz.enums.getSelectionList(
"AuthorizationRoles"
);
let rawRoles = window.$gz.enums.getSelectionList("AuthorizationRoles");
if (this.limitSelectionTo == null) {
this.availableRoles = rawRoles;
} else {
if (this.limitSelectionTo == "inside") {
//CustomerLimited=2048, CustomerFull=4096
this.availableRoles = rawRoles.filter(
z => z.id != 2048 && z.id != 4096
);
} else {
this.availableRoles = rawRoles.filter(
z => z.id == 2048 || z.id == 4096
);
}
}
},
data() {
return {
@@ -42,6 +54,7 @@ export default {
type: String,
required: false
},
limitSelectionTo: { type: String, default: null }, //"inside" - no customer roles, "outside" - no non-customer roles
testId: String
},
computed: {

View File

@@ -56,6 +56,7 @@
testId="roles"
:error-messages="form().serverErrors(this, 'roles')"
@input="fieldValueChanged('roles')"
limitSelectionTo="inside"
></gz-role-picker>
</v-col>

View File

@@ -11,6 +11,27 @@
<v-row>
<gz-error :errorBoxMessage="formState.errorBoxMessage"></gz-error>
<v-col
v-if="form().showMe(this, 'UserId')"
cols="12"
sm="6"
lg="4"
xl="3"
>
<gz-pick-list
:ayaType="ayaTypes().Customer"
:showEditIcon="true"
v-model="obj.customerId"
:readonly="formState.readOnly"
:disabled="formState.readOnly"
:label="$ay.t('Customer')"
ref="customerId"
:data-cy="!!$ay.dev ? 'customerId' : false"
:error-messages="form().serverErrors(this, 'customerId')"
@input="fieldValueChanged('customerId')"
></gz-pick-list>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<v-text-field
v-model="obj.name"
@@ -30,22 +51,6 @@
@input="fieldValueChanged('name')"
></v-text-field>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<v-text-field
v-model="obj.employeeNumber"
:readonly="formState.readOnly"
:disabled="formState.readOnly"
:clearable="!formState.readOnly"
@click:clear="fieldValueChanged('employeeNumber')"
:counter="255"
:label="$ay.t('UserEmployeeNumber')"
:rules="[form().max255(this, 'employeeNumber')]"
:error-messages="form().serverErrors(this, 'employeeNumber')"
ref="employeeNumber"
:data-cy="!!$ay.dev ? 'employeeNumber' : false"
@input="fieldValueChanged('employeeNumber')"
></v-text-field>
</v-col>
<v-col cols="12" sm="6" lg="4" xl="3">
<gz-role-picker
@@ -57,6 +62,7 @@
testId="roles"
:error-messages="form().serverErrors(this, 'roles')"
@input="fieldValueChanged('roles')"
limitSelectionTo="outside"
></gz-role-picker>
</v-col>
@@ -734,7 +740,7 @@ async function fetchTranslatedText(vm) {
await window.$gz.translation.cacheTranslations([
"User",
"Name",
"UserEmployeeNumber",
"Customer",
"NewLogin",
"NewPassword",
"AuthorizationRoles",
@@ -765,9 +771,9 @@ async function fetchTranslatedText(vm) {
//
async function populateSelectionLists(vm) {
//ensure the pick lists required are pre-fetched
await window.$gz.enums.fetchEnumList("insideusertype");
await window.$gz.enums.fetchEnumList("outsideusertype");
vm.selectLists.usertypes = window.$gz.enums.getSelectionList(
"insideusertype"
"outsideusertype"
);
}
</script>

View File

@@ -66,7 +66,7 @@ export default {
window.$gz.eventBus.$emit("openobject", {
type: window.$gz.type.User,
id: item.id,
inside: true
inside: false
});
},
rolesDisplayFromRoles(roles) {
@@ -112,7 +112,7 @@ export default {
id: o.id,
name: o.name,
active: o.active,
userType: window.$gz.enums.get("insideusertype", o.userType),
userType: window.$gz.enums.get("outsideusertype", o.userType),
lastLogin: window.$gz.locale.utcDateToShortDateAndTimeLocalized(
o.lastLogin,
this.timeZoneName,