Skip to content

Commit

Permalink
redefine returnPaymentMethodAction as returnInvoiceAction
Browse files Browse the repository at this point in the history
  • Loading branch information
ilovegadd committed Jun 15, 2024
1 parent 3d62e73 commit b2506d2
Show file tree
Hide file tree
Showing 6 changed files with 56 additions and 35 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/).
- optimize placeOrder.result
- extend assetTransaction.ISearchConditions
- extend transaction.ISearchConditions
- redefine returnPaymentMethodAction as returnInvoiceAction

### Deprecated

Expand Down
44 changes: 44 additions & 0 deletions src/action/transfer/return/invoice.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import * as ActionFactory from '../../../action';
import { AssetTransactionType } from '../../../assetTransactionType';
import { IInvoice } from '../../../invoice';
import { IReferencedInvoice, ISimpleOrder } from '../../../order';
import { IAttributes as ISendEmailMessageActionAttributes } from '../../transfer/send/message/email';
import * as ReturnActionFactory from '../return';

export type IAgent = ActionFactory.IParticipantAsProject;
type IRecipientAttributes = 'id' | 'name' | 'typeOf';
export type IRecipient = Pick<ActionFactory.IParticipantAsCustomer, IRecipientAttributes>
| Pick<ActionFactory.IParticipantAsPerson, IRecipientAttributes>
| Pick<ActionFactory.IParticipantAsWebApplication, IRecipientAttributes>;
export type IObject = Pick<
IReferencedInvoice,
'accountId' | 'issuedThrough' | 'paymentMethod' | 'paymentMethodId' | 'totalPaymentDue' | 'name' | 'additionalProperty'
>
& Pick<IInvoice, 'typeOf'>; // typeOfを定義(2024-03-06~)
// tslint:disable-next-line:no-empty-interface
export interface IResult { }
export interface IPotentialActions {
/**
* 返金処理完了を通知するEメール送信アクション
*/
sendEmailMessage?: ISendEmailMessageActionAttributes[];
}
export type IPurpose = ISimpleOrder;
export interface IInstrument {
typeOf: AssetTransactionType.Refund;
transactionNumber: string;
}
export interface IAttributes extends Pick<
ReturnActionFactory.IAttributes<IObject, IResult>,
'agent' | 'error' | 'instrument' | 'object' | 'potentialActions' | 'purpose' | 'recipient' | 'result' | 'project' | 'sameAs' | 'typeOf'
> {
agent: IAgent;
recipient: IRecipient;
purpose: IPurpose;
potentialActions?: IPotentialActions;
instrument?: IInstrument; // define(2024-06-17~)
}
/**
* 請求返却アクション
*/
export type IAction = ReturnActionFactory.IAction<IAttributes>;
8 changes: 6 additions & 2 deletions src/action/transfer/return/order.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as ActionFactory from '../../../action';
import * as OrderFactory from '../../../order';
import { IAttributes as IReturnPaymentMethodActionAttributes } from '../../transfer/return/paymentMethod';
import { IAttributes as IReturnInvoiceActionAttributes } from '../../transfer/return/invoice';
import * as ReturnActionFactory from '../return';
import { IAttributes as ISendEmailMessageActionAttributes } from '../send/message/email';
import * as ReturnPointAwardActionFactory from './pointAward';
Expand All @@ -17,12 +17,16 @@ export type IObject = OrderFactory.ISimpleOrder & {
dateReturned: Date;
};
export type IResult = any;
export type IPotentialReturnInvoiceAction = Pick<
IReturnInvoiceActionAttributes,
'agent' | 'project' | 'object' | 'potentialActions' | 'purpose' | 'recipient' | 'typeOf'
>;
export interface IPotentialActions {
/**
* 決済返却アクション
* refundから移行(2022-08-10~)
*/
returnPaymentMethod: IReturnPaymentMethodActionAttributes[];
returnPaymentMethod: IPotentialReturnInvoiceAction[];
// returnMoneyTransfer: ReturnMoneyTransferActionFactory.IAttributes[]; // 廃止(2024-02-04~)
/**
* ポイントインセンティブ返却アクション
Expand Down
28 changes: 0 additions & 28 deletions src/action/transfer/return/paymentMethod.ts

This file was deleted.

6 changes: 3 additions & 3 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ import * as RefundActionFactory from './action/trade/refund';
import * as GiveActionFactory from './action/transfer/give';
import * as GivePointAwardActionFactory from './action/transfer/give/pointAward';
import * as MoneyTransferActionFactory from './action/transfer/moneyTransfer';
import * as ReturnInvoiceActionFactory from './action/transfer/return/invoice';
import * as ReturnMoneyTransferActionFactory from './action/transfer/return/moneyTransfer';
import * as ReturnOrderActionFactory from './action/transfer/return/order';
import * as ReturnPaymentMethodActionFactory from './action/transfer/return/paymentMethod';
import * as ReturnPointAwardActionFactory from './action/transfer/return/pointAward';
import * as ReturnReserveTransactionActionFactory from './action/transfer/return/reserveTransaction';
import * as SendEmailMessageActionFactory from './action/transfer/send/message/email';
Expand Down Expand Up @@ -308,12 +308,12 @@ export namespace action {
* returnはネームスペース名に使えないのでreturnAction
*/
export namespace returnAction {
// tslint:disable-next-line:no-shadowed-variable
export import invoice = ReturnInvoiceActionFactory;
// tslint:disable-next-line:no-shadowed-variable
export import moneyTransfer = ReturnMoneyTransferActionFactory;
// tslint:disable-next-line:no-shadowed-variable
export import order = ReturnOrderActionFactory;
// tslint:disable-next-line:no-shadowed-variable
export import paymentMethod = ReturnPaymentMethodActionFactory;
export import pointAward = ReturnPointAwardActionFactory;
export import reserveTransaction = ReturnReserveTransactionActionFactory;
}
Expand Down
4 changes: 2 additions & 2 deletions src/task/returnPayTransaction.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { IAttributes as IReturnActionAttributes } from '../action/transfer/return/paymentMethod';
import { IPotentialReturnInvoiceAction } from '../action/transfer/return/order';
import { IExtendId } from '../autoGenerated';
import * as TaskFactory from '../task';
import { TaskName } from '../taskName';

export type IData = IReturnActionAttributes;
export type IData = IPotentialReturnInvoiceAction;
export interface IAttributes extends TaskFactory.IAttributes {
name: TaskName.ReturnPayTransaction;
data: IData;
Expand Down

0 comments on commit b2506d2

Please sign in to comment.