2017-08-01 13 views
-6

私はこれが頼むのは馬鹿だと思ったが、なぜ私はそう言っていなかった:-)。 私は角4のアプリを構築しています。 私はデータベースに取引エンティティを持っています。 この転売の唯一の目的は、他の注文をグループ化することです。トランザクションを作成したユーザー - tranasctionは2つのプロパティこの角度サービスの良い名前

  1. 同上
  2. ユーザーIDを持っています。

最初にユーザーを認証するだけでトランザクションを作成できるため、transasctionIdを返すtranasctionCreator.create(userId)を作成しました。 が変更されたため、ゲストはトランザクションを作成できるようになり、ログイン後にのみ割り当てられます。

は、だから、私は何をすべきか思ったんだけど:

  1. 休暇tranasctionCreatorサービスはそのまま、新しいサービス tranasctionUserAssigner.assign(tranasctionId、USERID)
  2. 変更transactionCreator名とグループの両方の機能を追加します。この問題は、私がこのサービスの良い名前を見つけることができないということです。
+1

これらの名前の質問は投稿しないでください – Sreemat

答えて

1

Angularの難しいことのうちの1つは、記述的で反復性のあるスケーラブルな名前。私は、createTransactionのような最初の単語であることが欲しいという事実以外に、transactionCreatorに何か問題があるとは思わない。そして、正直言って、私はgenerateTransactionがもっと好きだと思っていますが、本当にそれは単なる好みです。

あなたの質問に:別のサービスを作成しないでください。 userIdを省略可能なパラメータにするか、null UserIDを渡すことができるようにAPIをオーバーライドするだけです。

もちろん、トランザクションに割り当てるためにユーザーのログインがあった後でupdateTransactionサービスを実行する必要があります。

ログイン後、作成したトランザクションをユーザーにどのように割り当てますか?作成したトランザクションをlocalStorageに保存し、ログイン時に何かを実行していますか?または、ユーザーが選択できる割り当てられていないトランザクションのページがありますか?

+0

ユーザーが新しい注文ページを入力すると、データベースにトランザクションエンティティを作成するリクエストが送信されます。ユーザーがこのエンティティにログインしていない場合は、userIdなしで保存されます。支払い前に、ユーザーがログインしていない場合、私は彼にログインを強制します。ユーザーがログインした後、私はサーバーにログされたユーザーとのトランザクションを更新する要求を送信しました。 –

関連する問題