# Discription Kreis勤怠申請システム --- ## 概要 * 勤怠申請システムは、2つの機能て実装されます 1. WorkApplication SlackのSlashコマンドを利用した勤怠系申請を行うシステム。申請→決裁までの回付をSlackのメンションを利用してDB登録までを行うシステム。 2. 給与計算用集計バッチシステム WorkApplicationで入力されたトランザクションデータより、給与計算に必要な項目の集計を行うBATCHシステム。(日時バッチの仮締処理、月次で行う本締処理に分かれる)  ## アーキテクチャ * ①のWork Applicationシステムは、AWSのLambdaを利用したサーバレスプログラム実行環境にて実装します。Lambda関数のトリガーはSlackのSlashコマンドを利用しアプリケーションを提供します。 1. Slackからの申請フォームは、各申請種類毎にslashコマンドトリガーよりLambda関数を呼び出し実行します。呼び出されたLambda内の関数をPyhotnのFlaskにて実装します。 2. 各申請種類の機能は3つの関数に分けて作成を行います。 1. ①表示 Slashコマンドの種類毎に、modalのフォームを表示する。 2. ②申請 表示Formに入力を行い申請ボタンを押下。担当マネージャーへ登録内容のFormを表示させる。 3. ③決裁 ②でメンションされたForm上の決裁ボタンを押下(差戻しもできるようにする)。決裁イベントのLambda関数にて勤怠トランザクションテーブルへ内容を登録。決裁された旨を申請者へ表示する(Responseを返す。)  ## プロジェクト参画する際のスキル及び準備 * GitHubのユーザ登録 https://github.com/kreis-inc GithubのOrganizations Kreis-inc チーム用リポジトリで管理を行います。各自Githubのユーザ登録をし近藤まで連携。orgnizationへの登録を行います。GitRepogitory の運用ルールは別途。 * Pyhotn3.8の実装環境の用意 各自用意。ちなみに近藤はVscodeを使っています。 * Slack APIの利用 chat.postMessageを使い、Slackへの送信を行います。 * Pyhon Chaliceで serverless python web serviceとして実装。 * DBはAWS Aurora mysqlを利用。 ※Chaliceとは AWS用のpythonサーバレスマイクロフレームワーク。(AWSが開発している) Chaliceを利用するとAWS API Gateway、AWS LambdaのWebApiの開発が楽になる?デメリットはAWS以外のサーバレスサービスへ意向は無理。 ちなみに、現在はFlaskとZappaの組み合わせが流行りだが、Zappaを使う学習コストを考えた場合、Chaliceのほうがよいと判断。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up