code refactor

This commit is contained in:
MaysWind
2025-04-03 23:44:06 +08:00
parent 1092cc2fdc
commit b059055a93
3 changed files with 27 additions and 26 deletions
+2 -1
View File
@@ -3,7 +3,8 @@ import { TransactionType } from '@/core/transaction.ts';
import { Account } from '@/models/account.ts';
import { TransactionCategory } from '@/models/transaction_category.ts';
import { TransactionTag } from '@/models/transaction_tag.ts';
import { Transaction, TransactionPicture } from '@/models/transaction.ts';
import { TransactionPicture } from '@/models/transaction_picture_info.ts';
import { Transaction } from '@/models/transaction.ts';
import {
isNumber
+1 -25
View File
@@ -5,7 +5,7 @@ import { TransactionType } from '@/core/transaction.ts';
import { Account, type AccountInfoResponse } from './account.ts';
import { TransactionCategory, type TransactionCategoryInfoResponse } from './transaction_category.ts';
import { TransactionTag, type TransactionTagInfoResponse } from './transaction_tag.ts';
import type { TransactionPictureInfoBasicResponse } from './transaction_picture_info.ts';
import { TransactionPicture, type TransactionPictureInfoBasicResponse } from './transaction_picture_info.ts';
export class Transaction implements TransactionInfoResponse {
public id: string;
@@ -391,30 +391,6 @@ export class Transaction implements TransactionInfoResponse {
}
}
export class TransactionPicture implements TransactionPictureInfoBasicResponse {
public pictureId: string;
public originalUrl: string;
private constructor(pictureId: string, originalUrl: string) {
this.pictureId = pictureId;
this.originalUrl = originalUrl;
}
public static of(picture: TransactionPictureInfoBasicResponse): TransactionPicture {
return new TransactionPicture(picture.pictureId, picture.originalUrl);
}
public static ofMulti(pictureResponses: TransactionPictureInfoBasicResponse[]): TransactionPicture[] {
const pictures: TransactionPicture[] = [];
for (const pictureResponse of pictureResponses) {
pictures.push(TransactionPicture.of(pictureResponse));
}
return pictures;
}
}
export class TransactionGeoLocation implements TransactionGeoLocationRequest {
public latitude: number;
public longitude: number;
+24
View File
@@ -1,3 +1,27 @@
export class TransactionPicture implements TransactionPictureInfoBasicResponse {
public pictureId: string;
public originalUrl: string;
private constructor(pictureId: string, originalUrl: string) {
this.pictureId = pictureId;
this.originalUrl = originalUrl;
}
public static of(picture: TransactionPictureInfoBasicResponse): TransactionPicture {
return new TransactionPicture(picture.pictureId, picture.originalUrl);
}
public static ofMulti(pictureResponses: TransactionPictureInfoBasicResponse[]): TransactionPicture[] {
const pictures: TransactionPicture[] = [];
for (const pictureResponse of pictureResponses) {
pictures.push(TransactionPicture.of(pictureResponse));
}
return pictures;
}
}
export interface TransactionPictureUnusedDeleteRequest {
readonly id: string;
}