書籍管理ウェブサービス / インタフェース2


書籍管理ウェブサービス

インタフェース設計

SOA風にインタフェースをまとめなおす

ユーザ情報系

ログイン

  • 入力
    • 社員番号
    • パスワード
  • 出力
    • セッションID
  • 処理
    • 入力された社員番号のユーザ情報を取得
      • 取得できなければエラー
    • ユーザ情報中のパスワードと入力されたパスワードを比較*1
      • 一致しなければエラー

ログアウト

  • 入力
    • セッションID
    • 社員番号
  • 処理
    • セッションIDを削除

ユーザ情報登録

  • 入力
    • セッションID
    • 社員番号
    • パスワード
    • 氏名
    • メールアドレス1
    • メールアドレス2
    • メールアドレス3
    • 管理者権限
  • 処理
    • 入力されたユーザ情報をDBに格納する

ユーザ情報取得

  • 入力
    • セッションID
    • 社員番号
  • 出力
    • 社員番号
    • 氏名
    • メールアドレス1
    • メールアドレス2
    • メールアドレス3
    • 管理者権限
  • 処理
    • 入力された社員番号に一致するユーザ情報をDBから取得し返す

所有/借用情報系

所有書籍検索

  • 入力
    • セッションID
    • 社員番号
  • 出力
    • 所有書籍情報リスト
      • ISBN(ASIN)
      • 書籍名
      • 著者
      • 出版社
      • おすすめ度
      • 紹介文
      • ステータス(貸出要請有、貸出中、返却待ち、通常)
      • 返却期限
      • 借用者社員番号
  • 処理
    • 入力された社員番号の社員が所有する書籍の情報を一括して取得する(所有書籍検索サービス)
    • ISBN(ASIN)で書籍の情報を取得する(書籍情報取得サービス)
    • まとめた結果を返す

借用書籍検索

  • 入力
    • セッションID
    • 社員番号
  • 出力
    • 借用書籍情報リスト
      • ISBN(ASIN)
      • 書籍名
      • 著者
      • 出版社
      • 所有者社員番号
      • 返却期限
  • 処理
    • 入力された社員番号の社員が借用している書籍の情報を一括して取得する(借用書籍検索サービス)
    • ISBN(ASIN)で書籍の情報を取得する(書籍情報取得サービス)
    • まとめた結果を返す

書籍所有者情報検索

  • 入力
    • セッションID
    • ISBN(ASIN)
  • 出力
    • 書籍詳細情報
      • ISBN(ASIN)
      • 画像URI
      • 書籍名
      • 著者
      • 出版社
    • 所有者ごとの書籍情報
      • 所有者社員番号
      • おすすめ度
      • 紹介文
      • ステータス(借用要請有、貸出中、返却待ち、通常)
      • 返却期限
      • 借用者社員番号
  • 処理
    • ISBN(ASIN)に一致する書籍の情報と所有者の情報を取得して返す

所有書籍情報取得

  • 入力
    • セッションID
    • 社員番号
    • ISBN(ASIN)
  • 出力
    • 書籍詳細情報
      • ISBN(ASIN)
      • 画像URI
      • 書籍名
      • 著者
      • 出版社
    • 所有者ごとの書籍情報
      • 所有者社員番号
      • おすすめ度
      • 紹介文
      • ステータス(借用要請有、貸出中、返却待ち、通常)
      • 返却期限
      • 借用者社員番号
  • 処理
    • 社員番号の社員が所有している書籍のうち、ISBN(ASIN)に一致する書籍の情報を取得して返す

所有書籍情報登録

  • 入力
    • セッションID
    • 社員番号
    • ISBN(ASIN)
    • 所有数
    • 紹介文
    • おすすめ度
  • 出力
    • 登録成否
  • 処理
    • 社員番号の社員が所有している書籍として、ISBN(ASIN)と紹介文、おすすめ度、所有数をDBに登録する

貸出要請

  • 入力
    • セッションID
    • ISBN(ASIN)
    • 要請者社員番号
    • 所有者社員番号
  • 出力
    • メール送信成否
  • 処理
    • 所有者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • 要請者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • ISBN(ASIN)で書籍の情報を取得する(書籍情報取得)
    • 情報をメール本文のテンプレートに埋め込み、メールを送信する
    • 所有者の社員番号とISBN(ASIN)に該当する書籍のステータスを「貸出要請有」にする

貸出承諾

  • 入力
    • セッションID
    • ISBN(ASIN)
    • 要請者社員番号
    • 所有者社員番号
  • 出力
    • メール送信成否
  • 処理
    • 所有者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • 要請者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • ISBN(ASIN)で書籍の情報を取得する(書籍情報取得サービス)
    • 情報をメール本文のテンプレートに埋め込み、メールを送信する
    • 所有者の社員番号とISBN(ASIN)に該当する書籍のステータスを「貸出中」にする

返却申請

  • 入力
    • セッションID
    • ISBN(ASIN)
    • 借用者社員番号
    • 所有者社員番号
  • 出力
    • メール送信成否
  • 処理
    • 所有者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • 借用者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • ISBN(ASIN)で書籍の情報を取得する(書籍情報取得サービス)
    • 情報をメール本文のテンプレートに埋め込み、メールを送信する
    • 所有者の社員番号とISBN(ASIN)に該当する書籍のステータスを「返却待ち」にする

返却確認

  • 入力
    • セッションID
    • ISBN(ASIN)
    • 借用者社員番号
    • 所有者社員番号
  • 出力
    • メール送信成否
  • 処理
    • 所有者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • 借用者の社員番号でユーザ情報を取得する(ユーザ情報取得サービス)
    • ISBN(ASIN)で書籍の情報を取得する(書籍情報取得サービス)
    • 情報をメール本文のテンプレートに埋め込み、メールを送信する
    • 所有者の社員番号とISBN(ASIN)に該当する書籍のステータスを「通常」にする

書籍情報系(Amazonのサービス)

これらの機能はAmazonのサービスをそのまま使用する。

書籍検索

  • 入力
    • セッションID
    • 検索キーワード
  • 出力
    • ISBN(ASIN)
    • 書籍名
    • 書籍イメージのパス(URI)
    • 著者
    • 出版社
    • などなど
  • 処理
    • 検索キーワードに該当する書籍を検索し、結果を返す

書籍情報取得

  • 入力
    • セッションID
    • ISBN(ASIN)
  • 出力
    • ISBN(ASIN)
    • 書籍名
    • 書籍イメージのパス(URI)
    • 著者
    • 出版社
    • などなど
  • 処理
    • ISBN(ASIN)に該当する書籍を検索し、結果を返す

*1 パスワードは暗号化かダイジェストでチェックする必要がある