This commit is contained in:
2024-05-17 14:19:57 +02:00
parent 2143fc83f1
commit 77b1c485d3
2 changed files with 9 additions and 8 deletions

View File

@@ -16,7 +16,8 @@ export const useSort = <T>(array: MaybeRefOrGetter<T[]>, options?: UseSortOption
}; };
const showColumn = (sortKey: string) => !toValue(options?.ignoredColums)?.includes(sortKey); const showColumn = (sortKey: string) => !toValue(options?.ignoredColums)?.includes(sortKey);
const headerProps = computed(() => ({ const headerProps = computed(() => ({
onSort: sortBy, showColumn, onSort: sortBy,
showColumn,
currentSortKey: sortKey.value, currentSortKey: sortKey.value,
sortDirection: sortDirection.value sortDirection: sortDirection.value
})); }));

View File

@@ -17,12 +17,12 @@ export type AcquiredMarketItem = {
const endpoint = '/api/acquisitions'; const endpoint = '/api/acquisitions';
export const useAcquiredItemStore = defineStore('market-acquisition', () => { export const useAcquiredItemStore = defineStore('market-acquisition', () => {
const _acquiredItems = ref<AcquiredMarketItem[]>([]); const acquiredItems = ref<AcquiredMarketItem[]>([]);
const authStore = useAuthStore(); const authStore = useAuthStore();
const items = computed(() => _acquiredItems.value); const items = computed(() => acquiredItems.value);
const addAcquiredItem = async (type: number, quantity: number, price: number) => { const addAcquiredItem = async (type: number, quantity: number, price: number) => {
_acquiredItems.value = [..._acquiredItems.value, (await marbasAxiosInstance.post<AcquiredMarketItem>(endpoint, { acquiredItems.value = [...acquiredItems.value, (await marbasAxiosInstance.post<AcquiredMarketItem>(endpoint, {
type: type, type: type,
quantity: quantity, quantity: quantity,
remaining: quantity, remaining: quantity,
@@ -33,17 +33,17 @@ export const useAcquiredItemStore = defineStore('market-acquisition', () => {
})).data]; })).data];
}; };
const removeAcquiredItem = async (type: number, quantity: number) => { const removeAcquiredItem = async (type: number, quantity: number) => {
const found = _acquiredItems.value.find(item => item.type === type); const found = acquiredItems.value.find(item => item.type === type);
if (!found) { if (!found) {
return; return;
} }
if (found.remaining <= 0) { if (found.remaining <= 0) {
_acquiredItems.value = _acquiredItems.value.filter(i => i.type !== type); acquiredItems.value = acquiredItems.value.filter(i => i.type !== type);
} else { } else {
_acquiredItems.value = _acquiredItems.value.map(i => { acquiredItems.value = acquiredItems.value.map(i => {
if (i.type === item.type) { if (i.type === item.type) {
return item; return item;
} else { } else {
@@ -61,7 +61,7 @@ export const useAcquiredItemStore = defineStore('market-acquisition', () => {
}; };
onMounted(async () => { onMounted(async () => {
_acquiredItems.value = (await marbasAxiosInstance.get<AcquiredMarketItem[]>(endpoint)).data.filter(item => item.remaining > 0); acquiredItems.value = (await marbasAxiosInstance.get<AcquiredMarketItem[]>(endpoint)).data.filter(item => item.remaining > 0);
}); });
return { items, addAcquiredItem, removeAcquiredItem }; return { items, addAcquiredItem, removeAcquiredItem };