@@ -58,7 +55,7 @@ const props = defineProps({
@@ -68,7 +65,7 @@ const props = defineProps({
diff --git a/src/pages/Item/ItemListFilter.vue b/src/pages/Item/ItemListFilter.vue
index 22e948e06..f4500d5fa 100644
--- a/src/pages/Item/ItemListFilter.vue
+++ b/src/pages/Item/ItemListFilter.vue
@@ -177,11 +177,7 @@ onMounted(async () => {
-
+
@@ -197,8 +193,7 @@ onMounted(async () => {
option-label="name"
hide-selected
dense
- outlined
- rounded
+ filled
/>
@@ -213,8 +208,7 @@ onMounted(async () => {
option-label="name"
hide-selected
dense
- outlined
- rounded
+ filled
>
@@ -240,8 +234,7 @@ onMounted(async () => {
option-label="nickname"
hide-selected
dense
- outlined
- rounded
+ filled
/>
@@ -252,8 +245,7 @@ onMounted(async () => {
@update:model-value="searchFn()"
hide-selected
dense
- outlined
- rounded
+ filled
/>
@@ -282,8 +274,7 @@ onMounted(async () => {
:options="tagOptions"
option-label="name"
dense
- outlined
- rounded
+ filled
:emit-value="false"
use-input
:is-clearable="false"
@@ -299,8 +290,7 @@ onMounted(async () => {
option-value="value"
option-label="value"
dense
- outlined
- rounded
+ filled
emit-value
use-input
:disable="!tag"
@@ -312,7 +302,7 @@ onMounted(async () => {
v-model="tag.value"
:label="t('params.value')"
:disable="!tag"
- is-outlined
+ filled
:is-clearable="false"
@keydown.enter.prevent="applyTags(params, searchFn)"
/>
@@ -351,8 +341,7 @@ onMounted(async () => {
option-label="label"
option-value="label"
dense
- outlined
- rounded
+ filled
:emit-value="false"
use-input
:is-clearable="false"
@@ -377,7 +366,7 @@ onMounted(async () => {
v-model="fieldFilter.value"
:label="t('params.value')"
:disable="!fieldFilter.selectedField"
- is-outlined
+ filled
@keydown.enter="applyFieldFilters(params, searchFn)"
/>
diff --git a/src/pages/Item/ItemRequest.vue b/src/pages/Item/ItemRequest.vue
index 76e4b8083..ccae98025 100644
--- a/src/pages/Item/ItemRequest.vue
+++ b/src/pages/Item/ItemRequest.vue
@@ -3,6 +3,7 @@ import { ref, computed, onMounted } from 'vue';
import { useI18n } from 'vue-i18n';
import TicketDescriptorProxy from 'src/pages/Ticket/Card/TicketDescriptorProxy.vue';
import WorkerDescriptorProxy from 'src/pages/Worker/Card/WorkerDescriptorProxy.vue';
+import DepartmentDescriptorProxy from 'src/pages/Worker/Department/Card/DepartmentDescriptorProxy.vue';
import { useStateStore } from 'stores/useStateStore';
import { toCurrency } from 'filters/index';
import useNotify from 'src/composables/useNotify.js';
@@ -61,6 +62,7 @@ const columns = computed(() => [
columnClass: 'expand',
},
{
+ align: 'left',
label: t('item.buyRequest.requester'),
name: 'requesterName',
component: 'select',
@@ -77,6 +79,19 @@ const columns = computed(() => [
},
columnClass: 'shrink',
},
+ {
+ align: 'left',
+ name: 'departmentFk',
+ label: t('customer.summary.team'),
+ component: 'select',
+ attrs: {
+ url: 'Departments',
+ },
+ columnField: {
+ component: null,
+ },
+ format: (row, dashIfEmpty) => dashIfEmpty(row.departmentName),
+ },
{
label: t('item.buyRequest.requested'),
name: 'quantity',
@@ -107,6 +122,7 @@ const columns = computed(() => [
},
columnClass: 'shrink',
},
+
{
label: t('globals.item'),
name: 'item',
@@ -226,7 +242,6 @@ const onDenyAccept = (_, responseData) => {
order="shipped ASC, isOk ASC"
:columns="columns"
:user-params="userParams"
- :is-editable="true"
:right-search="false"
auto-load
:disable-option="{ card: true }"
@@ -263,6 +278,12 @@ const onDenyAccept = (_, responseData) => {
+
+
+ {{ row.departmentName }}
+
+
+
diff --git a/src/pages/Item/ItemRequestFilter.vue b/src/pages/Item/ItemRequestFilter.vue
index c2a63ddd9..68f36c566 100644
--- a/src/pages/Item/ItemRequestFilter.vue
+++ b/src/pages/Item/ItemRequestFilter.vue
@@ -87,11 +87,7 @@ onMounted(async () => {
-
+
@@ -99,7 +95,7 @@ onMounted(async () => {
@@ -114,8 +110,7 @@ onMounted(async () => {
option-label="nickname"
hide-selected
dense
- outlined
- rounded
+ filled
/>
@@ -124,7 +119,7 @@ onMounted(async () => {
@@ -139,8 +134,7 @@ onMounted(async () => {
option-label="name"
hide-selected
dense
- outlined
- rounded
+ filled
/>
@@ -153,25 +147,16 @@ onMounted(async () => {
:params="{ departmentCodes: ['VT'] }"
hide-selected
dense
- outlined
- rounded
+ filled
/>
-
+
-
+
@@ -180,7 +165,7 @@ onMounted(async () => {
:label="t('params.daysOnward')"
v-model="params.daysOnward"
lazy-rules
- is-outlined
+ filled
/>
@@ -195,8 +180,7 @@ onMounted(async () => {
option-label="name"
hide-selected
dense
- outlined
- rounded
+ filled
/>
@@ -221,7 +205,7 @@ en:
attenderFk: Atender
clientFk: Client id
warehouseFk: Warehouse
- requesterFk: Salesperson
+ requesterFk: Requester
from: From
to: To
mine: For me
@@ -239,7 +223,7 @@ es:
attenderFk: Comprador
clientFk: Id cliente
warehouseFk: Almacén
- requesterFk: Comercial
+ requesterFk: Solicitante
from: Desde
to: Hasta
mine: Para mi
diff --git a/src/pages/Item/ItemType/Card/ItemTypeCard.vue b/src/pages/Item/ItemType/Card/ItemTypeCard.vue
index 84e810de5..bd41b1be2 100644
--- a/src/pages/Item/ItemType/Card/ItemTypeCard.vue
+++ b/src/pages/Item/ItemType/Card/ItemTypeCard.vue
@@ -1,11 +1,11 @@
- {
});
-
@@ -45,5 +46,5 @@ const entityId = computed(() => {
:value="entity.category?.name"
/>
-
+
diff --git a/src/pages/Item/ItemType/Card/ItemTypeSummary.vue b/src/pages/Item/ItemType/Card/ItemTypeSummary.vue
index 3b63c4b63..ba294e144 100644
--- a/src/pages/Item/ItemType/Card/ItemTypeSummary.vue
+++ b/src/pages/Item/ItemType/Card/ItemTypeSummary.vue
@@ -7,6 +7,7 @@ import filter from './ItemTypeFilter.js';
import CardSummary from 'components/ui/CardSummary.vue';
import VnLv from 'src/components/ui/VnLv.vue';
import VnToSummary from 'src/components/ui/VnToSummary.vue';
+import VnTitle from 'src/components/common/VnTitle.vue';
onUpdated(() => summaryRef.value.fetch());
@@ -62,13 +63,10 @@ async function setItemTypeData(data) {
-
+
diff --git a/src/pages/Item/locale/en.yml b/src/pages/Item/locale/en.yml
index 9d27fc96e..ff8df26d4 100644
--- a/src/pages/Item/locale/en.yml
+++ b/src/pages/Item/locale/en.yml
@@ -84,7 +84,7 @@ item:
attenderFk: Atender
clientFk: Client id
warehouseFk: Warehouse
- requesterFk: Salesperson
+ requesterFk: Requester
from: From
to: To
mine: For me
diff --git a/src/pages/Item/locale/es.yml b/src/pages/Item/locale/es.yml
index 935f5160b..7b768d0cb 100644
--- a/src/pages/Item/locale/es.yml
+++ b/src/pages/Item/locale/es.yml
@@ -93,7 +93,7 @@ item:
attenderFk: Comprador
clientFk: Id cliente
warehouseFk: Almacén
- requesterFk: Comercial
+ requesterFk: Solicitante
from: Desde
to: Hasta
mine: Para mi
diff --git a/src/pages/Monitor/MonitorClients.vue b/src/pages/Monitor/MonitorClients.vue
index c1958cdcb..2ba5f4c0b 100644
--- a/src/pages/Monitor/MonitorClients.vue
+++ b/src/pages/Monitor/MonitorClients.vue
@@ -1,19 +1,22 @@
@@ -121,6 +123,8 @@ const columns = computed(() => [
:disable-option="{ card: true }"
dense
class="q-px-none"
+ :row-click="({ id }) => openTab(id)"
+ :row-ctrl-click="(_, { id }) => openTab(id)"
>
@@ -128,13 +132,17 @@ const columns = computed(() => [
-
-
-
+
+
+ {{ row.department }}
+
-
-
+
+ {{ row.clientName }}
+
diff --git a/src/pages/Monitor/MonitorOrders.vue b/src/pages/Monitor/MonitorOrders.vue
index 873f8abb4..bdfcf3837 100644
--- a/src/pages/Monitor/MonitorOrders.vue
+++ b/src/pages/Monitor/MonitorOrders.vue
@@ -1,14 +1,15 @@
}"
default-mode="table"
:row-click="({ id }) => openTab(id)"
+ :row-ctrl-click="(_, { id }) => openTab(id)"
v-model:selected="selectedRows"
:disable-option="{ card: true }"
>
@@ -179,17 +178,16 @@ const openTab = (id) =>
-
-
-
-
+
+ {{ row.clientName }}
+
-
-
-
-
-
-
+
+
+ {{ row.departmentName }}
+
diff --git a/src/pages/Monitor/Ticket/MonitorTicketFilter.vue b/src/pages/Monitor/Ticket/MonitorTicketFilter.vue
index 48710d696..1cadd4cb4 100644
--- a/src/pages/Monitor/Ticket/MonitorTicketFilter.vue
+++ b/src/pages/Monitor/Ticket/MonitorTicketFilter.vue
@@ -9,7 +9,6 @@ import VnInput from 'src/components/common/VnInput.vue';
import VnInputNumber from 'src/components/common/VnInputNumber.vue';
import FetchData from 'src/components/FetchData.vue';
import { dateRange } from 'src/filters';
-import VnSelectWorker from 'src/components/common/VnSelectWorker.vue';
defineProps({ dataKey: { type: String, required: true } });
const { t, te } = useI18n();
@@ -78,7 +77,7 @@ const getLocale = (label) => {
@@ -87,7 +86,7 @@ const getLocale = (label) => {
@@ -96,7 +95,7 @@ const getLocale = (label) => {
handleScopeDays(params, val)"
@remove="(val) => handleScopeDays(params, val)"
/>
@@ -107,66 +106,54 @@ const getLocale = (label) => {
-
-
+ filled
+ :label="t('globals.params.departmentFk')"
+ v-model="params.departmentFk"
+ url="Departments"
+ />
-
+
{
{
{
{
-
-
-
-
- [
},
},
{
- label: t('salesClientsTable.salesPerson'),
- name: 'salesPersonFk',
- field: 'userName',
align: 'left',
- columnFilter: {
- component: 'select',
- attrs: {
- url: 'Workers/search?departmentCodes=["VT"]',
- fields: ['id', 'name', 'nickname', 'code'],
- sortBy: 'nickname ASC',
- optionLabel: 'nickname',
- },
+ name: 'departmentFk',
+ label: t('customer.summary.team'),
+ component: 'select',
+ attrs: {
+ url: 'Departments',
},
+ create: true,
+ columnField: {
+ component: null,
+ },
+ format: (row, dashIfEmpty) => dashIfEmpty(row.departmentName),
},
{
label: t('salesClientsTable.date'),
@@ -321,8 +321,7 @@ const totalPriceColor = (ticket) => {
if (total > 0 && total < 50) return 'warning';
};
-const openTab = (id) =>
- window.open(`#/ticket/${id}/sale`, '_blank', 'noopener, noreferrer');
+const openTab = (id) => useOpenURL(`#/ticket/${id}/sale`);
default-mode="table"
auto-load
:row-click="({ id }) => openTab(id)"
+ :row-ctrl-click="(_, { id }) => openTab(id)"
:disable-option="{ card: true }"
:user-params="{ from, to, scopeDays: 0 }"
>
@@ -436,10 +436,10 @@ const openTab = (id) =>