diff --git a/src/web/module/maestro_section_record.html b/src/web/module/maestro_section_record.html
index 3dbf3f8..355fd7d 100644
--- a/src/web/module/maestro_section_record.html
+++ b/src/web/module/maestro_section_record.html
@@ -32,14 +32,6 @@ function initDatePicker() {
});
setDatePickersForMonths(3);
-
- // var today = new Date();
- // var yyyy = today.getFullYear();
- // var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
- // var dd = String(today.getDate()).padStart(2, '0');
-
- // $('#start_datepicker').datepicker('update', yyyy + "-" + mm + "-" + dd);
- // $('#end_datepicker').datepicker('update', yyyy + "-" + mm + "-" + dd);
}
function setDatePickersForWeeks(weeks) {
@@ -235,9 +227,8 @@ function addSubjectBundleItem(subjectListID, appID, appName) {
function requestPlayerRecordList() {
- getPlayerRecordList(50);
-
- $("#search_all").removeClass("disabled");
+ if(getPlayerRecordList(50))
+ $("#search_all").prop("disabled", false);
}
function requestPlayerRecordListAll() {
@@ -256,14 +247,23 @@ function getPlayerRecordList(limitCount) {
// console.log(playerNameList);
var appID = $(":radio[name='subject_group']:checked").val();
- if(typeof(appID) == "undefined")
- appID = 0;
- // console.log(appID);
+ if(typeof(appID) == "undefined") {
+ showErrorMessage("검색할 과목을 선택하세요.");
+ return false;
+ }
+
+ var requestURL = "";
+ if(appID == 3000)
+ requestURL = "./../server/record/request_app_player_record_list.php";
+ else
+ requestURL = "./../server/record/request_license_timer_player_record_list.php";
sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode);
- "./../server/record/request_player_record_list.php",
- "MaestroID=" + maestroID + "&StartDate=" + startDate + "&EndDate=" + endDate
- + "&PlayerNameList=" + playerNameList + "&AppID=" + appID + "&LimitCount=" + limitCount,
+ requestURL,
+ "MaestroID=" + maestroID + "&StartDate="
+ + startDate + "&EndDate=" + endDate
+ + "&PlayerNameList=" + playerNameList
+ + "&AppID=" + appID + "&LimitCount=" + limitCount,
(function(jsonData) {
// console.log(jsonData);
@@ -276,6 +276,8 @@ function getPlayerRecordList(limitCount) {
})
);
+
+ return true;
}
@@ -428,10 +430,21 @@ function addRecordListItem($date, $time, $name, $subject, $record) {
+
+
-
-
+
+
diff --git a/src/web/server/record/request_player_record_list.php b/src/web/server/record/request_app_player_record_list.php
similarity index 100%
rename from src/web/server/record/request_player_record_list.php
rename to src/web/server/record/request_app_player_record_list.php
diff --git a/src/web/server/record/request_license_timer_player_record_list.php b/src/web/server/record/request_license_timer_player_record_list.php
new file mode 100644
index 0000000..9731f25
--- /dev/null
+++ b/src/web/server/record/request_license_timer_player_record_list.php
@@ -0,0 +1,201 @@
+close();
+ exit;
+}
+
+set_data("RecordCount", $recordCount);
+set_data("RecordList", $replyJSON);
+send_result_success();
+exit;
+
+
+
+
+function makeDateStatement($start_date, $end_date) {
+ // return " '".$start_date."' < RecordDateTime AND RecordDateTime < '".$end_date."'";
+ return " '2017-01-01' < RecordDateTime AND RecordDateTime < '".$end_date."'";
+}
+
+function makeSubjectSentence($app_id) {
+ if($app_id == 0)
+ return "";
+
+ $subject_statement = "";
+ if(is_subject_bundle_item($app_id)) {
+ switch($app_id) {
+ case 1000: // korean practice
+ $subject_statement = $subject_statement."A.AppID < 9";
+ break;
+
+ case 1001: // english practice
+ $subject_statement = $subject_statement."10 < A.AppID AND A.AppID < 19";
+ break;
+
+ case 1002: // korean test
+ $subject_statement = $subject_statement."20 < A.AppID AND A.AppID < 31";
+ break;
+
+ case 1003: // english test
+ $subject_statement = $subject_statement."30 < A.AppID AND A.AppID < 41";
+ break;
+ }
+ } else {
+ $subject_statement = $subject_statement."A.AppID = ".$app_id;
+ }
+
+ return $subject_statement." AND BR.AppID = A.AppID";
+}
+
+function makePlayerNameStatement($player_name_list) {
+ $player_name_statement = "BR.PlayerID = P.PlayerID";
+ if(strlen($player_name_list) > 0)
+ $player_name_statement = $player_name_statement." AND P.Name LIKE '%".$player_name_list."%'";
+
+ return $player_name_statement;
+}
+
+
+function is_subject_bundle_item($app_id) {
+ if($app_id >= 1000)
+ return true;
+
+ return false;
+}
+
+function make_where_statement($date_statement, $player_name_statement, $subject_statement) {
+ // add date condition
+ $where_statement = $date_statement;
+ if(strlen($where_statement) > 0 and strlen($player_name_statement) > 0)
+ $where_statement = $where_statement." AND ";
+
+ // add player name condition
+ $where_statement = $where_statement.$player_name_statement;
+
+ // add subject condition
+ if(strlen($where_statement) > 0 and strlen($subject_statement) > 0)
+ $where_statement = $where_statement." AND ";
+ $where_statement = $where_statement.$subject_statement;
+
+ // echo $where_statement."\n\n";
+ return $where_statement;
+}
+
+function get_player_record_count($maestro_id, $where_statement, $limit_count) {
+ global $db_conn;
+
+ $query = "
+ SELECT COUNT(*)
+ FROM best_record BR, player P, App A
+ WHERE BR.MaestroID = ? AND ".$where_statement."
+ ";
+
+ if($limit_count > 0)
+ $query = $query." LIMIT ".$limit_count;
+
+ // echo $query;
+ // return;
+
+ $stmt = $db_conn->prepare($query);
+ $stmt->bind_param("i", $maestro_id);
+ $stmt->execute();
+ $stmt->bind_result($record_count);
+ $stmt->fetch();
+ $stmt->close();
+
+ return $record_count;
+}
+
+function get_player_record_total_count($maestro_id, $where_statement) {
+ global $db_conn;
+
+ $query = "
+ SELECT COUNT(*)
+ FROM best_record BR, player P, App A
+ WHERE BR.MaestroID = ? AND ".$where_statement."
+ ";
+
+ // echo $query;
+ // return;
+
+ $stmt = $db_conn->prepare($query);
+ $stmt->bind_param("i", $maestro_id);
+ $stmt->execute();
+ $stmt->bind_result($record_count);
+ $stmt->fetch();
+ $stmt->close();
+
+ return $record_count;
+}
+
+function get_player_record_list($maestro_id, $where_statement, $limit_count) {
+ global $db_conn;
+
+ $query = "
+ SELECT DATE(BR.RecordDateTime) AS Date, TIME(BR.RecordDateTime) AS Time,
+ P.Name AS Name, A.KoreanName AS Subject, BR.BestRecord AS Record
+ FROM best_record BR, player P, App A
+ WHERE BR.MaestroID = ? AND ".$where_statement."
+ ORDER BY BR.RecordDateTime ASC
+ ";
+
+ if($limit_count > 0)
+ $query = $query." LIMIT ".$limit_count;
+
+ // echo $query;
+ // return;
+
+ $stmt = $db_conn->prepare($query);
+ $stmt->bind_param('i', $maestro_id);
+ $stmt->execute();
+ $stmt->bind_result($date, $time, $player_name, $subject, $record);
+
+ $record_array = array();
+ while($stmt->fetch()) {
+ $record_date['Date'] = $date;
+ $record_date['Time'] = $time;
+ $record_date['PlayerName'] = $player_name;
+ $record_date['Subject'] = $subject;
+ $record_date['Record'] = $record;
+ array_push($record_array, $record_date);
+ }
+ // $return_array['RecordList'] = $record_array;
+
+ // return $return_array;
+ return $record_array;
+}
+
+?>
\ No newline at end of file