diff --git a/src/components/ui/VnUsesMana.vue b/src/components/ui/VnUsesMana.vue
deleted file mode 100644
index cb066b235..000000000
--- a/src/components/ui/VnUsesMana.vue
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
-
-
-
-
-
- es:
- Promotion mana: Maná promoción
- Claim mana: Maná reclamación
-
diff --git a/src/pages/Ticket/Card/TicketEditMana.vue b/src/pages/Ticket/Card/TicketEditMana.vue
index 266c82ccd..152d24dc5 100644
--- a/src/pages/Ticket/Card/TicketEditMana.vue
+++ b/src/pages/Ticket/Card/TicketEditMana.vue
@@ -4,7 +4,6 @@ import { useI18n } from 'vue-i18n';
import { computed, ref } from 'vue';
import { useRoute } from 'vue-router';
import { toCurrency } from 'src/filters';
-import VnUsesMana from 'components/ui/VnUsesMana.vue';
const $props = defineProps({
newPrice: {
@@ -15,23 +14,36 @@ const $props = defineProps({
type: Object,
default: null,
},
+ componentId: {
+ type: Number,
+ default: null,
+ },
});
+const emit = defineEmits(['save', 'cancel', 'update:componentId']);
+
const route = useRoute();
const mana = ref(null);
-const usesMana = ref(false);
-
-const emit = defineEmits(['save', 'cancel']);
+const usesMana = ref([]);
const { t } = useI18n();
const QPopupProxyRef = ref(null);
-const manaCode = ref($props.manaCode);
+
+const componentId = computed({
+ get: () => $props.componentId,
+ set: (val) => emit('update:componentId', val),
+});
const save = (sale = $props.sale) => {
emit('save', sale);
QPopupProxyRef.value.hide();
};
+const cancel = () => {
+ emit('cancel');
+ QPopupProxyRef.value.hide();
+};
+
const getMana = async () => {
const { data } = await axios.get(`Tickets/${route.params.id}/getDepartmentMana`);
mana.value = data;
@@ -39,15 +51,12 @@ const getMana = async () => {
};
const getUsesMana = async () => {
- const { data } = await axios.get('Sales/usesMana');
+ const { data } = await axios.get('Sales/getComponents');
usesMana.value = data;
};
-const cancel = () => {
- emit('cancel');
- QPopupProxyRef.value.hide();
-};
const hasMana = computed(() => typeof mana.value === 'number');
+
defineExpose({ save });
@@ -59,17 +68,28 @@ defineExpose({ save });
>
-
+
+
+
-
-
+
+
+
+
{{ t('New price') }}
-
- {{ toCurrency($props.newPrice) }}
-
+ {{ toCurrency(newPrice) }}
@@ -77,7 +97,6 @@ defineExpose({ save });
@@ -86,7 +105,6 @@ defineExpose({ save });
-
-
-es:
- New price: Nuevo precio
-
diff --git a/src/pages/Ticket/Card/TicketSale.vue b/src/pages/Ticket/Card/TicketSale.vue
index 2fb305cc3..d84d322fc 100644
--- a/src/pages/Ticket/Card/TicketSale.vue
+++ b/src/pages/Ticket/Card/TicketSale.vue
@@ -45,7 +45,7 @@ const isTicketEditable = ref(false);
const sales = ref([]);
const editableStatesOptions = ref([]);
const selectedSales = ref([]);
-const manaCode = ref('mana');
+const componentId = ref(null);
const ticketState = computed(() => store.data?.ticketState?.state?.code);
const transfer = ref({
lastActiveTickets: [],
@@ -262,18 +262,6 @@ const DEFAULT_EDIT = {
oldQuantity: null,
};
const edit = ref({ ...DEFAULT_EDIT });
-const usesMana = ref(null);
-
-const getUsesMana = async () => {
- const { data } = await axios.get('Sales/usesMana');
- usesMana.value = data;
-};
-
-const getMana = async () => {
- const { data } = await axios.get(`Tickets/${route.params.id}/getDepartmentMana`);
- mana.value = data;
- await getUsesMana();
-};
const selectedValidSales = computed(() => {
if (!sales.value) return;
@@ -306,11 +294,14 @@ const changePrice = async (sale) => {
if (newPrice != null && newPrice != sale.price) {
if (await isSalePrepared(sale)) {
await confirmUpdate(() => updatePrice(sale, newPrice));
- } else updatePrice(sale, newPrice);
+ } else await updatePrice(sale, newPrice);
}
};
const updatePrice = async (sale, newPrice) => {
- await axios.post(`Sales/${sale.id}/updatePrice`, { newPrice });
+ await axios.post(`Sales/${sale.id}/updatePrice`, {
+ newPrice: newPrice,
+ componentId: componentId.value,
+ });
sale.price = newPrice;
edit.value = { ...DEFAULT_EDIT };
notify('globals.dataSaved', 'positive');
@@ -341,7 +332,7 @@ const updateDiscount = async (sales, newDiscount = 0) => {
const params = {
salesIds,
newDiscount,
- manaCode: manaCode.value,
+ componentId: componentId.value,
};
await axios.post(`Tickets/${route.params.id}/updateDiscount`, params);
notify('globals.dataSaved', 'positive');
@@ -796,10 +787,11 @@ watch(
ref="editPriceProxyRef"
:sale="row"
:new-price="getNewPrice"
+ v-model:component-id="componentId"
@save="changePrice"
>
editManaProxyRef.save(row)"
+ @keyup.enter.stop="() => editPriceProxyRef.save(row)"
v-model.number="edit.price"
:label="t('basicData.price')"
type="number"
@@ -818,7 +810,7 @@ watch(
ref="editManaProxyRef"
:sale="row"
:new-price="getNewPrice"
- :mana-code="manaCode"
+ v-model:component-id="componentId"
@save="changeDiscount"
>
import('src/pages/Ticket/Card/TicketExpedition.vue'),
},
@@ -168,7 +168,7 @@ const ticketCard = {
name: 'TicketBoxing',
meta: {
title: 'boxing',
- icon: 'view_in_ar',
+ icon: 'videocam',
},
component: () => import('src/pages/Ticket/Card/TicketBoxing.vue'),
},