スタッフブログ

WEBベースの勤怠管理システムを作って見る (1)

  • このエントリーをはてなブックマークに追加
RIMG0300-crop

こんにちは、Hal9000です。
今回から、数回に分けて、「WEBベースの勤怠管理システムを作って見る」と題して、実際にアプリケーションを作成しながら、WEBアプリ開発の実際をご紹介したい思います。
尚、この場合WEBアプリとは、php等で作成されたWEBサーバー上で動作する、アプリケーションの事を指します。

WEBベースの勤怠管理システムを作って見る(1) システム要件の設定と開発の準備

今回はWEBベースの勤怠管理システムを作ると成と言う事ですが、これに限らず、当社ではサイト作成を行う場合は、システム開発を行う前に、まずシステム要件の定義を行います。
今回も簡単にシステム要件を定義して見ます。

構築する言語はphpで行います。
データベースはMySqlを使用します。
対象端末はPC、スマホ、携帯にの3キャリア対応とします。
次に、各種定数をどうするか、ですがinitialファイルに定義する方法も有りますが、今回はマスターリストに登録し、必要に応じて参照と言う方法にしたいと思います。
こうして置く事により、別のクライアントが使う時にもシステムを変更する事無く、マスターの登録情報を変更するだけで対応出来るからです。
入力はユーザーがタイムレコーダーにアクセスし入力ボタンを押した時間を記録する事で勤務時間を取得します。
出力方法は、給与計算ソフトとの連携を考慮して、CSVでの出力を行います。

システム要件

対象端末 PC(含むタブレット端末),スマートフォン、携帯端末
開発言語 スクリプト:php、 データベース:MySql
入力内容 出勤時間、休み時間、残業時間、深夜残業時間、退出時間
出力内容 勤務時間
出力方法 CSV(ダウンロード) ※ 給与計算ソフトのインポート機能に対応
利用 複数の会社で利用可能とする。 その為、管理ユーザーのIDにより自社のユーザーのみ閲覧・編集可能とする。
各種定数定義 マスターリスト登録による管理とする。

それでは、システム要件の定義も出来ましたので、実際の開発のやりかたを考えてみます。
この様な、WEBアプリケーションは、殆どの場合、基本システム(SESSION管理、DB接続、ページ表示制御等を行う)が在り、その上で動作しています。
一から作る事も出来ますが、今回はオープンソースのパッケージを利用して、開発にかかる工程を抑える事にします。
使えそうな、オープンのパッケージは色々有りますが、今回はEC-CUBEを利用して作って見ようと思います。
最新版はEC-CUBE3ですが、テンプレートエンジンがSMARTYでは無いので、今回はEC-CUBE2の2.13.4を使用します。

ダウンロードして解凍したEC-CUBE 2.13.4

001

画像をクリックして拡大

まず解凍したEC-CUBEをサーバーにアップロードします。 ダウンロードして解凍したEC-CUBE 2.13.4のhtmlディレクトリーの内容をサーバーのドキュメントルートにコピーします。

htmlディレクトリーの内容をhtdocsフォルダーにコピーしました。

 002

画像をクリックして拡大

次に、ダウンロードして解凍したEC-CUBE 12.6のdataディレクトリーをドキュメントルートの中にコピーし、systemと言う名前にリネームして置きます。

dataディレクトリーの内容をsystemォルダーにコピーしました。

 003

画像をクリックして拡大

リネームしたら、/localhost/htdocs/define.phpを編集してsystemディレクトリーのpathを記入して置きます。

/localhost/htdocs/define.phpを編集しました。

/** HTMLディレクトリからのDATAディレクトリの相対パス */
define('HTML2DATA_DIR', './system/');

次に、データベースの準備を行います、入力した情報は後で使いますのでメモして置いて下さい。
xamppを起動して/localhost/phpmyadminにアクセスします。
phpmyadminが起動したら、「ユーザー」タブより「ユーザを追加する」をクリックしデータベースにアクセスするユーザーを作成します。
今回は「kntaikanri」と言うユーザーを作成しました。
ユーザーを作成したらこのユーザー専用のデータベースを作成します。
今回はDB名もkntaikanriとしました。

phpmyadminを起動して専用のDBを作成します

004

画像をクリックして拡大

DBを作成したら、/system/config/config.phpを編集します。
1. HTTP_URLには”http://サーバーのURL/
2. HTTPS_URLには”https://サーバーのURL/”
3. DB_USERには”kntaikanri”
4. DB_PASSWORDには、phpmyadminでユーザーを作った時に入力したpasswordを入力します。
5. DB_SERVERには”localhost”
6. DB_NAMEには”kntaikanri”
の6つの項目だけ入力すれば、良いです。

以下の様にドメインやDBの接続情報等を定義します

<?php
define('ECCUBE_INSTALL', 'ON');
define('HTTP_URL', 'http://サーバーのURL/');
define('HTTPS_URL', 'https://サーバーのURL/');
define('ROOT_URLPATH', '/');
define('DOMAIN_NAME', '');
define('DB_TYPE', 'mysql');
define('DB_USER', 'kntaikanri');
define('DB_PASSWORD', '******');
define('DB_SERVER', 'localhost');
define('DB_NAME', 'kntaikanri');
define('DB_PORT', '3306');
define('ADMIN_DIR', 'admin/');
define('ADMIN_FORCE_SSL', FALSE);
define('ADMIN_ALLOW_HOSTS', 'a:0:{}');
define('AUTH_MAGIC', 'craifroperithousteasoucrouvaevuclaephiaj');
define('PASSWORD_HASH_ALGOS', 'sha256');
define('MAIL_BACKEND', 'mail');
define('SMTP_HOST', '');
define('SMTP_PORT', '');
define('SMTP_USER', '');
define('SMTP_PASSWORD', '');

config.phpを編集を編集したらEC-CUBEのインストールの準備は完了です。
ブラウザ-でhttp://localhost/install/にアクセスするとインスt-ラーが起動します。
後は、インストーラーの指示に従って入力を行えばインストールは特に問題も無く完了します。

EC-CUBE 12.6のインストラーが起動しました

WS000028

画像をクリックして拡大

 

インストールが完了しました

33

画像をクリックして拡大

取りあえず、今回はここまで。
次回は、インストールしたEC-CUBE 13.4をカスタマイズして、WEBベースの勤怠管理システムの基本システムとして使用できる様にして見ます。

 

 

  • このエントリーをはてなブックマークに追加

コメントを残す

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>