code refactor
This commit is contained in:
@@ -338,23 +338,3 @@ export function isAccountOrSubAccountsHasButNotAllChecked(account: Account, filt
|
|||||||
|
|
||||||
return checkedCount > 0 && checkedCount < account.subAccounts.length;
|
return checkedCount > 0 && checkedCount < account.subAccounts.length;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function setAccountSuitableIcon(account: Account, oldCategory: number, newCategory: number): void {
|
|
||||||
const allCategories = AccountCategory.values();
|
|
||||||
|
|
||||||
for (let i = 0; i < allCategories.length; i++) {
|
|
||||||
if (allCategories[i].type === oldCategory) {
|
|
||||||
if (account.icon !== allCategories[i].defaultAccountIconId) {
|
|
||||||
return;
|
|
||||||
} else {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let i = 0; i < allCategories.length; i++) {
|
|
||||||
if (allCategories[i].type === newCategory) {
|
|
||||||
account.icon = allCategories[i].defaultAccountIconId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -133,6 +133,26 @@ export class Account implements AccountInfoResponse {
|
|||||||
this.visible = other.visible;
|
this.visible = other.visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public setSuitableIcon(oldCategory: number, newCategory: number): void {
|
||||||
|
const allCategories = AccountCategory.values();
|
||||||
|
|
||||||
|
for (let i = 0; i < allCategories.length; i++) {
|
||||||
|
if (allCategories[i].type === oldCategory) {
|
||||||
|
if (this.icon !== allCategories[i].defaultAccountIconId) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (let i = 0; i < allCategories.length; i++) {
|
||||||
|
if (allCategories[i].type === newCategory) {
|
||||||
|
this.icon = allCategories[i].defaultAccountIconId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public toCreateRequest(clientSessionId: string, subAccounts?: Account[], parentAccount?: Account): AccountCreateRequest {
|
public toCreateRequest(clientSessionId: string, subAccounts?: Account[], parentAccount?: Account): AccountCreateRequest {
|
||||||
let subAccountCreateRequests: AccountCreateRequest[] | undefined = undefined;
|
let subAccountCreateRequests: AccountCreateRequest[] | undefined = undefined;
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import type { LocalizedAccountCategory } from '@/core/account.ts';
|
|||||||
import { Account } from '@/models/account.ts';
|
import { Account } from '@/models/account.ts';
|
||||||
|
|
||||||
import { getCurrentUnixTime } from '@/lib/datetime.ts';
|
import { getCurrentUnixTime } from '@/lib/datetime.ts';
|
||||||
import { setAccountSuitableIcon } from '@/lib/account.ts';
|
|
||||||
|
|
||||||
export interface DayAndDisplayName {
|
export interface DayAndDisplayName {
|
||||||
readonly day: number;
|
readonly day: number;
|
||||||
@@ -153,7 +152,7 @@ export function useAccountEditPageBaseBase() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
watch(() => account.value.category, (newValue, oldValue) => {
|
watch(() => account.value.category, (newValue, oldValue) => {
|
||||||
setAccountSuitableIcon(account.value, oldValue, newValue);
|
account.value.setSuitableIcon(oldValue, newValue);
|
||||||
});
|
});
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -204,7 +204,6 @@ import { Account } from '@/models/account.ts';
|
|||||||
import { isNumber } from '@/lib/common.ts';
|
import { isNumber } from '@/lib/common.ts';
|
||||||
import { getCurrentUnixTime } from '@/lib/datetime.ts';
|
import { getCurrentUnixTime } from '@/lib/datetime.ts';
|
||||||
import { generateRandomUUID } from '@/lib/misc.ts';
|
import { generateRandomUUID } from '@/lib/misc.ts';
|
||||||
import { setAccountSuitableIcon } from '@/lib/account.ts';
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
mdiDotsVertical,
|
mdiDotsVertical,
|
||||||
@@ -314,7 +313,7 @@ function open(options?: { id?: string, currentAccount?: Account, category?: numb
|
|||||||
} else {
|
} else {
|
||||||
if (options && isNumber(options.category)) {
|
if (options && isNumber(options.category)) {
|
||||||
account.value.category = options.category;
|
account.value.category = options.category;
|
||||||
setAccountSuitableIcon(account.value, 1, options.category);
|
account.value.setSuitableIcon(1, options.category);
|
||||||
}
|
}
|
||||||
|
|
||||||
editAccountId.value = null;
|
editAccountId.value = null;
|
||||||
|
|||||||
Reference in New Issue
Block a user