GithubHelp home page GithubHelp logo

tech_visual's Introduction

tech_visual

シフト自動生成アプリ 各人のシフト制約を入力としてシフト一覧を生成することができます。

Getting Started

git clone https://github.com/ratovia/tech_visual.git
bundle install
rake db:create
rake db:migrate

and

rails s

tech_visual's People

Contributors

ratovia avatar kazyam1001 avatar uchizumimasato avatar dependabot[bot] avatar

Stargazers

 avatar

Watchers

James Cloos avatar

tech_visual's Issues

合計リソースと必要リソースをViewに表示する。

合計リソースと必要リソースをViewに表示することで、
視覚的にわかりやすく、リソース充足を確認することができます。

リソース充足していないところは、カラーを変えて分かりやすくしたいです。

release 2.0.0: リリースまでの実装タスクを決める

以下初回MTGの議事録から、実装するものをissue化する

現状の課題

手打ち作業が多すぎる
少しでも変更が発生すると1から見直す必要がある

必要機能

  • メンターごと(社員)に勤怠を入力すれば自動でシフトが組まれる
  • インターンの事情(出勤中は全てworkroleを充てたい)を考慮できている
  • 確定したシフトを後から調整もできる
  • 日時を入力するだけで、コネクト・チャット・現場のシフトが充足するようなアルゴリズム
  • 要望(コネクト/チャット/現場の可否)を設定した上で、後から変更もできるようにする
  • コネクト・チャット・現場の累計時間が均等になるようにする
    • 中止
  • コネクトの最大時間を設定する
    • 中止
  • 朝・昼・夜でシフトの充足人数を決める?
  • 充足人数が足りていない日時が一目瞭然になっている
  • 完成品の出力方法
    • 大阪向けにはアプリ内で勤怠表ページを作る
    • できれば社員ごとにマイページを作る
    • 東京シフト表への出力をどうするか一旦保留
      • 中止

シフトを画面表示する際、workroleの項目ごとに色分けする

workroleの項目ごとに色分けなどをしてわかりやすく表示する
判例も表示する

例)
テストくん | 白 | 白 | 白 | 白 | 緑 | 緑 | 緑 | 緑 | 青 | 青 | 青 | 赤 | 白 | 白 | 白 | 白 | 白 | 白

判例)
白・・・シフトなし
緑・・・事務作業
青・・・電話対応
赤・・・お客様対応

シフト生成アルゴリズムの最小の実装

アルゴリズム最小の実装

  • 3人のユーザを作成する

 1人目 10時 ~ 20時
 2人目 12時 ~ 22時
 3人目 18時 ~ 22時

  • 必要リソースを定義する

 [0 , 0 , 0 , 1 , 1 , 2 , 2 , 2 , 2 , 2 , 2 , 3 , 2 , 2 , 1] #8時〜22時

  • 最低限シフトを組む

  • 必要リソース == 最低限シフトになっているかテストコードでチェックする。

assignable_roleモデルを作成したい

したいこと

assignable_role(アサイン可能役割)
どのユーザがどのworkroleにアサイン可能なのか管理できるモデルが欲しい

理由

どのユーザがどのworkroleにアサイン可能か管理したいが
checkbox(制約)テーブルであると、workrole_idを持っていない上、名前が適切ではない

assignable_roleテーブル

カラム名
user_id integer
workrole_id integer
flag boolean

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.