diff --git a/documents/forMarkdown/future_muscle_partner/README.md b/documents/forMarkdown/future_muscle_partner/README.md new file mode 100644 index 00000000..53e1d381 --- /dev/null +++ b/documents/forMarkdown/future_muscle_partner/README.md @@ -0,0 +1,33 @@ +## Future Muscle Partner + +~いきつけのジムでパーソナルトレーニングを受けよう~ のFuture Muscle Partnerのリポジトリ。 + +## サービスコンセプト + +パーソナルトレーナーを身近なものにして、質が高く安全で楽しいフィットネス体験を提供する。 + +![アプリを通してトレーニがトレーナに予約し、トレーニングを実施するフロー](docs/future_muscle_partner_abstract.png) + +サービス概要: + +- アプリ上でジム公認のトレーナーを検索&予約し、いきつけのジムでトレーニングを受けることができる + +主なアクターとメリット: + +- トレーニー + - 自分が通っているジムでパーソナル受けられる + - トレーナーの得意分野ごとにトレーナーを使い分けられる +- パーソナルトレーニー + - 24H型ジムでサービスを提供できる + - いつ/誰に/どんなメニューでトレーニングしたかを管理できる + +## フォルダ階層 + +```sh +. +├── backend # バックエンド系のコード +├── docs # 設計書 +├── frontend # フロントエンド系のコード +├── infra # インフラ系のコード +``` + diff --git "a/documents/forMarkdown/future_muscle_partner/docs/01_\347\222\260\345\242\203\346\247\213\347\257\211/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/01_\347\222\260\345\242\203\346\247\213\347\257\211/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/02_\351\226\213\347\231\272\350\246\217\347\264\204/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/02_\351\226\213\347\231\272\350\246\217\347\264\204/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/03_\347\224\273\351\235\242\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/03_\347\224\273\351\235\242\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/04_WebAPI\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/04_WebAPI\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..db55472e --- /dev/null +++ "b/documents/forMarkdown/future_muscle_partner/docs/04_WebAPI\350\250\255\350\250\210/README.md" @@ -0,0 +1,12 @@ +# Web API設計 + +## 一覧 + + + +| ID | 機能名 | メソッド | 詳細 | +| -- | --- | --| --| +| API01 | xxxx | GET | [API01設計書](API01)| +| API02 | xxxx | GET | [API02設計書](API02)| +| API03 | xxxx | GET | [API03設計書](API03)| + diff --git "a/documents/forMarkdown/future_muscle_partner/docs/05_\343\203\207\343\203\274\343\202\277\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/05_\343\203\207\343\203\274\343\202\277\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/05_\343\203\207\343\203\274\343\202\277\350\250\255\350\250\210/erd.a5er" "b/documents/forMarkdown/future_muscle_partner/docs/05_\343\203\207\343\203\274\343\202\277\350\250\255\350\250\210/erd.a5er" new file mode 100644 index 00000000..0f75bab0 --- /dev/null +++ "b/documents/forMarkdown/future_muscle_partner/docs/05_\343\203\207\343\203\274\343\202\277\350\250\255\350\250\210/erd.a5er" @@ -0,0 +1,364 @@ +# A5:ER FORMAT:18 +# A5:ER ENCODING:UTF8 +# A5:ER Mk-1 Copyright © 2007 m.matsubara +# A5:SQL Mk-2 Version 2.19.0 Copyright © 1997 - 2024 m.matsubara +# https://a5m2.mmatsubara.com + +[Manager] +ProjectName=フューチャーマッスルパートナー +Author= +MaxEntityRowShow=1000 +ReadOnlyRecommend=0 +Page=Main +PageInfo="Main",2,"A3Landscape",$FFFFFF +LogicalView=1 +DecodeDomain=0 +ViewModePageIndividually=1 +ViewMode=2 +ViewFormat=0 +UseNondependenceDashLine=0 +FontName=Tahoma +FontSize=6 +PaperSize=A4Landscape +HeaderLeft= +HeaderCenter= +HeaderRight= +FooterLeft= +FooterCenter= +FooterRight= +ShowPageoutRelation=1 +RDBMSTypeName=Oracle Database +DefaultPkName=%0:s_PKC +DefaultPkIndexName=%0:s_PKI +DefaultIndexName=%0:s_IX%1:d +DefaultFkName=%0:s_FK%1:d +SqlSeparator=0 +UpperCaseKeyword=0 +ShowTag=1 +ShowCommonAttributes=0 +BugFixEntityWidth=1 + +[Entity] +PName=trainee +LName=トレーニー +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=900 +Top=400 +Field="トレーニーID","trainee_id","",,,"","",$FFFFFFFF,"" +Field="表示氏名","display_name","",,,"","",$FFFFFFFF,"" +Field="自己紹介","self_introduction","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419164924 +Position="MAIN",900,400,254,275 +ZOrder=1 + +[Entity] +PName=booking +LName=予約 +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=1100 +Top=950 +Field="予約ID","booking_id","",,,"","",$FFFFFFFF,"" +Field="メニューID","menu_id","",,,"","",$FFFFFFFF,"" +Field="トレーニーID","trainee_id","",,,"","",$FFFFFFFF,"" +Field="開始日時","start_at","",,,"","",$FFFFFFFF,"" +Field="終了日時","end_at","",,,"","",$FFFFFFFF,"" +Field="予約ステータス区分","booking_status_typ","",,,"","",$FFFFFFFF,"" +Field="予約受付日時","booking_reception_at","",,,"","",$FFFFFFFF,"" +Field="トレーニング開始日時","training_start_at","",,,"","",$FFFFFFFF,"" +Field="トレーニング終了日時","training_end_at","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419165003 +Position="MAIN",1100,950,283,349 +ZOrder=2 + +[Entity] +PName=menu +LName=メニュー +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=1300 +Top=400 +Field="メニューID","menu_id","",,,"","",$FFFFFFFF,"" +Field="トレーナーID","trainer_id","",,,"","",$FFFFFFFF,"" +Field="表示順序","display_order","",,,"","",$FFFFFFFF,"" +Field="メニュー名","menu_name","",,,"","",$FFFFFFFF,"" +Field="メニュー説明","menu_description","",,,"","",$FFFFFFFF,"" +Field="所要時間","required_time","",,,"","",$FFFFFFFF,"" +Field="料金","price","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419161745 +Position="MAIN",1300,400,238,333 +ZOrder=3 + +[Entity] +PName=trainer +LName=トレーナー +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=1650 +Top=400 +Field="トレーナーID","trainer_id","",,,"","",$FFFFFFFF,"" +Field="単価","unit_price","",,,"","",$FFFFFFFF,"" +Field="営業開始時間","business_start_at","",,,"","",$FFFFFFFF,"" +Field="営業終了時間","business_end_at","",,,"","",$FFFFFFFF,"" +Field="公開メールアドレス","public_mail_addr","",,,"","",$FFFFFFFF,"" +Field="公開電話番号","public_tel","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419164109 +Position="MAIN",1650,400,426,296 +ZOrder=4 + +[Entity] +PName=calendar +LName=カレンダー +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=1650 +Top=850 +Field="トレーナーID","trainer_id","",,,"","",$FFFFFFFF,"" +Field="日付","date","",,,"","",$FFFFFFFF,"" +Field="予約区分0000","booking_typ_0000","",,,"","",$FFFFFFFF,"" +Field="予約区分0030","予約区分0030","",,,"","",$FFFFFFFF,"" +Field="予約区分0100","予約区分0100","",,,"","",$FFFFFFFF,"" +Field="予約区分0130","予約区分0130","",,,"","",$FFFFFFFF,"" +Field="予約区分0200","予約区分0200","",,,"","",$FFFFFFFF,"" +Field="予約区分0230","予約区分0230","",,,"","",$FFFFFFFF,"" +Field="予約区分0300","予約区分0300","",,,"","",$FFFFFFFF,"" +Field="予約区分0330","予約区分0330","",,,"","",$FFFFFFFF,"" +Field="予約区分0400","予約区分0400","",,,"","",$FFFFFFFF,"" +Field="予約区分0430","予約区分0430","",,,"","",$FFFFFFFF,"" +Field="予約区分0500","予約区分0500","",,,"","",$FFFFFFFF,"" +Field="予約区分0530","予約区分0530","",,,"","",$FFFFFFFF,"" +Field="予約区分0600","予約区分0600","",,,"","",$FFFFFFFF,"" +Field="予約区分0630","予約区分0630","",,,"","",$FFFFFFFF,"" +Field="予約区分0700","予約区分0700","",,,"","",$FFFFFFFF,"" +Field="予約区分0730","予約区分0730","",,,"","",$FFFFFFFF,"" +Field="予約区分0800","予約区分0800","",,,"","",$FFFFFFFF,"" +Field="予約区分0830","予約区分0830","",,,"","",$FFFFFFFF,"" +Field="予約区分0900","予約区分0900","",,,"","",$FFFFFFFF,"" +Field="予約区分0930","予約区分0930","",,,"","",$FFFFFFFF,"" +Field="予約区分1000","予約区分1000","",,,"","",$FFFFFFFF,"" +Field="予約区分1030","予約区分1030","",,,"","",$FFFFFFFF,"" +Field="予約区分1100","予約区分1100","",,,"","",$FFFFFFFF,"" +Field="予約区分1130","予約区分1130","",,,"","",$FFFFFFFF,"" +Field="予約区分1200","予約区分1200","",,,"","",$FFFFFFFF,"" +Field="予約区分1230","予約区分1230","",,,"","",$FFFFFFFF,"" +Field="予約区分1300","予約区分1300","",,,"","",$FFFFFFFF,"" +Field="予約区分1330","予約区分1330","",,,"","",$FFFFFFFF,"" +Field="予約区分1400","予約区分1400","",,,"","",$FFFFFFFF,"" +Field="予約区分1430","予約区分1430","",,,"","",$FFFFFFFF,"" +Field="予約区分1500","予約区分1500","",,,"","",$FFFFFFFF,"" +Field="予約区分1530","予約区分1530","",,,"","",$FFFFFFFF,"" +Field="予約区分1600","予約区分1600","",,,"","",$FFFFFFFF,"" +Field="予約区分1630","予約区分1630","",,,"","",$FFFFFFFF,"" +Field="予約区分1700","予約区分1700","",,,"","",$FFFFFFFF,"" +Field="予約区分1730","予約区分1730","",,,"","",$FFFFFFFF,"" +Field="予約区分1800","予約区分1800","",,,"","",$FFFFFFFF,"" +Field="予約区分1830","予約区分1830","",,,"","",$FFFFFFFF,"" +Field="予約区分1900","予約区分1900","",,,"","",$FFFFFFFF,"" +Field="予約区分1930","予約区分1930","",,,"","",$FFFFFFFF,"" +Field="予約区分2000","予約区分2000","",,,"","",$FFFFFFFF,"" +Field="予約区分2030","予約区分2030","",,,"","",$FFFFFFFF,"" +Field="予約区分2100","予約区分2100","",,,"","",$FFFFFFFF,"" +Field="予約区分2130","予約区分2130","",,,"","",$FFFFFFFF,"" +Field="予約区分2200","予約区分2200","",,,"","",$FFFFFFFF,"" +Field="予約区分2230","予約区分2230","",,,"","",$FFFFFFFF,"" +Field="予約区分2300","予約区分2300","",,,"","",$FFFFFFFF,"" +Field="予約区分2330","予約区分2330","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419162555 +Position="MAIN",1650,850 +ZOrder=5 + +[Entity] +PName=trainer_workspace +LName=トレーナー勤務先 +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=2200 +Top=450 +Field="トレーナーID","trainer_id","",,,"","",$FFFFFFFF,"" +Field="店舗ID","store_id","",,,"","",$FFFFFFFF,"" +Field="店舗名","store_name","",,,"","",$FFFFFFFF,"" +Field="ジムID","gym_id","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419163344 +Position="MAIN",2200,450 +ZOrder=6 + +[Entity] +PName=gym +LName=ジム +Comment= +TableInnerOption= +TableOption= +Page=MAIN +Left=2350 +Top=250 +Field="ジムID","gym_id","",,,"","",$FFFFFFFF,"" +Field="ジム名","ジム名","",,,"","",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +ModifiedDateTime=20240419163332 +Position="MAIN",2350,250 +ZOrder=7 + +[Relation] +Entity1=trainee +Entity2=booking +RelationType1=2 +RelationType2=3 +Fields1= +Fields2= +Cardinarity1= +Cardinarity2= +Position="MAIN",0,4131,5869,3628,R,R,"" +Dependence=1 +Caption= +PName= +ModifiedDateTime=20240419165039 +LineMode=0 +Bar1=413 +Bar2=587 +Bar3=363 +TermPos1=R +TermPos2=R +ZOrder=8 + +[Relation] +Entity1=trainer +Entity2=menu +RelationType1=2 +RelationType2=3 +Fields1= +Fields2= +Cardinarity1= +Cardinarity2= +Position="MAIN",0,4675,5325,2864,R,R,"" +Dependence=1 +Caption= +PName= +ModifiedDateTime=20240419165118 +LineMode=0 +Bar1=468 +Bar2=532 +Bar3=286 +TermPos1=R +TermPos2=R +ZOrder=9 + +[Relation] +Entity1=menu +Entity2=booking +RelationType1=2 +RelationType2=3 +Fields1= +Fields2= +Cardinarity1= +Cardinarity2= +Position="MAIN",0,5580,4420,4675,R,R,"" +Dependence=1 +Caption= +PName= +ModifiedDateTime=20240419165146 +LineMode=0 +Bar1=558 +Bar2=442 +Bar3=468 +TermPos1=R +TermPos2=R +ZOrder=10 + +[Relation] +Entity1=trainer +Entity2=calendar +RelationType1=2 +RelationType2=3 +Fields1= +Fields2= +Cardinarity1= +Cardinarity2= +Position="MAIN",0,7800,2200,7644,R,R,"" +Dependence=1 +Caption= +PName= +ModifiedDateTime=20240419165237 +LineMode=0 +Bar1=780 +Bar2=220 +Bar3=764 +TermPos1=R +TermPos2=R +ZOrder=11 + +[Relation] +Entity1=trainer_workspace +Entity2=gym +RelationType1=3 +RelationType2=2 +Fields1= +Fields2= +Cardinarity1= +Cardinarity2= +Position="MAIN",0,4440,5560,4238,R,R,"" +Dependence=0 +Caption= +PName= +ModifiedDateTime=20240419165300 +LineMode=0 +Bar1=444 +Bar2=556 +Bar3=424 +TermPos1=R +TermPos2=R +ZOrder=12 + +[Relation] +Entity1=trainer +Entity2=trainer_workspace +RelationType1=2 +RelationType2=3 +Fields1= +Fields2= +Cardinarity1= +Cardinarity2= +Position="MAIN",0,4585,5415,2851,R,R,"" +Dependence=1 +Caption= +PName= +ModifiedDateTime=20240419165327 +LineMode=0 +Bar1=458 +Bar2=542 +Bar3=285 +TermPos1=R +TermPos2=R +ZOrder=13 diff --git "a/documents/forMarkdown/future_muscle_partner/docs/06_IF\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/06_IF\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/07_\343\203\220\343\203\203\343\203\201\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/07_\343\203\220\343\203\203\343\203\201\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/08_\345\270\263\347\245\250\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/08_\345\270\263\347\245\250\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..e69de29b diff --git "a/documents/forMarkdown/future_muscle_partner/docs/09_\343\202\244\343\203\263\343\203\225\343\203\251\350\250\255\350\250\210/README.md" "b/documents/forMarkdown/future_muscle_partner/docs/09_\343\202\244\343\203\263\343\203\225\343\203\251\350\250\255\350\250\210/README.md" new file mode 100644 index 00000000..e69de29b diff --git a/documents/forMarkdown/future_muscle_partner/docs/README.md b/documents/forMarkdown/future_muscle_partner/docs/README.md new file mode 100644 index 00000000..a74aa9da --- /dev/null +++ b/documents/forMarkdown/future_muscle_partner/docs/README.md @@ -0,0 +1,20 @@ +# docs + +設計書を管理する。 + +## フォルダ階層 + +```sh +docs +├── 01_環境構築 # 開発環境の構築手順 +├── 02_開発規約 # 開発ガイドライン、リリース手順など +├── 03_画面設計 # Figma、画面アクション +├── 04_WebAPI設計 # api.yaml、API処理設計 +├── 05_データ設計 # ERD、区分値 +├── 06_IF設計書 # I/F定義+受信/送信BL設計 +├── 07_バッチ設計書 # タイマー、イベント起動の非同期処理のBL設計 +├── 08_帳票設計 # 業務、システム担当者向けのレポート +├── 09_インフラ設計 # ネットワーク設計、監視設計、通知設計、システム構成図、サービス構成図 +├── ... +└── README.md +``` diff --git a/documents/forMarkdown/future_muscle_partner/docs/future_muscle_partner_abstract.png b/documents/forMarkdown/future_muscle_partner/docs/future_muscle_partner_abstract.png new file mode 100644 index 00000000..2f816600 Binary files /dev/null and b/documents/forMarkdown/future_muscle_partner/docs/future_muscle_partner_abstract.png differ