diff --git a/src/pages/Account/AccountList.vue b/src/pages/Account/AccountList.vue index 933f62b6c..56d54a47d 100644 --- a/src/pages/Account/AccountList.vue +++ b/src/pages/Account/AccountList.vue @@ -21,17 +21,9 @@ const filter = { include: { relation: 'role', scope: { fields: ['id', 'name'] } }, }; -const STATE_COLOR = { - pending: 'warning', - managed: 'info', - resolved: 'positive', -}; function getApiUrl() { return new URL(window.location).origin; } -function stateColor(code) { - return STATE_COLOR[code]; -} function navigate(event, id) { if (event.ctrlKey || event.metaKey) return window.open(`${getApiUrl()}/#/account/${id}/summary`); @@ -86,37 +78,12 @@ function navigate(event, id) { v-for="row of rows" > - - - - {{ row.clientName }} - - - - - - - - - + - - - - {{ row.stateDescription }} - - + :label="t('account.card.nickname')" + :value="row.username" + > diff --git a/src/pages/Account/Card/AccountBasicData.vue b/src/pages/Account/Card/AccountBasicData.vue index 7a3548b8b..232e18d52 100644 --- a/src/pages/Account/Card/AccountBasicData.vue +++ b/src/pages/Account/Card/AccountBasicData.vue @@ -3,178 +3,52 @@ import { ref } from 'vue'; import { useRoute } from 'vue-router'; import { useI18n } from 'vue-i18n'; import VnSelect from 'src/components/common/VnSelect.vue'; -import FetchData from 'components/FetchData.vue'; import FormModel from 'components/FormModel.vue'; import VnRow from 'components/ui/VnRow.vue'; import VnInput from 'src/components/common/VnInput.vue'; import VnInputDate from 'components/common/VnInputDate.vue'; -import axios from 'axios'; -import { useSession } from 'src/composables/useSession'; - const route = useRoute(); const { t } = useI18n(); -const { getTokenMultimedia } = useSession(); -const token = getTokenMultimedia(); const accountFilter = { - fields: [ - 'id', - 'clientFk', - 'created', - 'workerFk', - 'accountStateFk', - 'packages', - 'pickup', - ], - include: [ - { - relation: 'client', - scope: { - fields: ['name'], - }, - }, - ], -}; - -const accountStates = ref([]); -const accountStatesCopy = ref([]); -const optionsList = ref([]); - -const workersOptions = ref([]); - -function setAccountStates(data) { - accountStates.value = data; - accountStatesCopy.value = data; -} - -async function getEnumValues() { - optionsList.value = [{ id: null, description: t('account.basicData.null') }]; - const { data } = await axios.get(`Applications/get-enum-values`, { - params: { - schema: 'vn', - table: 'account', - column: 'pickup', - }, - }); - for (let value of data) - optionsList.value.push({ - id: value, - description: t(`account.basicData.${value}`), - }); -} - -getEnumValues(); - -const statesFilter = { - options: accountStates, - filterFn: (options, value) => { - const search = value.toLowerCase(); - - if (value === '') return accountStatesCopy.value; - - return options.value.filter((row) => { - const description = row.description.toLowerCase(); - - return description.indexOf(search) > -1; - }); - }, + where: { id: route.params.id }, + fields: ['id', 'email', 'nickname', 'name', 'accountStateFk', 'packages', 'pickup'], + include: [], }; - (workersOptions = data)" - auto-load - /> - - + - + + + - + + + + + + - - - - - - - - - filter(value, update, statesFilter)" - :rules="validate('account.accountStateFk')" - :input-debounce="0" - > - - - - - - - - - - diff --git a/src/pages/Account/Role/AccountRoles.vue b/src/pages/Account/Role/AccountRoles.vue index 8e52b2196..f90c833f6 100644 --- a/src/pages/Account/Role/AccountRoles.vue +++ b/src/pages/Account/Role/AccountRoles.vue @@ -8,22 +8,16 @@ import VnLv from 'src/components/ui/VnLv.vue'; import CardList from 'src/components/ui/CardList.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue'; import AccountSummary from '../Card/AccountSummary.vue'; -import { useSummaryDialog } from 'src/composables/useSummaryDialog'; const stateStore = useStateStore(); const router = useRouter(); const { t } = useI18n(); -const STATE_COLOR = { - pending: 'warning', - managed: 'info', - resolved: 'positive', +const redirectToCreateView = () => { + router.push({ name: 'RoleCreate' }); }; function getApiUrl() { return new URL(window.location).origin; } -function stateColor(code) { - return STATE_COLOR[code]; -} function navigate(event, id) { if (event.ctrlKey || event.metaKey) return window.open(`${getApiUrl()}/#/account/${id}/summary`); @@ -49,37 +43,11 @@ function navigate(event, id) { v-for="row of rows" > - - - - {{ row.clientName }} - - - - - - - - - - + - - - - {{ row.stateDescription }} - - + :label="t('role.card.description')" + :value="row.description" + > @@ -101,5 +69,11 @@ function navigate(event, id) { + + + + {{ t('New client') }} + + diff --git a/src/pages/Account/locale/en.yml b/src/pages/Account/locale/en.yml index 04a6ff073..6ef3fdc17 100644 --- a/src/pages/Account/locale/en.yml +++ b/src/pages/Account/locale/en.yml @@ -15,11 +15,14 @@ account: mailAlias: Mail Alias mailForwarding: Mail Forwarding card: - nickname: Usuario + name: Name + nickname: User role: Rol + email: Email + alias: Alias + lang: Language actions: setPassword: Set password - disableAccount: name: Disable account title: La cuenta será deshabilitada @@ -32,3 +35,7 @@ role: pageTitles: inheritedRoles: Inherited Roles subRoles: Sub Roles + card: + description: Description + id: Id + name: Name diff --git a/src/pages/Account/locale/es.yml b/src/pages/Account/locale/es.yml index f61b1d4de..fbae7918a 100644 --- a/src/pages/Account/locale/es.yml +++ b/src/pages/Account/locale/es.yml @@ -16,7 +16,11 @@ account: mailForwarding: Reenvío de correo card: nickname: Usuario + name: Nombre role: Rol + email: Mail + alias: Alias + lang: dioma actions: setPassword: Establecer contraseña disableAccount: @@ -41,3 +45,7 @@ role: pageTitles: inheritedRoles: Roles heredados subRoles: Subroles + card: + description: Descripción + id: Idd + name: Nombre diff --git a/src/router/modules/account.js b/src/router/modules/account.js index a45261158..ff4eaa69c 100644 --- a/src/router/modules/account.js +++ b/src/router/modules/account.js @@ -53,41 +53,18 @@ export default { icon: 'group', }, component: () => import('src/pages/Account/Role/AccountRoles.vue'), - // children: [ - // { - // name: 'RoleCard', - // path: ':id', - // component: () => - // import('src/pages/Account/Role/Card/RoleCard.vue'), - // redirect: { name: 'RoleSummary' }, - // children: [ - // { - // name: 'RoleSummary', - // path: 'summary', - // meta: { - // title: 'summary', - // icon: 'launch', - // }, - // component: () => - // import( - // 'src/pages/Account/Role/Card/RoleSummary.vue' - // ), - // }, - // { - // name: 'RoleBasicData', - // path: 'basic-data', - // meta: { - // title: 'basicData', - // icon: 'vn:settings', - // }, - // component: () => - // import( - // 'src/pages/Account/Role/Card/RoleBasicData.vue' - // ), - // }, - // ], - // }, - // ], + children: [ + { + name: 'RoleCreate', + path: 'create', + meta: { + title: 'RoleCreate', + icon: 'add', + }, + component: () => + import('src/pages/Account/Role/AccountRoles.vue'), + }, + ], }, { path: 'alias',